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 | Только для чтения |
Сигналы
Типы и значения
| 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 | объект 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 | объект GtkPlug. | |
display | GdkDisplay, ассоциированный с 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 с идентификатором socket_id.
Параметры
display | GdkDisplay, на котором отображается | |
socket_id | XID окна сокета. |
Возвращаемое значение
Новый виджет GtkPlug.
С: 2.2
gtk_plug_get_id ()
Window
gtk_plug_get_id (GtkPlug *plug); Получает идентификатор окна виджета GtkPlug, который можно использовать для встраивания этого окна в другое окно, например, с помощью gtk_socket_add_id().
Параметры
plug | объект GtkPlug. |
Возвращаемое значение
Идентификатор окна для plug.
Типы и значения
struct GtkPlug
struct GtkPlug;
Подробное описание свойств
Свойство “embedded”
“embedded” gboolean
TRUE, если plug вставлен в сокет.
Флаги: Чтение
Значение по умолчанию: FALSE
С: 2.12
Свойство “socket-window”
“socket-window” GdkWindow *
Окно сокета, в который вставлен plug.
Флаги: Чтение
С: 2.14
Подробное описание сигналов
См. также
© 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/GtkPlug.html