]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-0.1.15
authorfred <fred>
Sun, 24 Mar 2002 19:58:03 +0000 (19:58 +0000)
committerfred <fred>
Sun, 24 Mar 2002 19:58:03 +0000 (19:58 +0000)
lily/musical-request.cc
lily/note.cc
lily/notehead.cc
lily/parser.y

index f5748139270c4e012e43b92124cc42c0e426733e..5b69a4f5813cfa39e2616efaf8e403f46996cbaf 100644 (file)
@@ -423,28 +423,44 @@ Absolute_dynamic_req::do_print() const
 {
 #ifndef NPRINT
   Dynamic_req::do_print();
-  DOUT << " loudness " <<loudness_str (loudness_);
+  DOUT << " loudness " <<loudness_str ();
 #endif
 }
 
 String
-Dynamic_req::loudness_str (Loudness l) 
+Dynamic_req::loudness_static_str (Loudness l) 
 {
   switch (l) 
     {
-  case FFF: return "fff";
-  case FF: return "ff";
-  case F: return "f";
-  case MF: return "mf";
-  case MP: return "mp";
-  case P: return "p";
-  case PP: return "pp";
-  case PPP: return "ppp";
+    case FFF: return "fff";
+    case FF: return "ff";
+    case F: return "f";
+    case MF: return "mf";
+    case MP: return "mp";
+    case P: return "p";
+    case PP: return "pp";
+    case PPP: return "ppp";
+    case FP: return "fp";
+    case SF: return "sf";
+    case SFZ: return "sfz";
     }
-  assert (false);
   return "";
 }
 
+String
+Absolute_dynamic_req::loudness_str () const
+{
+  String s = loudness_static_str (loudness_);
+  if (!s)
+    {
+      s = "mf";
+      warning (String ("Never heard of dynamic scale ") 
+              + loudness_ + " assuming mf");
+    }
+  return s;
+}
+
+
 Absolute_dynamic_req::Absolute_dynamic_req()
 {
   loudness_ = MF;
index caa6abf3da1d0ad729a3aebe4629ef3b622150a4..78e64294731e26f6cb536b580142b9a46beedb11 100644 (file)
@@ -49,7 +49,7 @@ Request*
 get_script_req (int d , General_script_def*def)
 {
   Musical_script_req* script_req_p = new Musical_script_req;
-  script_req_p->dir_ =d;
+  script_req_p->dir_ =(Direction)d;
   script_req_p->scriptdef_p_=def;
   return script_req_p;
 }
index 389ff0cf60ff8ed33cdf6014e21fef790f78e0e5..4d65dff62ea654f2eef62c8611b089a0e81114f4 100644 (file)
@@ -44,6 +44,15 @@ Note_head::compare (Note_head *const  &a, Note_head * const &b)
   return a->position_i_ - b->position_i_;
 }
 
+Interval
+Note_head::do_width () const
+{
+  Atom a =  paper ()->lookup_l()->ball (balltype_i_);
+  Interval i = a.dim_[X_AXIS];
+  i+= x_dir_ * i.length ();
+  return i;
+}
+
 Molecule*
 Note_head::brew_molecule_p() const 
 {
@@ -54,9 +63,9 @@ Note_head::brew_molecule_p() const
   // ugh
   bool streepjes_b = (position_i_<-1) || (position_i_ > staff_size_i_+1);
   
-  Symbol  s = p->lookup_l()->ball (balltype_i_);
+  Atom  s = p->lookup_l()->ball (balltype_i_);
   out = new Molecule (Atom (s));
-  out->translate (x_dir_ * s.dim.x().length (), X_AXIS);
+  out->translate (x_dir_ * s.dim_[X_AXIS].length (), X_AXIS);
 
   if (streepjes_b) 
     {
@@ -65,7 +74,7 @@ Note_head::brew_molecule_p() const
        ? -((-position_i_)/2)
        : (position_i_-staff_size_i_)/2;
        
-      Symbol str = p->lookup_l()->streepjes (s);
+      Atom str = p->lookup_l()->streepjes (s);
       Molecule sm;
       sm.add (Atom (str));
       if (position_i_ % 2)
index d7b2a0d4faada19162d32d4068241e164c38920f..8a60f8b3ab2f46fdb45a02e4a3cc6ea1c53ef65f 100644 (file)
@@ -82,7 +82,7 @@
     General_script_def * script;
     Scalar *scalar;
     String *string;
-    Symbol * symbol;
+    Atom * symbol;
     Symtable * symtable;
     Symtables * symtables;
     Text_def * textdef;
@@ -1180,13 +1180,13 @@ symtable_body:
 
 symboldef:
        STRING  box             {
-               $$ = new Symbol (*$1, *$2);
+               $$ = new Atom (*$1, *$2);
                delete $1;
                delete $2;
        }
        | STRING {
                Box b (Interval (0,0), Interval (0,0));
-               $$ = new Symbol (*$1, b);
+               $$ = new Atom (*$1, b);
                delete $1;
        }
        ;