gtk-0.11.0: Binding to the Gtk+ graphical user interface library.ContentsIndex
Graphics.UI.Gtk.Embedding.Plug
Portabilityportable (depends on GHC)
Stabilityprovisional
Maintainergtk2hs-users@lists.sourceforge.net
Contents
Detail
Class Hierarchy
Types
Constructors
Methods
Attributes
Signals
Description
Toplevel for embedding into other processes
Synopsis
data Plug
class WindowClass o => PlugClass o
castToPlug :: GObjectClass obj => obj -> Plug
gTypePlug :: GType
toPlug :: PlugClass o => o -> Plug
data NativeWindowId
plugNew :: Maybe NativeWindowId -> IO Plug
plugNewForDisplay :: Display -> Maybe NativeWindowId -> IO Plug
plugGetId :: PlugClass self => self -> IO NativeWindowId
plugGetEmbedded :: PlugClass self => self -> IO Bool
plugGetSocketWindow :: PlugClass self => self -> IO (Maybe DrawWindow)
plugAttrEmbedded :: PlugClass self => ReadAttr self Bool
plugAttrSocketWindow :: PlugClass self => ReadAttr self (Maybe DrawWindow)
plugEmbedded :: PlugClass self => Signal self (IO ())
Detail
Together with Socket, Plug 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 Socket widget and, passes the ID of that widgets window to the other process, which then creates a Plug with that window ID. Any widgets contained in the Plug then will appear inside the first applications window.
Class Hierarchy
 | GObject
 | +----Object
 | +----Widget
 | +----Container
 | +----Bin
 | +----Window
 | +----Plug
Types
data Plug
show/hide Instances
class WindowClass o => PlugClass o
show/hide Instances
castToPlug :: GObjectClass obj => obj -> Plug
gTypePlug :: GType
toPlug :: PlugClass o => o -> Plug
data NativeWindowId
The identifer of a window of the underlying windowing system.
show/hide Instances
Constructors
plugNew
:: Maybe NativeWindowIdsocketId - the window ID of the socket, or Nothing.
-> IO Plug

Creates a new plug widget inside the Socket identified by socketId. If socketId is Nothing, the plug is left "unplugged" and can later be plugged into a Socket by Graphics.UI.Gtk.Embedding.Socket.socketAddId.

If a NativeWindowId is supplied the foreign application window will immediatly appear in this Plug once it is shown. If Nothing is passed then a NativeWindowId can be extracted from this Plug using plugGetId and be passed to the application which is to be embedded.

plugNewForDisplay
:: Displaydisplay - the Display on which socketId is displayed
-> Maybe NativeWindowIdsocketId - the XID of the socket's window.
-> IO Plug

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

  • Available since Gtk+ version 2.2
Methods
plugGetId
:: PlugClass self
=> self
-> IO NativeWindowIdreturns the window ID for the plug
Gets the window ID of a Plug widget, which can then be used to embed this window inside another window, for instance with Graphics.UI.Gtk.Embedding.Socket.socketAddId.
plugGetEmbedded
:: PlugClass self
=> self
-> IO Boolreturns True if the plug is embedded in a socket

Determines whether the plug is embedded in a socket.

  • Available since Gtk+ version 2.14
plugGetSocketWindow
:: PlugClass self
=> self
-> IO (Maybe DrawWindow)returns the window of the socket

Retrieves the socket the plug is embedded in.

  • Available since Gtk+ version 2.14
Attributes
plugAttrEmbedded :: PlugClass self => ReadAttr self Bool

True if the plug is embedded in a socket.

Default value: False

  • Available since Gtk+ version 2.12
plugAttrSocketWindow :: PlugClass self => ReadAttr self (Maybe DrawWindow)

The window of the socket the plug is embedded in.

  • Available since Gtk+ version 2.14
Signals
plugEmbedded :: PlugClass self => Signal self (IO ())
Gets emitted when the plug becomes embedded in a socket and when the embedding ends.
Produced by Haddock version 2.4.2