Updated for gtk+-1.3.9 and misc changes
[clg] / gtk / gtkglue.c
index 51c4801..9dc7712 100644 (file)
@@ -1,5 +1,5 @@
 /* Common Lisp bindings for GTK+ v2.0
- * Copyright (C) 1999-2000 Espen S. Johnsen <espejohn@online.no>
+ * Copyright (C) 1999-2000 Espen S. Johnsen <esj@stud.cs.uit.no>
  *
  * 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.1 2000/08/14 16:45:01 espen Exp $ */
+/* $Id: gtkglue.c,v 1.6 2001/05/29 16:01:40 espen Exp $ */
 
 
 #include <gtk/gtk.h>
 
-#ifdef CMUCL
-#include "lisp.h"
-
-extern lispobj funcall1(lispobj function, lispobj arg0);
-extern lispobj funcall3(lispobj function, lispobj arg0,
-                       lispobj arg1, lispobj arg2);
-
-lispobj callback_trampoline;
-lispobj destroy_user_data;
-#endif
-
-
-void callback_marshal (GtkObject *object,
-                      gpointer data,
-                      guint n_args,
-                      GtkArg *args)
-{
-#ifdef CMUCL
-  funcall3 (callback_trampoline, alloc_number ((unsigned long)data),
-           alloc_number (n_args), alloc_sap (args));
-
-  /*  lispobj lisp_args[4];
-
-  lisp_args[0] = alloc_sap (object);
-  lisp_args[1] = alloc_number ((unsigned long)data);
-  lisp_args[2] = alloc_number (n_args);
-  lisp_args[3] = alloc_sap (args);
-
-  call_into_lisp (callback_trampoline, lisp_args, 4);*/
-#elif defined(CLISP)
-  callback_trampoline ((unsigned long)data, n_args, (unsigned int) args);
-#endif
-}
-
-
-void destroy_marshal (gpointer data)
-{ 
-#ifdef CMUCL
-  funcall1 (destroy_user_data, alloc_number ((unsigned long)data));
-#elif defined(CLISP)
-  destroy_user_data ((unsigned long)data);
-#endif
-}
-
-#ifndef CMUCL
-void*
-callback_marshal_address ()
-{
-  return (void*)callback_marshal;
-}
-
-void*
-destroy_marshal_address ()
-{
-  return (void*)destroy_marshal;
-}
-#endif
-
 
 /*
  *
@@ -151,6 +93,12 @@ 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)
 {
@@ -180,15 +128,6 @@ gtk_check_menu_item_get_show_toggle (GtkCheckMenuItem* check_menu_item)
 }
 
 
-/* Tree item */
-
-GtkWidget*
-gtk_tree_item_get_subtree (GtkTreeItem* tree_item)
-{
-  return GTK_TREE_ITEM_SUBTREE (tree_item);
-}
-
-
 /* Window */
 
 void
@@ -199,61 +138,6 @@ gtk_window_wmclass (GtkWindow* window, gchar* name, gchar* class)
 }
 
 
-/* Color selection dialog */
-
-GtkWidget*
-gtk_color_selection_dialog_get_colorsel (GtkColorSelectionDialog* dialog)
-{
-  return dialog->colorsel;
-}
-
-/*  GtkWidget* */
-/*  gtk_color_selection_dialog_get_main_vbox (GtkColorSelectionDialog* dialog) */
-/*  { */
-/*    return dialog->main_vbox; */
-/*  } */
-
-GtkWidget*
-gtk_color_selection_dialog_get_ok_button (GtkColorSelectionDialog* dialog)
-{
-  return dialog->ok_button;
-}
-
-/*  GtkWidget* */
-/*  gtk_color_selection_dialog_get_reset_button (GtkColorSelectionDialog* dialog) */
-/*  { */
-/*    return dialog->reset_button; */
-/*  } */
-
-GtkWidget*
-gtk_color_selection_dialog_get_cancel_button (GtkColorSelectionDialog* dialog)
-{
-  return dialog->cancel_button;
-}
-
-GtkWidget*
-gtk_color_selection_dialog_get_help_button (GtkColorSelectionDialog* dialog)
-{
-  return dialog->help_button;
-}
-
-
-/* Dialog */
-
-GtkWidget*
-gtk_dialog_get_action_area (GtkDialog *dialog)
-{
-  return dialog->action_area;
-}
-
-
-GtkWidget*
-gtk_dialog_get_vbox (GtkDialog *dialog)
-{
-  return dialog->vbox;
-}
-
-
 /* File selection */
 
 GtkWidget*
@@ -277,7 +161,6 @@ gtk_file_selection_get_cancel_button (GtkFileSelection *filesel)
 
 /* Color selection */
 
-void
 gtk_color_selection_set_color_by_values (GtkColorSelection *colorsel,
                                         gdouble red,
                                         gdouble green,
@@ -339,115 +222,6 @@ gtk_combo_get_case_sensitive (GtkCombo *combo)
 }
 
 
