(require-extension bb srfi-1) (define (main) (let* ((win (bb:make-widget 'window 1024 768)) (pack (bb:make-widget 'pack 100 760)) (gr (bb:group pack (lambda () (let* ((i 0) (visible #f) (bt1 (bb:make-widget 'button 100 30)) (count (iota 100)) (ie-list (map (lambda(n) (bb:make-widget 'entry 100 20)) count)) (bt-list (map (lambda(n) (bb:make-widget 'button 100 20)) count)) ) (set! (bb:property bt1 'text) "toggle") (set! (bb:property bt1 'callback) (lambda () (for-each (lambda (w) (set! (bb:property w 'visible) visible)) bt-list) (for-each (lambda (w) (set! (bb:property w 'text) (number->string i))) ie-list) (set! visible (not visible)) (set! i (+ i 1)) (bb:redraw win) #t)) #t)))) ) (set! (bb:property win 'handler) (lambda (e) (if (and (eq? e 'shortcut) (eq? (bb:event 'key) 'escape)) #t 'default))) (bb:add! win pack) (bb:show win) (let loop () (bb:run 0.05) (loop)))) (main)