Spec-Zone.ru › GTK 3.24

GtkSwitch

GtkSwitch — Переключатель в стиле «выключатель света»

Функции

GtkWidget * gtk_switch_new ()
void gtk_switch_set_active ()
gboolean gtk_switch_get_active ()
void gtk_switch_set_state ()
gboolean gtk_switch_get_state ()

Свойства

gboolean active Чтение / Запись
gboolean state Чтение / Запись

Стилизованные свойства

int высота-ползунка Чтение
int ширина-ползунка Чтение

Сигналы

void активация Действие
gboolean установка-состояния Выполнить последним

Типы и значения

struct GtkSwitch
struct GtkSwitchClass

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

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkSwitch

Реализованные интерфейсы

GtkSwitch реализует AtkImplementorIface, GtkBuildable, GtkActionable и GtkActivatable.

Файлы заголовков

#include <gtk/gtk.h>

Описание

GtkSwitch — это виджет, имеющий два состояния: включено или выключено. Пользователь может управлять активным состоянием, щелкнув пустую область или перетащив ползунок.

GtkSwitch также может обрабатывать ситуации, когда состояние базового объекта изменяется с задержкой. Подробности см. в разделе сигнала «установка-состояния».

Узлы CSS

switch
╰── slider

GtkSwitch имеет два узла CSS: основной узел с именем switch и подразумеваемый узел с именем slider. Ни один из них не использует стилизованные классы.

Функции

gtk_switch_new ()

GtkWidget *
gtk_switch_new (void);

Создает новый виджет GtkSwitch.

Возвращает

новый созданный экземпляр GtkSwitch

С версии: 3.0

gtk_switch_set_active ()

void
gtk_switch_set_active (GtkSwitch *sw,
                       gboolean is_active);

Изменяет состояние sw на желаемое.

Параметры

sw

виджет GtkSwitch

is_active

TRUE , если sw должен быть активным, и FALSE в противном случае

С версии: 3.0

gtk_switch_get_active ()

gboolean
gtk_switch_get_active (GtkSwitch *sw);

Определяет, находится ли GtkSwitch в состоянии «включено» или «выключено».

Параметры

sw

виджет GtkSwitch

Возвращает

TRUE , если GtkSwitch активен, и FALSE в противном случае

С версии: 3.0

gtk_switch_set_state ()

void
gtk_switch_set_state (GtkSwitch *sw,
                      gboolean state);

Устанавливает базовое состояние GtkSwitch.

Обычно это то же самое, что и «active», если только переключатель не настроен на отложенные изменения состояния. Эта функция обычно вызывается из обработчика сигнала «установка-состояния».

См. «установка-состояния» для получения дополнительных сведений.

Параметры

sw

виджет GtkSwitch

state

новое состояние

С версии: 3.14

gtk_switch_get_state ()

gboolean
gtk_switch_get_state (GtkSwitch *sw);

Возвращает базовое состояние GtkSwitch.

Параметры

sw

виджет GtkSwitch

Возвращает

базовое состояние

С версии: 3.14

Типы и значения

struct GtkSwitch

struct GtkSwitch;

Структура GtkSwitch содержит закрытые данные, к которым следует обращаться только с помощью предоставленного API.

struct GtkSwitchClass

struct GtkSwitchClass {
  GtkWidgetClass parent_class;

  void (* activate) (GtkSwitch *sw);

  gboolean (* state_set) (GtkSwitch *sw, gboolean state);
};

Члены

activate ()

Сигнал действия. Его вызов приводит к анимации переключателя.

state_set ()

Обработчик класса для сигнала ::state-set.

Подробное описание свойств

Свойство “active”

  “active”                   gboolean

Определяет, находится ли виджет GtkSwitch в включенном или выключенном состоянии.

Владелец: GtkSwitch

Флаги: Чтение / Запись

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

Свойство “state”

  “state”                    gboolean

Состояние ядра, управляемое переключателем. Подробнее см. сигнал «state-set».

Владелец: GtkSwitch

Флаги: Чтение / Запись

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

С версии: 3.14

Подробное описание свойств стиля

Свойство стиля “slider-height”

  “slider-height”            int

Минимальная высота ручки виджета GtkSwitch в пикселях.

GtkSwitch:slider-height устарело с версии 3.20 и не должно использоваться в новых кодах.

Используйте свойство CSS min-height вместо него.

Владелец: GtkSwitch

Флаги: Чтение

Допустимые значения: >= 22

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

С версии: 3.18

Свойство стиля “slider-width”

  “slider-width”             int

Минимальная ширина ручки виджета GtkSwitch в пикселях.

GtkSwitch:slider-width устарело с версии 3.20 и не должно использоваться в новых кодах.

Используйте свойство CSS min-width вместо него.

Владелец: GtkSwitch

Флаги: Чтение

Допустимые значения: >= 36

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

Подробное описание сигналов

Сигнал “activate”

void
user_function (GtkSwitch *widget,
               gpointer   user_data)

Сигнал ::activate виджета GtkSwitch — это сигнал действия, его излучение вызывает анимацию переключателя. Приложениям не следует подключаться к этому сигналу, но необходимо использовать сигнал notify::active.

Параметры

widget

объект, получивший сигнал.

user_data

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

Флаги: Действие

Сигнал “state-set”

gboolean
user_function (GtkSwitch *widget,
               gboolean   state,
               gpointer   user_data)

Сигнал ::state-set виджета GtkSwitch излучается для изменения базового состояния. Он излучается при изменении пользователем положения переключателя. Обработчик по умолчанию поддерживает синхронизацию состояния с свойством «active».

Для реализации задержки изменения состояния приложения могут подключиться к этому сигналу, инициировать изменение базового состояния, и вызвать gtk_switch_set_state(), когда изменение базового состояния будет завершено. Обработчик сигнала должен вернуть TRUE чтобы предотвратить выполнение обработчика по умолчанию.

Визуально, базовое состояние представлено цветом канавки переключателя, в то время как свойство «active» представлено положением переключателя.

Параметры

widget

объект, на котором был излучен сигнал

state

новое состояние переключателя

user_data

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

Возвращаемое значение

TRUE для остановки излучения сигнала

Флаги: Последний вызов

С версии: 3.14

См. также

GtkToggleButton

© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkSwitch.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API