560af5c5 |
1 | ;; Common Lisp bindings for GTK+ v2.0.x |
2 | ;; Copyright (C) 1999-2000 Espen S. Johnsen <espejohn@online.no> |
3 | ;; |
4 | ;; This library is free software; you can redistribute it and/or |
5 | ;; modify it under the terms of the GNU Lesser General Public |
6 | ;; License as published by the Free Software Foundation; either |
7 | ;; version 2 of the License, or (at your option) any later version. |
8 | ;; |
9 | ;; This library is distributed in the hope that it will be useful, |
10 | ;; but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 | ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
12 | ;; Lesser General Public License for more details. |
13 | ;; |
14 | ;; You should have received a copy of the GNU Lesser General Public |
15 | ;; License along with this library; if not, write to the Free Software |
16 | ;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
17 | |
18 | ;; $Id: gtktypes.lisp,v 1.1 2000-08-14 16:44:59 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 | ; (define-boxed accel-group :c-name "GtkAccelGroup") |
44 | |
45 | |
46 | (deftype (accel-group "GtkAccelGroup") () 'pointer) |
47 | |
48 | (deftype accel-entry () 'pointer) |
49 | (deftype radio-button-group () 'pointer) |
50 | (deftype radio-menu-item-group () 'pointer) |
51 | ; (define-boxed ctree-node :c-name "GtkCTreeNode") |
52 | |
53 | |
54 | (defclass data (object) |
55 | () |
56 | (:metaclass object-class) |
57 | (:alien-name "GtkData")) |
58 | |
59 | |
60 | (defclass adjustment (data) |
61 | ((lower |
62 | :allocation :alien |
63 | :accessor adjustment-lower |
64 | :initarg :lower |
65 | :type single-float) |
66 | (upper |
67 | :allocation :alien |
68 | :accessor adjustment-upper |
69 | :initarg :upper |
70 | :type single-float) |
71 | (value |
72 | :allocation :alien |
73 | :accessor adjustment-value |
74 | :initarg :value |
75 | :type single-float) |
76 | (step-increment |
77 | :allocation :alien |
78 | :accessor adjustment-step-increment |
79 | :initarg :step-increment |
80 | :type single-float) |
81 | (page-increment |
82 | :allocation :alien |
83 | :accessor adjustment-page-increment |
84 | :initarg :page-increment |
85 | :type single-float) |
86 | (page-size |
87 | :allocation :alien |
88 | :accessor adjustment-page-size |
89 | :initarg :page-size |
90 | :type single-float)) |
91 | (:metaclass object-class) |
92 | (:alien-name "GtkAdjustment")) |
93 | |
94 | |
95 | ; (define-class tooltips data |
96 | ; :slots |
97 | ; ;; slots not accessible through the arg mechanism |
98 | ; ((delay :type unsigned-int))) |
99 | |
100 | |
101 | ;; Forward declaration, the real definition is in gtkwidget.lisp |
102 | (defclass widget (object) |
103 | () |
104 | (:metaclass object-class) |
105 | (:alien-name "GtkWidget")) |
106 | |
107 | |
108 | (defclass misc (widget) |
109 | ((xalign |
110 | :allocation :arg |
111 | :accessor misc-xalign |
112 | :initarg :xalign |
113 | :type single-float) |
114 | (yalign |
115 | :allocation :arg |
116 | :accessor misc-yalign |
117 | :initarg :yalign |
118 | :type single-float) |
119 | (xpad |
120 | :allocation :arg |
121 | :accessor misc-xpad |
122 | :initarg :xpad |
123 | :type int) |
124 | (ypad |
125 | :allocation :arg |
126 | :accessor misc-ypad |
127 | :initarg :ypad |
128 | :type int)) |
129 | (:metaclass widget-class) |
130 | (:alien-name "GtkMisc")) |
131 | |
132 | |
133 | (defclass label (misc) |
134 | ((label |
135 | :allocation :arg |
136 | :accessor label-label |
137 | :initarg :label |
138 | :type string) |
139 | (pattern |
140 | :allocation :arg |
141 | :accessor label-pattern |
142 | :initarg :pattern |
143 | :type string) |
144 | (justify |
145 | :allocation :arg |
146 | :accessor label-justify |
147 | :initarg :justify |
148 | :type justification) |
149 | (wrap |
150 | :allocation :arg |
151 | :accessor label-line-wrap-p |
152 | :initarg :wrap |
153 | :type boolean)) |
154 | (:metaclass widget-class) |
155 | (:alien-name "GtkLabel")) |
156 | |
157 | |
158 | (defclass accel-label (label) |
159 | ((widget |
160 | :allocation :arg |
161 | :location "GtkAccelLabel::accel_widget" |
162 | :accessor accel-widget |
163 | :initarg :widget |
164 | :type widget) |
165 | (width |
166 | :allocation :virtual |
167 | :location "gtk_accel_label_get_accel_width" |
168 | :reader width |
169 | :type unsigned-int)) |
170 | (:metaclass widget-class) |
171 | (:alien-name "GtkAccelLabel")) |
172 | |
173 | |
174 | (defclass tips-query (label) |
175 | ((emit-always |
176 | :allocation :arg |
177 | :accessor tips-query-emit-always-p |
178 | :initarg :emit-always |
179 | :type boolean) |
180 | (caller |
181 | :allocation :arg |
182 | :accessor tips-query-caller |
183 | :initarg :caller |
184 | :type widget) |
185 | (label-inactive |
186 | :allocation :arg |
187 | :accessor tips-query-label-inactive |
188 | :initarg :label-inactive |
189 | :type string) |
190 | (label-no-tip |
191 | :allocation :arg |
192 | :accessor tips-query-label-no-tip |
193 | :initarg :label-no-tip |
194 | :type string)) |
195 | (:metaclass widget-class) |
196 | (:alien-name "GtkTipsQuery")) |
197 | |
198 | |
199 | (defclass arrow (misc) |
200 | ((arrow-type |
201 | :allocation :arg |
202 | :accessor arrow-arrow-type |
203 | :initarg :arrow-type |
204 | :type arrow-type) |
205 | (shadow-type |
206 | :allocation :arg |
207 | :accessor arrow-shadow-type |
208 | :initarg :shadow-type |
209 | :type shadow-type)) |
210 | (:metaclass widget-class) |
211 | (:alien-name "GtkArrow")) |
212 | |
213 | |
214 | (defclass image (misc) |
215 | () |
216 | (:metaclass widget-class) |
217 | (:alien-name "GtkImage")) |
218 | |
219 | |
220 | (defclass pixmap (misc) |
221 | () |
222 | (:metaclass widget-class) |
223 | (:alien-name "GtkPixmap")) |
224 | |
225 | |
226 | ;; Forward declaration, the real definition is in gtkcontainer.lisp |
227 | (defclass container (widget) |
228 | () |
229 | (:metaclass widget-class) |
230 | (:alien-name "GtkContainer")) |
231 | |
232 | (defclass container-child () |
233 | ((parent |
234 | :initarg :parent |
235 | :type container) |
236 | (child |
237 | :initarg :child |
238 | :type widget))) |
239 | |
240 | |
241 | (defclass bin (container) |
242 | ((child |
243 | :allocation :virtual |
244 | :location bin-child |
245 | :initarg :child |
246 | :type widget)) |
247 | (:metaclass container-class) |
248 | (:alien-name "GtkBin")) |
249 | |
250 | (defclass bin-child (container-child)) |
251 | |
252 | |
253 | (defclass alignment (bin) |
254 | ((xalign |
255 | :allocation :arg |
256 | :accessor alignment-xalign |
257 | :initarg :xalign |
258 | :type single-float) |
259 | (yalign |
260 | :allocation :arg |
261 | :accessor alignment-yalign |
262 | :initarg :yalign |
263 | :type single-float) |
264 | (xscale |
265 | :allocation :arg |
266 | :accessor alignment-xscale |
267 | :initarg :xscale |
268 | :type single-float) |
269 | (yscale |
270 | :allocation :arg |
271 | :accessor alignment-yscale |
272 | :initarg :yscale |
273 | :type single-float)) |
274 | (:metaclass container-class) |
275 | (:alien-name "GtkAlignment")) |
276 | |
277 | (defclass alignment-child (bin-child)) |
278 | |
279 | |
280 | (defclass frame (bin) |
281 | ((label |
282 | :allocation :arg |
283 | :accessor frame-label |
284 | :initarg :label |
285 | :type string) |
286 | (label-xalign |
287 | :allocation :arg |
288 | :accessor frame-label-xalign |
289 | :initarg :label-xalign |
290 | :type single-float) |
291 | (label-yalign |
292 | :allocation :arg |
293 | :accessor frame-label-yalign |
294 | :initarg :label-yalign |
295 | :type single-float) |
296 | (shadow-type |
297 | :allocation :arg |
298 | :location "GtkFrame::shadow" |
299 | :accessor frame-shadow-type |
300 | :initarg :shadow-type |
301 | :type shadow-type)) |
302 | (:metaclass container-class) |
303 | (:alien-name "GtkFrame")) |
304 | |
305 | (defclass frame-child (bin-child)) |
306 | |
307 | |
308 | ; (defclass aspect-frame (frame) |
309 | ; ((xalign |
310 | ; :allocation :arg |
311 | ; :accessor aspect-frame-xalign |
312 | ; :initarg :xalign |
313 | ; :type single-float) |
314 | ; (yalign |
315 | ; :allocation :arg |
316 | ; :accessor aspect-frame-yalign |
317 | ; :initarg :yalign |
318 | ; :type single-float) |
319 | ; (ratio |
320 | ; :allocation :arg |
321 | ; :accessor aspect-frame-ratio |
322 | ; :initarg :ratio |
323 | ; :type single-float) |
324 | ; (obey-child |
325 | ; :allocation :arg |
326 | ; :accessor aspect-frame-obey-child-p |
327 | ; :initarg :obey-child |
328 | ; :type boolean)) |
329 | ; (:metaclass container-class) |
330 | ; (:alien-name "GtkAspectFrame")) |
331 | |
332 | ; (defclass aspect-frame-child (aspect-child)) |
333 | |
334 | |
335 | (defclass button (bin) |
336 | ((label |
337 | :allocation :arg |
338 | :accessor button-label |
339 | :initarg :label |
340 | :type string) |
341 | (relief |
342 | :allocation :arg |
343 | :accessor button-relief |
344 | :initarg :relief |
345 | :type relief-style)) |
346 | (:metaclass container-class) |
347 | (:alien-name "GtkButton")) |
348 | |
349 | (defclass button-child (bin-child)) |
350 | |
351 | |
352 | (defclass toggle-button (button) |
353 | ((active |
354 | :allocation :arg |
355 | :accessor toggle-button-active-p |
356 | :initarg :active |
357 | :type boolean) |
358 | (draw-indicator |
359 | :allocation :arg |
360 | :accessor toggle-button-draw-indicator-p |
361 | :initarg :draw-indicator |
362 | :type boolean)) |
363 | (:metaclass container-class) |
364 | (:alien-name "GtkToggleButton")) |
365 | |
366 | (defclass toggle-button-child (button-child)) |
367 | |
368 | |
369 | (defclass check-button (toggle-button) |
370 | () |
371 | (:metaclass container-class) |
372 | (:alien-name "GtkCheckButton")) |
373 | |
374 | (defclass check-button-child (toggle-button-child)) |
375 | |
376 | |
377 | (defclass radio-button (check-button) |
378 | ((group |
379 | :allocation :arg |
380 | :initarg :group |
381 | ; :access :write-only |
382 | :type pointer)) ;radio-button-group)) |
383 | (:metaclass container-class) |
384 | (:alien-name "GtkRadioButton")) |
385 | |
386 | (defclass radio-button-child (check-button-child)) |
387 | |
388 | |
389 | (defclass option-menu (button) |
390 | ((menu |
391 | :allocation :virtual |
392 | :location ("gtk_option_menu_get_menu" (setf option-menu-menu)) |
393 | :reader option-menu-menu |
394 | :initarg :menu |
395 | :type widget) |
396 | (history |
397 | :allocation :virtual |
398 | :location (nil "gtk_option_menu_set_history") |
399 | :writer (setf option-menu-history) |
400 | :initarg :history |
401 | :type unsigned-int)) |
402 | (:metaclass container-class) |
403 | (:alien-name "GtkOptionMenu")) |
404 | |
405 | (defclass option-menu-child (button-child)) |
406 | |
407 | |
408 | (defclass item (bin) |
409 | () |
410 | (:metaclass container-class) |
411 | (:alien-name "GtkOptionMenu")) |
412 | |
413 | (defclass item-child (bin-child)) |
414 | |
415 | |
416 | (defclass menu-item (item) |
417 | () |
418 | ; :slots |
419 | ; ;; slots not accessible through the arg mechanism |
420 | ; ((label :write-only t :access-method :lisp :type string) |
421 | ; (submenu :write-method :lisp :type menu-item) |
422 | ; (placement :write-only t :type submenu-placement) |
423 | ; (toggle-indicator :c-reader "gtk_menu_item_get_show_toggle" |
424 | ; :write-method :lisp :type boolean) |
425 | ; (submenu-indicator :c-reader "gtk_menu_item_get_show_submenu" |
426 | ; :write-method :lisp :type boolean))) |
427 | (:metaclass container-class) |
428 | (:alien-name "GtkMenuItem")) |
429 | |
430 | (defclass menu-item-child (item-child)) |
431 | |
432 | |
433 | (defclass check-menu-item (menu-item) |
434 | () |
435 | ; :slots |
436 | ; ;; slots not accessible through the arg mechanism |
437 | ; ((active :type boolean) |
438 | ; (toggle-indicator :c-writer "gtk_check_menu_item_set_show_toggle" |
439 | ; :c-reader "gtk_check_menu_item_get_show_toggle" |
440 | ; :type boolean))) |
441 | (:metaclass container-class) |
442 | (:alien-name "GtkCheckMenuItem")) |
443 | |
444 | (defclass check-menu-item-child (menu-item-child)) |
445 | |
446 | (defclass radio-menu-item (check-menu-item) |
447 | () |
448 | ; :slots |
449 | ; ;; slots not accessible through the arg mechanism |
450 | ; ((group :c-reader "gtk_radio_menu_item_group" |
451 | ; :type radio-menu-item-group))) |
452 | (:metaclass container-class) |
453 | (:alien-name "GtkRadioMenuItem")) |
454 | |
455 | (defclass radio-menu-item-child (check-menu-item-child)) |
456 | |
457 | |
458 | (defclass tearoff-menu-item (menu-item) |
459 | () |
460 | (:metaclass container-class) |
461 | (:alien-name "GtkTearoffMenuItem")) |
462 | |
463 | (defclass tearoff-menu-item-child (menu-item-child)) |
464 | |
465 | (defclass list-item (item) |
466 | () |
467 | (:metaclass container-class) |
468 | (:alien-name "GtkListItem")) |
469 | |
470 | (defclass list-item-child (item-child)) |
471 | |
472 | |
473 | (defclass tree-item (item) |
474 | () |
475 | ; :slots |
476 | ; ;; slots not accessible through the arg mechanism |
477 | ; ((subtree :write-method :lisp :type tree-item))) |
478 | (:metaclass container-class) |
479 | (:alien-name "GtkTreeItem")) |
480 | |
481 | (defclass tree-item-child (item-child)) |
482 | |
483 | |
484 | (defclass window (bin) |
485 | ((type |
486 | :allocation :arg |
487 | :accessor window-type |
488 | :initarg :type |
489 | :type window-type) |
490 | (title |
491 | :allocation :arg |
492 | :accessor window-title |
493 | :initarg :title |
494 | :type string) |
495 | (auto-shrink |
496 | :allocation :arg |
497 | :accessor window-auto-shrink-p |
498 | :initarg :auto-shrink |
499 | :type boolean) |
500 | (allow-shrink |
501 | :allocation :arg |
502 | :accessor window-allow-shrink-p |
503 | :initarg :allow-shrink |
504 | :type boolean) |
505 | (allow-grow |
506 | :allocation :arg |
507 | :accessor window-allow-grow-p |
508 | :initarg :allow-grow |
509 | :type boolean) |
510 | (modal |
511 | :allocation :arg |
512 | :accessor window-modal-p |
513 | :initarg :modal |
514 | :type boolean) |
515 | (position |
516 | :allocation :arg |
517 | :location "GtkWindow::window_position" |
518 | :accessor window-position |
519 | :initarg :position |
520 | :type window-position) |
521 | (default-width |
522 | :allocation :arg |
523 | :accessor window-default-width |
524 | :initarg :default-width |
525 | :type int) |
526 | (default-height |
527 | :allocation :arg |
528 | :accessor window-default-height |
529 | :initarg :default-height |
530 | :type int)) |
531 | (:metaclass container-class) |
532 | (:alien-name "GtkWindow")) |
533 | |
534 | (defclass window-child (bin-child)) |
535 | |
536 | |
537 | ; (defclass color-selection-dialog window |
538 | ; :slots |
539 | ; ;; slots not accessible through the arg mechanism |
540 | ; ((colorsel :read-only t :type widget) |
541 | ; (main-vbox :read-only t :type widget) |
542 | ; (ok-button :read-only t :type widget) |
543 | ; (reset-button :read-only t :type widget) |
544 | ; (cancel-button :read-only t :type widget) |
545 | ; (help-button :read-only t :type widget))) |
546 | |
547 | ; (defclass dialog window |
548 | ; :slots |
549 | ; ;; slots not accessible through the arg mechanism |
550 | ; ((action-area :read-only t :type widget) |
551 | ; (vbox :read-only t :type widget))) |
552 | |
553 | ; (defclass input-dialog dialog) |
554 | |
555 | ; (defclass file-selection window |
556 | ; :slots |
557 | ; ;; slots not accessible through the arg mechanism |
558 | ; ((filename :type string) |
559 | ; (action-area :read-only t :type widget) |
560 | ; (ok-button :read-only t :type widget) |
561 | ; (cancel-button :read-only t :type widget))) |
562 | |
563 | ; (defclass plug window) |
564 | |
565 | ; (defclass event-box bin) |
566 | |
567 | ; (defclass handle-box bin |
568 | ; :slots |
569 | ; ((shadow-type :read-method :arg :arg-name "shadow" |
570 | ; :type shadow-type) |
571 | ; (handle-position :read-method :arg :type position-type) |
572 | ; (snap-edge :read-method :arg :type position-type))) |
573 | |
574 | (defclass scrolled-window (bin) |
575 | ((hadjustment |
576 | :allocation :arg |
577 | :accessor scrolled-window-hadjustment |
578 | :initarg :hadjustment |
579 | :type adjustment) |
580 | (vadjustment |
581 | :allocation :arg |
582 | :accessor scrolled-window-vadjustment |
583 | :initarg :vadjustment |
584 | :type adjustment) |
585 | (hscrollbar-policy |
586 | :allocation :arg |
587 | :accessor scrolled-window-hscrollbar-policy |
588 | :initarg :hscrollbar-policy |
589 | :type policy-type) |
590 | (vscrollbar-policy |
591 | :allocation :arg |
592 | :accessor scrolled-window-vscrollbar-policy |
593 | :initarg :vscrollbar-policy |
594 | :type policy-type) |
595 | (placement |
596 | :allocation :arg |
597 | :location "GtkScrolledWindow::window_placement" |
598 | :accessor scrolled-window-placement |
599 | :initarg :placement |
600 | :type corner-type) |
601 | (shadow-type |
602 | :allocation :arg |
603 | :location "GtkScrolledWindow::shadow" |
604 | :accessor scrolled-window-shadow-type |
605 | :initarg :shadow-type |
606 | :type shadow-type) |
607 | (hscrollbar |
608 | :allocation :virtual |
609 | :location "gtk_scrolled_window_get_hscrollbar" |
610 | :accessor scrolled-window-hscrollbar |
611 | :type widget) |
612 | (vscrollbar |
613 | :allocation :virtual |
614 | :location "gtk_scrolled_window_get_vscrollbar" |
615 | :accessor scrolled-window-vscrollbar |
616 | :type widget)) |
617 | (:metaclass container-class) |
618 | (:alien-name "GtkScrolledWindow")) |
619 | |
620 | (defclass scrolled-window-child (bin-child)) |
621 | |
622 | |
623 | |
624 | ; (defclass viewport bin |
625 | ; :slots |
626 | ; ((hadjustment :read-method :arg :type adjustment) |
627 | ; (vadjustment :read-method :arg :type adjustment) |
628 | ; (shadow-type :read-method :arg :type shadow-type))) |
629 | |
630 | (defclass box (container) |
631 | ((spacing |
632 | :allocation :arg |
633 | :accessor box-spacing |
634 | :initarg :spacing |
635 | :type int) |
636 | (homogeneous |
637 | :allocation :arg |
638 | :accessor box-homogeneous-p |
639 | :initarg :homogeneous |
640 | :type boolean)) |
641 | (:metaclass container-class) |
642 | (:alien-name "GtkBox")) |
643 | |
644 | (defclass box-child (container-child) |
645 | ((expand |
646 | :allocation :arg |
647 | :accessor box-child-expand-p |
648 | :initarg :expand |
649 | :type boolean) |
650 | (fill |
651 | :allocation :arg |
652 | :accessor box-child-fill-p |
653 | :initarg :fill |
654 | :type boolean) |
655 | (padding |
656 | :allocation :arg |
657 | :accessor box-child-padding |
658 | :initarg :padding |
659 | :type unsigned-long) |
660 | (pack-type |
661 | :allocation :arg |
662 | :accessor box-child-pack-type |
663 | :initarg :pack-type |
664 | :type pack-type) |
665 | (position |
666 | :allocation :arg |
667 | :accessor box-child-position |
668 | :initarg :position |
669 | :type long)) |
670 | (:metaclass child-class)) |
671 | |
672 | |
673 | (defclass button-box (box) |
674 | ((spacing |
675 | :allocation :virtual |
676 | :location ("gtk_button_box_get_spacing" "gtk_button_box_set_spacing") |
677 | :accessor button-box-spacing |
678 | :type int) |
679 | (layout |
680 | :allocation :virtual |
681 | :location ("gtk_button_box_get_layout" "gtk_button_box_set_layout") |
682 | :accessor button-box-layout |
683 | :type button-box-style)) |
684 | (:metaclass container-class) |
685 | (:alien-name "GtkButtonBox")) |
686 | |
687 | (defclass button-box-child (box-child) |
688 | () |
689 | (:metaclass child-class)) |
690 | |
691 | (defclass hbutton-box (button-box) |
692 | () |
693 | (:metaclass container-class) |
694 | (:alien-name "GtkHButtonBox")) |
695 | |
696 | (defclass hbutton-box-child (button-box-child) |
697 | () |
698 | (:metaclass child-class)) |
699 | |
700 | (defclass vbutton-box-child (button-box-child) |
701 | () |
702 | (:metaclass child-class)) |
703 | |
704 | (defclass vbox (box) |
705 | () |
706 | (:metaclass container-class) |
707 | (:alien-name "GtkVBox")) |
708 | |
709 | (defclass vbox-child (box-child) |
710 | () |
711 | (:metaclass child-class)) |
712 | |
713 | |
714 | |
715 | ; (defclass color-selection vbox |
716 | ; :slots |
717 | ; ((policy :c-writer "gtk_color_selection_set_update_policy" |
718 | ; :read-method :arg :type update-type) |
719 | ; (use-opacity :c-writer "gtk_color_selection_set_opacity" |
720 | ; :read-method :arg :type boolean) |
721 | ; ;; slots not accessible through the arg mechanism |
722 | ; (color :access-method :lisp))) |
723 | |
724 | ; (defclass gamma-curve vbox) |
725 | |
726 | (defclass hbox (box) |
727 | () |
728 | (:metaclass container-class) |
729 | (:alien-name "GtkHBox")) |
730 | |
731 | (defclass hbox-child (box-child) |
732 | () |
733 | (:metaclass child-class)) |
734 | |
735 | |
736 | |
737 | ; (defclass statusbar hbox) |
738 | |
739 | ; (defclass clist container |
740 | ; :c-name "GtkCList" |
741 | ; :c-prefix "gtk_clist_" |
742 | ; :slots |
743 | ; ((n-columns :read-only t :initarg t :access-method :arg |
744 | ; :type unsigned-int) |
745 | ; (shadow-type :read-method :arg :type shadow-type) |
746 | ; (selection-mode :read-method :arg :type selection-mode) |
747 | ; (row-height :read-method :arg :type unsigned-int) |
748 | ; (reorderable :read-method :arg :type boolean) |
749 | ; (titles-visible :write-method :lisp :type boolean) |
750 | ; (titles-active :access-method :arg :type boolean) |
751 | ; (use-drag-icons :read-method :arg :type boolean) |
752 | ; (sort-type :read-method :arg :type sort-type) |
753 | ; ;; slots not accessible through the arg mechanism |
754 | ; (hadjustment :type adjustment) |
755 | ; (vadjustment :type adjustment) |
756 | ; (sort-column :type int) |
757 | ; (focus-row :reader %clist-focus-row :read-only t :type int) |
758 | ; (n-rows :read-only t :type int))) |
759 | |
760 | ; (defclass ctree clist |
761 | ; :c-name "GtkCTree" |
762 | ; :c-prefix "gtk_ctree_" |
763 | ; :slots |
764 | ; ((n-columns :read-only t :initarg t :access-method :arg |
765 | ; :type unsigned-int) |
766 | ; (tree-column :read-only t :initarg t :access-method :arg |
767 | ; :type unsigned-int) |
768 | ; (indent :read-method :arg :type unsigned-int) |
769 | ; (spacing :read-method :arg :type unsigned-int) |
770 | ; (show-stub :read-method :arg :type boolean) |
771 | ; (line-style :read-method :arg :type ctree-line-style) |
772 | ; (expander-style :read-method :arg :type ctree-expander-style))) |
773 | |
774 | ; (defclass fixed container) |
775 | |
776 | ; (defclass notebook container |
777 | ; :slots |
778 | ; ((show-tabs :read-method :arg :type boolean) |
779 | ; (show-border :read-method :arg :type boolean) |
780 | ; (scrollable :read-method :arg :type boolean) |
781 | ; (enable-popup :access-method :arg :type boolean) |
782 | ; (homogeneous :c-writer "gtk_notebook_set_homogeneous_tabs" |
783 | ; :read-method :arg :type boolean) |
784 | ; (current-page :c-writer "gtk_notebook_set_page" :type int) |
785 | ; (tab-pos :read-method :arg :type position-type) |
786 | ; (tab-border :read-method :arg :type unsigned-int) |
787 | ; (tab-hborder :read-method :arg :type unsigned-int) |
788 | ; (tab-vborder :read-method :arg :type unsigned-int)) |
789 | ; :child-slots |
790 | ; ((tab-label :access-method :arg :type string) |
791 | ; (menu-label :access-method :arg :type string) |
792 | ; (tab-fill :access-method :arg :type boolean) |
793 | ; (tab-pack :access-method :arg :type boolean) |
794 | ; (position :access-method :arg :type int))) |
795 | |
796 | ; (defclass font-selection notebook) |
797 | |
798 | ; (defclass paned container |
799 | ; :constructor nil |
800 | ; :slots |
801 | ; ((handle-size :read-method :arg :type unsigned-int) |
802 | ; (gutter-size :read-method :arg :type unsigned-int) |
803 | ; ;; slots not accessible through the arg mechanism |
804 | ; (position :write-only t :type int))) |
805 | |
806 | ; (defclass hpaned paned) |
807 | |
808 | ; (defclass vpaned paned) |
809 | |
810 | ; (defclass layout container |
811 | ; :slots |
812 | ; ;; slots not accessible through the arg mechanism |
813 | ; ((hadjustment :type adjustment) |
814 | ; (vadjustment :type adjustment) |
815 | ; (bin-window :read-only t :type gdk:window))) |
816 | |
817 | ; (defclass list-widget container |
818 | ; :c-name "GtkList" |
819 | ; :slots |
820 | ; ((selection-mode :read-method :arg :accessor list-selection-mode |
821 | ; :c-writer "gtk_list_set_selection_mode" |
822 | ; :type selection-mode))) |
823 | |
824 | ; (defclass menu-shell container :constructor nil) |
825 | |
826 | ; (defclass menu-bar menu-shell |
827 | ; :slots |
828 | ; ((shadow-type :read-method :arg :arg-name "shadow" |
829 | ; :type shadow-type))) |
830 | |
831 | ; (defclass menu menu-shell |
832 | ; :slots |
833 | ; ;; slots not accessible through the arg mechanism |
834 | ; ((accel-group :type accel-group) |
835 | ; (tearoff-state :write-only t :type boolean) |
836 | ; (title :write-only t :type string))) |
837 | |
838 | ; (defclass packer container |
839 | ; :slots |
840 | ; ((spacing :read-method :arg :type unsigned-int) |
841 | ; (default-border-width :read-method :arg :type unsigned-int) |
842 | ; (default-pad-x :access-method :arg :type unsigned-int) |
843 | ; (default-pad-y :access-method :arg :type unsigned-int) |
844 | ; (default-ipad-x :access-method :arg :type unsigned-int) |
845 | ; (default-ipad-y :access-method :arg :type unsigned-int)) |
846 | ; :child-slots |
847 | ; ((side :access-method :arg :type side-type) |
848 | ; (anchor :access-method :arg :type anchor-type) |
849 | ; (expand :access-method :arg :type boolean) |
850 | ; (fill-x :access-method :arg :type boolean) |
851 | ; (fill-y :access-method :arg :type boolean) |
852 | ; (use-default :access-method :arg :type boolean) |
853 | ; (border-width :access-method :arg :type unsigned-int) |
854 | ; (pad-x :access-method :arg :type unsigned-int) |
855 | ; (pad-y :access-method :arg :type unsigned-int) |
856 | ; (ipad-x :access-method :arg :type unsigned-int) |
857 | ; (ipad-y :access-method :arg :type unsigned-int) |
858 | ; (position :access-method :arg :type long))) |
859 | |
860 | ; (defclass socket container) |
861 | |
862 | ; (defclass table container |
863 | ; :slots |
864 | ; ((rows :access-method :arg :arg-name "n_rows" |
865 | ; :type unsigned-int) |
866 | ; (columns :access-method :arg :arg-name "n_columns" |
867 | ; :type unsigned-int) |
868 | ; (row-spacing :c-writer "gtk_table_set_row_spacings" |
869 | ; :accessor table-row-spacings |
870 | ; :read-method :arg :type unsigned-int) |
871 | ; (column-spacing :c-writer "gtk_table_set_col_spacings" |
872 | ; :accessor table-column-spacings |
873 | ; :read-method :arg :type unsigned-int) |
874 | ; (homogeneous :read-method :arg :type boolean)) |
875 | ; :child-slots |
876 | ; ((left-attach :access-method :arg :type unsigned-int) |
877 | ; (right-attach :access-method :arg :type unsigned-int) |
878 | ; (top-attach :access-method :arg :type unsigned-int) |
879 | ; (bottom-attach :access-method :arg :type unsigned-int) |
880 | ; (x-options :access-method :arg :type attach-options) |
881 | ; (y-options :access-method :arg :type attach-options) |
882 | ; (x-padding :access-method :arg :type unsigned-int) |
883 | ; (y-padding :access-method :arg :type unsigned-int) |
884 | ; ;; Slots added for convenience sake |
885 | ; (x-expand :access-method :lisp :type boolean) |
886 | ; (y-expand :access-method :lisp :type boolean) |
887 | ; (x-shrink :access-method :lisp :type boolean) |
888 | ; (y-shrink :access-method :lisp :type boolean) |
889 | ; (x-fill :access-method :lisp :type boolean) |
890 | ; (y-fill :access-method :lisp :type boolean))) |
891 | |
892 | ; (defclass toolbar container |
893 | ; :slots |
894 | ; ((orientation :read-method :arg :type orientation) |
895 | ; (toolbar-style :accessor toolbar-style |
896 | ; :c-writer "gtk_toolbar_set_style" |
897 | ; :read-method :arg :type toolbar-style) |
898 | ; (space-size :read-method :arg :type unsigned-int) |
899 | ; (space-style :read-method :arg :type toolbar-space-style) |
900 | ; (relief :c-writer "gtk_toolbar_set_button_relief" |
901 | ; :read-method :arg :type relief-style) |
902 | ; ;; slots not accessible through the arg mechanism |
903 | ; (tooltips :write-only t :type boolean))) |
904 | |
905 | (defclass tree (container) |
906 | () |
907 | ; :slots |
908 | ; ;; slots not accessible through the arg mechanism |
909 | ; ((selection-mode :type selection-mode) |
910 | ; (view-mode :type tree-view-mode) |
911 | ; (view-lines :type boolean) |
912 | ; (root-tree :read-only t :type tree))) |
913 | (:metaclass container-class) |
914 | (:alien-name "GtkTree")) |
915 | |
916 | |
917 | (defclass calendar (widget) |
918 | () |
919 | (:metaclass widget-class) |
920 | (:alien-name "GtkCalendar")) |
921 | |
922 | |
923 | ; (defclass drawing-area widget) |
924 | |
925 | ; (defclass curve drawing-area |
926 | ; :slots |
927 | ; ((curve-type :read-method :arg :type curve-type) |
928 | ; (min-x :access-method :arg :type single-float) |
929 | ; (max-x :access-method :arg :type single-float) |
930 | ; (min-y :access-method :arg :type single-float) |
931 | ; (max-y :access-method :arg :type single-float))) |
932 | |
933 | ; (defclass editable widget |
934 | ; :slots |
935 | ; ((position :type int) |
936 | ; (editable :read-method :arg :type boolean) |
937 | ; ;; slots not accessible through the arg mechanism |
938 | ; (text :access-method :lisp :type string))) |
939 | |
940 | ; (defclass entry editable |
941 | ; :slots |
942 | ; ((max-length :read-method :arg :type unsigned-int) |
943 | ; (visibility :read-method :arg :accessor entry-visible-p |
944 | ; :type boolean) |
945 | ; ;; slots not accessible through the arg mechanism |
946 | ; (text :type string))) |
947 | |
948 | ; (defclass combo hbox |
949 | ; :slots |
950 | ; ;; slots not accessible through the arg mechanism |
951 | ; ((entry :read-only t :type entry) |
952 | ; (use-arrows :type boolean) |
953 | ; (use-arrows-always :type boolean) |
954 | ; (case-sensitive :type boolean))) |
955 | |
956 | ; (defclass spin-button entry |
957 | ; :slots |
958 | ; ((adjustment :access-method :arg :type adjustment) |
959 | ; (climb-rate :access-method :arg :type single-float) |
960 | ; (digits :access-method :arg :type unsigned-int) |
961 | ; (snap-to-ticks :read-method :arg :type boolean) |
962 | ; (numeric :read-method :arg :type boolean) |
963 | ; (wrap :read-method :arg :type boolean) |
964 | ; (update-policy :read-method :arg :type spin-button-update-policy) |
965 | ; (shadow-type :read-method :arg :type shadow-type) |
966 | ; (value :read-method :arg :type single-float))) |
967 | |
968 | ; (defclass text editable |
969 | ; :slots |
970 | ; ((hadjustment :access-method :arg :type adjustment) |
971 | ; (vadjustment :access-method :arg :type adjustment) |
972 | ; (line-wrap :read-method :arg :type boolean) |
973 | ; (word-wrap :read-method :arg :type boolean) |
974 | ; ;; slots not accessible through the arg mechanism |
975 | ; (point :type unsigned-int) |
976 | ; (length :read-only t :type unsigned-int))) |
977 | |
978 | ; (defclass ruler widget |
979 | ; :constructor nil |
980 | ; :slots |
981 | ; ((lower :access-method :arg :type single-float) |
982 | ; (upper :access-method :arg :type single-float) |
983 | ; (position :access-method :arg :type single-float) |
984 | ; (max-size :access-method :arg :type single-float) |
985 | ; ;; slots not accessible through the arg mechanism |
986 | ; (:metric :write-only t :type metric-type))) |
987 | |
988 | ; (defclass hruler ruler) |
989 | |
990 | ; (defclass vruler ruler) |
991 | |
992 | ; (defclass range widget |
993 | ; :slots |
994 | ; ((update-policy :read-method :arg :type update-type) |
995 | ; ;; slots not accessible through the arg mechanism |
996 | ; (adjustment :type adjustment))) |
997 | |
998 | ; (defclass scale range |
999 | ; :constructor nil |
1000 | ; :slots |
1001 | ; ((digits :read-method :arg :type unsigned-int) |
1002 | ; (draw-value :read-method :arg :type boolean) |
1003 | ; (value-pos :read-method :arg :type position-type) |
1004 | ; ;; slots not accessible through the arg mechanism |
1005 | ; (value-width :read-only t :type int))) |
1006 | |
1007 | ; (defclass hscale scale) |
1008 | |
1009 | ; (defclass vscale scale) |
1010 | |
1011 | ; (defclass scrollbar range :constructor nil) |
1012 | |
1013 | ; (defclass hscrollbar scrollbar) |
1014 | |
1015 | ; (defclass vscrollbar scrollbar) |
1016 | |
1017 | (defclass separator (widget) |
1018 | () |
1019 | (:metaclass widget-class) |
1020 | (:alien-name "GtkSeparator")) |
1021 | |
1022 | |
1023 | (defclass hseparator (separator) |
1024 | () |
1025 | (:metaclass widget-class) |
1026 | (:alien-name "GtkHSeparator")) |
1027 | |
1028 | |
1029 | (defclass vseparator (separator) |
1030 | () |
1031 | (:metaclass widget-class) |
1032 | (:alien-name "GtkVSeparator")) |
1033 | |
1034 | |
1035 | ; (defclass preview widget |
1036 | ; :slots |
1037 | ; ((expand :read-method :arg :type boolean))) |
1038 | |
1039 | ; (defclass progress widget |
1040 | ; :slots |
1041 | ; ((activity-mode :read-method :arg :type boolean) |
1042 | ; (show-text :read-method :arg :type boolean) |
1043 | ; (text-xalign :access-method :arg :type single-float) |
1044 | ; (text-yalign :access-method :arg :type single-float) |
1045 | ; ;; slots not accessible through the arg mechanism |
1046 | ; (format-string :type string) |
1047 | ; (adjustment :type adjustment) |
1048 | ; (percentage :c-reader "gtk_progress_get_current_percentage" |
1049 | ; :type single-float) |
1050 | ; (value :type single-float) |
1051 | ; (text :c-reader "gtk_progress_get_current_text" |
1052 | ; :read-only t :type string))) |
1053 | |
1054 | ; (defclass progress-bar progress |
1055 | ; :slots |
1056 | ; ((adjustment :c-writer "gtk_progress_set_adjustment" |
1057 | ; :read-method :arg :type adjustment) |
1058 | ; (orientation :read-method :arg :type progress-bar-orientation) |
1059 | ; (bar-style :read-method :arg :accessor progress-bar-style |
1060 | ; :type progress-bar-style) |
1061 | ; (activity-step :read-method :arg :type unsigned-int) |
1062 | ; (activity-blocks :read-method :arg :type unsigned-int) |
1063 | ; (discrete-blocks :read-method :arg :type unsigned-int))) |
1064 | |
1065 | ; (defclass item-factory object) |
1066 | |