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