Initial checkin
[clg] / gtk / gtktypes.lisp
index a230ad1..7de1010 100644 (file)
@@ -15,7 +15,7 @@
 ;; License along with this library; if not, write to the Free Software
 ;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
-;; $Id: gtktypes.lisp,v 1.9 2001-11-12 22:32:17 espen Exp $
+;; $Id: gtktypes.lisp,v 1.15 2002-04-02 15:03:47 espen Exp $
 
 
 (in-package "GTK")
     :initarg :height
     :type int))
   (:metaclass boxed-class)
-  (:alien-name "GtkRequisition"))
+  (:alien-name "GtkTypeRequisition"))
+
+(defclass allocation (struct)
+  ((x
+    :allocation :alien
+    :accessor allocation-width
+    :initarg :x
+    :type int)
+   (y
+    :allocation :alien
+    :accessor allocation-width
+    :initarg :width
+    :type int)
+   (width
+    :allocation :alien
+    :accessor allocation-width
+    :initarg :width
+    :type int)
+   (height
+    :allocation :alien
+    :accessor allocation-height
+    :initarg :height
+    :type int))
+  (:metaclass proxy-class))
 
 (defclass border (boxed)
   ((left
@@ -56,7 +79,7 @@
     :initarg :bottom
     :type int))
   (:metaclass boxed-class)
-  (:alien-name "GtkBorder"))
+  (:alien-name "GtkTypeBorder"))
 
 (defclass adjustment (%object)
   ((lower
   (:metaclass gobject-class)
   (:alien-name "GtkAdjustment"))
 
+(defclass stock-item (struct)
+  ((id
+    :allocation :alien
+    :accessor stock-item-id
+    :initarg :id
+    :type string)
+   (label
+    :allocation :alien
+    :accessor stock-item-label
+    :initarg :label
+    :type string)
+   (modifier
+    :allocation :alien
+    :accessor stock-item-modifier
+    :initarg :modifier
+    :type gdk:modifier-type)
+   (keyval
+    :allocation :alien
+    :accessor stock-item-keyval
+    :initarg :keyval
+    :type int)
+   (translation-domain
+    :allocation :alien
+    :accessor stock-item-translation-domain
+    :initarg :translation-domain
+    :type string))
+  (:metaclass proxy-class))
+
 
 
 (define-types-by-introspection "Gtk"
     :allocation :instance
     :accessor widget-child-slots
     :type container-child)
-    (parent
+    (parent-window
      :allocation :virtual
-     :getter "gtk_widget_get_parent"
-     :setter "gtk_widget_set_parent"
-     :accessor widget-parent
-     :type container
-     :documentation "The parent widget of this widget. Must be a container widget.")
+     :getter "gtk_widget_get_parent_window"
+     :setter "gtk_widget_set_parent_window"
+     :accessor widget-parent-window
+     :type gdk:window)
     (window
      :allocation :virtual
      :getter "gtk_widget_get_window"
     (colormap
      :allocation :virtual
      :getter "gtk_widget_get_colormap"
-     :reader widget-colormap
+     :setter "gtk_widget_set_colormap"
+     :initarg :colormap
+     :accessor widget-colormap
      :type gdk:colormap)
     (visual
      :allocation :virtual
      :getter "gtk_widget_get_visual"
      :reader widget-visual
-     :type gdk:visual)))
-
+     :type gdk:visual)
+    (direction
+     :allocation :virtual
+     :getter "gtk_widget_get_direction"
+     :setter "gtk_widget_set_direction"
+     :accessor widget-direction
+     :initarg :direction
+     :type text-direction)
+    (composite-name
+     :allocation :virtual
+     :getter "gtk_widget_get_composite_name"
+     :setter "gtk_widget_set_composite_name"
+     :accessor widget-composite-name
+     :initarg :composite-name
+     :type string)
+    (settings
+     :allocation :virtual
+     :getter "gtk_widget_get_settings"
+     :accessor widget-settings
+     :type settings)
+    (child-visible
+     :allocation :virtual
+     :getter "gtk_widget_get_child_visible"
+     :setter "gtk_widget_set_child_visible"
+     :accessor widget-child-visible-p
+     :initarg :child-visible
+     :type boolean)))
+     
   ("GtkContainer"
    :slots
    ((child
      :accessor container-focus-child
      :initarg :focus-child
      :type widget)
+    (focus-chain
+     :allocation :virtual
+     :getter container-focus-chain
+     :setter (setf container-focus-chain))
     (focus-hadjustment
      :allocation :virtual
      :getter "gtk_container_get_focus_hadjustment"
      :setter (setf bin-child)
      :reader bin-child
      :type widget)))
