2006-08-08 Han-Wen Nienhuys <hanwen@lilypond.org>
+ * scm/define-music-types.scm (music-descriptions): add
+ line-break-event to LineBreakEvent music
+
+ * lily/music.cc (to_event): don't crash if music type not set.
+
+ * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
+ spacing not set.
+
+
+ * lily/spacing-engraver.cc (stop_translation_timestep): set
+ spacing for proportional notation too.
+
* scm/translation-functions.scm (format-bass-figure): inspect stream-event.
* scripts/lilypond-book.py (bindir): add bindir to $PATH.
* lily/paper-book.cc (pages): use the new page-breaking calling convention
->>>>>>> 1.5227
2006-08-07 Erik Sandberg <mandolaerik@gmail.com>
* lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
SCM class_name = ly_symbol2scm (out);
// catch mistakes.
- assert (internal_is_music_type (class_name));
+ if (!internal_is_music_type (class_name))
+ {
+ programming_error ("Not a music type");
+ }
Stream_event *e = new Stream_event (class_name, mutable_property_alist_);
Moment length = get_length ();
Paper_column *musical_column
= dynamic_cast<Paper_column *> (unsmob_grob (get_property ("currentMusicalColumn")));
+ musical_column->set_object ("spacing", spacing_->self_scm ());
+ unsmob_grob (get_property ("currentCommandColumn"))
+ ->set_object ("spacing", spacing_->self_scm ());
+
SCM proportional = get_property ("proportionalNotationDuration");
if (unsmob_moment (proportional))
{
musical_column->set_property ("shortest-playing-duration", sh);
musical_column->set_property ("shortest-starter-duration", st);
-
- musical_column->set_object ("spacing", spacing_->self_scm ());
- unsmob_grob (get_property ("currentCommandColumn"))
- ->set_object ("spacing", spacing_->self_scm ());
}
#include "staff-spacing.hh"
#include "note-spacing.hh"
#include "spacing-spanner.hh"
-
+#include "warn.hh"
#include "moment.hh"
/* Find the loose columns in POSNS, and drape them around the columns
}
Spacing_options options;
- options.init_from_grob (spacing);
+ if (spacing)
+ options.init_from_grob (spacing);
+ else
+ programming_error ("Column without spacing object");
bool expand_only = false;
Real base_note_space = 0.0;
(LineBreakEvent
. (
(description . "Allow, forbid or force a line break.")
- (types . (general-music break-event event))
+ (types . (general-music line-break-event break-event event))
))
(LyricCombineMusic