Handbook
Glossary
ungraft* ( gadget -- )
Factor handbook
»
UI framework
»
Building user interfaces
»
Top-level windows
Prev:
graft* ( gadget -- )
Next:
world
Vocabulary
ui
.
gadgets
Inputs
gadget
a
gadget
Outputs
None
Generic word contract
Called to notify the gadget it is no longer visible on the screen. This should stop timers and threads, and release any resources used by the gadget.
See also
graft
,
graft*
,
ungraft
Definition
IN:
ui.gadgets
GENERIC:
ungraft*
( gadget -- )
Methods
USING:
accessors
audio.gadget
audio.gadget.private
destructors
generic
kernel
ui.gadgets
;
M:
audio-gadget
ungraft*
[
pause-audio-gadget
]
[
audio-clip>>
dispose
]
[
M\
audio-gadget
ungraft*
(call-next-method)
]
tri
;
USING:
accessors
assocs
destructors
gamelib.loop
gamelib.ui
generic
kernel
ui.gadgets
ui.gadgets.worlds
;
M:
board-gadget
ungraft*
[
dup
find-gl-context
[
values
dispose-each
H{
}
clone
]
change-textures
drop
stop-game
]
[
M\
board-gadget
ungraft*
(call-next-method)
]
bi
;
USING:
accessors
boids
kernel
ui.gadgets
;
M:
boids-gadget
ungraft*
t
>>paused
drop
;
USING:
compiler.units
generic
kernel
ui.gadgets
ui.tools.browser
;
M:
browser-gadget
ungraft*
[
M\
browser-gadget
ungraft*
(call-next-method)
]
[
remove-definition-observer
]
bi
;
USING:
accessors
bubble-chamber
generic
kernel
timers
ui.gadgets
;
M:
bubble-chamber
ungraft*
[
timer>>
stop-timer
]
[
M\
bubble-chamber
ungraft*
(call-next-method)
]
bi
;
USING:
accessors
cairo-demo
cairo.ffi
ui.gadgets
;
M:
cairo-demo-gadget
ungraft*
cairo-t>>
cairo_destroy
;
USING:
ui.gadgets
ui.gadgets.canvas
;
M:
canvas
ungraft*
delete-canvas-dlist
;
USING:
generic
kernel
ui.gadgets
ui.tools.button-list
;
M:
clickable
ungraft*
[
remove-labelled-button
drop
]
[
M\
clickable
ungraft*
(call-next-method)
]
bi
;
USING:
accessors
kernel
ui.gadgets
ui.gadgets.editors
ui.gadgets.editors.private
;
M:
editor
ungraft*
[
[
stop-blinking
]
[
f
>>blink-timer
drop
]
bi
]
[
dup
caret>>
deactivate-editor-model
]
[
dup
mark>>
deactivate-editor-model
]
tri
;
USING:
accessors
escape-strings.ui
generic
kernel
models
ui.gadgets
;
M:
escape-string-editor
ungraft*
[
dup
source-model>>
remove-connection
]
[
M\
escape-string-editor
ungraft*
(call-next-method)
]
bi
;
USING:
ui.gadgets
ui.gadgets.glass
ui.gadgets.glass.private
;
M:
glass
ungraft*
gadget-child
hide-glass-hook
;
USING:
accessors
game-of-life
generic
kernel
timers
ui.gadgets
;
M:
grid-gadget
ungraft*
[
timer>>
stop-timer
]
[
M\
grid-gadget
ungraft*
(call-next-method)
]
bi
;
USING:
accessors
assocs
destructors
generic
kernel
minesweeper
timers
ui.gadgets
ui.gadgets.worlds
;
M:
grid-gadget
ungraft*
[
dup
find-gl-context
[
values
dispose-each
H{
}
clone
]
change-textures
timer>>
stop-timer
]
[
M\
grid-gadget
ungraft*
(call-next-method)
]
bi
;
USING:
continuations
images.viewer
images.viewer.private
kernel
ui.gadgets
ui.gadgets.worlds
;
M:
image-gadget
ungraft*
[
dup
find-gl-context
delete-current-texture
]
[
2drop
]
recover
;
USING:
accessors
generic
kernel
models
ui.gadgets
ui.tools.listener
;
M:
interactor
ungraft*
[
dup
word-model>>
remove-connection
]
[
M\
interactor
ungraft*
(call-next-method)
]
bi
;
USING:
accessors
kernel
roms.space-invaders
ui.gadgets
;
M:
invaders-gadget
ungraft*
t
swap
quit?<<
;
USING:
accessors
jamshred
jamshred.gl
kernel
ui.gadgets
ui.gadgets.worlds
;
M:
jamshred-gadget
ungraft*
dup
find-gl-context
cleanup-graphics
jamshred>>
t
swap
quit<<
;
USING:
accessors
game.input.demos.joysticks
kernel
timers
ui.gadgets
;
M:
joystick-demo-gadget
ungraft*
timer>>
[
stop-timer
]
when*
;
USING:
accessors
game.input
game.input.demos.key-caps
kernel
timers
ui.gadgets
;
M:
key-caps-gadget
ungraft*
timer>>
[
stop-timer
]
when*
close-game-input
;
USING:
generic
kernel
ui.gadgets
ui.tools.listener
;
M:
listener-gadget
ungraft*
[
com-end
]
[
M\
listener-gadget
ungraft*
(call-next-method)
]
bi
;
USING:
accessors
kernel
models
ui.gadgets
ui.gadgets.editors
;
M:
model-field
ungraft*
dup
editor>>
model>>
remove-connection
;
USING:
accessors
kernel
models
ui.gadgets
ui.gadgets.controls
;
M:
model-field
ungraft*
[
dup
editor>>
model>>
remove-connection
]
[
dup
model*>>
remove-connection
]
bi
;
USING:
accessors
kernel
nehe.4
ui.gadgets
;
M:
nehe4-gadget
ungraft*
t
>>quit?
drop
;
USING:
accessors
kernel
nehe.5
ui.gadgets
;
M:
nehe5-gadget
ungraft*
t
>>quit?
drop
;
USING:
kernel
ui.gadgets
;
M:
object
ungraft*
drop
;
USING:
accessors
generic
kernel
pong
timers
ui.gadgets
;
M:
pong-gadget
ungraft*
[
timer>>
stop-timer
]
[
M\
pong-gadget
ungraft*
(call-next-method)
]
bi
;
USING:
generic
kernel
namespaces
ui.gadgets
ui.gadgets.presentations
ui.gadgets.worlds
ui.gestures
;
M:
presentation
ungraft*
dup
hand-gadget
get-global
child?
[
dup
hide-status
]
when
M\
presentation
ungraft*
(call-next-method)
;
USING:
accessors
combinators
ui.gadgets
ui.gadgets.slate
;
M:
slate
ungraft*
ungraft>>
( -- )
call-effect
;
USING:
accessors
assocs
destructors
kernel
snake-game.ui
timers
ui.gadgets
ui.gadgets.worlds
;
M:
snake-gadget
ungraft*
[
stop-timer
f
]
change-timer
dup
find-gl-context
[
values
dispose-each
f
]
change-textures
drop
;
USING:
accessors
kernel
tetris
timers
ui.gadgets
;
M:
tetris-gadget
ungraft*
[
stop-timer
f
]
change-timer
drop
;
USING:
accessors
generic
kernel
lcd
timers
ui.gadgets
;
M:
time-display
ungraft*
[
timer>>
stop-timer
]
[
M\
time-display
ungraft*
(call-next-method)
]
bi
;
USING:
accessors
generic
kernel
timers
trails
ui.gadgets
;
M:
trails-gadget
ungraft*
[
timer>>
stop-timer
]
[
M\
trails-gadget
ungraft*
(call-next-method)
]
bi
;
USING:
accessors
generic
kernel
ui.gadgets
ui.tools.walker
;
M:
walker-gadget
ungraft*
[
t
>>closing?
drop
]
[
com-continue
]
[
M\
walker-gadget
ungraft*
(call-next-method)
]
tri
;
USING:
accessors
combinators
concurrency.promises
destructors
kernel
ui.backend
ui.gadgets
ui.gadgets.worlds
ui.gestures
ui.private
;
M:
world
ungraft*
{
[
set-gl-context
]
[
text-handle>>
[
dispose
]
when*
]
[
images>>
[
dispose
]
when*
]
[
hand-clicked
close-global
]
[
hand-gadget
close-global
]
[
end-world
]
[
dispose-window-resources
]
[
unfocus-world
]
[
[
(close-window)
f
]
change-handle
drop
]
[
promise>>
t
swap
fulfill
]
}
cleave
;