]> git.donarmstrong.com Git - lilypond.git/blob - scm/framework-gnome.scm
* scm/framework-gnome.scm (output-framework-gnome): Try loading
[lilypond.git] / scm / framework-gnome.scm
1 ;;;; framework-gnome.scm --
2 ;;;;
3 ;;;;  source file of the GNU LilyPond music typesetter
4 ;;;; 
5 ;;;; (c)  2004 Jan Nieuwenhuizen <janneke@gnu.org>
6
7 (define-module (scm framework-gnome))
8 (use-modules (guile) (lily))
9
10 (define-public (output-framework-gnome outputter book scopes fields basename)
11   (let* ((bookpaper (ly:paper-book-book-paper book))
12          (pages (list->vector (ly:paper-book-pages book))))
13
14 ;; try #1
15     (if #f
16         (use-modules 
17          (gnome gtk)
18          (gnome gtk gdk-event)
19          (gnome gw canvas)))
20
21 ;; try #2
22     ;; waarom maken ze dit nou allemaal toch weer zo moeilijk?
23     ;; is there any documentation about modules for guile 1.6.4?
24     (map (lambda (x) (ly:import-module (current-module) (resolve-module x)))
25          '((gnome gtk)
26            (gnome gtk gdk-event)
27            (gnome gw canvas)))
28
29     (if #f
30         (let* ((window (make <gtk-window> #:type 'toplevel)))
31           (write window)))
32     
33     ;; try #3
34     (if #f
35         (let ((the-module-previously-known-as-current-module (current-module)))
36           (map (lambda (x) (ly:import-module
37                             the-module-previously-known-as-current-module
38                             (resolve-module x)))
39                '((gnome gtk)
40                  (gnome gtk gdk-event)
41                  (gnome gw canvas)))
42           
43           (eval '(let* ((window (make <gtk-window> #:type 'toplevel)))
44                    (write window))
45                 the-module-previously-known-as-current-module)))
46
47    ;;try #4
48     (if #f
49         (eval '(use-modules
50                 (gnome gtk)
51                 (gnome gtk gdk-event)
52                 (gnome gw canvas))
53               (let* ((window (make <gtk-window> #:type 'toplevel)))
54                 (write window))
55               (current-module)))
56
57     (ly:outputter-dump-stencil
58      outputter
59      (ly:make-stencil (list 'main outputter bookpaper pages)
60                       '(0 . 0) '(0 . 0)))))
61