]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/script.hh
2003 -> 2004
[lilypond.git] / lily / include / script.hh
index 4d8441584d809ec609625cacabcd5d692bb23506..8fc238a6a9a17915537d9fa7a00b2ef3da41c891 100644 (file)
@@ -3,32 +3,34 @@
   
   source file of the GNU LilyPond music typesetter
   
-  (c) 1999--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1999--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
   
  */
 
 #ifndef SCRIPT_HH
 #define SCRIPT_HH
 
-#include "item.hh"
-#include "drul-array.hh"
+#include "lily-guile.hh"
+#include "lily-proto.hh"
 
 /**
    Articulation marks (and the like) that are attached to notes/stems.
    Needs support from Staff_side for proper operation.  Staff_side
    handles the positioning.
 */
-class Script : public Item
+class Script_interface
 {
-  Molecule get_molecule (Direction d) const;
 public:
-  Script (SCM);
+  static Molecule get_molecule (Grob*,Direction d);
   
-protected:
-  virtual void before_line_breaking ();
-  virtual void after_line_breaking ();
-  Molecule do_brew_molecule () const;
+  static bool  has_interface (Grob*);
+  DECLARE_SCHEME_CALLBACK (brew_molecule, (SCM ));
+  DECLARE_SCHEME_CALLBACK (before_line_breaking, (SCM ));
 };
 
+void make_script_from_event (Grob *p,
+                            SCM * descr, Translator_group*tg,
+                            SCM type, 
+                            int index);
 #endif /* Stem_SCRIPT_HH */