From: Han-Wen Nienhuys Date: Fri, 23 Jul 2004 15:08:45 +0000 (+0000) Subject: * lily/ambitus-engraver.cc (create_ambitus): change name to X-Git-Tag: release/2.3.8~5 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=3c9561d788078f7ee4a6e1d973cf549d8f258935;p=lilypond.git * lily/ambitus-engraver.cc (create_ambitus): change name to AmbitusLine. Create AmbitusAccidental and AmbitusNoteHead for other ambitus parts. * lily/ledger-line-spanner.cc (print): new file. Set limits to ledger line length to avoid clashes. --- diff --git a/ChangeLog b/ChangeLog index ec7e0d88b3..46c7840459 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2004-07-23 Han-Wen Nienhuys + * lily/ambitus-engraver.cc (create_ambitus): change name to + AmbitusLine. Create AmbitusAccidental and AmbitusNoteHead for + other ambitus parts. + * lily/include/pitch-interval.hh (Pitch>): new file. * lily/pitch-interval.cc (add_point): new file. diff --git a/lily/ambitus-engraver.cc b/lily/ambitus-engraver.cc index 9985bf97c9..71f00f7aa8 100644 --- a/lily/ambitus-engraver.cc +++ b/lily/ambitus-engraver.cc @@ -43,7 +43,17 @@ private: void Ambitus_engraver::create_ambitus () { - ambitus_ = make_item ("Ambitus",SCM_EOL); + ambitus_ = make_item ("AmbitusLine",SCM_EOL); + Direction d = DOWN; + do + { + heads_[d] = make_item ("AmbitusNoteHead", SCM_EOL); + accidentals_[d] = make_item ("AmbitusAccidental", SCM_EOL); + heads_[d]->set_property ("accidental-grob", accidentals_[d]->self_scm ()); + Side_position_interface::add_support (accidentals_[d], heads_[d]); + } + while (flip (&d) != DOWN); + ambitus_->set_parent (heads_[DOWN], X_AXIS); is_typeset_ = false; } @@ -83,16 +93,7 @@ Ambitus_engraver::stop_translation_timestep () start_c0_ = robust_scm2int (get_property ("middleCPosition"), 0); start_key_sig_ = get_property ("keySignature"); - Direction d = DOWN; - do - { - heads_[d] = make_item ("AmbitusNoteHead", SCM_EOL); - accidentals_[d] = make_item ("AmbitusAccidental", SCM_EOL); - heads_[d]->set_property ("accidental-grob", accidentals_[d]->self_scm ()); - Side_position_interface::add_support (accidentals_[d], heads_[d]); - } - while (flip (&d) != DOWN); - ambitus_->set_parent (heads_[DOWN], X_AXIS); + is_typeset_ = true; } } diff --git a/lily/ambitus.cc b/lily/ambitus.cc index 44953bd4ca..bfcc7fd5c6 100644 --- a/lily/ambitus.cc +++ b/lily/ambitus.cc @@ -38,11 +38,12 @@ Ambitus::print (SCM smob) if (minh->relative_coordinate (common, Y_AXIS) > maxh->relative_coordinate (common, Y_AXIS)) { - maxh = heads[0]; - minh = heads[0]; + Grob *t = maxh; + maxh = minh; + minh = t; } - Real pad = 1.35; + Real pad = 0.35; Real pmax = maxh->relative_coordinate (common, Y_AXIS) - pad; Real pmin = minh->relative_coordinate (common, Y_AXIS) + pad; diff --git a/lily/ledger-line-spanner.cc b/lily/ledger-line-spanner.cc index ca54f00089..ad03ae3649 100644 --- a/lily/ledger-line-spanner.cc +++ b/lily/ledger-line-spanner.cc @@ -139,7 +139,7 @@ Ledger_line_spanner::print (SCM smob) { Interval head_extent = h->extent (common[X_AXIS], X_AXIS); Interval ledger_extent = head_extent; - head_extent.widen (length_fraction * head_extent.length ()); + ledger_extent.widen (length_fraction * head_extent.length ()); Direction vdir = Direction (sign (pos)); int rank = Paper_column::get_rank (h->get_column ()); diff --git a/scm/define-grobs.scm b/scm/define-grobs.scm index 00b9e655df..bdec00c635 100644 --- a/scm/define-grobs.scm +++ b/scm/define-grobs.scm @@ -33,12 +33,13 @@ (meta . ((interfaces . (item-interface accidental-placement-interface)))) )) - (Ambitus + (AmbitusLine . ( (breakable . #t) (break-align-symbol . ambitus) (print-function . ,Ambitus::print) (join-heads . #t) + (X-offset-callbacks (,Self_alignment_interface::centered_on_parent)) (break-visibility . ,begin-of-line-visible) (space-alist . ( (clef . (extra-space . 0.0))