]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-0.0.60
authorfred <fred>
Sun, 24 Mar 2002 19:42:27 +0000 (19:42 +0000)
committerfred <fred>
Sun, 24 Mar 2002 19:42:27 +0000 (19:42 +0000)
input/slurs.ly
lily/directional-spanner.cc
lily/slur-reg.cc
lily/voice-group-regs.cc

index 95de0c76391978412b963eb415afc62904a6eeed..a97f5faa6c83c61cfb239248471ed6c3175e8538 100644 (file)
@@ -16,8 +16,8 @@ EndMudelaHeader
 \score{\staff{
        melodicregs 
        \melodic{\octave c';
-               \duration 4;
-               c ~ c ~ g ~ c ~
+               \duration "last";
+               'c4 ~ 'c c'' ~ c'' ~ g ~ c ~
                d ~ e ~ f ~ g ~
                a ~ b ~ 'c ~ c
 
@@ -29,8 +29,9 @@ EndMudelaHeader
                < { c ~ d }
                  { e ~ f }
                >
-
-
+       < \multivoice 
+       { \stem 1; c'8 ~g ~e( ~c~ [c'~ g' e' )c'] c'' ~ c'' c~c }
+       { \stem -1; c (e g )c'~( [b a g )d]     r2 } >
 
        }
 
index 0c48c80f6eefc615c0b97e0a58b43d0a873c84f2..0e1c058f4904215afbc8be16c1b7b17a926b5ce3 100644 (file)
@@ -5,6 +5,14 @@ Directional_spanner::set_default_dir()
 {
     dir_i_ = -1;
 }
+
+void
+Directional_spanner::do_pre_processing()
+{
+    if (!dir_i_)
+       set_default_dir();
+}
+
 Directional_spanner::Directional_spanner()
 {
     dir_i_ = 0;
index a9acf3b67bd70920ace3cd79e7ae0e134c9d4812..20a3c5415e6a32b7b0f67f047c575cf10d6eb14b 100644 (file)
@@ -40,9 +40,21 @@ Slur_register::acknowledge_element(Staff_elem_info info)
            end_slur_l_arr_[i]->add(col_l);
     }
 }
+
+void
+Slur_register::set_feature(Feature f)
+{
+    if (f.type_ == "vdir")
+       dir_i_ = f.value_ ;
+}
+
 /*
   abracadabra
   */
+Slur_register::Slur_register()
+{
+    dir_i_ =0;
+}
 void
 Slur_register::process_requests()
 {
@@ -75,6 +87,8 @@ void
 Slur_register::pre_move_processing()
 {
     for (int i = 0; i < end_slur_l_arr_.size(); i++) {
+       if (dir_i_)
+           end_slur_l_arr_[i]->dir_i_ = dir_i_;
        typeset_element(end_slur_l_arr_[i]);
     }
     end_slur_l_arr_.set_size(0);
index 053e2dc74b3d7927e666a2a1e38d28f3731a6f1b..8bc24916814ac0d1a359cb82f8561a9675e7f3f5 100644 (file)
@@ -22,6 +22,7 @@ static int temp_id_count;
 Voice_group_registers::Voice_group_registers(String id,
                                             Input_register const *ireg_C)
 {
+    dir_i_ =0;
     ireg_C_ =ireg_C;
     Register_group_register::add(ireg_C->get_nongroup_p_arr());
     if (id=="")                        // ugh
@@ -113,3 +114,18 @@ Voice_group_registers::OK() const
 }
             
             
+void
+Voice_group_registers::set_feature(Feature f)
+{
+    if (f.type_ == "vdir")
+       dir_i_ = f.value_;
+    Register_group_register::set_feature(f);
+}
+
+Scalar
+Voice_group_registers::get_feature(String f)
+{
+    if (f == "vdir")
+       return dir_i_;
+    Register_group_register::get_feature(f);
+}