]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-0.0.24
authorfred <fred>
Sun, 24 Mar 2002 19:28:26 +0000 (19:28 +0000)
committerfred <fred>
Sun, 24 Mar 2002 19:28:26 +0000 (19:28 +0000)
Sources.make
hdr/request.hh
hdr/textdef.hh

index afadfff786cdf877b1c85934ab4d022092784c29..573861e9b72e42fe8902cf32e186faad13a272c2 100644 (file)
@@ -6,14 +6,16 @@ hdr=   accidental.hh bar.hh beam.hh boxes.hh break.hh clef.hh clefitem.hh\
        getcommand.hh glob.hh globvars.hh grouping.hh idealspacing.hh\
        identifier.hh identparent.hh inputcommand.hh inputcommands.hh\
        inputmusic.hh inputscore.hh inputstaff.hh item.hh key.hh keyitem.hh\
-       keyword.hh leastsquares.hh lexer.hh linespace.hh linestaff.hh\
-       localkeyitem.hh lookup.hh main.hh melodicstaff.hh meter.hh misc.hh\
+       keyword.hh leastsquares.hh lexer.hh linespace.hh linepstaff.hh\
+       localkeyitem.hh lookup.hh \
+       lyriccolumn.hh  lyricitem.hh lyricstaff.hh lyricwalker.hh\
+       main.hh melodicstaff.hh meter.hh misc.hh\
        molecule.hh moment.hh notehead.hh notename.hh offset.hh paper.hh\
        parseconstruct.hh pcol.hh proto.hh pscore.hh pstaff.hh qlp.hh\
        qlpsolve.hh request.hh rest.hh rhythmstaff.hh sccol.hh score.hh\
        scoreline.hh script.hh scriptdef.hh simplestaff.hh simplewalker.hh\
        slur.hh spanner.hh staff.hh staffcommands.hh staffelem.hh staffline.hh\
-       stcol.hh stem.hh swalker.hh symbol.hh symtable.hh tex.hh textdef.hh\
+       stcol.hh stem.hh staffwalker.hh symbol.hh symtable.hh tex.hh textdef.hh\
        textitem.hh textspanner.hh timedescription.hh tstream.hh voice.hh
 
 mycc=bar.cc beam.cc boxes.cc break.cc calcideal.cc clef.cc\
@@ -21,15 +23,17 @@ mycc=bar.cc beam.cc boxes.cc break.cc calcideal.cc clef.cc\
        getcommands.cc grouping.cc idealspacing.cc identifier.cc\
        inputcommand.cc inputcommands.cc inputmusic.cc inputscore.cc\
        inputstaff.cc item.cc key.cc keyitem.cc keyword.cc\
-       leastsquares.cc lexerinit.cc linespace.cc linestaff.cc\
-       localkeyitem.cc lookup.cc main.cc melodicstaff.cc meter.cc\
+       leastsquares.cc lexerinit.cc linespace.cc linepstaff.cc\
+       localkeyitem.cc lookup.cc\
+       lyriccolumn.cc lyricitem.cc lyricstaff.cc lyricwalker.cc\
+       main.cc melodicstaff.cc meter.cc\
        misc.cc molecule.cc mylexer.cc note.cc notehead.cc notename.cc\
        paper.cc pcol.cc pscore.cc pstaff.cc qlp.cc qlpsolve.cc\
        request.cc rest.cc rhythmstaff.cc sccol.cc score.cc\
        scoreline.cc scores.cc script.cc scriptdef.cc simpleprint.cc\
        simplestaff.cc simplewalker.cc slur.cc spanner.cc staff.cc\
        staffcommands.cc staffelem.cc staffline.cc stcol.cc stem.cc\
-       swalker.cc symbol.cc symtable.cc table.cc tex.cc texbeam.cc\
+       staffwalker.cc symbol.cc symtable.cc table.cc tex.cc texbeam.cc\
        texslur.cc textdef.cc textitem.cc textspanner.cc\
        timedescription.cc tstream.cc voice.cc warn.cc wordwrap.cc\
        template1.cc template2.cc template3.cc template4.cc\
