From: Bertrand Bordage Date: Wed, 22 Jun 2011 23:27:12 +0000 (+0200) Subject: New breve rest with ledger lines X-Git-Tag: release/2.15.6-1~3^2~19 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=56852db5bbe953c74386437fe9ca596540e684f5;p=lilypond.git New breve rest with ledger lines --- diff --git a/lily/rest.cc b/lily/rest.cc index 9b85523f80..c064e5a980 100644 --- a/lily/rest.cc +++ b/lily/rest.cc @@ -80,7 +80,7 @@ string Rest::glyph_name (Grob *me, int balltype, string style, bool try_ledgers) { bool is_ledgered = false; - if (try_ledgers && (balltype == 0 || balltype == 1)) + if (try_ledgers && (balltype == -1 || balltype == 0 || balltype == 1)) { Real rad = Staff_symbol_referencer::staff_radius (me) * 2.0; Real pos = Staff_symbol_referencer::get_position (me); @@ -90,6 +90,7 @@ Rest::glyph_name (Grob *me, int balltype, string style, bool try_ledgers) could bemore generic, but hey, we understand this even after dinner. */ + is_ledgered |= (balltype == -1) && (pos <= -rad - 3 || pos >= +rad + 1); is_ledgered |= (balltype == 0) && (pos >= +rad + 2 || pos < -rad); is_ledgered |= (balltype == 1) && (pos <= -rad - 2 || pos > +rad); } diff --git a/mf/feta-rests.mf b/mf/feta-rests.mf index 4f27080179..1e416d36d3 100644 --- a/mf/feta-rests.mf +++ b/mf/feta-rests.mf @@ -125,6 +125,24 @@ fet_beginchar ("breve rest", "M1"); draw_staff (-2, 2, 0); fet_endchar; +fet_beginchar ("breve rest (outside staff)", "M1o"); + set_char_box (0, breve_rest_x#, + ledgerlinethickness# / 2, breve_rest_y#); + + draw_block ((0, 0), (breve_rest_x, breve_rest_y)); + + pickup pencircle scaled ledgerlinethickness; + + y5 = y6 = breve_rest_y; + lft x5 = -b - breve_rest_y / 2; + rt x6 = w + breve_rest_y / 2; + + draw_gridline (z5, z6, ledgerlinethickness_rounded); + draw_gridline ((x5, 0), (x6, 0), ledgerlinethickness_rounded); + + draw_staff (-2, 2, 3); +fet_endchar; + fet_beginchar ("Quarter rest", "2"); save alpha, yshift, height;