Gtk2HsContentsIndex
Graphics.UI.Gtk.Display.Statusbar
Portabilityportable (depends on GHC)
Stabilityprovisional
Maintainergtk2hs-users@lists.sourceforge.net
Contents
Detail
Class Hierarchy
Types
Constructors
Methods
Attributes
Signals
Description
Report messages of minor importance to the user
Synopsis
data Statusbar
class HBoxClass o => StatusbarClass o
castToStatusbar :: GObjectClass obj => obj -> Statusbar
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
statusbarHasResizeGrip :: StatusbarClass self => Attr self Bool
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
 |  GObject
 |   +----Object
 |         +----Widget
 |               +----Container
 |                     +----Box
 |                           +----HBox
 |                                 +----Statusbar
 
Types
data Statusbar
show/hide Instances
class HBoxClass o => StatusbarClass o
show/hide Instances
castToStatusbar :: GObjectClass obj => obj -> Statusbar
toStatusbar :: StatusbarClass o => o -> Statusbar
type ContextId = CUInt
data MessageId
Constructors
statusbarNew :: IO Statusbar
Creates a new Statusbar ready for messages.
Methods
statusbarGetContextId
:: StatusbarClass self
=> self
-> StringcontextDescription - textual description of what context the new message is being used in.
-> IO ContextIdreturns 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.
statusbarPush
:: StatusbarClass self
=> self
-> ContextIdcontextId - the message's context id, as returned by statusbarGetContextId.
-> Stringtext - the message to add to the statusbar.
-> IO MessageIdreturns the message's new message id for use with statusbarRemove.
Pushes a new message onto the Statusbar's stack. It will be displayed as long as it is on top of the stack.
statusbarPop
:: StatusbarClass self
=> self
-> ContextIdcontextId - the context identifier used when the message was added.
-> IO ()
Removes the topmost message that has the correct context.
statusbarRemove
:: StatusbarClass self
=> self
-> ContextIdcontextId - a context identifier.
-> MessageIdmessageId - a message identifier, as returned by statusbarPush.
-> 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 ()
Sets whether the statusbar has a resize grip. True by default.
statusbarGetHasResizeGrip :: StatusbarClass self => self -> IO Bool
Returns whether the statusbar has a resize grip.
Attributes
statusbarHasResizeGrip :: StatusbarClass self => Attr self Bool

Whether the statusbar has a grip for resizing the toplevel window.

Default value: True

Signals
onTextPopped :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)
Called if a message is removed.
afterTextPopped :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)
onTextPushed :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)
Called if a message is pushed on top of the stack.
afterTextPushed :: StatusbarClass self => self -> (ContextId -> String -> IO ()) -> IO (ConnectId self)
Produced by Haddock version 0.8