-/* CList */
-
-#ifdef CLIST
-GList*
-gtk_clist_selection (GtkCList *clist)
-{
-  return clist->selection;
-}
-
-gint
-gtk_clist_get_titles_visible (GtkCList *clist)
-{
-  return (clist->title_window && GTK_WIDGET_VISIBLE (clist->title_window));
-}
-
-gint
-gtk_clist_get_n_rows (GtkCList *clist)
-{
-  return clist->rows;
-}
-
-gint
-gtk_clist_get_focus_row (GtkCList *clist)
-{
-  return clist->focus_row;
-}
-
-gint
-gtk_clist_get_sort_column (GtkCList *clist)
-{
-  return clist->sort_column;
-}
-
-GtkJustification
-gtk_clist_column_justification (GtkCList *clist,
-                                gint column)
-{
-  return clist->column[column].justification;
-}
-
-gboolean
-gtk_clist_column_visible_p (GtkCList *clist,
-                          gint column)
-{
-  return clist->column[column].visible;
-}
-
-gboolean
-gtk_clist_column_resizeable_p (GtkCList *clist,
-                            gint column)
-{
-  return clist->column[column].resizeable;
-}
-
-gboolean
-gtk_clist_column_auto_resize_p (GtkCList *clist,
-                               gint column)
-{
-  return clist->column[column].auto_resize;
-}
-
-gint
-gtk_clist_column_width (GtkCList *clist,
-                       gint column)
-{
-  return clist->column[column].width;
-}
-
-gboolean
-gtk_clist_auto_sort_p (GtkCList *clist)
-{
-  return GTK_CLIST_AUTO_SORT (clist);
-}
-#endif
-
-/* CTree */
-
-#ifdef CTREE
-gboolean
-gtk_ctree_node_leaf_p (GtkCTreeNode* node)
-{
-  return GTK_CTREE_ROW (node)->is_leaf;
-}
-
-GtkCTreeNode*
-gtk_ctree_node_child (GtkCTreeNode* node)
-{
-  return GTK_CTREE_ROW (node)->children;
-}
-
-GtkCTreeNode*
-gtk_ctree_node_parent (GtkCTreeNode* node)
-{
-  return GTK_CTREE_ROW (node)->parent;
-}
-
-GtkCTreeNode*
-gtk_ctree_node_sibling (GtkCTreeNode* node)
-{
-  return GTK_CTREE_ROW (node)->sibling;
-}
-
-gint
-gtk_ctree_node_level (GtkCTreeNode* node)
-{
-  return GTK_CTREE_ROW (node)->level;
-}
-#endif
-
 /* Paned */
 
 GtkWidget*
@@ -482,21 +256,13 @@ gtk_paned_get_position (GtkPaned *paned)
 /* Layout */
 
 gint
-gtk_layout_size (GtkLayout *layout, gint *width, gint *height)
+gtk_layout_get_size (GtkLayout *layout, gint *width, gint *height)
                 
 {
   *width =  layout->width;
   *height = layout->height;
 }
 
-void
-gtk_layout_offset (GtkLayout *layout, gint *x, gint *y)
-{
-  *x = layout->xoffset;
-  *y = layout->yoffset;  
-}
-
-
 GdkWindow*
 gtk_layout_get_bin_window (GtkLayout *layout)
 {
@@ -513,6 +279,21 @@ gtk_list_selection (GtkList *list)
 }
 
 
+/* 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
@@ -538,37 +319,10 @@ gtk_toolbar_num_children (GtkToolbar *toolbar)
   return toolbar->num_children;
 }
 
-
-/* Tree */
-
-GtkSelectionMode
-gtk_tree_get_selection_mode (GtkTree *tree)
-{
-  return tree->selection_mode;
-}
-
-GtkSelectionMode
-gtk_tree_get_view_mode (GtkTree *tree)
-{
-  return tree->view_mode;
-}
-
-GtkSelectionMode
-gtk_tree_get_view_lines (GtkTree *tree)
-{
-  return tree->view_mode;
-}
-
-GtkTree*
-gtk_tree_get_root_tree (GtkTree *tree)
-{
-  return GTK_TREE_ROOT_TREE (tree);
-}
-
-GList*
-gtk_tree_selection (GtkTree *tree)
+gint
+gtk_toolbar_get_tooltips (GtkToolbar *toolbar)
 {
-  return GTK_TREE_SELECTION (tree);
+  return toolbar->tooltips->enabled;
 }
 
 
@@ -624,8 +378,11 @@ gtk_tooltips_get_delay (GtkTooltips *tooltips)
   return tooltips->delay;
 }
 
-
-
+gboolean
+gtk_tooltips_get_enabled (GtkTooltips *tooltips)
+{
+  return tooltips->enabled;
+}
 
 
 /* GtkStyle accessor functions */