X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fbar-check-iterator.cc;h=d86cfa6bdfbf20a7a4c0b544c7d53de5800262ab;hb=97a0169312a260933246ab224e4f8b0969871dd5;hp=487d3a551bbbd7a8497f6ed7ae3f7f47ae6385d1;hpb=545092a25d8ca41dc90b87482474b3719f7130a9;p=lilypond.git diff --git a/lily/bar-check-iterator.cc b/lily/bar-check-iterator.cc index 487d3a551b..d86cfa6bdf 100644 --- a/lily/bar-check-iterator.cc +++ b/lily/bar-check-iterator.cc @@ -1,15 +1,27 @@ /* - bar-check-iterator.cc -- implement Bar_check_iterator + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 2001--2015 Han-Wen Nienhuys - (c) 2001--2005 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. + + 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 "simple-music-iterator.hh" -#include "music.hh" #include "context.hh" #include "input.hh" +#include "international.hh" +#include "music.hh" +#include "simple-music-iterator.hh" /* Check bar checks. We do this outside the engravers so that you can @@ -39,38 +51,38 @@ Bar_check_iterator::process (Moment m) SCM check = tr->get_property ("ignoreBarChecks"); if (to_boolean (check)) - return; + return; SCM mp = tr->get_property ("measurePosition"); SCM sync = tr->get_property ("barCheckSynchronize"); - Moment *where = unsmob_moment (mp); + Moment *where = unsmob (mp); if (!where) - return; + return; if (where->main_part_) - { - bool warn = true; - if (to_boolean (sync)) - { - SCM mp; - tr = tr->where_defined (ly_symbol2scm ("measurePosition"), &mp); - Moment zero; - tr->set_property ("measurePosition", zero.smobbed_copy ()); - } - else - { - SCM lf = tr->get_property ("barCheckLastFail"); - if (unsmob_moment (lf) - && *unsmob_moment (lf) == *where) - warn = false; - else - tr->set_property ("barCheckLastFail", mp); - } + { + bool warn = true; + if (to_boolean (sync)) + { + SCM mp; + tr = tr->where_defined (ly_symbol2scm ("measurePosition"), &mp); + Moment zero; + tr->set_property ("measurePosition", zero.smobbed_copy ()); + } + else + { + SCM lf = tr->get_property ("barCheckLastFail"); + if (unsmob (lf) + && *unsmob (lf) == *where) + warn = false; + else + tr->set_property ("barCheckLastFail", mp); + } - if (warn) - get_music ()->origin ()->warning (_f ("barcheck failed at: %s", - where->to_string ())); - } + if (warn) + get_music ()->origin ()->warning (_f ("barcheck failed at: %s", + where->to_string ())); + } } }