BonoboPlug
3
LIBBONOBOUI Library

# BonoboPlug

Toplevel for embedding into other processes.

## Synopsis

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

## Object Hierarchy

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

## Implemented Interfaces

BonoboPlug implements AtkImplementorIface and GtkBuildable.

## 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

### BonoboPlug

    typedef struct _BonoboPlug BonoboPlug;

### BonoboPlugPrivate

    typedef struct _BonoboPlugPrivate BonoboPlugPrivate;

### BonoboPlugClass

    typedef struct {
    	GtkPlugClass parent_class;

    	gpointer dummy[4];
    } BonoboPlugClass;

### 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.

## Property Details

### The `"event-forwarding"` property

      "event-forwarding"         gboolean              : Read / Write

Whether X events should be forwarded.

Default value: TRUE

## See Also

BonoboSocket, BonoboControlFrame.