Top | ![]() |
![]() |
![]() |
![]() |
A GtkStatusbar is usually placed along the bottom of an application's main GtkWindow. 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 gtk_statusbar_get_context_id()
, 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.
One could say that a statusbar maintains one stack of messages for display purposes, but allows multiple message producers to maintain sub-stacks of the messages they produced (via context ids).
Status bars are created using gtk_statusbar_new()
.
Messages are added to the bar's stack with gtk_statusbar_push()
.
The message at the top of the stack can be removed using gtk_statusbar_pop()
.
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 gtk_statusbar_remove()
.