]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/semi-tie.cc
Run `make grand-replace'.
[lilypond.git] / lily / semi-tie.cc
index fbc98f20aa1db6eb6ce1c1a094c8cb4a44bc06bc..996b36a02ec05313c65ea3c027b75e0ed1f25b73 100644 (file)
@@ -3,7 +3,7 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 2005--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  (c) 2005--2008 Han-Wen Nienhuys <hanwen@xs4all.nl>
 
 */
 
 #include "warn.hh"
 #include "staff-symbol-referencer.hh"
 
-ADD_INTERFACE(Semi_tie,
-             
-             "semi-tie-interface",
-             
-             "A tie which is only on one side connected to note heads. ",
+ADD_INTERFACE (Semi_tie,
+             "A tie which is only on one side connected to a note head.",
 
              /* properties */
              "control-points "
              "direction "
              "details "
+             "head-direction "
              "note-head "
              "thickness "
              );
 
-MAKE_SCHEME_CALLBACK(Semi_tie, calc_control_points, 1)
+MAKE_SCHEME_CALLBACK (Semi_tie, calc_control_points, 1)
 SCM
 Semi_tie::calc_control_points (SCM smob)
 {
   Grob *me = unsmob_grob (smob);
+  (void) me->get_property ("direction");
+  
   if (Semi_tie_column::has_interface (me->get_parent (Y_AXIS)))
     {
       me->get_parent (Y_AXIS)->get_property ("positioning-done");
@@ -43,24 +43,8 @@ Semi_tie::calc_control_points (SCM smob)
       programming_error ("lv tie without Semi_tie_column. Killing lv tie."); 
       me->suicide (); 
     }
-  
-  return SCM_UNSPECIFIED;
-}
-
-MAKE_SCHEME_CALLBACK(Semi_tie, calc_direction, 1)
-SCM
-Semi_tie::calc_direction (SCM smob)
-{
-  Grob *me = unsmob_grob (smob);
-  if (Semi_tie_column::has_interface (me->get_parent (Y_AXIS)))
-    me->get_parent (Y_AXIS)->get_property("positioning-done");
-  else
-    {
-      programming_error ("lv tie without Semi_tie_column"); 
-      set_grob_direction (me, UP);
-    }
 
-  return SCM_UNSPECIFIED;
+  return me->get_property_data ("control-points");
 }
 
 int