doc: include structures and opaque boxed types in generated reference
authorDmitry Kalyanov <Kalyanov.Dmitry@gmail.com>
Tue, 18 Aug 2009 19:35:21 +0000 (23:35 +0400)
committerDmitry Kalyanov <Kalyanov.Dmitry@gmail.com>
Tue, 18 Aug 2009 19:35:21 +0000 (23:35 +0400)
doc/gdk.ref.texi
doc/gobject.ref.texi
doc/gtk.ref.texi
doc/introspection.lisp

index cb61869..d062630 100644 (file)
@@ -1,5 +1,7 @@
 @menu
 * gdk Classes::
+* gdk Structs::
+* gdk Opaque Boxeds::
 * gdk Enums::
 * gdk Flags::
 @end menu
@@ -234,6 +236,635 @@ Signals:
 
 @end itemize
 
+@node gdk Structs
+@section gdk Structs
+
+@menu
+* color::
+* event::
+* event-button::
+* event-client::
+* event-client-16::
+* event-client-32::
+* event-client-8::
+* event-configure::
+* event-crossing::
+* event-dnd::
+* event-expose::
+* event-focus::
+* event-grab-broken::
+* event-key::
+* event-motion::
+* event-no-expose::
+* event-owner-change::
+* event-property::
+* event-proximity::
+* event-scroll::
+* event-selection::
+* event-setting::
+* event-visibility::
+* event-window-state::
+* font::
+* geometry::
+* rectangle::
+@end menu
+
+Reference of structs in package GDK
+
+@node color
+@subsection color
+@Class color
+
+Superclasses: @code{structure-object}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item blue
+
+@item green
+
+@item pixel
+
+@item red
+
+@end itemize
+
+@node event
+@subsection event
+@Class event
+
+Superclasses: @code{structure-object}
+
+Subclasses: @ref{event-key}, @ref{event-button}, @ref{event-scroll}, @ref{event-motion}, @ref{event-expose}, @ref{event-visibility}, @ref{event-crossing}, @ref{event-focus}, @ref{event-configure}, @ref{event-property}, @ref{event-selection}, @ref{event-dnd}, @ref{event-proximity}, @ref{event-client}, @ref{event-no-expose}, @ref{event-window-state}, @ref{event-setting}, @ref{event-owner-change}, @ref{event-grab-broken}
+
+Slots:
+@itemize
+@item send-event
+
+@item type
+
+@item window
+
+@end itemize
+
+@node event-button
+@subsection event-button
+@Class event-button
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item axes
+
+@item button
+
+@item device
+
+@item state
+
+@item time
+
+@item type
+
+@item x
+
+@item x-root
+
+@item y
+
+@item y-root
+
+@end itemize
+
+@node event-client
+@subsection event-client
+@Class event-client
+
+Superclasses: @ref{event}
+
+Subclasses: @ref{event-client-8}, @ref{event-client-16}, @ref{event-client-32}
+
+Slots:
+@itemize
+@item data-format
+
+@item message-time
+
+@item type
+
+@end itemize
+
+@node event-client-16
+@subsection event-client-16
+@Class event-client-16
+
+Superclasses: @ref{event-client}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item data
+
+@item data-format
+
+@end itemize
+
+@node event-client-32
+@subsection event-client-32
+@Class event-client-32
+
+Superclasses: @ref{event-client}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item data
+
+@item data-format
+
+@end itemize
+
+@node event-client-8
+@subsection event-client-8
+@Class event-client-8
+
+Superclasses: @ref{event-client}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item data
+
+@item data-format
+
+@end itemize
+
+@node event-configure
+@subsection event-configure
+@Class event-configure
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item height
+
+@item type
+
+@item width
+
+@item x
+
+@item y
+
+@end itemize
+
+@node event-crossing
+@subsection event-crossing
+@Class event-crossing
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item detail
+
+@item focus
+
+@item mode
+
+@item state
+
+@item sub-window
+
+@item time
+
+@item type
+
+@item x
+
+@item x-root
+
+@item y
+
+@item y-root
+
+@end itemize
+
+@node event-dnd
+@subsection event-dnd
+@Class event-dnd
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item drag-context
+
+@item time
+
+@item type
+
+@item x-root
+
+@item y-root
+
+@end itemize
+
+@node event-expose
+@subsection event-expose
+@Class event-expose
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item area
+
+@item count
+
+@item region
+
+@item type
+
+@end itemize
+
+@node event-focus
+@subsection event-focus
+@Class event-focus
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item in
+
+@item type
+
+@end itemize
+
+@node event-grab-broken
+@subsection event-grab-broken
+@Class event-grab-broken
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item grab-window
+
+@item implicit
+
+@item keyboard
+
+@item type
+
+@end itemize
+
+@node event-key
+@subsection event-key
+@Class event-key
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item group
+
+@item hardware-keycode
+
+@item is-modifier
+
+@item keyval
+
+@item length
+
+@item state
+
+@item string
+
+@item time
+
+@item type
+
+@end itemize
+
+@node event-motion
+@subsection event-motion
+@Class event-motion
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item axes
+
+@item device
+
+@item is-hint
+
+@item state
+
+@item time
+
+@item type
+
+@item x
+
+@item x-root
+
+@item y
+
+@item y-root
+
+@end itemize
+
+@node event-no-expose
+@subsection event-no-expose
+@Class event-no-expose
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item type
+
+@end itemize
+
+@node event-owner-change
+@subsection event-owner-change
+@Class event-owner-change
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item owner
+
+@item reason
+
+@item selection
+
+@item selection-time
+
+@item time
+
+@item type
+
+@end itemize
+
+@node event-property
+@subsection event-property
+@Class event-property
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item atom
+
+@item state
+
+@item time
+
+@item type
+
+@end itemize
+
+@node event-proximity
+@subsection event-proximity
+@Class event-proximity
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item device
+
+@item time
+
+@item type
+
+@end itemize
+
+@node event-scroll
+@subsection event-scroll
+@Class event-scroll
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item device
+
+@item direction
+
+@item state
+
+@item time
+
+@item type
+
+@item x
+
+@item x-root
+
+@item y
+
+@item y-root
+
+@end itemize
+
+@node event-selection
+@subsection event-selection
+@Class event-selection
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item property
+
+@item requestor
+
+@item selection
+
+@item target
+
+@item time
+
+@item type
+
+@end itemize
+
+@node event-setting
+@subsection event-setting
+@Class event-setting
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item action
+
+@item name
+
+@item type
+
+@end itemize
+
+@node event-visibility
+@subsection event-visibility
+@Class event-visibility
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item state
+
+@item type
+
+@end itemize
+
+@node event-window-state
+@subsection event-window-state
+@Class event-window-state
+
+Superclasses: @ref{event}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item changed-mask
+
+@item new-window-state
+
+@item type
+
+@end itemize
+
+@node font
+@subsection font
+@Class font
+
+Superclasses: @code{structure-object}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item ascent
+
+@item descent
+
+@item type
+
+@end itemize
+
+@node geometry
+@subsection geometry
+@Class geometry
+
+Superclasses: @code{structure-object}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item base-height
+
+@item base-width
+
+@item gravity
+
+@item height-increment
+
+@item max-aspect
+
+@item max-height
+
+@item max-width
+
+@item min-aspect
+
+@item min-height
+
+@item min-width
+
+@item width-increment
+
+@end itemize
+
+@node rectangle
+@subsection rectangle
+@Class rectangle
+
+Superclasses: @code{structure-object}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item height
+
+@item width
+
+@item x
+
+@item y
+
+@end itemize
+
+@node gdk Opaque Boxeds
+@section gdk Opaque Boxeds
+
+@menu
+@end menu
+
+Reference of opaque boxeds in package GDK
+
 @node gdk Enums
 @section gdk Enums
 