index 12382d0bf7b317ea68f1283124a2f1d963c3a93f..c401fcdd9d7ba709950f6641e298ae9c002b7297 100644 (file)
@@ -6,7 +6,7 @@
 #include "string.hh"
 #include "moment.hh"
 
-/// a voice element wants something printed
+/// Hungarian postfix: req
 struct Request {
     Voice_element*elt_l_;
     
@@ -31,11 +31,14 @@ struct Request {
     virtual Beam_req *beam() { return 0 ; }
     virtual Slur_req *slur() { return 0 ; }
     virtual Rhythmic_req*rhythmic() { return 0; }
+    virtual Lyric_req* lreq_l() { return 0; }
     virtual Melodic_req *melodic() { return 0; }
     virtual Mark_req * mark() { return 0; }
+    virtual Staff_command_req* command() { return 0;}
 };
 
 /**
+ a voice element wants something printed.
 see lilygut page
  */
        
@@ -60,6 +63,30 @@ struct Rhythmic_req : virtual Request {
 };
 
 
+///Put a text above or below (?) this staff.
+struct Text_req : virtual Request {
+    int dir_i_;
+    Text_def *tdef_p_;
+    /****************/
+    Text_req* text() { return this; }
+    virtual void print() const;
+    Request *clone()const;
+
+    Text_req(int d, Text_def*);
+    ~Text_req();
+    Text_req(Text_req const&);
+};
+
+
+struct Lyric_req : public Rhythmic_req, Text_req {
+
+    Lyric_req(Text_def* t_p);
+    void print() const;
+    Lyric_req* lreq_l() { return this; }
+    Request* clone() const;
+};
+
+
 struct Melodic_req :virtual  Request
 {
     /// 0 is c
@@ -167,19 +194,6 @@ struct Script_req : Request {
 slurs and brackets, so this also a request */
 
 
-///Put a text above or below (?) this staff.
-struct Text_req : Request {
-    int dir;
-    Text_def *spec;
-    /****************/
-    Text_req*text() { return this; }
-    virtual void print() const;
-    Request *clone()const;
-    Text_req(int d, Text_def*);
-    ~Text_req();
-    Text_req(Text_req const&);
-};
-
 /// designate this spot with a name.
 struct Mark_req : Request {
     String mark_str_;
@@ -190,6 +204,15 @@ struct Mark_req : Request {
     Request *clone() const;
 };
 
+struct Staff_command_req : Request {
+    Input_command * com_p_;
+    Staff_command_req* command() { return this;}
+    Staff_command_req(Staff_command_req const&);
+    ~Staff_command_req();
+    Staff_command_req(Input_command*);
+    Request*clone()const;
+    void print()const;
+};
 
 #if 0
 
@@ -285,6 +308,10 @@ struct Spacing_req {
 struct Glissando_req : Span_req {
     
 };
-
+struct Stemdir_req : Request {
+    int which;
+};
+struct Group_change_req : Request {
+};
 #endif
 #endif
index 2befb6bb4dbabb4a7a761ea2cca9b2b1f82bb8ae..6682221761d63d3cb1f4f7e658e795d06db649ff 100644 (file)
@@ -8,17 +8,20 @@
 #define TEXTDEF_HH
 
 #include "string.hh"
+#include "proto.hh"
+
+struct Text_def  {
+    int align_i_;
+    String text_str_;
+    String style_str_;
 
-struct Text_def {
-    int align;
-    String text;
-    String style;
 
     /*****************/
     
     Text_def();
-    void print()const;
-    Atom create(Paperdef*)const;
+    virtual void print() const;
+    virtual Atom create_atom(Paperdef*) const;
 };
+
 #endif // TEXTDEF_HH