55212af1 |
1 | ;; Common Lisp bindings for GTK+ v2.x |
2 | ;; Copyright 1999-2005 Espen S. Johnsen <espen@users.sf.net> |
0d07716f |
3 | ;; |
55212af1 |
4 | ;; Permission is hereby granted, free of charge, to any person obtaining |
5 | ;; a copy of this software and associated documentation files (the |
6 | ;; "Software"), to deal in the Software without restriction, including |
7 | ;; without limitation the rights to use, copy, modify, merge, publish, |
8 | ;; distribute, sublicense, and/or sell copies of the Software, and to |
9 | ;; permit persons to whom the Software is furnished to do so, subject to |
10 | ;; the following conditions: |
0d07716f |
11 | ;; |
55212af1 |
12 | ;; The above copyright notice and this permission notice shall be |
13 | ;; included in all copies or substantial portions of the Software. |
0d07716f |
14 | ;; |
55212af1 |
15 | ;; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, |
16 | ;; EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF |
17 | ;; MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. |
18 | ;; IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY |
19 | ;; CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, |
20 | ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE |
21 | ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
0d07716f |
22 | |
1e5e3e14 |
23 | ;; $Id: gtktypes.lisp,v 1.46 2006/04/26 12:12:37 espen Exp $ |
0d07716f |
24 | |
25 | (in-package "GTK") |
26 | |
61617d70 |
27 | (defclass requisition (boxed) |
28 | ((width |
29 | :allocation :alien |
30 | :accessor requisition-width |
31 | :initarg :width |
32 | :type int) |
33 | (height |
34 | :allocation :alien |
35 | :accessor requisition-height |
36 | :initarg :height |
37 | :type int)) |
eb4f580c |
38 | (:metaclass boxed-class)) |
39 | |
61617d70 |
40 | |
b542e6a7 |
41 | (defclass allocation (struct) |
42 | ((x |
43 | :allocation :alien |
44 | :accessor allocation-width |
45 | :initarg :x |
46 | :type int) |
47 | (y |
48 | :allocation :alien |
49 | :accessor allocation-width |
50 | :initarg :width |
51 | :type int) |
52 | (width |
53 | :allocation :alien |
54 | :accessor allocation-width |
55 | :initarg :width |
56 | :type int) |
57 | (height |
58 | :allocation :alien |
59 | :accessor allocation-height |
60 | :initarg :height |
61 | :type int)) |
6baf860c |
62 | (:metaclass struct-class)) |
b542e6a7 |
63 | |
61617d70 |
64 | (defclass border (boxed) |
65 | ((left |
66 | :allocation :alien |
67 | :accessor border-left |
68 | :initarg :left |
69 | :type int) |
70 | (right |
71 | :allocation :alien |
72 | :accessor border-right |
73 | :initarg :right |
74 | :type int) |
75 | (top |
76 | :allocation :alien |
77 | :accessor border-top |
78 | :initarg :top |
79 | :type int) |
80 | (bottom |
81 | :allocation :alien |
82 | :accessor border-bottom |
83 | :initarg :bottom |
84 | :type int)) |
eb4f580c |
85 | (:metaclass boxed-class)) |
61617d70 |
86 | |
378b3c5f |
87 | (defclass stock-item (struct) |
88 | ((id |
89 | :allocation :alien |
90 | :accessor stock-item-id |
91 | :initarg :id |
92 | :type string) |
93 | (label |
94 | :allocation :alien |
95 | :accessor stock-item-label |
96 | :initarg :label |
97 | :type string) |
98 | (modifier |
99 | :allocation :alien |
100 | :accessor stock-item-modifier |
101 | :initarg :modifier |
102 | :type gdk:modifier-type) |
103 | (keyval |
104 | :allocation :alien |
105 | :accessor stock-item-keyval |
106 | :initarg :keyval |
107 | :type int) |
108 | (translation-domain |
109 | :allocation :alien |
110 | :accessor stock-item-translation-domain |
111 | :initarg :translation-domain |
112 | :type string)) |
1e5e3e14 |
113 | (:metaclass struct-class) |
114 | (:ref stock-item-copy) |
115 | (:unref stock-item-free)) |
378b3c5f |
116 | |
9186f7e3 |
117 | ;; We don't really need to access any slots in this class, so we just |
118 | ;; specify the total size |
119 | (defclass tree-iter (boxed) |
120 | ( |
121 | ;; (stamp :allocation :alien :type int) |
122 | ;; (user-data :allocation :alien :type pointer) |
123 | ;; (user-data2 :allocation :alien :type pointer) |
124 | ;; (user-data3 :allocation :alien :type pointer) |
125 | ) |
126 | (:metaclass boxed-class) |
127 | (:size #.(+ (size-of 'int) (* 3 (size-of 'pointer))))) |
4e169141 |
128 | |
129 | |
130 | ;; (defclass tree-path (boxed) |
131 | ;; ((depth :allocation :alien :type int) |
132 | ;; (indices :allocation :alien :type pointer)) |
133 | ;; (:metaclass boxed-class)) |
134 | |
05a3b9e4 |
135 | (deftype tree-path () '(vector integer)) |
dcb31db6 |
136 | (register-type 'tree-path '|gtk_tree_path_get_type|) |
4e169141 |
137 | |
49043b9a |
138 | (deftype position () |
139 | '(or int (enum (:start 0) (:end -1) (:first 0) (:last -1)))) |
140 | |
1e5e3e14 |
141 | (define-type-method from-alien-form ((type position) form &key ref) |
142 | (declare (ignore type ref)) |
4d1fea77 |
143 | (from-alien-form 'int form)) |
144 | |
1e5e3e14 |
145 | (define-type-method from-alien-function ((type position) &key ref) |
146 | (declare (ignore type ref)) |
4d1fea77 |
147 | (from-alien-function 'int)) |
148 | |
1e5e3e14 |
149 | (define-type-method reader-function ((type position) &optional ref) |
150 | (declare (ignore type ref)) |
49043b9a |
151 | (reader-function 'int)) |
14eaa563 |
152 | |
61617d70 |
153 | (define-types-by-introspection "Gtk" |
154 | ;; Manually defined |
155 | ("GtkObject" :ignore t) |
156 | ("GtkRequisition" :ignore t) |
157 | ("GtkBorder" :ignore t) |
4e169141 |
158 | ("GtkTreeIter" :ignore t) |
159 | ("GtkTreePath" :ignore t) |
29de7c5f |
160 | ; ("GtkStyle" :ignore t) |
eb4f580c |
161 | |
a27dbb23 |
162 | ;; Manual override |
163 | ("GtkWidget" |
164 | :slots |
c66e7b94 |
165 | ((child-properties |
c23cc486 |
166 | :special t |
c66e7b94 |
167 | :accessor widget-child-properties |
eb4f580c |
168 | :type container-child) |
a27dbb23 |
169 | (window |
170 | :allocation :virtual |
171 | :getter "gtk_widget_get_window" |
172 | :reader widget-window |
173 | :type gdk:window) |
ef4819bd |
174 | (parent :merge t :initarg nil) |
175 | (visible :merge t :initarg nil) |
49043b9a |
176 | (parent-window |
177 | :allocation :virtual |
178 | :getter %widget-parent-window |
179 | :setter "gtk_widget_set_parent_window" |
180 | :accessor widget-parent-window |
181 | :initarg :parent-window |
182 | :type gdk:window) |
a27dbb23 |
183 | (state |
184 | :allocation :virtual |
185 | :getter "gtk_widget_get_state" |
186 | :setter "gtk_widget_set_state" |
187 | :accessor widget-state |
188 | :initarg :state |
189 | :type state-type) |
190 | (colormap |
191 | :allocation :virtual |
192 | :getter "gtk_widget_get_colormap" |
b542e6a7 |
193 | :setter "gtk_widget_set_colormap" |
194 | :initarg :colormap |
195 | :accessor widget-colormap |
a27dbb23 |
196 | :type gdk:colormap) |
197 | (visual |
198 | :allocation :virtual |
199 | :getter "gtk_widget_get_visual" |
200 | :reader widget-visual |
b542e6a7 |
201 | :type gdk:visual) |
202 | (direction |
203 | :allocation :virtual |
204 | :getter "gtk_widget_get_direction" |
205 | :setter "gtk_widget_set_direction" |
206 | :accessor widget-direction |
207 | :initarg :direction |
208 | :type text-direction) |
209 | (composite-name |
210 | :allocation :virtual |
211 | :getter "gtk_widget_get_composite_name" |
212 | :setter "gtk_widget_set_composite_name" |
213 | :accessor widget-composite-name |
214 | :initarg :composite-name |
49043b9a |
215 | :type (copy-of string)) ; will leak the string when setting |
b542e6a7 |
216 | (settings |
217 | :allocation :virtual |
218 | :getter "gtk_widget_get_settings" |
219 | :accessor widget-settings |
220 | :type settings) |
221 | (child-visible |
222 | :allocation :virtual |
223 | :getter "gtk_widget_get_child_visible" |
224 | :setter "gtk_widget_set_child_visible" |
225 | :accessor widget-child-visible-p |
226 | :initarg :child-visible |
29de7c5f |
227 | :type boolean) |
228 | (width-request |
229 | :merge t :unbound -1) |
230 | (height-request |
231 | :merge t :unbound -1))) |
b542e6a7 |
232 | |
a27dbb23 |
233 | ("GtkContainer" |
234 | :slots |
14eaa563 |
235 | ((child :ignore t) |
a27dbb23 |
236 | (children |
237 | :allocation :virtual |
14eaa563 |
238 | :setter (setf container-children) |
1e5e3e14 |
239 | :getter "gtk_container_get_children" |
240 | :reader container-children |
241 | :type (glist (copy-of widget))) |
242 | (internal-children ; for debugging |
243 | :allocation :virtual |
244 | :getter container-internal-children) |
14eaa563 |
245 | (child-type |
246 | :allocation :virtual |
9617dc95 |
247 | :getter "gtk_container_child_type" |
14eaa563 |
248 | :reader container-child-type |
249 | :type gtype) |
a27dbb23 |
250 | (focus-child |
251 | :allocation :virtual |
252 | :getter "gtk_container_get_focus_child" |
253 | :setter "gtk_container_set_focus_child" |
254 | :accessor container-focus-child |
255 | :initarg :focus-child |
256 | :type widget) |
b542e6a7 |
257 | (focus-chain |
258 | :allocation :virtual |
259 | :getter container-focus-chain |
260 | :setter (setf container-focus-chain)) |
a27dbb23 |
261 | (focus-hadjustment |
262 | :allocation :virtual |
263 | :getter "gtk_container_get_focus_hadjustment" |
264 | :setter "gtk_container_set_focus_hadjustment" |
265 | :accessor container-focus-hadjustment |
266 | :initarg :focus-hadjustment |
267 | :type adjustment) |
268 | (focus-vadjustment |
269 | :allocation :virtual |
270 | :getter "gtk_container_get_focus_vadjustment" |
271 | :setter "gtk_container_set_focus_vadjustment" |
272 | :accessor container-focus-vadjustment |
273 | :initarg :focus-vadjustment |
14eaa563 |
274 | :type adjustment) |
275 | (reallocate-redraws |
276 | :allocation :virtual |
277 | :getter "gtk_container_get_reallocate_redraws" |
278 | :setter "gtk_container_set_reallocate_redraws" |
279 | :accessor container-reallocate-redraws |
280 | :initarg :reallocate-redraws |
281 | :type boolean))) |
a27dbb23 |
282 | |
283 | ("GtkBin" |
284 | :slots |
285 | ((child |
286 | :allocation :virtual |
8b69b878 |
287 | :getter "gtk_bin_get_child" |
288 | :setter (setf bin-child) |
289 | :reader bin-child |
290 | :type widget))) |
7899a2d7 |
291 | |
292 | ("GtkWindow" |
293 | :slots |
4eed43f1 |
294 | ((focus-widget |
7899a2d7 |
295 | :allocation :virtual |
296 | :getter "gtk_window_get_focus" |
297 | :setter "gtk_window_set_focus" |
298 | :accessor window-focus-widget |
299 | :initarg :focus-widget |
300 | :type widget) |
301 | (default-widget |
302 | :allocation :virtual |
303 | :getter "gtk_window_get_default" |
304 | :setter "gtk_window_set_default" |
305 | :accessor window-default-widget |
306 | :initarg :default-widget |
307 | :type widget) |
7899a2d7 |
308 | (has-frame |
309 | :allocation :virtual |
310 | :getter "gtk_window_get_has_frame" |
311 | :setter "gtk_window_set_has_frame" |
312 | :accessor window-has-frame-p |
313 | :initarg :has-frame |
314 | :type boolean) |
4eed43f1 |
315 | (icon-list |
7899a2d7 |
316 | :allocation :virtual |
5884be5c |
317 | :getter %window-get-icon-list |
4eed43f1 |
318 | :setter "gtk_window_set_icon_list" |
319 | :accessor window-icon-list |
320 | :initarg :icon-list |
321 | :type (glist gdk:pixbuf)) |
7899a2d7 |
322 | (mnemonic-modifier |
323 | :allocation :virtual |
324 | :getter "gtk_window_get_mnemonic_modifier" |
325 | :setter "gtk_window_set_mnemonic_modifier" |
326 | :accessor window-mnemonic-modifier |
327 | :initarg :mnemonic-modifier |
328 | :type gdk:modifier-type) |
329 | (transient-for |
330 | :allocation :virtual |
331 | :getter "gtk_window_get_transient_for" |
332 | :setter "gtk_window_set_transient_for" |
333 | :accessor window-transient-for |
334 | :initarg :transient-for |
4eed43f1 |
335 | :type window) |
336 | (group |
337 | :allocation :virtual |
338 | :getter "gtk_window_get_group" |
339 | :setter (setf window-group) |
340 | :reader window-group |
341 | :initarg :group |
342 | :type window-group) |
343 | (default-width :merge t :unbound -1) |
344 | (default-height :merge t :unbound -1))) |
a27dbb23 |
345 | |
4eed43f1 |
346 | ("GtkWindowGroup" |
1e5e3e14 |
347 | :dependencies (window) |
4eed43f1 |
348 | :slots |
349 | ((grabs |
350 | :allocation :alien |
351 | :accessor window-group-grabs |
352 | :type (gslist window)))) |
353 | |
a27dbb23 |
354 | ("GtkTooltips" |
355 | :slots |
356 | ((enabled |
357 | :allocation :virtual |
358 | :getter "gtk_tooltips_get_enabled" |
359 | :setter (setf tooltips-enabled-p) |
360 | :reader tooltips-enabled-p |
361 | :initarg :enabled |
362 | :type boolean))) |
363 | |
a27dbb23 |
364 | ("GtkMenuItem" |
365 | :slots |
366 | ((label |
367 | :allocation :virtual |
378b3c5f |
368 | :getter menu-item-label |
369 | :setter (setf menu-item-label) |
a27dbb23 |
370 | :type string) |
14eaa563 |
371 | (use-underline |
372 | :allocation :user-data |
373 | :initform nil |
374 | :initarg :use-underline |
375 | :accessor menu-item-use-underline-p) |
378b3c5f |
376 | (right-justified |
377 | :allocation :virtual |
378 | :getter "gtk_menu_item_get_right_justified" |
379 | :setter "gtk_menu_item_set_right_justified" |
380 | :accessor menu-item-right-justified-p |
381 | :initarg :right-justified |
382 | :type boolean) |
a27dbb23 |
383 | (submenu |
384 | :allocation :virtual |
385 | :getter "gtk_menu_item_get_submenu" |
14eaa563 |
386 | :setter "gtk_menu_item_set_submenu" |
387 | :accessor menu-item-submenu |
a27dbb23 |
388 | :initarg :submenu |
14eaa563 |
389 | :type widget))) |
a27dbb23 |
390 | |
92ba85d4 |
391 | ("GtkMenuShell" |
392 | :slots |
393 | ((take-focus-p |
394 | :allocation :virtual |
395 | :getter "gtk_menu_shell_get_take_focus" |
396 | :setter "gtk_menu_shell_set_take_focus" |
397 | :accessor menu-shell-take-focus-p |
398 | :type boolean))) |
399 | |
a27dbb23 |
400 | ("GtkColorSelectionDialog" |
401 | :slots |
402 | ((colorsel |
403 | :allocation :alien |
404 | :reader color-selection-dialog-colorsel |
405 | :type widget) |
406 | (ok-button |
407 | :allocation :alien |
408 | :reader color-selection-dialog-ok-button |
409 | :type widget) |
410 | (cancel-button |
411 | :allocation :alien |
412 | :reader color-selection-dialog-cancel-button |
413 | :type widget) |
414 | (help-button |
415 | :allocation :alien |
416 | :reader color-selection-dialog-help-button |
417 | :type widget))) |
418 | |
419 | ("GtkScrolledWindow" |
420 | :slots |
1e5e3e14 |
421 | (#?-(pkg-exists-p "gtk+-2.0" :atleast-version "2.8.0") |
92ba85d4 |
422 | (hscrollbar |
423 | :allocation :alien |
a27dbb23 |
424 | :reader scrolled-window-hscrollbar |
425 | :type widget) |
1e5e3e14 |
426 | #?-(pkg-exists-p "gtk+-2.0" :atleast-version "2.8.0") |
a27dbb23 |
427 | (vscrollbar |
428 | :allocation :alien |
429 | :reader scrolled-window-vscrollbar |
92ba85d4 |
430 | :type widget) |
1e5e3e14 |
431 | #?(pkg-exists-p "gtk+-2.0" :atleast-version "2.8.0") |
92ba85d4 |
432 | (hscrollbar |
433 | :allocation :virtual |
434 | :getter "gtk_scrolled_window_get_hscrollbar" |
435 | :reader scrolled-window-hscrollbar |
436 | :type widget) |
1e5e3e14 |
437 | #?(pkg-exists-p "gtk+-2.0" :atleast-version "2.8.0") |
92ba85d4 |
438 | (vscrollbar |
439 | :allocation :virtual |
1e5e3e14 |
440 | :getter "gtk_scrolled_window_get_vscrollbar" |
92ba85d4 |
441 | :reader scrolled-window-vscrollbar |
a27dbb23 |
442 | :type widget))) |
0d07716f |
443 | |
a27dbb23 |
444 | ("GtkPaned" |
eb4f580c |
445 | :slots |
a27dbb23 |
446 | ((child1 |
0d07716f |
447 | :allocation :virtual |
09ea6079 |
448 | :getter "gtk_paned_get_child1" |
449 | :setter "gtk_paned_add1" |
450 | :accessor paned-child1 |
a27dbb23 |
451 | :initarg :child1 |
0d07716f |
452 | :type widget) |
a27dbb23 |
453 | (child2 |
6d2e5d22 |
454 | :allocation :virtual |
09ea6079 |
455 | :getter "gtk_paned_get_child2" |
456 | :setter "gtk_paned_add2" |
457 | :accessor paned-child2 |
a27dbb23 |
458 | :initarg :child2 |
459 | :type widget))) |
0d07716f |
460 | |
a27dbb23 |
461 | ("GtkMenu" |
462 | :slots |
463 | ((accel-group |
464 | :allocation :virtual |
465 | :getter "gtk_menu_get_accel_group" |
466 | :setter "gtk_menu_set_accel_group" |
467 | :accessor menu-accel-group |
468 | :initarg :accel-group |
469 | :type accel-group) |
470 | (active |
471 | :allocation :virtual |
472 | :getter "gtk_menu_get_active" |
473 | :setter (setf menu-active) |
474 | :reader menu-active |
475 | :initarg :active |
476 | :type widget) |
14eaa563 |
477 | (screen |
478 | :allocation :virtual |
479 | :getter "gtk_menu_get_screen" |
480 | :setter "gtk_menu_set_screen" |
481 | :accessor menu-screen |
482 | :initarg :screen |
483 | :type gdk:screen) |
484 | (attach-widget |
485 | :allocation :virtual |
486 | :getter "gtk_menu_get_attach_widget" |
487 | :reader menu-attach-widget |
488 | :type widget) |
1e5e3e14 |
489 | #?-(pkg-exists-p "gtk+-2.0" :atleast-version "2.6.0") |
14eaa563 |
490 | (tearoff-state |
a27dbb23 |
491 | :allocation :virtual |
492 | :getter "gtk_menu_get_tearoff_state" |
493 | :setter "gtk_menu_set_tearoff_state" |
14eaa563 |
494 | :accessor menu-tearoff-state-p |
495 | :initarg :tearoff-state |
a27dbb23 |
496 | :type boolean))) |
497 | |
8ef47088 |
498 | ("GtkPlug" |
499 | :slots |
500 | ((id |
501 | :allocation :virtual |
502 | :getter "gtk_plug_get_id" |
503 | :reader plug-id |
504 | :type gdk:native-window))) |
505 | |
506 | ("GtkSocket" |
507 | :slots |
508 | ((id |
509 | :allocation :virtual |
510 | :getter "gtk_socket_get_id" |
511 | :reader socket-id |
512 | :type gdk:native-window))) |
513 | |
a27dbb23 |
514 | ("GtkToolbar" |
515 | :slots |
9617dc95 |
516 | ((show-tooltips |
a27dbb23 |
517 | :allocation :virtual |
518 | :getter "gtk_toolbar_get_tooltips" |
519 | :setter "gtk_toolbar_set_tooltips" |
9617dc95 |
520 | :accessor toolbar-show-tooltips-p |
521 | :initarg :show-tooltips |
a27dbb23 |
522 | :type boolean) |
9617dc95 |
523 | (tooltips |
a27dbb23 |
524 | :allocation :virtual |
9617dc95 |
525 | :getter "gtk_toolbar_get_tooltips_object" |
526 | :reader toolbar-tooltips |
527 | :type tooltips) |
eb4f580c |
528 | (toolbar-style |
529 | :allocation :property |
530 | :pname "toolbar-style" |
531 | :initarg :toolbar-style |
532 | :accessor toolbar-style |
9617dc95 |
533 | :type toolbar-style) |
534 | (n-items |
535 | :allocation :virtual |
536 | :getter "gtk_toolbar_get_n_items" |
537 | :reader toolbar-n-items |
538 | :type int))) |
a27dbb23 |
539 | |
14eaa563 |
540 | ("GtkToolItem" |
541 | :slots |
9617dc95 |
542 | ((use-drag-window |
14eaa563 |
543 | :allocation :virtual |
9617dc95 |
544 | :getter "gtk_tool_item_get_use_drag_window" |
545 | :setter "gtk_tool_item_set_use_drag_window" |
546 | :accessor tool-item-use-drag-window-p |
14eaa563 |
547 | :initarg :drag-window |
9617dc95 |
548 | :type boolean) |
549 | (tip-text |
550 | :allocation :user-data |
551 | :setter (setf tool-item-tip-text) |
552 | :initarg :tip-text |
553 | :reader tool-item-tip-text) |
554 | (tip-private |
555 | :allocation :user-data |
556 | :setter (setf tool-item-tip-private) |
557 | :initarg :tip-private |
558 | :reader tool-item-tip-private))) |
559 | |
560 | ("GtkToolButton" |
561 | :slots |
562 | ((stock-id :merge t :initarg :stock) |
563 | (icon-widget :merge t :initarg :icon))) |
14eaa563 |
564 | |
565 | ("GtkToggleToolButton" |
566 | :slots |
567 | ((active |
568 | :allocation :virtual |
569 | :getter "gtk_toggle_tool_button_get_active" |
570 | :setter "gtk_toggle_tool_button_get_active" |
571 | :accessor toggle-tool-button-active-p |
572 | :initarg :active |
573 | :type boolean))) |
574 | |
575 | ("GtkRadioToolButton" |
576 | :slots |
577 | ((group |
578 | :allocation :virtual |
579 | :getter "gtk_radio_tool_button_get_group" |
580 | :reader radio-tool-button-group |
9617dc95 |
581 | :type (copy-of (gslist widget))) |
582 | (value |
583 | :allocation :user-data |
584 | :initarg :value |
585 | :accessor radio-tool-button-value |
586 | :documentation "Value passed as argument to the activate callback"))) |
14eaa563 |
587 | |
378b3c5f |
588 | ("GtkNotebook" |
589 | :slots |
590 | ((current-page |
591 | :allocation :virtual |
49043b9a |
592 | :getter %notebook-current-page |
378b3c5f |
593 | :setter (setf notebook-current-page) |
49043b9a |
594 | :reader notebook-current-page |
595 | :type widget |
378b3c5f |
596 | :initarg :current-page) |
49043b9a |
597 | (current-page-num |
598 | :allocation :virtual |
599 | :getter "gtk_notebook_get_current_page" |
600 | :setter "gtk_notebook_set_current_page" |
601 | :unbound -1 |
602 | :initarg :current-page-num |
603 | :accessor notebook-current-page-num |
604 | :type position))) |
378b3c5f |
605 | |
a27dbb23 |
606 | ("GtkRuler" |
607 | :slots |
608 | ((metric |
609 | :allocation :virtual |
610 | :getter "gtk_ruler_get_metric" |
611 | :setter "gtk_ruler_set_metric" |
612 | :accessor ruler-metric |
613 | :initarg :metric |
614 | :type metric-type))) |
615 | |
616 | ("GtkProgressBar" |
617 | :slots |
618 | ; deprecated properties |
619 | ((bar-style :ignore t) |
620 | (adjustment :ignore t) |
621 | (activity-step :ignore t) |
622 | (activity-blocks :ignore t) |
623 | (discrete-blocks :ignore t))) |
624 | |
14eaa563 |
625 | ("GtkHandleBox" |
626 | :slots |
627 | ; deprecated property |
628 | ((shadow :ignore t))) |
629 | |
630 | ("GtkFrame" |
631 | :slots |
632 | ; deprecated property |
633 | ((shadow :ignore t))) |
634 | |
a27dbb23 |
635 | ("GtkTable" |
636 | :slots |
637 | ((column-spacing |
638 | :allocation :virtual |
639 | :getter "gtk_table_get_default_col_spacing" |
640 | :setter "gtk_table_set_col_spacings" |
641 | :initarg :column-spacing |
642 | :type unsigned-int) |
643 | (row-spacing |
644 | :allocation :virtual |
645 | :getter "gtk_table_get_default_row_spacing" |
646 | :setter "gtk_table_set_row_spacings" |
647 | :initarg :row-spacing |
648 | :type unsigned-int))) |
649 | |
650 | ("GtkDialog" |
651 | :slots |
eb4f580c |
652 | ((vbox |
a27dbb23 |
653 | :allocation :virtual |
654 | :getter "gtk_dialog_get_vbox" |
eb4f580c |
655 | :reader dialog-vbox |
a27dbb23 |
656 | :type widget) |
657 | (action-area |
658 | :allocation :virtual |
659 | :getter "gtk_dialog_get_action_area" |
660 | :reader dialog-action-area |
661 | :type widget))) |
fd44c5b3 |
662 | |
14eaa563 |
663 | ("GtkEntry" |
a27dbb23 |
664 | :slots |
14eaa563 |
665 | ((layout |
a27dbb23 |
666 | :allocation :virtual |
14eaa563 |
667 | :getter "gtk_entry_get_layout" |
668 | :reader entry-layout |
669 | :type pango:layout) |
670 | (completion |
9186f7e3 |
671 | :allocation :virtual |
14eaa563 |
672 | :getter "gtk_entry_get_completion" |
673 | :setter "gtk_entry_set_completion" |
674 | :initarg :completion |
675 | :accessor entry-completion |
676 | :type entry-completion) |
677 | (max-length :merge t :unbound 0) |
1e5e3e14 |
678 | #?(pkg-exists-p "gtk+-2.0" :atleast-version "2.6.0") |
1448a84f |
679 | (width-chars :merge t :unbound -1))) |
14eaa563 |
680 | |
a03a718a |
681 | ("GtkEntryCompletion" |
682 | :slots |
683 | ((entry |
684 | :allocation :virtual |
685 | :getter "gtk_entry_completion_get_entry" |
686 | :reader entry-completion-entry |
687 | :type entry) |
14eaa563 |
688 | (minimum-key-length :merge t :unbound -1) |
1e5e3e14 |
689 | #?(pkg-exists-p "gtk+-2.0" :atleast-version "2.6.0") |
14eaa563 |
690 | (text-column :merge t :unbound -1))) |
a03a718a |
691 | |
a27dbb23 |
692 | ("GtkRadioButton" |
693 | :slots |
694 | ((group |
695 | :allocation :virtual |
696 | :getter "gtk_radio_button_get_group" |
697 | :reader radio-button-group |
9617dc95 |
698 | :type (copy-of (gslist widget))) |
699 | (value |
700 | :allocation :user-data |
701 | :initarg :value |
702 | :accessor radio-button-value |
703 | :documentation "Value passed as argument to the activate callback"))) |
2afcd8bd |
704 | |
a27dbb23 |
705 | ("GtkRadioMenuItem" |
706 | :slots |
707 | ((group |
708 | :allocation :virtual |
709 | :getter "gtk_radio_menu_item_get_group" |
710 | :reader radio-menu-item-group |
9617dc95 |
711 | :type (copy-of (gslist widget))) |
712 | (value |
713 | :allocation :user-data |
714 | :initarg :value |
715 | :accessor radio-menu-item-value |
716 | :documentation "Value passed as argument to the activate callback"))) |
0d07716f |
717 | |
a27dbb23 |
718 | ("GtkLayout" |
719 | :slots |
720 | ((bin-window |
eb4f580c |
721 | :allocation :virtual |
a27dbb23 |
722 | :getter "gtk_layout_get_bin_window" |
723 | :reader layout-bin-window |
fe66d5f4 |
724 | :type gdk:window))) |
378b3c5f |
725 | |
726 | ("GtkFixed" |
727 | :slots |
728 | ((has-window |
eb4f580c |
729 | :allocation :virtual |
378b3c5f |
730 | :getter "gtk_fixed_get_has_window" |
731 | :setter "gtk_fixed_set_has_window" |
732 | :reader fixed-has-window-p |
733 | :initarg :has-window |
734 | :type boolean))) |
eb4f580c |
735 | |
736 | ("GtkRange" |
737 | :slots |
738 | ((value |
739 | :allocation :virtual |
740 | :getter "gtk_range_get_value" |
741 | :setter "gtk_range_set_value" |
742 | :initarg :value |
743 | :accessor range-value |
744 | :type double-float) |
745 | (upper |
746 | :allocation :virtual |
747 | :getter range-upper |
748 | :setter (setf range-upper) |
749 | :initarg :upper) |
750 | (lower |
751 | :allocation :virtual |
752 | :getter range-lower |
753 | :setter (setf range-lower) |
754 | :initarg :lower) |
755 | (step-increment |
756 | :allocation :virtual |
757 | :getter range-step-increment |
758 | :setter (setf range-step-increment) |
759 | :initarg :step-increment) |
760 | (page-increment |
761 | :allocation :virtual |
762 | :getter range-page-increment |
763 | :setter (setf range-page-increment) |
764 | :initarg :page-increment))) |
765 | |
766 | ("GtkImage" |
767 | :slots |
14eaa563 |
768 | ((file :ignore t) |
1e5e3e14 |
769 | #?(pkg-exists-p "gtk+-2.0" :atleast-version "2.6.0") |
14eaa563 |
770 | (pixel-size :merge t :unbound -1))) |
771 | |
772 | ("GtkLabel" |
773 | :slots |
774 | ((layout |
775 | :allocation :virtual |
776 | :getter "gtk_label_get_layout" |
777 | :reader label-layout |
778 | :type pango:layout))) |
779 | |
49043b9a |
780 | ("GtkScale" |
781 | :slots |
782 | ((layout |
783 | :allocation :virtual |
784 | :getter "gtk_scale_get_layout" |
785 | :reader scale-layout |
786 | :type pango:layout))) |
787 | |
eb4f580c |
788 | ("GtkEditable" |
789 | :slots |
790 | ((editable |
791 | :allocation :virtual |
792 | :getter "gtk_editable_get_editable" |
793 | :setter "gtk_editable_set_editable" |
794 | :reader editable-editable-p |
795 | :initarg :editable |
796 | :type boolean) |
797 | (position |
798 | :allocation :virtual |
799 | :getter "gtk_editable_get_position" |
800 | :setter "gtk_editable_set_position" |
801 | :reader editable-position |
802 | :initarg :position |
9617dc95 |
803 | :type position) |
eb4f580c |
804 | (text |
805 | :allocation :virtual |
806 | :getter editable-text |
807 | :setter (setf editable-text) |
808 | :initarg text))) |
809 | |
810 | ("GtkFileChooser" |
811 | :slots |
812 | ((filename |
813 | :allocation :virtual |
814 | :getter "gtk_file_chooser_get_filename" |
815 | :setter "gtk_file_chooser_set_filename" |
816 | :accessor file-chooser-filename |
817 | :initarg :filename |
818 | :type string) |
819 | (current-name |
820 | :allocation :virtual |
821 | :setter "gtk_file_chooser_set_current_name" |
49043b9a |
822 | :accessor file-chooser-current-name |
eb4f580c |
823 | :initarg :current-name |
824 | :type string) |
825 | (current-folder |
826 | :allocation :virtual |
827 | :setter "gtk_file_chooser_set_current_folder" |
828 | :setter "gtk_file_chooser_get_current_folder" |
49043b9a |
829 | :accessor file-chooser-current-folder |
eb4f580c |
830 | :initarg :current-folder |
831 | :type string) |
832 | (uri |
833 | :allocation :virtual |
834 | :getter "gtk_file_chooser_get_uri" |
835 | :setter "gtk_file_chooser_set_uri" |
49043b9a |
836 | :accessor file-chooser-uri |
eb4f580c |
837 | :initarg :uri |
838 | :type string) |
839 | (current-folder-uri |
840 | :allocation :virtual |
841 | :setter "gtk_file_chooser_set_current_folder_uri" |
842 | :setter "gtk_file_chooser_get_current_folder_uri" |
49043b9a |
843 | :accessor file-chooser-current-folder-uri |
eb4f580c |
844 | :initarg :current-folder-uri |
845 | :type string))) |
846 | |
49043b9a |
847 | ("GtkFileFilter" |
848 | :slots |
849 | ((name |
850 | :allocation :virtual |
851 | :getter "gtk_file_filter_get_name" |
852 | :setter "gtk_file_filter_set_name" |
853 | :accessor file-filter-name |
854 | :initarg :name |
855 | :type string))) |
856 | |
4886872c |
857 | ("GtkTreeView" |
858 | :slots |
859 | ((columns |
860 | :allocation :virtual |
861 | :getter "gtk_tree_view_get_columns" |
862 | :reader tree-view-columns |
05a3b9e4 |
863 | :type (glist tree-view-column)) |
864 | (selection |
865 | :allocation :virtual |
866 | :getter "gtk_tree_view_get_selection" |
867 | :reader tree-view-selection |
868 | :type tree-selection))) |
4886872c |
869 | |
4e169141 |
870 | ("GtkTreeModel" |
871 | :slots |
872 | ((n-columns |
873 | :allocation :virtual |
874 | :getter "gtk_tree_model_get_n_columns" |
875 | :reader tree-model-n-columns |
876 | :type int))) |
877 | |
05a3b9e4 |
878 | ("GtkTreeSelection" |
879 | :slots |
880 | ((mode |
881 | :allocation :virtual |
882 | :getter "gtk_tree_selection_get_mode" |
883 | :setter "gtk_tree_selection_set_mode" |
884 | :accessor tree-selection-mode |
885 | :initarg :mode |
886 | :type selection-mode) |
887 | (tree-view |
888 | :allocation :virtual |
889 | :getter "gtk_tree_selection_get_mode" |
890 | :reader tree-selection-mode |
891 | :type tree-view))) |
892 | |
4886872c |
893 | ("GtkComboBox" |
894 | :slots |
895 | ((active-iter |
896 | :allocation :virtual |
897 | :getter "gtk_combo_box_get_active_iter" |
898 | :setter "gtk_combo_box_set_active_iter" |
899 | :accessor combo-box-active-iter |
900 | :type tree-iter))) |
901 | |
29de7c5f |
902 | ("GtkTextBuffer" |
903 | :slots |
904 | ((line-count |
905 | :allocation :virtual |
906 | :getter "gtk_text_buffer_get_line_count" |
907 | :reader text-buffer-line-count |
908 | :type int) |
909 | (char-count |
910 | :allocation :virtual |
911 | :getter "gtk_text_buffer_get_char_count" |
912 | :reader text-buffer-char-count |
913 | :type int) |
914 | (modified |
915 | :allocation :virtual |
916 | :getter "gtk_text_buffer_get_modified" |
917 | :setter "gtk_text_buffer_set_modified" |
918 | :accessor text-buffer-modifed-p |
919 | :type boolean))) |
920 | |
9482b578 |
921 | ("GtkTextView" |
922 | :slots |
923 | ((default-attributes |
924 | :allocation :virtual |
925 | :getter "gtk_text_view_get_default_attributes" |
926 | :reader text-view-default-attributes |
927 | :type text-attributes))) |
928 | |
29de7c5f |
929 | ("GtkTextTagTable" |
930 | :slots |
931 | ((size |
932 | :allocation :virtual |
933 | :getter "gtk_text_tag_table_get_size" |
934 | :reader text-tag-table-size |
935 | :type int))) |
936 | |
937 | ("GtkTextTag" |
938 | :slots |
939 | ((priority |
940 | :allocation :virtual |
941 | :getter "gtk_text_tag_get_priority" |
942 | :setter "gtk_text_tag_set_priority" |
943 | :accessor text-tag-priority |
944 | :type int) |
945 | (weight |
946 | :merge t :type pango:weight))) |
947 | |
ca289b50 |
948 | ("GtkTextMark" |
949 | :slots |
950 | ((buffer |
951 | :allocation :virtual |
952 | :getter "gtk_text_mark_get_buffer" |
953 | :reader text-mark-buffer |
954 | :type text-buffer) |
955 | (name |
956 | :allocation :virtual |
957 | :getter "gtk_text_mark_get_name" |
958 | :reader text-mark-name |
959 | :type string) |
960 | (visible |
961 | :allocation :virtual |
962 | :getter "gtk_text_mark_get_visible" |
963 | :setter "gtk_text_mark_set_visible" |
964 | :accessor text-mark-visible-p |
965 | :type boolean) |
966 | (deleted |
967 | :allocation :virtual |
968 | :getter "gtk_text_mark_get_deleted" |
969 | :reader text-mark-deleted-p |
970 | :type boolean) |
971 | (left-gravity |
972 | :allocation :virtual |
973 | :getter "gtk_text_mark_get_left_gravity" |
974 | :reader text-mark-left-gravity-p |
975 | :type boolean))) |
976 | |
9482b578 |
977 | ("GtkUIManager" |
978 | :type ui-manager |
979 | :slots |
980 | ((action-groups |
981 | :allocation :virtual |
982 | :getter "gtk_ui_manager_get_action_groups" |
983 | :reader ui-manager-action-groups |
984 | :type (copy-of (glist action-group))) |
985 | (accel-group |
986 | :allocation :virtual |
987 | :getter "gtk_ui_manager_get_accel_group" |
988 | :reader ui-manager-accel-group |
989 | :type accel-group))) |
990 | |
991 | ("GtkUIManagerItemType" |
992 | :type ui-manager-item-type) |
993 | |
30628c63 |
994 | ("GtkAction" |
9482b578 |
995 | :slots |
996 | ((accelerator |
30628c63 |
997 | :allocation :user-data :initarg :accelerator |
998 | :reader action-accelerator))) |
9482b578 |
999 | |
1000 | ("GtkToggleAction" |
1001 | :slots |
1002 | ((active |
1003 | :allocation :virtual |
1004 | :getter "gtk_toggle_action_get_active" |
1005 | :setter "gtk_toggle_action_set_active" |
1006 | :initarg :active |
1007 | :accessor toggle-action-active-p |
1008 | :type boolean))) |
1009 | |
1010 | ("GtkRadioAction" |
1011 | :slots |
1012 | ((group |
1013 | :allocation :virtual |
1014 | :getter "gtk_radio_button_get_group" |
14eaa563 |
1015 | :reader radio-action-group |
9482b578 |
1016 | :type (copy-of (gslist widget))) |
30628c63 |
1017 | (self |
1018 | :allocation :property :pname "value" :type int |
1019 | :documentation "A hack so we can use the alien function gtk_radio_action_get_current_value to retrieve the active radio action in a group.") |
9482b578 |
1020 | (value |
30628c63 |
1021 | :allocation :user-data :initarg :value :accessor radio-action-value))) |
4e169141 |
1022 | |
49043b9a |
1023 | ("GtkColorSelection" |
1024 | :slots |
1025 | ((previous-alpha |
1026 | :allocation :virtual |
1027 | :getter "gtk_color_selection_get_previous_alpha" |
1028 | :setter "gtk_color_selection_get_previous_alpha" |
1029 | :initarg :previous-alpha |
1030 | :accessor color-selection-previous-alpha |
1031 | :type (unsigned 16)) |
1032 | (previous-color |
1033 | :allocation :virtual |
1034 | :getter "gtk_color_selection_get_previous_color" |
1035 | :setter "gtk_color_selection_get_previous_color" |
1036 | :initarg :previous-color |
1037 | :accessor color-selection-previous-color |
1038 | :type gdk:color))) |
1039 | |
1040 | ("GtkFontSelection" |
1041 | :slots |
1042 | ; deprecated property |
1043 | ((font :ignore t))) |
29de7c5f |
1044 | |
1448a84f |
1045 | ("GtkClipboard" |
1046 | :slots |
1047 | ((display |
1048 | :allocation :virtual |
1049 | :getter "gtk_clipboard_get_display" |
1050 | :reader clipboard-display |
1051 | :type gdk:display))) |
1052 | |
1e5e3e14 |
1053 | #?(pkg-exists-p "gtk+-2.0" :atleast-version "2.6.0") |
2596abd7 |
1054 | ("GtkIconView" |
1055 | :slots |
1056 | ((text-column :merge t :setter %icon-view-set-text-column) |
1057 | (markup-column :merge t :setter %icon-view-set-markup-column) |
1058 | (pixbuf-column :merge t :setter %icon-view-set-pixbuf-column))) |
1448a84f |
1059 | |
a27dbb23 |
1060 | ;; Not needed |
1061 | ("GtkFundamentalType" :ignore t) |
1062 | ("GtkArgFlags" :ignore t) |
0d07716f |
1063 | |
2afcd8bd |
1064 | |
a27dbb23 |
1065 | ;; Deprecated widgets |
1066 | ("GtkCList" :ignore-prefix t) |
1067 | ("GtkCTree" :ignore-prefix t) |
4886872c |
1068 | ("GtkList" :ignore t) |
1069 | ("GtkListItem" :ignore t) |
a27dbb23 |
1070 | ("GtkTree" :ignore t) |
1071 | ("GtkTreeItem" :ignore t) |
4886872c |
1072 | ("GtkItemFactory" :ignore t) |
9482b578 |
1073 | ("GtkText" :ignore t) |
a27dbb23 |
1074 | ("GtkPacker" :ignore-prefix t) |
1075 | ("GtkPixmap" :ignore t) |
1076 | ("GtkPreview" :ignore-prefix t) |
4886872c |
1077 | ("GtkProgres" :ignore t) |
a27dbb23 |
1078 | ("GtkTipsQuery" :ignore t) |
eb4f580c |
1079 | ("GtkOldEditable" :ignore t) |
4886872c |
1080 | ("GtkCombo" :ignore t) |
1081 | ("GtkOptionMenu" :ignore t) |
49043b9a |
1082 | ("GtkFileSelection" :ignore t) |
1083 | ("GtkInputDialog") |
eb4f580c |
1084 | |
1085 | ;; What are these? |
1086 | ("GtkFileSystemModule" :ignore t) |
1087 | ("GtkIMModule" :ignore t) |
d0cc9e86 |
1088 | ("GtkThemeEngine" :ignore t)) |
29de7c5f |
1089 | |
1090 | |
1091 | (defclass text-iter (boxed) |
1092 | ((buffer |
1093 | :allocation :virtual |
1094 | :getter "gtk_text_iter_get_buffer" |
1095 | :reader text-iter-buffer |
49043b9a |
1096 | :type pointer) ;text-buffer) |
29de7c5f |
1097 | (offset |
1098 | :allocation :virtual |
1099 | :getter "gtk_text_iter_get_offset" |
1100 | :setter "gtk_text_iter_set_offset" |
1101 | :accessor text-iter-offset |
1102 | :type int) |
1103 | (line |
1104 | :allocation :virtual |
1105 | :getter "gtk_text_iter_get_line" |
1106 | :setter "gtk_text_iter_set_line" |
1107 | :accessor text-iter-line |
1108 | :type int) |
1109 | (line-offset |
1110 | :allocation :virtual |
1111 | :getter "gtk_text_iter_get_line_offset" |
1112 | :setter "gtk_text_iter_set_line_offset" |
1113 | :accessor text-iter-line-offset |
1114 | :type int) |
1115 | (line-index |
1116 | :allocation :virtual |
1117 | :getter "gtk_text_iter_get_line_index" |
1118 | :setter "gtk_text_iter_set_line_index" |
1119 | :accessor text-iter-line-index |
1120 | :type int) |
1121 | (visible-line-index |
1122 | :allocation :virtual |
1123 | :getter "gtk_text_iter_get_visible_line_index" |
1124 | :setter "gtk_text_iter_set_visible_line_index" |
1125 | :accessor text-iter-visible-line-index |
1126 | :type int) |
1127 | (visible-line-offset |
1128 | :allocation :virtual |
1129 | :getter "gtk_text_iter_get_visible_line_offset" |
1130 | :setter "gtk_text_iter_set_visible_line_offset" |
1131 | :accessor text-iter-visible-line-offset |
9186f7e3 |
1132 | :type int)) |
1133 | (:metaclass boxed-class) |
1134 | (:size #.(* 14 (size-of 'pointer)))) |
14eaa563 |
1135 | |
1136 | |
1137 | (defclass tooltips-data (struct) |
1138 | ((tooltips |
1139 | :allocation :alien |
1140 | :reader tooltips-data-tooltips |
1141 | :type tooltips) |
1142 | (widget |
1143 | :allocation :alien |
1144 | :reader tooltips-data-widget |
1145 | :type widget) |
1146 | (tip-text |
1147 | :allocation :alien |
1148 | :reader tooltips-data-tip-text |
1149 | :type string) |
1150 | (tip-private |
1151 | :allocation :alien |
1152 | :reader tooltips-data-tip-private |
1153 | :type string)) |
1154 | (:metaclass struct-class)) |
49043b9a |
1155 | |
1156 | (defclass file-filter-info (struct) |
1157 | ((contains |
1158 | :allocation :alien |
1159 | :initarg :contains |
1160 | :type file-filter-flags) |
1161 | (filename |
1162 | :allocation :alien |
1163 | :initarg :filename |
1164 | :type string) |
1165 | (uri |
1166 | :allocation :alien |
1167 | :initarg :uri |
1168 | :type string) |
1169 | (display-name |
1170 | :allocation :alien |
1171 | :initarg :display-name |
1172 | :type string) |
1173 | (mime-type |
1174 | :allocation :alien |
1175 | :initarg :mime-type |
1176 | :type string)) |
1177 | (:metaclass struct-class)) |
7b6c693b |
1178 | |
1179 | |
1180 | (defclass accel-key (struct) |
1181 | ((key |
1182 | :allocation :alien |
1183 | :type unsigned-int) |
1184 | (modifiers |
1185 | :allocation :alien |
1186 | :type gdk:modifier-type) |
1187 | (flags |
1188 | :allocation :alien |
1189 | :type (unsigned 16))) |
1190 | (:metaclass struct-class)) |
1191 | |
1192 | (defclass accel-group-entry (struct) |
1193 | ((key |
1194 | :allocation :alien |
1195 | :setter nil |
1196 | :type (inlined accel-key)) |
1197 | (gclosure |
1198 | :allocation :alien |
1199 | :type gclosure) |
1200 | (accel_path_quark |
1201 | :allocation :alien |
1202 | :type quark)) |
1203 | (:metaclass struct-class)) |
92ba85d4 |
1204 | |
1e5e3e14 |
1205 | #?(pkg-exists-p "gtk+-2.0" :atleast-version "2.8.0") |
92ba85d4 |
1206 | (define-enum-type drop-position |
1207 | :no-drop :drop-into :drop-left :drop-right :drop-above :drop-below) |
9186f7e3 |
1208 | |
1209 | |
9186f7e3 |
1210 | (defclass target-entry (struct) |
1211 | ((target |
1212 | :allocation :alien |
1213 | :accessor target-entry-target |
1214 | :initarg :target |
1215 | :type string) |
1216 | (flags |
1217 | :allocation :alien |
1218 | :accessor target-entry-flags |
1219 | :initarg :flags |
1220 | :type target-flags) |
1221 | (id |
1222 | :allocation :alien |
1223 | :accessor target-entry-id |
1224 | :initarg :id |
1225 | :type unsigned-int)) |
1226 | (:metaclass struct-class)) |
1227 | |
53b8baf7 |
1228 | |
1229 | (defclass selection-data (boxed) |
1230 | ((selection |
1231 | :allocation :alien :type gdk:atom |
1232 | :reader selection-data-selection) |
1233 | (target |
1234 | :allocation :alien :type gdk:atom |
1235 | :reader selection-data-target) |
1236 | (type |
1237 | :allocation :alien :type gdk:atom |
1238 | :reader selection-data-type) |
1239 | (format |
1240 | :allocation :alien :type int |
1241 | :reader selection-data-format) |
1242 | (data |
1243 | :allocation :alien :type pointer |
1244 | :reader selection-data-data) |
1245 | (length |
1246 | :allocation :alien :type int |
1247 | :reader selection-data-length) |
1248 | (display |
1249 | :allocation :alien :type gdk:display |
1250 | :reader selection-data-display)) |
1251 | (:metaclass boxed-class)) |
1252 | |
1253 | |
1254 | (defclass target-list (proxy) |
1255 | () |
1e5e3e14 |
1256 | (:metaclass proxy-class) |
1257 | (:ref target-list-ref) |
1258 | (:unref target-list-unref)) |