side-position-interface - LilyPond program-reference
Description: LilyPond program-reference

Next: slur-interface, Previous: separation-spanner-interface, Up: Graphical Object Interfaces

#### side-position-interface

Position a victim object (this one) next to other objects (the support). The property `direction` signifies where to put the victim object relative to the support (left or right, up or down?)

The routine also takes the size the staff into account if `staff-padding` is set. If undefined, the staff symbol is ignored.

##### User settable properties:

`direction` (direction)
  If side-position is 1 (#X), then this property determines if the object is placed #LEFT, #CENTER or #RIGHT with respect to the other object. Otherwise, it determines if the object is placed #UP #CENTER or #DOWN. Numerical values may also be used. #UP=1, #DOWN=-1, #LEFT=-1, #RIGHT=1, CENTER=0 but also other numerical values are permitted.
`minimum-space` (dimension, in staff space)
  Minimum distance that the victim should move (after padding).
`padding` (dimension, in staff space)
  Add this much extra space between objects that are next to each other.
`side-axis` (number)
  If the value is #X (or equivalently 1), the object is placed horizontally next to the other object. If the value is #Y or 0, it is placed vertically.
`side-relative-direction` (direction)
  Multiply direction of `direction-source` with this to get the direction of this object.
`slur-padding` (number)
  Extra distance between slur and script.
`staff-padding` (dimension, in staff space)
  Maintain this much space between reference points and the staff. Its effect is to align objects of differing sizes (like the dynamic p and f) on their baselines.

##### Internal properties:

`direction-source` (layout object)
  in case side-relative-direction is set, which grob to get the direction from .
`quantize-position` (boolean)
  If set, a vertical alignment is aligned to be within staff spaces.
`side-support-elements` (unknown)
  the support, a list of grobs.

This grob interface is used in the following graphical objects: AccidentalSuggestion, AmbitusAccidental, Arpeggio, BarNumber, BassFigureAlignmentPositioning, CombineTextScript, DoublePercentRepeatCounter, DynamicLineSpanner, Fingering, HorizontalBracket, InstrumentName, InstrumentSwitch, MeasureGrouping, MetronomeMark, MultiMeasureRestNumber, MultiMeasureRestText, OctavateEight, OttavaBracket, PercentRepeatCounter, RehearsalMark, Script, SostenutoPedalLineSpanner, StanzaNumber, StringNumber, StrokeFinger, SustainPedalLineSpanner, SystemStartBar, SystemStartBrace, SystemStartBracket, SystemStartSquare, TextScript, TextSpanner, TrillPitchAccidental, TrillPitchGroup, TrillSpanner, UnaCordaPedalLineSpanner and VoltaBracket

Next: slur-interface, Previous: separation-spanner-interface, Up: Graphical Object Interfaces

This page is for LilyPond-2.10.33 (stable-branch).