--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: fix running on clozure
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 19:33:27.068743 Z
+references: []
+
+id: 0749e4c3cb64863c22480499d203fe68d4141885
+log_events:
+- - 2009-10-02 19:33:28.028531 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: finish GtkWidget binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-03 01:23:31.425523 Z
+references: []
+
+id: 21b2b215170ebc35876fa3a350518b7f9700bd78
+log_events:
+- - 2009-10-03 01:23:32.209292 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: make GtkCellRenderer interface binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 21:04:21.830719 Z
+references: []
+
+id: 22aa16299e7c1ecd68d2ce7852a768929028e3f3
+log_events:
+- - 2009-10-02 21:04:22.647103 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: make binding to GtkListStore
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 21:13:30.969849 Z
+references: []
+
+id: 23861ef1324f6316848582a5636055e9497cbd92
+log_events:
+- - 2009-10-02 21:13:33.001426 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: make GtkCellLayout interface implementor binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 21:01:20.927960 Z
+references: []
+
+id: 24992d0ce785d18d70ee0aeb17c5a5fdecdc5354
+log_events:
+- - 2009-10-02 21:01:21.663782 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: finish GtkContainer binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-03 00:58:04.994858 Z
+references: []
+
+id: 25a39c12de2cd7101903148ee7dafdc3e5d790ae
+log_events:
+- - 2009-10-03 00:58:06.106586 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: fix running on ecl
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 19:33:58.167071 Z
+references: []
+
+id: 27f069ca44609eacd23170c3ab5129a3912e76b8
+log_events:
+- - 2009-10-02 19:33:59.062857 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: add GtkTreeView drag-and-drop binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 20:29:13.250523 Z
+references: []
+
+id: 2f4e005e8d303828a7607922edd996b9faf0c5d9
+log_events:
+- - 2009-10-02 20:29:14.586319 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: make GtkTreeModelSort binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 20:56:39.451716 Z
+references: []
+
+id: 39d60c033f5310200786db0a8c3974d754e051de
+log_events:
+- - 2009-10-02 20:56:40.331508 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: add GtkTreeRowReference binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-01 20:09:17.851799 Z
+references: []
+
+id: 63c3a59fe7aee4e4fcae00d98e34ba5c720fa5ae
+log_events:
+- - 2009-10-01 20:09:18.939592 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: add public API for copying GBoxed to and from C structures
+desc: ""
+type: :task
+component: cl-gtk2
+release:
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-03 19:04:44.190664 Z
+references: []
+
+id: 66999cce178a0179fddcb4e1b9d6ac6ba2473190
+log_events:
+- - 2009-10-03 19:04:45.142658 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: make bindings to GtkHSV
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 23:20:29.355658 Z
+references: []
+
+id: 81334381f6a1febaf00a4374413bb963a3338708
+log_events:
+- - 2009-10-02 23:20:30.179437 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: finish GtkTreeView binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 20:28:42.648171 Z
+references: []
+
+id: 851f4edcff20a72b77b2ab9894724ffa3604711a
+log_events:
+- - 2009-10-02 20:28:43.743906 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: finish GtkTreePath bindings
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-01 20:07:26.739035 Z
+references: []
+
+id: 88756a6cd1cd743ffaecede0345087107030e3a5
+log_events:
+- - 2009-10-01 20:07:27.762845 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: make bindings for GtkBuildable
+desc: ""
+type: :task
+component: cl-gtk2
+release:
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-03 19:01:23.359691 Z
+references: []
+
+id: 88836c61db109ee78dec552d38cde9fc66deac35
+log_events:
+- - 2009-10-03 19:01:23.879643 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: finish GtkFileChooser binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 23:26:28.059405 Z
+references: []
+
+id: 9d580aeb583e4c619dc06c8318232242fe7d3438
+log_events:
+- - 2009-10-02 23:26:29.281302 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: finish GtkMenu bindings (gtk_menu_attach_to_widget)
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 21:47:03.781363 Z
+references: []
+
+id: a2340a465d5e5475ce246455ca8a3254760d0154
+log_events:
+- - 2009-10-02 21:47:04.621156 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: make binding to Printing
+desc: ""
+type: :task
+component: cl-gtk2
+release:
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-03 00:20:51.439501 Z
+references: []
+
+id: ac7fa2746fbaed907e43aa3a690a744062fc7392
+log_events:
+- - 2009-10-03 00:20:52.367292 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: finish bindings to GtkColorSelection
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 23:18:52.109533 Z
+references: []
+
+id: b04f8b7353dd92900dacb7c30562331c34561171
+log_events:
+- - 2009-10-02 23:18:53.021324 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: make binding to GtkTreeStore
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 21:13:54.989400 Z
+references: []
+
+id: bb8c71d21d73d1ad594c73f0ac5ac8a6db82729c
+log_events:
+- - 2009-10-02 21:13:55.957193 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: finish GtkIconView binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 20:54:04.688339 Z
+references: []
+
+id: cd59e8bd909376222bd16cf13c8558a3a024a309
+log_events:
+- - 2009-10-02 20:54:06.039958 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: make GtkTreeSortable binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 20:55:06.732780 Z
+references: []
+
+id: ceea6984eef15f2ae49e03107ece93c2b5bf665a
+log_events:
+- - 2009-10-02 20:55:07.596600 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: make bindings of Recent Manager
+desc: ""
+type: :task
+component: cl-gtk2
+release:
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-03 18:58:38.399224 Z
+references: []
+
+id: d0e2cd10341f9ea26673090eba5698c19c01eaa2
+log_events:
+- - 2009-10-03 18:58:39.079051 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: fix running on clisp
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 19:33:46.049295 Z
+references: []
+
+id: df143d2fb5d923fc265fff6b8cdba490af89633f
+log_events:
+- - 2009-10-02 19:33:46.873122 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: make GtkCellEditable interface binding
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 21:04:55.400564 Z
+references: []
+
+id: ed99e9ad80242712fe92e0a6d8f3925ae30bd3ed
+log_events:
+- - 2009-10-02 21:04:56.352332 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
--- /dev/null
+--- !ditz.rubyforge.org,2008-03-06/issue
+title: fix running on win32
+desc: ""
+type: :task
+component: cl-gtk2
+release: "0.1"
+reporter: Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+status: :unstarted
+disposition:
+creation_time: 2009-10-02 19:33:09.967891 Z
+references: []
+
+id: f26913fe08284ee04e9d0a3f6acd36faa2341aae
+log_events:
+- - 2009-10-02 19:33:11.063621 Z
+ - Kalyanov Dmitry <Kalyanov.Dmitry@gmail.com>
+ - created
+ - ""
(:cffi gtk::mode gtk::tree-selection-mode gtk::selection-mode
"gtk_tree_selection_get_mode" "gtk_tree_selection_set_mode")
(:cffi gtk::select-function gtk::tree-selection-select-function nil
- gtk::tree-selection-get-selection-function gtk::tree-selection-set-select-function))
+ gtk::tree-selection-get-selection-function gtk::tree-selection-set-select-function)
+ (:cffi gtk::tree-view gtk::tree-selection-tree-view (g-object gtk::tree-view)
+ "gtk_tree_selection_get_tree_view" nil))
("GtkTreeView"
(:cffi gtk::selection gtk::tree-view-selection g-object
"gtk_tree_view_get_selection" nil)
nil gtk::tree-view-set-row-separartor-func))
("GtkCellView"
(:cffi gtk::displayed-row gtk::cell-view-displayed-row (g-boxed-foreign gtk::tree-path)
- "gtk_cell_view_get_displayed_row" "gtk_cell_view_set_displayed_row"))
+ "gtk_cell_view_get_displayed_row" "gtk_cell_view_set_displayed_row")
+ (:cffi gtk::cell-renderers gtk::cell-view-cell-renderers (glist (g-object gtk::cell-renderer) :free-from-foreign t)
+ "gtk_cell_view_get_cell_renderers" nil))
("GtkComboBox"
(:cffi gtk::active-iter gtk::combo-box-active-iter (g-boxed-foreign gtk::tree-iter)
gtk::combo-box-get-active-iter "gtk_combo_box_set_active_iter")
(:cffi gtk::row-separator-func gtk::combo-box-separator-func nil
- nil gtk::combo-box-set-separator-func))
+ nil gtk::combo-box-set-separator-func)
+ (:cffi gtk::title gtk::combo-box-title (:string :free-from-foreign nil :free-to-foreign t)
+ "gtk_combo_box_get_title" "gtk_combo_box_set_title"))
("GtkMenu"
(:cffi gtk::screen gtk::menu-screen g-object
- nil "gtk_menu_set_screen"))
+ nil "gtk_menu_set_screen")
+ (:cffi gtk::title gtk::menu-title (:string :free-from-foreign nil :free-to-foreign t)
+ "gtk_menu_get_title" "gtk_menu_set_title"))
("GtkToolItem"
(:cffi gtk::expand gtk::tool-item-expand :boolean
"gtk_tool_item_get_expand" "gtk_tool_item_set_expand")
"gtk_layout_get_bin_window" nil))
("GtkCalendar"
(:cffi gtk::detail-function gtk::calendar-detail-function nil
- nil gtk::calendar-set-detail-function))
+ nil gtk::calendar-set-detail-function)
+ (:cffi gtk::display-options gtk::calendar-display-options gtk::calendar-display-options
+ "gtk_calendar_get_display_options" "gtk_calendar_set_display_options"))
("GtkContainer"
(:cffi gtk::focus-child gtk::container-focus-child g-object
"gtk_container_get_focus_child" "gtk_container_set_focus_child")
(:cffi gtk::focus-vadjustment gtk::container-focus-vadjustment g-object
"gtk_container_get_focus_vadjustment" "gtk_container_set_focus_vadjustment")
(:cffi gtk::focus-hadjustment gtk::container-focus-hadjustment g-object
- "gtk_container_get_focus_hadjustment" "gtk_container_set_focus_hadjustment"))
+ "gtk_container_get_focus_hadjustment" "gtk_container_set_focus_hadjustment")
+ (:cffi gtk::reallocate-redraws gtk::container-reallocate-redraws :boolean
+ nil "gtk_container_set_reallocate_redraws"))
("GtkWidget"
(:cffi gtk::parent-window gtk::widget-parent-window (g-object gdk::gdk-window)
"gtk_widget_get_parent_window" "gtk_widget_set_parent_window")
"gtk_text_mark_get_buffer" nil))
("GtkTextBuffer"
(:cffi gtk::modified gtk::text-buffer-modified :boolean
- "gtk_text_buffer_get_modified" "gtk_text_buffer_set_modified"))))))
+ "gtk_text_buffer_get_modified" "gtk_text_buffer_set_modified"))
+ ("GtkToolShell"
+ (:cffi gtk::icon-size gtk::tool-shell-icon-size gtk::icon-size
+ "gtk_tool_shell_get_icon_size" nil)
+ (:cffi gtk::orientation gtk::tool-shell-orientation gtk::orientation
+ "gtk_tool_shell_get_orientation" nil)
+ (:cffi gtk::relief-style gtk::tool-shell-relief-style gtk::relief-style
+ "gtk_tool_shell_get_relief_style" nil)
+ (:cffi gtk::style gtk::tool-shell-style gtk::toolbar-style
+ "gtk_tool_shell_get_style" nil))
+ ("GtkColorSelection"
+ (:cffi gtk::previous-alpha gtk::color-selection-previous-alpha :uint16
+ "gtk_color_selection_get_previous_alpha" "gtk_color_selection_set_previous_alpha")
+ (:cffi gtk::previous-color gtk::color-selection-previous-color (g-boxed-foreign gdk::color)
+ gtk::gtk-color-selection-get-previous-color gtk::gtk-color-selection-set-previous-color))
+ ("GtkScrolledWindow"
+ (:cffi gtk::hscrollbar gtk::scrolled-window-hscrollbar (g-object gtk::widget)
+ "gtk_scrolled_window_get_hscrollbar" nil)
+ (:cffi gtk::vscrollbar gtk::scrolled-window-vscrollbar (g-object gtk::widget)
+ "gtk_scrolled_window_get_vscrollbar" nil))
+ ("GtkBin"
+ (:cffi gtk::child gtk::bin-child (g-object gtk::widget)
+ "gtk_bin_get_child" nil))))))
(defun gtk-generate-child-properties (filename)
(with-open-file (stream filename :direction :output :if-exists :supersede)
(:file "gtk.calendar")
(:file "gtk.size-group")
(:file "gtk.tooltip")
- (:file "gtk.bin")
(:file "gtk.box")
(:file "gtk.container")
(:file "gtk.paned")
(in-package :gtk)
+(defcfun (scale-get-layout "gtk_scale_get_layout") g-object
+ (scale (g-object scale)))
+
+(export 'scale-get-layout)
+
+(defcfun gtk-scale-get-layout-offsets :void
+ (scale (g-object scale))
+ (x (:pointer :int))
+ (y (:pointer :int)))
+
+(defun scale-get-layout-offsets (scale)
+ (with-foreign-objects ((x :int) (y :int))
+ (gtk-scale-get-layout-offsets scale x y)
+ (values (mem-ref x :int) (mem-ref y :int))))
+
+(export 'scale-get-layout-offsets)
+
+(defcfun (scale-add-mark "gtk_scale_add_mark") :void
+ (scale (g-object scale))
+ (value :double)
+ (position position-type)
+ (markup :string))
+
+(export 'scale-add-mark)
+
+(defcfun (scale-clear-marks "gtk_scale_clear_marks") :void
+ (scale (g-object scale)))
+
+(export 'scale-clear-marks)
+++ /dev/null
-(in-package :gtk)
-
-(defcfun (bin-child "gtk_bin_get_child") g-object
- (bin g-object))
-
-(export 'bin-child)
\ No newline at end of file
; TODO: GtkCellRendererText
-; TODO: GtkCellRendererToggle
\ No newline at end of file
+; TODO: GtkCellRendererToggle
+
+(defcfun (cell-renderer-text-set-fixed-height-from-font "gtk_cell_renderer_text_set_fixed_height_from_font") :void
+ (renderer (g-object cell-renderer-text))
+ (number-of-rows :int))
+
+(export 'cell-renderer-text-set-fixed-height-from-font)
(gtk-combo-box-set-row-separator-func combo-box
(callback gtk-tree-view-row-separator-func-callback)
(allocate-stable-pointer func)
- (callback stable-pointer-free-destroy-notify-callback)))
\ No newline at end of file
+ (callback stable-pointer-free-destroy-notify-callback)))
+
+
(defcfun (container-children "gtk_container_get_children") (glist g-object :free-from-foreign t)
(container g-object))
-; TODO: ownership issues
-
(export 'container-children)
-; TODO: gtk_container_set_reallocate_redraws
-
(defcfun (container-resize-children "gtk_container_resize_children") :void
(container g-object))
(export 'container-resize-children)
-(defcfun gtk-container-child-type g-type
+(defcfun (container-child-type "gtk_container_child_type") g-type-designator
(container g-object))
-; TODO: export gtk-container-child-type, requires better interface
+(export 'container-child-type)
-; TODO: child properties
+(defcfun (container-propagate-expose "gtk_container_propagate_expose") :void
+ (container (g-object container))
+ (child (g-object widget))
+ (event (g-boxed-foreign event)))
-; TODO: gtk_container_propagate_expose
+(export 'container-propagate-expose)
; TODO: gtk_container_get_focus_chain
(define-g-interface "GtkToolShell"
tool-shell
- (:export t :type-initializer "gtk_tool_shell_get_type"))
+ (:export t :type-initializer "gtk_tool_shell_get_type")
+ (:cffi icon-size tool-shell-icon-size icon-size
+ "gtk_tool_shell_get_icon_size" nil)
+ (:cffi orientation tool-shell-orientation orientation
+ "gtk_tool_shell_get_orientation" nil)
+ (:cffi relief-style tool-shell-relief-style relief-style
+ "gtk_tool_shell_get_relief_style" nil)
+ (:cffi style tool-shell-style toolbar-style "gtk_tool_shell_get_style" nil))
(define-g-interface "GtkOrientable"
orientable
"show-week-numbers" "gboolean" t t)
(year calendar-year "year" "gint" t t)
(:cffi detail-function calendar-detail-function nil nil
- calendar-set-detail-function)))
+ calendar-set-detail-function)
+ (:cffi display-options calendar-display-options
+ calendar-display-options
+ "gtk_calendar_get_display_options"
+ "gtk_calendar_set_display_options")))
(define-g-object-class "GtkCellView" cell-view
(:superclass widget :export t :interfaces
(:cffi displayed-row cell-view-displayed-row
(g-boxed-foreign tree-path)
"gtk_cell_view_get_displayed_row"
- "gtk_cell_view_set_displayed_row")))
+ "gtk_cell_view_set_displayed_row")
+ (:cffi cell-renderers cell-view-cell-renderers
+ (glist (g-object cell-renderer) :free-from-foreign t)
+ "gtk_cell_view_get_cell_renderers" nil)))
(define-g-object-class "GtkContainer" container
(:superclass widget :export t :interfaces
"gtk_container_set_focus_vadjustment")
(:cffi focus-hadjustment container-focus-hadjustment
g-object "gtk_container_get_focus_hadjustment"
- "gtk_container_set_focus_hadjustment")))
+ "gtk_container_set_focus_hadjustment")
+ (:cffi reallocate-redraws container-reallocate-redraws
+ :boolean nil "gtk_container_set_reallocate_redraws")))
(define-g-object-class "GtkBin" bin
(:superclass container :export t :interfaces
("AtkImplementorIface" "GtkBuildable")
:type-initializer "gtk_bin_get_type")
- nil)
+ ((:cffi child bin-child (g-object widget)
+ "gtk_bin_get_child" nil)))
(define-g-object-class "GtkAlignment" alignment
(:superclass bin :export t :interfaces
(g-boxed-foreign tree-iter) combo-box-get-active-iter
"gtk_combo_box_set_active_iter")
(:cffi row-separator-func combo-box-separator-func nil
- nil combo-box-set-separator-func)))
+ nil combo-box-set-separator-func)
+ (:cffi title combo-box-title
+ (:string :free-from-foreign nil :free-to-foreign t)
+ "gtk_combo_box_get_title" "gtk_combo_box_set_title")))
(define-g-object-class "GtkComboBoxEntry" combo-box-entry
(:superclass combo-box :export t :interfaces
"window-placement" "GtkCornerType" t t)
(window-placement-set
scrolled-window-window-placement-set
- "window-placement-set" "gboolean" t t)))
+ "window-placement-set" "gboolean" t t)
+ (:cffi hscrollbar scrolled-window-hscrollbar
+ (g-object widget) "gtk_scrolled_window_get_hscrollbar"
+ nil)
+ (:cffi vscrollbar scrolled-window-vscrollbar
+ (g-object widget) "gtk_scrolled_window_get_vscrollbar"
+ nil)))
(define-g-object-class "GtkToolItem" tool-item
(:superclass bin :export t :interfaces
color-selection-has-opacity-control
"has-opacity-control" "gboolean" t t)
(has-palette color-selection-has-palette "has-palette"
- "gboolean" t t)))
+ "gboolean" t t)
+ (:cffi previous-alpha color-selection-previous-alpha
+ :uint16 "gtk_color_selection_get_previous_alpha"
+ "gtk_color_selection_set_previous_alpha")
+ (:cffi previous-color color-selection-previous-color
+ (g-boxed-foreign color)
+ gtk-color-selection-get-previous-color
+ gtk-color-selection-set-previous-color)))
(define-g-object-class "GtkFileChooserWidget" file-chooser-widget
(:superclass v-box :export t :interfaces
(tearoff-title menu-tearoff-title "tearoff-title"
"gchararray" t t)
(:cffi screen menu-screen g-object nil
- "gtk_menu_set_screen")))
+ "gtk_menu_set_screen")
+ (:cffi title menu-title
+ (:string :free-from-foreign nil :free-to-foreign t)
+ "gtk_menu_get_title" "gtk_menu_set_title")))
(define-g-object-class "GtkRecentChooserMenu" recent-chooser-menu
(:superclass menu :export t :interfaces
"gtk_tree_selection_set_mode")
(:cffi select-function tree-selection-select-function
nil tree-selection-get-selection-function
- tree-selection-set-select-function)))
+ tree-selection-set-select-function)
+ (:cffi tree-view tree-selection-tree-view
+ (g-object tree-view)
+ "gtk_tree_selection_get_tree_view" nil)))
(define-g-object-class "GtkTreeStore" tree-store
(:superclass g-object :export t :interfaces
(in-package :gtk)
-(defcfun (icon-view-get-path-at-pos "gtk_icon_view_get_path_at_pos") g-object
+(defcfun (icon-view-get-path-at-pos "gtk_icon_view_get_path_at_pos") (g-boxed-foreign tree-path :return)
(icon-view g-object)
(x :int)
(y :int))
; TODO: gtk_menu_attach_to_widget
-; TODO: gtk_menu_detach
+(defcfun (menu-detach "gtk_menu_detach") :void
+ (menu (g-object menu)))
-; TODO: gtk_menu_get_attach_widget
+(export 'menu-detach)
-; TODO: gtk_menu_get_for_attach_widget
+; TODO: gtk_menu_get_attach_to_widget
+
+(defcfun (menu-attached-to-widget "gtk_menu_get_for_attach_widget") (glist (g-object menu) :free-from-foreign nil)
+ (width (g-object widget)))
+
+(export 'menu-attached-to-widget)
+
+(defcfun (radio-menu-item-group "gtk_radio_menu_item_get_group") (glist (g-object radio-menu-item) :free-from-foreign nil)
+ (radio-menu-item (g-object radio-menu-item)))
+
+(export 'radio-menu-item-group)
+
+(defcfun (tool-shell-rebuild-menu "gtk_tool_shell_rebuild_menu") :void
+ (shell (g-object tool-shell)))
+
+(export 'tool-shell-rebuild-menu)
(defcfun (menu-shell-append "gtk_menu_shell_append") :void
(menu-shell g-object)
(export 'tool-item-rebuild-menu)
+(defcfun (radio-tool-button-get-group "gtk_radio_tool_button_get_group")
+ (gslist (g-object radio-tool-button) :free-from-foreign nil)
+ (button (g-object radio-tool-button)))
(define-g-enum "PangoEllipsizeMode" pango-ellipsize-mode
(:export t :type-initializer
"pango_ellipsize_mode_get_type")
- (:none 0) (:start 1) (:middle 2) (:end 3))
\ No newline at end of file
+ (:none 0) (:start 1) (:middle 2) (:end 3))
+
+(defcfun (adjustment-clamp-page "gtk_adjustment_clamp_page") :void
+ (adjustment (g-object adjustment))
+ (lower :double)
+ (upper :double))
+
+(export 'adjustment-clamp-page)
+
+(define-g-boxed-cstruct requisition "GtkRequisition"
+ (width :int :initform 0)
+ (height :int :initform 0))
+
+(export (boxed-related-symbols 'requisition))
+
+(define-g-boxed-cstruct allocation "GtkAllocation"
+ (x :int :initform 0)
+ (y :int :initform 0)
+ (width :int :initform 0)
+ (height :int :initform 0))
+
+(export (boxed-related-symbols 'allocation))
(in-package :gtk)
+(defcfun (%gtk-color-selection-get-previous-color "gtk_color_selection_get_previous_color") :void
+ (color-selection (g-object color-selection))
+ (color (g-boxed-foreign color)))
+
+(defun gtk-color-selection-get-previous-color (color-selection)
+ (let ((color (make-color)))
+ (%gtk-color-selection-get-previous-color color-selection color)
+ color))
+
+(defcfun gtk-color-selection-set-previous-color :void
+ (color-selection (g-object color-selection))
+ (color (g-boxed-foreign color)))
+
(defcfun (color-selection-adjusting-p "gtk_color_selection_is_adjusting") :boolean
(color-selection g-object))
(export 'color-selection-adjusting-p)
-; TODO: gtk_color_selection_palette_from_string
+(defcfun gtk-color-selection-palette-from-string :boolean
+ (str :string)
+ (colors :pointer)
+ (n-colors :pointer))
+
+(defun color-selection-palette-from-string (str)
+ (with-foreign-objects ((colors :pointer) (n-colors :int))
+ (when (gtk-color-selection-palette-from-string str colors n-colors)
+ (iter (with colors-ar = (mem-ref colors :pointer))
+ (for i from 0 below (mem-ref n-colors :int))
+ (for color-ptr =
+ (inc-pointer colors-ar
+ (* i (foreign-type-size 'gdk::color-cstruct))))
+ (for color = (convert-from-foreign color-ptr '(g-boxed-foreign color)))
+ (collect color)
+ (finally (g-free colors-ar))))))
+
+(defcfun gtk-color-selection-palette-to-string (g-string :free-from-foreign t)
+ (colors :pointer)
+ (n-colors :int))
; TODO: gtk_color_selection_palette_to_string
(is-expander :boolean)
(is-expanded :boolean))
-(export 'tree-view-column-set-cell-data)
+(export 'tree-view-column-cell-set-data)
+
+(defcfun gtk-tree-view-column-cell-get-size :void
+ (tree-column (g-object tree-view-column))
+ (cell-area (g-boxed-foreign rectangle))
+ (x-offset (:pointer :int))
+ (y-offset (:pointer :int))
+ (width (:pointer :int))
+ (height (:pointer :int)))
+
+(defun tree-view-column-cell-size (tree-column cell-area)
+ (with-foreign-objects ((x :int) (y :int) (width :int) (height :int))
+ (gtk-tree-view-column-cell-get-size tree-column cell-area x y width height)
+ (values (mem-ref x :int) (mem-ref y :int) (mem-ref width :int) (mem-ref height :int))))
+
+(export 'tree-view-column-cell-size)
+
+(defcfun gtk-tree-view-column-cell-get-position :boolean
+ (tree-column (g-object tree-view-column))
+ (cell-renderer (g-object cell-renderer))
+ (start-pos (:pointer :int))
+ (width (:pointer :int)))
+
+(defun tree-view-column-cell-position (tree-column cell-renderer)
+ (with-foreign-objects ((start :int) (width :int))
+ (when (gtk-tree-view-column-cell-get-position tree-column cell-renderer start width)
+ (list (mem-ref start :int) (mem-ref width :int)))))
-;; TODO gtk_tree_view_column_cell_get_size () gtk_tree_view_column_cell_get_position ()
(defcfun (tree-view-column-focus-cell "gtk_tree_view_column_focus_cell") :void
(tree-column (g-object tree-view-column))
(export 'tree-view-get-tooltip-context)
-; TODO: GtkTreeView drag-and-drop
\ No newline at end of file
+; TODO: GtkTreeView drag-and-drop
+
+(defcfun gtk-cell-view-get-size-of-row :boolean
+ (cell-view (g-object cell-view))
+ (path (g-boxed-foreign tree-path))
+ (requisition (g-boxed-foreign requisition)))
+
+(defun cell-view-get-size-of-row (cell-view path)
+ (let ((requisition (make-requisition)))
+ (gtk-cell-view-get-size-of-row cell-view path requisition)
+ requisition))
+
+(export 'cell-view-get-size-of-row)
(export 'action-disconnect-accelerator)
+(defcfun (action-block-activate "gtk_action_block_activate") :void
+ (action (g-object action)))
+
+(export 'action-block-activate)
+
+(defcfun (action-unblock-activate "gtk_action_unblock_activate") :void
+ (action (g-object action)))
+
+(export 'action-unblock-activate)
+
(defcfun (action-block-activate-from "gtk_action_block_activate_from") :void
(action g-object)
(proxy g-object))
(action g-object)
(proxy g-object))
-(export 'action-unblock-activate-from)
\ No newline at end of file
+(export 'action-unblock-activate-from)
+
+(defcfun (radio-action-get-group "gtk_radio_action_get_group") (gslist (g-object radio-action) :free-from-foreign nil)
+ (action (g-object radio-action)))
+
+(export 'radio-action-get-group)
(export 'widget-flags)
-(defcstruct %gtk-requisition
- (:width :int)
- (:height :int))
-
-(defcstruct %gtk-allocation
- (:x :int)
- (:y :int)
- (:width :int)
- (:height :int))
-
(defcstruct %gtk-widget
(:object %gtk-object)
(:private-flags :uint16)
(:saved-state state-type)
(:name (:pointer :char))
(:style :pointer)
- (:requisition %gtk-requisition)
- (:allocation %gtk-allocation)
+ (:requisition requisition-cstruct)
+ (:allocation allocation-cstruct)
(:window :pointer)
(:parent :pointer))