diff options
author | colin <colin@cicadas.surf> | 2024-12-14 08:36:23 -0800 |
---|---|---|
committer | colin <colin@cicadas.surf> | 2024-12-14 08:36:23 -0800 |
commit | 3a2217263d581be9a7f629b10d75aa8e3d581890 (patch) | |
tree | 23f5f0a5449a06473aba2ec7914a3c2193823a10 /gui/button.lisp | |
parent | 03cdbb6a15e130a012377ab8d54074b6864e3480 (diff) | |
parent | 8a51ba81c7df6b0b6dab7cf4b35b5ca084b653ba (diff) |
Merge branch 'refactor-with-def'
Diffstat (limited to 'gui/button.lisp')
-rw-r--r-- | gui/button.lisp | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/gui/button.lisp b/gui/button.lisp index b4a41e9..bebea08 100644 --- a/gui/button.lisp +++ b/gui/button.lisp @@ -2,14 +2,21 @@ (in-package #:wheelwork) -(defclass/std button (unit interactive) - ((up down :with - :std (error "UP and DOWN lots are required") - :doc "Any affine renderable unit") - (bg :with) - (on-press on-release :with :doc "Function accepting the button.")) - (:documentation "A basic button class. The UP and DOWN slots should - be filled with renderable objects having the same size.")) +(def:class button (unit interactive) + ((up "Image when button is up") + (down "Image when button is down") + :required :prefix :type unit) + ((bg "optional background image") + :prefix + :type (or null unit) + :initform nil) + (on-press + on-release + :prefix + :type function + :documentation "Function accepting the BUTTON instance.") + + :documentation "Basic button. UP and DOWN should be the same size.") (defhandler button-released (on-mouseup () |