index d6e8f51..c9c4686 100644 (file)
@@ -1,5 +1,7 @@
 @menu
 * gobject Classes::
+* gobject Structs::
+* gobject Opaque Boxeds::
 * gobject Enums::
 * gobject Flags::
 @end menu
@@ -44,6 +46,127 @@ Signals:
 None
 
 
+@node gobject Structs
+@section gobject Structs
+
+@menu
+* enum-item::
+* flags-item::
+* g-class-property-definition::
+* signal-info::
+@end menu
+
+Reference of structs in package GOBJECT
+
+@node enum-item
+@subsection enum-item
+@Class enum-item
+
+Superclasses: @code{structure-object}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item name
+
+@item nick
+
+@item value
+
+@end itemize
+
+@node flags-item
+@subsection flags-item
+@Class flags-item
+
+Superclasses: @code{structure-object}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item name
+
+@item nick
+
+@item value
+
+@end itemize
+
+@node g-class-property-definition
+@subsection g-class-property-definition
+@Class g-class-property-definition
+
+Superclasses: @code{structure-object}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item constructor
+
+@item constructor-only
+
+@item name
+
+@item owner-type
+
+@item readable
+
+@item type
+
+@item writable
+
+@end itemize
+
+@node signal-info
+@subsection signal-info
+@Class signal-info
+
+Superclasses: @code{structure-object}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item detail
+
+@item flags
+
+@item id
+
+@item name
+
+@item owner-type
+
+@item param-types
+
+@item return-type
+
+@end itemize
+
+@node gobject Opaque Boxeds
+@section gobject Opaque Boxeds
+
+@menu
+* g-boxed-opaque::
+@end menu
+
+Reference of opaque boxeds in package GOBJECT
+
+@node g-boxed-opaque
+@subsection g-boxed-opaque
+@Class g-boxed-opaque
+
+Superclasses: @code{standard-object}
+
+Slots:
+@itemize
+@item pointer
+
+@end itemize
+
 @node gobject Enums
 @section gobject Enums
 
