Gtk.Radio_Menu_Item

Entities

Tagged Types

Access Types

Constants

Subprograms

Generic Instantiations

Description

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 Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item 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:

## How to create a group of radio menu items.

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);
}

# CSS nodes

menuitem
├── radio.left
╰── <child>

GtkRadioMenuItem has a main CSS node with name menuitem, and a subnode with name radio, which gets the .left or .right style class.

"+"

function "+"
  (Widget : access Gtk_Radio_Menu_Item_Record'Class)
return Gtk.Actionable.Gtk_Actionable
Parameters
Widget
Return Value

"+"

function "+"
  (Widget : access Gtk_Radio_Menu_Item_Record'Class)
return Gtk.Activatable.Gtk_Activatable
Parameters
Widget
Return Value

"+"

function "+"
  (Widget : access Gtk_Radio_Menu_Item_Record'Class)
return Gtk.Buildable.Gtk_Buildable
Parameters
Widget
Return Value

"-"

function "-"
  (Interf : Gtk.Actionable.Gtk_Actionable)
return Gtk_Radio_Menu_Item
Parameters
Interf
Return Value

"-"

function "-"
  (Interf : Gtk.Activatable.Gtk_Activatable)
return Gtk_Radio_Menu_Item
Parameters
Interf
Return Value

"-"

function "-"
  (Interf : Gtk.Buildable.Gtk_Buildable)
return Gtk_Radio_Menu_Item
Parameters
Interf
Return Value

Cb_GObject_Void

type Cb_GObject_Void is not null access procedure
  (Self : access Glib.Object.GObject_Record'Class);
Parameters
Self

Cb_Gtk_Radio_Menu_Item_Void

type Cb_Gtk_Radio_Menu_Item_Void is not null access procedure
  (Self : access Gtk_Radio_Menu_Item_Record'Class);
Parameters
Self

Do_Set_Related_Action

procedure Do_Set_Related_Action
   (Self   : not null access Gtk_Radio_Menu_Item_Record;
    Action : not null access Gtk.Action.Gtk_Action_Record'Class)
Parameters
Self
Action

Get_Action_Name

function Get_Action_Name
   (Self : not null access Gtk_Radio_Menu_Item_Record) return UTF8_String
Parameters
Self
Return Value

Get_Action_Target_Value

function Get_Action_Target_Value
   (Self : not null access Gtk_Radio_Menu_Item_Record)
    return Glib.Variant.Gvariant
Parameters
Self
Return Value

Get_Group

function Get_Group
   (Radio_Menu_Item : not null access Gtk_Radio_Menu_Item_Record)
    return Gtk.Widget.Widget_SList.GSlist

Returns the group to which the radio menu item belongs, as a GList of Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item. The list belongs to GTK+ and should not be freed.

Parameters
Radio_Menu_Item
Return Value

Get_Related_Action

function Get_Related_Action
   (Self : not null access Gtk_Radio_Menu_Item_Record)
    return Gtk.Action.Gtk_Action
Parameters
Self
Return Value

Get_Type

function Get_Type return Glib.GType
Return Value

Get_Use_Action_Appearance

function Get_Use_Action_Appearance
   (Self : not null access Gtk_Radio_Menu_Item_Record) return Boolean
Parameters
Self
Return Value

Group_Property

Group_Property : constant Glib.Properties.Property_Object;

Type: Gtk_Radio_Menu_Item Flags: write The radio menu item whose group this widget belongs to.

Gtk_New

procedure Gtk_New
   (Radio_Menu_Item : out Gtk_Radio_Menu_Item;
    Group           : Gtk.Widget.Widget_SList.GSlist;
    Label           : UTF8_String := "")

Creates a new Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item whose child is a simple Gtk.Label.Gtk_Label. Initialize does nothing if the object was already created with another call to Initialize* or G_New.

Parameters
Radio_Menu_Item
Group

group the radio menu item is inside, or null

Label

the text for the label

Gtk_New_With_Mnemonic

procedure Gtk_New_With_Mnemonic
   (Radio_Menu_Item : out Gtk_Radio_Menu_Item;
    Group           : Gtk.Widget.Widget_SList.GSlist;
    Label           : UTF8_String)

Creates a new Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item containing a label. The label will be created using Gtk.Label.Gtk_New_With_Mnemonic, so underscores in Label indicate the mnemonic for the menu item. Initialize_With_Mnemonic does nothing if the object was already created with another call to Initialize* or G_New.

Parameters
Radio_Menu_Item
Group

group the radio menu item is inside, or null

Label

the text of the button, with an underscore in front of the mnemonic character

Gtk_Radio_Menu_Item

type Gtk_Radio_Menu_Item is access all Gtk_Radio_Menu_Item_Record'Class;

Gtk_Radio_Menu_Item_New_With_Label

function Gtk_Radio_Menu_Item_New_With_Label
   (Group : Gtk.Widget.Widget_SList.GSlist;
    Label : UTF8_String := "") return Gtk_Radio_Menu_Item

Creates a new Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item whose child is a simple Gtk.Label.Gtk_Label.

Parameters
Group

group the radio menu item is inside, or null

Label

the text for the label

Return Value

Gtk_Radio_Menu_Item_New_With_Mnemonic

function Gtk_Radio_Menu_Item_New_With_Mnemonic
   (Group : Gtk.Widget.Widget_SList.GSlist;
    Label : UTF8_String) return Gtk_Radio_Menu_Item

Creates a new Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item containing a label. The label will be created using Gtk.Label.Gtk_New_With_Mnemonic, so underscores in Label indicate the mnemonic for the menu item.

Parameters
Group

group the radio menu item is inside, or null

Label

the text of the button, with an underscore in front of the mnemonic character

Return Value

Gtk_Radio_Menu_Item_Record

type Gtk_Radio_Menu_Item_Record is new Gtk_Check_Menu_Item_Record with null record;

Implements_Gtk_Actionable

package Implements_Gtk_Actionable is new Glib.Types.Implements
  (Gtk.Actionable.Gtk_Actionable, Gtk_Radio_Menu_Item_Record, Gtk_Radio_Menu_Item);

Implements_Gtk_Activatable

package Implements_Gtk_Activatable is new Glib.Types.Implements
  (Gtk.Activatable.Gtk_Activatable, Gtk_Radio_Menu_Item_Record, Gtk_Radio_Menu_Item);

Implements_Gtk_Buildable

package Implements_Gtk_Buildable is new Glib.Types.Implements
  (Gtk.Buildable.Gtk_Buildable, Gtk_Radio_Menu_Item_Record, Gtk_Radio_Menu_Item);

Initialize

procedure Initialize
   (Radio_Menu_Item : not null access Gtk_Radio_Menu_Item_Record'Class;
    Group           : Gtk.Widget.Widget_SList.GSlist;
    Label           : UTF8_String := "")

Creates a new Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item whose child is a simple Gtk.Label.Gtk_Label. Initialize does nothing if the object was already created with another call to Initialize* or G_New.

Parameters
Radio_Menu_Item
Group

group the radio menu item is inside, or null

Label

the text for the label

Initialize_With_Mnemonic

procedure Initialize_With_Mnemonic
   (Radio_Menu_Item : not null access Gtk_Radio_Menu_Item_Record'Class;
    Group           : Gtk.Widget.Widget_SList.GSlist;
    Label           : UTF8_String)

Creates a new Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item containing a label. The label will be created using Gtk.Label.Gtk_New_With_Mnemonic, so underscores in Label indicate the mnemonic for the menu item. Initialize_With_Mnemonic does nothing if the object was already created with another call to Initialize* or G_New.

Parameters
Radio_Menu_Item
Group

group the radio menu item is inside, or null

Label

the text of the button, with an underscore in front of the mnemonic character

Join_Group

procedure Join_Group
   (Radio_Menu_Item : not null access Gtk_Radio_Menu_Item_Record;
    Group_Source    : access Gtk_Radio_Menu_Item_Record'Class)

Joins a Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item object to the group of another Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item 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 Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item instances is:

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;
  }

Since: gtk+ 3.18

Parameters
Radio_Menu_Item
Group_Source

a Gtk.Radio_Menu_Item.Gtk_Radio_Menu_Item whose group we are joining, or null to remove the Radio_Menu_Item from its current group

On_Group_Changed

procedure On_Group_Changed
   (Self  : not null access Gtk_Radio_Menu_Item_Record;
    Call  : Cb_GObject_Void;
    Slot  : not null access Glib.Object.GObject_Record'Class;
    After : Boolean := False)
Parameters
Self
Call
Slot
After

On_Group_Changed

procedure On_Group_Changed
   (Self  : not null access Gtk_Radio_Menu_Item_Record;
    Call  : Cb_Gtk_Radio_Menu_Item_Void;
    After : Boolean := False)
Parameters
Self
Call
After

Selected_Button

function Selected_Button (In_Group : Widget_SList.GSlist) return Natural

Return the button number of the selected button in the group. Note: This function is not part of Gtk+ itself, but is provided as a convenient function

Parameters
In_Group
Return Value

Set_Action_Name

procedure Set_Action_Name
   (Self        : not null access Gtk_Radio_Menu_Item_Record;
    Action_Name : UTF8_String := "")
Parameters
Self
Action_Name

Set_Action_Target_Value

procedure Set_Action_Target_Value
   (Self         : not null access Gtk_Radio_Menu_Item_Record;
    Target_Value : Glib.Variant.Gvariant)
Parameters
Self
Target_Value

Set_Detailed_Action_Name

procedure Set_Detailed_Action_Name
   (Self                 : not null access Gtk_Radio_Menu_Item_Record;
    Detailed_Action_Name : UTF8_String)
Parameters
Self
Detailed_Action_Name

Set_Group

procedure Set_Group
   (Radio_Menu_Item : not null access Gtk_Radio_Menu_Item_Record;
    Group           : Gtk.Widget.Widget_SList.GSlist)

Sets the group of a radio menu item, or changes it.

Parameters
Radio_Menu_Item
Group

the new group, or null.

Set_Related_Action

procedure Set_Related_Action
   (Self   : not null access Gtk_Radio_Menu_Item_Record;
    Action : not null access Gtk.Action.Gtk_Action_Record'Class)
Parameters
Self
Action

Set_Use_Action_Appearance

procedure Set_Use_Action_Appearance
   (Self           : not null access Gtk_Radio_Menu_Item_Record;
    Use_Appearance : Boolean)
Parameters
Self
Use_Appearance

Signal_Group_Changed

Signal_Group_Changed : constant Glib.Signal_Name := "group-changed";

Sync_Action_Properties

procedure Sync_Action_Properties
   (Self   : not null access Gtk_Radio_Menu_Item_Record;
    Action : access Gtk.Action.Gtk_Action_Record'Class)
Parameters
Self
Action