Spec-Zone.ru › GTK 3.24

GtkNativeDialog

GtkNativeDialog — Интеграция с нативными диалогами

Функции

void gtk_native_dialog_show ()
void gtk_native_dialog_hide ()
void gtk_native_dialog_destroy ()
gboolean gtk_native_dialog_get_visible ()
void gtk_native_dialog_set_modal ()
gboolean gtk_native_dialog_get_modal ()
void gtk_native_dialog_set_title ()
const char * gtk_native_dialog_get_title ()
void gtk_native_dialog_set_transient_for ()
GtkWindow * gtk_native_dialog_get_transient_for ()
gint gtk_native_dialog_run ()

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

#define GTK_TYPE_NATIVE_DIALOG
struct GtkNativeDialogClass

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

#include <gtk/gtk.h>

Описание

Нативные диалоги — это диалоги платформы, которые не используют GtkDialog или GtkWindow. Они используются для лучшей интеграции с платформой, выглядя так же, как и другие нативные приложения, и поддерживая платформенно-специфичные функции.

Функции GtkDialog не могут использоваться с такими объектами, но нам нужен похожий API для их управления. Объект GtkNativeDialog — это API, который позволяет это сделать. Он позволяет устанавливать различные общие свойства диалога, а также отображать и скрывать его, и получать сигнал “response”, когда пользователь завершает работу с диалогом.

Также есть вспомогательная функция gtk_native_dialog_run(), которая упрощает запуск любого нативного диалога в модальном режиме с рекурсивным циклом обработки событий, аналогично gtk_dialog_run().

Функции

gtk_native_dialog_show ()

void
gtk_native_dialog_show (GtkNativeDialog *self);

Отображает диалоговое окно на экране, позволяя пользователю взаимодействовать с ним. Когда пользователь принимает состояние диалогового окна, оно будет автоматически скрыто, и будет выпущен сигнал “response”.

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

Параметры

self

объект GtkNativeDialog

С версии: 3.20

gtk_native_dialog_hide ()

void
gtk_native_dialog_hide (GtkNativeDialog *self);

Скрывает диалоговое окно, если оно отображено, прерывая любое взаимодействие. После этого вызова сигнал “response” не будет выпущен до следующего вызова gtk_native_dialog_show().

Если диалоговое окно не отображено, ничего не происходит.

Параметры

self

объект GtkNativeDialog

С версии: 3.20

gtk_native_dialog_destroy ()

void
gtk_native_dialog_destroy (GtkNativeDialog *self);

Удаляет диалоговое окно.

При уничтожении диалогового окна, оно прерывает все ссылки на другие объекты. Если оно отображено, оно будет скрыто, а все соответствующие системные ресурсы будут уничтожены.

Обратите внимание, что это не освобождает ссылку на объект (в отличие от уничтожения GtkWindow), потому что система окон не ссылается на GtkNativeDialog.

Параметры

self

объект GtkNativeDialog

С версии: 3.20

gtk_native_dialog_get_visible ()

gboolean
gtk_native_dialog_get_visible (GtkNativeDialog *self);

Определяет, отображено ли диалоговое окно.

Параметры

self

объект GtkNativeDialog

Возвращает

TRUE если диалоговое окно отображено

С версии: 3.20

gtk_native_dialog_set_modal ()

void
gtk_native_dialog_set_modal (GtkNativeDialog *self,
                             gboolean modal);

Устанавливает диалоговое окно как модальное или немодальное. Модальные диалоговые окна предотвращают взаимодействие с другими окнами в том же приложении. Чтобы модальные диалоговые окна оставались поверх основных окон приложения, используйте gtk_native_dialog_set_transient_for(), чтобы сделать диалоговое окно дочерним для родительского; большинство менеджеров окон тогда не позволят расположить диалоговое окно ниже родительского.

Параметры

self

объект GtkNativeDialog

modal

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

С версии: 3.20

gtk_native_dialog_get_modal ()

gboolean
gtk_native_dialog_get_modal (GtkNativeDialog *self);

Возвращает, является ли диалоговое окно модальным. См. gtk_native_dialog_set_modal().

Параметры

self

объект GtkNativeDialog

Возвращает

TRUE если диалоговое окно настроено как модальное

С версии: 3.20

gtk_native_dialog_set_title ()

void
gtk_native_dialog_set_title (GtkNativeDialog *self,
                             const char *title);

Устанавливает заголовок диалогового окна GtkNativeDialog.

Параметры

self

объект GtkNativeDialog

title

заголовок диалогового окна

С версии: 3.20

gtk_native_dialog_get_title ()

const char *
gtk_native_dialog_get_title (GtkNativeDialog *self);

Получает заголовок диалогового окна GtkNativeDialog.

Параметры

self

объект GtkNativeDialog

Возвращает

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

[nullable]

С версии: 3.20

gtk_native_dialog_set_transient_for ()

void
gtk_native_dialog_set_transient_for (GtkNativeDialog *self,
                                     GtkWindow *parent);

Диалоговые окна должны быть установлены как дочерние окна для основного окна приложения, из которого они были созданы. Это позволяет менеджерам окон, например, держать диалоговое окно поверх основного окна или центрировать диалоговое окно по отношению к главному окну.

Передача NULL для parent отменяет текущее дочернее окно.

Параметры

self

объект GtkNativeDialog

parent

родительское окно, или NULL.

[allow-none]

С версии: 3.20

gtk_native_dialog_get_transient_for ()

GtkWindow *
gtk_native_dialog_get_transient_for (GtkNativeDialog *self);

Получает дочернее родительское окно для этого окна. См. gtk_native_dialog_set_transient_for().

Параметры

self

объект GtkNativeDialog

Возвращает

родительское окно, или NULL если дочернее родительское окно не задано.

[nullable][transfer none]

С версии: 3.20

gtk_native_dialog_run ()

gint
gtk_native_dialog_run (GtkNativeDialog *self);

Блокирует выполнение в рекурсивном основном цикле до тех пор, пока self не выпустит сигнал “response”. Затем возвращает идентификатор ответа из сигнала ::response.

Перед входом в рекурсивный основной цикл, gtk_native_dialog_run() вызывает gtk_native_dialog_show() для диалогового окна.

После возвращения из gtk_native_dialog_run(), диалоговое окно будет скрыто.

Типичное использование этой функции:

gint result = gtk_native_dialog_run (GTK_NATIVE_DIALOG (dialog));
switch (result)
  {
    case GTK_RESPONSE_ACCEPT:
       do_application_specific_something ();
       break;
    default:
       do_nothing_since_dialog_was_cancelled ();
       break;
  }
g_object_unref (dialog);

Обратите внимание, что, хотя рекурсивный основной цикл имитирует модальное диалоговое окно (он препятствует взаимодействию пользователя с другими окнами в той же группе окон, пока диалоговое окно открыто), обратные вызовы, такие как таймауты, наблюдения за каналами ввода-вывода, операции перетаскивания и т. д., будут вызваны во время выполнения gtk_nautilus_dialog_run().

Параметры

self

a GtkNativeDialog

Возвращает

идентификатор ответа

С момента: 3.20

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

GTK_TYPE_NATIVE_DIALOG

#define GTK_TYPE_NATIVE_DIALOG             (gtk_native_dialog_get_type ())

struct GtkNativeDialogClass

struct GtkNativeDialogClass {
  GObjectClass parent_class;

  void (* response) (GtkNativeDialog *self, gint response_id);
};

См. также

GtkFileChooserNative, GtkDialog

© 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/gtk3-GtkNativeDialog.html

Spec-Zone.ru

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