aboutsummaryrefslogtreecommitdiffhomepage
path: root/gui/menus.lisp
diff options
context:
space:
mode:
authorColin Okay <okay@toyful.space>2022-07-24 13:24:46 -0500
committerColin Okay <okay@toyful.space>2022-07-24 13:24:46 -0500
commitae2e47be672493d4a83ede984c7c144a03818e23 (patch)
tree9e87b12a369d6e1ca9e143c16fb302f11817e9b4 /gui/menus.lisp
parent758d5dcf7a8ffba2ae607e7cc19cacc54f5ea839 (diff)
[add] cleanup for menu and interactive
Diffstat (limited to 'gui/menus.lisp')
-rw-r--r--gui/menus.lisp3
1 files changed, 3 insertions, 0 deletions
diff --git a/gui/menus.lisp b/gui/menus.lisp
index 6b3feb9..25abd7b 100644
--- a/gui/menus.lisp
+++ b/gui/menus.lisp
@@ -9,6 +9,9 @@
:doc "The item that is focused in this menu, if any.")
(region :std (error "Menus require an explicit region"))))
+(defmethod cleanup :after ((menu menu))
+ (loop for item in (menu-items menu) do (cleanup item)))
+
(defmethod initialize-instance :after ((menu menu) &key)
(with-slots (base-width base-height region) menu
(setf base-width (width region)