index 3f9bb7b..a2dcb8f 100644 (file)
@@ -1,5 +1,7 @@
 @menu
 * gtk Classes::
+* gtk Structs::
+* gtk Opaque Boxeds::
 * gtk Enums::
 * gtk Flags::
 @end menu
@@ -886,7 +888,7 @@ Slots:
 
 
 
-@item cell-background-gdk. Type: GdkColor (flags: readable writable)
+@item cell-background-gdk. Type: @ref{color} (flags: readable writable)
 
 
 
@@ -1007,7 +1009,7 @@ Slots:
 @end itemize
 Signals:
 @itemize
-@item changed. (@code{string}, GtkTreeIter) -> @code{null}  [run-last]
+@item changed. (@code{string}, @ref{tree-iter}) -> @code{null}  [run-last]
 
 @end itemize
 
@@ -1146,7 +1148,7 @@ Slots:
 
 
 
-@item background-gdk. Type: GdkColor (flags: readable writable)
+@item background-gdk. Type: @ref{color} (flags: readable writable)
 
 
 
@@ -1190,7 +1192,7 @@ Slots:
 
 
 
-@item foreground-gdk. Type: GdkColor (flags: readable writable)
+@item foreground-gdk. Type: @ref{color} (flags: readable writable)
 
 
 
@@ -1360,7 +1362,7 @@ Slots:
 
 
 
-@item background-gdk. Type: GdkColor (flags: readable writable)
+@item background-gdk. Type: @ref{color} (flags: readable writable)
 
 
 
@@ -1444,7 +1446,7 @@ Slots:
 
 
 
-@item color. Type: GdkColor (flags: readable writable)
+@item color. Type: @ref{color} (flags: readable writable)
 
 
 
@@ -1475,7 +1477,7 @@ Slots:
 
 
 
-@item current-color. Type: GdkColor (flags: readable writable)
+@item current-color. Type: @ref{color} (flags: readable writable)
 
 
 
@@ -1768,7 +1770,7 @@ Slots:
 
 
 
-@item inner-border. Type: GtkBorder (flags: readable writable)
+@item inner-border. Type: @ref{border} (flags: readable writable)
 
 
 
@@ -1917,9 +1919,9 @@ Signals:
 
 @item delete-from-cursor. (@ref{delete-type}, @code{integer}) -> @code{null}  [run-last, action]
 
-@item icon-press. (GtkEntryIconPosition, GdkEvent) -> @code{null}  [run-last]
+@item icon-press. (GtkEntryIconPosition, @ref{event}) -> @code{null}  [run-last]
 
-@item icon-release. (GtkEntryIconPosition, GdkEvent) -> @code{null}  [run-last]
+@item icon-release. (GtkEntryIconPosition, @ref{event}) -> @code{null}  [run-last]
 
 @item insert-at-cursor. (@code{string}) -> @code{null}  [run-last, action]
 
@@ -1978,11 +1980,11 @@ Signals:
 @itemize
 @item action-activated. (@code{integer}) -> @code{null}  [run-last]
 
