comparison src/scheme/viewables.scm @ 0:bf79fb79ee13

Initial Mercurial check in.
author samer
date Tue, 17 Jan 2012 17:50:20 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:bf79fb79ee13
1 ;;; This is a non-scrolly version
2
3 (define (expose-all vbls name)
4 (define win (Shell.getWindow name))
5 (define cnt (.container win))
6 (.setLayout cnt (javax.swing.BoxLayout. cnt javax.swing.BoxLayout.Y_AXIS$))
7 (for-each (lambda (v) (.add cnt (.getComponent (.getViewer v)))) vbls)
8 ;;; window listener?
9 ;;; container listener?
10 (.addWindowListener win (Shell.closeListener win))
11 (.expose win)
12 )
13
14 ;;; Scrolly version a bit more complicated
15
16 '(define (expose-all-scrolly vbls name)
17 (define win (Shell.getWindow name))
18 (define box (javax.swing.Box.createVerticalBox))
19 (define scr (javax.swing.JScrollPane. box))
20 (define (no-scrollbars)
21 (define sb=(.getVerticalScrollBar scr))
22 (if (eq? sb null)
23 #t
24 (not (.isVisible sb))))
25
26 (.setBorder scr null)
27 (.add (.container win) scr)
28 (for-each (lambda (v) (.add box (.getComponent (.getViewer v)))) vbls)
29 ;;; window listener?
30 ;;; container listener?
31 ;;; packing/scrollbar policy?
32 (.addWindowListener win (Shell.closeListener win))
33 (.expose win)
34 )