Top |
GObject ╰── GInitiallyUnowned ╰── GtkWidget ╰── GtkContainer ╰── GtkBin ╰── GtkMenuItem ╰── GtkCheckMenuItem ╰── GtkRadioMenuItem
GtkRadioMenuItem implements AtkImplementorIface, GtkBuildable, GtkActivatable and GtkActionable.
A radio menu item is a check menu item that belongs to a group. At each instant exactly one of the radio menu items from a group is selected.
The group list does not need to be freed, as each GtkRadioMenuItem will remove itself and its list item when it is destroyed.
The correct way to create a group of radio menu items is approximatively this:
1 2 3 4 5 6 7 8 9 10 11 |
GSList *group = NULL; GtkWidget *item; gint i; for (i = 0; i < 5; i++) { item = gtk_radio_menu_item_new_with_label (group, "This is an example"); group = gtk_radio_menu_item_get_group (GTK_RADIO_MENU_ITEM (item)); if (i == 1) gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (item), TRUE); } |
GtkWidget *
gtk_radio_menu_item_new (GSList *group
);
Creates a new GtkRadioMenuItem.
group |
the group to which the
radio menu item is to be attached, or |
[element-type GtkRadioMenuItem][allow-none] |
GtkWidget * gtk_radio_menu_item_new_with_label (GSList *group
,const gchar *label
);
Creates a new GtkRadioMenuItem whose child is a simple GtkLabel.
group |
group the radio menu item is inside, or |
[element-type GtkRadioMenuItem][allow-none] |
label |
the text for the label |
GtkWidget * gtk_radio_menu_item_new_with_mnemonic (GSList *group
,const gchar *label
);
Creates a new GtkRadioMenuItem containing a label. The label
will be created using gtk_label_new_with_mnemonic()
, so underscores
in label
indicate the mnemonic for the menu item.
group |
group the radio menu item is inside, or |
[element-type GtkRadioMenuItem][allow-none] |
label |
the text of the button, with an underscore in front of the mnemonic character |
GtkWidget *
gtk_radio_menu_item_new_from_widget (GtkRadioMenuItem *group
);
Creates a new GtkRadioMenuItem adding it to the same group as group
.
[constructor]
Since: 2.4
GtkWidget * gtk_radio_menu_item_new_with_label_from_widget (GtkRadioMenuItem *group
,const gchar *label
);
Creates a new GtkRadioMenuItem whose child is a simple GtkLabel.
The new GtkRadioMenuItem is added to the same group as group
.
[constructor]
group |
an existing GtkRadioMenuItem. |
[allow-none] |
label |
the text for the label. |
[allow-none] |
Since: 2.4
GtkWidget * gtk_radio_menu_item_new_with_mnemonic_from_widget (GtkRadioMenuItem *group
,const gchar *label
);
Creates a new GtkRadioMenuItem containing a label. The label will be
created using gtk_label_new_with_mnemonic()
, so underscores in label
indicate the mnemonic for the menu item.
The new GtkRadioMenuItem is added to the same group as group
.
[constructor]
group |
An existing GtkRadioMenuItem. |
[allow-none] |
label |
the text of the button, with an underscore in front of the mnemonic character. |
[allow-none] |
Since: 2.4
void gtk_radio_menu_item_set_group (GtkRadioMenuItem *radio_menu_item
,GSList *group
);
Sets the group of a radio menu item, or changes it.
radio_menu_item |
||
group |
the new group, or |
[element-type GtkRadioMenuItem][allow-none] |
GSList *
gtk_radio_menu_item_get_group (GtkRadioMenuItem *radio_menu_item
);
Returns the group to which the radio menu item belongs, as a GList of GtkRadioMenuItem. The list belongs to GTK+ and should not be freed.
void gtk_radio_menu_item_join_group (GtkRadioMenuItem *radio_menu_item
,GtkRadioMenuItem *group_source
);
Joins a GtkRadioMenuItem object to the group of another GtkRadioMenuItem object.
This function should be used by language bindings to avoid the memory
manangement of the opaque GSList of gtk_radio_menu_item_get_group()
and gtk_radio_menu_item_set_group()
.
A common way to set up a group of GtkRadioMenuItem instances is:
1 2 3 4 5 6 7 8 9 10 11 |
GtkRadioMenuItem *last_item = NULL; while ( ...more items to add... ) { GtkRadioMenuItem *radio_item; radio_item = gtk_radio_menu_item_new (...); gtk_radio_menu_item_join_group (radio_item, last_item); last_item = radio_item; } |
radio_menu_item |
||
group_source |
a GtkRadioMenuItem whose group we are
joining, or |
[allow-none] |
Since: 3.18
“group”
property“group” GtkRadioMenuItem *
The radio menu item whose group this widget belongs to.
Flags: Write
Since: 2.8
“group-changed”
signalvoid user_function (GtkRadioMenuItem *radiomenuitem, gpointer user_data)
Flags: Run First