]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/event.cc
(triangle): add s to 0triangle.
[lilypond.git] / lily / event.cc
index 69125b035d3a8f3c0bb757748bced5d8da6b509d..e79f39eafcf9d511068d246eda3362a92bd76c30 100644 (file)
@@ -8,8 +8,7 @@
 
 #include "event.hh"
 #include "warn.hh"
-#include "event.hh"
-  
+
 Moment
 Event::get_length () const
 {
@@ -30,28 +29,6 @@ Event::compress (Moment m)
     set_property ("duration", d ->compressed (m.main_part_).smobbed_copy ());
 }
 
-void
-Event::transpose (Pitch delta)
-{
-  /*
-    TODO: should change music representation such that
-    _all_ pitch values are transposed automatically.
-   */
-  
-  Pitch *p = unsmob_pitch (get_property ("pitch"));
-  if (!p)
-    return ;
-
-  Pitch np = p->transposed (delta);
-  
-  if (abs (np.get_alteration ()) > DOUBLE_SHARP)
-    {
-       warning (_f ("Transposition by %s makes alteration larger than two",
-         delta.to_string ()));
-    }
-
-  set_property ("pitch", np.smobbed_copy ());
-}
 
 Pitch
 Event::to_relative_octave (Pitch last)
@@ -142,17 +119,17 @@ LY_DEFINE (ly_transpose_key_alist, "ly:transpose-key-alist",
   SCM newlist = SCM_EOL;
   Pitch *p = unsmob_pitch (pit);
   
-  for (SCM s = l; ly_c_pair_p (s); s = ly_cdr (s))
+  for (SCM s = l; scm_is_pair (s); s = scm_cdr (s))
     {
-      SCM key = ly_caar (s);
-      SCM alter = ly_cdar (s);
-      if (ly_c_pair_p (key))
+      SCM key = scm_caar (s);
+      SCM alter = scm_cdar (s);
+      if (scm_is_pair (key))
        {
-         Pitch orig (scm_to_int (ly_car (key)),
-                     scm_to_int (ly_cdr (key)),
+         Pitch orig (scm_to_int (scm_car (key)),
+                     scm_to_int (scm_cdr (key)),
                      scm_to_int (alter));
 
-         orig =orig.transposed (*p);
+         orig = orig.transposed (*p);
 
          SCM key = scm_cons (scm_int2num (orig.get_octave ()),
                             scm_int2num (orig.get_notename ()));
@@ -165,7 +142,7 @@ LY_DEFINE (ly_transpose_key_alist, "ly:transpose-key-alist",
          Pitch orig (0, scm_to_int (key), scm_to_int (alter));
          orig = orig.transposed (*p);
 
-         key =scm_int2num (orig.get_notename ());
+         key = scm_int2num (orig.get_notename ());
          alter = scm_int2num (orig.get_alteration ());
          newlist = scm_cons (scm_cons (key, alter), newlist);
        }
@@ -177,25 +154,23 @@ void
 Key_change_ev::transpose (Pitch p)
 {
   SCM pa = get_property ("pitch-alist");
-
   set_property ("pitch-alist", ly_transpose_key_alist (pa, p.smobbed_copy ()));
-  Pitch tonic = *unsmob_pitch (get_property ("tonic"));
-  set_property ("tonic",
-                   tonic.smobbed_copy ());
+
+  Event::transpose (p);
 }
 
 bool
 alist_equal_p (SCM a, SCM b)
 {
   for (SCM s = a;
-       ly_c_pair_p (s); s = ly_cdr (s))
+       scm_is_pair (s); s = scm_cdr (s))
     {
-      SCM key = ly_caar (s);
-      SCM val = ly_cdar (s);
+      SCM key = scm_caar (s);
+      SCM val = scm_cdar (s);
       SCM l = scm_assoc (key, b);
 
       if (l == SCM_BOOL_F
-         || !ly_c_equal_p ( ly_cdr (l), val))
+         || !ly_c_equal_p ( scm_cdr (l), val))
 
        return false;
     }