GtkPlug

GtkPlug — Toplevel for embedding into other processes

Functions

Properties

Signals

void embedded Run Last

Types and Values

struct GtkPlug

Object Hierarchy

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

Implemented Interfaces

GtkPlug implements AtkImplementorIface and GtkBuildable.

Includes

#include <gtk/gtk.h>

Description

Together with GtkSocket, GtkPlug provides the ability to embed widgets from one process into another process in a fashion that is transparent to the user. One process creates a GtkSocket widget and passes the ID of that widget's window to the other process, which then creates a GtkPlug with that window ID. Any widgets contained in the GtkPlug then will appear inside the first application's window.

The GtkPlug and GtkSocket widgets are currently not available on all platforms supported by GTK+.

Functions

gtk_plug_construct ()

void
gtk_plug_construct (GtkPlug *plug,
                    GdkNativeWindow socket_id);

Finish the initialization of plug for a given GtkSocket identified by socket_id . This function will generally only be used by classes deriving from GtkPlug.

Parameters

plug

a GtkPlug.

 

socket_id

the XID of the socket's window.

 

gtk_plug_construct_for_display ()

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

Finish the initialization of plug for a given GtkSocket identified by socket_id which is currently displayed on display . This function will generally only be used by classes deriving from GtkPlug.

Parameters

plug

a GtkPlug.

 

display

the GdkDisplay associated with socket_id 's GtkSocket.

 

socket_id

the XID of the socket's window.

 

Since 2.2


gtk_plug_new ()

GtkWidget *
gtk_plug_new (GdkNativeWindow socket_id);

Creates a new plug widget inside the GtkSocket identified by socket_id . If socket_id is 0, the plug is left "unplugged" and can later be plugged into a GtkSocket by gtk_socket_add_id().

Parameters

socket_id

the window ID of the socket, or 0.

 

Returns

the new GtkPlug widget.


gtk_plug_new_for_display ()

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

Create a new plug widget inside the GtkSocket identified by socket_id.

Parameters

display

the GdkDisplay on which socket_id is displayed

 

socket_id

the XID of the socket's window.

 

Returns

the new GtkPlug widget.

Since 2.2


gtk_plug_get_id ()

GdkNativeWindow
gtk_plug_get_id (GtkPlug *plug);

Gets the window ID of a GtkPlug widget, which can then be used to embed this window inside another window, for instance with gtk_socket_add_id().

Parameters

plug

a GtkPlug.

 

Returns

the window ID for the plug


gtk_plug_get_embedded ()

gboolean
gtk_plug_get_embedded (GtkPlug *plug);

Determines whether the plug is embedded in a socket.

Parameters

plug

a GtkPlug

 

Returns

TRUE if the plug is embedded in a socket

Since 2.14


gtk_plug_get_socket_window ()

GdkWindow *
gtk_plug_get_socket_window (GtkPlug *plug);

Retrieves the socket the plug is embedded in.

Parameters

plug

a GtkPlug

 

Returns

the window of the socket, or NULL.

[transfer none]

Since 2.14

Types and Values

struct GtkPlug

struct GtkPlug;

Property Details

The “embedded” property

  “embedded”                 gboolean

TRUE if the plug is embedded in a socket.

Flags: Read

Default value: FALSE

Since 2.12


The “socket-window” property

  “socket-window”            GdkWindow *

The window of the socket the plug is embedded in.

Flags: Read

Since 2.14

Signal Details

The “embedded” signal

void
user_function (GtkPlug *plug,
               gpointer user_data)

Gets emitted when the plug becomes embedded in a socket.

Parameters

plug

the object on which the signal was emitted

 

user_data

user data set when the signal handler was connected.

 

Flags: Run Last

See Also

GtkSocket