summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCamil Staps2015-08-10 15:01:22 +0200
committerCamil Staps2015-08-10 15:01:22 +0200
commit943098c81e4d110052395b35a46ce2ac32fb8bc8 (patch)
treecb421a80a3fe301dd89e2366e4d2022f844b70f8
parentMake target & variable names (diff)
Support check for RadioControl, SliderControl and TextControl
-rw-r--r--objectio/support_radio.icl23
-rw-r--r--objectio/support_slider.icl30
-rw-r--r--objectio/support_text.icl23
3 files changed, 76 insertions, 0 deletions
diff --git a/objectio/support_radio.icl b/objectio/support_radio.icl
new file mode 100644
index 0000000..cbc4e8b
--- /dev/null
+++ b/objectio/support_radio.icl
@@ -0,0 +1,23 @@
+module support_radio
+
+import StdEnv, StdIO
+
+Start :: *World -> *World
+Start world
+# (controlid, world) = openId world
+# radios = [
+ RadioControl [("Item &" +++ toString i, Nothing, id) \\ i <- [1..5]] (Columns 2) 1 [ControlPos (Left, zero), ControlHide],
+ RadioControl [("Item &" +++ toString i, Nothing, id) \\ i <- [1..5]] (Columns 2) 2 [ControlPos (Left, zero), ControlId controlid],
+ RadioControl [("Item &" +++ toString i, Nothing, id) \\ i <- [1..5]] (Columns 2) 3 [ControlPos (Left, zero), ControlSelectState Able],
+ RadioControl [("Item &" +++ toString i, Nothing, id) \\ i <- [1..5]] (Columns 2) 4 [ControlPos (RightTo controlid, zero), ControlSelectState Unable],
+ RadioControl [("Item &" +++ toString i, Nothing, id) \\ i <- [1..5]] (Columns 2) 5 [ControlPos (Left, zero), ControlTip "Some tip"]
+ ]
+# controls = ListLS radios
+# dialog = Dialog "Support - RadioControl" 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
+
diff --git a/objectio/support_slider.icl b/objectio/support_slider.icl
new file mode 100644
index 0000000..fcbed67
--- /dev/null
+++ b/objectio/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)
+
diff --git a/objectio/support_text.icl b/objectio/support_text.icl
new file mode 100644
index 0000000..d5e3d01
--- /dev/null
+++ b/objectio/support_text.icl
@@ -0,0 +1,23 @@
+module support_text
+
+import StdEnv, StdIO
+
+Start :: *World -> *World
+Start world
+# (id, world) = openId world
+# texts = [
+ TextControl "Hide" [ControlHide],
+ TextControl "Id" [ControlId id],
+ TextControl "Pos" [ControlPos (Left, zero)],
+ TextControl "Tip" [ControlTip "Some tip"],
+ TextControl "Width" [ControlWidth (PixelWidth 500)]
+ ]
+# controls = ListLS texts
+# dialog = Dialog "Support - TextControl" 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
+