Spec-Zone.ru › GTK 3.20

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.20/GtkPopoverMenu.html

Spec-Zone.ru

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