Portability | portable (depends on GHC) |
---|---|
Stability | provisional |
Maintainer | gtk2hs-users@lists.sourceforge.net |
Safe Haskell | None |
Report messages of minor importance to the user
- data Statusbar
- class HBoxClass o => StatusbarClass o
- castToStatusbar :: GObjectClass obj => obj -> Statusbar
- gTypeStatusbar :: GType
- toStatusbar :: StatusbarClass o => o -> Statusbar
- type ContextId = CUInt
- data MessageId
- statusbarNew :: IO Statusbar
- statusbarGetContextId :: StatusbarClass self => self -> String -> IO ContextId
- statusbarPush :: StatusbarClass self => self -> ContextId -> String -> IO MessageId
- statusbarPop :: StatusbarClass self => self -> ContextId -> IO ()
- statusbarRemove :: StatusbarClass self => self -> ContextId -> MessageId -> IO ()
- statusbarSetHasResizeGrip :: StatusbarClass self => self -> Bool -> IO ()
- statusbarGetHasResizeGrip :: StatusbarClass self => self -> IO Bool
- statusbarGetMessageArea :: StatusbarClass self => self -> IO Box
- statusbarRemoveAll :: StatusbarClass self => self -> Int -> IO ()
- statusbarHasResizeGrip :: StatusbarClass self => Attr self Bool
- textPopped :: StatusbarClass self => Signal self (ContextId -> String -> IO ())
- textPushed :: StatusbarClass self => Signal self (ContextId -> String -> IO ())
- onTextPopped :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)
- afterTextPopped :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)
- onTextPushed :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)
- afterTextPushed :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)
Detail
A Statusbar
is usually placed along the bottom of an application's main
Window
. It may provide a regular commentary of the application's status
(as is usually the case in a web browser, for example), or may be used to
simply output a message when the status changes, (when an upload is complete
in an FTP client, for example). It may also have a resize grip (a triangular
area in the lower right corner) which can be clicked on to resize the window
containing the statusbar.
Status bars in Gtk+ maintain a stack of messages. The message at the top of the each bar's stack is the one that will currently be displayed.
Any messages added to a statusbar's stack must specify a context_id
that is used to uniquely identify the source of a message. This context_id
can be generated by statusbarGetContextId
, given a message and the
statusbar that it will be added to. Note that messages are stored in a
stack, and when choosing which message to display, the stack structure is
adhered to, regardless of the context identifier of a message.
Status bars are created using statusbarNew
.
Messages are added to the bar's stack with statusbarPush
.
The message at the top of the stack can be removed using statusbarPop
.
A message can be removed from anywhere in the stack if its message_id was
recorded at the time it was added. This is done using statusbarRemove
.
Class Hierarchy
Types
class HBoxClass o => StatusbarClass o Source
castToStatusbar :: GObjectClass obj => obj -> StatusbarSource
toStatusbar :: StatusbarClass o => o -> StatusbarSource
Constructors
statusbarNew :: IO StatusbarSource
Creates a new Statusbar
ready for messages.
Methods
:: StatusbarClass self | |
=> self | |
-> String |
|
-> IO ContextId | returns an id that can be used to later remove entries ^ from the Statusbar. |
Returns a new context identifier, given a description of the actual context. This id can be used to later remove entries form the Statusbar.
:: StatusbarClass self | |
=> self | |
-> ContextId |
|
-> String |
|
-> IO MessageId | returns the message's new message id for use with
|
Pushes a new message onto the Statusbar's stack. It will be displayed as long as it is on top of the stack.
:: StatusbarClass self | |
=> self | |
-> ContextId |
|
-> IO () |
Removes the topmost message that has the correct context.
:: StatusbarClass self | |
=> self | |
-> ContextId |
|
-> MessageId |
|
-> IO () |
Forces the removal of a message from a statusbar's stack. The exact
contextId
and messageId
must be specified.
statusbarSetHasResizeGrip :: StatusbarClass self => self -> Bool -> IO ()Source
Sets whether the statusbar has a resize grip. True
by default.
statusbarGetHasResizeGrip :: StatusbarClass self => self -> IO BoolSource
Returns whether the statusbar has a resize grip.
statusbarGetMessageArea :: StatusbarClass self => self -> IO BoxSource
Retrieves the box containing the label widget.
:: StatusbarClass self | |
=> self | |
-> Int |
|
-> IO () |
Forces the removal of all messages from a statusbar's stack with the exact contextId
.
- Available since Gtk+ version 2.22
Attributes
statusbarHasResizeGrip :: StatusbarClass self => Attr self BoolSource
Whether the statusbar has a grip for resizing the toplevel window.
Default value: True
Signals
textPopped :: StatusbarClass self => Signal self (ContextId -> String -> IO ())Source
Is emitted whenever a new message is popped off a statusbar's stack.
textPushed :: StatusbarClass self => Signal self (ContextId -> String -> IO ())Source
Is emitted whenever a new message gets pushed onto a statusbar's stack.
Deprecated
onTextPopped :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)Source
Called if a message is removed.
afterTextPopped :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)Source
Called if a message is removed.
onTextPushed :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)Source
Called if a message is pushed on top of the stack.
afterTextPushed :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)Source
Called if a message is pushed on top of the stack.