source file of the GNU LilyPond music typesetter
- (c) 1998--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1998--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
-
#include "relative-music.hh"
-#include "debug.hh"
+#include "warn.hh"
+#include "scm-option.hh"
+
-Musical_pitch
-Relative_octave_music::to_relative_octave (Musical_pitch)
+Pitch
+Relative_octave_music::to_relative_octave (Pitch p)
{
- return last_pitch_;
+ if (lily_1_8_relative)
+ {
+ lily_1_8_compatibility_used = true;
+ /* last-pitch should be junked some time, when
+ we ditch 1.8 compat too.
+
+ When you do, B should start where A left off.
+
+ \relative { A \relative { ...} B } */
+ Pitch *ptr = unsmob_pitch (get_property ("last-pitch"));
+ return (ptr) ? *ptr : p;
+ }
+ else
+ return p;
}
-Relative_octave_music::Relative_octave_music(Music*p,Musical_pitch def)
- : Music_wrapper (p)
+Relative_octave_music::Relative_octave_music ()
{
- last_pitch_ = element ()->to_relative_octave (def);
}
+ADD_MUSIC (Relative_octave_music);