-@item cursor-on-match. (@ref{tree-model}, GtkTreeIter) -> @code{boolean}  [run-last]
+@item cursor-on-match. (@ref{tree-model}, @ref{tree-iter}) -> @code{boolean}  [run-last]
 
 @item insert-prefix. (@code{string}) -> @code{boolean}  [run-last]
 
-@item match-selected. (@ref{tree-model}, GtkTreeIter) -> @code{boolean}  [run-last]
+@item match-selected. (@ref{tree-model}, @ref{tree-iter}) -> @code{boolean}  [run-last]
 
 @end itemize
 
@@ -2274,7 +2276,7 @@ Superclasses: @ref{v-box}, @ref{atk-implementor-iface}, @ref{buildable}, @ref{or
 
 Slots:
 @itemize
-@item font. Type: GdkFont (flags: readable)
+@item font. Type: @ref{font} (flags: readable)
 
 
 
@@ -2510,7 +2512,7 @@ Signals:
 
 @item activate-focus. () -> @code{null}  [run-last, action]
 
-@item frame-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item frame-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item keys-changed. () -> @code{null}  [run-first]
 
@@ -2771,7 +2773,7 @@ Signals:
 @itemize
 @item activate-cursor-item. () -> @code{boolean}  [run-last, action]
 
-@item item-activated. (GtkTreePath) -> @code{null}  [run-last]
+@item item-activated. (@ref{tree-path}) -> @code{null}  [run-last]
 
 @item move-cursor. (@ref{movement-step}, @code{integer}) -> @code{boolean}  [run-last, action]
 
@@ -4693,15 +4695,15 @@ Signals:
 @itemize
 @item activate. () -> @code{null}  [run-first, action]
 
-@item button-press-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item button-press-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item button-release-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item button-release-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item popup-menu. (@code{(integer 0)}, @code{(integer 0)}) -> @code{null}  [run-first, action]
 
 @item query-tooltip. (@code{integer}, @code{integer}, @code{boolean}, @ref{tooltip}) -> @code{boolean}  [run-last]
 
-@item scroll-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item scroll-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item size-changed. (@code{integer}) -> @code{boolean}  [run-last]
 
@@ -4853,31 +4855,31 @@ Slots:
 @end itemize
 Signals:
 @itemize
-@item apply-tag. (@ref{text-tag}, GtkTextIter, GtkTextIter) -> @code{null}  [run-last]
+@item apply-tag. (@ref{text-tag}, @ref{text-iter}, @ref{text-iter}) -> @code{null}  [run-last]
 
 @item begin-user-action. () -> @code{null}  [run-last]
 
 @item changed. () -> @code{null}  [run-last]
 
-@item delete-range. (GtkTextIter, GtkTextIter) -> @code{null}  [run-last]
+@item delete-range. (@ref{text-iter}, @ref{text-iter}) -> @code{null}  [run-last]
 
 @item end-user-action. () -> @code{null}  [run-last]
 
-@item insert-child-anchor. (GtkTextIter, @ref{text-child-anchor}) -> @code{null}  [run-last]
+@item insert-child-anchor. (@ref{text-iter}, @ref{text-child-anchor}) -> @code{null}  [run-last]
 
-@item insert-pixbuf. (GtkTextIter, @ref{pixbuf}) -> @code{null}  [run-last]
+@item insert-pixbuf. (@ref{text-iter}, @ref{pixbuf}) -> @code{null}  [run-last]
 
-@item insert-text. (GtkTextIter, @code{string}, @code{integer}) -> @code{null}  [run-last]
+@item insert-text. (@ref{text-iter}, @code{string}, @code{integer}) -> @code{null}  [run-last]
 
 @item mark-deleted. (@ref{text-mark}) -> @code{null}  [run-last]
 
-@item mark-set. (GtkTextIter, @ref{text-mark}) -> @code{null}  [run-last]
+@item mark-set. (@ref{text-iter}, @ref{text-mark}) -> @code{null}  [run-last]
 
 @item modified-changed. () -> @code{null}  [run-last]
 
 @item paste-done. (@ref{clipboard}) -> @code{null}  [run-last]
 
-@item remove-tag. (@ref{text-tag}, GtkTextIter, GtkTextIter) -> @code{null}  [run-last]
+@item remove-tag. (@ref{text-tag}, @ref{text-iter}, @ref{text-iter}) -> @code{null}  [run-last]
 
 @end itemize
 
@@ -4939,7 +4941,7 @@ Slots:
 
 
 
-@item background-gdk. Type: GdkColor (flags: readable writable)
+@item background-gdk. Type: @ref{color} (flags: readable writable)
 
 
 
@@ -4987,7 +4989,7 @@ Slots:
 
 
 
-@item foreground-gdk. Type: GdkColor (flags: readable writable)
+@item foreground-gdk. Type: @ref{color} (flags: readable writable)
 
 
 
@@ -5051,7 +5053,7 @@ Slots:
 
 
 
-@item paragraph-background-gdk. Type: GdkColor (flags: readable writable)
+@item paragraph-background-gdk. Type: @ref{color} (flags: readable writable)
 
 
 
@@ -5188,7 +5190,7 @@ Slots:
 @end itemize
 Signals:
 @itemize
-@item event. (@ref{g-object}, GdkEvent, GtkTextIter) -> @code{boolean}  [run-last]
+@item event. (@ref{g-object}, @ref{event}, @ref{text-iter}) -> @code{boolean}  [run-last]
 
 @end itemize
 
@@ -5625,15 +5627,15 @@ None
 
 Signals:
 @itemize
-@item row-changed. (GtkTreePath, GtkTreeIter) -> @code{null}  [run-last]
+@item row-changed. (@ref{tree-path}, @ref{tree-iter}) -> @code{null}  [run-last]
 
-@item row-deleted. (GtkTreePath) -> @code{null}  [run-first]
+@item row-deleted. (@ref{tree-path}) -> @code{null}  [run-first]
 
-@item row-has-child-toggled. (GtkTreePath, GtkTreeIter) -> @code{null}  [run-last]
+@item row-has-child-toggled. (@ref{tree-path}, @ref{tree-iter}) -> @code{null}  [run-last]
 
-@item row-inserted. (GtkTreePath, GtkTreeIter) -> @code{null}  [run-first]
+@item row-inserted. (@ref{tree-path}, @ref{tree-iter}) -> @code{null}  [run-first]
 
-@item rows-reordered. (GtkTreePath, GtkTreeIter, @code{foreign-pointer}) -> @code{null}  [run-first]
+@item rows-reordered. (@ref{tree-path}, @ref{tree-iter}, @code{foreign-pointer}) -> @code{null}  [run-first]
 
 @end itemize
 
@@ -5649,7 +5651,7 @@ Slots:
 
 
 
-@item virtual-root. Type: GtkTreePath (flags: readable writable constructor-only)
+@item virtual-root. Type: @ref{tree-path} (flags: readable writable constructor-only)
 
 
 
@@ -5829,11 +5831,11 @@ Signals:
 
 @item move-cursor. (@ref{movement-step}, @code{integer}) -> @code{boolean}  [run-last, action]
 
-@item row-activated. (GtkTreePath, @ref{tree-view-column}) -> @code{null}  [run-last, action]
+@item row-activated. (@ref{tree-path}, @ref{tree-view-column}) -> @code{null}  [run-last, action]
 
-@item row-collapsed. (GtkTreeIter, GtkTreePath) -> @code{null}  [run-last]
+@item row-collapsed. (@ref{tree-iter}, @ref{tree-path}) -> @code{null}  [run-last]
 
-@item row-expanded. (GtkTreeIter, GtkTreePath) -> @code{null}  [run-last]
+@item row-expanded. (@ref{tree-iter}, @ref{tree-path}) -> @code{null}  [run-last]
 
 @item select-all. () -> @code{boolean}  [run-last, action]
 
@@ -5845,9 +5847,9 @@ Signals:
 
 @item start-interactive-search. () -> @code{boolean}  [run-last, action]
 
-@item test-collapse-row. (GtkTreeIter, GtkTreePath) -> @code{boolean}  [run-last]
+@item test-collapse-row. (@ref{tree-iter}, @ref{tree-path}) -> @code{boolean}  [run-last]
 
-@item test-expand-row. (GtkTreeIter, GtkTreePath) -> @code{boolean}  [run-last]
+@item test-expand-row. (@ref{tree-iter}, @ref{tree-path}) -> @code{boolean}  [run-last]
 
 @item toggle-cursor-row. () -> @code{boolean}  [run-last, action]
 
@@ -6201,25 +6203,25 @@ Signals:
 @itemize
 @item accel-closures-changed. () -> @code{null} 
 
-@item button-press-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item button-press-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item button-release-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item button-release-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item can-activate-accel. (@code{(integer 0)}) -> @code{boolean}  [run-last]
 
 @item child-notify. (@code{class-property-info}) -> @code{null}  [run-first, no-recurse, detailed, no-hooks]
 
-@item client-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item client-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item composited-changed. () -> @code{null}  [run-last, action]
 
-@item configure-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item configure-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item damage-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item damage-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item delete-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item delete-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item destroy-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item destroy-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item direction-changed. (@ref{text-direction}) -> @code{null}  [run-first]
 
@@ -6241,21 +6243,21 @@ Signals:
 
 @item drag-motion. (@ref{drag-context}, @code{integer}, @code{integer}, @code{(integer 0)}) -> @code{boolean}  [run-last]
 
-@item enter-notify-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item enter-notify-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item event. (GdkEvent) -> @code{boolean}  [run-last]
+@item event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item event-after. (GdkEvent) -> @code{null} 
+@item event-after. (@ref{event}) -> @code{null} 
 
-@item expose-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item expose-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item focus. (@ref{direction-type}) -> @code{boolean}  [run-last]
 
-@item focus-in-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item focus-in-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item focus-out-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item focus-out-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item grab-broken-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item grab-broken-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item grab-focus. () -> @code{null}  [run-last, action]
 
@@ -6265,35 +6267,35 @@ Signals:
 
 @item hierarchy-changed. (@ref{widget}) -> @code{null}  [run-last]
 
-@item key-press-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item key-press-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item key-release-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item key-release-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item keynav-failed. (@ref{direction-type}) -> @code{boolean}  [run-last]
 
-@item leave-notify-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item leave-notify-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item map. () -> @code{null}  [run-first]
 
-@item map-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item map-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item mnemonic-activate. (@code{boolean}) -> @code{boolean}  [run-last]
 
-@item motion-notify-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item motion-notify-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item move-focus. (@ref{direction-type}) -> @code{null}  [run-last, action]
 
-@item no-expose-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item no-expose-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item parent-set. (@ref{widget}) -> @code{null}  [run-first]
 
 @item popup-menu. () -> @code{boolean}  [run-last, action]
 
-@item property-notify-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item property-notify-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item proximity-in-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item proximity-in-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item proximity-out-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item proximity-out-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item query-tooltip. (@code{integer}, @code{integer}, @code{boolean}, @ref{tooltip}) -> @code{boolean}  [run-last]
 
@@ -6301,23 +6303,23 @@ Signals:
 
 @item screen-changed. (@ref{screen}) -> @code{null}  [run-last]
 
-@item scroll-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item scroll-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item selection-clear-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item selection-clear-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item selection-get. (GtkSelectionData, @code{(integer 0)}, @code{(integer 0)}) -> @code{null}  [run-last]
 
-@item selection-notify-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item selection-notify-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item selection-received. (GtkSelectionData, @code{(integer 0)}) -> @code{null}  [run-last]
 
-@item selection-request-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item selection-request-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item show. () -> @code{null}  [run-first]
 
 @item show-help. (@ref{widget-help-type}) -> @code{boolean}  [run-last, action]
 
-@item size-allocate. (GdkRectangle) -> @code{null}  [run-first]
+@item size-allocate. (@ref{rectangle}) -> @code{null}  [run-first]
 
 @item size-request. (GtkRequisition) -> @code{null}  [run-first]
 
@@ -6327,13 +6329,13 @@ Signals:
 
 @item unmap. () -> @code{null}  [run-first]
 
-@item unmap-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item unmap-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @item unrealize. () -> @code{null}  [run-last]
 
-@item visibility-notify-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item visibility-notify-event. (@ref{event}) -> @code{boolean}  [run-last]
 
-@item window-state-event. (GdkEvent) -> @code{boolean}  [run-last]
+@item window-state-event. (@ref{event}) -> @code{boolean}  [run-last]
 
 @end itemize
 
@@ -6350,6 +6352,151 @@ Signals:
 None
 
 
+@node gtk Structs
+@section gtk Structs
+
+@menu
+* border::
+* progress-display::
+* progress-window::
+* tree-iter::
+* tree-node::
+@end menu
+
+Reference of structs in package GTK
+
+@node border
+@subsection border
+@Class border
+
+Superclasses: @code{structure-object}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item bottom
+
+@item left
+
+@item right
+
+@item top
+
+@end itemize
+
+@node progress-display
+@subsection progress-display
+@Class progress-display
+
+Superclasses: @code{structure-object}
+
+Subclasses: @ref{progress-window}
+
+Slots:
+@itemize
+@item bar
+
+@item count
+
+@item current
+
+@item name
+
+@item parent
+
+@item time-started
+
+@end itemize
+
+@node progress-window
+@subsection progress-window
+@Class progress-window
+
+Superclasses: @ref{progress-display}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item box
+
+@item window
+
+@end itemize
+
+@node tree-iter
+@subsection tree-iter
+@Class tree-iter
+
+Superclasses: @code{structure-object}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item stamp
+
+@item user-data
+
+@item user-data-2
+
+@item user-data-3
+
+@end itemize
+
+@node tree-node
+@subsection tree-node
+@Class tree-node
+
+Superclasses: @code{structure-object}
+
+Subclasses: None
+
+Slots:
+@itemize
+@item children
+
+@item id
+
+@item item
+
+@item parent
+
+@item tree
+
+@end itemize
+
+@node gtk Opaque Boxeds
+@section gtk Opaque Boxeds
+
+@menu
+* text-iter::
+* tree-path::
+@end menu
+
+Reference of opaque boxeds in package GTK
+
+@node text-iter
+@subsection text-iter
+@Class text-iter
+
+Superclasses: @ref{g-boxed-opaque}
+
+Slots:
+None
+
+
+@node tree-path
+@subsection tree-path
+@Class tree-path
+
+Superclasses: @ref{g-boxed-opaque}
+
+Slots:
+None
+
+
 @node gtk Enums
 @section gtk Enums
 
index eaa66f1..ac8f2a6 100644 (file)
@@ -7,7 +7,10 @@
            #:generate-texinfo-for-package
            #:get-enums
            #:generate-texinfo-for-enum
-           #:generate-texinfo-for-packages))
+           #:generate-texinfo-for-packages
+           #:get-flags
+           #:get-structs
+           #:get-opaque-boxeds))
 
 (in-package :gtk-doc-introspection)
 
         (when (eq (symbol-package type) package)
           (collect type))))
 
