+
+/****************************************************************/
+
+
+class Tab_staff_symbol_engraver : public Staff_symbol_engraver
+{
+public:
+ TRANSLATOR_DECLARATIONS (Tab_staff_symbol_engraver);
+protected:
+ virtual void process_music ();
+};
+
+void
+Tab_staff_symbol_engraver::process_music ()
+{
+ bool init = !span_;
+ Staff_symbol_engraver::process_music ();
+ if (init)
+ {
+ int k = scm_ilength (get_property ("stringTunings"));
+ if (k>=0)
+ span_->set_property ("line-count", scm_int2num (k));
+ }
+}
+
+Tab_staff_symbol_engraver::Tab_staff_symbol_engraver ()
+{
+}
+
+ENTER_DESCRIPTION (Tab_staff_symbol_engraver,
+/* descr */ "Create a staff-symbol, but look at stringTunings for the number of lines."
+"staff lines.",
+/* creats*/ "StaffSymbol",
+/* accepts */ "",
+/* acks */ "grob-interface",
+/* reads */ "stringTunings",
+/* write */ "");