Spec-Zone.ru › GTK 4.0

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 ()
const char * gtk_statusbar_get_message ()

Сигналы

void text-popped Выполнять последним
void text-pushed Выполнять последним

Типы и значения

GtkStatusbar

Иерархия объектов

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkStatusbar

Реализованные интерфейсы

GtkStatusbar реализует GtkAccessible, GtkBuildable и GtkConstraintTarget.

Файлы заголовочных определений

#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 char *context_description);

Возвращает новый идентификатор контекста, исходя из описания контекста. Примечание: описание не отображается в интерфейсе пользователя.

Параметры

statusbar

панель состояния GtkStatusbar

context_description

текстовое описание контекста, в котором используется новое сообщение

Возвращает

целое число id

gtk_statusbar_push ()

guint
gtk_statusbar_push (GtkStatusbar *statusbar,
                    guint context_id,
                    const char *text);

Добавляет новое сообщение в стек панели состояния.

Параметры

statusbar

панель состояния GtkStatusbar

context_id

идентификатор контекста сообщения, возвращаемый gtk_statusbar_get_context_id()

text

сообщение для добавления в панель состояния

Возвращает

идентификатор сообщения, который может использоваться с gtk_statusbar_remove().

gtk_statusbar_pop ()

void
gtk_statusbar_pop (GtkStatusbar *statusbar,
                   guint context_id);

Удаляет первое сообщение в стеке панели состояния GtkStatusbar с заданным идентификатором контекста.

Обратите внимание, что это может не изменить отображаемое сообщение, если сообщение в верхней части стека имеет другой идентификатор контекста.

Параметры

statusbar

панель состояния GtkStatusbar

context_id

идентификатор контекста

gtk_statusbar_remove ()

void
gtk_statusbar_remove (GtkStatusbar *statusbar,
                      guint context_id,
                      guint message_id);

Вынуждает удаление сообщения из стека панели состояния. Должны быть указаны точные context_id и message_id.

Параметры

statusbar

панель состояния GtkStatusbar

context_id

идентификатор контекста

message_id

идентификатор сообщения, возвращаемый gtk_statusbar_push()

gtk_statusbar_remove_all ()

void
gtk_statusbar_remove_all (GtkStatusbar *statusbar,
                          guint context_id);

Вынуждает удаление всех сообщений из стека панели состояния с точным context_id .

Параметры

statusbar

панель состояния GtkStatusbar

context_id

идентификатор контекста

gtk_statusbar_get_message ()

const char *
gtk_statusbar_get_message (GtkStatusbar *statusbar);

Извлекает содержимое метки в GtkStatusbar.

Параметры

statusbar

панель состояния GtkStatusbar

Возвращает

содержимое панели состояния.

[transfer none]

Типы и значения

GtkStatusbar

typedef struct _GtkStatusbar GtkStatusbar;

Подробное описание сигналов

Сигнал “text-popped”

void
user_function (GtkStatusbar *statusbar,
               guint         context_id,
               char         *text,
               gpointer      user_data)

Издается всякий раз, когда новое сообщение удаляется из стека статусбара.

Параметры

statusbar

объект, получивший сигнал

context_id

идентификатор контекста соответствующего сообщения/статусбара

text

сообщение, которое только что было удалено

user_data

данные пользователя, заданные при подключении обработчика сигнала.

Флаги: Run Last

Сигнал “text-pushed”

void
user_function (GtkStatusbar *statusbar,
               guint         context_id,
               char         *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-old.gnome.org/gtk4/4.0/GtkStatusbar.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API