X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Frepeat-tie-engraver.cc;h=5ee59df6647226601ffa01d36be597f8b241a796;hb=ddd59edaae68e71d5d3ea2576b3d0d25807fb500;hp=c793449dda3aac7e38c203bfc86d055be5776680;hpb=68f8545bd6a0221ee1100336e4ad49399a7ffaa4;p=lilypond.git diff --git a/lily/repeat-tie-engraver.cc b/lily/repeat-tie-engraver.cc index c793449dda..5ee59df664 100644 --- a/lily/repeat-tie-engraver.cc +++ b/lily/repeat-tie-engraver.cc @@ -1,10 +1,21 @@ /* - repeat-engraver.cc -- implement Repeat_tie_engraver + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 2005--2009 Han-Wen Nienhuys - (c) 2005--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. + + 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 . */ @@ -60,24 +71,37 @@ Repeat_tie_engraver::acknowledge_note_head (Grob_info inf) { semi_tie_column_ = make_item ("RepeatTieColumn", event_->self_scm ()); } - - Grob *semi_tie = make_item ("RepeatTie", event_->self_scm ()); + + SCM cause = event_->self_scm (); + Grob *semi_tie = make_item ("RepeatTie", cause); semi_tie->set_object ("note-head", inf.grob ()->self_scm ()); Pointer_group_interface::add_grob (semi_tie_column_, ly_symbol2scm ("ties"), semi_tie); semi_tie->set_parent (semi_tie_column_, Y_AXIS); semi_ties_.push_back (semi_tie); + + + if (is_direction (unsmob_stream_event (cause)->get_property ("direction"))) + { + Direction d = to_dir (unsmob_stream_event (cause)->get_property ("direction")); + semi_tie->set_property ("direction", scm_from_int (d)); + } + } ADD_ACKNOWLEDGER (Repeat_tie_engraver, note_head); ADD_TRANSLATOR (Repeat_tie_engraver, - /* doc */ "Create Laissez vibrer items.", + /* doc */ + "Create repeat ties.", /* create */ "RepeatTie " "RepeatTieColumn ", - /* accept */ "repeat-tie-event", - /* read */ "", - /* write */ ""); + /* read */ + "", + + /* write */ + "" + );