-/* 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)
static GQuark quark_type_branch = 0;
static GQuark quark_type_last_branch = 0;
-G_DEFINE_TYPE (GtkItemFactory, gtk_item_factory, GTK_TYPE_OBJECT);
+G_DEFINE_TYPE (GtkItemFactory, gtk_item_factory, GTK_TYPE_OBJECT)
/* --- functions --- */
static void
*
* 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,
*
* Initializes an item factory.
*
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
*/
void
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);
* <literal>"<name>"</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)
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;
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);
*
* 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)
* 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)
*
* Creates the menu items from the @entries.
*
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
*/
void
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,
* 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,
* 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,
* 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,
* 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,
*
* Creates an item for @entry.
*
- * Deprecated: 2.4:
+ * Deprecated: 2.4: Use #GtkUIManager instead.
*/
void
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),
{
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,
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);
*
* 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,
*
* 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,
* 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,
* 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,
* 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,
* 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)
* 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)
* 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,
* 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,
* 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,