]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/system.cc
''
[lilypond.git] / lily / system.cc
index 3405d68f2893024da38a3c902d6457fff82111c0..1a789591ea35f0b724a05957ed362f5edddb162f 100644 (file)
@@ -9,7 +9,7 @@
 #include "input-smob.hh"
 #include "axis-group-interface.hh"
 #include "debug.hh"
-#include "line-of-score.hh"
+#include "system.hh"
 #include "main.hh"
 #include "paper-column.hh"
 #include "paper-def.hh"
@@ -36,9 +36,6 @@ System::System (SCM s)
   : Spanner (s)
 {
   rank_i_ = 0;
-
-  Axis_group_interface::set_interface (this);
-  Axis_group_interface::set_axes (this, Y_AXIS,X_AXIS);
 }
 
 int
@@ -263,23 +260,6 @@ System::break_into_pieces (Array<Column_x_positions> const &breaking)
 }
 
 
-#define GLOBAL_SYMBOL(cname, name)  \
-SCM cname ;                                    \
-void \
-cname ## _init_func ()                         \
-{                                              \
-  cname = ly_symbol2scm (name);                        \
-  scm_permanent_object (cname);                        \
-}                                              \
-ADD_SCM_INIT_FUNC (cname,cname ## _init_func);\
-
-
-GLOBAL_SYMBOL (offset_sym , "translate-molecule");
-GLOBAL_SYMBOL (placebox_sym , "placebox");
-GLOBAL_SYMBOL (combine_sym , "combine-molecule");
-
-
-
 void
 System::output_molecule (SCM expr, Offset o)
 {
@@ -320,7 +300,7 @@ System::output_molecule (SCM expr, Offset o)
       else
        {
          pscore_l_->outputter_l_->
-           output_scheme (scm_list_n (placebox_sym,
+           output_scheme (scm_list_n (ly_symbol2scm ("placebox"),
                                    gh_double2scm (o[X_AXIS]),
                                    gh_double2scm (o[Y_AXIS]),
                                    expr,
@@ -431,7 +411,7 @@ System::post_processing (bool last_line)
   /*
     line preamble.
    */
-  output_scheme (scm_list_n (ly_symbol2scm ("start-line"),
+  output_scheme (scm_list_n (ly_symbol2scm ("start-system"),
                          gh_double2scm (height),
                          SCM_UNDEFINED));
   
@@ -475,11 +455,11 @@ System::post_processing (bool last_line)
   
   if (last_line)
     {
-      output_scheme (scm_list_n (ly_symbol2scm ("stop-last-line"), SCM_UNDEFINED));
+      output_scheme (scm_list_n (ly_symbol2scm ("stop-last-system"), SCM_UNDEFINED));
     }
   else
     {
-      output_scheme (scm_list_n (ly_symbol2scm ("stop-line"), SCM_UNDEFINED));
+      output_scheme (scm_list_n (ly_symbol2scm ("stop-system"), SCM_UNDEFINED));
     }
 }
 
@@ -538,3 +518,15 @@ System::column_l_arr ()const
   return acs;
 }
   
+
+
+
+ADD_INTERFACE (System,"system-interface",
+  "Super grob, parent of all:
+
+The columns of a score that form one line.  The toplevel grob.  Any
+grob has a Line_of_score as both X and Y reference point. The
+Paper_score contains one grob of this type. Control enters the
+Grob dependency calculation from this single Line_of_score
+object.",
+  "between-system-string all-elements columns");