2004-07-28 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ * lily/tie-engraver.cc (stop_translation_timestep): remember tie
+ definition, so \override works as expected.
+
* lily/measure-grouping-engraver.cc: clarify
2004-07-27 Han-Wen Nienhuys <hanwen@xs4all.nl>
#include "tie.hh"
#include "context.hh"
+#include "protected-scm.hh"
#include "spanner.hh"
#include "tie-column.hh"
#include "engraver.hh"
Link_array<Grob> now_heads_;
Link_array<Grob> heads_to_tie_;
Link_array<Grob> ties_;
+ Protected_scm tie_start_definition_;
Spanner * tie_column_;
Tie_engraver::process_music ()
{
if (event_)
- context ()->set_property ("tieMelismaBusy", SCM_BOOL_T);
+ {
+ context ()->set_property ("tieMelismaBusy", SCM_BOOL_T);
+ }
}
void
&& ly_c_equal_p (right_mus->get_property ("pitch"),
left_mus->get_property ("pitch")))
{
- Grob * p = make_spanner ("Tie", last_event_->self_scm ());
+ Grob * p = new Spanner (tie_start_definition_);
+ announce_grob (p, last_event_->self_scm ());
Tie::set_interface (p); // cannot remove yet!
Tie::set_head (p, LEFT, th);
if (event_)
{
+ tie_start_definition_ = updated_grob_properties (context (), ly_symbol2scm ("Tie"));
heads_to_tie_ = now_heads_;
last_event_ = event_;
}