+(define line-of-score-interface
+ (lily-interface
+ 'line-of-score-interface
+ "Super element, parent of all:
+<p>
+ The columns of a score that form one line. The toplevel element.
+ Any element has a Line_of_score as both X and Y reference
+ point. The Paper_score contains one element of this type. Control
+ enters the Score_element dependency calculation from this single
+ Line_of_score object."
+ (list
+ (property-description 'between-system-string string? "string
+ to dump between two systems. Useful for forcing pagebreaks")
+ (property-description 'spacing-procedure procedure? "procedure taking
+graphical element as argument. This is called after before-line-breaking-callback, but before the actual line breaking itself. Return value is ignored")
+ (property-description 'before-line-breaking-callback procedure?
+ "Procedure taking graphical element as argument.
+This procedure is called (using dependency resolution) before line breaking, but after generating discretionary items. Return value is ignored")
+ (property-description 'after-line-breaking-callback procedure?
+ "Procedure taking graphical element as argument.
+This procedure is called (using dependency resolution) after line breaking. Return value is ignored")
+ (property-description 'all-elements list? "list of all score elements in this line. Needed for protecting elements from GC.")
+ (property-description 'columns list? "list of all paper columns")
+ )))
+