Added finalizing of all gtk+ classes at the end of compilation
[cl-gtk2.git] / gtk / gtk.finalize-classes.lisp
diff --git a/gtk/gtk.finalize-classes.lisp b/gtk/gtk.finalize-classes.lisp
new file mode 100644 (file)
index 0000000..5080448
--- /dev/null
@@ -0,0 +1,12 @@
+(in-package :gtk)
+
+(defun finalize-subclasses (class)
+  ;(format t "Finalizing ~A~%" class)
+  (c2mop:ensure-finalized class)
+  (iter (for subclass in (c2mop:class-direct-subclasses class))
+        (finalize-subclasses subclass)))
+
+(defun finalize-gtk-classes ()
+  (finalize-subclasses (find-class 'gobject:g-object)))
+
+(finalize-gtk-classes)