+
+  ("GtkWindow"
+   :slots
+   ((gravity
+     :allocation :virtual
+     :getter "gtk_window_get_gravity"
+     :setter "gtk_window_set_gravity"
+     :accessor window-gravity
+     :initarg :gravity
+     :type gdk:gravity)
+    (focus-widget
+     :allocation :virtual
+     :getter "gtk_window_get_focus"
+     :setter "gtk_window_set_focus"
+     :accessor window-focus-widget
+     :initarg :focus-widget
+     :type widget)
+    (default-widget
+     :allocation :virtual
+     :getter "gtk_window_get_default"
+     :setter "gtk_window_set_default"
+     :accessor window-default-widget
+     :initarg :default-widget
+     :type widget)
+    (decorated
+     :allocation :virtual
+     :getter "gtk_window_get_decorated"
+     :setter "gtk_window_set_decorated"
+     :accessor window-decorated-p
+     :initarg :decorated
+     :type boolean)
+    (has-frame
+     :allocation :virtual
+     :getter "gtk_window_get_has_frame"
+     :setter "gtk_window_set_has_frame"
+     :accessor window-has-frame-p
+     :initarg :has-frame
+     :type boolean)
+    (role
+     :allocation :virtual
+     :getter "gtk_window_get_role"
+     :setter "gtk_window_set_role"
+     :accessor window-role
+     :initarg :role
+     :type string)
+    (type-hint
+     :allocation :virtual
+     :getter "gtk_window_get_type_hint"
+     :setter "gtk_window_set_type_hint"
+     :accessor window-type-hint
+     :initarg :type-hint
+     :type gdk:window-type-hint)
+    (icon
+     :allocation :virtual
+     :getter window-icon
+     :setter (setf window-icon)
+     :initarg :icon)
+    (mnemonic-modifier
+     :allocation :virtual
+     :getter "gtk_window_get_mnemonic_modifier"
+     :setter "gtk_window_set_mnemonic_modifier"
+     :accessor window-mnemonic-modifier
+     :initarg :mnemonic-modifier
+     :type gdk:modifier-type)
+    (transient-for
+     :allocation :virtual
+     :getter "gtk_window_get_transient_for"
+     :setter "gtk_window_set_transient_for"
+     :accessor window-transient-for
+     :initarg :transient-for
+     :type window)))
   
   ("GtkTooltips"
    :slots
      :setter (setf option-menu-menu)
      :reader option-menu-menu
      :initarg :menu
-     :type widget)
+     :type menu)
     (history
      :allocation :virtual
      :getter "gtk_option_menu_get_history"
    :slots
    ((label
      :allocation :virtual
-     :setter menu-item-label
+     :getter menu-item-label
+     :setter (setf menu-item-label)
      :initarg :label
      :type string)
+    (right-justified
+     :allocation :virtual
+     :getter "gtk_menu_item_get_right_justified"
+     :setter "gtk_menu_item_set_right_justified"
+     :accessor menu-item-right-justified-p
+     :initarg :right-justified
+     :type boolean)
     (submenu
      :allocation :virtual
      :getter "gtk_menu_item_get_submenu"
      :setter (setf menu-item-submenu)
      :reader menu-item-submenu
      :initarg :submenu
-     :type menu-item)
-    (placement
-     :allocation :virtual
-     :getter "gtk_menu_item_get_placement"
-     :setter "_gtk_menu_item_set_placement"  ; why underscore?
-     :accessor menu-item-placement
-     :initarg :placement
-     :type submenu-placement)
-    (submenu-indicator
-     :allocation :virtual
-     :getter "gtk_menu_item_get_show_submenu"
-     :setter "gtk_menu_item_set_show_submenu"
-     :accessor menu-item-submenu-indicator-p
-     :initarg :submenu-indicator
-     :type boolean)))
+     :type menu-item)))
 
   ("GtkColorSelectionDialog"
    :slots
      :accessor menu-accel-group
      :initarg :accel-group
      :type accel-group)
+    (title
+     :allocation :virtual
+     :getter "gtk_menu_get_title"
+     :setter "gtk_menu_set_title"
+     :accessor menu-title
+     :initarg :title
+     :type string)
     (active
      :allocation :virtual
      :getter "gtk_menu_get_active"
      :initarg :icon-size
      :type icon-size)))
 
+  ("GtkNotebook"
+   :slots
+   ((current-page
+     :allocation :virtual
+     :getter notebook-current-page
+     :setter (setf notebook-current-page)
+     :initarg :current-page)
+    (page :ignore t)))
+  
   ("GtkRuler"
    :slots
    ((metric
 
   ("GtkDialog"
    :slots
-   ((vbox
+   ((main-area
      :allocation :virtual
      :getter "gtk_dialog_get_vbox"
-     :reader dialog-vbox
+     :reader dialog-main-area
      :type widget)
     (action-area
      :allocation :virtual
      :getter "gtk_combo_get_entry"
      :reader combo-entry
      :type entry)))
-
+  
   ("GtkRadioButton"
    :slots
    ((group
    ((bin-window
      :getter "gtk_layout_get_bin_window"
      :reader layout-bin-window
-     :type gdk:window)
-    (x-offset
-     :getter "gtk_layout_get_xoffset"
-     :setter "gtk_layout_set_xoffset"
-     :accessor layout-x-offset
-     :initarg :x-offset
-     :type unsigned-int)
-    (y-offset
-     :getter "gtk_layout_get_yoffset"
-     :setter "gtk_layout_set_yoffset"
-     :accessor layout-y-offset
-     :initarg :x-offset
-     :type unsigned-int)))
+     :type gdk:window)))
 
+  ("GtkFixed"
+   :slots
+   ((has-window
+     :getter "gtk_fixed_get_has_window"
+     :setter "gtk_fixed_set_has_window"
+     :reader fixed-has-window-p
+     :initarg :has-window
+     :type boolean)))
      
   ;; Not needed
   ("GtkFundamentalType" :ignore t)
   ("GtkList" :ignore-prefix t)
   ("GtkTree" :ignore t)
   ("GtkTreeItem" :ignore t)
-  ("GtkText" :ignore-prefix t)
+  ("GtkText" :ignore-prefix t :except ("GtkTextDirection"))
   ("GtkPacker" :ignore-prefix t)
   ("GtkPixmap" :ignore t)
   ("GtkPreview" :ignore-prefix t)