Spec-Zone.ru › GTK 3.22

GtkPopoverMenu

GtkPopoverMenu — Поповеры для использования в качестве меню

Функции

GtkWidget * gtk_popover_menu_new ()
void gtk_popover_menu_open_submenu ()

Свойства

gchar * visible-submenu Чтение/Запись

Свойства дочерних элементов

gint position Чтение/Запись
gchar * submenu Чтение/Запись

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

GtkPopoverMenu

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

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkBin
                    ╰── GtkPopover
                        ╰── GtkPopoverMenu

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

GtkPopoverMenu реализует AtkImplementorIface и GtkBuildable.

Файлы

#include <gtk/gtk.h>

Описание

GtkPopoverMenu — подкласс GtkPopover, который обрабатывает свои дочерние элементы как меню и позволяет переключаться между ними. Он предназначен в основном для совместного использования с GtkModelButton, но может использоваться с любым виджетом, например, GtkSpinButton или GtkScale. В этом отношении GtkPopoverMenu более гибкий, чем поповеры, созданные из GMenuModel с помощью gtk_popover_new_from_model().

Чтобы добавить дочерний элемент в качестве подменю, установите свойство “submenu” дочернего элемента со значением имени подменю. Чтобы пользователь мог открыть это подменю, добавьте GtkModelButton, у которого свойство “menu-name” установлено в значение, заданное подменю.

По соглашению, первый дочерний элемент подменю должен быть GtkModelButton для возвращения в родительское меню. Такая кнопка должна использовать свойства “inverted” и “centered” для достижения внешнего вида, похожего на заголовок, и размещения индикатора подменю на противоположной стороне. Для возвращения в главное меню используйте "main" в качестве имени меню.

Пример

<object class="GtkPopoverMenu">
  <child>
    <object class="GtkBox">
      <property name="visible">True</property>
      <property name="margin">10</property>
      <child>
        <object class="GtkModelButton">
          <property name="visible">True</property>
          <property name="action-name">win.frob</property>
          <property name="text" translatable="yes">Frob</property>
        </object>
      </child>
      <child>
        <object class="GtkModelButton">
          <property name="visible">True</property>
          <property name="menu-name">more</property>
          <property name="text" translatable="yes">More</property>
        </object>
      </child>
    </object>
  </child>
  <child>
    <object class="GtkBox">
      <property name="visible">True</property>
      <property name="margin">10</property>
      <child>
        <object class="GtkModelButton">
          <property name="visible">True</property>
          <property name="action-name">win.foo</property>
          <property name="text" translatable="yes">Foo</property>
        </object>
      </child>
      <child>
        <object class="GtkModelButton">
          <property name="visible">True</property>
          <property name="action-name">win.bar</property>
          <property name="text" translatable="yes">Bar</property>
        </object>
      </child>
    </object>
    <packing>
      <property name="submenu">more</property>
    </packing>
  </child>
</object>

Как и обычные поповеры, созданные с помощью gtk_popover_new_from_model, экземпляры GtkPopoverMenu имеют единственный узел CSS с именем "popover" и получают класс стиля .menu.

Функции

gtk_popover_menu_new ()

GtkWidget *
gtk_popover_menu_new (void);

Создаёт новое меню-поповер.

Возвращает

новое GtkPopoverMenu

С момента: 3.16

gtk_popover_menu_open_submenu ()

void
gtk_popover_menu_open_submenu (GtkPopoverMenu *popover,
                               const gchar *name);

Открывает подменю popover. name должно быть одним из имён подменю popover, заданных свойством “submenu”, или "main" для переключения на главное меню.

GtkModelButton автоматически открывает подменю, когда свойство “menu-name” установлено, поэтому эта функция нужна только в случае использования других виджетов для инициализации изменений меню.

Параметры

popover

a GtkPopoverMenu

name

имя меню для переключения

С момента: 3.16

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

GtkPopoverMenu

typedef struct _GtkPopoverMenu GtkPopoverMenu;

Подробности свойств

Свойство “visible-submenu”

  “visible-submenu”          gchar *

Имя видимого подменю.

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

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

Подробности свойств дочерних элементов

Свойство “position” дочернего элемента

  “position”                 gint

Индекс дочернего элемента в родителе.

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

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

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

Свойство “submenu” дочернего элемента

  “submenu”                  gchar *

Свойство дочернего элемента подменю указывает имя подменю. Если оно равно NULL или "main", дочерний элемент используется как главное меню, которое отображается изначально при отображении поповера.

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

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

С момента: 3.16

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

Spec-Zone.ru

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