]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/score-element.cc
release: 1.3.86
[lilypond.git] / lily / score-element.cc
index 06a9cf70fc012540aadb6d01d01570626e8b7c37..2e75fd9a0ece2dccf4a1e347be5f8f9705c4f461 100644 (file)
@@ -59,10 +59,6 @@ Score_element::Score_element(SCM basicprops)
   mutable_property_alist_ = SCM_EOL;
 
   smobify_self ();
-  set_elt_property ("dependencies", SCM_EOL);
-
-  if (get_elt_property ("interfaces") == SCM_UNDEFINED)
-    set_elt_property ("interfaces", SCM_EOL);
 }
 
 
@@ -257,7 +253,7 @@ Score_element::get_molecule ()  const
   if (gh_procedure_p (proc)) 
     mol = gh_apply (proc, gh_list (this->self_scm (), SCM_UNDEFINED));
 
-
+    
   SCM origin =get_elt_property ("origin");
   if (!unsmob_input (origin))
     origin =ly_symbol2scm ("no-origin");
@@ -268,8 +264,17 @@ Score_element::get_molecule ()  const
        mol = gh_cons (gh_list (origin, gh_car (mol), SCM_UNDEFINED), gh_cdr (mol));
     }
 
-  
-  return create_molecule (mol);
+
+  Molecule m (create_molecule (mol));
+
+  /*
+    This is almost the same as setting molecule-callback to #f, but
+    this retains the dimensions of this element, which means that you
+    can erase elements individually.  */
+  if (to_boolean (get_elt_property ("transparent")))
+    m = Molecule (m.extent_box (), SCM_EOL);
+
+  return m;
 }