]> git.donarmstrong.com Git - lilypond.git/commitdiff
* scm/define-grob-interfaces.scm
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Mon, 9 Oct 2006 12:41:36 +0000 (12:41 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Mon, 9 Oct 2006 12:41:36 +0000 (12:41 +0000)
(trill-pitch-accidental-interface):
add trill-pitch-accidental-interface

* lily/dots-engraver.cc (acknowledge_rhythmic_head): only
dereference if it's really a duration.

* scm/define-grobs.scm (all-grob-descriptions): set
allow-loose-spacing for PaperColumn and
NonMusicalPaperColumn. Kludge for #110.

* lily/spacing-determine-loose-columns.cc (is_loose_column):
allow-loose-spacing property.

ChangeLog
lily/dots-engraver.cc
lily/pitched-trill-engraver.cc
scm/define-grob-interfaces.scm
scm/define-grobs.scm

index f9d9cb6c3b316501ec121f21a50c47e19f409a5c..000ed28ca8c965b25de9a55c97cca246c5c42cbc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2006-10-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
 
+       * scm/define-grob-interfaces.scm
+       (trill-pitch-accidental-interface):
+       add trill-pitch-accidental-interface
+
+       * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
+       dereference if it's really a duration.
+
        * lily/figured-bass-engraver.cc (process_music): clear spanner if
        useBassFigureExtenders is not set.
        (listen_bass_figure): record as new event if
index 1b34354e43e755354dea27365f352abc399d0bf5..cb39fc0a800eeb41e4620248b428cfef9e63ec6b 100644 (file)
@@ -37,11 +37,14 @@ Dots_engraver::acknowledge_rhythmic_head (Grob_info gi)
   if (unsmob_grob (note->get_object ("dot")))
     return;
 
-  Duration dur = *unsmob_duration (cause->get_property ("duration"));
-  if (dur.dot_count ())
+  
+  Duration *dur = unsmob_duration (cause->get_property ("duration"));
+  if (dur && dur->dot_count ())
     {
       Item *d = make_item ("Dots", note->self_scm ());
       Rhythmic_head::set_dots (note, d);
+
+      d->set_property ("dot-count", scm_from_int (dur->dot_count ()));
       d->set_parent (note, Y_AXIS);
     }
 }
index 71913d2bb9e4c7dee1d8ae74fb263b381facea65..84e99f00391be25237ae705fb3d3a8f42f791274 100644 (file)
@@ -112,6 +112,7 @@ Pitched_trill_engraver::make_trill (Stream_event *ev)
       // fixme: naming -> alterations
       trill_accidental_->set_property ("accidentals", scm_list_1 (scm_from_int (p->get_alteration ())));
       Side_position_interface::add_support (trill_accidental_, trill_head_);
+      
       trill_head_->set_object ("accidental-grob", trill_accidental_->self_scm ());
       trill_accidental_->set_parent (trill_head_, Y_AXIS);
       Axis_group_interface::add_element (trill_group_, trill_accidental_);
index 5876ae40e91abcf857ecb4840d1d66f3495bfda3..59ff1593a77029bebd447e554e6716b0e2b84b6e 100644 (file)
    "A note head to indicate trill pitches"
    '(accidental-grob))
 
+(ly:add-interface
+ 'trill-pitch-accidental-interface
+ "An accidental for trill pitch"
+ '(accidentals))
+
 (ly:add-interface
  'rhythmic-grob-interface
  "Any object with a rhythmic basis. Used to determine which grobs
index be8462be0a055aad3a792867fff2a711588594c3..7e633bc1261c60b49dcadaf76e124fcfc5efe078 100644 (file)
        (stencil . ,ly:accidental-interface::print)
        (meta . ((class . Item)
                 (interfaces . (item-interface
+                               trill-pitch-accidental-interface
                                side-position-interface
                                font-interface))))))