racket/collects/mred/private/wx/gtk
..
button.rkt
canvas.rkt
check-box.rkt
choice.rkt
client-window.rkt
clipboard.rkt
combo.rkt
const.rkt
cursor.rkt
dc.rkt
dialog.rkt
filedialog.rkt
frame.rkt
gauge.rkt
gl-context.rkt
group-box.rkt
group-panel.rkt
init.rkt
item.rkt
keycode.rkt
keymap.rkt
list-box.rkt
menu-bar.rkt
menu-item.rkt
menu.rkt
message.rkt
panel.rkt
pixbuf.rkt
platform.rkt
printer-dc.rkt
procs.rkt
queue.rkt
radio-box.rkt
README.txt
slider.rkt
style.rkt
tab-group.rkt
tab-panel.rkt
types.rkt
utils.rkt
w32.rkt
widget.rkt
window.rkt

Allocation rules:

 * Use `as-gtk-allocation' when creating a Gtk widget that is the main
   container for a given window<%> object. When the resulting
   reference becomes unreachable, the widget will be released with
   gtk_widget_destroy() through a finalizer.

 * Use `atomically' to create and attach a sub-widget within the main
   widget.  Don't use gtk_widget_destroy(); the containing widget will
   destroy the enclosing widget.

 * For temporary objects, use `atomically' to wrap both the allocation
   and release.

Every call to a function whose name contains "new" needs to be in one
of those cases.