+2005-11-25 Han-Wen Nienhuys <hanwen@xs4all.nl>
+
+ * lily/nested-system-start-delimiter-engraver.cc (from_list): read
+ bracket type from hierarchy.
+
+2005-11-24 Han-Wen Nienhuys <hanwen@xs4all.nl>
+
+ * lily/rest.cc (y_offset_callback): read staff-position.
+
+ * scm/define-grob-properties.scm (all-user-grob-properties): don't
+ mark after-line-breaking-callback as internal.
+
+ * lily/self-aligment-interface.cc: remove self-[XY]-offset.
+
2005-11-25 Werner Lemberg <wl@gnu.org>
* mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
2005-11-23 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ * stepmake/bin/add-html-footer.py (do_file): add google
+
* lily/staff-symbol-engraver.cc (process_music): bugfix: stop
staff if first_start_ is true.
virtual void add_support (Grob *) { }
virtual void set_bound (Direction, Grob *){}
virtual void set_nesting_support (Grob*) {}
- virtual void create_grobs (Engraver*, SCM, SCM){}
+ virtual void create_grobs (Engraver*, SCM) {}
};
struct Bracket_nesting_group : public Bracket_nesting_node
{
Spanner *delimiter_;
Link_array<Bracket_nesting_node> children_;
-
+ SCM symbol_;
+
void from_list (SCM );
virtual void add_support (Grob *grob);
virtual bool add_staff (Grob *grob);
virtual void set_nesting_support (Grob*);
virtual void set_bound (Direction, Grob *grob);
- virtual void create_grobs (Engraver*, SCM, SCM);
+ virtual void create_grobs (Engraver*, SCM);
~Bracket_nesting_group ();
+ Bracket_nesting_group ();
};
+
struct Bracket_nesting_staff : public Bracket_nesting_node
{
Grob *staff_;
virtual bool add_staff (Grob *);
};
+
+Bracket_nesting_group::Bracket_nesting_group ()
+{
+ symbol_ = SCM_EOL;
+ delimiter_ = 0;
+}
+
bool
Bracket_nesting_staff::add_staff (Grob *g)
{
}
void
-Bracket_nesting_group::create_grobs (Engraver *engraver, SCM types, SCM default_type)
+Bracket_nesting_group::create_grobs (Engraver *engraver, SCM default_type)
{
- SCM type = (scm_is_pair (types) ? scm_car (types) : default_type);
+ SCM type = scm_is_symbol (symbol_) ? symbol_ : default_type;
delimiter_ = make_spanner_from_properties (engraver, type,
SCM_EOL, ly_symbol2string (type).to_str0 ());
for (int i = 0 ; i < children_.size (); i++)
{
- children_[i]->create_grobs (engraver, (scm_is_pair (types) ? scm_cdr (types) : SCM_EOL),
- default_type);
+ children_[i]->create_grobs (engraver, default_type);
}
}
{
children_.push (new Bracket_nesting_staff (0));
}
+
+ if (scm_is_symbol (entry))
+ symbol_ = entry;
}
}
nesting_ = new Bracket_nesting_group ();
SCM hierarchy = get_property ("systemStartDelimiterHierarchy");
SCM delimiter_name = get_property ("systemStartDelimiter");
- SCM delimiter_types = get_property ("systemStartDelimiters");
+
nesting_->from_list (hierarchy);
- nesting_->create_grobs (this, delimiter_types,
- delimiter_name);
+ nesting_->create_grobs (this, delimiter_name);
nesting_->set_bound (LEFT, unsmob_grob (get_property ("currentCommandColumn")));
}
}
/* doc */ "Creates a system start delimiter (ie. SystemStart@{Bar, Brace, Bracket@} spanner",
/* create */ "SystemStartSquare SystemStartBrace SystemStartBracket SystemStartBar",
/* accept */ "",
- /* read */ "systemStartDelimiterHierarchy",
+ /* read */ "systemStartDelimiter systemStartDelimiterHierarchy currentCommandColumn",
/* write */ "");
(X-offset ,number? "The horizontal amount that this object is moved relative to its X-parent")
(Y-offset ,number? "The vertical amount that this object is moved
relative to its X-parent")
- (self-X-offset ,number? "")
- (self-Y-offset ,number? "")
(accidentals ,list? "List of alteration numbers")
+ (after-line-breaking ,boolean? "Dummy property, used to trigger callback for after-line-breaking")
(alteration-alist ,list? "List of @code{(@var{pitch}
. @var{accidental})} pairs for key signature.")
(add-stem-support ,boolean? "If set, the Stem object is included in this script's support")
(axis-group-parent-Y ,ly:grob? "Containing Y axis group")
(accidental-grobs ,list? "Alist with (NOTENAME . GROBLIST) entries")
(adjacent-hairpins ,ly:grob-array? "List of directly neighboring hairpins")
- (after-line-breaking ,boolean? "Dummy property, used to trigger callback for after-line-breaking")
(all-elements ,ly:grob-array? "list of all grobs in this line. Its
function is to protect objects from being garbage collected.")
(arpeggio ,ly:grob? "pointer to arpeggio object.")