Prev

Up

Home

GTK+ Reference Manual

Next

Top  |  Description  |  Object Hierarchy  |  Properties  |  Signals

GtkRadioAction

GtkRadioAction Единственно активное действие из группы подобных

Краткое описание

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

Иерархия объектов

GObject +----GtkAction +----GtkToggleAction +----GtkRadioAction

Свойства

"current-value" gint : Read / Write "group" GtkRadioAction : Write "value" gint : Read / Write

Сигналы

"changed" void user_function (GtkRadioAction *action, GtkRadioAction *current, gpointer user_data) : Run first / No recursion

Описание

GtkRadioAction похож на GtkRadioMenuItem. Несколько действий соединено в группу так, чтобы только одно из них могло быть активно в определенный момент времени.

Детали

GtkRadioAction

typedef struct _GtkRadioAction GtkRadioAction;

GtkRadioAction структура содержит только закрытые данные к которым нет непосредственного доступа.


gtk_radio_action_new ()

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

Создаёт новый объект GtkRadioAction. Для добавления действия к GtkActionGroup и установки акселератора, вызовите gtk_action_group_add_action_with_accel().

name :

Уникальное имя для действия

label :

Ярлык отображаемый в пунктах меню и кнопках

tooltip :

Подсказка для действия

stock_id :

Заготовленный значок отображаемый в виджетах представляющих действие

value :

Значение возвращаемое gtk_radio_action_get_current_value() если действие выбрано.

Возвращает:

новый GtkRadioAction

Начиная с версии 2.4


gtk_radio_action_get_group ()

GSList*     gtk_radio_action_get_group      (GtkRadioAction *action);

Возвращает список который представляет радио-группу для данного объекта. Помните, возвращаемый список допустим только до следующего изменения группы.

Обычный способ установки группы для радио-группы следующий:

GSList *group = NULL; GtkRadioAction *action; while (/* количество действий для добавления */) { action = gtk_radio_action_new (...); gtk_radio_action_set_group (action, group); group = gtk_radio_action_get_group (action); }

action :

Объект действия

Возвращает:

Список представляющий радио-группу для этого объекта

Начиная с версии 2.4


gtk_radio_action_set_group ()

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

Устанавливает радио-группу для объекта радио-действия.

action :

Объект действия

group :

Список представляющий радио-группу

Начиная с версии 2.4


gtk_radio_action_get_current_value ()

gint gtk_radio_action_get_current_value (GtkRadioAction *action);

Определяет значение свойства текущемго активного объекта в группе к которому принадлежит action.

action :

GtkRadioAction

Возвращает:

Значение текущемго активного члена группы

Начиная с версии 2.4


gtk_radio_action_set_current_value ()

void gtk_radio_action_set_current_value (GtkRadioAction *action, gint current_value);

Устанавливает текущий активный член группы в значение свойства current_value.

action :

GtkRadioAction

current_value :

Новое значение

Начиная с версии 2.10

Детали свойств

Свойство "current-value"

  "current-value"        gint                  : Read / Write

Значение свойства текущемго активного члена группы к которой принадлежит определенное действие.

Значение по умолчанию: 0

Начиная с версии 2.10


Свойство "group"

  "group"                GtkRadioAction        : Write

Устанавливает новую группу для радио-действия.

Начиная с версии 2.4


Свойство "value"

  "value"                gint                  : Read / Write

Значение произвольного целочисленного которое может использоваться как удобный способ определения какое действие в группе в текущий момент активно обработчиком сигналов ::activate или ::changed. Смотрите gtk_radio_action_get_current_value() и GtkRadioActionEntry как удобный способ получения и установки этого свойства.

Значение по умолчанию: 0

Начиная с версии 2.4

Детали сигналов

Сигнал "changed"

void user_function (GtkRadioAction *action, GtkRadioAction *current, gpointer user_data) : Run first / No recursion

Сигнал ::changed издаётся на каждом члене группы когда активный член радио-группы изменяется. Сигнал издаётся после ::activate сигналов для предыдущих и текущих активных членов группы.

action :

Действие на котором издаётся сигнал

current :

Член группы actions который активирован

user_data :

Пользовательские данные устанавливаемые при подключении обработчика сигнала.

Начиная с версии 2.4