/*
- script-column.hh -- declare Script_column
+ g-script-column.hh -- declare Script_column
- source file of the LilyPond music typesetter
+ source file of the GNU LilyPond music typesetter
- (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+ (c) 1999--2008 Han-Wen Nienhuys <hanwen@xs4all.nl>
*/
+#ifndef Script_COLUMN_HH
+#define Script_COLUMN_HH
-#ifndef SCRIPT_COLUMN_HH
-#define SCRIPT_COLUMN_HH
+#include "lily-proto.hh"
+#include "grob-interface.hh"
+#include "std-vector.hh"
-#include "item.hh"
-
-/** a struct for treating a group of noteheads (noteheads, stem
- (chord) and scripts ) as a single entity. */
-class Script_column : public Item {
-protected:
- virtual Interval do_height()const;
- virtual Interval do_width()const;
- virtual void do_print() const ;
- virtual void do_pre_processing();
+class Script_column
+{
public:
- Array<Script *> script_l_arr_;
- Array<Item *> support_l_arr_;
-
- NAME_MEMBERS(Script_column);
- virtual void translate(Offset);
- void add(Script *);
- void add_support(Item*);
+ static void add_side_positioned (Grob *, Grob *);
+ DECLARE_SCHEME_CALLBACK (before_line_breaking, (SCM));
+ DECLARE_SCHEME_CALLBACK (row_before_line_breaking, (SCM));
+ DECLARE_GROB_INTERFACE();
+ static void order_grobs (vector<Grob*> grobs);
+
};
-#endif // SCRIPT_COLUMN_HH
+#endif /* Script_COLUMN_HH */
+