]> git.donarmstrong.com Git - lilypond.git/blob - scm/generic-property.scm
release: 1.5.19
[lilypond.git] / scm / generic-property.scm
1
2
3
4
5
6 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
7 ;; DEPRECATED -- DO NOT UPDATE ! -- DO NOT USE !
8 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
9
10
11 ;
12 ; Format: 
13 ; (cons 'Type name
14 ;    (list PROPERTYDESCRIPTIONS))
15
16 ; where
17 ; PROPERTYDESCRIPTION
18 ; is
19 ;
20 ;  (list 'translatorPropertySymbol type-predicate backend-property-symbol)
21 ;
22 ; Descriptions earlier in the list take precedence over later descriptions.
23 ;
24
25
26 (define generic-beam-properties
27   (cons 'beam-interface
28         (list
29          (list 'beamSlopeDamping number? 'damping)
30          (list 'autoKneeGap number? 'auto-knee-gap)
31          (list 'autoInterstaffKneeGap number? 'auto-interstaff-knee-gap)
32          (list 'beamDirAlgorithm symbol? 'beam-dir-algorithm)
33          (list 'beamHeight number? 'height)
34          (list 'beamVerticalPosition number? 'staff-position)
35          )
36         )
37   )
38
39
40 (define generic-stem-properties
41   (cons 'stem-interface
42         (list
43          (list 'stemVerticalDirection dir? 'direction)
44          (list 'verticalDirection dir? 'direction)       
45          (list 'stemLength number? 'length)
46          (list 'flagStyle string? 'flag-style)
47          (list 'style symbol? 'style)
48          (list 'noStemExtend boolean? 'no-stem-extend)
49          (list 'stemShorten number? 'shorten)
50          ))
51   )
52
53 (define generic-dot-properties
54   (cons 'dot-interface
55         (list
56                 (list 'dotDirection dir? 'direction)
57                 (list 'verticalDirection dir? 'direction)
58                 )
59         ))
60
61 (define generic-script-properties
62   (cons 'script-interface
63         (list
64                   (list 'articulationScriptVerticalDirection dir? 'direction)
65                   (list 'articulationScriptPadding number? 'padding)
66
67                   ))
68   )
69
70
71
72 (define generic-text-properties
73   (cons 'text-item-interface
74         (list
75                      (list 'textStyle string? 'style)
76                      (list 'lyricAlignment dir? 'self-alignment-X)
77                      (list 'textScriptPadding number? 'padding)
78                      (list 'textVerticalAlignment dir? 'self-alignment-Y)
79                      (list 'textHorizontalAlignment dir? 'self-alignment-X)
80                      (list 'textScriptWordSpace number? 'word-space)
81                      )
82         ))
83
84 (define generic-sustain-pedal-properties
85   (cons 'sustain-pedal-interface
86         (list
87          (list 'sustainPedalPadding number? 'padding))))
88
89 (define generic-chord-name-properties
90   (cons 'chord-name-interface
91         (list
92          (list 'textScriptWordSpace number? 'word-space)
93          (list 'chordNameWordSpace number? 'word-space)
94          (list 'chordNameStyle string? 'style))))
95
96 (define generic-crescendo-properties
97   (cons 'crescendo-interface
98         (list
99          (list 'dynamicDirection dir? 'direction)
100          (list 'verticalDirection dir? 'direction)
101          (list 'dynamicPadding number? 'padding) 
102          (list 'dynamicMinimumSpace number? 'minimum-space) 
103          )))
104
105 (define generic-dynamic-line-spanner-properties
106   (cons 'dynamic-interface
107         (list
108                      (list 'dynamicDirection dir? 'direction)
109                      (list 'verticalDirection dir? 'direction)
110                      (list 'dynamicPadding number? 'padding) 
111                      (list 'dynamicMinimumSpace number? 'minimum-space) 
112                      )))
113   
114 (define generic-volta-spanner-properties
115   (cons 'volta-spanner-interface (list
116                      (list 'voltaVerticalDirection dir? 'direction)
117                      (list 'voltaPadding number? 'padding) 
118                      (list 'voltaMinimumSpace number? 'minimum-space) 
119                      )))
120   
121 (define generic-bar-properties
122   (cons 'staff-bar-interface
123         (list
124          (list 'barSize number? 'bar-size))
125         )
126   )     
127
128 (define generic-bar-number-properties
129   (cons 'bar-number-interface
130         (list
131          (list 'barNumberScriptPadding number? 'padding)
132          (list 'barNumberDirection dir? 'direction)      
133          )
134         
135         )
136   )
137
138   
139 ; don't do this yet. Depends on whennn the staff is really announced
140 (define generic-staff-symbol-properties
141   (cons 'staff-symbol-interface
142         (list
143          )
144         )
145   )
146
147 (define generic-breathing-sign-properties
148   (cons 'breathing-sign-interface
149         (list
150          (list 'breathingSignVerticalDirection dir? 'direction)
151          (list 'verticalDirection dir? 'direction)
152          )))
153
154 (define generic-clef-properties
155   (cons 'clef-interface
156         (list
157          (list 'clefStyle string? 'style))
158         )
159   )
160
161 (define generic-All-properties
162   (cons 'all
163         (list (list 'fontSize number? 'font-relative-size))))
164
165
166 (define generic-notehead-properties
167   (cons 'note-head-interface
168         (list (list 'noteHeadStyle symbol? 'style))))
169
170 (define generic-notename-properties
171   (cons 'note-name-interface
172         (list (list 'noteNameStyle symbol? 'style))))
173
174
175 (define generic-porrectus-properties
176   (cons 'porrectus-interface
177         (list
178          (list 'porrectusStyle symbol? 'style)
179          (list 'porrectusSolid boolean? 'solid)
180          (list 'porrectusAddStem boolean? 'add-stem)
181          (list 'porrectusStemDirection dir? 'stem-direction)
182          )))
183
184
185 (define generic-rest-properties
186   (cons 'rest-interface
187         (list (list 'restStyle string? 'reststyle))))
188
189 (define generic-rest-collision-properties
190   (cons 'rest-collision-interface
191         (list (list 'maximumRestCount number? 'maximum-rest-count))))
192
193 (define generic-tie-properties
194   (cons 'tie-interface
195         (list
196                (list 'tieVerticalDirection dir? 'direction)
197                (list 'verticalDirection dir? 'direction)
198 (list 'tieDash number? 'dashed)
199   )))
200
201 (define generic-tie-column-properties
202   (cons 'tie-column-interface (list
203                       (list 'tieVerticalDirection dir? 'direction)
204                       (list 'verticalDirection dir? 'direction)
205   )))
206
207 (define generic-note-column-properties
208   (cons 'note-column-interface
209         (list
210          (list 'horizontalNoteShift number? 'horizontal-shift)
211          (list 'forceHorizontalShift number? 'force-hshift)
212          )))
213
214 (define generic-collision-properties
215   (cons 'collision-interface
216         (list
217          (list 'collisionMergeDotted boolean? 'merge-differently-dotted)
218          )
219         )
220   )
221   
222 (define generic-slur-properties
223   (cons 'slur-interface
224         (list
225          (list 'slurVerticalDirection dir? 'direction)
226          (list 'verticalDirection dir? 'direction)       
227          (list 'slurDash number? 'dashed))))
228
229 (define generic-timesig-properties
230   (cons 'time-signature-interface
231         (list
232          (list 'timeSignatureStyle string? 'style))))
233
234 (define (symbol-or-boolean? s)
235   (or (boolean? s) (symbol? s)))
236
237 (define generic-tuplet-spanner-properties
238   (cons 'tuplet-spanner-interface
239         (list
240          (list 'tupletDirection dir? 'direction)
241          (list 'tupletNumberVisibility symbol-or-boolean? 'tuplet-number-visibility)
242          (list 'tupletBracketVisibility symbol-or-boolean? 'tuplet-bracket-visibility)
243         ))
244 )
245
246
247
248
249
250 ;;;;;;;;;;
251 ;; don't forget to add these to the Generic_property_list property in
252 ;; engraver.ly
253
254 (define generic-voice-properties
255   (list
256    generic-stem-properties
257    generic-breathing-sign-properties
258    generic-crescendo-properties
259    generic-dynamic-line-spanner-properties
260    generic-tie-properties
261    generic-tie-column-properties   
262    generic-tuplet-spanner-properties
263    generic-notehead-properties
264    generic-porrectus-properties
265    generic-rest-properties
266    generic-slur-properties
267    generic-beam-properties
268    generic-text-properties
269    generic-sustain-pedal-properties
270    generic-note-column-properties
271    generic-script-properties
272    generic-All-properties
273    ))
274
275 (define generic-grace-properties generic-voice-properties)
276 (define generic-staff-properties
277   (list
278    generic-text-properties   
279    generic-bar-properties
280    generic-timesig-properties
281    generic-clef-properties
282    generic-collision-properties
283    generic-sustain-pedal-properties
284    generic-rest-collision-properties
285    generic-volta-spanner-properties
286 ;   generic-staff-symbol-properties
287    generic-All-properties      
288    )
289   )
290 (define generic-grand-staff-properties
291   (list
292    generic-text-properties   
293    generic-bar-properties
294    ))
295
296 (define generic-thread-properties
297   (list generic-All-properties
298         generic-notehead-properties
299         generic-dot-properties
300         )
301
302   )
303    
304 (define generic-lyrics-properties
305   (list generic-text-properties
306   )
307 )
308
309 (define generic-chord-staff-properties
310   (list generic-chord-name-properties
311   )
312 )