]> git.donarmstrong.com Git - lilypond.git/commitdiff
scm/define-stencil-commands.scm: cleanup
authorPatrick McCarty <pnorcks@gmail.com>
Sun, 5 Jul 2009 23:51:31 +0000 (16:51 -0700)
committerPatrick McCarty <pnorcks@gmail.com>
Thu, 16 Jul 2009 06:20:38 +0000 (23:20 -0700)
- Create a new procedure for stencil "commands",
  the subset of stencil expressions that can be
  defined in output-*.scm.

- Add the missing `setrotation' and `resetrotation'
  expressions.

- Use ly:all-output-backend-commands for the rest
  of the stencil expressions; thus,
  `delay-stencil-evaluation' belongs here, and
  add the missing `rotate-stencil' expression.

- Document the differences between the two procedures.

- Register all of the expressions in "one go".

scm/define-stencil-commands.scm

index b2b2f92d68bf5d1ac455346057e5639b7baee2d9..6fc7188aa90101b200605990394a2d61b5584193 100644 (file)
@@ -6,7 +6,12 @@
 ;; (c) 2005--2009 Han-Wen Nienhuys <hanwen@xs4all.nl>
 ;;
 
-(map ly:register-stencil-expression
+;; TODO:
+;;  - stencil-commands should have docstrings.
+
+(define-public (ly:all-stencil-commands)
+  "Return the list of stencil commands that can be
+defined in the output modules (output-*.scm)"
      '(beam
        bezier-sandwich
        blank
        polygon
        repeat-slash
        resetcolor
+       resetrotation
        round-filled-box
        setcolor
+       setrotation
        text
        url-link
        utf-8-string
        no-origin
        placebox
        unknown
-
-       delay-stencil-evaluation
        ))
 
 ;; TODO:
-;;  - generate this list by registering the output-backend-commands
-;;    output-backend-commands should have docstrings.
-;;  - remove hard copies in output-ps
+;;  - output-backend-commands should have docstrings.
 
 (define-public (ly:all-output-backend-commands)
-  "Return list of output backend commands."
-  '(combine-stencil
-    color
-    translate-stencil))
+  "Return the list of extra output backend commands that
+are used internally in lily/stencil-interpret.cc."
+  '(color
+    combine-stencil
+    delay-stencil-evaluation
+    rotate-stencil
+    translate-stencil
+    ))
 
-(map ly:register-stencil-expression (ly:all-output-backend-commands))
+(map ly:register-stencil-expression
+  (append (ly:all-stencil-commands)
+         (ly:all-output-backend-commands)))