/* Common Lisp bindings for GTK+ v2.0
- * Copyright (C) 1999-2000 Espen S. Johnsen <esj@stud.cs.uit.no>
+ * Copyright (C) 1999-2002 Espen S. Johnsen <espen@users.sourceforge.net>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-/* $Id: gtkglue.c,v 1.6 2001-05-29 16:01:40 espen Exp $ */
+/* $Id: gtkglue.c,v 1.12 2002-04-02 15:05:44 espen Exp $ */
#include <gtk/gtk.h>
}
-/* Is this necessary? */
-
-GtkType
-gtk_object_type (GtkObject *obj)
+void gtk_callback_marshal (GtkWidget *widget, gpointer data)
{
- return GTK_OBJECT_TYPE (obj);
+ GValue arg;
+
+ memset (&arg, 0, sizeof (GValue));
+ g_value_init (&arg, gtk_widget_get_type ());
+ g_value_set_object (&arg, widget);
+ callback_marshal ((guint)data, NULL, 1, &arg);
}
+void gtk_menu_position_callback_marshal (GtkMenu *menu, gint x, gint y,
+ gboolean push_in, gpointer data)
+{
+ GValue args[3];
+
+ memset (args, 0, 3 * sizeof (GValue));
+ g_value_init (&args[0], G_TYPE_INT);
+ g_value_set_int (&args[0], x);
+ g_value_init (&args[1], G_TYPE_INT);
+ g_value_set_int (&args[1], y);
+ g_value_init (&args[2], G_TYPE_BOOLEAN);
+ g_value_set_boolean (&args[2], push_in);
+
+ callback_marshal ((guint)data, NULL, 3, args);
+}
/* Widget */
}
void
-gtk_widget_allocation (GtkWidget *widget, int *width, int *height)
+gtk_widget_get_size_allocation (GtkWidget *widget, int *width, int *height)
{
*width = widget->allocation.width;
*height = widget->allocation.height;
}
-
-/* Menu item */
+/* Dialog */
GtkWidget*
-gtk_menu_item_get_submenu (GtkMenuItem* menu_item)
-{
- return menu_item->submenu;
-}
-
-GtkSubmenuPlacement
-gtk_menu_item_get_placement (GtkMenuItem* menu_item)
-{
- return menu_item->submenu_placement;
-}
-
-gint
-gtk_menu_item_get_show_toggle (GtkMenuItem* menu_item)
+gtk_dialog_get_vbox (GtkDialog *dialog)
{
- return menu_item->show_toggle_indicator;
+ return dialog->vbox;
}
-gint
-gtk_menu_item_get_show_submenu (GtkMenuItem* menu_item)
+GtkWidget*
+gtk_dialog_get_action_area (GtkDialog *dialog)
{
- return menu_item->show_submenu_indicator;
+ return dialog->action_area;
}
}
+
/* Window */
-void
-gtk_window_wmclass (GtkWindow* window, gchar* name, gchar* class)
+GtkWidget*
+gtk_window_get_default (GtkWindow *window)
{
- name = window->wmclass_name;
- class = window->wmclass_class;
+ return window->default_widget;
}
return paned->child2;
}
-gint
-gtk_paned_get_position (GtkPaned *paned)
-{
- if (paned->position_set == TRUE)
- return paned->child1_size;
- else
- return -1;
-}
-
/* Layout */
-gint
-gtk_layout_get_size (GtkLayout *layout, gint *width, gint *height)
-
-{
- *width = layout->width;
- *height = layout->height;
-}
-
GdkWindow*
gtk_layout_get_bin_window (GtkLayout *layout)
{
}
-/* Menu */
-
-gboolean
-gtk_menu_get_tearoff_state (GtkMenu *menu)
-{
- return menu->torn_off;
-}
-
-gchar*
-gtk_menu_get_title (GtkMenu *menu)
-{
- return g_strdup (gtk_object_get_data (GTK_OBJECT (menu), "gtk-menu-title"));
-}
-
-
-/* Table */
-
-guint
-gtk_table_row_spacing (GtkTable *table,
- guint row)
-{
- return table->rows[row].spacing;
-}
-
-guint
-gtk_table_column_spacing (GtkTable *table,
- guint col)
-{
- return table->cols[col].spacing;
-}
-
/* Toolbar */
gint
-gtk_toolbar_num_children (GtkToolbar *toolbar)
-{
- return toolbar->num_children;
-}
-
-gint
gtk_toolbar_get_tooltips (GtkToolbar *toolbar)
{
return toolbar->tooltips->enabled;
}
-/* Scrolled window */
-
-GtkWidget*
-gtk_scrolled_window_get_hscrollbar (GtkScrolledWindow *window)
-{
- return window->hscrollbar;
-}
-
-GtkWidget*
-gtk_scrolled_window_get_vscrollbar (GtkScrolledWindow *window)
-{
- return window->vscrollbar;
-}
-
-
-
/* Tooltips */
-guint
-gtk_tooltips_get_delay (GtkTooltips *tooltips)
-{
- return tooltips->delay;
-}
-
gboolean
gtk_tooltips_get_enabled (GtkTooltips *tooltips)
{
return gtk_style_get_color (style, color_type, state);
}
-
+/*
GdkFont*
gtk_style_get_font (GtkStyle *style)
{
{
return style->font = font;
}
-
+*/
GdkGC*
gtk_style_get_gc (GtkStyle *style, GtkColorType color_type, GtkStateType state)