chiark / gitweb /
Bindings for window and window-group completed
[clg] / gtk / gtktypes.lisp
1 ;; Common Lisp bindings for GTK+ v2.0.x
2 ;; Copyright (C) 1999-2001 Espen S. Johnsen <espen@users.sourceforge.org>
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.26 2004-12-26 11:51:21 espen Exp $
19
20
21 (in-package "GTK")
22
23 (defclass requisition (boxed)
24   ((width
25     :allocation :alien
26     :accessor requisition-width
27     :initarg :width
28     :type int)
29    (height
30     :allocation :alien
31     :accessor requisition-height
32     :initarg :height
33     :type int))
34   (:metaclass boxed-class))
35
36
37 (defclass allocation (struct)
38   ((x
39     :allocation :alien
40     :accessor allocation-width
41     :initarg :x
42     :type int)
43    (y
44     :allocation :alien
45     :accessor allocation-width
46     :initarg :width
47     :type int)
48    (width
49     :allocation :alien
50     :accessor allocation-width
51     :initarg :width
52     :type int)
53    (height
54     :allocation :alien
55     :accessor allocation-height
56     :initarg :height
57     :type int))
58   (:metaclass struct-class))
59
60 (defclass border (boxed)
61   ((left
62     :allocation :alien
63     :accessor border-left
64     :initarg :left
65     :type int)
66    (right
67     :allocation :alien
68     :accessor border-right
69     :initarg :right
70     :type int)
71    (top
72     :allocation :alien
73     :accessor border-top
74     :initarg :top
75     :type int)
76    (bottom
77     :allocation :alien
78     :accessor border-bottom
79     :initarg :bottom
80     :type int))
81   (:metaclass boxed-class))
82
83 (defclass stock-item (struct)
84   ((id
85     :allocation :alien
86     :accessor stock-item-id
87     :initarg :id
88     :type string)
89    (label
90     :allocation :alien
91     :accessor stock-item-label
92     :initarg :label
93     :type string)
94    (modifier
95     :allocation :alien
96     :accessor stock-item-modifier
97     :initarg :modifier
98     :type gdk:modifier-type)
99    (keyval
100     :allocation :alien
101     :accessor stock-item-keyval
102     :initarg :keyval
103     :type int)
104    (translation-domain
105     :allocation :alien
106     :accessor stock-item-translation-domain
107     :initarg :translation-domain
108     :type string))
109   (:metaclass struct-class))
110
111 ;; We don't really need to access any of these slots, but we need to
112 ;; specify the size of the struct somehow 
113 (defclass tree-iter (boxed)
114   ((stamp :allocation :alien :type int)
115    (user-data :allocation :alien :type pointer)
116    (user-data2 :allocation :alien :type pointer)
117    (user-data3 :allocation :alien :type pointer))
118   (:metaclass boxed-class))
119
120
121 ;; (defclass tree-path (boxed)
122 ;;   ((depth :allocation :alien :type int)
123 ;;    (indices  :allocation :alien :type pointer))
124 ;;   (:metaclass boxed-class))
125
126 (deftype tree-path () '(vector integer))
127 (register-type 'tree-path "GtkTreePath")
128
129
130 (define-types-by-introspection "Gtk"
131   ;; Manually defined
132   ("GtkObject" :ignore t)
133   ("GtkRequisition" :ignore t)
134   ("GtkBorder" :ignore t)
135   ("GtkTreeIter" :ignore t)
136   ("GtkTreePath" :ignore t)
137 ;  ("GtkStyle" :ignore t)
138
139   ;; Manual override
140   ("GtkWidget"
141    :slots
142    ((child-properties
143      :allocation :instance
144      :accessor widget-child-properties
145      :type container-child)
146     (window
147      :allocation :virtual
148      :getter "gtk_widget_get_window"
149      :reader widget-window
150      :type gdk:window)
151     (state
152      :allocation :virtual
153      :getter "gtk_widget_get_state"
154      :setter "gtk_widget_set_state"
155      :accessor widget-state
156      :initarg :state
157      :type state-type)
158     (colormap
159      :allocation :virtual
160      :getter "gtk_widget_get_colormap"
161      :setter "gtk_widget_set_colormap"
162      :initarg :colormap
163      :accessor widget-colormap
164      :type gdk:colormap)
165     (visual
166      :allocation :virtual
167      :getter "gtk_widget_get_visual"
168      :reader widget-visual
169      :type gdk:visual)
170     (direction
171      :allocation :virtual
172      :getter "gtk_widget_get_direction"
173      :setter "gtk_widget_set_direction"
174      :accessor widget-direction
175      :initarg :direction
176      :type text-direction)
177     (composite-name
178      :allocation :virtual
179      :getter "gtk_widget_get_composite_name"
180      :setter "gtk_widget_set_composite_name"
181      :accessor widget-composite-name
182      :initarg :composite-name
183      :type string)
184     (settings
185      :allocation :virtual
186      :getter "gtk_widget_get_settings"
187      :accessor widget-settings
188      :type settings)
189     (child-visible
190      :allocation :virtual
191      :getter "gtk_widget_get_child_visible"
192      :setter "gtk_widget_set_child_visible"
193      :accessor widget-child-visible-p
194      :initarg :child-visible
195      :type boolean)
196     (width-request
197      :merge t :unbound -1)
198     (height-request
199      :merge t :unbound -1)))
200      
201   ("GtkContainer"
202    :slots
203    ((child
204      :ignore t)
205     (children
206      :allocation :virtual
207      :getter container-children
208      :setter (setf container-children))
209     (focus-child
210      :allocation :virtual
211      :getter "gtk_container_get_focus_child"
212      :setter "gtk_container_set_focus_child"
213      :accessor container-focus-child
214      :initarg :focus-child
215      :type widget)
216     (focus-chain
217      :allocation :virtual
218      :getter container-focus-chain
219      :setter (setf container-focus-chain))
220     (focus-hadjustment
221      :allocation :virtual
222      :getter "gtk_container_get_focus_hadjustment"
223      :setter "gtk_container_set_focus_hadjustment"
224      :accessor container-focus-hadjustment
225      :initarg :focus-hadjustment
226      :type adjustment)
227     (focus-vadjustment
228      :allocation :virtual
229      :getter "gtk_container_get_focus_vadjustment"
230      :setter "gtk_container_set_focus_vadjustment"
231      :accessor container-focus-vadjustment
232      :initarg :focus-vadjustment
233      :type adjustment)))
234       
235   ("GtkBin"
236    :slots
237    ((child
238      :allocation :virtual
239      :getter "gtk_bin_get_child"
240      :setter (setf bin-child)
241      :reader bin-child
242      :type widget)))
243
244   ("GtkWindow"
245    :slots
246    ((focus-widget
247      :allocation :virtual
248      :getter "gtk_window_get_focus"
249      :setter "gtk_window_set_focus"
250      :accessor window-focus-widget
251      :initarg :focus-widget
252      :type widget)
253     (default-widget
254      :allocation :virtual
255      :getter "gtk_window_get_default"
256      :setter "gtk_window_set_default"
257      :accessor window-default-widget
258      :initarg :default-widget
259      :type widget)
260     (has-frame
261      :allocation :virtual
262      :getter "gtk_window_get_has_frame"
263      :setter "gtk_window_set_has_frame"
264      :accessor window-has-frame-p
265      :initarg :has-frame
266      :type boolean)
267     (icon-list
268      :allocation :virtual
269      :getter "gtk_window_get_icon_list"
270      :setter "gtk_window_set_icon_list"
271      :accessor window-icon-list
272      :initarg :icon-list
273      :type (glist gdk:pixbuf))
274     (mnemonic-modifier
275      :allocation :virtual
276      :getter "gtk_window_get_mnemonic_modifier"
277      :setter "gtk_window_set_mnemonic_modifier"
278      :accessor window-mnemonic-modifier
279      :initarg :mnemonic-modifier
280      :type gdk:modifier-type)
281     (transient-for
282      :allocation :virtual
283      :getter "gtk_window_get_transient_for"
284      :setter "gtk_window_set_transient_for"
285      :accessor window-transient-for
286      :initarg :transient-for
287      :type window)
288     (group
289      :allocation :virtual
290      :getter "gtk_window_get_group"
291      :setter (setf window-group)
292      :reader window-group
293      :initarg :group
294      :type window-group)
295     (default-width :merge t :unbound -1)
296     (default-height :merge t :unbound -1)))
297   
298   ("GtkWindowGroup"
299    :slots
300    ((grabs
301      :allocation :alien
302      :accessor window-group-grabs
303      :type (gslist window))))
304
305   ("GtkTooltips"
306    :slots
307    ((enabled
308      :allocation :virtual
309      :getter "gtk_tooltips_get_enabled"
310      :setter (setf tooltips-enabled-p)
311      :reader tooltips-enabled-p
312      :initarg :enabled
313      :type boolean)))
314   
315   ("GtkOptionMenu"
316    :slots
317    ((menu
318      :allocation :virtual
319      :getter "gtk_option_menu_get_menu"
320      :setter (setf option-menu-menu)
321      :reader option-menu-menu
322      :initarg :menu
323      :type menu)
324     (history
325      :allocation :virtual
326      :getter "gtk_option_menu_get_history"
327      :setter "gtk_option_menu_set_history"
328      :accessor option-menu-history
329      :initarg :history
330      :type unsigned-int)))
331
332   ("GtkMenuItem"
333    :slots
334    ((label
335      :allocation :virtual
336      :getter menu-item-label
337      :setter (setf menu-item-label)
338      :initarg :label
339      :type string)
340     (right-justified
341      :allocation :virtual
342      :getter "gtk_menu_item_get_right_justified"
343      :setter "gtk_menu_item_set_right_justified"
344      :accessor menu-item-right-justified-p
345      :initarg :right-justified
346      :type boolean)
347     (submenu
348      :allocation :virtual
349      :getter "gtk_menu_item_get_submenu"
350      :setter (setf menu-item-submenu)
351      :reader menu-item-submenu
352      :initarg :submenu
353      :type menu-item)))
354
355   ("GtkColorSelectionDialog"
356    :slots
357    ((colorsel
358      :allocation :alien
359      :reader color-selection-dialog-colorsel
360      :type widget)
361     (ok-button
362      :allocation :alien
363      :reader color-selection-dialog-ok-button
364      :type widget)
365     (cancel-button
366      :allocation :alien
367      :reader color-selection-dialog-cancel-button
368      :type widget)
369     (help-button
370      :allocation :alien
371      :reader color-selection-dialog-help-button
372      :type widget)))
373
374   ("GtkScrolledWindow"
375    :slots
376    ((hscrollbar
377      :allocation :alien
378      :reader scrolled-window-hscrollbar
379      :type widget)
380     (vscrollbar
381      :allocation :alien
382      :reader scrolled-window-vscrollbar
383      :type widget)))
384
385   ("GtkPaned"
386    :slots
387    ((child1
388     :allocation :virtual
389     :getter "gtk_paned_get_child1"
390     :setter "gtk_paned_add1"
391     :accessor paned-child1
392     :initarg :child1
393     :type widget)
394    (child2
395     :allocation :virtual
396     :getter "gtk_paned_get_child2"
397     :setter "gtk_paned_add2"
398     :accessor paned-child2
399     :initarg :child2
400     :type widget)))
401
402   ("GtkMenu"
403    :slots
404    ((accel-group
405      :allocation :virtual
406      :getter "gtk_menu_get_accel_group"
407      :setter "gtk_menu_set_accel_group"
408      :accessor menu-accel-group
409      :initarg :accel-group
410      :type accel-group)
411     (title
412      :allocation :virtual
413      :getter "gtk_menu_get_title"
414      :setter "gtk_menu_set_title"
415      :accessor menu-title
416      :initarg :title
417      :type string)
418     (active
419      :allocation :virtual
420      :getter "gtk_menu_get_active"
421      :setter (setf menu-active)
422      :reader menu-active
423      :initarg :active
424      :type widget)
425     (tornoff
426      :allocation :virtual
427      :getter "gtk_menu_get_tearoff_state"
428      :setter "gtk_menu_set_tearoff_state"
429      :accessor menu-tornoff-p
430      :initarg :tearoff
431      :type boolean)))
432
433   ("GtkToolbar"
434    :slots
435    ((tooltips
436      :allocation :virtual
437      :getter "gtk_toolbar_get_tooltips"
438      :setter "gtk_toolbar_set_tooltips"
439      :accessor toolbar-tooltips-p
440      :initarg :tooltips
441      :type boolean)
442     (icon-size
443      :allocation :virtual
444      :getter "gtk_toolbar_get_icon_size"
445      :setter "gtk_toolbar_set_icon_size"
446      :accessor toolbar-icon-size
447      :initarg :icon-size
448      :type icon-size)
449     (toolbar-style
450      :allocation :property
451      :pname "toolbar-style"
452      :initarg :toolbar-style
453      :accessor toolbar-style
454      :type toolbar-style)))
455
456   ("GtkNotebook"
457    :slots
458    ((current-page
459      :allocation :virtual
460      :getter notebook-current-page
461      :setter (setf notebook-current-page)
462      :initarg :current-page)
463     (page :ignore t)))
464   
465   ("GtkRuler"
466    :slots
467    ((metric
468      :allocation :virtual
469      :getter "gtk_ruler_get_metric"
470      :setter "gtk_ruler_set_metric"
471      :accessor ruler-metric
472      :initarg :metric
473      :type metric-type)))
474
475   ("GtkProgressBar"
476    :slots
477    ; deprecated properties
478    ((bar-style :ignore t)
479     (adjustment :ignore t)
480     (activity-step :ignore t)
481     (activity-blocks :ignore t)
482     (discrete-blocks :ignore t)))
483
484   ("GtkTable"
485    :slots
486    ((column-spacing
487      :allocation :virtual
488      :getter "gtk_table_get_default_col_spacing"
489      :setter "gtk_table_set_col_spacings"
490      :initarg :column-spacing
491      :type unsigned-int)
492     (row-spacing
493      :allocation :virtual
494      :getter "gtk_table_get_default_row_spacing"
495      :setter "gtk_table_set_row_spacings"
496      :initarg :row-spacing
497      :type unsigned-int)))
498
499   ("GtkDialog"
500    :slots
501    ((vbox
502      :allocation :virtual
503      :getter "gtk_dialog_get_vbox"
504      :reader dialog-vbox
505      :type widget)
506     (action-area
507      :allocation :virtual
508      :getter "gtk_dialog_get_action_area"
509      :reader dialog-action-area
510      :type widget)))
511
512   ("GtkCombo"
513    :slots
514    ((entry
515      :allocation :virtual
516      :getter "gtk_combo_get_entry"
517      :reader combo-entry
518      :type entry)))
519   
520   ("GtkEntryCompletion"
521    :slots
522    ((entry
523      :allocation :virtual
524      :getter "gtk_entry_completion_get_entry"
525      :reader entry-completion-entry
526      :type entry)
527     (minimum-key-length
528      :merge t :unbound -1)
529     #+gtk2.6
530     (text-column
531      :merge t :unbound -1)))
532
533   ("GtkRadioButton"
534    :slots
535    ((group
536      :allocation :virtual
537      :getter "gtk_radio_button_get_group"
538      :reader radio-button-group
539      :type (copy-of (gslist widget)))))
540
541   ("GtkRadioMenuItem"
542    :slots
543    ((group
544      :allocation :virtual
545      :getter "gtk_radio_menu_item_get_group"
546      :reader radio-menu-item-group
547      :type (static (gslist widget)))))
548
549   ("GtkFileSelection"
550    :slots
551    ((action-area
552      :allocation :virtual
553      :getter "gtk_file_selection_get_action_area"
554      :reader file-selection-action-area
555      :type widget)
556     (ok-button
557      :allocation :virtual
558      :getter "gtk_file_selection_get_ok_button"
559      :reader file-selection-ok-button
560      :type widget)
561     (cancel-button
562      :allocation :virtual
563      :getter "gtk_file_selection_get_cancel_button"
564      :reader file-selection-cancel-button
565      :type widget)))
566
567   ("GtkLayout"
568    :slots
569    ((bin-window
570      :allocation :virtual
571      :getter "gtk_layout_get_bin_window"
572      :reader layout-bin-window
573      :type gdk:window)))
574
575   ("GtkFixed"
576    :slots
577    ((has-window
578      :allocation :virtual
579      :getter "gtk_fixed_get_has_window"
580      :setter "gtk_fixed_set_has_window"
581      :reader fixed-has-window-p
582      :initarg :has-window
583      :type boolean)))
584
585   ("GtkRange"
586    :slots
587    ((value
588      :allocation :virtual
589      :getter "gtk_range_get_value"
590      :setter "gtk_range_set_value"
591      :initarg :value
592      :accessor range-value
593      :type double-float)
594    (upper
595      :allocation :virtual
596      :getter range-upper
597      :setter (setf range-upper)
598      :initarg :upper)
599    (lower
600      :allocation :virtual
601      :getter range-lower
602      :setter (setf range-lower)
603      :initarg :lower)
604    (step-increment
605      :allocation :virtual
606      :getter range-step-increment
607      :setter (setf range-step-increment)
608      :initarg :step-increment)
609    (page-increment
610      :allocation :virtual
611      :getter range-page-increment
612      :setter (setf range-page-increment)
613      :initarg :page-increment)))
614
615   ("GtkImage"
616    :slots
617    ((file :ignore t)))
618        
619   ("GtkEditable"
620    :slots
621    ((editable
622      :allocation :virtual
623      :getter "gtk_editable_get_editable"
624      :setter "gtk_editable_set_editable"
625      :reader editable-editable-p
626      :initarg :editable
627      :type boolean)
628     (position
629      :allocation :virtual
630      :getter "gtk_editable_get_position"
631      :setter "gtk_editable_set_position"
632      :reader editable-position
633      :initarg :position
634      :type int)
635     (text
636      :allocation :virtual
637      :getter editable-text
638      :setter (setf editable-text)
639      :initarg text)))
640
641   ("GtkFileChooser"
642    :slots
643    ((filename
644      :allocation :virtual
645      :getter "gtk_file_chooser_get_filename"
646      :setter "gtk_file_chooser_set_filename"
647      :accessor file-chooser-filename
648      :initarg :filename
649      :type string)
650     (current-name
651      :allocation :virtual
652      :setter "gtk_file_chooser_set_current_name"
653      :accessor file-choser-current-name
654      :initarg :current-name
655      :type string)
656     (current-folder
657      :allocation :virtual
658      :setter "gtk_file_chooser_set_current_folder"
659      :setter "gtk_file_chooser_get_current_folder"
660      :accessor file-choser-current-folder
661      :initarg :current-folder
662      :type string)
663     (uri
664      :allocation :virtual
665      :getter "gtk_file_chooser_get_uri"
666      :setter "gtk_file_chooser_set_uri"
667      :accessor file-choser-uri
668      :initarg :uri
669      :type string)
670     (current-folder-uri
671      :allocation :virtual
672      :setter "gtk_file_chooser_set_current_folder_uri"
673      :setter "gtk_file_chooser_get_current_folder_uri"
674      :accessor file-choser-current-folder-uri
675      :initarg :current-folder-uri
676      :type string)))
677
678   ("GtkTreeView"
679    :slots
680    ((columns
681      :allocation :virtual
682      :getter "gtk_tree_view_get_columns"
683      :reader tree-view-columns 
684      :type (glist tree-view-column))
685     (selection
686      :allocation :virtual
687      :getter "gtk_tree_view_get_selection"
688      :reader tree-view-selection
689      :type tree-selection)))
690
691   ("GtkTreeModel"
692    :slots
693    ((n-columns
694      :allocation :virtual
695      :getter "gtk_tree_model_get_n_columns"
696      :reader tree-model-n-columns 
697      :type int)))
698
699   ("GtkTreeSelection"
700    :slots
701    ((mode
702      :allocation :virtual
703      :getter "gtk_tree_selection_get_mode"
704      :setter "gtk_tree_selection_set_mode"
705      :accessor tree-selection-mode
706      :initarg :mode
707      :type selection-mode)
708     (tree-view
709      :allocation :virtual
710      :getter "gtk_tree_selection_get_mode"
711      :reader tree-selection-mode
712      :type tree-view)))
713
714   ("GtkComboBox"
715    :slots
716    ((active-iter
717      :allocation :virtual
718      :getter "gtk_combo_box_get_active_iter"
719      :setter "gtk_combo_box_set_active_iter"
720      :accessor combo-box-active-iter 
721      :type tree-iter)))
722
723   ("GtkTextBuffer"
724    :slots
725    ((line-count
726      :allocation :virtual
727      :getter "gtk_text_buffer_get_line_count"
728      :reader text-buffer-line-count
729      :type int)
730     (char-count
731      :allocation :virtual
732      :getter "gtk_text_buffer_get_char_count"
733      :reader text-buffer-char-count
734      :type int)
735     (modified
736      :allocation :virtual
737      :getter "gtk_text_buffer_get_modified"
738      :setter "gtk_text_buffer_set_modified"
739      :accessor text-buffer-modifed-p
740      :type boolean)))
741
742   ("GtkTextView"
743    :slots
744    ((default-attributes
745      :allocation :virtual
746      :getter "gtk_text_view_get_default_attributes"
747      :reader text-view-default-attributes
748      :type text-attributes)))
749
750   ("GtkTextTagTable"
751    :slots
752    ((size
753      :allocation :virtual
754      :getter "gtk_text_tag_table_get_size"
755      :reader text-tag-table-size
756      :type int)))
757
758   ("GtkTextTag"
759    :slots
760    ((priority
761      :allocation :virtual
762      :getter "gtk_text_tag_get_priority"
763      :setter "gtk_text_tag_set_priority"
764      :accessor text-tag-priority
765      :type int)
766     (weight
767      :merge t :type pango:weight)))
768
769   ("GtkUIManager"
770    :type ui-manager
771    :slots
772    ((action-groups
773      :allocation :virtual
774      :getter "gtk_ui_manager_get_action_groups"
775      :reader ui-manager-action-groups
776      :type (copy-of (glist action-group)))
777     (accel-group
778      :allocation :virtual
779      :getter "gtk_ui_manager_get_accel_group"
780      :reader ui-manager-accel-group
781      :type accel-group)))
782
783   ("GtkUIManagerItemType"
784    :type ui-manager-item-type)
785
786   ("GtkToggle"
787    :slots
788    ((accelerator
789      :allocation :virtual
790      :getter action-accelerator)))
791
792   ("GtkToggleAction"
793    :slots
794    ((active
795      :allocation :virtual
796      :getter "gtk_toggle_action_get_active"
797      :setter "gtk_toggle_action_set_active"
798      :initarg :active
799      :accessor toggle-action-active-p
800      :type boolean)))
801
802   ("GtkRadioAction"
803    :slots
804    ((group
805      :allocation :virtual
806      :getter "gtk_radio_button_get_group"
807      :reader radio-button-group
808      :type (copy-of (gslist widget)))
809     (%value
810      :allocation :property  :pname "value"
811      :readable nil :type int)
812     (value 
813      :allocation :virtual
814      :getter radio-action-value)))
815
816
817   ;; Not needed
818   ("GtkFundamentalType" :ignore t)
819   ("GtkArgFlags" :ignore t)
820
821   
822   ;; Deprecated widgets
823   ("GtkCList" :ignore-prefix t)
824   ("GtkCTree" :ignore-prefix t)
825   ("GtkList" :ignore t)
826   ("GtkListItem" :ignore t)
827   ("GtkTree" :ignore t)
828   ("GtkTreeItem" :ignore t)
829   ("GtkItemFactory" :ignore t)
830   ("GtkText" :ignore t)
831   ("GtkPacker" :ignore-prefix t)
832   ("GtkPixmap" :ignore t)
833   ("GtkPreview" :ignore-prefix t)
834   ("GtkProgres" :ignore t)
835   ("GtkTipsQuery" :ignore t)
836   ("GtkOldEditable" :ignore t)
837   ("GtkCombo" :ignore t)
838   ("GtkOptionMenu" :ignore t)
839
840   ;; What are these?
841   ("GtkFileSystemModule" :ignore t)
842   ("GtkIMModule" :ignore t)
843   ("GtkThemeEngine" :ignore t)
844
845   )
846
847
848 (defclass text-iter (boxed)
849   ((buffer
850     :allocation :virtual
851     :getter "gtk_text_iter_get_buffer"
852     :reader text-iter-buffer
853     :type text-buffer)
854    (offset
855     :allocation :virtual
856     :getter "gtk_text_iter_get_offset"
857     :setter "gtk_text_iter_set_offset"
858     :accessor text-iter-offset
859     :type int)
860    (line
861     :allocation :virtual
862     :getter "gtk_text_iter_get_line"
863     :setter "gtk_text_iter_set_line"
864     :accessor text-iter-line
865     :type int)
866    (line-offset
867     :allocation :virtual
868     :getter "gtk_text_iter_get_line_offset"
869     :setter "gtk_text_iter_set_line_offset"
870     :accessor text-iter-line-offset
871     :type int)
872    (line-index
873     :allocation :virtual
874     :getter "gtk_text_iter_get_line_index"
875     :setter "gtk_text_iter_set_line_index"
876     :accessor text-iter-line-index
877     :type int)
878    (visible-line-index
879     :allocation :virtual
880     :getter "gtk_text_iter_get_visible_line_index"
881     :setter "gtk_text_iter_set_visible_line_index"
882     :accessor text-iter-visible-line-index
883     :type int)
884    (visible-line-offset
885     :allocation :virtual
886     :getter "gtk_text_iter_get_visible_line_offset"
887     :setter "gtk_text_iter_set_visible_line_offset"
888     :accessor text-iter-visible-line-offset
889     :type int)
890    ;; Workaround to get correct size 
891    (dummy14
892      :allocation :alien :offset #.(* 13 (size-of 'pointer))
893      :type pointer))
894   (:metaclass boxed-class 
895    ;; I am pretty sure this was working in older versons on CMUCL
896    :size #.(* 14 (size-of 'pointer))))