## BonoboPlug

BonoboPlug — Toplevel for embedding into other processes.

## Synopsis

    struct      BonoboPlug;
    struct      BonoboPlugPrivate;
    struct      BonoboPlugClass;
    void        bonobo_plug_construct           (BonoboPlug *plug,
                                                 guint32 socket_id);
    GtkWidget*  bonobo_plug_new                 (guint32 socket_id);

## Object Hierarchy

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

## Implemented Interfaces

BonoboPlug implements AtkImplementorIface.

## Properties

      "event-forwarding"     gboolean             : Read / Write

## Description

This is an internal support routine of the X code in Bonobo.

Together with BonoboSocket, BonoboPlug 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 BonoboSocket widget and, passes the XID of that widgets window to the other process, which then creates a BonoboPlug window with that XID. Any widgets contained in the BonoboPlug then will appear inside the first applications window.

This code is a modified copy of GtkPlug, it is included in bonobo since this forked version could be effectively bug fixed, and integrated with the BonoboControl / BonoboControlframe CORBA pipe, to ensure synchronization between the X and CORBA transports.

## Details

### struct BonoboPlug

    struct BonoboPlug;

### struct BonoboPlugPrivate

    struct BonoboPlugPrivate;

### struct BonoboPlugClass

    struct BonoboPlugClass {

    	GtkPlugClass parent_class;

    	gpointer dummy[4];
    };

### bonobo_plug_construct ()

    void        bonobo_plug_construct           (BonoboPlug *plug,
                                                 guint32 socket_id);

Finish the creation of a BonoboPlug widget. This function will generally only be used by classes deriving from BonoboPlug.

`plug` : | The BonoboPlug.
`socket_id` : | the XID of the socket's window.

### bonobo_plug_new ()

    GtkWidget*  bonobo_plug_new                 (guint32 socket_id);

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

`socket_id` : | the XID of the socket's window.
Returns : | the new BonoboPlug widget.

## Properties

"`event-forwarding`" (gboolean : Read / Write) | Whether X events should be forwarded.

## See Also

BonoboSocket, BonoboControlFrame.