(list :switch (append switch-def (list :height clnl-gltk:*switch-height*)) switch nil)))
switch-defs))
+(defun slider-defs->sliders (slider-defs)
+ (mapcar
+ (lambda (slider-def)
+ (let*
+ ((slider
+ (clnl-gltk:slider
+ (getf slider-def :left)
+ (- *window-height* clnl-gltk:*slider-height* (getf slider-def :top))
+ (getf slider-def :width)
+ (getf slider-def :display)
+ (lambda (state) (execute (format nil "set ~A ~A" (getf slider-def :display) state)))
+ (read-from-string (getf slider-def :min))
+ (read-from-string (getf slider-def :max))
+ (read-from-string (getf slider-def :step))
+ (getf slider-def :initial-value))))
+ (list :slider (append slider-def (list :height clnl-gltk:*slider-height*)) slider nil)))
+ slider-defs))
+
(defun textbox-defs->textboxes (textbox-defs)
(mapcar
(lambda (textbox-def)
textbox nil)))
textbox-defs))
-(defun initialize (&key dims view buttons switches textboxes)
+(defun initialize (&key dims view buttons switches sliders textboxes)
"INITIALIZE &key DIMS VIEW BUTTONS SWITCHES => RESULT
DIMS: (:xmin XMIN :xmax XMAX :ymin YMIN :ymax YMAX :patch-size PATCH-SIZE)
(append
(button-defs->buttons buttons)
(textbox-defs->textboxes textboxes)
- (switch-defs->switches switches))))
+ (switch-defs->switches switches)
+ (slider-defs->sliders sliders))))
(defun run ()
"RUN => RESULT