]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/system-start-delimiter.cc
''
[lilypond.git] / lily / system-start-delimiter.cc
index b526caebb841ecc37e499b70a9b746e45d31d007..b07c6619b1e3d28d85a4026be337ff3836d18b05 100644 (file)
@@ -57,11 +57,6 @@ Will not fix it since I'm not sure.
   return mol;
 }
 
-void
-System_start_delimiter::set_interface (Grob*me)
-{
-  me->set_interface (ly_symbol2scm ("system-start-delimiter-interface"));
-}
 
 bool
 System_start_delimiter::has_interface (Grob*me)
@@ -72,7 +67,7 @@ System_start_delimiter::has_interface (Grob*me)
 Molecule
 System_start_delimiter::simple_bar (Grob*me,Real h) 
 {
-  Real w = me->paper_l ()->get_var ("stafflinethickness") *
+  Real w = me->paper_l ()->get_var ("linethickness") *
     gh_scm2double (me->get_grob_property ("thickness"));
   return Lookup::filledbox (Box (Interval (0,w), Interval (-h/2, h/2)));
 }
@@ -85,7 +80,8 @@ System_start_delimiter::after_line_breaking (SCM smob)
   Grob * me = unsmob_grob (smob);
   SCM   gl = me->get_grob_property ("glyph");
 
-  if (scm_ilength (me->get_grob_property ("elements")) <=  1 && gh_equal_p (gl,ly_str02scm ("bar-line")))
+  if (scm_ilength (me->get_grob_property ("elements")) <=  1
+      && gh_equal_p (gl,ly_str02scm ("bar-line")))
     {
       me->suicide ();
     }
@@ -101,9 +97,9 @@ System_start_delimiter::brew_molecule (SCM smob)
   Grob * me = unsmob_grob (smob);
 
   SCM s = me->get_grob_property ("glyph");
-  if (!gh_symbol_p (s))
+  if (!gh_string_p (s))
     return SCM_EOL;
-  
+  SCM gsym = scm_string_to_symbol (s) ;
   SCM c = me->get_grob_property ("collapse-height");
   
   Real staff_space = Staff_symbol_referencer::staff_space (me);
@@ -119,11 +115,12 @@ System_start_delimiter::brew_molecule (SCM smob)
     }
 
   Molecule m;
-  if (s == ly_symbol2scm ("bracket"))
+
+  if (gsym== ly_symbol2scm ("bracket"))
     m = staff_bracket (me,l);
-  else if (s == ly_symbol2scm ("brace"))
+  else if (gsym == ly_symbol2scm ("brace"))
     m =  staff_brace (me,l);
-  else if (s == ly_symbol2scm ("bar-line"))
+  else if (gsym == ly_symbol2scm ("bar-line"))
     m = simple_bar (me,l);
   
   m.translate_axis (ext.center (), Y_AXIS);
@@ -183,3 +180,9 @@ System_start_delimiter::staff_brace (Grob*me, Real y)
   return Molecule (b, at);
 }
   
+
+
+
+ADD_INTERFACE (System_start_delimiter,"system-start-delimiter-interface",
+  "#'style can be bar-line, bracket or brace",
+  "bar-line-collapse-height brace-collapse-height bracket-collapse-height thickness arch-height arch-angle arch-thick arch-width bracket-thick glyph");