X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fledger-line-engraver.cc;h=8e871c1abf868c5ee53f34ffb82eaa5a4f2e6039;hb=8f367da7d4611adadc083422f29703bc40e8488e;hp=ea06ac0e19b701bf794a0d957a2bfff5c3522c12;hpb=fcc5f76615e024803904a055902fdc6a3b24dccb;p=lilypond.git diff --git a/lily/ledger-line-engraver.cc b/lily/ledger-line-engraver.cc index ea06ac0e19..8e871c1abf 100644 --- a/lily/ledger-line-engraver.cc +++ b/lily/ledger-line-engraver.cc @@ -1,9 +1,20 @@ /* - ledger-line-engraver.cc -- implement Ledger_line_engraver + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 2004--2015 Han-Wen Nienhuys - (c) 2004--2007 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 "pointer-group-interface.hh" @@ -11,11 +22,13 @@ #include "engraver.hh" #include "staff-symbol.hh" +#include "translator.icc" + class Ledger_line_engraver : public Engraver { Spanner *span_; - vector ledgered_grobs_; - + vector ledgered_grobs_; + public: TRANSLATOR_DECLARATIONS (Ledger_line_engraver); @@ -42,7 +55,7 @@ Ledger_line_engraver::start_spanner () assert (!span_); span_ = make_spanner ("LedgerLineSpanner", SCM_EOL); - span_->set_bound (LEFT, unsmob_grob (get_property ("currentCommandColumn"))); + span_->set_bound (LEFT, unsmob (get_property ("currentCommandColumn"))); } void @@ -51,12 +64,12 @@ Ledger_line_engraver::stop_translation_timestep () if (span_) { for (vsize i = 0; i < ledgered_grobs_.size (); i++) - { - if (!to_boolean (ledgered_grobs_[i]->get_property ("no-ledgers"))) - Pointer_group_interface::add_grob (span_, - ly_symbol2scm ("note-heads"), - ledgered_grobs_[i]); - } + { + if (!to_boolean (ledgered_grobs_[i]->get_property ("no-ledgers"))) + Pointer_group_interface::add_grob (span_, + ly_symbol2scm ("note-heads"), + ledgered_grobs_[i]); + } } ledgered_grobs_.clear (); @@ -66,7 +79,7 @@ void Ledger_line_engraver::process_music () { /* - Need to do this, otherwise the first note might miss ledgers. + Need to do this, otherwise the first note might miss ledgers. */ if (!span_) start_spanner (); @@ -83,8 +96,7 @@ Ledger_line_engraver::stop_spanner () { if (span_) { - span_->set_bound (RIGHT, unsmob_grob (get_property ("currentCommandColumn"))); - Pointer_group_interface::set_ordered (span_, ly_symbol2scm ("elements"), false); + span_->set_bound (RIGHT, unsmob (get_property ("currentCommandColumn"))); span_ = 0; } } @@ -108,21 +120,19 @@ Ledger_line_engraver::acknowledge_ledgered (Grob_info s) ledgered_grobs_.push_back (s.grob ()); } -#include "translator.icc" - ADD_ACKNOWLEDGER (Ledger_line_engraver, ledgered); ADD_ACKNOWLEDGER (Ledger_line_engraver, staff_symbol); ADD_TRANSLATOR (Ledger_line_engraver, - /* doc */ - "Create the spanner to draw ledger lines, and notices " - "objects that need ledger lines.", + /* doc */ + "Create the spanner to draw ledger lines, and notices" + " objects that need ledger lines.", - /* create */ - "LedgerLineSpanner ", + /* create */ + "LedgerLineSpanner ", - /* read */ - "", + /* read */ + "", - /* write */ - "" - ); + /* write */ + "" + );