]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/define-grob-interfaces.scm
Merge branch 'master' of git://git.savannah.gnu.org/lilypond.git
[lilypond.git] / scm / define-grob-interfaces.scm
index b068da91adf7c19e02c75484b4d7e60eff74d690..735b9c78956e4e602f41478525379bb344880232 100644 (file)
@@ -1,6 +1,6 @@
 ;;;; This file is part of LilyPond, the GNU music typesetter.
 ;;;;
-;;;; Copyright (C) 1998--2009  Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; Copyright (C) 1998--2011  Han-Wen Nienhuys <hanwen@xs4all.nl>
 ;;;;                 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;;;
 ;;;; LilyPond is free software: you can redistribute it and/or modify
 ;;;; along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 
 
+;; The interfaces defined here generally have no code (e.g.,
+;; dynamic-interface), or have callbacks defined entirely in
+;; scheme.  Others interfaces are defined in lily/*.cc with the
+;; ADD_INTERFACE function.
+
 ;; should include default value?
 
 
@@ -66,32 +71,63 @@ note)."
  "Dynamic text spanner."
  '(text))
 
+(ly:add-interface
+ 'episema-interface
+ "An episema line."
+ '())
+
 (ly:add-interface
  'finger-interface
  "A fingering instruction."
  '())
 
+(ly:add-interface
+ 'footnote-interface
+ "Make a footnote."
+ '(footnote-text))
+
+(ly:add-interface
+ 'footnote-spanner-interface
+ "Make a footnote spanner."
+ '(footnote-text spanner-placement))
+
 (ly:add-interface
  'fret-diagram-interface
  "A fret diagram"
  '(align-dir fret-diagram-details size dot-placement-list
    thickness))
 
+(ly:add-interface
+  'glissando-interface
+  "A glissando."
+  '(glissando-index))
+
 (ly:add-interface
  'grace-spacing-interface
  "Keep track of durations in a run of grace notes."
  '(columns common-shortest-duration))
 
+(ly:add-interface
+ 'inline-accidental-interface
+ "An inlined accidental (i.e. normal accidentals, cautionary
+accidentals)."
+ '())
+
 (ly:add-interface
  'instrument-specific-markup-interface
  "Instrument-specific markup (like fret boards or harp pedal diagrams)."
- '(fret-diagram-details harp-pedal-details size thickness))
+ '(fret-diagram-details graphical harp-pedal-details size thickness))
 
 (ly:add-interface
  'key-cancellation-interface
  "A key cancellation."
  '())
 
+(ly:add-interface
+ 'ligature-head-interface
+ "A note head that can become part of a ligature."
+ '())
+
 (ly:add-interface
  'ligature-bracket-interface
  "A bracket indicating a ligature in the original edition."
@@ -196,7 +232,7 @@ interesting enough to maintain a hara-kiri staff."
 (ly:add-interface
  'tab-note-head-interface
  "A note head in tablature."
- '(details))
+ '(details display-cautionary span-start))
 
 (ly:add-interface
  'trill-spanner-interface
@@ -214,12 +250,6 @@ interesting enough to maintain a hara-kiri staff."
 with @code{breakable=##t}."
  '(breakable))
 
-(ly:add-interface
- 'vertically-spaceable-interface
- "Objects that should be kept at constant vertical distances.  Typically:
-@rinternals{VerticalAxisGroup} objects of @rinternals{Staff} contexts."
- '())
-
 (ly:add-interface
  'volta-interface
  "A volta repeat."