summaryrefslogtreecommitdiff
path: root/docs/reference/gtk/tmpl/gtkstatusbar.sgml
blob: f751cd051ed57f3c8077d1142e305130aff40a07 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<!-- ##### SECTION Title ##### -->
GtkStatusbar

<!-- ##### SECTION Short_Description ##### -->
report messages of minor importance to the user.

<!-- ##### SECTION Long_Description ##### -->
<para>
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).
</para>
<para>
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.
</para>
<para>
Any messages added to a statusbar's stack must specify a <emphasis>context_id</emphasis>
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.
</para>
<para>
Status bars are created using gtk_statusbar_new().
</para>
<para>
Messages are added to the bar's stack with gtk_statusbar_push().
</para>
<para>
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 it's message_id was recorded at the time it was added. This is done using gtk_statusbar_remove().
</para>

<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term>#GtkDialog</term>
<listitem><para>another way of reporting information to the user.</para></listitem>
</varlistentry>
</variablelist>
</para>

<!-- ##### STRUCT GtkStatusbar ##### -->
<para>
Contains private data that should be modified with the functions described below.
</para>


<!-- ##### STRUCT GtkStatusbarMsg ##### -->
<para>
Holds the data for a statusbar message. <structfield>text</structfield> holds the actual text string. <structfield>context_id</structfield> is the context that this message is associated with, and <structfield>message_id</structfield> is this particular message's identifier. However, these fields should not be modified directly.
</para>

@text: 
@context_id: 
@message_id: 

<!-- ##### FUNCTION gtk_statusbar_new ##### -->
<para>
Creates a new #GtkStatusbar ready for messages.
</para>

@Returns: the new #GtkStatusbar.


<!-- ##### FUNCTION gtk_statusbar_get_context_id ##### -->
<para>
Returns a new context identifier, given a description of the actual context.
</para>

@statusbar: a #GtkStatusbar.
@context_description: textual description of what context the new message is
being used in.
@Returns: an integer id.


<!-- ##### FUNCTION gtk_statusbar_push ##### -->
<para>
Pushes a new message onto a statusbar's stack.
</para>

@statusbar: a #GtkStatusbar.
@context_id: the message's context id, as returned by
gkt_statusbar_get_context_id().
@text: the message to add to the statusbar.
@Returns: the message's new message id for use with gtk_statusbar_remove().


<!-- ##### FUNCTION gtk_statusbar_pop ##### -->
<para>
Removes the message at the top of a #GtkStatusBar's stack.
</para>

@statusbar: a #GtkStatusBar.
@context_id: a context identifier.


<!-- ##### FUNCTION gtk_statusbar_remove ##### -->
<para>
Forces the removal of a message from a statusbar's stack. The exact context_id and message_id must be specified.
</para>

@statusbar: a #GtkStatusBar.
@context_id: a context identifier.
@message_id: a message identifier, as returned by gtk_statusbar_push().


<!-- ##### SIGNAL GtkStatusbar::text-pushed ##### -->
<para>
Is emitted whenever a new message gets pushed onto a statusbar's stack.
</para>

@statusbar: the object which received the signal.
@context_id: the context id of the relevant message/statusbar.
@text: the message that was pushed.

<!-- ##### SIGNAL GtkStatusbar::text-popped ##### -->
<para>
Is emitted whenever a new message is popped off a statusbar's stack.
</para>

@statusbar: the object which received the signal.
@context_id: the context id of the relevant message/statusbar.
@text: the message that was just popped.