aboutsummaryrefslogtreecommitdiff
path: root/support_slider.icl
diff options
context:
space:
mode:
authorCamil Staps2015-08-10 15:01:22 +0200
committerCamil Staps2015-08-10 15:01:22 +0200
commit530e77f1be5e866b9fede2d35290725b98f6ce57 (patch)
tree341e71ed28bec2f640d969fb04b5cc47de25a443 /support_slider.icl
parentMake target & variable names (diff)
Support check for RadioControl, SliderControl and TextControl
Diffstat (limited to 'support_slider.icl')
-rw-r--r--support_slider.icl30
1 files changed, 30 insertions, 0 deletions
diff --git a/support_slider.icl b/support_slider.icl
new file mode 100644
index 0000000..fcbed67
--- /dev/null
+++ b/support_slider.icl
@@ -0,0 +1,30 @@
+module support_slider
+
+import StdEnv, StdIO
+
+Start :: *World -> *World
+Start world
+# (sliderid, world) = openId world
+# (textid, world) = openId world
+# sliders = let w = PixelWidth 300
+ s = {sliderMin=0, sliderMax=100, sliderThumb=30} in [
+ SliderControl Horizontal w s (updateSlider textid) [ControlPos (Left, zero), ControlHide],
+ SliderControl Horizontal (PixelWidth 500) s (updateSlider textid) [ControlPos (Left, zero), ControlId sliderid],
+ SliderControl Horizontal w s (updateSlider textid) [ControlPos (RightTo sliderid, zero)],
+ SliderControl Horizontal w s (updateSlider textid) [ControlPos (Left, zero)], //todo
+ SliderControl Horizontal w s (updateSlider textid) [ControlPos (Left, zero), ControlSelectState Able],
+ SliderControl Vertical w s (updateSlider textid) [ControlPos (Left, zero), ControlSelectState Unable],
+ SliderControl Vertical (PixelWidth 500) s (updateSlider textid) [ControlPos (Left, zero), ControlTip "Some tip"]
+ ]
+# controls = TextControl "TextControl for callbacks" [ControlId textid] :+: ListLS sliders
+# dialog = Dialog "Support - SliderControl" controls [WindowClose (noLS closeProcess)]
+= startIO NDI Void (initialise dialog) [] world
+where
+ initialise dialog pst
+ # (error,pst) = openDialog 0 dialog pst
+ | error <> NoError = closeProcess pst
+ | otherwise = pst
+
+ updateSlider :: Id SliderMove (Int, PSt .l) -> (Int, PSt .l)
+ updateSlider id move (n, pst) = (n, appPIO (setControlText id (toString move)) pst)
+