24
24
(define-structure sawfish.gtk.widgets.file ()
30
30
(define (make-file-item changed-callback)
31
31
(let* ((box (gtk-hbox-new nil box-spacing))
33
33
(button (gtk-button-new-with-label (_ "Browse..."))))
35
35
(gtk-box-pack-start box entry)
36
36
(gtk-box-pack-start box button)
39
39
entry "changed" (make-signal-callback changed-callback)))
43
43
(let ((filesel (gtk-file-selection-new (_ "Select file"))))
44
44
(gtk-file-selection-set-filename filesel (gtk-entry-get-text entry))
46
46
(gtk-file-selection-ok-button filesel) "clicked"
49
49
entry (gtk-file-selection-get-filename filesel))
50
50
(gtk-widget-destroy filesel)))
52
52
(gtk-file-selection-cancel-button filesel) "clicked"
53
53
(lambda () (gtk-widget-destroy filesel)))
55
55
(lambda () (gtk-widget-destroy filesel)))
56
56
(gtk-widget-show filesel)
57
57
(gtk-grab-add filesel))))