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.5 2001-01-28 14:21:04 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))
714 (defclass tree-item (item)
717 ; ;; slots not accessible through the arg mechanism
718 ; ((subtree :write-method :lisp :type tree-item)))
719 (:metaclass container-class)
720 (:alien-name "GtkTreeItem"))
722 (defclass tree-item-child (item-child)
724 (:metaclass child-class))
727 (defclass window (bin)
730 :accessor window-type
735 :accessor window-title
740 :accessor window-auto-shrink-p
741 :initarg :auto-shrink
745 :accessor window-allow-shrink-p
746 :initarg :allow-shrink
750 :accessor window-allow-grow-p
755 :accessor window-modal-p
760 :location "GtkWindow::window_position"
761 :accessor window-position
763 :type window-position)
766 :accessor window-default-width
767 :initarg :default-width
771 :accessor window-default-height
772 :initarg :default-height
774 (:metaclass container-class)
775 (:alien-name "GtkWindow"))
777 (defclass window-child (bin-child)
779 (:metaclass child-class))
782 (defclass dialog (window)
785 :reader dialog-main-box
789 :reader dialog-action-area
791 (:metaclass container-class)
792 (:alien-name "GtkDialog"))
794 (defclass dialog-child (window-child)
796 (:metaclass child-class))
799 (defclass color-selection-dialog (dialog)
802 :reader color-selection-dialog-colorsel
806 :reader color-selection-dialog-ok-button
810 :reader color-selection-dialog-cancel-button
814 :reader color-selection-dialog-help-button
816 (:metaclass container-class)
817 (:alien-name "GtkColorSelectionDialog"))
819 (defclass color-selection-dialog-child (dialog-child)
821 (:metaclass child-class))
824 (defclass input-dialog (dialog)
826 (:metaclass container-class)
827 (:alien-name "GtkInputDialog"))
829 (defclass input-dialog-child (dialog-child)
831 (:metaclass child-class))
834 (defclass file-selection (window)
837 :location ("gtk_file_selection_get_filename"
838 "gtk_file_selection_set_filename")
839 :accessor file-selection-filename
844 :location "gtk_file_selection_get_action_area"
845 :reader file-selection-action-area
849 :location "gtk_file_selection_get_ok_button"
850 :reader file-selection-ok-button
854 :location "gtk_file_selection_get_cancel_button"
855 :reader file-selection-cancel-button
857 (:metaclass container-class)
858 (:alien-name "GtkFileSelection"))
860 (defclass file-selection-child (window-child)
862 (:metaclass child-class))
865 ; (defclass plug window)
868 (defclass event-box (bin)
870 (:metaclass container-class)
871 (:alien-name "GtkEventBox"))
873 (defclass event-box-child (bin-child)
875 (:metaclass child-class))
878 (defclass handle-box (bin)
881 :location "GtkHandleBox::shadow"
882 :accessor handle-box-shadow-type
883 :initarg :shadow-type
887 :accessor handle-box-handle-position
888 :initarg :handle-position
892 :accessor handle-box-snap-edge
894 :type position-type))
895 (:metaclass container-class)
896 (:alien-name "GtkHandleBox"))
898 (defclass handle-box-child (bin-child)
900 (:metaclass child-class))
903 (defclass scrolled-window (bin)
906 :accessor scrolled-window-hadjustment
907 :initarg :hadjustment
911 :accessor scrolled-window-vadjustment
912 :initarg :vadjustment
916 :accessor scrolled-window-hscrollbar-policy
917 :initarg :hscrollbar-policy
921 :accessor scrolled-window-vscrollbar-policy
922 :initarg :vscrollbar-policy
926 :location "GtkScrolledWindow::window_placement"
927 :accessor scrolled-window-placement
932 :location "GtkScrolledWindow::shadow"
933 :accessor scrolled-window-shadow-type
934 :initarg :shadow-type
938 :location "gtk_scrolled_window_get_hscrollbar"
939 :accessor scrolled-window-hscrollbar
943 :location "gtk_scrolled_window_get_vscrollbar"
944 :accessor scrolled-window-vscrollbar
946 (:metaclass container-class)
947 (:alien-name "GtkScrolledWindow"))
949 (defclass scrolled-window-child (bin-child)
951 (:metaclass child-class))
954 (defclass viewport (bin)
957 :accessor viewport-hadjustment
958 :initarg :hadjustment
962 :accessor viewport-vadjustment
963 :initarg :vadjustment
967 :accessor viewport-shadow-type
968 :initarg :shadow-type
970 (:metaclass container-class)
971 (:alien-name "GtkViewport"))
973 (defclass viewport-child (bin-child)
975 (:metaclass child-class))
978 (defclass box (container)
981 :accessor box-spacing
986 :accessor box-homogeneous-p
987 :initarg :homogeneous
989 (:metaclass container-class)
990 (:alien-name "GtkBox"))
992 (defclass box-child (container-child)
995 :accessor box-child-expand-p
1000 :accessor box-child-fill-p
1005 :accessor box-child-padding
1007 :type unsigned-long)
1010 :accessor box-child-pack-type
1015 :accessor box-child-position
1018 (:metaclass child-class))
1021 (defclass button-box (box)
1023 :allocation :virtual
1024 :location ("gtk_button_box_get_spacing" "gtk_button_box_set_spacing")
1025 :accessor button-box-spacing
1030 :offset #.(size-of 'int)
1031 :accessor button-box-child-min-width
1032 :initarg :child-min-width
1036 :accessor button-box-child-min-height
1037 :initarg :child-min-height
1041 :accessor button-box-child-ipad-x
1042 :initarg :child-ipad-x
1046 :accessor button-box-child-ipad-y
1047 :initarg :child-ipad-y
1050 :allocation :virtual
1051 :location ("gtk_button_box_get_layout" "gtk_button_box_set_layout")
1052 :accessor button-box-layout
1054 :type button-box-style))
1055 (:metaclass container-class)
1056 (:alien-name "GtkButtonBox"))
1058 (defclass button-box-child (box-child)
1060 (:metaclass child-class))
1063 (defclass hbutton-box (button-box)
1065 (:metaclass container-class)
1066 (:alien-name "GtkHButtonBox"))
1068 (defclass hbutton-box-child (button-box-child)
1070 (:metaclass child-class))
1073 (defclass vbutton-box (button-box)
1075 (:metaclass container-class)
1076 (:alien-name "GtkVButtonBox"))
1078 (defclass vbutton-box-child (button-box-child)
1080 (:metaclass child-class))
1083 (defclass vbox (box)
1085 (:metaclass container-class)
1086 (:alien-name "GtkVBox"))
1088 (defclass vbox-child (box-child)
1090 (:metaclass child-class))
1093 (defclass color-selection (vbox)
1095 :allocation :virtual
1096 :location ("gtk_color_selection_get_use_opacity"
1097 "gtk_color_selection_set_use_opacity")
1098 :accessor color-selection-use-opacity-p
1099 :initarg :use-opacity
1102 :allocation :virtual
1103 :location ("gtk_color_selection_get_use_palette"
1104 "gtk_color_selection_set_use_palette")
1105 :accessor color-selection-use-palette-p
1106 :initarg :use-palette
1109 :allocation :virtual
1110 :location color-selection-color
1113 :allocation :virtual
1114 :location color-selection-old-color
1116 :type (vector double-float 4)))
1117 (:metaclass container-class)
1118 (:alien-name "GtkColorSelection"))
1120 (defclass color-selection-child (vbox-child)
1122 (:metaclass child-class))
1125 (defclass hbox (box)
1127 (:metaclass container-class)
1128 (:alien-name "GtkHBox"))
1130 (defclass hbox-child (box-child)
1132 (:metaclass child-class))
1135 (defclass statusbar (hbox)
1137 (:metaclass container-class)
1138 (:alien-name "GtkStatusbar"))
1140 (defclass statusbar-child (hbox-child)
1142 (:metaclass child-class))
1145 (defclass fixed (container)
1147 (:metaclass container-class)
1148 (:alien-name "GtkFixed"))
1150 (defclass fixed-child (container-child)
1152 (:metaclass child-class))
1155 (defclass notebook (container)
1158 :accessor notebook-tab-pos
1160 :type position-type)
1163 :accessor notebook-show-tabs-p
1168 :accessor notebook-show-border-p
1169 :initarg :show-border
1173 :accessor notebook-scrollable-p
1174 :initarg :scrollable
1178 :accessor notebook-tab-border
1179 :initarg :tab-border
1183 :accessor notebook-tab-hborder
1184 :initarg :tab-hborder
1188 :accessor notebook-tab-vborder
1189 :initarg :tab-vborder
1193 :accessor notebook-page
1198 :accessor notebook-enable-popup-p
1199 :initarg :enable-popup
1203 :accessor notebook-homogeneous-p
1204 :initarg :homogeneous
1206 (:metaclass container-class)
1207 (:alien-name "GtkNotebook"))
1209 (defclass notebook-child (container-child)
1212 :accessor notebook-child-tab-label
1217 :accessor notebook-child-menu-label
1218 :initarg :menu-label
1222 :accessor notebook-child-position
1227 :accessor notebook-child-tab-fill-p
1232 :accessor notebook-child-tab-pack-p
1235 (:metaclass child-class))
1238 (defclass font-selection (notebook)
1240 (:metaclass container-class)
1241 (:alien-name "GtkFontSelection"))
1243 (defclass font-selection-child (notebook-child)
1245 (:metaclass child-class))
1248 (defclass paned (container)
1251 :accessor paned-handle-size
1252 :initarg handle-size
1255 :allocation :virtual
1256 :location ("gtk_paned_get_position" "gtk_paned_set_position")
1257 :accessor paned-position
1261 :allocation :virtual
1262 :location paned-child1
1266 :allocation :virtual
1267 :location paned-child2
1270 (:metaclass container-class)
1271 (:alien-name "GtkPaned"))
1273 (defclass paned-child (container-child)
1275 (:metaclass child-class))
1278 (defclass hpaned (paned)
1280 (:metaclass container-class)
1281 (:alien-name "GtkHPaned"))
1283 (defclass hpaned-child (paned-child)
1285 (:metaclass child-class))
1288 (defclass vpaned (paned)
1290 (:metaclass container-class)
1291 (:alien-name "GtkVPaned"))
1293 (defclass vpaned-child (paned-child)
1295 (:metaclass child-class))
1298 (defclass layout (container)
1300 :allocation :virtual
1301 :location ("gtk_layout_get_hadjustment" "gtk_layout_set_hadjustment")
1302 :accessor layout-hadjustment
1303 :initarg :hadjustment
1306 :allocation :virtual
1307 :location ("gtk_layout_get_vadjustment" "gtk_layout_set_vadjustment")
1308 :accessor layout-vadjustment
1309 :initarg :vadjustment
1312 :allocation :virtual
1313 :location layout-x-size
1316 :allocation :virtual
1317 :location layout-y-size
1321 :offset #.(+ (size-of 'pointer) (* (size-of 'int) 2))
1322 :accessor layout-x-offset
1327 :accessor layout-y-offset
1329 :type unsigned-int))
1330 (:metaclass container-class)
1331 (:alien-name "GtkLayout"))
1333 (defclass layout-child (container-child)
1335 (:metaclass child-class))
1338 ; (defclass list-widget container
1341 ; ((selection-mode :read-method :arg :accessor list-selection-mode
1342 ; :c-writer "gtk_list_set_selection_mode"
1343 ; :type selection-mode)))
1346 (defclass menu-shell (container)
1348 (:metaclass container-class)
1349 (:alien-name "GtkMenuShell"))
1351 (defclass menu-shell-child (container-child)
1353 (:metaclass child-class))
1356 (defclass menu-bar (menu-shell)
1359 :location "GtkMenuBar::shadow"
1360 :accessor menu-bar-shadow-type
1361 :initarg :shadow-type
1363 (:metaclass container-class)
1364 (:alien-name "GtkMenuBar"))
1366 (defclass menu-bar-child (menu-shell-child)
1368 (:metaclass child-class))
1371 (defclass menu (menu-shell)
1373 :allocation :virtual
1374 :location ("gtk_menu_get_accel_group" "gtk_menu_set_accel_group")
1375 :accessor menu-accel-group
1376 :initarg :accel-group
1379 :allocation :virtual
1380 :location ("gtk_menu_get_tearoff_state" "gtk_menu_set_tearoff_state")
1381 :accessor menu-tornoff-p
1385 :allocation :virtual
1386 :location ("gtk_menu_get_title" "gtk_menu_set_title")
1387 :accessor menu-title
1390 (:metaclass container-class)
1391 (:alien-name "GtkMenu"))
1393 (defclass menu-child (menu-shell-child)
1395 (:metaclass child-class))
1398 (defclass packer (container)
1401 :accessor packer-spacing
1404 (default-border-width
1406 :accessor packer-default-border-width
1407 :initarg :default-border-width
1411 :accessor packer-default-pad-x
1412 :initarg :default-pad-x
1416 :accessor packer-default-pad-y
1417 :initarg :default-pad-y
1421 :accessor packer-default-ipad-x
1422 :initarg :default-ipad-x
1426 :accessor packer-default-ipad-y
1427 :initarg :default-ipad-y
1428 :type unsigned-int))
1429 (:metaclass container-class)
1430 (:alien-name "GtkPacker"))
1432 (defclass packer-child (container-child)
1435 :accessor packer-child-side
1440 :accessor packer-child-anchor
1445 :accessor packer-child-expand-p
1450 :accessor packer-child-fill-x-p
1455 :accessor packer-child-fill-y-p
1460 :accessor packer-child-use-default
1465 :accessor packer-child-border-width
1470 :accessor packer-child-pad-x
1475 :accessor packer-child-pad-y
1480 :accessor packer-child-ipad-x
1485 :accessor packer-child-ipad-y
1490 :accessor packer-child-position
1493 (:metaclass child-class))
1496 ;(defclass socket (container))
1499 (defclass table (container)
1502 :location "GtkTable::n_rows"
1503 :accessor table-rows
1508 :location "GtkTable::n_columns"
1509 :accessor table-columns
1514 :accessor table-default-row-spacing
1515 :initarg :row-spacing
1519 :accessor table-default-column-spacing
1520 :initarg :column-spacing
1524 :accessor table-homogeneous-p
1525 :initarg :homogeneous
1527 (:metaclass container-class)
1528 (:alien-name "GtkTable"))
1530 (defclass table-child (container-child)
1533 :accessor table-child-left-attach
1534 :initarg :left-attach
1538 :accessor table-child-right-attach
1539 :initarg :right-attach
1543 :accessor table-child-top-attach
1544 :initarg :top-attach
1548 :accessor table-child-bottom-attach
1549 :initarg :bottom-attach
1553 :accessor table-child-x-options
1555 :type attach-options)
1558 :accessor table-child-y-options
1560 :type attach-options)
1563 :accessor table-child-x-padding
1568 :accessor table-child-y-padding
1573 :allocation :virtual
1574 :location table-child-x-expand-p
1578 :allocation :virtual
1579 :location table-child-y-expand-p
1583 :allocation :virtual
1584 :location table-child-x-shrink-p
1588 :allocation :virtual
1589 :location table-child-y-shrink-p
1593 :allocation :virtual
1594 :location table-child-x-fill-p
1598 :allocation :virtual
1599 :location table-child-y-fill-p
1602 (:metaclass child-class))
1605 (defclass toolbar (container)
1608 :accessor toolbar-orientation
1609 :initarg :orientation
1613 :accessor toolbar-style
1614 :initarg :toolbar-style
1615 :type toolbar-style)
1618 :accessor toolbar-space-size
1619 :initarg :space-size
1623 :accessor toolbar-space-style
1624 :initarg :space-style
1625 :type toolbar-space-style)
1628 :accessor toolbar-relief
1632 :allocation :virtual
1633 :location ("gtk_toolbar_get_tooltips" "gtk_toolbar_set_tooltips")
1634 :accessor toolbar-tooltips-p
1637 (:metaclass container-class)
1638 (:alien-name "GtkToolbar"))
1640 (defclass toolbar-child (container-child)
1642 (:metaclass child-class))
1646 (defclass tree (container)
1649 ; ;; slots not accessible through the arg mechanism
1650 ; ((selection-mode :type selection-mode)
1651 ; (view-mode :type tree-view-mode)
1652 ; (view-lines :type boolean)
1653 ; (root-tree :read-only t :type tree)))
1654 (:metaclass container-class)
1655 (:alien-name "GtkTree"))
1658 (defclass calendar (widget)
1660 (:metaclass widget-class)
1661 (:alien-name "GtkCalendar"))
1664 (defclass drawing-area (widget)
1666 (:metaclass widget-class)
1667 (:alien-name "GtkDrawingArea"))
1669 ; (defclass curve drawing-area
1671 ; ((curve-type :read-method :arg :type curve-type)
1672 ; (min-x :access-method :arg :type single-float)
1673 ; (max-x :access-method :arg :type single-float)
1674 ; (min-y :access-method :arg :type single-float)
1675 ; (max-y :access-method :arg :type single-float)))
1677 (defclass editable (widget)
1680 :location "GtkEditable::text_position"
1681 :accessor ediatable-position
1686 :accessor editable-editable-p
1690 :allocation :virtual
1691 :location editable-text
1694 (:metaclass widget-class)
1695 (:alien-name "GtkEditable"))
1698 (defclass entry (editable)
1701 :accessor entry-max-length
1702 :initarg :max-length
1706 :location "GtkEntry::visibility"
1707 :accessor entry-visible-p
1710 (:metaclass widget-class)
1711 (:alien-name "GtkEntry"))
1714 (defclass combo (hbox)
1716 :allocation :virtual
1717 :location "gtk_combo_get_entry"
1721 :allocation :virtual
1722 :location ("gtk_combo_get_use_arrows" "gtk_combo_set_use_arrows")
1723 :accessor combo-use-arrows-p
1724 :initarg :use-arrows
1727 :allocation :virtual
1729 ("gtk_combo_get_use_arrows_always" "gtk_combo_set_use_arrows_always")
1730 :accessor combo-use-arrows-always-p
1731 :initarg :use-arrows-always
1734 :allocation :virtual
1735 :location ("gtk_combo_get_case_sensitive" "gtk_combo_set_case_sensitive")
1736 :accessor combo-case-sensitive-p
1737 :initarg :case-sensitive
1739 (:metaclass widget-class)
1740 (:alien-name "GtkCombo"))
1743 (defclass spin-button (entry)
1746 :accessor spin-button-adjustment
1747 :initarg :adjustment
1751 :accessor spin-button-climb-rate
1752 :initarg :climb-rate
1756 :accessor spin-button-digits
1761 :accessor spin-button-snap-to-ticks-p
1762 :initarg :snap-to-ticks
1766 :accessor spin-button-numeric-p
1771 :accessor spin-button-wrap-p
1776 :accessor spin-button-update-policy
1777 :initarg :update-policy
1778 :type spin-button-update-policy)
1781 :accessor spin-button-shadow-type
1782 :initarg :shadow-type
1786 :accessor spin-button-value
1788 :type single-float))
1789 (:metaclass widget-class)
1790 (:alien-name "GtkSpinButton"))
1794 ; (defclass text editable
1796 ; ((hadjustment :access-method :arg :type adjustment)
1797 ; (vadjustment :access-method :arg :type adjustment)
1798 ; (line-wrap :read-method :arg :type boolean)
1799 ; (word-wrap :read-method :arg :type boolean)
1800 ; ;; slots not accessible through the arg mechanism
1801 ; (point :type unsigned-int)
1802 ; (length :read-only t :type unsigned-int)))
1804 (defclass ruler (widget)
1807 :accessor ruler-lower
1812 :accessor ruler-upper
1817 :accessor ruler-position
1822 :accessor ruler-max-size
1826 :allocation :virtual
1827 :location (nil "gtk_ruler_set_metric")
1828 :accessor ruler-metric
1831 (:metaclass widget-class)
1832 (:alien-name "GtkRuler"))
1835 (defclass hruler (ruler)
1837 (:metaclass widget-class)
1838 (:alien-name "GtkHRuler"))
1841 (defclass vruler (ruler)
1843 (:metaclass widget-class)
1844 (:alien-name "GtkVRuler"))
1847 (defclass range (widget)
1850 :accessor range-update-policy
1851 :initarg :update-policy
1854 :allocation :virtual
1855 :location ("gtk_range_get_adjustment" "gtk_range_set_adjustment")
1856 :accessor ruler-adjustment
1857 :initarg :adjustment
1859 (:metaclass widget-class)
1860 (:alien-name "GtkRange"))
1863 (defclass scale (range)
1866 :accessor scale-digits
1871 :accessor scale-draw-value-p
1872 :initarg :draw-value
1876 :location "GtkScale::value_pos"
1877 :accessor scale-value-position
1878 :initarg :value-position
1879 :type position-type)
1881 :allocation :virtual
1882 :location "gtk_scale_get_value_width"
1883 :reader ruler-value-width
1885 (:metaclass widget-class)
1886 (:alien-name "GtkScale"))
1889 (defclass hscale (scale)
1891 (:metaclass widget-class)
1892 (:alien-name "GtkHScale"))
1895 (defclass vscale (scale)
1897 (:metaclass widget-class)
1898 (:alien-name "GtkVScale"))
1901 (defclass scrollbar (range)
1903 (:metaclass widget-class)
1904 (:alien-name "GtkScrollbar"))
1907 (defclass hscrollbar (scrollbar)
1909 (:metaclass widget-class)
1910 (:alien-name "GtkHScrollbar"))
1913 (defclass vscrollbar (scrollbar)
1915 (:metaclass widget-class)
1916 (:alien-name "GtkVScrollbar"))
1919 (defclass separator (widget)
1921 (:metaclass widget-class)
1922 (:alien-name "GtkSeparator"))
1925 (defclass hseparator (separator)
1927 (:metaclass widget-class)
1928 (:alien-name "GtkHSeparator"))
1931 (defclass vseparator (separator)
1933 (:metaclass widget-class)
1934 (:alien-name "GtkVSeparator"))
1937 ; (defclass preview widget
1939 ; ((expand :read-method :arg :type boolean)))
1941 (defclass progress (widget)
1944 :accessor progress-activity-mode-p
1945 :initarg :activity-mode
1949 :accessor progress-show-text-p
1954 :accessor progress-text-xalign
1955 :initarg :text-xalign
1959 :accessor progress-text-yalign
1960 :initarg :text-yalign
1963 :allocation :virtual
1964 :location ("gtk_progress_get_format_string"
1965 "gtk_progress_set_format_string")
1966 :accessor progress-format-string
1967 :initarg :format-string
1970 :allocation :virtual
1971 :location ("gtk_progress_get_adjustment"
1972 "gtk_progress_set_adjustment")
1973 :accessor progress-adjustment
1974 :initarg :adjustment
1977 :allocation :virtual
1978 :location ("gtk_progress_get_current_percentage"
1979 "gtk_progress_set_percentage")
1980 :accessor progress-percentage
1981 :initarg :percentage
1984 :allocation :virtual
1985 :location ("gtk_progress_get_value" "gtk_progress_set_value")
1986 :accessor progress-value
1990 :allocation :virtual
1991 :location ("gtk_progress_get_current_text")
1992 :reader progress-text
1994 (:metaclass widget-class)
1995 (:alien-name "GtkProgress"))
1998 (defclass progress-bar (progress)
2001 :accessor progress-bar-orientation
2002 :initarg :orientation
2003 :type progress-bar-orientation)
2006 :accessor progress-bar-style
2008 :type progress-bar-style)
2011 :accessor progress-bar-activity-step
2012 :initarg :activity-step
2016 :accessor progress-bar-activity-blocks
2017 :initarg :activity-blocks
2021 :accessor progress-bar-discrete-blocks
2022 :initarg :discrete-blocks
2026 :accessor progress-bar-fraction
2031 :accessor progress-bar-pulse-step
2032 :initarg :pulse-step
2035 :allocation :virtual
2036 :location ("gtk_progress_get_current_text" "gtk_progress_bar_set_text")
2037 :accessor progress-bar-text
2039 (:metaclass widget-class)
2040 (:alien-name "GtkProgressBar"))
2042 ; (defclass item-factory object)