X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fbox.cc;h=df4770ff7861eada58715e88cea9be1c74ae92da;hb=fa554b6115c178b466d69caa1d7d68a340e11e20;hp=c2db1f2ac6d1a31da4a41db6e37384c745a07393;hpb=75eebcb49e52d296b1da3e1074e0825d2c780db4;p=lilypond.git diff --git a/lily/box.cc b/lily/box.cc index c2db1f2ac6..df4770ff78 100644 --- a/lily/box.cc +++ b/lily/box.cc @@ -1,15 +1,23 @@ /* - box.cc -- implement Box + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 1996--2012 Han-Wen Nienhuys - (c) 1996--2006 Han-Wen Nienhuys -*/ + LilyPond is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. -#include "ly-smobs.icc" + LilyPond is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with LilyPond. If not, see . +*/ #include "box.hh" -#include "array.hh" void Box::translate (Offset o) @@ -25,9 +33,6 @@ Box::unite (Box b) interval_a_[i].unite (b[i]); } -/** - Initialize to empty. -*/ Box::Box () { } @@ -75,7 +80,7 @@ Offset Box::center () const { return Offset (interval_a_[X_AXIS].center (), - interval_a_[Y_AXIS].center ()); + interval_a_[Y_AXIS].center ()); } void @@ -85,21 +90,33 @@ Box::widen (Real x, Real y) interval_a_[Y_AXIS].widen (y); } +// for debugging + +void +Box::print () +{ + printf ("X left %4.4f right %4.4f Y down %4.4f up %4.4f\n", + interval_a_[X_AXIS][LEFT], interval_a_[X_AXIS][RIGHT], + interval_a_[Y_AXIS][DOWN], interval_a_[Y_AXIS][UP]); +} + +/****************************************************************/ + +#include "ly-smobs.icc" + IMPLEMENT_SIMPLE_SMOBS (Box); IMPLEMENT_TYPE_P (Box, "ly:box?"); IMPLEMENT_DEFAULT_EQUAL_P (Box); SCM -Box::mark_smob (SCM x) +Box::mark_smob (SCM /* x */) { - (void)x; return SCM_EOL; } int -Box::print_smob (SCM x, SCM p, scm_print_state*) +Box::print_smob (SCM /* x */, SCM p, scm_print_state *) { - (void)x; scm_puts ("#", p); return 1; }