GUI component interaction: Difference between revisions
Content added Content deleted
m (moved a chunk of Python code from Perl 6 to Python section) |
(Added EchoLisp) |
||
Line 554: | Line 554: | ||
</lang> |
</lang> |
||
=={{header|Delphi}}== |
=={{header|Delphi}}== |
||
Line 654: | Line 655: | ||
end |
end |
||
end |
end |
||
</lang> |
|||
=={{header|Echolisp}}== |
|||
<lang scheme> |
|||
(require 'interface) |
|||
;; helper new button with text |
|||
(define (ui-add-button text) |
|||
(define b (ui-create-element "button" '((type "button")))) |
|||
(ui-set-html b text) |
|||
(ui-add b)) |
|||
(define (panel ) |
|||
(ui-clear) |
|||
(info-text "My rosetta application" "blue") |
|||
;; input field (checked for numeric) |
|||
(define f-input (ui-create-element "input" '((type number)))) |
|||
(ui-set-value f-input 0) |
|||
(ui-add f-input) |
|||
(ui-on-focus f-input (lambda(e) (info-text ""))) |
|||
;; Increment button |
|||
(define btn-inc (ui-add-button "Increment")) |
|||
(define (increment elem) |
|||
(define val (ui-get-numvalue f-input)) |
|||
(if val ;; checked legal numeric |
|||
(ui-set-value f-input (1+ val)) |
|||
(info-text "Need a number" "red"))) |
|||
(ui-on-click btn-inc increment) |
|||
(ui-add btn-inc) |
|||
(define btn-random (ui-add-button "Random")) |
|||
(define (set-random elem) |
|||
(when (confirm "Really random?") |
|||
(ui-set-value f-input (random-prime 1000000)))) |
|||
(ui-on-click btn-random set-random) |
|||
(ui-focus btn-inc) |
|||
(stdout-hide #t) |
|||
(stdin-hide #t)) ;; end panel |
|||
(panel) |
|||
</lang> |
</lang> |
||