X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=generating.lisp;h=6a3080839a607954bfaf1218f178e6341faa611f;hb=63fbed86c67daf990991d31d7f6f0c90fa9cb499;hp=23eda4d5eeec8fc457bbe4d4f3777288ed26e492;hpb=5f5e986083a9f1bacb55eba9a4b0a5997ba27777;p=cl-gtk2.git diff --git a/generating.lisp b/generating.lisp index 23eda4d..6a30808 100644 --- a/generating.lisp +++ b/generating.lisp @@ -1,6 +1,7 @@ (defpackage :gtk-generation (:use :cl :gobject :cffi :glib) - (:export #:gtk-generate)) + (:export #:gtk-generate + #:gtk-generate-child-properties)) (in-package :gtk-generation) @@ -158,4 +159,30 @@ (:cffi gtk::preview-text gtk::font-selection-dialog-preview-text :string "gtk_font_selection_dialog_get_preview_text" "gtk_font_selection_dialog_set_preview_text") (:cffi gtk::apply-button gtk::font-selection-dialog-apply-button g-object "gtk_font_selection_dialog_get_apply_button" nil) (:cffi gtk::cancel-button gtk::font-selection-dialog-cancel-button g-object "gtk_font_selection_dialog_get_cancel_button" nil) - (:cffi gtk::ok-button gtk::font-selection-dialog-ok-button g-object "gtk_font_selection_dialog_get_ok_button" nil)))))) \ No newline at end of file + (:cffi gtk::ok-button gtk::font-selection-dialog-ok-button g-object "gtk_font_selection_dialog_get_ok_button" nil)) + ("GtkFixed" + (:cffi gtk::has-window gtk::fixed-has-window :boolean "gtk_fixed_get_has_window" "gtk_gixed_set_has_window")) + ("GtkLayout" + (:cffi gtk::bin-window gtk::layout-bin-window g-object "gtk_layout_get_bin_window" nil)) + ("GtkCalendar" + (:cffi gtk::detail-function gtk::calendar-detail-function nil nil gtk::calendar-set-detail-function)) + ("GtkContainer" + (:cffi gtk::focus-child gtk::container-focus-child g-object "gtk_container_get_focus_child" "gtk_container_set_focus_child") + (:cffi gtk::vadjustment-child gtk::container-vadjustment-child g-object "gtk_container_get_vadjustment_child" "gtk_container_set_vadjustment_child") + (:cffi gtk::hadjustment-child gtk::container-hadjustment-child g-object "gtk_container_get_hadjustment_child" "gtk_container_set_hadjustment_child")) + ("GtkWidget" + (:cffi gtk::direction gtk::widget-direction gtk::text-direction "gtk_widget_get_direction" "gtk_widget_set_direction") + (:cffi gtk::composite-name gtk::widget-composite-name (glib:g-string :free-from-foreign t :free-to-foreign t) "gtk_widget_get_composite_name" "gtk_widget_set_composite_name") + (:cffi gtk::redraw-on-allocate gtk::widget-redraw-on-allocate :boolean nil "gtk_widget_set_redraw_on_allocate") + (:cffi gtk::accessible gtk::widget-accessible g-object "gtk_widget_get_accessible" nil) + (:cffi gtk::tooltip-window gtk::widget-tooltip-window g-object "gtk_widget_get_tooltip_window" "gtk_window_set_tooltip_window")) + ("GtkTextTag" + (:cffi gtk::priority gtk::text-tag-priority :int "gtk_text_tag_get_priority" "gtk_text_tag_set_priority")))))) + +(defun gtk-generate-child-properties (filename) + (with-open-file (stream filename :direction :output :if-exists :supersede) + (let ((*package* (find-package :gtk)) + (*print-case* :downcase)) + (write-string "(in-package :gtk)" stream) + (terpri stream) + (format stream "~{~S~%~%~}" (gtk:generate-child-properties))))) \ No newline at end of file