Spec-Zone.ru › GTK 3.24

GtkPlug

GtkPlug — Окно верхнего уровня для встраивания в другие процессы

Функции

void gtk_plug_construct ()
void gtk_plug_construct_for_display ()
GtkWidget * gtk_plug_new ()
GtkWidget * gtk_plug_new_for_display ()
Window gtk_plug_get_id ()
gboolean gtk_plug_get_embedded ()
GdkWindow * gtk_plug_get_socket_window ()

Свойства

gboolean embedded Чтение
GdkWindow * socket-window Чтение

Сигналы

void embedded Выполняется последним

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

struct GtkPlug

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

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkContainer
                ╰── GtkBin
                    ╰── GtkWindow
                        ╰── GtkPlug

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

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

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

#include <gtk/gtkx.h>

Описание

Вместе с GtkSocket, GtkPlug предоставляет возможность встраивать виджеты из одного процесса в другой процесс прозрачно для пользователя. Один процесс создаёт GtkSocket виджет и передаёт идентификатор окна этого виджета другому процессу, который затем создаёт GtkPlug с этим идентификатором окна. Любые виджеты, содержащиеся в GtkPlug, затем отобразятся внутри окна первого приложения.

Обмен данными между GtkSocket и GtkPlug происходит по протоколу XEmbed. Этот протокол также реализован в других наборах инструментов, например, Qt, что позволяет достичь такой же интеграции при встраивании виджета Qt в GTK+ или наоборот.

Виджеты GtkPlug и GtkSocket доступны только при компиляции GTK+ для платформы X11 и когда определён GDK_WINDOWING_X11. Они могут использоваться только с GdkX11Display. Для использования GtkPlug и GtkSocket, необходимо включить заголовок gtk/gtkx.h.

Функции

gtk_plug_construct ()

void
gtk_plug_construct (GtkPlug *plug,
                    Window socket_id);

Завершить инициализацию plug для заданного GtkSocket, идентифицированного по socket_id . Данная функция обычно используется только классами, производными от GtkPlug.

Параметры

plug

a GtkPlug.

socket_id

Идентификатор окна сокета (XID).

gtk_plug_construct_for_display ()

void
gtk_plug_construct_for_display (GtkPlug *plug,
                                GdkDisplay *display,
                                Window socket_id);

Завершить инициализацию plug для заданного GtkSocket, идентифицированного по socket_id, который в данный момент отображается на display . Данная функция обычно используется только классами, производными от GtkPlug.

Параметры

plug

a GtkPlug.

display

экземпляр GdkDisplay, связанный с socket_id ’s GtkSocket.

socket_id

Идентификатор окна сокета (XID).

С: 2.2

gtk_plug_new ()

GtkWidget *
gtk_plug_new (Window socket_id);

Создаёт новый виджет plug внутри GtkSocket, идентифицированный по socket_id . Если socket_id равно 0, plug остается «отключённым» и может быть подключён к GtkSocket позже с помощью gtk_socket_add_id().

Параметры

socket_id

Идентификатор окна сокета, или 0.

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

новый виджет GtkPlug.

gtk_plug_new_for_display ()

GtkWidget *
gtk_plug_new_for_display (GdkDisplay *display,
                          Window socket_id);

Создаёт новый виджет plug внутри GtkSocket с заданным идентификатором сокета.

Параметры

display

экземпляр GdkDisplay, на котором отображается socket_id

socket_id

Идентификатор окна сокета (XID).

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

новый виджет GtkPlug.

С: 2.2

gtk_plug_get_id ()

Window
gtk_plug_get_id (GtkPlug *plug);

Получает идентификатор окна виджета GtkPlug, который может быть использован для встраивания этого окна в другое окно, например, с помощью gtk_socket_add_id().

Параметры

plug

a GtkPlug.

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

идентификатор окна для plug

gtk_plug_get_embedded ()

gboolean
gtk_plug_get_embedded (GtkPlug *plug);

Определяет, встроен ли plug в сокет.

Параметры

plug

a GtkPlug

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

TRUE если plug встроен в сокет

С: 2.14

gtk_plug_get_socket_window ()

GdkWindow *
gtk_plug_get_socket_window (GtkPlug *plug);

Возвращает сокет, в который встроен plug.

Параметры

plug

a GtkPlug

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

окно сокета, или NULL.

[nullable][transfer none]

С: 2.14

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

struct GtkPlug

struct GtkPlug;

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

Свойство “embedded”

  “embedded”                 gboolean

TRUE если plug встроен в сокет.

Владелец: GtkPlug

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

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

С: 2.12

Свойство “socket-window”

  “socket-window”            GdkWindow *

Окно сокета, в который встроен plug.

Владелец: GtkPlug

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

С: 2.14

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

Сигнал “embedded”

void
user_function (GtkPlug *plug,
               gpointer user_data)

Вызывается, когда plug становится встроенным в сокет.

Параметры

plug

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

user_data

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

Флаги: Вызывается последним

См. также

GtkSocket

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

Spec-Zone.ru

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