]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkitemfactory.c
Practically everything changed.
[~andy/gtk] / gtk / gtkitemfactory.c
index 9573fd7d6cea9b1d771be5e094f3c8b93d15dd3d..428784cdb6d6884153c753e262753d6ac3343ea9 100644 (file)
@@ -1,4 +1,4 @@
-/* GTK - The GIMP Toolkit
+/* GTK - The GTK+ Toolkit
  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
  *
  * GtkItemFactory: Flexible item factory with automatic rc handling
 
 #include       <config.h>
 
+#undef GTK_DISABLE_DEPRECATED
 #include       "gtkitemfactory.h"
-#include       "gtk/gtkmenubar.h"
-#include       "gtk/gtkmenu.h"
-#include       "gtk/gtkmenuitem.h"
-#include       "gtk/gtkradiomenuitem.h"
-#include       "gtk/gtkcheckmenuitem.h"
-#include       "gtk/gtkimagemenuitem.h"
-#include       "gtk/gtktearoffmenuitem.h"
-#include       "gtk/gtkaccelmap.h"
-#include       "gtk/gtkaccellabel.h"
+#include       "gtkoptionmenu.h"
+#include       "gtkmenubar.h"
+#include       "gtkmenu.h"
+#include       "gtkmenuitem.h"
+#include       "gtkradiomenuitem.h"
+#include       "gtkcheckmenuitem.h"
+#include       "gtkimagemenuitem.h"
+#include       "gtktearoffmenuitem.h"
+#include       "gtkaccelmap.h"
+#include       "gtkaccellabel.h"
 #include        "gdk/gdkkeysyms.h"
-#include       "gtk/gtkimage.h"
-#include       "gtk/gtkstock.h"
-#include       "gtk/gtkiconfactory.h"
+#include       "gtkimage.h"
+#include       "gtkstock.h"
+#include       "gtkiconfactory.h"
 #include       "gtkintl.h"
 #include       <string.h>
 #include       <fcntl.h>
 #endif
 #include       <stdio.h>
 
-#undef GTK_DISABLE_DEPRECATED
-#include       "gtk/gtkoptionmenu.h"
-#define GTK_DISABLE_DEPRECATED
-#include       "gtkalias.h"
+#include "gtkalias.h"
 
 /* --- defines --- */
 #define                ITEM_FACTORY_STRING     ((gchar*) item_factory_string)
@@ -158,7 +157,7 @@ gtk_item_factory_init (GtkItemFactory           *ifactory)
  *
  * Beware that the returned object does not have a floating reference.
  *