+(defun get-structs (package)
+  (when (symbolp package) (setf package (find-package package)))
+  (iter (for symbol in-package package :external-only t)
+        (for class = (find-class symbol nil))
+        (when (and class (typep class 'structure-class))
+          (collect class))))
+
+(defun get-opaque-boxeds (package)
+  (when (symbolp package) (setf package (find-package package)))
+  (iter (for symbol in-package package :external-only t)
+        (for class = (find-class symbol nil))
+        (when (and class (subtypep class 'g-boxed-opaque))
+          (collect class))))
+
 (defvar *doc-packages* nil)
 
 (defun generate-texinfo-for-packages (directory packages)
   (with-open-file (stream file :direction :output :if-exists :supersede)
     (let ((classes (sort (copy-list (get-gobject-classes package)) #'string< :key #'class-name))
           (enums (sort (copy-list (get-enums package)) #'string<))
-          (flags (sort (copy-list (get-flags package)) #'string<)))
+          (flags (sort (copy-list (get-flags package)) #'string<))
+          (structs (sort (copy-list (get-structs package)) #'string< :key #'class-name))
+          (opaque-boxeds (sort (copy-list (get-opaque-boxeds package)) #'string< :key #'class-name)))
       (format stream "@menu~%")
       (format stream "* ~A Classes::~%" (string-downcase (package-name package)))
+      (format stream "* ~A Structs::~%" (string-downcase (package-name package)))
+      (format stream "* ~A Opaque Boxeds::~%" (string-downcase (package-name package)))
       (format stream "* ~A Enums::~%" (string-downcase (package-name package)))
       (format stream "* ~A Flags::~%" (string-downcase (package-name package)))
       (format stream "@end menu~%~%")
+      
       (format stream "@node ~A Classes~%" (string-downcase (package-name package)))
       (format stream "@section ~A Classes~%~%" (string-downcase (package-name package)))
       (format stream "@menu~%")
             (generate-texinfo-for-class class stream)
             (format stream "~%"))
 
+      (format stream "@node ~A Structs~%" (string-downcase (package-name package)))
+      (format stream "@section ~A Structs~%~%" (string-downcase (package-name package)))
+      (format stream "@menu~%")
+      (iter (for struct in structs)
+            (format stream "* ~A::~%" (string-downcase (symbol-name (class-name struct)))))
+      (format stream "@end menu~%~%")
+      (format stream "Reference of structs in package ~A~%~%" (package-name package))
+      (iter (for struct in structs)
+            (generate-texinfo-for-struct struct stream)
+            (format stream "~%"))
+
+      (format stream "@node ~A Opaque Boxeds~%" (string-downcase (package-name package)))
+      (format stream "@section ~A Opaque Boxeds~%~%" (string-downcase (package-name package)))
+      (format stream "@menu~%")
+      (iter (for boxed in opaque-boxeds)
+            (format stream "* ~A::~%" (string-downcase (symbol-name (class-name boxed)))))
+      (format stream "@end menu~%~%")
+      (format stream "Reference of opaque boxeds in package ~A~%~%" (package-name package))
+      (iter (for boxed in opaque-boxeds)
+            (generate-texinfo-for-opaque-boxed boxed stream)
+            (format stream "~%"))
+
       (format stream "@node ~A Enums~%" (string-downcase (package-name package)))
       (format stream "@section ~A Enums~%~%" (string-downcase (package-name package)))
       (format stream "@menu~%")
     ((g-type= +g-type-string+ type) "@code{string}")
     ((g-type= +g-type-boolean+ type) "@code{boolean}")
     ((g-type= +g-type-pointer+ type) "@code{foreign-pointer}")
+    ((and (g-type= (g-type-fundamental type) "GBoxed")
+          (gethash (g-type-string type) gobject::*g-type-name->g-boxed-foreign-info*))
+     (symbol-texi-ref (gobject::g-boxed-info-name (gethash (g-type-string type)
+                                                           gobject::*g-type-name->g-boxed-foreign-info*))))
     ((and (g-type= (g-type-fundamental type) "GEnum")
           (gethash (g-type-string type) gobject::*registered-enum-types*))
      (symbol-texi-ref (gethash (g-type-string type) gobject::*registered-enum-types*)))
                 (generate-texinfo-for-signal class signal stream))
           (format stream "@end itemize~%")))))
 
+(defun generate-texinfo-for-struct (class stream)
+  (when (symbolp class) (setf class (find-class class)))
+  (format stream "@node ~A~%" (string-downcase (symbol-name (class-name class))))
+  (format stream "@subsection ~A~%"(string-downcase (symbol-name (class-name class))))
+  (format stream "@Class ~A~%~%" (string-downcase (symbol-name (class-name class))))
+  (format stream "Superclasses: ~{~A~^, ~}~%~%" (mapcar #'texi-ref (class-direct-superclasses class)))
+  (format stream "Subclasses: ")
+  (if (class-direct-subclasses class)
+      (format stream "~{~A~^, ~}~%~%" (mapcar #'texi-ref (class-direct-subclasses class)))
+      (format stream "None~%~%"))
+  (format stream "Slots:~%")
+  (let ((slots (sort (copy-list (class-direct-slots class)) #'string< :key #'slot-definition-name)))
+    (if (null slots)
+        (format stream "None~%~%")
+        (progn
+          (format stream "@itemize~%")
+          (iter (for slot in slots)
+                (generate-texinfo-for-slot class slot stream))
+          (format stream "@end itemize~%")))))
+
+(defun generate-texinfo-for-opaque-boxed (class stream)
+  (when (symbolp class) (setf class (find-class class)))
+  (format stream "@node ~A~%" (string-downcase (symbol-name (class-name class))))
+  (format stream "@subsection ~A~%"(string-downcase (symbol-name (class-name class))))
+  (format stream "@Class ~A~%~%" (string-downcase (symbol-name (class-name class))))
+  (format stream "Superclasses: ~{~A~^, ~}~%~%" (mapcar #'texi-ref (class-direct-superclasses class)))
+  (format stream "Slots:~%")
+  (let ((slots (sort (copy-list (class-direct-slots class)) #'string< :key #'slot-definition-name)))
+    (if (null slots)
+        (format stream "None~%~%")
+        (progn
+          (format stream "@itemize~%")
+          (iter (for slot in slots)
+                (generate-texinfo-for-slot class slot stream))
+          (format stream "@end itemize~%")))))
+
 (defun generate-texinfo-for-slot (class slot stream)
   (format stream "@item ~A" (string-downcase (slot-definition-name slot)))
   (ignore-errors