GUI enabling/disabling of controls: Difference between revisions

Added BaCon version.
(Added BaCon version.)
Line 268:
ExitApp
; Ensures the script ends when the GUI is closed.</lang>
 
=={{header|BaCon}}==
This code requires BaCon 4.0.1 or higher.
<lang bacon>OPTION GUI TRUE
PRAGMA GUI gtk3
 
gui = GUIDEFINE(" \
{ type=WINDOW name=window callback=delete-event title=\"Rosetta Code\" width-request=200 } \
{ type=BOX name=box parent=window orientation=GTK_ORIENTATION_VERTICAL } \
{ type=SPIN_BUTTON name=spin parent=box numeric=TRUE } \
{ type=BUTTON_BOX name=bbox parent=box } \
{ type=BUTTON name=increment parent=bbox callback=clicked label=\"Increment\" } \
{ type=BUTTON name=decrement parent=bbox callback=clicked label=\"Decrement\" } ")
 
CALL GUISET(gui, "spin", "adjustment", gtk_adjustment_new(0, 0, 10, 1, 1, 0))
CALL GUISET(gui, "decrement", "sensitive", FALSE)
 
DECLARE input TYPE FLOATING
 
WHILE TRUE
event$ = GUIEVENT$(gui)
 
CALL GUIGET(gui, "spin", "value", &input)
SELECT event$
CASE "increment"
INCR input
CASE "decrement"
DECR input
CASE "window"
BREAK
ENDSELECT
CALL GUISET(gui, "spin", "value", input)
 
CALL GUISET(gui, "decrement", "sensitive", IIF(input <= 0, FALSE, TRUE))
CALL GUISET(gui, "increment", "sensitive", IIF(input > 9, FALSE, TRUE))
CALL GUISET(gui, "spin", "sensitive", IIF(input = 0, TRUE, FALSE))
 
WEND</lang>
 
=={{header|BBC BASIC}}==
Anonymous user