- * Deprecated: 2.4:    
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 GtkItemFactory*
 gtk_item_factory_new (GType         container_type,
@@ -375,7 +374,7 @@ gtk_item_factory_add_item (GtkItemFactory           *ifactory,
  * 
  * Initializes an item factory.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */  
 void
 gtk_item_factory_construct (GtkItemFactory     *ifactory,
@@ -408,7 +407,7 @@ gtk_item_factory_construct (GtkItemFactory  *ifactory,
     ifactory->accel_group = gtk_accel_group_new ();
 
   ifactory->path = g_strdup (path);
-  ifactory->widget = g_object_connect (gtk_widget_new (container_type, NULL),
+  ifactory->widget = g_object_connect (g_object_new (container_type, NULL),
                                       "signal::destroy", gtk_widget_destroyed, &ifactory->widget,
                                       NULL);
   g_object_ref_sink (ifactory);
@@ -430,7 +429,7 @@ gtk_item_factory_construct (GtkItemFactory  *ifactory,
  * <literal>"&lt;name&gt;"</literal> prefix of @path as the @path argument 
  * for gtk_item_factory_new().
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 GtkItemFactory*
 gtk_item_factory_from_path (const gchar      *path)
@@ -471,13 +470,9 @@ gtk_item_factory_from_path (const gchar      *path)
 static void
 gtk_item_factory_destroy (GtkObject *object)
 {
-  GtkItemFactory *ifactory;
+  GtkItemFactory *ifactory = (GtkItemFactory*) object;
   GSList *slist;
 
-  g_return_if_fail (GTK_IS_ITEM_FACTORY (object));
-
-  ifactory = (GtkItemFactory*) object;
-
   if (ifactory->widget)
     {
       GtkObject *dobj;
@@ -509,13 +504,11 @@ gtk_item_factory_destroy (GtkObject *object)
 static void
 gtk_item_factory_finalize (GObject *object)
 {
-  GtkItemFactory *ifactory;
-
-  g_return_if_fail (GTK_IS_ITEM_FACTORY (object));
+  GtkItemFactory *ifactory = GTK_ITEM_FACTORY (object);
 
-  ifactory = GTK_ITEM_FACTORY (object);
+  if (ifactory->accel_group)
+    g_object_unref (ifactory->accel_group);
 
-  g_object_unref (ifactory->accel_group);
   g_free (ifactory->path);
   g_assert (ifactory->widget == NULL);
 
@@ -532,7 +525,7 @@ gtk_item_factory_finalize (GObject *object)
  *
  * Obtains the item factory from which a widget was created.
  *
- * Deprecated: 2.4
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 GtkItemFactory*
 gtk_item_factory_from_widget (GtkWidget               *widget)
@@ -565,7 +558,7 @@ gtk_item_factory_from_widget (GtkWidget            *widget)
  * path specified in gtk_item_factory_new() with the path specified in the 
  * #GtkItemFactoryEntry from which the widget was created.)
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 G_CONST_RETURN gchar*
 gtk_item_factory_path_from_widget (GtkWidget       *widget)
@@ -596,7 +589,7 @@ gtk_item_factory_path_from_widget (GtkWidget            *widget)
  *
  * Creates the menu items from the @entries.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 void
 gtk_item_factory_create_items (GtkItemFactory     *ifactory,
@@ -618,7 +611,7 @@ gtk_item_factory_create_items (GtkItemFactory          *ifactory,
  *
  * Creates the menu items from the @entries.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 void
 gtk_item_factory_create_items_ac (GtkItemFactory      *ifactory,
@@ -654,7 +647,7 @@ gtk_item_factory_create_items_ac (GtkItemFactory      *ifactory,
  * submenu, then the submenu is returned. If you are interested in the menu 
  * item, use gtk_item_factory_get_item() instead.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 GtkWidget*
 gtk_item_factory_get_widget (GtkItemFactory *ifactory,
@@ -707,7 +700,7 @@ gtk_item_factory_get_widget (GtkItemFactory *ifactory,
  * If there are multiple items with the same action, the result is 
  * undefined.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 GtkWidget*
 gtk_item_factory_get_widget_by_action (GtkItemFactory *ifactory,
@@ -744,7 +737,7 @@ gtk_item_factory_get_widget_by_action (GtkItemFactory *ifactory,
  * submenu, then the item is returned. If you are interested in the submenu, 
  * use gtk_item_factory_get_widget() instead.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 GtkWidget*
 gtk_item_factory_get_item (GtkItemFactory *ifactory,
@@ -775,7 +768,7 @@ gtk_item_factory_get_item (GtkItemFactory *ifactory,
  * Obtains the menu item which was constructed from the first 
  * #GtkItemFactoryEntry with the given @action.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 GtkWidget*
 gtk_item_factory_get_item_by_action (GtkItemFactory *ifactory,
@@ -913,7 +906,7 @@ gtk_item_factory_parse_path (GtkItemFactory *ifactory,
  *
  * Creates an item for @entry.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 void
 gtk_item_factory_create_item (GtkItemFactory        *ifactory,
@@ -1042,7 +1035,7 @@ gtk_item_factory_create_item (GtkItemFactory           *ifactory,
 
   accelerator = entry->accelerator;
   
-  widget = gtk_widget_new (type,
+  widget = g_object_new (type,
                           "visible", TRUE,
                           "sensitive", (type_id != quark_type_separator_item &&
                                         type_id != quark_type_title),
@@ -1095,7 +1088,7 @@ gtk_item_factory_create_item (GtkItemFactory           *ifactory,
     {
       GtkWidget *label;
       
-      label = gtk_widget_new (GTK_TYPE_ACCEL_LABEL,
+      label = g_object_new (GTK_TYPE_ACCEL_LABEL,
                              "visible", TRUE,
                              "parent", widget,
                              "accel-widget", widget,
@@ -1118,7 +1111,7 @@ gtk_item_factory_create_item (GtkItemFactory           *ifactory,
        gtk_menu_item_set_right_justified (GTK_MENU_ITEM (widget), TRUE);
       
       parent = widget;
-      widget = gtk_widget_new (GTK_TYPE_MENU, NULL);
+      widget = g_object_new (GTK_TYPE_MENU, NULL);
       p = g_strconcat (ifactory->path, path, NULL);
       gtk_menu_set_accel_path (GTK_MENU (widget), p);
       g_free (p);
@@ -1147,7 +1140,7 @@ gtk_item_factory_create_item (GtkItemFactory           *ifactory,
  *
  * Creates the menu items from the @entries.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 void
 gtk_item_factory_create_menu_entries (guint              n_entries,
@@ -1233,7 +1226,7 @@ gtk_item_factory_create_menu_entries (guint              n_entries,
  * 
  * Deletes all widgets constructed from the specified path.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 void
 gtk_item_factories_path_delete (const gchar *ifactory_path,
@@ -1294,7 +1287,7 @@ gtk_item_factories_path_delete (const gchar *ifactory_path,
  * Deletes the menu item which was created for @path by the given
  * item factory.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 void
 gtk_item_factory_delete_item (GtkItemFactory         *ifactory,
@@ -1324,7 +1317,7 @@ gtk_item_factory_delete_item (GtkItemFactory         *ifactory,
  * Deletes the menu item which was created from @entry by the given
  * item factory.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 void
 gtk_item_factory_delete_entry (GtkItemFactory         *ifactory,
@@ -1359,7 +1352,7 @@ gtk_item_factory_delete_entry (GtkItemFactory         *ifactory,
  * Deletes the menu items which were created from the @entries by the given
  * item factory.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 void
 gtk_item_factory_delete_entries (GtkItemFactory         *ifactory,
@@ -1406,7 +1399,7 @@ gtk_item_factory_menu_pos (GtkMenu  *menu,
  * gtk_item_factory_popup_with_data(). This data is available until the menu
  * is popped down again.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 gpointer
 gtk_item_factory_popup_data_from_widget (GtkWidget *widget)
@@ -1431,7 +1424,7 @@ gtk_item_factory_popup_data_from_widget (GtkWidget *widget)
  * gtk_item_factory_popup_with_data(). This data is available until the menu
  * is popped down again.
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 gpointer
 gtk_item_factory_popup_data (GtkItemFactory *ifactory)
@@ -1473,7 +1466,7 @@ ifactory_delete_popup_data (GtkObject        *object,
  * The operation of the @mouse_button and the @time_ parameter is the same
  * as the @button and @activation_time parameters for gtk_menu_popup().
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 void
 gtk_item_factory_popup (GtkItemFactory         *ifactory,
@@ -1512,7 +1505,7 @@ gtk_item_factory_popup (GtkItemFactory            *ifactory,
  * The operation of the @mouse_button and the @time_ parameters is the same
  * as the @button and @activation_time parameters for gtk_menu_popup().
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */
 void
 gtk_item_factory_popup_with_data (GtkItemFactory       *ifactory,
@@ -1571,7 +1564,7 @@ gtk_item_factory_popup_with_data (GtkItemFactory  *ifactory,
  * Sets a function to be used for translating the path elements before they
  * are displayed. 
  *
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
  */ 
 void
 gtk_item_factory_set_translate_func (GtkItemFactory      *ifactory,