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.4 2000-10-05 17:30:07 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)
522 :location button-label
527 :accessor button-relief
530 (:metaclass container-class)
531 (:alien-name "GtkButton"))
533 (defclass button-child (bin-child)
535 (:metaclass child-class))
538 (defclass toggle-button (button)
541 :accessor toggle-button-active-p
546 :accessor toggle-button-draw-indicator-p
547 :initarg :draw-indicator
549 (:metaclass container-class)
550 (:alien-name "GtkToggleButton"))
552 (defclass toggle-button-child (button-child)
554 (:metaclass child-class))
557 (defclass check-button (toggle-button)
559 (:metaclass container-class)
560 (:alien-name "GtkCheckButton"))
562 (defclass check-button-child (toggle-button-child)
564 (:metaclass child-class))
567 (defclass radio-button (check-button)
570 :location ("gtk_radio_button_group")
571 :reader radio-button-group
572 :type (static (gslist widget))))
573 (:metaclass container-class)
574 (:alien-name "GtkRadioButton"))
576 (defclass radio-button-child (check-button-child)
578 (:metaclass child-class))
581 (defclass option-menu (button)
584 :location ("gtk_option_menu_get_menu" (setf option-menu-menu))
585 :reader option-menu-menu
590 :location (nil "gtk_option_menu_set_history")
591 :writer (setf option-menu-history)
594 (:metaclass container-class)
595 (:alien-name "GtkOptionMenu"))
597 (defclass option-menu-child (button-child)
599 (:metaclass child-class))
604 (:metaclass container-class)
605 (:alien-name "GtkItem"))
607 (defclass item-child (bin-child)
609 (:metaclass child-class))
611 ;; Forward declaration
612 (defclass menu-item (item)
614 (:metaclass container-class)
615 (:alien-name "GtkMenuItem"))
617 (defclass menu-item (item)
620 :location menu-item-label
625 :location ("gtk_menu_item_get_submenu" (setf menu-item-submenu))
626 :reader menu-item-submenu
631 :location ("gtk_menu_item_get_placement" "gtk_menu_item_set_placement")
632 :accessor menu-item-placement
634 :type submenu-placement)
637 :location ("gtk_menu_item_get_show_toggle"
638 (setf menu-item-toggle-indicator-p))
639 :reader menu-item-toggle-indicator-p
640 :initarg :toggle-indicator
644 :location ("gtk_menu_item_get_show_submenu"
645 (setf menu-item-submenu-indicator-p))
646 :reader menu-item-submenu-indicator-p
647 :initarg :submenu-indicator
649 (:metaclass container-class)
650 (:alien-name "GtkMenuItem"))
652 (defclass menu-item-child (item-child)
654 (:metaclass child-class))
657 (defclass check-menu-item (menu-item)
660 :location ("gtk_check_menu_item_get_active"
661 "gtk_check_menu_item_set_active")
662 :accessor check-menu-item-active-p
667 :location ("gtk_check_menu_item_get_show_toggle"
668 "gtk_check_menu_item_set_show_toggle")
669 :accessor check-menu-item-toggle-indicator-p
670 :initarg :toggle-indicator
672 (:metaclass container-class)
673 (:alien-name "GtkCheckMenuItem"))
675 (defclass check-menu-item-child (menu-item-child)
677 (:metaclass child-class))
680 (defclass radio-menu-item (check-menu-item)
683 :location ("gtk_radio_menu_item_group")
684 :reader radio-menu-item-group
685 :type (static (gslist widget))))
686 (:metaclass container-class)
687 (:alien-name "GtkRadioMenuItem"))
689 (defclass radio-menu-item-child (check-menu-item-child)
691 (:metaclass child-class))
694 (defclass tearoff-menu-item (menu-item)
696 (:metaclass container-class)
697 (:alien-name "GtkTearoffMenuItem"))
699 (defclass tearoff-menu-item-child (menu-item-child)
701 (:metaclass child-class))
704 (defclass list-item (item)
706 (:metaclass container-class)
707 (:alien-name "GtkListItem"))
709 (defclass list-item-child (item-child)
711 (:metaclass child-class))
715 (defclass tree-item (item)
718 ; ;; slots not accessible through the arg mechanism
719 ; ((subtree :write-method :lisp :type tree-item)))
720 (:metaclass container-class)
721 (:alien-name "GtkTreeItem"))
723 (defclass tree-item-child (item-child)
725 (:metaclass child-class))
728 (defclass window (bin)
731 :accessor window-type
736 :accessor window-title
741 :accessor window-auto-shrink-p
742 :initarg :auto-shrink
746 :accessor window-allow-shrink-p
747 :initarg :allow-shrink
751 :accessor window-allow-grow-p
756 :accessor window-modal-p
761 :location "GtkWindow::window_position"
762 :accessor window-position
764 :type window-position)
767 :accessor window-default-width
768 :initarg :default-width
772 :accessor window-default-height
773 :initarg :default-height
775 (:metaclass container-class)
776 (:alien-name "GtkWindow"))
778 (defclass window-child (bin-child)
780 (:metaclass child-class))
783 (defclass dialog (window)
786 :reader dialog-main-box
790 :reader dialog-action-area
792 (:metaclass container-class)
793 (:alien-name "GtkDialog"))
795 (defclass dialog-child (window-child)
797 (:metaclass child-class))
800 (defclass color-selection-dialog (dialog)
803 :reader color-selection-dialog-colorsel
807 :reader color-selection-dialog-ok-button
811 :reader color-selection-dialog-cancel-button
815 :reader color-selection-dialog-help-button
817 (:metaclass container-class)
818 (:alien-name "GtkColorSelectionDialog"))
820 (defclass color-selection-dialog-child (dialog-child)
822 (:metaclass child-class))
825 (defclass input-dialog (dialog)
827 (:metaclass container-class)
828 (:alien-name "GtkInputDialog"))
830 (defclass input-dialog-child (dialog-child)
832 (:metaclass child-class))
835 (defclass file-selection (window)
838 :location ("gtk_file_selection_get_filename"
839 "gtk_file_selection_set_filename")
840 :accessor file-selection-filename
845 :location "gtk_file_selection_get_action_area"
846 :reader file-selection-action-area
850 :location "gtk_file_selection_get_ok_button"
851 :reader file-selection-ok-button
855 :location "gtk_file_selection_get_cancel_button"
856 :reader file-selection-cancel-button
858 (:metaclass container-class)
859 (:alien-name "GtkFileSelection"))
861 (defclass file-selection-child (window-child)
863 (:metaclass child-class))
866 ; (defclass plug window)
869 (defclass event-box (bin)
871 (:metaclass container-class)
872 (:alien-name "GtkEventBox"))
874 (defclass event-box-child (bin-child)
876 (:metaclass child-class))
879 (defclass handle-box (bin)
882 :location "GtkHandleBox::shadow"
883 :accessor handle-box-shadow-type
884 :initarg :shadow-type
888 :accessor handle-box-handle-position
889 :initarg :handle-position
893 :accessor handle-box-snap-edge
895 :type position-type))
896 (:metaclass container-class)
897 (:alien-name "GtkHandleBox"))
899 (defclass handle-box-child (bin-child)
901 (:metaclass child-class))
904 (defclass scrolled-window (bin)
907 :accessor scrolled-window-hadjustment
908 :initarg :hadjustment
912 :accessor scrolled-window-vadjustment
913 :initarg :vadjustment
917 :accessor scrolled-window-hscrollbar-policy
918 :initarg :hscrollbar-policy
922 :accessor scrolled-window-vscrollbar-policy
923 :initarg :vscrollbar-policy
927 :location "GtkScrolledWindow::window_placement"
928 :accessor scrolled-window-placement
933 :location "GtkScrolledWindow::shadow"
934 :accessor scrolled-window-shadow-type
935 :initarg :shadow-type
939 :location "gtk_scrolled_window_get_hscrollbar"
940 :accessor scrolled-window-hscrollbar
944 :location "gtk_scrolled_window_get_vscrollbar"
945 :accessor scrolled-window-vscrollbar
947 (:metaclass container-class)
948 (:alien-name "GtkScrolledWindow"))
950 (defclass scrolled-window-child (bin-child)
952 (:metaclass child-class))
955 (defclass viewport (bin)
958 :accessor viewport-hadjustment
959 :initarg :hadjustment
963 :accessor viewport-vadjustment
964 :initarg :vadjustment
968 :accessor viewport-shadow-type
969 :initarg :shadow-type
971 (:metaclass container-class)
972 (:alien-name "GtkViewport"))
974 (defclass viewport-child (bin-child)
976 (:metaclass child-class))
979 (defclass box (container)
982 :accessor box-spacing
987 :accessor box-homogeneous-p
988 :initarg :homogeneous
990 (:metaclass container-class)
991 (:alien-name "GtkBox"))
993 (defclass box-child (container-child)
996 :accessor box-child-expand-p
1001 :accessor box-child-fill-p
1006 :accessor box-child-padding
1008 :type unsigned-long)
1011 :accessor box-child-pack-type
1016 :accessor box-child-position
1019 (:metaclass child-class))
1022 (defclass button-box (box)
1024 :allocation :virtual
1025 :location ("gtk_button_box_get_spacing" "gtk_button_box_set_spacing")
1026 :accessor button-box-spacing
1031 :offset #.(size-of 'int)
1032 :accessor button-box-child-min-width
1033 :initarg :child-min-width
1037 :accessor button-box-child-min-height
1038 :initarg :child-min-height
1042 :accessor button-box-child-ipad-x
1043 :initarg :child-ipad-x
1047 :accessor button-box-child-ipad-y
1048 :initarg :child-ipad-y
1051 :allocation :virtual
1052 :location ("gtk_button_box_get_layout" "gtk_button_box_set_layout")
1053 :accessor button-box-layout
1055 :type button-box-style))
1056 (:metaclass container-class)
1057 (:alien-name "GtkButtonBox"))
1059 (defclass button-box-child (box-child)
1061 (:metaclass child-class))
1064 (defclass hbutton-box (button-box)
1066 (:metaclass container-class)
1067 (:alien-name "GtkHButtonBox"))
1069 (defclass hbutton-box-child (button-box-child)
1071 (:metaclass child-class))
1074 (defclass vbutton-box (button-box)
1076 (:metaclass container-class)
1077 (:alien-name "GtkVButtonBox"))
1079 (defclass vbutton-box-child (button-box-child)
1081 (:metaclass child-class))
1084 (defclass vbox (box)
1086 (:metaclass container-class)
1087 (:alien-name "GtkVBox"))
1089 (defclass vbox-child (box-child)
1091 (:metaclass child-class))
1094 (defclass color-selection (vbox)
1096 :allocation :virtual
1097 :location ("gtk_color_selection_get_use_opacity"
1098 "gtk_color_selection_set_use_opacity")
1099 :accessor color-selection-use-opacity-p
1100 :initarg :use-opacity
1103 :allocation :virtual
1104 :location ("gtk_color_selection_get_use_palette"
1105 "gtk_color_selection_set_use_palette")
1106 :accessor color-selection-use-palette-p
1107 :initarg :use-palette
1110 :allocation :virtual
1111 :location color-selection-color
1114 :allocation :virtual
1115 :location color-selection-old-color
1117 :type (vector double-float 4)))
1118 (:metaclass container-class)
1119 (:alien-name "GtkColorSelection"))
1121 (defclass color-selection-child (vbox-child)
1123 (:metaclass child-class))
1126 (defclass hbox (box)
1128 (:metaclass container-class)
1129 (:alien-name "GtkHBox"))
1131 (defclass hbox-child (box-child)
1133 (:metaclass child-class))
1136 (defclass statusbar (hbox)
1138 (:metaclass container-class)
1139 (:alien-name "GtkStatusbar"))
1141 (defclass statusbar-child (hbox-child)
1143 (:metaclass child-class))
1146 (defclass fixed (container)
1148 (:metaclass container-class)
1149 (:alien-name "GtkFixed"))
1151 (defclass fixed-child (container-child)
1153 (:metaclass child-class))
1156 (defclass notebook (container)
1159 :accessor notebook-tab-pos
1161 :type position-type)
1164 :accessor notebook-show-tabs-p
1169 :accessor notebook-show-border-p
1170 :initarg :show-border
1174 :accessor notebook-scrollable-p
1175 :initarg :scrollable
1179 :accessor notebook-tab-border
1180 :initarg :tab-border
1184 :accessor notebook-tab-hborder
1185 :initarg :tab-hborder
1189 :accessor notebook-tab-vborder
1190 :initarg :tab-vborder
1194 :accessor notebook-page
1199 :accessor notebook-enable-popup-p
1200 :initarg :enable-popup
1204 :accessor notebook-homogeneous-p
1205 :initarg :homogeneous
1207 (:metaclass container-class)
1208 (:alien-name "GtkNotebook"))
1210 (defclass notebook-child (container-child)
1213 :accessor notebook-child-tab-label
1218 :accessor notebook-child-menu-label
1219 :initarg :menu-label
1223 :accessor notebook-child-position
1228 :accessor notebook-child-tab-fill-p
1233 :accessor notebook-child-tab-pack-p
1236 (:metaclass child-class))
1239 (defclass font-selection (notebook)
1241 (:metaclass container-class)
1242 (:alien-name "GtkFontSelection"))
1244 (defclass font-selection-child (notebook-child)
1246 (:metaclass child-class))
1249 (defclass paned (container)
1252 :accessor paned-handle-size
1253 :initarg handle-size
1256 :allocation :virtual
1257 :location ("gtk_paned_get_position" "gtk_paned_set_position")
1258 :accessor paned-position
1262 :allocation :virtual
1263 :location paned-child1
1267 :allocation :virtual
1268 :location paned-child2
1271 (:metaclass container-class)
1272 (:alien-name "GtkPaned"))
1274 (defclass paned-child (container-child)
1276 (:metaclass child-class))
1279 (defclass hpaned (paned)
1281 (:metaclass container-class)
1282 (:alien-name "GtkHPaned"))
1284 (defclass hpaned-child (paned-child)
1286 (:metaclass child-class))
1289 (defclass vpaned (paned)
1291 (:metaclass container-class)
1292 (:alien-name "GtkVPaned"))
1294 (defclass vpaned-child (paned-child)
1296 (:metaclass child-class))
1299 (defclass layout (container)
1301 :allocation :virtual
1302 :location ("gtk_layout_get_hadjustment" "gtk_layout_set_hadjustment")
1303 :accessor layout-hadjustment
1304 :initarg :hadjustment
1307 :allocation :virtual
1308 :location ("gtk_layout_get_vadjustment" "gtk_layout_set_vadjustment")
1309 :accessor layout-vadjustment
1310 :initarg :vadjustment
1313 :allocation :virtual
1314 :location layout-x-size
1317 :allocation :virtual
1318 :location layout-y-size
1322 :offset #.(+ (size-of 'pointer) (* (size-of 'int) 2))
1323 :accessor layout-x-offset
1328 :accessor layout-y-offset
1330 :type unsigned-int))
1331 (:metaclass container-class)
1332 (:alien-name "GtkLayout"))
1334 (defclass layout-child (container-child)
1336 (:metaclass child-class))
1339 ; (defclass list-widget container
1342 ; ((selection-mode :read-method :arg :accessor list-selection-mode
1343 ; :c-writer "gtk_list_set_selection_mode"
1344 ; :type selection-mode)))
1347 (defclass menu-shell (container)
1349 (:metaclass container-class)
1350 (:alien-name "GtkMenuShell"))
1352 (defclass menu-shell-child (container-child)
1354 (:metaclass child-class))
1357 (defclass menu-bar (menu-shell)
1360 :location "GtkMenuBar::shadow"
1361 :accessor menu-bar-shadow-type
1362 :initarg :shadow-type
1364 (:metaclass container-class)
1365 (:alien-name "GtkMenuBar"))
1367 (defclass menu-bar-child (menu-shell-child)
1369 (:metaclass child-class))
1372 (defclass menu (menu-shell)
1374 :allocation :virtual
1375 :location ("gtk_menu_get_accel_group" "gtk_menu_set_accel_group")
1376 :accessor menu-accel-group
1377 :initarg :accel-group
1380 :allocation :virtual
1381 :location ("gtk_menu_get_tearoff_state" "gtk_menu_set_tearoff_state")
1382 :accessor menu-tornoff-p
1386 :allocation :virtual
1387 :location ("gtk_menu_get_title" "gtk_menu_set_title")
1388 :accessor menu-title
1391 (:metaclass container-class)
1392 (:alien-name "GtkMenu"))
1394 (defclass menu-child (menu-shell-child)
1396 (:metaclass child-class))
1399 (defclass packer (container)
1402 :accessor packer-spacing
1405 (default-border-width
1407 :accessor packer-default-border-width
1408 :initarg :default-border-width
1412 :accessor packer-default-pad-x
1413 :initarg :default-pad-x
1417 :accessor packer-default-pad-y
1418 :initarg :default-pad-y
1422 :accessor packer-default-ipad-x
1423 :initarg :default-ipad-x
1427 :accessor packer-default-ipad-y
1428 :initarg :default-ipad-y
1429 :type unsigned-int))
1430 (:metaclass container-class)
1431 (:alien-name "GtkPacker"))
1433 (defclass packer-child (container-child)
1436 :accessor packer-child-side
1441 :accessor packer-child-anchor
1446 :accessor packer-child-expand-p
1451 :accessor packer-child-fill-x-p
1456 :accessor packer-child-fill-y-p
1461 :accessor packer-child-use-default
1466 :accessor packer-child-border-width
1471 :accessor packer-child-pad-x
1476 :accessor packer-child-pad-y
1481 :accessor packer-child-ipad-x
1486 :accessor packer-child-ipad-y
1491 :accessor packer-child-position
1494 (:metaclass child-class))
1497 ;(defclass socket (container))
1500 (defclass table (container)
1503 :location "GtkTable::n_rows"
1504 :accessor table-rows
1509 :location "GtkTable::n_columns"
1510 :accessor table-columns
1515 :accessor table-default-row-spacing
1516 :initarg :row-spacing
1520 :accessor table-default-column-spacing
1521 :initarg :column-spacing
1525 :accessor table-homogeneous-p
1526 :initarg :homogeneous
1528 (:metaclass container-class)
1529 (:alien-name "GtkTable"))
1531 (defclass table-child (container-child)
1534 :accessor table-child-left-attach
1535 :initarg :left-attach
1539 :accessor table-child-right-attach
1540 :initarg :right-attach
1544 :accessor table-child-top-attach
1545 :initarg :top-attach
1549 :accessor table-child-bottom-attach
1550 :initarg :bottom-attach
1554 :accessor table-child-x-options
1556 :type attach-options)
1559 :accessor table-child-y-options
1561 :type attach-options)
1564 :accessor table-child-x-padding
1569 :accessor table-child-y-padding
1574 :allocation :virtual
1575 :location table-child-x-expand-p
1579 :allocation :virtual
1580 :location table-child-y-expand-p
1584 :allocation :virtual
1585 :location table-child-x-shrink-p
1589 :allocation :virtual
1590 :location table-child-y-shrink-p
1594 :allocation :virtual
1595 :location table-child-x-fill-p
1599 :allocation :virtual
1600 :location table-child-y-fill-p
1603 (:metaclass child-class))
1606 (defclass toolbar (container)
1609 :accessor toolbar-orientation
1610 :initarg :orientation
1614 :accessor toolbar-style
1615 :initarg :toolbar-style
1616 :type toolbar-style)
1619 :accessor toolbar-space-size
1620 :initarg :space-size
1624 :accessor toolbar-space-style
1625 :initarg :space-style
1626 :type toolbar-space-style)
1629 :accessor toolbar-relief
1633 :allocation :virtual
1634 :location ("gtk_toolbar_get_tooltips" "gtk_toolbar_set_tooltips")
1635 :accessor toolbar-tooltips-p
1638 (:metaclass container-class)
1639 (:alien-name "GtkToolbar"))
1641 (defclass toolbar-child (container-child)
1643 (:metaclass child-class))
1647 (defclass tree (container)
1650 ; ;; slots not accessible through the arg mechanism
1651 ; ((selection-mode :type selection-mode)
1652 ; (view-mode :type tree-view-mode)
1653 ; (view-lines :type boolean)
1654 ; (root-tree :read-only t :type tree)))
1655 (:metaclass container-class)
1656 (:alien-name "GtkTree"))
1659 (defclass calendar (widget)
1661 (:metaclass widget-class)
1662 (:alien-name "GtkCalendar"))
1665 (defclass drawing-area (widget)
1667 (:metaclass widget-class)
1668 (:alien-name "GtkDrawingArea"))
1670 ; (defclass curve drawing-area
1672 ; ((curve-type :read-method :arg :type curve-type)
1673 ; (min-x :access-method :arg :type single-float)
1674 ; (max-x :access-method :arg :type single-float)
1675 ; (min-y :access-method :arg :type single-float)
1676 ; (max-y :access-method :arg :type single-float)))
1678 (defclass editable (widget)
1681 :location "GtkEditable::text_position"
1682 :accessor ediatable-position
1687 :accessor editable-editable-p
1691 :allocation :virtual
1692 :location editable-text
1695 (:metaclass widget-class)
1696 (:alien-name "GtkEditable"))
1699 (defclass entry (editable)
1702 :accessor entry-max-length
1703 :initarg :max-length
1707 :location "GtkEntry::visibility"
1708 :accessor entry-visible-p
1711 (:metaclass widget-class)
1712 (:alien-name "GtkEntry"))
1715 (defclass combo (hbox)
1717 :allocation :virtual
1718 :location "gtk_combo_get_entry"
1722 :allocation :virtual
1723 :location ("gtk_combo_get_use_arrows" "gtk_combo_set_use_arrows")
1724 :accessor combo-use-arrows-p
1725 :initarg :use-arrows
1728 :allocation :virtual
1730 ("gtk_combo_get_use_arrows_always" "gtk_combo_set_use_arrows_always")
1731 :accessor combo-use-arrows-always-p
1732 :initarg :use-arrows-always
1735 :allocation :virtual
1736 :location ("gtk_combo_get_case_sensitive" "gtk_combo_set_case_sensitive")
1737 :accessor combo-case-sensitive-p
1738 :initarg :case-sensitive
1740 (:metaclass widget-class)
1741 (:alien-name "GtkCombo"))
1744 (defclass spin-button (entry)
1747 :accessor spin-button-adjustment
1748 :initarg :adjustment
1752 :accessor spin-button-climb-rate
1753 :initarg :climb-rate
1757 :accessor spin-button-digits
1762 :accessor spin-button-snap-to-ticks-p
1763 :initarg :snap-to-ticks
1767 :accessor spin-button-numeric-p
1772 :accessor spin-button-wrap-p
1777 :accessor spin-button-update-policy
1778 :initarg :update-policy
1779 :type spin-button-update-policy)
1782 :accessor spin-button-shadow-type
1783 :initarg :shadow-type
1787 :accessor spin-button-value
1789 :type single-float))
1790 (:metaclass widget-class)
1791 (:alien-name "GtkSpinButton"))
1795 ; (defclass text editable
1797 ; ((hadjustment :access-method :arg :type adjustment)
1798 ; (vadjustment :access-method :arg :type adjustment)
1799 ; (line-wrap :read-method :arg :type boolean)
1800 ; (word-wrap :read-method :arg :type boolean)
1801 ; ;; slots not accessible through the arg mechanism
1802 ; (point :type unsigned-int)
1803 ; (length :read-only t :type unsigned-int)))
1805 (defclass ruler (widget)
1808 :accessor ruler-lower
1813 :accessor ruler-upper
1818 :accessor ruler-position
1823 :accessor ruler-max-size
1827 :allocation :virtual
1828 :location (nil "gtk_ruler_set_metric")
1829 :accessor ruler-metric
1832 (:metaclass widget-class)
1833 (:alien-name "GtkRuler"))
1836 (defclass hruler (ruler)
1838 (:metaclass widget-class)
1839 (:alien-name "GtkHRuler"))
1842 (defclass vruler (ruler)
1844 (:metaclass widget-class)
1845 (:alien-name "GtkVRuler"))
1848 (defclass range (widget)
1851 :accessor range-update-policy
1852 :initarg :update-policy
1855 :allocation :virtual
1856 :location ("gtk_range_get_adjustment" "gtk_range_set_adjustment")
1857 :accessor ruler-adjustment
1858 :initarg :adjustment
1860 (:metaclass widget-class)
1861 (:alien-name "GtkRange"))
1864 (defclass scale (range)
1867 :accessor scale-digits
1872 :accessor scale-draw-value-p
1873 :initarg :draw-value
1877 :location "GtkScale::value_pos"
1878 :accessor scale-value-position
1879 :initarg :value-position
1880 :type position-type)
1882 :allocation :virtual
1883 :location "gtk_scale_get_value_width"
1884 :reader ruler-value-width
1886 (:metaclass widget-class)
1887 (:alien-name "GtkScale"))
1890 (defclass hscale (scale)
1892 (:metaclass widget-class)
1893 (:alien-name "GtkHScale"))
1896 (defclass vscale (scale)
1898 (:metaclass widget-class)
1899 (:alien-name "GtkVScale"))
1902 (defclass scrollbar (range)
1904 (:metaclass widget-class)
1905 (:alien-name "GtkScrollbar"))
1908 (defclass hscrollbar (scrollbar)
1910 (:metaclass widget-class)
1911 (:alien-name "GtkHScrollbar"))
1914 (defclass vscrollbar (scrollbar)
1916 (:metaclass widget-class)
1917 (:alien-name "GtkVScrollbar"))
1920 (defclass separator (widget)
1922 (:metaclass widget-class)
1923 (:alien-name "GtkSeparator"))
1926 (defclass hseparator (separator)
1928 (:metaclass widget-class)
1929 (:alien-name "GtkHSeparator"))
1932 (defclass vseparator (separator)
1934 (:metaclass widget-class)
1935 (:alien-name "GtkVSeparator"))
1938 ; (defclass preview widget
1940 ; ((expand :read-method :arg :type boolean)))
1942 (defclass progress (widget)
1945 :accessor progress-activity-mode-p
1946 :initarg :activity-mode
1950 :accessor progress-show-text-p
1955 :accessor progress-text-xalign
1956 :initarg :text-xalign
1960 :accessor progress-text-yalign
1961 :initarg :text-yalign
1964 :allocation :virtual
1965 :location ("gtk_progress_get_format_string"
1966 "gtk_progress_set_format_string")
1967 :accessor progress-format-string
1968 :initarg :format-string
1971 :allocation :virtual
1972 :location ("gtk_progress_get_adjustment"
1973 "gtk_progress_set_adjustment")
1974 :accessor progress-adjustment
1975 :initarg :adjustment
1978 :allocation :virtual
1979 :location ("gtk_progress_get_current_percentage"
1980 "gtk_progress_set_percentage")
1981 :accessor progress-percentage
1982 :initarg :percentage
1985 :allocation :virtual
1986 :location ("gtk_progress_get_value" "gtk_progress_set_value")
1987 :accessor progress-value
1991 :allocation :virtual
1992 :location ("gtk_progress_get_current_text")
1993 :reader progress-text
1995 (:metaclass widget-class)
1996 (:alien-name "GtkProgress"))
1999 (defclass progress-bar (progress)
2002 :accessor progress-bar-orientation
2003 :initarg :orientation
2004 :type progress-bar-orientation)
2007 :accessor progress-bar-style
2009 :type progress-bar-style)
2012 :accessor progress-bar-activity-step
2013 :initarg :activity-step
2017 :accessor progress-bar-activity-blocks
2018 :initarg :activity-blocks
2022 :accessor progress-bar-discrete-blocks
2023 :initarg :discrete-blocks
2027 :accessor progress-bar-fraction
2032 :accessor progress-bar-pulse-step
2033 :initarg :pulse-step
2036 :allocation :virtual
2037 :location ("gtk_progress_get_current_text" "gtk_progress_bar_set_text")
2038 :accessor progress-bar-text
2040 (:metaclass widget-class)
2041 (:alien-name "GtkProgressBar"))
2043 ; (defclass item-factory object)