+2002-05-16 Han-Wen <hanwen@cs.uu.nl>
+
+ * lily/piano-pedal-engraver.cc (create_bracket_grobs): fix broken
+ pedal spanners.
+
2002-05-15 Han-Wen Nienhuys <hanwen@cs.uu.nl>
* lily/*.cc: remove as many iostream use as possible.
Almost all La@TeX{} commands that change margins and line widths are ignored.
+There is no way to automatically apply convert-ly to fragments inside a
+lilypond-book file.
+
Since there is no finder's fee which doubles every year, there is no
need to wait for the prize money to grow. So send a bug report today if
you need this one of these options.
\version "1.5.38"
\header{
texidoc = "Piano pedal symbols merge stop and start. The strings are configurable.
-Text style, bracket style, and a mixture of both are supported. "
+Text style, bracket style, and a mixture of both are supported.
+Brackets work across line breaks.
+
+"
+
}
\score{
\context Staff \notes\relative c'{
-c4 d e f g
-\sustainDown b c
-c, [d16 c c c] [e e \sustainUp \sustainDown e e ] f4 \sustainUp
-g\sustainDown b \sustainUp c
-\property Staff.pedalSustainStrings = #'("-" "-P" "P")
-\property Staff.SustainPedal \override #'padding = #-2
-c, \sustainDown d e \sustainUp \sustainDown f
- \sustainUp g b c
+c4 d e f g
+\sustainDown b c c, |
+ [d16 c c c] [e e \sustainUp \sustainDown e e ] f4 \sustainUp
+ g\sustainDown |
+ b \sustainUp c
+ \property Staff.pedalSustainStrings = #'("-" "-P" "P")
+ \property Staff.SustainPedal \override #'padding = #-2
+ c, \sustainDown d e \sustainUp \sustainDown f
+ \sustainUp g b
+
+ \property Staff.UnaCordaPedal \override #'pedal-type = #'mixed
+ d \unaCorda e f g
+ \break
+ | b b b \treCorde c |
+
\property Staff.SustainPedal \override #'pedal-type = #'bracket
c4 d e \sustainDown b c c, \sustainUp \sustainDown [d8 c] [e8 e \sustainUp \sustainDown] f4 d
\sustainUp g \sustainDown b b, \sustainUp c'
+c4
-\property Staff.UnaCordaPedal \override #'pedal-type = #'mixed
-
-c4 d \unaCorda e f g
- b \treCorde c
}
class Grob {
public:
SCM immutable_property_alist_;
-
- // rename me to ``property_alist_''
SCM mutable_property_alist_;
Grob *original_l_;
0 means ORPHAN,
*/
char status_c_;
- String name () const;
+
/*
IDEA: make this a global variable. This is the same for all
scores being formatted multithreadedly.
*/
Paper_score *pscore_l_;
+ Dimension_cache dim_cache_[NO_AXES];
Grob (SCM basic_props);
Grob (Grob const&);
-
+ String name () const;
+
/*
properties
*/
SCM internal_get_grob_property (SCM) const;
void internal_set_grob_property (SCM, SCM val);
-#if 0
- void set_immutable_grob_property (const char * , SCM val);
- void set_immutable_grob_property (SCM key, SCM val);
-#endif
-
void warning (String);
void set_elt_pointer (const char*, SCM val);
void init ();
- Dimension_cache dim_cache_[NO_AXES];
public:
pedaltype == ly_symbol2scm ("mixed") ?
gh_bool2scm ( (bool) ! p->req_l_drul_[STOP]) :
gh_bool2scm (false));
- if (p->item_p_)
- p->bracket_p_->set_parent (p->item_p_, Y_AXIS);
+ /*
+ Warning: we can't hang the bracket on an item in Y-direction:
+ it will cause problems when the bracket is broken, because the
+ item can be on another line.
+ */
p->bracket_p_->set_bound (LEFT, unsmob_grob (get_property ("currentMusicalColumn")));
Axis_group_interface::add_element (p->line_spanner_, p->bracket_p_);
{
Grob *me= unsmob_grob (smob);
Spanner *spanner = dynamic_cast<Spanner*> (me);
-
- if (spanner->internal_has_interface (ly_symbol2scm ("piano-pedal-interface")) )
+
+ if (spanner->internal_has_interface (ly_symbol2scm ("piano-pedal-interface")))
{
setup_pedal_bracket(spanner);
}