GtkRadioAction

GtkRadioAction — An action of which only one in a group can be active

Synopsis


#include <gtk/gtk.h>


                    GtkRadioAction;
GtkRadioAction*     gtk_radio_action_new                (const gchar *name,
                                                         const gchar *label,
                                                         const gchar *tooltip,
                                                         const gchar *stock_id,
                                                         gint value);
GSList*             gtk_radio_action_get_group          (GtkRadioAction *action);
void                gtk_radio_action_set_group          (GtkRadioAction *action,
                                                         GSList *group);
gint                gtk_radio_action_get_current_value  (GtkRadioAction *action);
void                gtk_radio_action_set_current_value  (GtkRadioAction *action,
                                                         gint current_value);


Description

A GtkRadioAction is similar to GtkRadioMenuItem. A number of radio actions can be linked together so that only one may be active at any one time.

Details

GtkRadioAction

typedef struct {
  GtkToggleAction parent;
} GtkRadioAction;

The GtkRadioAction struct contains only private members and should not be accessed directly.


gtk_radio_action_new ()

GtkRadioAction*     gtk_radio_action_new                (const gchar *name,
                                                         const gchar *label,
                                                         const gchar *tooltip,
                                                         const gchar *stock_id,
                                                         gint value);

Creates a new GtkRadioAction object. To add the action to a GtkActionGroup and set the accelerator for the action, call gtk_action_group_add_action_with_accel().

name :

A unique name for the action

label :

The label displayed in menu items and on buttons, or NULL

tooltip :

A tooltip for this action, or NULL

stock_id :

The stock icon to display in widgets representing this action, or NULL

value :

The value which gtk_radio_action_get_current_value() should return if this action is selected.

Returns :

a new GtkRadioAction

Since 2.4


gtk_radio_action_get_group ()

GSList*             gtk_radio_action_get_group          (GtkRadioAction *action);

Returns the list representing the radio group for this object. Note that the returned list is only valid until the next change to the group.

A common way to set up a group of radio group is the following:

  GSList *group = NULL;
  GtkRadioAction *action;
 
  while (/* more actions to add */)
    {
       action = gtk_radio_action_new (...);
       
       gtk_radio_action_set_group (action, group);
       group = gtk_radio_action_get_group (action);
    }

action :

the action object

Returns :

the list representing the radio group for this object

Since 2.4


gtk_radio_action_set_group ()

void                gtk_radio_action_set_group          (GtkRadioAction *action,
                                                         GSList *group);

Sets the radio group for the radio action object.

action :

the action object

group :

a list representing a radio group

Since 2.4


gtk_radio_action_get_current_value ()

gint                gtk_radio_action_get_current_value  (GtkRadioAction *action);

Obtains the value property of the currently active member of the group to which action belongs.

action :

a GtkRadioAction

Returns :

The value of the currently active group member

Since 2.4


gtk_radio_action_set_current_value ()

void                gtk_radio_action_set_current_value  (GtkRadioAction *action,
                                                         gint current_value);

Sets the currently active group member to the member with value property current_value.

action :

a GtkRadioAction

current_value :

the new value

Since 2.10