GtkStatusbar
GtkStatusbar — Сообщать пользователю сообщения второстепенной важности
Функции
| GtkWidget * | gtk_statusbar_new () |
| guint | gtk_statusbar_get_context_id () |
| guint | gtk_statusbar_push () |
| void | gtk_statusbar_pop () |
| void | gtk_statusbar_remove () |
| void | gtk_statusbar_remove_all () |
| GtkWidget * | gtk_statusbar_get_message_area () |
Свойства стиля
| GtkShadowType | shadow-type | Чтение |
Сигналы
| void | text-popped | Run Last |
| void | text-pushed | Run Last |
Типы и значения
| struct | GtkStatusbar |
Иерархия объектов
GObject ╰── GInitiallyUnowned ╰── GtkWidget ╰── GtkContainer ╰── GtkBox ╰── GtkStatusbar
Реализованные интерфейсы
GtkStatusbar реализует AtkImplementorIface, GtkBuildable и GtkOrientable.
Файлы заголовочных файлов
#include <gtk/gtk.h>
Описание
Компонент GtkStatusbar обычно размещается в нижней части основного окна приложения GtkWindow. Он может обеспечивать регулярные комментарии о состоянии приложения (как обычно в веб-браузере, например), или может использоваться для простого вывода сообщения при изменении состояния (например, при завершении загрузки в клиенте FTP).
Панели состояния в GTK+ поддерживают стек сообщений. Сообщение вверху стека каждой панели — это сообщение, которое будет отображаться в данный момент.
Любые сообщения, добавленные в стек панели состояния, должны указывать идентификатор контекста, который используется для уникальной идентификации источника сообщения. Этот идентификатор контекста может быть сгенерирован с помощью gtk_statusbar_get_context_id(), учитывая сообщение и панель состояния, в которую оно будет добавлено. Обратите внимание, что сообщения хранятся в стеке, и при выборе отображаемого сообщения структура стека соблюдается независимо от идентификатора контекста сообщения.
Можно сказать, что панель состояния поддерживает один стек сообщений для целей отображения, но позволяет нескольким производителям сообщений поддерживать подстеки сообщений, которые они производили (через идентификаторы контекста).
Панели состояния создаются с помощью gtk_statusbar_new().
Сообщения добавляются в стек панели с помощью gtk_statusbar_push().
Сообщение в верхней части стека можно удалить с помощью gtk_statusbar_pop(). Сообщение можно удалить из любой точки стека, если его идентификатор сообщения был записан во время добавления. Это делается с помощью gtk_statusbar_remove().
Узел CSS
GtkStatusbar имеет один узел CSS с именем statusbar.
Функции
gtk_statusbar_new ()
GtkWidget *
gtk_statusbar_new (void); Создаёт новый GtkStatusbar, готовый к сообщениям.
Возвращает
новый GtkStatusbar
gtk_statusbar_get_context_id ()
guint gtk_statusbar_get_context_id (GtkStatusbar *statusbar,const gchar *context_description);
Возвращает новый идентификатор контекста, учитывая описание фактического контекста. Обратите внимание, что описание не отображается в пользовательском интерфейсе.
Параметры
statusbar | ||
context_description | текстовое описание контекста, в котором используется новое сообщение |
Возвращает
целочисленный идентификатор
gtk_statusbar_push ()
guint gtk_statusbar_push (GtkStatusbar *statusbar,guint context_id,const gchar *text);
Добавляет новое сообщение в стек статусбара.
Параметры
statusbar | ||
context_id | идентификатор контекста сообщения, возвращаемый | |
text | сообщение, добавляемое в статусбар |
Возвращает
идентификатор сообщения, который можно использовать с gtk_statusbar_remove().
gtk_statusbar_pop ()
void gtk_statusbar_pop (GtkStatusbar *statusbar,guint context_id);
Удаляет первое сообщение в стеке GtkStatusbar с заданным идентификатором контекста.
Обратите внимание, что это может не изменить отображаемое сообщение, если сообщение в верхней части стека имеет другой идентификатор контекста.
Параметры
statusbar | ||
context_id | идентификатор контекста |
gtk_statusbar_remove ()
void gtk_statusbar_remove (GtkStatusbar *statusbar,guint context_id,guint message_id);
Принудительно удаляет сообщение из стека статусбара. Должны быть указаны точные context_id и message_id.
Параметры
statusbar | ||
context_id | идентификатор контекста | |
message_id | идентификатор сообщения, возвращаемый |
gtk_statusbar_remove_all ()
void gtk_statusbar_remove_all (GtkStatusbar *statusbar,guint context_id);
Принудительно удаляет все сообщения из стека статусбара с точным context_id.
Параметры
statusbar | ||
context_id | идентификатор контекста |
С момента: 2.22
gtk_statusbar_get_message_area ()
GtkWidget *
gtk_statusbar_get_message_area (GtkStatusbar *statusbar); Возвращает область, содержащую виджет метки.
Параметры
statusbar |
С момента: 2.20
Типы и значения
struct GtkStatusbar
struct GtkStatusbar;
Подробное описание свойств стиля
Свойство “shadow-type”
“shadow-type” GtkShadowType
Стиль фаски вокруг текста статусбара.
GtkStatusbar:shadow-type устарело с версии 3.20 и не должно использоваться в новых кодах.
Используйте свойства CSS для определения внешнего вида; значение этого свойства стиля игнорируется.
Флаги: Чтение
Значение по умолчанию: GTK_SHADOW_IN
Подробное описание сигналов
Сигнал “text-popped”
void user_function (GtkStatusbar *statusbar, guint context_id, gchar *text, gpointer user_data)
Издаётся всякий раз, когда из стека статусбара выталкивается новое сообщение.
Параметры
statusbar | объект, получивший сигнал | |
context_id | идентификатор контекста соответствующего сообщения/статусбара | |
text | сообщение, которое только что было вытащено | |
user_data | данные пользователя, установленные при подключении обработчика сигналов. |
Флаги: Run Last
Сигнал “text-pushed”
void user_function (GtkStatusbar *statusbar, guint context_id, gchar *text, gpointer user_data)
Издаётся всякий раз, когда новое сообщение добавляется в стек статусбара.
Параметры
statusbar | объект, получивший сигнал | |
context_id | идентификатор контекста соответствующего сообщения/статусбара | |
text | сообщение, которое было добавлено | |
user_data | данные пользователя, установленные при подключении обработчика сигналов. |
Флаги: Run Last
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.20/GtkStatusbar.html