]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/simultaneous-music.cc
* scm/output-gnome.scm (FIXME-glyph-string): New function. Cannot
[lilypond.git] / lily / simultaneous-music.cc
index 7e070968c3bea8d515d6660a5c34df685c913d00..ccf3287ab511202b73d61e397522acc1e7909834 100644 (file)
@@ -1,60 +1,48 @@
+/*   
+  simultaneous-music.cc --  implement Simultaneous_music
+
+  source file of the GNU LilyPond music typesetter
+
+  (c) 1998--2004 Han-Wen Nienhuys <hanwen@xs4all.nl>
+
+*/
+
 #include "input.hh"
-#include "moment.hh"
 #include "pitch.hh"
 #include "music-list.hh"
+#include "scm-option.hh"
 
 Moment
 Simultaneous_music::get_length () const
 {
-  return Music_sequence::maximum_length (get_mus_property ("elements"));
+  return Music_sequence::maximum_length (get_property ("elements"));
 }
 
 Moment
 Simultaneous_music::start_mom () const
 {
-  return Music_sequence::minimum_start (get_mus_property ("elements"));
+  return Music_sequence::minimum_start (get_property ("elements"));
 }
 
-Simultaneous_music::Simultaneous_music()
+Simultaneous_music::Simultaneous_music ()
 {
 
 }
 
-/*
-  Cut & paste from Music_sequence, (ugh) , but we must add an error
-  message.
- */
 Pitch
 Simultaneous_music::to_relative_octave (Pitch p)
 {
-  Pitch first;
-  int count=0;
-
-  Pitch last = p;
-  for (SCM s = music_list (); gh_pair_p (s);  s = ly_cdr (s))
+  Pitch retval = music_list_to_relative (music_list (), p, false);
+  if (lily_1_8_relative)
     {
-      if (Music *m = unsmob_music (ly_car (s)))
-       {
-         last = m->to_relative_octave (last);
-         if (!count ++)
-           first = last;
-       }
-    }
+      Pitch retval_1_8 = music_list_to_relative (music_list (), p, true);
+      if (retval_1_8 != retval)
+       lily_1_8_compatibility_used = true;
 
-#if 0
-  if (count && first != last)
-    {
-      String str = _("Changing relative definition may cause octave change.");
-      str += "\nWas: " +  first.to_string ()
-       + " -- now returning: " + last.to_string () + "\n";
-      
-      origin()->warning (str);
+      retval = retval_1_8;
     }
 
-  return last;
-#else
-  return first;
-#endif
+  return retval;
 }
 
 ADD_MUSIC (Simultaneous_music);
@@ -62,6 +50,7 @@ ADD_MUSIC (Simultaneous_music);
 Pitch
 Event_chord::to_relative_octave (Pitch p)
 {
-  return do_relative_octave (p, true);
+  return music_list_to_relative (music_list (), p, true);
 }
-ADD_MUSIC(Event_chord);
+
+ADD_MUSIC (Event_chord);