Spec-Zone.ru › GTK 3.20

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 Чтение / Запись

Свойства стиля

gint slider-height Чтение
gint slider-width Чтение

Сигналы

void activate Действие
gboolean state-set Выполняется последним

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

struct GtkSwitch
struct GtkSwitchClass

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

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

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

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

Включения

#include <gtk/gtk.h>

Описание

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

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

Узлы 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

a GtkSwitch

is_active

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

С: 3.0

gtk_switch_get_active ()

gboolean
gtk_switch_get_active (GtkSwitch *sw);

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

Параметры

sw

a GtkSwitch

Возвращает

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

С: 3.0

gtk_switch_set_state ()

void
gtk_switch_set_state (GtkSwitch *sw,
                      gboolean state);

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

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

См. «state-set» для получения подробностей.

Параметры

sw

a GtkSwitch

state

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

С: 3.14

gtk_switch_get_state ()

gboolean
gtk_switch_get_state (GtkSwitch *sw);

Получает базовое состояние GtkSwitch.

Параметры

sw

a 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 (включено или выключено).

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

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

Свойство “state”

  “state”                    gboolean

Внутреннее состояние переключателя. Подробнее см. сигнал “state-set”.

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

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

С версии: 3.14

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

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

  “slider-height”            gint

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

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

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

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

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

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

С версии: 3.18

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

  “slider-width”             gint

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

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

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

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

Допустимые значения: >= 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 для остановки генерации сигнала

Флаги: Run Last

С версии: 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.20/GtkSwitch.html

Spec-Zone.ru

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