1 ;; Common Lisp bindings for GTK+ v2.0.x
2 ;; Copyright (C) 1999-2000 Espen S. Johnsen <espejohn@online.no>
4 ;; This library is free software; you can redistribute it and/or
5 ;; modify it under the terms of the GNU Lesser General Public
6 ;; License as published by the Free Software Foundation; either
7 ;; version 2 of the License, or (at your option) any later version.
9 ;; This library is distributed in the hope that it will be useful,
10 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 ;; Lesser General Public License for more details.
14 ;; You should have received a copy of the GNU Lesser General Public
15 ;; License along with this library; if not, write to the Free Software
16 ;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 ;; $Id: gtktypes.lisp,v 1.6 2001-01-28 14:27:17 espen Exp $
25 (deftype color-type ()
38 (defclass style (gobject)
51 :location ("gtk_style_get_font" "gtk_style_set_font")
55 (:metaclass gobject-class)
56 (:alien-name "GtkStyle"))
59 (defclass accel-group (alien-object)
61 (:metaclass alien-class)
62 (:alien-name "GtkAccelGroup"))
64 (deftype accel-entry () 'pointer) ; internal?
68 ;; Forward declaration of widget and container
69 (defclass widget (object)
71 (:metaclass object-class)
72 (:alien-name "GtkWidget"))
74 (defclass container (widget)
76 (:metaclass widget-class)
77 (:alien-name "GtkContainer"))
81 (defclass data (object)
83 (:metaclass object-class)
84 (:alien-name "GtkData"))
87 (defclass adjustment (data)
90 :accessor adjustment-lower
95 :accessor adjustment-upper
100 :accessor adjustment-value
105 :accessor adjustment-step-increment
106 :initarg :step-increment
110 :accessor adjustment-page-increment
111 :initarg :page-increment
115 :accessor adjustment-page-size
118 (:metaclass object-class)
119 (:alien-name "GtkAdjustment"))
122 (defclass tooltips (data)
125 :location ("gtk_tooltips_get_delay" "gtk_tooltips_set_delay")
126 :accessor tooltips-delay
130 :location ("gtk_tooltips_get_enabled" (setf tooltips-enabled-p))
131 :reader tooltips-enabled-p
134 (:metaclass object-class)
135 (:alien-name "GtkTooltips"))
138 (defclass widget (object)
140 :allocation :instance
141 :accessor widget-child-slots
142 :type container-child)
145 :accessor widget-name
150 :accessor widget-parent
155 :accessor widget-x-position
160 :accessor widget-y-position
165 :accessor widget-width
170 :accessor widget-height
175 :accessor widget-visible-p
180 :accessor widget-sensitive-p
185 :reader widget-app-paintable-p
189 :accessor widget-can-focus-p
194 :accessor widget-has-focus-p
199 :accessor widget-can-default-p
200 :initarg :can-default
204 :accessor widget-has-default-p
205 :initarg :has-default
209 :accessor widget-receives-default-p
210 :initarg :receives-default
214 :accessor widget-composite-child-p
215 :initarg :composite-child
219 :accessor widget-style
224 :accessor widget-events
226 :type gdk:event-mask)
229 :accessor widget-extension-events
230 :initarg :extpension-events
231 :type gdk:event-mask)
234 :location ("gtk_widget_get_state" "gtk_widget_set_state")
235 :accessor widget-state
240 :location "gtk_widget_get_window"
241 :reader widget-window
245 :location "gtk_widget_get_colormap"
246 :reader widget-colormap
250 :location "gtk_widget_get_visual"
251 :reader widget-visual
253 (:metaclass object-class)
254 (:alien-name "GtkWidget"))
257 (defclass misc (widget)
260 :accessor misc-xalign
265 :accessor misc-yalign
278 (:metaclass widget-class)
279 (:alien-name "GtkMisc"))
282 (defclass label (misc)
285 :accessor label-label
290 :accessor label-pattern
295 :accessor label-justify
300 :accessor label-line-wrap-p
303 (:metaclass widget-class)
304 (:alien-name "GtkLabel"))
307 (defclass accel-label (label)
310 :location "GtkAccelLabel::accel_widget"
311 :accessor accel-label-accel-widget
312 :initarg :accel-widget
316 :location "gtk_accel_label_get_accel_width"
319 (:metaclass widget-class)
320 (:alien-name "GtkAccelLabel"))
323 (defclass tips-query (label)
326 :accessor tips-query-emit-always-p
327 :initarg :emit-always
331 :accessor tips-query-caller
336 :accessor tips-query-label-inactive
337 :initarg :label-inactive
341 :accessor tips-query-label-no-tip
342 :initarg :label-no-tip
344 (:metaclass widget-class)
345 (:alien-name "GtkTipsQuery"))
348 (defclass arrow (misc)
351 :accessor arrow-arrow-type
356 :accessor arrow-shadow-type
357 :initarg :shadow-type
359 (:metaclass widget-class)
360 (:alien-name "GtkArrow"))
363 (defclass image (misc)
365 (:metaclass widget-class)
366 (:alien-name "GtkImage"))
369 (defclass pixmap (misc)
372 :location pixmap-source)
375 :location pixmap-mask
377 (:metaclass widget-class)
378 (:alien-name "GtkPixmap"))
381 (defclass container (widget)
384 :accessor container-border-width
385 :initarg :border-width
389 :accessor container-resize-mode
390 :initarg :resize-mode
394 :location container-children)
397 :location ("gtk_container_get_focus_child" "gtk_container_set_focus_child")
398 :accessor container-focus-child
399 :initarg :focus-child
403 :location (nil "gtk_container_set_focus_hadjustment")
404 :writer (setf container-focus-hadjustment)
405 :initarg :focus-hadjustment
409 :location (nil "gtk_container_set_focus_vadjustment")
410 :writer (setf container-focus-vadjustment)
411 :initarg :focus-vadjustment
413 (:metaclass widget-class)
414 (:alien-name "GtkContainer"))
416 (defclass container-child ()
425 (defclass bin (container)
430 (:metaclass container-class)
431 (:alien-name "GtkBin"))
433 (defclass bin-child (container-child))
436 (defclass alignment (bin)
439 :accessor alignment-xalign
444 :accessor alignment-yalign
449 :accessor alignment-xscale
454 :accessor alignment-yscale
457 (:metaclass container-class)
458 (:alien-name "GtkAlignment"))
460 (defclass alignment-child (bin-child))
463 (defclass frame (bin)
466 :location ("gtk_frame_get_label" "gtk_frame_set_label")
467 :accessor frame-label
472 :accessor frame-label-xalign
473 :initarg :label-xalign
477 :accessor frame-label-yalign
478 :initarg :label-yalign
482 :location "GtkFrame::shadow"
483 :accessor frame-shadow-type
484 :initarg :shadow-type
486 (:metaclass container-class)
487 (:alien-name "GtkFrame"))
489 (defclass frame-child (bin-child))
492 ; (defclass aspect-frame (frame)
495 ; :accessor aspect-frame-xalign
497 ; :type single-float)
500 ; :accessor aspect-frame-yalign
502 ; :type single-float)
505 ; :accessor aspect-frame-ratio
507 ; :type single-float)
510 ; :accessor aspect-frame-obey-child-p
511 ; :initarg :obey-child
513 ; (:metaclass container-class)
514 ; (:alien-name "GtkAspectFrame"))
516 ; (defclass aspect-frame-child (aspect-child))
519 (defclass button (bin)
526 :accessor button-relief
529 (:metaclass container-class)
530 (:alien-name "GtkButton"))
532 (defclass button-child (bin-child)
534 (:metaclass child-class))
537 (defclass toggle-button (button)
540 :accessor toggle-button-active-p
545 :accessor toggle-button-draw-indicator-p
546 :initarg :draw-indicator
548 (:metaclass container-class)
549 (:alien-name "GtkToggleButton"))
551 (defclass toggle-button-child (button-child)
553 (:metaclass child-class))
556 (defclass check-button (toggle-button)
558 (:metaclass container-class)
559 (:alien-name "GtkCheckButton"))
561 (defclass check-button-child (toggle-button-child)
563 (:metaclass child-class))
566 (defclass radio-button (check-button)
569 :location ("gtk_radio_button_group")
570 :reader radio-button-group
571 :type (static (gslist widget))))
572 (:metaclass container-class)
573 (:alien-name "GtkRadioButton"))
575 (defclass radio-button-child (check-button-child)
577 (:metaclass child-class))
580 (defclass option-menu (button)
583 :location ("gtk_option_menu_get_menu" (setf option-menu-menu))
584 :reader option-menu-menu
589 :location (nil "gtk_option_menu_set_history")
590 :writer (setf option-menu-history)
593 (:metaclass container-class)
594 (:alien-name "GtkOptionMenu"))
596 (defclass option-menu-child (button-child)
598 (:metaclass child-class))
603 (:metaclass container-class)
604 (:alien-name "GtkItem"))
606 (defclass item-child (bin-child)
608 (:metaclass child-class))
610 ;; Forward declaration
611 (defclass menu-item (item)
613 (:metaclass container-class)
614 (:alien-name "GtkMenuItem"))
616 (defclass menu-item (item)
619 :location menu-item-label
624 :location ("gtk_menu_item_get_submenu" (setf menu-item-submenu))
625 :reader menu-item-submenu
630 :location ("gtk_menu_item_get_placement" "gtk_menu_item_set_placement")
631 :accessor menu-item-placement
633 :type submenu-placement)
636 :location ("gtk_menu_item_get_show_toggle"
637 (setf menu-item-toggle-indicator-p))
638 :reader menu-item-toggle-indicator-p
639 :initarg :toggle-indicator
643 :location ("gtk_menu_item_get_show_submenu"
644 (setf menu-item-submenu-indicator-p))
645 :reader menu-item-submenu-indicator-p
646 :initarg :submenu-indicator
648 (:metaclass container-class)
649 (:alien-name "GtkMenuItem"))
651 (defclass menu-item-child (item-child)
653 (:metaclass child-class))
656 (defclass check-menu-item (menu-item)
659 :location ("gtk_check_menu_item_get_active"
660 "gtk_check_menu_item_set_active")
661 :accessor check-menu-item-active-p
666 :location ("gtk_check_menu_item_get_show_toggle"
667 "gtk_check_menu_item_set_show_toggle")
668 :accessor check-menu-item-toggle-indicator-p
669 :initarg :toggle-indicator
671 (:metaclass container-class)
672 (:alien-name "GtkCheckMenuItem"))
674 (defclass check-menu-item-child (menu-item-child)
676 (:metaclass child-class))
679 (defclass radio-menu-item (check-menu-item)
682 :location ("gtk_radio_menu_item_group")
683 :reader radio-menu-item-group
684 :type (static (gslist widget))))
685 (:metaclass container-class)
686 (:alien-name "GtkRadioMenuItem"))
688 (defclass radio-menu-item-child (check-menu-item-child)
690 (:metaclass child-class))
693 (defclass tearoff-menu-item (menu-item)
695 (:metaclass container-class)
696 (:alien-name "GtkTearoffMenuItem"))
698 (defclass tearoff-menu-item-child (menu-item-child)
700 (:metaclass child-class))
703 (defclass list-item (item)
705 (:metaclass container-class)
706 (:alien-name "GtkListItem"))
708 (defclass list-item-child (item-child)
710 (:metaclass child-class))
713 (defclass window (bin)
716 :accessor window-type
721 :accessor window-title
726 :accessor window-auto-shrink-p
727 :initarg :auto-shrink
731 :accessor window-allow-shrink-p
732 :initarg :allow-shrink
736 :accessor window-allow-grow-p
741 :accessor window-modal-p
746 :location "GtkWindow::window_position"
747 :accessor window-position
749 :type window-position)
752 :accessor window-default-width
753 :initarg :default-width
757 :accessor window-default-height
758 :initarg :default-height
760 (:metaclass container-class)
761 (:alien-name "GtkWindow"))
763 (defclass window-child (bin-child)
765 (:metaclass child-class))
768 (defclass dialog (window)
771 :reader dialog-main-box
775 :reader dialog-action-area
777 (:metaclass container-class)
778 (:alien-name "GtkDialog"))
780 (defclass dialog-child (window-child)
782 (:metaclass child-class))
785 (defclass color-selection-dialog (dialog)
788 :reader color-selection-dialog-colorsel
792 :reader color-selection-dialog-ok-button
796 :reader color-selection-dialog-cancel-button
800 :reader color-selection-dialog-help-button
802 (:metaclass container-class)
803 (:alien-name "GtkColorSelectionDialog"))
805 (defclass color-selection-dialog-child (dialog-child)
807 (:metaclass child-class))
810 (defclass input-dialog (dialog)
812 (:metaclass container-class)
813 (:alien-name "GtkInputDialog"))
815 (defclass input-dialog-child (dialog-child)
817 (:metaclass child-class))
820 (defclass file-selection (window)
823 :location ("gtk_file_selection_get_filename"
824 "gtk_file_selection_set_filename")
825 :accessor file-selection-filename
830 :location "gtk_file_selection_get_action_area"
831 :reader file-selection-action-area
835 :location "gtk_file_selection_get_ok_button"
836 :reader file-selection-ok-button
840 :location "gtk_file_selection_get_cancel_button"
841 :reader file-selection-cancel-button
843 (:metaclass container-class)
844 (:alien-name "GtkFileSelection"))
846 (defclass file-selection-child (window-child)
848 (:metaclass child-class))
851 ; (defclass plug window)
854 (defclass event-box (bin)
856 (:metaclass container-class)
857 (:alien-name "GtkEventBox"))
859 (defclass event-box-child (bin-child)
861 (:metaclass child-class))
864 (defclass handle-box (bin)
867 :location "GtkHandleBox::shadow"
868 :accessor handle-box-shadow-type
869 :initarg :shadow-type
873 :accessor handle-box-handle-position
874 :initarg :handle-position
878 :accessor handle-box-snap-edge
880 :type position-type))
881 (:metaclass container-class)
882 (:alien-name "GtkHandleBox"))
884 (defclass handle-box-child (bin-child)
886 (:metaclass child-class))
889 (defclass scrolled-window (bin)
892 :accessor scrolled-window-hadjustment
893 :initarg :hadjustment
897 :accessor scrolled-window-vadjustment
898 :initarg :vadjustment
902 :accessor scrolled-window-hscrollbar-policy
903 :initarg :hscrollbar-policy
907 :accessor scrolled-window-vscrollbar-policy
908 :initarg :vscrollbar-policy
912 :location "GtkScrolledWindow::window_placement"
913 :accessor scrolled-window-placement
918 :location "GtkScrolledWindow::shadow"
919 :accessor scrolled-window-shadow-type
920 :initarg :shadow-type
924 :location "gtk_scrolled_window_get_hscrollbar"
925 :accessor scrolled-window-hscrollbar
929 :location "gtk_scrolled_window_get_vscrollbar"
930 :accessor scrolled-window-vscrollbar
932 (:metaclass container-class)
933 (:alien-name "GtkScrolledWindow"))
935 (defclass scrolled-window-child (bin-child)
937 (:metaclass child-class))
940 (defclass viewport (bin)
943 :accessor viewport-hadjustment
944 :initarg :hadjustment
948 :accessor viewport-vadjustment
949 :initarg :vadjustment
953 :accessor viewport-shadow-type
954 :initarg :shadow-type
956 (:metaclass container-class)
957 (:alien-name "GtkViewport"))
959 (defclass viewport-child (bin-child)
961 (:metaclass child-class))
964 (defclass box (container)
967 :accessor box-spacing
972 :accessor box-homogeneous-p
973 :initarg :homogeneous
975 (:metaclass container-class)
976 (:alien-name "GtkBox"))
978 (defclass box-child (container-child)
981 :accessor box-child-expand-p
986 :accessor box-child-fill-p
991 :accessor box-child-padding
996 :accessor box-child-pack-type
1001 :accessor box-child-position
1004 (:metaclass child-class))
1007 (defclass button-box (box)
1009 :allocation :virtual
1010 :location ("gtk_button_box_get_spacing" "gtk_button_box_set_spacing")
1011 :accessor button-box-spacing
1016 :offset #.(size-of 'int)
1017 :accessor button-box-child-min-width
1018 :initarg :child-min-width
1022 :accessor button-box-child-min-height
1023 :initarg :child-min-height
1027 :accessor button-box-child-ipad-x
1028 :initarg :child-ipad-x
1032 :accessor button-box-child-ipad-y
1033 :initarg :child-ipad-y
1036 :allocation :virtual
1037 :location ("gtk_button_box_get_layout" "gtk_button_box_set_layout")
1038 :accessor button-box-layout
1040 :type button-box-style))
1041 (:metaclass container-class)
1042 (:alien-name "GtkButtonBox"))
1044 (defclass button-box-child (box-child)
1046 (:metaclass child-class))
1049 (defclass hbutton-box (button-box)
1051 (:metaclass container-class)
1052 (:alien-name "GtkHButtonBox"))
1054 (defclass hbutton-box-child (button-box-child)
1056 (:metaclass child-class))
1059 (defclass vbutton-box (button-box)
1061 (:metaclass container-class)
1062 (:alien-name "GtkVButtonBox"))
1064 (defclass vbutton-box-child (button-box-child)
1066 (:metaclass child-class))
1069 (defclass vbox (box)
1071 (:metaclass container-class)
1072 (:alien-name "GtkVBox"))
1074 (defclass vbox-child (box-child)
1076 (:metaclass child-class))
1079 (defclass color-selection (vbox)
1081 :allocation :virtual
1082 :location ("gtk_color_selection_get_use_opacity"
1083 "gtk_color_selection_set_use_opacity")
1084 :accessor color-selection-use-opacity-p
1085 :initarg :use-opacity
1088 :allocation :virtual
1089 :location ("gtk_color_selection_get_use_palette"
1090 "gtk_color_selection_set_use_palette")
1091 :accessor color-selection-use-palette-p
1092 :initarg :use-palette
1095 :allocation :virtual
1096 :location color-selection-color
1099 :allocation :virtual
1100 :location color-selection-old-color
1102 :type (vector double-float 4)))
1103 (:metaclass container-class)
1104 (:alien-name "GtkColorSelection"))
1106 (defclass color-selection-child (vbox-child)
1108 (:metaclass child-class))
1111 (defclass hbox (box)
1113 (:metaclass container-class)
1114 (:alien-name "GtkHBox"))
1116 (defclass hbox-child (box-child)
1118 (:metaclass child-class))
1121 (defclass statusbar (hbox)
1123 (:metaclass container-class)
1124 (:alien-name "GtkStatusbar"))
1126 (defclass statusbar-child (hbox-child)
1128 (:metaclass child-class))
1131 (defclass fixed (container)
1133 (:metaclass container-class)
1134 (:alien-name "GtkFixed"))
1136 (defclass fixed-child (container-child)
1138 (:metaclass child-class))
1141 (defclass notebook (container)
1144 :accessor notebook-tab-pos
1146 :type position-type)
1149 :accessor notebook-show-tabs-p
1154 :accessor notebook-show-border-p
1155 :initarg :show-border
1159 :accessor notebook-scrollable-p
1160 :initarg :scrollable
1164 :accessor notebook-tab-border
1165 :initarg :tab-border
1169 :accessor notebook-tab-hborder
1170 :initarg :tab-hborder
1174 :accessor notebook-tab-vborder
1175 :initarg :tab-vborder
1179 :accessor notebook-page
1184 :accessor notebook-enable-popup-p
1185 :initarg :enable-popup
1189 :accessor notebook-homogeneous-p
1190 :initarg :homogeneous
1192 (:metaclass container-class)
1193 (:alien-name "GtkNotebook"))
1195 (defclass notebook-child (container-child)
1198 :accessor notebook-child-tab-label
1203 :accessor notebook-child-menu-label
1204 :initarg :menu-label
1208 :accessor notebook-child-position
1213 :accessor notebook-child-tab-fill-p
1218 :accessor notebook-child-tab-pack-p
1221 (:metaclass child-class))
1224 (defclass font-selection (notebook)
1226 (:metaclass container-class)
1227 (:alien-name "GtkFontSelection"))
1229 (defclass font-selection-child (notebook-child)
1231 (:metaclass child-class))
1234 (defclass paned (container)
1237 :accessor paned-handle-size
1238 :initarg handle-size
1241 :allocation :virtual
1242 :location ("gtk_paned_get_position" "gtk_paned_set_position")
1243 :accessor paned-position
1247 :allocation :virtual
1248 :location paned-child1
1252 :allocation :virtual
1253 :location paned-child2
1256 (:metaclass container-class)
1257 (:alien-name "GtkPaned"))
1259 (defclass paned-child (container-child)
1261 (:metaclass child-class))
1264 (defclass hpaned (paned)
1266 (:metaclass container-class)
1267 (:alien-name "GtkHPaned"))
1269 (defclass hpaned-child (paned-child)
1271 (:metaclass child-class))
1274 (defclass vpaned (paned)
1276 (:metaclass container-class)
1277 (:alien-name "GtkVPaned"))
1279 (defclass vpaned-child (paned-child)
1281 (:metaclass child-class))
1284 (defclass layout (container)
1286 :allocation :virtual
1287 :location ("gtk_layout_get_hadjustment" "gtk_layout_set_hadjustment")
1288 :accessor layout-hadjustment
1289 :initarg :hadjustment
1292 :allocation :virtual
1293 :location ("gtk_layout_get_vadjustment" "gtk_layout_set_vadjustment")
1294 :accessor layout-vadjustment
1295 :initarg :vadjustment
1298 :allocation :virtual
1299 :location layout-x-size
1302 :allocation :virtual
1303 :location layout-y-size
1307 :offset #.(+ (size-of 'pointer) (* (size-of 'int) 2))
1308 :accessor layout-x-offset
1313 :accessor layout-y-offset
1315 :type unsigned-int))
1316 (:metaclass container-class)
1317 (:alien-name "GtkLayout"))
1319 (defclass layout-child (container-child)
1321 (:metaclass child-class))
1324 ; (defclass list-widget container
1327 ; ((selection-mode :read-method :arg :accessor list-selection-mode
1328 ; :c-writer "gtk_list_set_selection_mode"
1329 ; :type selection-mode)))
1332 (defclass menu-shell (container)
1334 (:metaclass container-class)
1335 (:alien-name "GtkMenuShell"))
1337 (defclass menu-shell-child (container-child)
1339 (:metaclass child-class))
1342 (defclass menu-bar (menu-shell)
1345 :location "GtkMenuBar::shadow"
1346 :accessor menu-bar-shadow-type
1347 :initarg :shadow-type
1349 (:metaclass container-class)
1350 (:alien-name "GtkMenuBar"))
1352 (defclass menu-bar-child (menu-shell-child)
1354 (:metaclass child-class))
1357 (defclass menu (menu-shell)
1359 :allocation :virtual
1360 :location ("gtk_menu_get_accel_group" "gtk_menu_set_accel_group")
1361 :accessor menu-accel-group
1362 :initarg :accel-group
1365 :allocation :virtual
1366 :location ("gtk_menu_get_tearoff_state" "gtk_menu_set_tearoff_state")
1367 :accessor menu-tornoff-p
1371 :allocation :virtual
1372 :location ("gtk_menu_get_title" "gtk_menu_set_title")
1373 :accessor menu-title
1376 (:metaclass container-class)
1377 (:alien-name "GtkMenu"))
1379 (defclass menu-child (menu-shell-child)
1381 (:metaclass child-class))
1384 (defclass packer (container)
1387 :accessor packer-spacing
1390 (default-border-width
1392 :accessor packer-default-border-width
1393 :initarg :default-border-width
1397 :accessor packer-default-pad-x
1398 :initarg :default-pad-x
1402 :accessor packer-default-pad-y
1403 :initarg :default-pad-y
1407 :accessor packer-default-ipad-x
1408 :initarg :default-ipad-x
1412 :accessor packer-default-ipad-y
1413 :initarg :default-ipad-y
1414 :type unsigned-int))
1415 (:metaclass container-class)
1416 (:alien-name "GtkPacker"))
1418 (defclass packer-child (container-child)
1421 :accessor packer-child-side
1426 :accessor packer-child-anchor
1431 :accessor packer-child-expand-p
1436 :accessor packer-child-fill-x-p
1441 :accessor packer-child-fill-y-p
1446 :accessor packer-child-use-default
1451 :accessor packer-child-border-width
1456 :accessor packer-child-pad-x
1461 :accessor packer-child-pad-y
1466 :accessor packer-child-ipad-x
1471 :accessor packer-child-ipad-y
1476 :accessor packer-child-position
1479 (:metaclass child-class))
1482 ;(defclass socket (container))
1485 (defclass table (container)
1488 :location "GtkTable::n_rows"
1489 :accessor table-rows
1494 :location "GtkTable::n_columns"
1495 :accessor table-columns
1500 :accessor table-default-row-spacing
1501 :initarg :row-spacing
1505 :accessor table-default-column-spacing
1506 :initarg :column-spacing
1510 :accessor table-homogeneous-p
1511 :initarg :homogeneous
1513 (:metaclass container-class)
1514 (:alien-name "GtkTable"))
1516 (defclass table-child (container-child)
1519 :accessor table-child-left-attach
1520 :initarg :left-attach
1524 :accessor table-child-right-attach
1525 :initarg :right-attach
1529 :accessor table-child-top-attach
1530 :initarg :top-attach
1534 :accessor table-child-bottom-attach
1535 :initarg :bottom-attach
1539 :accessor table-child-x-options
1541 :type attach-options)
1544 :accessor table-child-y-options
1546 :type attach-options)
1549 :accessor table-child-x-padding
1554 :accessor table-child-y-padding
1559 :allocation :virtual
1560 :location table-child-x-expand-p
1564 :allocation :virtual
1565 :location table-child-y-expand-p
1569 :allocation :virtual
1570 :location table-child-x-shrink-p
1574 :allocation :virtual
1575 :location table-child-y-shrink-p
1579 :allocation :virtual
1580 :location table-child-x-fill-p
1584 :allocation :virtual
1585 :location table-child-y-fill-p
1588 (:metaclass child-class))
1591 (defclass toolbar (container)
1594 :accessor toolbar-orientation
1595 :initarg :orientation
1599 :accessor toolbar-style
1600 :initarg :toolbar-style
1601 :type toolbar-style)
1604 :accessor toolbar-space-size
1605 :initarg :space-size
1609 :accessor toolbar-space-style
1610 :initarg :space-style
1611 :type toolbar-space-style)
1614 :accessor toolbar-relief
1618 :allocation :virtual
1619 :location ("gtk_toolbar_get_tooltips" "gtk_toolbar_set_tooltips")
1620 :accessor toolbar-tooltips-p
1623 (:metaclass container-class)
1624 (:alien-name "GtkToolbar"))
1626 (defclass toolbar-child (container-child)
1628 (:metaclass child-class))
1631 (defclass calendar (widget)
1633 (:metaclass widget-class)
1634 (:alien-name "GtkCalendar"))
1637 (defclass drawing-area (widget)
1639 (:metaclass widget-class)
1640 (:alien-name "GtkDrawingArea"))
1642 ; (defclass curve drawing-area
1644 ; ((curve-type :read-method :arg :type curve-type)
1645 ; (min-x :access-method :arg :type single-float)
1646 ; (max-x :access-method :arg :type single-float)
1647 ; (min-y :access-method :arg :type single-float)
1648 ; (max-y :access-method :arg :type single-float)))
1650 (defclass editable (widget)
1653 :location "GtkEditable::text_position"
1654 :accessor ediatable-position
1659 :accessor editable-editable-p
1663 :allocation :virtual
1664 :location editable-text
1667 (:metaclass widget-class)
1668 (:alien-name "GtkEditable"))
1671 (defclass entry (editable)
1674 :accessor entry-max-length
1675 :initarg :max-length
1679 :location "GtkEntry::visibility"
1680 :accessor entry-visible-p
1683 (:metaclass widget-class)
1684 (:alien-name "GtkEntry"))
1687 (defclass combo (hbox)
1689 :allocation :virtual
1690 :location "gtk_combo_get_entry"
1694 :allocation :virtual
1695 :location ("gtk_combo_get_use_arrows" "gtk_combo_set_use_arrows")
1696 :accessor combo-use-arrows-p
1697 :initarg :use-arrows
1700 :allocation :virtual
1702 ("gtk_combo_get_use_arrows_always" "gtk_combo_set_use_arrows_always")
1703 :accessor combo-use-arrows-always-p
1704 :initarg :use-arrows-always
1707 :allocation :virtual
1708 :location ("gtk_combo_get_case_sensitive" "gtk_combo_set_case_sensitive")
1709 :accessor combo-case-sensitive-p
1710 :initarg :case-sensitive
1712 (:metaclass widget-class)
1713 (:alien-name "GtkCombo"))
1716 (defclass spin-button (entry)
1719 :accessor spin-button-adjustment
1720 :initarg :adjustment
1724 :accessor spin-button-climb-rate
1725 :initarg :climb-rate
1729 :accessor spin-button-digits
1734 :accessor spin-button-snap-to-ticks-p
1735 :initarg :snap-to-ticks
1739 :accessor spin-button-numeric-p
1744 :accessor spin-button-wrap-p
1749 :accessor spin-button-update-policy
1750 :initarg :update-policy
1751 :type spin-button-update-policy)
1754 :accessor spin-button-shadow-type
1755 :initarg :shadow-type
1759 :accessor spin-button-value
1761 :type single-float))
1762 (:metaclass widget-class)
1763 (:alien-name "GtkSpinButton"))
1767 ; (defclass text editable
1769 ; ((hadjustment :access-method :arg :type adjustment)
1770 ; (vadjustment :access-method :arg :type adjustment)
1771 ; (line-wrap :read-method :arg :type boolean)
1772 ; (word-wrap :read-method :arg :type boolean)
1773 ; ;; slots not accessible through the arg mechanism
1774 ; (point :type unsigned-int)
1775 ; (length :read-only t :type unsigned-int)))
1777 (defclass ruler (widget)
1780 :accessor ruler-lower
1785 :accessor ruler-upper
1790 :accessor ruler-position
1795 :accessor ruler-max-size
1799 :allocation :virtual
1800 :location (nil "gtk_ruler_set_metric")
1801 :accessor ruler-metric
1804 (:metaclass widget-class)
1805 (:alien-name "GtkRuler"))
1808 (defclass hruler (ruler)
1810 (:metaclass widget-class)
1811 (:alien-name "GtkHRuler"))
1814 (defclass vruler (ruler)
1816 (:metaclass widget-class)
1817 (:alien-name "GtkVRuler"))
1820 (defclass range (widget)
1823 :accessor range-update-policy
1824 :initarg :update-policy
1827 :allocation :virtual
1828 :location ("gtk_range_get_adjustment" "gtk_range_set_adjustment")
1829 :accessor ruler-adjustment
1830 :initarg :adjustment
1832 (:metaclass widget-class)
1833 (:alien-name "GtkRange"))
1836 (defclass scale (range)
1839 :accessor scale-digits
1844 :accessor scale-draw-value-p
1845 :initarg :draw-value
1849 :location "GtkScale::value_pos"
1850 :accessor scale-value-position
1851 :initarg :value-position
1852 :type position-type)
1854 :allocation :virtual
1855 :location "gtk_scale_get_value_width"
1856 :reader ruler-value-width
1858 (:metaclass widget-class)
1859 (:alien-name "GtkScale"))
1862 (defclass hscale (scale)
1864 (:metaclass widget-class)
1865 (:alien-name "GtkHScale"))
1868 (defclass vscale (scale)
1870 (:metaclass widget-class)
1871 (:alien-name "GtkVScale"))
1874 (defclass scrollbar (range)
1876 (:metaclass widget-class)
1877 (:alien-name "GtkScrollbar"))
1880 (defclass hscrollbar (scrollbar)
1882 (:metaclass widget-class)
1883 (:alien-name "GtkHScrollbar"))
1886 (defclass vscrollbar (scrollbar)
1888 (:metaclass widget-class)
1889 (:alien-name "GtkVScrollbar"))
1892 (defclass separator (widget)
1894 (:metaclass widget-class)
1895 (:alien-name "GtkSeparator"))
1898 (defclass hseparator (separator)
1900 (:metaclass widget-class)
1901 (:alien-name "GtkHSeparator"))
1904 (defclass vseparator (separator)
1906 (:metaclass widget-class)
1907 (:alien-name "GtkVSeparator"))
1910 ; (defclass preview widget
1912 ; ((expand :read-method :arg :type boolean)))
1914 (defclass progress (widget)
1917 :accessor progress-activity-mode-p
1918 :initarg :activity-mode
1922 :accessor progress-show-text-p
1927 :accessor progress-text-xalign
1928 :initarg :text-xalign
1932 :accessor progress-text-yalign
1933 :initarg :text-yalign
1936 :allocation :virtual
1937 :location ("gtk_progress_get_format_string"
1938 "gtk_progress_set_format_string")
1939 :accessor progress-format-string
1940 :initarg :format-string
1943 :allocation :virtual
1944 :location ("gtk_progress_get_adjustment"
1945 "gtk_progress_set_adjustment")
1946 :accessor progress-adjustment
1947 :initarg :adjustment
1950 :allocation :virtual
1951 :location ("gtk_progress_get_current_percentage"
1952 "gtk_progress_set_percentage")
1953 :accessor progress-percentage
1954 :initarg :percentage
1957 :allocation :virtual
1958 :location ("gtk_progress_get_value" "gtk_progress_set_value")
1959 :accessor progress-value
1963 :allocation :virtual
1964 :location ("gtk_progress_get_current_text")
1965 :reader progress-text
1967 (:metaclass widget-class)
1968 (:alien-name "GtkProgress"))
1971 (defclass progress-bar (progress)
1974 :accessor progress-bar-orientation
1975 :initarg :orientation
1976 :type progress-bar-orientation)
1979 :accessor progress-bar-style
1981 :type progress-bar-style)
1984 :accessor progress-bar-activity-step
1985 :initarg :activity-step
1989 :accessor progress-bar-activity-blocks
1990 :initarg :activity-blocks
1994 :accessor progress-bar-discrete-blocks
1995 :initarg :discrete-blocks
1999 :accessor progress-bar-fraction
2004 :accessor progress-bar-pulse-step
2005 :initarg :pulse-step
2008 :allocation :virtual
2009 :location ("gtk_progress_get_current_text" "gtk_progress_bar_set_text")
2010 :accessor progress-bar-text
2012 (:metaclass widget-class)
2013 (:alien-name "GtkProgressBar"))
2015 ; (defclass item-factory object)