X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fnote-head.hh;h=ff4e9a848aed3b34b47f0d425c00de9b2a756e81;hb=9e69cb84d6ee5b0a861cd97869b10e3bdf0c833c;hp=dcdeca9ca447689da8c252a889de832fd12c1180;hpb=fbb6d20e9f58d691ffe845284cbb4d8bacf9ca60;p=lilypond.git diff --git a/lily/include/note-head.hh b/lily/include/note-head.hh index dcdeca9ca4..ff4e9a848a 100644 --- a/lily/include/note-head.hh +++ b/lily/include/note-head.hh @@ -1,30 +1,34 @@ /* note-head.hh -- part of GNU LilyPond - (c) 1996--2000 Han-Wen Nienhuys + (c) 1996--2006 Han-Wen Nienhuys */ #ifndef NOTEHEAD_HH #define NOTEHEAD_HH -#include "rhythmic-head.hh" +#include "stencil.hh" +#include "grob-interface.hh" -/** ball at the end of the stem. Takes care of: +/** ball at the end of the stem. Also takes care of ledger lines. - * help lines +NoteHead is a kind of RhythmicHead, see there. - */ +Read-only: +*/ -class Note_head : public Rhythmic_head +class Note_head { public: - static int compare (Note_head * const &a, Note_head *const &b) ; - - Molecule ledger_line (Interval) const; -protected: - - virtual void before_line_breaking (); - virtual Molecule do_brew_molecule() const; + DECLARE_SCHEME_CALLBACK (print, (SCM)); + DECLARE_SCHEME_CALLBACK (brew_ez_stencil, (SCM)); + DECLARE_SCHEME_CALLBACK (stem_x_shift, (SCM)); + DECLARE_SCHEME_CALLBACK (calc_stem_attachment, (SCM)); + DECLARE_GROB_INTERFACE(); + static Real stem_attachment_coordinate (Grob *, Axis a); + static int get_balltype (Grob *); + + static Offset get_stem_attachment (Font_metric *, string); }; #endif // NOTEHEAD_HH