]> git.donarmstrong.com Git - lilypond.git/blob - scm/define-stencil-commands.scm
[scm] Improve formatting of `define-public' functions.
[lilypond.git] / scm / define-stencil-commands.scm
1 ;;;; This file is part of LilyPond, the GNU music typesetter.
2 ;;;;
3 ;;;; Copyright (C) 2005--2011 Han-Wen Nienhuys <hanwen@xs4all.nl>
4 ;;;;
5 ;;;; LilyPond is free software: you can redistribute it and/or modify
6 ;;;; it under the terms of the GNU General Public License as published by
7 ;;;; the Free Software Foundation, either version 3 of the License, or
8 ;;;; (at your option) any later version.
9 ;;;;
10 ;;;; LilyPond is distributed in the hope that it will be useful,
11 ;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
12 ;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 ;;;; GNU General Public License for more details.
14 ;;;;
15 ;;;; You should have received a copy of the GNU General Public License
16 ;;;; along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
17
18 ;; TODO:
19 ;;  - stencil-commands should have docstrings.
20
21 (define-public (ly:all-stencil-commands)
22   "Return the list of stencil commands that can be
23 defined in the output modules (@file{output-*.scm})."
24   '(beam
25     bezier-sandwich
26     blank
27     bracket
28     char
29     circle
30     dashed-line
31     dashed-slur
32     dot
33     draw-line
34     ellipse
35     embedded-ps
36     embedded-svg
37     glyph-string
38     grob-cause
39     named-glyph
40     no-origin
41     oval
42     path
43     partial-ellipse
44     placebox
45     polygon
46     repeat-slash
47     resetcolor
48     resetrotation
49     resetscale
50     round-filled-box
51     setcolor
52     setrotation
53     setscale
54     text
55     unknown
56     url-link
57     utf-8-string
58     zigzag-line
59     ))
60
61 ;; TODO:
62 ;;  - output-backend-commands should have docstrings.
63
64 (define-public (ly:all-output-backend-commands)
65   "Return the list of extra output backend commands that
66 are used internally in @file{lily/stencil-interpret.cc}."
67   '(color
68     combine-stencil
69     delay-stencil-evaluation
70     rotate-stencil
71     scale-stencil
72     translate-stencil
73     ))
74
75 (map ly:register-stencil-expression
76   (append (ly:all-stencil-commands)
77           (ly:all-output-backend-commands)))