protected:
virtual bool try_music (Music*);
virtual void stop_translation_timestep ();
- virtual void start_translation_timestep ();
virtual void process_music ();
virtual void acknowledge_grob (Grob_info);
};
little space by tacking the props onto the Script grob (i.e. make
ScriptStaccato , ScriptMarcato, etc. )
*/
-Grob *make_script_from_event (SCM * descr, Translator_group*tg, Music * event,
- int index)
+void make_script_from_event (Grob *p,
+ SCM * descr, Translator_group*tg, Music * event,
+ int index)
{
SCM alist = tg->get_property ("scriptDefinitions");
SCM art_type= event->get_mus_property ("articulation-type");
event->origin ()->warning (_("Don't know how to interpret articulation:"));
event->origin ()->warning (_("Scheme encoding: "));
scm_write (art_type, scm_current_error_port ());
- return 0 ;
+ return ;
}
art = gh_cdr (art);
- Grob *p =new Item (tg->get_property ("Script"));
+
*descr = art;
SCM force_dir = event->get_mus_property ("direction");
Side_position_interface::set_axis (p, Y_AXIS);
p->set_grob_property ("script-priority", gh_int2scm (prio));
- return p;
}
void
{
Music* l=scripts_[i].event_;
- Grob * p = make_script_from_event (&scripts_[i].description_, daddy_trans_, l, i);
+ Grob * p = make_item ("Script");
+
+ make_script_from_event (p, &scripts_[i].description_, daddy_trans_, l, i);
scripts_[i].script_ = p;
if (p)
SCM follow = scm_assoc (ly_symbol2scm ("follow-into-staff"), scripts_[i].description_);
if (gh_pair_p (follow) && to_boolean (gh_cdr (follow)))
- sc->add_offset_callback (Side_position_interface::quantised_position_proc, Y_AXIS);
- else
- Side_position_interface::add_staff_support (sc);
+ {
+ sc->add_offset_callback (Side_position_interface::quantised_position_proc, Y_AXIS);
+ sc->set_grob_property ("staff-padding", SCM_EOL);
+ }
typeset_grob (sc);
}
scripts_.clear ();
}
-void
-Script_engraver::start_translation_timestep ()
-{
- scripts_.clear ();
-}
-
Script_engraver::Script_engraver(){}