---
name: "Gtk_ItemFactory"
section: "3"
platform: "linux"
package: "libgtkmm-dev"
version: "1.0.3-1.1"
release: "Debian 2.2 (Potato)"
platforms: ["linux"]
url: "https://new.carta.tech/Gtk_ItemFactory"
---

# Gtk\_ItemFactory(3)

## NAME - Gtk\_ItemFactory

## HEADER REQUIRED

**#include \<gtk--/itemfactory.h&gt;\>**

## BASE CLASSES

[Gtk\_Object(3)](/Gtk_Object/3.md)

## DERIVED BY

[Gtk\_ItemFactory\_Menu(3)](/Gtk_ItemFactory_Menu/3.md) [Gtk\_ItemFactory\_MenuBar(3)](/Gtk_ItemFactory_MenuBar/3.md) [Gtk\_ItemFactory\_OptionMenu(3)](/Gtk_ItemFactory_OptionMenu/3.md)

## PROPERTIES

- *object*

  Type: GtkObject\

- *path*

  Type: string\

- *accel\_group*

  Type: GtkAccelGroup\*\

- *widget*

  Type: Gtk\_Widget\*\

- *widgets\_by\_action*

  Type: GSList\*\

- *translate\_func*

  Type: GtkTranslateFunc\

- *translate\_data*

  Type: gpointer\

- *translate\_notify*

  Type: GtkDestroyNotify\

-

   .IP

## PUBLIC MEMBER INDEX

```
Gtk_ItemFactory(GtkType type, const string &path, Gtk_AccelGroup &_accel_group);
Gtk_ItemFactory(GtkType type, const string &path);
Gtk_ItemFactory(GtkItemFactory *castitem);
~Gtk_ItemFactory();
static void  parse_rc(const string &file_name);
static void  parse_rc_string(const string &rc_string);
static void  parse_rc_scanner(GScanner *scanner);
static Gtk_ObjectHandle  from_widget(const Gtk_Widget &widget);
static string  path_from_widget(const Gtk_Widget &widget);
static void  dump_items(GtkPatternSpec *path_pspec, bool modified_only, GtkPrintFunc print_func, gpointer func_data);
static void  dump_rc(const string &file_name, GtkPatternSpec *path_pspec, bool modified_only);
static void  print_func(FILE *fp, const string &str);
void  create_items(guint n_entries, GtkItemFactoryEntry *entries, gpointer callback_data);
template  Gtk_Widget*  create_item(const string &path, const _gtk_string &accelerator, const string &item_type, RECEIVER *target_widget, void (RECEIVER::*target_method)(ARG_TYPE), ARG_TYPE target_method_arg);
Gtk_Widget*  create_item(const string & path, const _gtk_string & accelerator, const string & item_type, const ItemFactoryConnectorBase& connector);
Gtk_Widget*  create_item(const string & path, const _gtk_string & accelerator, const string & item_type, void (*target_func)());
Gtk_ObjectHandle  get_widget_by_action(guint action) const;
Gtk_ObjectHandle  get_widget(const string &path) const;
Gtk_ObjectHandle  get_menu_widget(const string &path) const;
Gtk_ObjectHandle  get_menubar_widget(const string &path) const;
Gtk_ObjectHandle  get_menuitem_widget(const string &path) const;
Gtk_ObjectHandle  get_checkmenuitem_widget(const string &path) const;
Gtk_ObjectHandle  get_radiomenuitem_widget(const string &path) const;
Gtk_ObjectHandle  get_optionmenu_widget(const string &path) const;
void  delete_item(const string &path);
void  delete_entry(GtkItemFactoryEntry *entry);
void  delete_entries(guint n_entries, GtkItemFactoryEntry *entries);
void  popup(guint x, guint y, guint mouse_button, guint32 time);
void  popup_with_data(gpointer popup_data, GtkDestroyNotify destroy, guint x, guint y, guint mouse_button, guint32 time);
  FIXME : 'destroy' should be a method pointer
gpointer  popup_data();
gpointer  popup_data_from_widget(const Gtk_Widget *widget);
static gpointer  popup_data_from_widget(const Gtk_Widget &widget);
void  set_translate_func(GtkTranslateFunc func, gpointer data, GtkDestroyNotify notify);
static Gtk_ObjectHandle  from_path(const string &path);
static void  create_menu_entries(guint n_entries, GtkMenuEntry *entries);
static void  path_delete(const string &ifactory_path, const string &path);
Gtk_Widget*  getGtk_MenuItemFromGtkWidget(GtkWidget * w);
const Gtk_AccelGroup*  get_accel_group();
GtkItemFactory*  gtkobj();
const GtkItemFactory*  gtkobj() const;
static bool  isGtkItemFactory(Gtk_Object *checkcast);
```

## PROTECTED MEMBER INDEX

```
friend  CppClassType;
typedef GtkItemFactory  BaseObjectType;
typedef GtkItemFactoryClass  BaseClassType;
virtual void * get_parent_class();
G_List * children_;
Gtk_ObjectHandle  accel_group_;
```

## PRIVATE MEMBER INDEX

```
static CppClassType  item_factory_class;
GtkType  get_type();
```

## PUBLIC MEMBER DESCRIPTIONS

## PROTECTED MEMBER DESCRIPTIONS

## PRIVATE MEMBER DESCRIPTIONS
