chiark / gitweb /
Removed code for deprecated tree widget
[clg] / gtk / gtktypes.lisp
CommitLineData
560af5c5 1;; Common Lisp bindings for GTK+ v2.0.x
2;; Copyright (C) 1999-2000 Espen S. Johnsen <espejohn@online.no>
3;;
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.
8;;
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.
13;;
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
17
b9752933 18;; $Id: gtktypes.lisp,v 1.6 2001-01-28 14:27:17 espen Exp $
560af5c5 19
20
21
22(in-package "GTK")
23
24
d520140e 25(deftype color-type ()
26 '(enum
27 :foreground
28 :background
29 :light
30 :dark
31 :mid
32 :text
33 :base
34 :white
35 :black))
560af5c5 36
37
d520140e 38(defclass style (gobject)
39 ((white
40 :allocation :virtual
41 :location style-white
42 :initarg :white
43 :type gdk:color)
44 (black
45 :allocation :virtual
46 :location style-black
47 :initarg :black
48 :type gdk:color)
49 (font
50 :allocation :virtual
51 :location ("gtk_style_get_font" "gtk_style_set_font")
52 :accessor style-font
53 :initarg :font
54 :type gdk:font))
560af5c5 55 (:metaclass gobject-class)
56 (:alien-name "GtkStyle"))
57
560af5c5 58
2d379b6a 59(defclass accel-group (alien-object)
60 ()
61 (:metaclass alien-class)
62 (:alien-name "GtkAccelGroup"))
63
64(deftype accel-entry () 'pointer) ; internal?
560af5c5 65
560af5c5 66
d520140e 67
68;; Forward declaration of widget and container
69(defclass widget (object)
70 ()
71 (:metaclass object-class)
72 (:alien-name "GtkWidget"))
73
74(defclass container (widget)
75 ()
76 (:metaclass widget-class)
77 (:alien-name "GtkContainer"))
78
560af5c5 79
80
81(defclass data (object)
82 ()
83 (:metaclass object-class)
84 (:alien-name "GtkData"))
85
86
87(defclass adjustment (data)
88 ((lower
89 :allocation :alien
90 :accessor adjustment-lower
91 :initarg :lower
92 :type single-float)
93 (upper
94 :allocation :alien
95 :accessor adjustment-upper
96 :initarg :upper
97 :type single-float)
98 (value
99 :allocation :alien
100 :accessor adjustment-value
101 :initarg :value
102 :type single-float)
103 (step-increment
104 :allocation :alien
105 :accessor adjustment-step-increment
106 :initarg :step-increment
107 :type single-float)
108 (page-increment
109 :allocation :alien
110 :accessor adjustment-page-increment
111 :initarg :page-increment
112 :type single-float)
113 (page-size
114 :allocation :alien
115 :accessor adjustment-page-size
116 :initarg :page-size
117 :type single-float))
118 (:metaclass object-class)
119 (:alien-name "GtkAdjustment"))
120
121
2d379b6a 122(defclass tooltips (data)
123 ((delay
124 :allocation :virtual
125 :location ("gtk_tooltips_get_delay" "gtk_tooltips_set_delay")
126 :accessor tooltips-delay
127 :type unsigned-int)
128 (enabled
129 :allocation :virtual
130 :location ("gtk_tooltips_get_enabled" (setf tooltips-enabled-p))
131 :reader tooltips-enabled-p
132 :initarg :enabled
133 :type boolean))
134 (:metaclass object-class)
135 (:alien-name "GtkTooltips"))
560af5c5 136
137
560af5c5 138(defclass widget (object)
d520140e 139 ((child-slots
140 :allocation :instance
141 :accessor widget-child-slots
142 :type container-child)
143 (name
27cb3ffb 144 :allocation :param
d520140e 145 :accessor widget-name
146 :initarg :name
147 :type string)
148 (parent
27cb3ffb 149 :allocation :param
d520140e 150 :accessor widget-parent
151; :initarg :parent
152 :type container)
153 (x
27cb3ffb 154 :allocation :param
d520140e 155 :accessor widget-x-position
156 :initarg :x
157 :type int)
158 (y
27cb3ffb 159 :allocation :param
d520140e 160 :accessor widget-y-position
161 :initarg :y
162 :type int)
163 (width
27cb3ffb 164 :allocation :param
d520140e 165 :accessor widget-width
166 :initarg :width
167 :type int)
168 (height
27cb3ffb 169 :allocation :param
d520140e 170 :accessor widget-height
171 :initarg :height
172 :type int)
173 (visible
27cb3ffb 174 :allocation :param
d520140e 175 :accessor widget-visible-p
176 :initarg :visible
177 :type boolean)
178 (sensitive
27cb3ffb 179 :allocation :param
d520140e 180 :accessor widget-sensitive-p
181 :initarg :sensitive
182 :type boolean)
183 (app-paintable
27cb3ffb 184 :allocation :param
d520140e 185 :reader widget-app-paintable-p
186 :type boolean)
187 (can-focus
27cb3ffb 188 :allocation :param
d520140e 189 :accessor widget-can-focus-p
190 :initarg :can-focus
191 :type boolean)
192 (has-focus
27cb3ffb 193 :allocation :param
d520140e 194 :accessor widget-has-focus-p
195 :initarg :has-focus
196 :type boolean)
197 (can-default
27cb3ffb 198 :allocation :param
d520140e 199 :accessor widget-can-default-p
200 :initarg :can-default
201 :type boolean)
202 (has-default
27cb3ffb 203 :allocation :param
d520140e 204 :accessor widget-has-default-p
205 :initarg :has-default
206 :type boolean)
207 (receives-default
27cb3ffb 208 :allocation :param
d520140e 209 :accessor widget-receives-default-p
210 :initarg :receives-default
211 :type boolean)
212 (composite-child
27cb3ffb 213 :allocation :param
d520140e 214 :accessor widget-composite-child-p
215 :initarg :composite-child
216 :type boolean)
217 (style
27cb3ffb 218 :allocation :param
d520140e 219 :accessor widget-style
220 :initarg :style
221 :type style)
222 (events
27cb3ffb 223 :allocation :param
d520140e 224 :accessor widget-events
225 :initarg :events
226 :type gdk:event-mask)
227 (extension-events
27cb3ffb 228 :allocation :param
d520140e 229 :accessor widget-extension-events
230 :initarg :extpension-events
231 :type gdk:event-mask)
232 (state
233 :allocation :virtual
234 :location ("gtk_widget_get_state" "gtk_widget_set_state")
235 :accessor widget-state
236 :initarg :state
237 :type state-type)
238 (window
239 :allocation :virtual
240 :location "gtk_widget_get_window"
241 :reader widget-window
242 :type gdk:window)
243 (colormap
244 :allocation :virtual
245 :location "gtk_widget_get_colormap"
246 :reader widget-colormap
247 :type gdk:colormap)
248 (visual
249 :allocation :virtual
250 :location "gtk_widget_get_visual"
251 :reader widget-visual
252 :type gdk:visual))
560af5c5 253 (:metaclass object-class)
254 (:alien-name "GtkWidget"))
255
256
257(defclass misc (widget)
258 ((xalign
27cb3ffb 259 :allocation :param
560af5c5 260 :accessor misc-xalign
261 :initarg :xalign
262 :type single-float)
263 (yalign
27cb3ffb 264 :allocation :param
560af5c5 265 :accessor misc-yalign
266 :initarg :yalign
267 :type single-float)
268 (xpad
27cb3ffb 269 :allocation :param
560af5c5 270 :accessor misc-xpad
271 :initarg :xpad
272 :type int)
273 (ypad
27cb3ffb 274 :allocation :param
560af5c5 275 :accessor misc-ypad
276 :initarg :ypad
277 :type int))
278 (:metaclass widget-class)
279 (:alien-name "GtkMisc"))
280
281
282(defclass label (misc)
283 ((label
27cb3ffb 284 :allocation :param
560af5c5 285 :accessor label-label
286 :initarg :label
287 :type string)
288 (pattern
27cb3ffb 289 :allocation :param
560af5c5 290 :accessor label-pattern
291 :initarg :pattern
292 :type string)
293 (justify
27cb3ffb 294 :allocation :param
560af5c5 295 :accessor label-justify
296 :initarg :justify
297 :type justification)
298 (wrap
27cb3ffb 299 :allocation :param
560af5c5 300 :accessor label-line-wrap-p
301 :initarg :wrap
302 :type boolean))
303 (:metaclass widget-class)
304 (:alien-name "GtkLabel"))
305
306
307(defclass accel-label (label)
308 ((widget
27cb3ffb 309 :allocation :param
560af5c5 310 :location "GtkAccelLabel::accel_widget"
2ed3bebb 311 :accessor accel-label-accel-widget
312 :initarg :accel-widget
560af5c5 313 :type widget)
314 (width
315 :allocation :virtual
316 :location "gtk_accel_label_get_accel_width"
317 :reader width
318 :type unsigned-int))
319 (:metaclass widget-class)
320 (:alien-name "GtkAccelLabel"))
321
322
323(defclass tips-query (label)
324 ((emit-always
27cb3ffb 325 :allocation :param
560af5c5 326 :accessor tips-query-emit-always-p
327 :initarg :emit-always
328 :type boolean)
329 (caller
27cb3ffb 330 :allocation :param
560af5c5 331 :accessor tips-query-caller
332 :initarg :caller
333 :type widget)
334 (label-inactive
27cb3ffb 335 :allocation :param
560af5c5 336 :accessor tips-query-label-inactive
337 :initarg :label-inactive
338 :type string)
339 (label-no-tip
27cb3ffb 340 :allocation :param
560af5c5 341 :accessor tips-query-label-no-tip
342 :initarg :label-no-tip
343 :type string))
344 (:metaclass widget-class)
345 (:alien-name "GtkTipsQuery"))
346
347
348(defclass arrow (misc)
349 ((arrow-type
27cb3ffb 350 :allocation :param
560af5c5 351 :accessor arrow-arrow-type
352 :initarg :arrow-type
353 :type arrow-type)
354 (shadow-type
27cb3ffb 355 :allocation :param
560af5c5 356 :accessor arrow-shadow-type
357 :initarg :shadow-type
358 :type shadow-type))
359 (:metaclass widget-class)
360 (:alien-name "GtkArrow"))
361
362
363(defclass image (misc)
364 ()
365 (:metaclass widget-class)
366 (:alien-name "GtkImage"))
367
368
369(defclass pixmap (misc)
2ed3bebb 370 ((source
371 :allocation :virtual
372 :location pixmap-source)
373 (mask
374 :allocation :virtual
375 :location pixmap-mask
376 :type gdk:bitmap))
560af5c5 377 (:metaclass widget-class)
378 (:alien-name "GtkPixmap"))
379
380
560af5c5 381(defclass container (widget)
d520140e 382 ((border-width
27cb3ffb 383 :allocation :param
d520140e 384 :accessor container-border-width
385 :initarg :border-width
386 :type unsigned-long)
387 (resize-mode
27cb3ffb 388 :allocation :param
d520140e 389 :accessor container-resize-mode
390 :initarg :resize-mode
391 :type resize-mode)
392 (children
393 :allocation :virtual
394 :location container-children)
395 (focus-child
396 :allocation :virtual
397 :location ("gtk_container_get_focus_child" "gtk_container_set_focus_child")
398 :accessor container-focus-child
399 :initarg :focus-child
400 :type widget)
401 (focus-hadjustment
402 :allocation :virtual
403 :location (nil "gtk_container_set_focus_hadjustment")
404 :writer (setf container-focus-hadjustment)
405 :initarg :focus-hadjustment
406 :type adjustment)
407 (focus-vadjustment
408 :allocation :virtual
409 :location (nil "gtk_container_set_focus_vadjustment")
410 :writer (setf container-focus-vadjustment)
411 :initarg :focus-vadjustment
412 :type adjustment))
560af5c5 413 (:metaclass widget-class)
414 (:alien-name "GtkContainer"))
415
416(defclass container-child ()
417 ((parent
418 :initarg :parent
419 :type container)
420 (child
421 :initarg :child
422 :type widget)))
423
424
425(defclass bin (container)
426 ((child
427 :allocation :virtual
428 :location bin-child
560af5c5 429 :type widget))
430 (:metaclass container-class)
431 (:alien-name "GtkBin"))
432
433(defclass bin-child (container-child))
434
435
436(defclass alignment (bin)
437 ((xalign
27cb3ffb 438 :allocation :param
560af5c5 439 :accessor alignment-xalign
440 :initarg :xalign
441 :type single-float)
442 (yalign
27cb3ffb 443 :allocation :param
560af5c5 444 :accessor alignment-yalign
445 :initarg :yalign
446 :type single-float)
447 (xscale
27cb3ffb 448 :allocation :param
560af5c5 449 :accessor alignment-xscale
450 :initarg :xscale
451 :type single-float)
452 (yscale
27cb3ffb 453 :allocation :param
560af5c5 454 :accessor alignment-yscale
455 :initarg :yscale
456 :type single-float))
457 (:metaclass container-class)
458 (:alien-name "GtkAlignment"))
459
460(defclass alignment-child (bin-child))
461
462
463(defclass frame (bin)
464 ((label
d520140e 465 :allocation :virtual
466 :location ("gtk_frame_get_label" "gtk_frame_set_label")
560af5c5 467 :accessor frame-label
468 :initarg :label
469 :type string)
470 (label-xalign
27cb3ffb 471 :allocation :param
560af5c5 472 :accessor frame-label-xalign
473 :initarg :label-xalign
474 :type single-float)
475 (label-yalign
27cb3ffb 476 :allocation :param
560af5c5 477 :accessor frame-label-yalign
478 :initarg :label-yalign
479 :type single-float)
480 (shadow-type
27cb3ffb 481 :allocation :param
560af5c5 482 :location "GtkFrame::shadow"
483 :accessor frame-shadow-type
484 :initarg :shadow-type
485 :type shadow-type))
486 (:metaclass container-class)
487 (:alien-name "GtkFrame"))
488
489(defclass frame-child (bin-child))
490
491
492; (defclass aspect-frame (frame)
493; ((xalign
27cb3ffb 494; :allocation :param
560af5c5 495; :accessor aspect-frame-xalign
496; :initarg :xalign
497; :type single-float)
498; (yalign
27cb3ffb 499; :allocation :param
560af5c5 500; :accessor aspect-frame-yalign
501; :initarg :yalign
502; :type single-float)
503; (ratio
27cb3ffb 504; :allocation :param
560af5c5 505; :accessor aspect-frame-ratio
506; :initarg :ratio
507; :type single-float)
508; (obey-child
27cb3ffb 509; :allocation :param
560af5c5 510; :accessor aspect-frame-obey-child-p
511; :initarg :obey-child
512; :type boolean))
513; (:metaclass container-class)
514; (:alien-name "GtkAspectFrame"))
515
516; (defclass aspect-frame-child (aspect-child))
517
518
519(defclass button (bin)
520 ((label
27cb3ffb 521 :allocation :param
560af5c5 522 :initarg :label
523 :type string)
524 (relief
27cb3ffb 525 :allocation :param
560af5c5 526 :accessor button-relief
527 :initarg :relief
528 :type relief-style))
529 (:metaclass container-class)
530 (:alien-name "GtkButton"))
531
2ed3bebb 532(defclass button-child (bin-child)
533 ()
534 (:metaclass child-class))
535
560af5c5 536
537(defclass toggle-button (button)
538 ((active
27cb3ffb 539 :allocation :param
560af5c5 540 :accessor toggle-button-active-p
541 :initarg :active
542 :type boolean)
543 (draw-indicator
27cb3ffb 544 :allocation :param
560af5c5 545 :accessor toggle-button-draw-indicator-p
546 :initarg :draw-indicator
547 :type boolean))
548 (:metaclass container-class)
549 (:alien-name "GtkToggleButton"))
550
2ed3bebb 551(defclass toggle-button-child (button-child)
552 ()
553 (:metaclass child-class))
560af5c5 554
555
556(defclass check-button (toggle-button)
557 ()
558 (:metaclass container-class)
559 (:alien-name "GtkCheckButton"))
560
2ed3bebb 561(defclass check-button-child (toggle-button-child)
562 ()
563 (:metaclass child-class))
560af5c5 564
565
566(defclass radio-button (check-button)
567 ((group
d520140e 568 :allocation :virtual
569 :location ("gtk_radio_button_group")
570 :reader radio-button-group
571 :type (static (gslist widget))))
560af5c5 572 (:metaclass container-class)
573 (:alien-name "GtkRadioButton"))
574
2ed3bebb 575(defclass radio-button-child (check-button-child)
576 ()
577 (:metaclass child-class))
560af5c5 578
579
580(defclass option-menu (button)
581 ((menu
582 :allocation :virtual
583 :location ("gtk_option_menu_get_menu" (setf option-menu-menu))
584 :reader option-menu-menu
585 :initarg :menu
586 :type widget)
587 (history
588 :allocation :virtual
589 :location (nil "gtk_option_menu_set_history")
590 :writer (setf option-menu-history)
591 :initarg :history
592 :type unsigned-int))
593 (:metaclass container-class)
594 (:alien-name "GtkOptionMenu"))
595
2ed3bebb 596(defclass option-menu-child (button-child)
597 ()
598 (:metaclass child-class))
560af5c5 599
600
601(defclass item (bin)
602 ()
603 (:metaclass container-class)
2ed3bebb 604 (:alien-name "GtkItem"))
560af5c5 605
2ed3bebb 606(defclass item-child (bin-child)
607 ()
608 (:metaclass child-class))
560af5c5 609
2ed3bebb 610;; Forward declaration
611(defclass menu-item (item)
612 ()
613 (:metaclass container-class)
614 (:alien-name "GtkMenuItem"))
560af5c5 615
616(defclass menu-item (item)
2d379b6a 617 ((label
618 :allocation :virtual
619 :location menu-item-label
620 :initarg :label
621 :type string)
622 (submenu
623 :allocation :virtual
624 :location ("gtk_menu_item_get_submenu" (setf menu-item-submenu))
625 :reader menu-item-submenu
626 :initarg :submenu
627 :type menu-item)
628 (placement
629 :allocation :virtual
630 :location ("gtk_menu_item_get_placement" "gtk_menu_item_set_placement")
631 :accessor menu-item-placement
632 :initarg :placement
633 :type submenu-placement)
634 (toggle-indicator
635 :allocation :virtual
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
640 :type boolean)
641 (submenu-indicator
642 :allocation :virtual
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
647 :type boolean))
560af5c5 648 (:metaclass container-class)
649 (:alien-name "GtkMenuItem"))
650
2ed3bebb 651(defclass menu-item-child (item-child)
652 ()
653 (:metaclass child-class))
560af5c5 654
655
656(defclass check-menu-item (menu-item)
2d379b6a 657 ((active
658 :allocation :virtual
659 :location ("gtk_check_menu_item_get_active"
660 "gtk_check_menu_item_set_active")
661 :accessor check-menu-item-active-p
662 :initarg :active
663 :type boolean)
664 (toggle-indicator
665 :allocation :virtual
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
670 :type boolean))
560af5c5 671 (:metaclass container-class)
672 (:alien-name "GtkCheckMenuItem"))
673
2ed3bebb 674(defclass check-menu-item-child (menu-item-child)
675 ()
676 (:metaclass child-class))
560af5c5 677
2d379b6a 678
560af5c5 679(defclass radio-menu-item (check-menu-item)
2d379b6a 680 ((group
681 :allocation :virtual
d520140e 682 :location ("gtk_radio_menu_item_group")
683 :reader radio-menu-item-group
684 :type (static (gslist widget))))
560af5c5 685 (:metaclass container-class)
686 (:alien-name "GtkRadioMenuItem"))
687
2ed3bebb 688(defclass radio-menu-item-child (check-menu-item-child)
689 ()
690 (:metaclass child-class))
560af5c5 691
692
693(defclass tearoff-menu-item (menu-item)
694 ()
695 (:metaclass container-class)
696 (:alien-name "GtkTearoffMenuItem"))
697
2ed3bebb 698(defclass tearoff-menu-item-child (menu-item-child)
699 ()
700 (:metaclass child-class))
560af5c5 701
2d379b6a 702
560af5c5 703(defclass list-item (item)
704 ()
705 (:metaclass container-class)
706 (:alien-name "GtkListItem"))
707
2ed3bebb 708(defclass list-item-child (item-child)
709 ()
710 (:metaclass child-class))
560af5c5 711
712
560af5c5 713(defclass window (bin)
714 ((type
27cb3ffb 715 :allocation :param
560af5c5 716 :accessor window-type
717 :initarg :type
718 :type window-type)
719 (title
27cb3ffb 720 :allocation :param
560af5c5 721 :accessor window-title
722 :initarg :title
723 :type string)
724 (auto-shrink
27cb3ffb 725 :allocation :param
560af5c5 726 :accessor window-auto-shrink-p
727 :initarg :auto-shrink
728 :type boolean)
729 (allow-shrink
27cb3ffb 730 :allocation :param
560af5c5 731 :accessor window-allow-shrink-p
732 :initarg :allow-shrink
733 :type boolean)
734 (allow-grow
27cb3ffb 735 :allocation :param
560af5c5 736 :accessor window-allow-grow-p
737 :initarg :allow-grow
738 :type boolean)
739 (modal
27cb3ffb 740 :allocation :param
560af5c5 741 :accessor window-modal-p
742 :initarg :modal
743 :type boolean)
744 (position
27cb3ffb 745 :allocation :param
560af5c5 746 :location "GtkWindow::window_position"
747 :accessor window-position
748 :initarg :position
749 :type window-position)
750 (default-width
27cb3ffb 751 :allocation :param
560af5c5 752 :accessor window-default-width
753 :initarg :default-width
754 :type int)
755 (default-height
27cb3ffb 756 :allocation :param
560af5c5 757 :accessor window-default-height
758 :initarg :default-height
759 :type int))
760 (:metaclass container-class)
761 (:alien-name "GtkWindow"))
762
2ed3bebb 763(defclass window-child (bin-child)
764 ()
765 (:metaclass child-class))
560af5c5 766
767
2ed3bebb 768(defclass dialog (window)
d520140e 769 ((main-box
770 :allocation :alien
771 :reader dialog-main-box
2ed3bebb 772 :type widget)
d520140e 773 (action-area
774 :allocation :alien
775 :reader dialog-action-area
776 :type widget))
2ed3bebb 777 (:metaclass container-class)
778 (:alien-name "GtkDialog"))
779
780(defclass dialog-child (window-child)
781 ()
782 (:metaclass child-class))
783
784
d520140e 785(defclass color-selection-dialog (dialog)
786 ((colorsel
787 :allocation :alien
788 :reader color-selection-dialog-colorsel
789 :type widget)
790 (ok-button
791 :allocation :alien
792 :reader color-selection-dialog-ok-button
793 :type widget)
794 (cancel-button
795 :allocation :alien
796 :reader color-selection-dialog-cancel-button
797 :type widget)
798 (help-button
799 :allocation :alien
800 :reader color-selection-dialog-help-button
801 :type widget))
802 (:metaclass container-class)
803 (:alien-name "GtkColorSelectionDialog"))
804
805(defclass color-selection-dialog-child (dialog-child)
806 ()
807 (:metaclass child-class))
808
809
2ed3bebb 810(defclass input-dialog (dialog)
811 ()
812 (:metaclass container-class)
813 (:alien-name "GtkInputDialog"))
814
815(defclass input-dialog-child (dialog-child)
816 ()
817 (:metaclass child-class))
560af5c5 818
560af5c5 819
d520140e 820(defclass file-selection (window)
821 ((filename
822 :allocation :virtual
823 :location ("gtk_file_selection_get_filename"
824 "gtk_file_selection_set_filename")
825 :accessor file-selection-filename
826 :initarg :filename
827 :type string)
828 (action-area
829 :allocation :virtual
830 :location "gtk_file_selection_get_action_area"
831 :reader file-selection-action-area
832 :type widget)
833 (ok-button
834 :allocation :virtual
835 :location "gtk_file_selection_get_ok_button"
836 :reader file-selection-ok-button
837 :type widget)
838 (cancel-button
839 :allocation :virtual
840 :location "gtk_file_selection_get_cancel_button"
841 :reader file-selection-cancel-button
842 :type widget))
843 (:metaclass container-class)
844 (:alien-name "GtkFileSelection"))
845
846(defclass file-selection-child (window-child)
847 ()
848 (:metaclass child-class))
849
560af5c5 850
851; (defclass plug window)
852
560af5c5 853
2d379b6a 854(defclass event-box (bin)
855 ()
856 (:metaclass container-class)
857 (:alien-name "GtkEventBox"))
858
859(defclass event-box-child (bin-child)
860 ()
861 (:metaclass child-class))
862
863
864(defclass handle-box (bin)
865 ((shadow-type
27cb3ffb 866 :allocation :param
2d379b6a 867 :location "GtkHandleBox::shadow"
868 :accessor handle-box-shadow-type
869 :initarg :shadow-type
870 :type shadow-type)
871 (handle-position
27cb3ffb 872 :allocation :param
2d379b6a 873 :accessor handle-box-handle-position
874 :initarg :handle-position
875 :type position-type)
876 (snap-edge
27cb3ffb 877 :allocation :param
2d379b6a 878 :accessor handle-box-snap-edge
879 :initarg :snap-edge
880 :type position-type))
881 (:metaclass container-class)
882 (:alien-name "GtkHandleBox"))
883
884(defclass handle-box-child (bin-child)
885 ()
886 (:metaclass child-class))
887
560af5c5 888
889(defclass scrolled-window (bin)
890 ((hadjustment
27cb3ffb 891 :allocation :param
560af5c5 892 :accessor scrolled-window-hadjustment
893 :initarg :hadjustment
894 :type adjustment)
895 (vadjustment
27cb3ffb 896 :allocation :param
560af5c5 897 :accessor scrolled-window-vadjustment
898 :initarg :vadjustment
899 :type adjustment)
900 (hscrollbar-policy
27cb3ffb 901 :allocation :param
560af5c5 902 :accessor scrolled-window-hscrollbar-policy
903 :initarg :hscrollbar-policy
904 :type policy-type)
905 (vscrollbar-policy
27cb3ffb 906 :allocation :param
560af5c5 907 :accessor scrolled-window-vscrollbar-policy
908 :initarg :vscrollbar-policy
909 :type policy-type)
910 (placement
27cb3ffb 911 :allocation :param
560af5c5 912 :location "GtkScrolledWindow::window_placement"
913 :accessor scrolled-window-placement
914 :initarg :placement
915 :type corner-type)
916 (shadow-type
27cb3ffb 917 :allocation :param
560af5c5 918 :location "GtkScrolledWindow::shadow"
919 :accessor scrolled-window-shadow-type
920 :initarg :shadow-type
921 :type shadow-type)
922 (hscrollbar
923 :allocation :virtual
924 :location "gtk_scrolled_window_get_hscrollbar"
925 :accessor scrolled-window-hscrollbar
926 :type widget)
927 (vscrollbar
928 :allocation :virtual
929 :location "gtk_scrolled_window_get_vscrollbar"
930 :accessor scrolled-window-vscrollbar
931 :type widget))
932 (:metaclass container-class)
933 (:alien-name "GtkScrolledWindow"))
934
2d379b6a 935(defclass scrolled-window-child (bin-child)
936 ()
937 (:metaclass child-class))
560af5c5 938
939
2d379b6a 940(defclass viewport (bin)
941 ((hadjustment
27cb3ffb 942 :allocation :param
2d379b6a 943 :accessor viewport-hadjustment
944 :initarg :hadjustment
945 :type adjustment)
946 (vadjustment
27cb3ffb 947 :allocation :param
2d379b6a 948 :accessor viewport-vadjustment
949 :initarg :vadjustment
950 :type adjustment)
951 (shadow-type
27cb3ffb 952 :allocation :param
2d379b6a 953 :accessor viewport-shadow-type
954 :initarg :shadow-type
955 :type shadow-type))
956 (:metaclass container-class)
957 (:alien-name "GtkViewport"))
560af5c5 958
2d379b6a 959(defclass viewport-child (bin-child)
960 ()
961 (:metaclass child-class))
962
560af5c5 963
964(defclass box (container)
965 ((spacing
27cb3ffb 966 :allocation :param
560af5c5 967 :accessor box-spacing
968 :initarg :spacing
969 :type int)
970 (homogeneous
27cb3ffb 971 :allocation :param
560af5c5 972 :accessor box-homogeneous-p
973 :initarg :homogeneous
974 :type boolean))
975 (:metaclass container-class)
976 (:alien-name "GtkBox"))
977
978(defclass box-child (container-child)
979 ((expand
980 :allocation :arg
981 :accessor box-child-expand-p
982 :initarg :expand
983 :type boolean)
984 (fill
985 :allocation :arg
986 :accessor box-child-fill-p
987 :initarg :fill
988 :type boolean)
989 (padding
990 :allocation :arg
991 :accessor box-child-padding
992 :initarg :padding
993 :type unsigned-long)
994 (pack-type
995 :allocation :arg
996 :accessor box-child-pack-type
997 :initarg :pack-type
998 :type pack-type)
999 (position
1000 :allocation :arg
1001 :accessor box-child-position
1002 :initarg :position
1003 :type long))
1004 (:metaclass child-class))
1005
1006
1007(defclass button-box (box)
1008 ((spacing
1009 :allocation :virtual
1010 :location ("gtk_button_box_get_spacing" "gtk_button_box_set_spacing")
1011 :accessor button-box-spacing
d520140e 1012 :initarg :spacing
1013 :type int)
1014 (child-min-width
1015 :allocation :alien
1016 :offset #.(size-of 'int)
1017 :accessor button-box-child-min-width
1018 :initarg :child-min-width
1019 :type int)
1020 (child-min-height
1021 :allocation :alien
1022 :accessor button-box-child-min-height
1023 :initarg :child-min-height
1024 :type int)
1025 (child-ipad-x
1026 :allocation :alien
1027 :accessor button-box-child-ipad-x
1028 :initarg :child-ipad-x
1029 :type int)
1030 (child-ipad-y
1031 :allocation :alien
1032 :accessor button-box-child-ipad-y
1033 :initarg :child-ipad-y
560af5c5 1034 :type int)
1035 (layout
1036 :allocation :virtual
1037 :location ("gtk_button_box_get_layout" "gtk_button_box_set_layout")
1038 :accessor button-box-layout
d520140e 1039 :initarg :layout
560af5c5 1040 :type button-box-style))
1041 (:metaclass container-class)
1042 (:alien-name "GtkButtonBox"))
1043
1044(defclass button-box-child (box-child)
1045 ()
1046 (:metaclass child-class))
1047
2d379b6a 1048
560af5c5 1049(defclass hbutton-box (button-box)
1050 ()
1051 (:metaclass container-class)
1052 (:alien-name "GtkHButtonBox"))
1053
1054(defclass hbutton-box-child (button-box-child)
1055 ()
1056 (:metaclass child-class))
1057
2d379b6a 1058
1059(defclass vbutton-box (button-box)
1060 ()
1061 (:metaclass container-class)
1062 (:alien-name "GtkVButtonBox"))
1063
560af5c5 1064(defclass vbutton-box-child (button-box-child)
1065 ()
1066 (:metaclass child-class))
1067
2d379b6a 1068
560af5c5 1069(defclass vbox (box)
1070 ()
1071 (:metaclass container-class)
1072 (:alien-name "GtkVBox"))
1073
1074(defclass vbox-child (box-child)
1075 ()
1076 (:metaclass child-class))
1077
1078
d520140e 1079(defclass color-selection (vbox)
1080 ((use-opacity
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
1086 :type boolean)
1087 (use-palette
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
1093 :type boolean)
1094 (color
1095 :allocation :virtual
1096 :location color-selection-color
1097 :initarg :color)
1098 (old-color
1099 :allocation :virtual
1100 :location color-selection-old-color
1101 :initarg :old-color
1102 :type (vector double-float 4)))
1103 (:metaclass container-class)
1104 (:alien-name "GtkColorSelection"))
560af5c5 1105
d520140e 1106(defclass color-selection-child (vbox-child)
1107 ()
1108 (:metaclass child-class))
560af5c5 1109
2d379b6a 1110
560af5c5 1111(defclass hbox (box)
1112 ()
1113 (:metaclass container-class)
1114 (:alien-name "GtkHBox"))
1115
1116(defclass hbox-child (box-child)
1117 ()
1118 (:metaclass child-class))
1119
1120
2d379b6a 1121(defclass statusbar (hbox)
1122 ()
1123 (:metaclass container-class)
1124 (:alien-name "GtkStatusbar"))
560af5c5 1125
2d379b6a 1126(defclass statusbar-child (hbox-child)
1127 ()
1128 (:metaclass child-class))
560af5c5 1129
560af5c5 1130
2d379b6a 1131(defclass fixed (container)
1132 ()
1133 (:metaclass container-class)
1134 (:alien-name "GtkFixed"))
560af5c5 1135
2d379b6a 1136(defclass fixed-child (container-child)
1137 ()
1138 (:metaclass child-class))
1139
1140
1141(defclass notebook (container)
1142 ((tab-pos
27cb3ffb 1143 :allocation :param
2d379b6a 1144 :accessor notebook-tab-pos
1145 :initarg :tab-pos
1146 :type position-type)
1147 (show-tabs
27cb3ffb 1148 :allocation :param
2d379b6a 1149 :accessor notebook-show-tabs-p
1150 :initarg :show-tabs
1151 :type boolean)
1152 (show-border
27cb3ffb 1153 :allocation :param
2d379b6a 1154 :accessor notebook-show-border-p
1155 :initarg :show-border
1156 :type boolean)
1157 (scrollable
27cb3ffb 1158 :allocation :param
2d379b6a 1159 :accessor notebook-scrollable-p
1160 :initarg :scrollable
1161 :type boolean)
1162 (tab-border
27cb3ffb 1163 :allocation :param
2d379b6a 1164 :accessor notebook-tab-border
1165 :initarg :tab-border
1166 :type unsigned-int)
1167 (tab-hborder
27cb3ffb 1168 :allocation :param
2d379b6a 1169 :accessor notebook-tab-hborder
1170 :initarg :tab-hborder
1171 :type unsigned-int)
1172 (tab-vborder
27cb3ffb 1173 :allocation :param
2d379b6a 1174 :accessor notebook-tab-vborder
1175 :initarg :tab-vborder
1176 :type unsigned-int)
1177 (page
27cb3ffb 1178 :allocation :param
2d379b6a 1179 :accessor notebook-page
1180 :initarg :page
1181 :type int)
1182 (enable-popup
27cb3ffb 1183 :allocation :param
2d379b6a 1184 :accessor notebook-enable-popup-p
1185 :initarg :enable-popup
1186 :type boolean)
1187 (homogeneous
27cb3ffb 1188 :allocation :param
2d379b6a 1189 :accessor notebook-homogeneous-p
1190 :initarg :homogeneous
1191 :type boolean))
1192 (:metaclass container-class)
1193 (:alien-name "GtkNotebook"))
560af5c5 1194
2d379b6a 1195(defclass notebook-child (container-child)
1196 ((tab-label
1197 :allocation :arg
1198 :accessor notebook-child-tab-label
1199 :initarg :tab-label
1200 :type string)
1201 (menu-label
1202 :allocation :arg
1203 :accessor notebook-child-menu-label
1204 :initarg :menu-label
1205 :type string)
1206 (position
1207 :allocation :arg
1208 :accessor notebook-child-position
1209 :initarg :position
1210 :type int)
1211 (tab-fill
1212 :allocation :arg
1213 :accessor notebook-child-tab-fill-p
1214 :initarg :tab-fill
1215 :type boolean)
1216 (tab-pack
1217 :allocation :arg
1218 :accessor notebook-child-tab-pack-p
1219 :initarg :tab-pack
1220 :type boolean))
1221 (:metaclass child-class))
560af5c5 1222
560af5c5 1223
2d379b6a 1224(defclass font-selection (notebook)
1225 ()
1226 (:metaclass container-class)
1227 (:alien-name "GtkFontSelection"))
1228
1229(defclass font-selection-child (notebook-child)
1230 ()
1231 (:metaclass child-class))
1232
1233
1234(defclass paned (container)
1235 ((handle-size
27cb3ffb 1236 :allocation :param
2d379b6a 1237 :accessor paned-handle-size
1238 :initarg handle-size
1239 :type unsigned-int)
1240 (position
1241 :allocation :virtual
1242 :location ("gtk_paned_get_position" "gtk_paned_set_position")
1243 :accessor paned-position
1244 :initarg :position
d520140e 1245 :type int)
1246 (child1
1247 :allocation :virtual
1248 :location paned-child1
1249 :initarg :child1
1250 :type widget)
1251 (child2
1252 :allocation :virtual
1253 :location paned-child2
1254 :initarg :child2
1255 :type widget))
2d379b6a 1256 (:metaclass container-class)
1257 (:alien-name "GtkPaned"))
1258
1259(defclass paned-child (container-child)
1260 ()
1261 (:metaclass child-class))
1262
1263
1264(defclass hpaned (paned)
1265 ()
1266 (:metaclass container-class)
1267 (:alien-name "GtkHPaned"))
1268
1269(defclass hpaned-child (paned-child)
1270 ()
1271 (:metaclass child-class))
1272
1273
1274(defclass vpaned (paned)
1275 ()
1276 (:metaclass container-class)
1277 (:alien-name "GtkVPaned"))
1278
1279(defclass vpaned-child (paned-child)
1280 ()
1281 (:metaclass child-class))
1282
1283
1284(defclass layout (container)
1285 ((hadjustment
1286 :allocation :virtual
1287 :location ("gtk_layout_get_hadjustment" "gtk_layout_set_hadjustment")
1288 :accessor layout-hadjustment
1289 :initarg :hadjustment
1290 :type adjustment)
1291 (vadjustment
1292 :allocation :virtual
1293 :location ("gtk_layout_get_vadjustment" "gtk_layout_set_vadjustment")
1294 :accessor layout-vadjustment
1295 :initarg :vadjustment
d520140e 1296 :type adjustment)
1297 (x-size
1298 :allocation :virtual
1299 :location layout-x-size
1300 :initarg :x-size)
1301 (y-size
1302 :allocation :virtual
1303 :location layout-y-size
1304 :initarg :y-size)
1305 (x-offset
1306 :allocation :alien
1307 :offset #.(+ (size-of 'pointer) (* (size-of 'int) 2))
1308 :accessor layout-x-offset
1309 :initarg :x-offset
1310 :type unsigned-int)
1311 (y-offset
1312 :allocation :alien
1313 :accessor layout-y-offset
1314 :initarg :y-offset
1315 :type unsigned-int))
2d379b6a 1316 (:metaclass container-class)
1317 (:alien-name "GtkLayout"))
1318
1319(defclass layout-child (container-child)
1320 ()
1321 (:metaclass child-class))
1322
560af5c5 1323
1324; (defclass list-widget container
1325; :c-name "GtkList"
1326; :slots
1327; ((selection-mode :read-method :arg :accessor list-selection-mode
1328; :c-writer "gtk_list_set_selection_mode"
1329; :type selection-mode)))
1330
560af5c5 1331
2d379b6a 1332(defclass menu-shell (container)
1333 ()
1334 (:metaclass container-class)
1335 (:alien-name "GtkMenuShell"))
560af5c5 1336
2d379b6a 1337(defclass menu-shell-child (container-child)
1338 ()
1339 (:metaclass child-class))
560af5c5 1340
560af5c5 1341
2d379b6a 1342(defclass menu-bar (menu-shell)
1343 ((shadow-type
27cb3ffb 1344 :allocation :param
2d379b6a 1345 :location "GtkMenuBar::shadow"
1346 :accessor menu-bar-shadow-type
1347 :initarg :shadow-type
1348 :type shadow-type))
1349 (:metaclass container-class)
1350 (:alien-name "GtkMenuBar"))
1351
1352(defclass menu-bar-child (menu-shell-child)
1353 ()
1354 (:metaclass child-class))
1355
1356
1357(defclass menu (menu-shell)
1358 ((accel-group
1359 :allocation :virtual
1360 :location ("gtk_menu_get_accel_group" "gtk_menu_set_accel_group")
1361 :accessor menu-accel-group
1362 :initarg :accel-group
1363 :type accel-group)
1364 (tornoff
1365 :allocation :virtual
1366 :location ("gtk_menu_get_tearoff_state" "gtk_menu_set_tearoff_state")
1367 :accessor menu-tornoff-p
1368 :initarg :tearoff
1369 :type boolean)
1370 (title
1371 :allocation :virtual
1372 :location ("gtk_menu_get_title" "gtk_menu_set_title")
1373 :accessor menu-title
1374 :initarg :title
1375 :type string))
1376 (:metaclass container-class)
1377 (:alien-name "GtkMenu"))
1378
1379(defclass menu-child (menu-shell-child)
1380 ()
1381 (:metaclass child-class))
1382
1383
1384(defclass packer (container)
1385 ((spacing
27cb3ffb 1386 :allocation :param
2d379b6a 1387 :accessor packer-spacing
1388 :initarg :spacing
1389 :type unsigned-int)
1390 (default-border-width
27cb3ffb 1391 :allocation :param
2d379b6a 1392 :accessor packer-default-border-width
1393 :initarg :default-border-width
1394 :type unsigned-int)
1395 (default-pad-x
27cb3ffb 1396 :allocation :param
2d379b6a 1397 :accessor packer-default-pad-x
1398 :initarg :default-pad-x
1399 :type unsigned-int)
1400 (default-pad-y
27cb3ffb 1401 :allocation :param
2d379b6a 1402 :accessor packer-default-pad-y
1403 :initarg :default-pad-y
1404 :type unsigned-int)
1405 (default-ipad-x
27cb3ffb 1406 :allocation :param
d520140e 1407 :accessor packer-default-ipad-x
1408 :initarg :default-ipad-x
2d379b6a 1409 :type unsigned-int)
1410 (default-ipad-y
27cb3ffb 1411 :allocation :param
2d379b6a 1412 :accessor packer-default-ipad-y
1413 :initarg :default-ipad-y
1414 :type unsigned-int))
1415 (:metaclass container-class)
1416 (:alien-name "GtkPacker"))
1417
1418(defclass packer-child (container-child)
1419 ((side
1420 :allocation :arg
1421 :accessor packer-child-side
1422 :initarg :side
1423 :type side-type)
1424 (anchor
1425 :allocation :arg
1426 :accessor packer-child-anchor
1427 :initarg :anchor
1428 :type anchor-type)
1429 (expand
1430 :allocation :arg
1431 :accessor packer-child-expand-p
1432 :initarg :expand
1433 :type boolean)
1434 (fill-x
1435 :allocation :arg
1436 :accessor packer-child-fill-x-p
1437 :initarg :fill-x
1438 :type boolean)
1439 (fill-y
1440 :allocation :arg
1441 :accessor packer-child-fill-y-p
1442 :initarg :fill-y
1443 :type boolean)
1444 (use-default
1445 :allocation :arg
1446 :accessor packer-child-use-default
1447 :initarg :default
1448 :type boolean)
1449 (border-width
1450 :allocation :arg
1451 :accessor packer-child-border-width
1452 :initarg :default
1453 :type unsigned-int)
1454 (pad-x
1455 :allocation :arg
1456 :accessor packer-child-pad-x
1457 :initarg :pad-x
1458 :type unsigned-int)
1459 (pad-y
1460 :allocation :arg
1461 :accessor packer-child-pad-y
1462 :initarg :pad-y
1463 :type unsigned-int)
1464 (ipad-x
1465 :allocation :arg
1466 :accessor packer-child-ipad-x
1467 :initarg :ipad-x
1468 :type unsigned-int)
1469 (ipad-y
1470 :allocation :arg
1471 :accessor packer-child-ipad-y
1472 :initarg :ipad-y
1473 :type unsigned-int)
1474 (position
1475 :allocation :arg
1476 :accessor packer-child-position
1477 :initarg :iposition
1478 :type long))
1479 (:metaclass child-class))
1480
1481
1482;(defclass socket (container))
1483
1484
1485(defclass table (container)
1486 ((rows
27cb3ffb 1487 :allocation :param
2d379b6a 1488 :location "GtkTable::n_rows"
1489 :accessor table-rows
1490 :initarg :rows
1491 :type unsigned-int)
1492 (columns
27cb3ffb 1493 :allocation :param
2d379b6a 1494 :location "GtkTable::n_columns"
1495 :accessor table-columns
1496 :initarg :columns
1497 :type unsigned-int)
1498 (row-spacing
27cb3ffb 1499 :allocation :param
2ed3bebb 1500 :accessor table-default-row-spacing
2d379b6a 1501 :initarg :row-spacing
1502 :type unsigned-int)
1503 (column-spacing
27cb3ffb 1504 :allocation :param
2ed3bebb 1505 :accessor table-default-column-spacing
2d379b6a 1506 :initarg :column-spacing
1507 :type unsigned-int)
1508 (homogeneous
27cb3ffb 1509 :allocation :param
2d379b6a 1510 :accessor table-homogeneous-p
1511 :initarg :homogeneous
1512 :type boolean))
1513 (:metaclass container-class)
1514 (:alien-name "GtkTable"))
1515
1516(defclass table-child (container-child)
1517 ((left-attach
1518 :allocation :arg
1519 :accessor table-child-left-attach
1520 :initarg :left-attach
1521 :type unsigned-int)
1522 (right-attach
1523 :allocation :arg
1524 :accessor table-child-right-attach
1525 :initarg :right-attach
1526 :type unsigned-int)
1527 (top-attach
1528 :allocation :arg
1529 :accessor table-child-top-attach
1530 :initarg :top-attach
1531 :type unsigned-int)
1532 (bottom-attach
1533 :allocation :arg
1534 :accessor table-child-bottom-attach
1535 :initarg :bottom-attach
1536 :type unsigned-int)
1537 (x-options
1538 :allocation :arg
1539 :accessor table-child-x-options
1540 :initarg :x-options
1541 :type attach-options)
1542 (y-options
1543 :allocation :arg
1544 :accessor table-child-y-options
1545 :initarg :y-options
1546 :type attach-options)
1547 (x-padding
1548 :allocation :arg
1549 :accessor table-child-x-padding
1550 :initarg :x-padding
1551 :type unsigned-int)
1552 (y-padding
1553 :allocation :arg
1554 :accessor table-child-y-padding
1555 :initarg :y-padding
1556 :type unsigned-int)
1557
1558 (x-expand
1559 :allocation :virtual
1560 :location table-child-x-expand-p
1561 :initarg :x-expand
1562 :type boolean)
1563 (y-expand
1564 :allocation :virtual
1565 :location table-child-y-expand-p
1566 :initarg :y-expand
1567 :type boolean)
1568 (x-shrink
1569 :allocation :virtual
1570 :location table-child-x-shrink-p
1571 :initarg :x-shrink
1572 :type boolean)
1573 (y-shrink
1574 :allocation :virtual
1575 :location table-child-y-shrink-p
1576 :initarg :y-shrink
1577 :type boolean)
1578 (x-fill
1579 :allocation :virtual
1580 :location table-child-x-fill-p
1581 :initarg :x-fill
1582 :type boolean)
1583 (y-fill
1584 :allocation :virtual
1585 :location table-child-y-fill-p
1586 :initarg :y-fill
1587 :type boolean))
1588 (:metaclass child-class))
1589
1590
1591(defclass toolbar (container)
1592 ((orientation
27cb3ffb 1593 :allocation :param
2d379b6a 1594 :accessor toolbar-orientation
1595 :initarg :orientation
1596 :type orientation)
1597 (toolbar-style
27cb3ffb 1598 :allocation :param
2d379b6a 1599 :accessor toolbar-style
1600 :initarg :toolbar-style
1601 :type toolbar-style)
1602 (space-size
27cb3ffb 1603 :allocation :param
2d379b6a 1604 :accessor toolbar-space-size
1605 :initarg :space-size
1606 :type unsigned-int)
1607 (space-style
27cb3ffb 1608 :allocation :param
2d379b6a 1609 :accessor toolbar-space-style
1610 :initarg :space-style
1611 :type toolbar-space-style)
1612 (relief
27cb3ffb 1613 :allocation :param
2d379b6a 1614 :accessor toolbar-relief
1615 :initarg :relief
1616 :type relief-style)
1617 (tooltips
1618 :allocation :virtual
1619 :location ("gtk_toolbar_get_tooltips" "gtk_toolbar_set_tooltips")
1620 :accessor toolbar-tooltips-p
1621 :initarg :tooltips
1622 :type boolean))
1623 (:metaclass container-class)
1624 (:alien-name "GtkToolbar"))
1625
1626(defclass toolbar-child (container-child)
1627 ()
1628 (:metaclass child-class))
1629
1630
560af5c5 1631(defclass calendar (widget)
1632 ()
1633 (:metaclass widget-class)
1634 (:alien-name "GtkCalendar"))
1635
1636
2d379b6a 1637(defclass drawing-area (widget)
1638 ()
1639 (:metaclass widget-class)
1640 (:alien-name "GtkDrawingArea"))
560af5c5 1641
1642; (defclass curve drawing-area
1643; :slots
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)))
1649
2d379b6a 1650(defclass editable (widget)
1651 ((position
27cb3ffb 1652 :allocation :param
2d379b6a 1653 :location "GtkEditable::text_position"
1654 :accessor ediatable-position
1655 :initarg :position
1656 :type int)
1657 (editable
27cb3ffb 1658 :allocation :param
2ed3bebb 1659 :accessor editable-editable-p
1660 :initarg :editable
2d379b6a 1661 :type boolean)
1662 (text
1663 :allocation :virtual
1664 :location editable-text
2ed3bebb 1665 :initarg :text
2d379b6a 1666 :type string))
1667 (:metaclass widget-class)
1668 (:alien-name "GtkEditable"))
560af5c5 1669
2d379b6a 1670
1671(defclass entry (editable)
1672 ((max-length
27cb3ffb 1673 :allocation :param
2d379b6a 1674 :accessor entry-max-length
1675 :initarg :max-length
1676 :type unsigned-int)
1677 (visible
27cb3ffb 1678 :allocation :param
2d379b6a 1679 :location "GtkEntry::visibility"
1680 :accessor entry-visible-p
1681 :initarg :visible
1682 :type boolean))
1683 (:metaclass widget-class)
1684 (:alien-name "GtkEntry"))
1685
560af5c5 1686
2d379b6a 1687(defclass combo (hbox)
1688 ((entry
1689 :allocation :virtual
1690 :location "gtk_combo_get_entry"
1691 :reader combo-entry
1692 :type entry)
1693 (use-arrows
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
1698 :type boolean)
1699 (use-arrows-always
1700 :allocation :virtual
1701 :location
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
1705 :type boolean)
1706 (case-sensitive
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
1711 :type boolean))
1712 (:metaclass widget-class)
1713 (:alien-name "GtkCombo"))
1714
560af5c5 1715
2d379b6a 1716(defclass spin-button (entry)
1717 ((adjustment
27cb3ffb 1718 :allocation :param
2d379b6a 1719 :accessor spin-button-adjustment
1720 :initarg :adjustment
1721 :type adjustment)
1722 (climb-rate
27cb3ffb 1723 :allocation :param
2d379b6a 1724 :accessor spin-button-climb-rate
1725 :initarg :climb-rate
1726 :type single-float)
1727 (digits
27cb3ffb 1728 :allocation :param
2d379b6a 1729 :accessor spin-button-digits
1730 :initarg :digits
1731 :type unsigned-int)
1732 (snap-to-ticks
27cb3ffb 1733 :allocation :param
2d379b6a 1734 :accessor spin-button-snap-to-ticks-p
1735 :initarg :snap-to-ticks
1736 :type boolean)
1737 (numeric
27cb3ffb 1738 :allocation :param
2d379b6a 1739 :accessor spin-button-numeric-p
1740 :initarg :numeric
1741 :type boolean)
1742 (wrap
27cb3ffb 1743 :allocation :param
2d379b6a 1744 :accessor spin-button-wrap-p
1745 :initarg :wrap
1746 :type boolean)
1747 (update-policy
27cb3ffb 1748 :allocation :param
2d379b6a 1749 :accessor spin-button-update-policy
1750 :initarg :update-policy
1751 :type spin-button-update-policy)
1752 (shadow-type
27cb3ffb 1753 :allocation :param
2d379b6a 1754 :accessor spin-button-shadow-type
1755 :initarg :shadow-type
1756 :type shadow-type)
1757 (value
27cb3ffb 1758 :allocation :param
2d379b6a 1759 :accessor spin-button-value
1760 :initarg :value
1761 :type single-float))
1762 (:metaclass widget-class)
1763 (:alien-name "GtkSpinButton"))
1764
560af5c5 1765
2d379b6a 1766;; Deprecated
560af5c5 1767; (defclass text editable
1768; :slots
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)))
1776
2d379b6a 1777(defclass ruler (widget)
1778 ((lower
27cb3ffb 1779 :allocation :param
2d379b6a 1780 :accessor ruler-lower
1781 :initarg :lower
1782 :type single-float)
1783 (upper
27cb3ffb 1784 :allocation :param
2d379b6a 1785 :accessor ruler-upper
1786 :initarg :upper
1787 :type single-float)
1788 (position
27cb3ffb 1789 :allocation :param
2d379b6a 1790 :accessor ruler-position
1791 :initarg :position
1792 :type single-float)
1793 (max-size
27cb3ffb 1794 :allocation :param
2d379b6a 1795 :accessor ruler-max-size
1796 :initarg :max-size
1797 :type single-float)
1798 (metric
1799 :allocation :virtual
1800 :location (nil "gtk_ruler_set_metric")
1801 :accessor ruler-metric
1802 :initarg :metric
1803 :type metric-type))
1804 (:metaclass widget-class)
1805 (:alien-name "GtkRuler"))
560af5c5 1806
560af5c5 1807
2d379b6a 1808(defclass hruler (ruler)
1809 ()
1810 (:metaclass widget-class)
1811 (:alien-name "GtkHRuler"))
560af5c5 1812
560af5c5 1813
2d379b6a 1814(defclass vruler (ruler)
1815 ()
1816 (:metaclass widget-class)
1817 (:alien-name "GtkVRuler"))
1818
1819
1820(defclass range (widget)
1821 ((update-policy
27cb3ffb 1822 :allocation :param
2d379b6a 1823 :accessor range-update-policy
1824 :initarg :update-policy
1825 :type update-type)
1826 (adjustment
1827 :allocation :virtual
1828 :location ("gtk_range_get_adjustment" "gtk_range_set_adjustment")
1829 :accessor ruler-adjustment
1830 :initarg :adjustment
1831 :type adjustment))
1832 (:metaclass widget-class)
1833 (:alien-name "GtkRange"))
560af5c5 1834
560af5c5 1835
2d379b6a 1836(defclass scale (range)
1837 ((digits
27cb3ffb 1838 :allocation :param
2d379b6a 1839 :accessor scale-digits
1840 :initarg :digits
2ed3bebb 1841 :type int)
2d379b6a 1842 (draw-value
27cb3ffb 1843 :allocation :param
2d379b6a 1844 :accessor scale-draw-value-p
1845 :initarg :draw-value
1846 :type boolean)
1847 (value-position
27cb3ffb 1848 :allocation :param
2d379b6a 1849 :location "GtkScale::value_pos"
1850 :accessor scale-value-position
1851 :initarg :value-position
1852 :type position-type)
1853 (value-width
1854 :allocation :virtual
1855 :location "gtk_scale_get_value_width"
1856 :reader ruler-value-width
1857 :type int))
1858 (:metaclass widget-class)
1859 (:alien-name "GtkScale"))
560af5c5 1860
560af5c5 1861
2d379b6a 1862(defclass hscale (scale)
1863 ()
1864 (:metaclass widget-class)
1865 (:alien-name "GtkHScale"))
1866
1867
1868(defclass vscale (scale)
1869 ()
1870 (:metaclass widget-class)
1871 (:alien-name "GtkVScale"))
1872
1873
1874(defclass scrollbar (range)
1875 ()
1876 (:metaclass widget-class)
1877 (:alien-name "GtkScrollbar"))
1878
1879
1880(defclass hscrollbar (scrollbar)
1881 ()
1882 (:metaclass widget-class)
1883 (:alien-name "GtkHScrollbar"))
1884
1885
1886(defclass vscrollbar (scrollbar)
1887 ()
1888 (:metaclass widget-class)
1889 (:alien-name "GtkVScrollbar"))
560af5c5 1890
560af5c5 1891
1892(defclass separator (widget)
1893 ()
1894 (:metaclass widget-class)
1895 (:alien-name "GtkSeparator"))
1896
1897
1898(defclass hseparator (separator)
1899 ()
1900 (:metaclass widget-class)
1901 (:alien-name "GtkHSeparator"))
1902
1903
1904(defclass vseparator (separator)
1905 ()
1906 (:metaclass widget-class)
1907 (:alien-name "GtkVSeparator"))
1908
1909
1910; (defclass preview widget
1911; :slots
1912; ((expand :read-method :arg :type boolean)))
1913
d520140e 1914(defclass progress (widget)
1915 ((activity-mode
27cb3ffb 1916 :allocation :param
d520140e 1917 :accessor progress-activity-mode-p
1918 :initarg :activity-mode
1919 :type boolean)
1920 (show-text
27cb3ffb 1921 :allocation :param
d520140e 1922 :accessor progress-show-text-p
1923 :initarg :show-text
1924 :type boolean)
1925 (text-xalign
27cb3ffb 1926 :allocation :param
d520140e 1927 :accessor progress-text-xalign
1928 :initarg :text-xalign
1929 :type single-float)
1930 (text-yalign
27cb3ffb 1931 :allocation :param
d520140e 1932 :accessor progress-text-yalign
1933 :initarg :text-yalign
1934 :type single-float)
1935 (format-string
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
1941 :type string)
1942 (adjustment
1943 :allocation :virtual
1944 :location ("gtk_progress_get_adjustment"
1945 "gtk_progress_set_adjustment")
1946 :accessor progress-adjustment
1947 :initarg :adjustment
1948 :type adjustment)
1949 (percentage
1950 :allocation :virtual
1951 :location ("gtk_progress_get_current_percentage"
1952 "gtk_progress_set_percentage")
1953 :accessor progress-percentage
1954 :initarg :percentage
1955 :type single-float)
1956 (value
1957 :allocation :virtual
1958 :location ("gtk_progress_get_value" "gtk_progress_set_value")
1959 :accessor progress-value
1960 :initarg :value
1961 :type single-float)
1962 (text
1963 :allocation :virtual
1964 :location ("gtk_progress_get_current_text")
1965 :reader progress-text
1966 :type string))
1967 (:metaclass widget-class)
1968 (:alien-name "GtkProgress"))
1969
1970
1971(defclass progress-bar (progress)
1972 ((orientation
27cb3ffb 1973 :allocation :param
d520140e 1974 :accessor progress-bar-orientation
1975 :initarg :orientation
1976 :type progress-bar-orientation)
1977 (bar-style
27cb3ffb 1978 :allocation :param
d520140e 1979 :accessor progress-bar-style
1980 :initarg :bar-style
1981 :type progress-bar-style)
1982 (activity-step
27cb3ffb 1983 :allocation :param
d520140e 1984 :accessor progress-bar-activity-step
1985 :initarg :activity-step
1986 :type unsigned-int)
1987 (activity-blocks
27cb3ffb 1988 :allocation :param
d520140e 1989 :accessor progress-bar-activity-blocks
1990 :initarg :activity-blocks
1991 :type unsigned-int)
1992 (discrete-blocks
27cb3ffb 1993 :allocation :param
d520140e 1994 :accessor progress-bar-discrete-blocks
1995 :initarg :discrete-blocks
1996 :type unsigned-int)
1997 (fraction
27cb3ffb 1998 :allocation :param
d520140e 1999 :accessor progress-bar-fraction
2000 :initarg :fraction
2001 :type single-float)
2002 (pulse-step
27cb3ffb 2003 :allocation :param
d520140e 2004 :accessor progress-bar-pulse-step
2005 :initarg :pulse-step
2006 :type single-float)
2007 (text
2008 :allocation :virtual
2009 :location ("gtk_progress_get_current_text" "gtk_progress_bar_set_text")
2010 :accessor progress-bar-text
2011 :type string))
2012 (:metaclass widget-class)
2013 (:alien-name "GtkProgressBar"))
560af5c5 2014
2015; (defclass item-factory object)
2016