Portability | portable (depends on GHC) |
---|---|
Stability | provisional |
Maintainer | gtk2hs-users@lists.sourceforge.net |
Safe Haskell | None |
Toplevel for embedding into other processes
- 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
Types
class WindowClass o => PlugClass o Source
castToPlug :: GObjectClass obj => obj -> PlugSource
data NativeWindowId Source
The identifer of a window of the underlying windowing system.
Constructors
:: Maybe NativeWindowId |
|
-> 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 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.
:: Display |
|
-> Maybe NativeWindowId |
|
-> IO Plug |
Create a new plug widget inside the Socket
identified by socket_id.
- Available since Gtk+ version 2.2
Methods
:: PlugClass self | |
=> self | |
-> IO NativeWindowId | returns 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
socketAddId
.
Determines whether the plug is embedded in a socket.
- Available since Gtk+ version 2.14
:: 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 BoolSource
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)Source
The window of the socket the plug is embedded in.
- Available since Gtk+ version 2.14
Signals
plugEmbedded :: PlugClass self => Signal self (IO ())Source
Gets emitted when the plug becomes embedded in a socket and when the embedding ends.