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