X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=lily%2Fscript-engraver.cc;h=1c8e74f95491d70f7b8ec00633dcfc7da4d32acb;hb=95a4237d0aca94993bd3b91afc4ff0e4e2daec9f;hp=7c05131a85f2164381d2c317cdeaa85ac91875c5;hpb=c4c0ba811cd526f047de3f4d3c77abcc32a3e076;p=lilypond.git diff --git a/lily/script-engraver.cc b/lily/script-engraver.cc index 7c05131a85..1c8e74f954 100644 --- a/lily/script-engraver.cc +++ b/lily/script-engraver.cc @@ -1,9 +1,20 @@ /* - script-engraver.cc -- engrave Scripts: Articulations. + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 1997--2010 Han-Wen Nienhuys - (c) 1997--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 . */ #include "engraver.hh" @@ -38,14 +49,12 @@ struct Script_tuple class Script_engraver : public Engraver { vector scripts_; - Spanner *slur_; protected: void stop_translation_timestep (); void process_music (); DECLARE_TRANSLATOR_LISTENER (articulation); - DECLARE_ACKNOWLEDGER (slur); DECLARE_ACKNOWLEDGER (rhythmic_head); DECLARE_ACKNOWLEDGER (stem); DECLARE_ACKNOWLEDGER (stem_tremolo); @@ -57,7 +66,6 @@ public: Script_engraver::Script_engraver () { - slur_ = 0; } IMPLEMENT_TRANSLATOR_LISTENER (Script_engraver, articulation); @@ -84,7 +92,7 @@ copy_property (Grob *g, SCM sym, SCM alist) { SCM entry = scm_assoc (sym, alist); if (scm_is_pair (entry)) - g->internal_set_property (sym, scm_cdr (entry)); + g->set_property (sym, scm_cdr (entry)); } } @@ -92,8 +100,9 @@ copy_property (Grob *g, SCM sym, SCM alist) could be saved by tacking the props onto the Script grob (i.e. make ScriptStaccato , ScriptMarcato, etc. ). */ -void make_script_from_event (Grob *p, Context *tg, - SCM art_type, int index) +void +make_script_from_event (Grob *p, Context *tg, + SCM art_type, int index) { SCM alist = tg->get_property ("scriptDefinitions"); SCM art = scm_assoc (art_type, alist); @@ -101,8 +110,8 @@ void make_script_from_event (Grob *p, Context *tg, if (art == SCM_BOOL_F) { /* FIXME: */ - warning (_ ("don't know how to interpret articulation: ")); - warning (_ ("scheme encoding: ")); + warning (_ ("do not know how to interpret articulation:")); + warning (_ (" scheme encoding: ")); scm_write (art_type, scm_current_error_port ()); message (""); return; @@ -135,7 +144,7 @@ void make_script_from_event (Grob *p, Context *tg, SCM preset = p->get_property_data (sym); if (val == SCM_EOL || scm_call_1 (type, preset) == SCM_BOOL_F) - p->internal_set_property (sym, val); + p->set_property (sym, val); } if (!priority_found) @@ -143,8 +152,6 @@ void make_script_from_event (Grob *p, Context *tg, p->set_property ("script-priority", scm_from_int (index)); } - - Side_position_interface::set_axis (p, Y_AXIS); } void @@ -233,27 +240,27 @@ Script_engraver::acknowledge_note_column (Grob_info info) } } -void -Script_engraver::acknowledge_slur (Grob_info info) -{ - slur_ = info.spanner (); -} - void Script_engraver::stop_translation_timestep () { scripts_.clear (); } -ADD_ACKNOWLEDGER (Script_engraver, slur); ADD_ACKNOWLEDGER (Script_engraver, rhythmic_head); ADD_ACKNOWLEDGER (Script_engraver, stem); ADD_ACKNOWLEDGER (Script_engraver, note_column); ADD_ACKNOWLEDGER (Script_engraver, stem_tremolo); ADD_TRANSLATOR (Script_engraver, - /* doc */ "Handles note scripted articulations.", - /* create */ "Script", - /* accept */ "script-event articulation-event", - /* read */ "scriptDefinitions", - /* write */ ""); + /* doc */ + "Handle note scripted articulations.", + + /* create */ + "Script ", + + /* read */ + "scriptDefinitions ", + + /* write */ + "" + );