source file of the GNU LilyPond music typesetter
- (c) 1996--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ (c) 1996--2009 Han-Wen Nienhuys <hanwen@xs4all.nl>
keyplacement by Mats Bengtsson
*/
Real inter = Staff_symbol_referencer::staff_space (me) / 2.0;
- SCM scm_style = me->get_property ("style");
- string style;
- if (scm_is_symbol (scm_style))
- style = ly_symbol2string (scm_style);
- else
- style = "";
-
Stencil mol;
SCM c0s = me->get_property ("c0-position");
*/
int last_pos = -1000;
+ SCM last_glyph_name = SCM_BOOL_F;
+ SCM padding_pairs = me->get_property ("padding-pairs");
+
Font_metric *fm = Font_interface::get_default_font (me);
SCM alist = me->get_property ("glyph-name-alist");
*/
Real padding = robust_scm2double (me->get_property ("padding"),
0.0);
- if (glyph_name == "accidentals.natural"
+ SCM handle = scm_assoc (scm_cons (glyph_name_scm, last_glyph_name),
+ padding_pairs);
+ if (scm_is_pair (handle))
+ padding = robust_scm2double (scm_cdr (handle), 0.0);
+ else if (glyph_name == "accidentals.natural"
&& last_pos < pos + 2
&& last_pos > pos - 6)
padding += 0.3;
mol.add_at_edge (X_AXIS, LEFT, acc, padding);
+
last_pos = pos;
+ last_glyph_name = glyph_name_scm;
}
}
ADD_INTERFACE (Key_signature_interface,
"A group of accidentals, to be printed as signature sign.",
+ /* properties */
"alteration-alist "
"c0-position "
"glyph-name-alist "
"padding "
- "style "
+ "padding-pairs "
);