GtkPlug

GtkPlug — Toplevel for embedding into other processes.

Synopsis


#include <gtk/gtk.h>


struct      GtkPlug;
void        gtk_plug_construct              (GtkPlug *plug,
                                             GdkNativeWindow socket_id);
void        gtk_plug_construct_for_display  (GtkPlug *plug,
                                             GdkDisplay *display,
                                             GdkNativeWindow socket_id);
GtkWidget*  gtk_plug_new                    (GdkNativeWindow socket_id);
GtkWidget*  gtk_plug_new_for_display        (GdkDisplay *display,
                                             GdkNativeWindow socket_id);
GdkNativeWindow gtk_plug_get_id             (GtkPlug *plug);


Object Hierarchy


  GObject
   +----GtkObject
         +----GtkWidget
               +----GtkContainer
                     +----GtkBin
                           +----GtkWindow
                                 +----GtkPlug

Implemented Interfaces

GtkPlug implements AtkImplementorIface.

Signal Prototypes


"embedded"  void        user_function      (GtkPlug *plug,
                                            gpointer user_data);

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 widgets 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 applications window.

Details

struct GtkPlug

struct GtkPlug;


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.

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.

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().

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.

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().

plug : a GtkPlug.
Returns : the window ID for the plug

Signals

The "embedded" signal

void        user_function                  (GtkPlug *plug,
                                            gpointer user_data);

plug :the object which received the signal.
user_data :user data set when the signal handler was connected.

See Also

GtkSocket

the widget that a GtkPlug plugs into.