Graphics.UI.Gtk.Display.Statusbar

gtk3-0.14.6: Binding to the Gtk+ 3 graphical user interface library

Maintainer | gtk2hs-users@lists.sourceforge.net
Stability | provisional
Portability | portable (depends on GHC)
Safe Haskell | None
Language | Haskell98

Graphics.UI.Gtk.Display.Statusbar

Contents

- Detail
- Class Hierarchy
- Types
- Constructors
- Methods
- Attributes
- Signals
- Deprecated

Description

Report messages of minor importance to the user

Synopsis

- 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, GlibString string) => self -> string -> IO ContextId
- statusbarPush :: (StatusbarClass self, GlibString string) => self -> ContextId -> string -> IO MessageId
- statusbarPop :: StatusbarClass self => self -> ContextId -> IO ()
- statusbarRemove :: StatusbarClass self => self -> ContextId -> MessageId -> IO ()
- statusbarGetMessageArea :: StatusbarClass self => self -> IO Box
- statusbarRemoveAll :: StatusbarClass self => self -> ContextId -> IO ()
- textPopped :: (StatusbarClass self, GlibString string) => Signal self (ContextId -> string -> IO ())
- textPushed :: (StatusbarClass self, GlibString string) => Signal self (ContextId -> string -> IO ())

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

Instances

Eq Statusbar # |
Methods (==) :: Statusbar -> Statusbar -> Bool # (/=) :: Statusbar -> Statusbar -> Bool #
Ord Statusbar # |
Methods compare :: Statusbar -> Statusbar -> Ordering # (<) :: Statusbar -> Statusbar -> Bool # (<=) :: Statusbar -> Statusbar -> Bool # (>) :: Statusbar -> Statusbar -> Bool # (>=) :: Statusbar -> Statusbar -> Bool # max :: Statusbar -> Statusbar -> Statusbar # min :: Statusbar -> Statusbar -> Statusbar #
GObjectClass Statusbar # |
Methods toGObject :: Statusbar -> GObject # unsafeCastGObject :: GObject -> Statusbar #
StatusbarClass Statusbar # |
HBoxClass Statusbar # |
BoxClass Statusbar # |
ContainerClass Statusbar # |
WidgetClass Statusbar # |

class HBoxClass o => StatusbarClass o #

Instances

StatusbarClass Statusbar # |

castToStatusbar :: GObjectClass obj => obj -> Statusbar #

gTypeStatusbar :: GType #

toStatusbar :: StatusbarClass o => o -> Statusbar #

type ContextId = CUInt #

data MessageId #

# Constructors

statusbarNew :: IO Statusbar #

Creates a new `Statusbar` ready for messages.

# Methods

statusbarGetContextId #

Arguments

:: (StatusbarClass self, GlibString string) |
=> self |
-> string | `contextDescription` - textual description of what context the new message is being used in.
-> 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.

statusbarPush #

Arguments

:: (StatusbarClass self, GlibString string) |
=> self |
-> ContextId | `contextId` - the message's context id, as returned by `statusbarGetContextId`.
-> string | `text` - the message to add to the statusbar.
-> IO MessageId | returns 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 #

Arguments

:: StatusbarClass self |
=> self |
-> ContextId | `contextId` - the context identifier used when the message was added.
-> IO () |

Removes the topmost message that has the correct context.

statusbarRemove #

Arguments

:: StatusbarClass self |
=> self |
-> ContextId | `contextId` - a context identifier.
-> MessageId | `messageId` - 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.

statusbarGetMessageArea :: StatusbarClass self => self -> IO Box #

Retrieves the box containing the label widget.

statusbarRemoveAll #

Arguments

:: StatusbarClass self |
=> self |
-> ContextId | `contextId` a context identifier
-> IO () |

Forces the removal of all messages from a statusbar's stack with the exact `contextId`.

- Available since Gtk+ version 2.22

# Attributes

# Signals

textPopped :: (StatusbarClass self, GlibString string) => Signal self (ContextId -> string -> IO ()) #

Is emitted whenever a new message is popped off a statusbar's stack.

textPushed :: (StatusbarClass self, GlibString string) => Signal self (ContextId -> string -> IO ()) #

Is emitted whenever a new message gets pushed onto a statusbar's stack.

# Deprecated