X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fpage-turn-engraver.cc;h=b294dce7d7f803ca9b083d4a75235870178d2b01;hb=4d405ef96a8a62771d7d9a283ff5369a772e89d8;hp=874ebe7e7e56ce62791f5d2281e5270f8a609e72;hpb=cb0b407e567feca71cbc5f9479a06b266c69a26c;p=lilypond.git diff --git a/lily/page-turn-engraver.cc b/lily/page-turn-engraver.cc index 874ebe7e7e..b294dce7d7 100644 --- a/lily/page-turn-engraver.cc +++ b/lily/page-turn-engraver.cc @@ -29,9 +29,6 @@ #include "translator.icc" -using std::string; -using std::vector; - class Page_turn_event { public: @@ -64,7 +61,7 @@ public: return ret; } - Real new_pen = std::max (penalty_, penalty.penalty_); + Real new_pen = max (penalty_, penalty.penalty_); if (duration_[LEFT] < penalty.duration_[LEFT]) ret.push_back (Page_turn_event (duration_[LEFT], penalty.duration_[LEFT], permission_, penalty_)); @@ -100,8 +97,8 @@ class Page_turn_engraver : public Engraver Grob *breakable_column (Page_turn_event const &); protected: - DECLARE_TRANSLATOR_LISTENER (break); - DECLARE_ACKNOWLEDGER (note_head); + void listen_break (Stream_event *); + void acknowledge_note_head (Grob_info); public: TRANSLATOR_DECLARATIONS (Page_turn_engraver); @@ -110,7 +107,8 @@ public: void finalize (); }; -Page_turn_engraver::Page_turn_engraver () +Page_turn_engraver::Page_turn_engraver (Context *c) + : Engraver (c) { repeat_begin_ = Moment (-1); repeat_begin_rest_length_ = 0; @@ -121,8 +119,8 @@ Page_turn_engraver::Page_turn_engraver () Grob * Page_turn_engraver::breakable_column (Page_turn_event const &brk) { - vsize start = lower_bound (breakable_moments_, brk.duration_[LEFT], std::less ()); - vsize end = upper_bound (breakable_moments_, brk.duration_[RIGHT], std::less ()); + vsize start = lower_bound (breakable_moments_, brk.duration_[LEFT], less ()); + vsize end = upper_bound (breakable_moments_, brk.duration_[RIGHT], less ()); if (start == breakable_moments_.size ()) return NULL; @@ -171,7 +169,6 @@ Page_turn_engraver::acknowledge_note_head (Grob_info gi) note_end_ = now_mom () + dur_ptr->get_length (); } -IMPLEMENT_TRANSLATOR_LISTENER (Page_turn_engraver, break); void Page_turn_engraver::listen_break (Stream_event *ev) { @@ -323,7 +320,7 @@ Page_turn_engraver::finalize () if (pc) { SCM perm = max_permission (pc->get_property ("page-turn-permission"), brk.permission_); - Real pen = std::min (robust_scm2double (pc->get_property ("page-turn-penalty"), infinity_f), brk.penalty_); + Real pen = min (robust_scm2double (pc->get_property ("page-turn-penalty"), infinity_f), brk.penalty_); pc->set_property ("page-turn-permission", perm); pc->set_property ("page-turn-penalty", scm_from_double (pen)); } @@ -345,7 +342,13 @@ Page_turn_engraver::finalize () } } -ADD_ACKNOWLEDGER (Page_turn_engraver, note_head); + +void +Page_turn_engraver::boot () +{ + ADD_LISTENER (Page_turn_engraver, break); + ADD_ACKNOWLEDGER (Page_turn_engraver, note_head); +} ADD_TRANSLATOR (Page_turn_engraver, /* doc */