The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Каталог документации / Раздел "Программирование, языки" / Оглавление документа

Prev

Up

Home

GTK+ Reference Manual

Next

Top  |  Description  |  Object Hierarchy  |  Properties  |  Style Properties  |  Signals

GtkStatusbar

GtkStatusbar Выводит сообщения небольшой важности для пользователя

Краткое описание

#include <gtk/gtk.h>


            GtkStatusbar;
GtkWidget*  gtk_statusbar_new               (void);
guint       gtk_statusbar_get_context_id    (GtkStatusbar *statusbar,
                                             const gchar *context_description);
guint       gtk_statusbar_push              (GtkStatusbar *statusbar,
                                             guint context_id,
                                             const gchar *text);
void        gtk_statusbar_pop               (GtkStatusbar *statusbar,
                                             guint context_id);
void        gtk_statusbar_remove            (GtkStatusbar *statusbar,
                                             guint context_id,
                                             guint message_id);
void        gtk_statusbar_set_has_resize_grip
                                            (GtkStatusbar *statusbar,
                                             gboolean setting);
gboolean    gtk_statusbar_get_has_resize_grip
                                            (GtkStatusbar *statusbar);

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

  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----GtkBox
                                 +----GtkHBox
                                       +----GtkStatusbar

Осуществляемые интерфейсы

GtkStatusbar осуществляет AtkImplementorIface.

Свойства

  "has-resize-grip"      gboolean              : Read / Write

Свойства стиля

  "shadow-type"          GtkShadowType         : Read

Сигналы

"text-popped"
            void        user_function      (GtkStatusbar *statusbar,
                                            guint         context_id,
                                            gchar        *text,
                                            gpointer      user_data)       : Run last
"text-pushed"
            void        user_function      (GtkStatusbar *statusbar,
                                            guint         context_id,
                                            gchar        *text,
                                            gpointer      user_data)       : Run last

Описание

GtkStatusbar обычно размещается в самом низу основного окна GtkWindow. Она обеспечивает регулярные комментарии состояния приложения (как например состояние загрузки страницы в браузере), или может применяться для вывода небольших сообщений изменения состояния, (когда например выполнена загрузка в FTP клиенте). Она так же может содержать захват для изменения размера окна (треугольная область в нижнем правом углу).

Панель состояния в Gtk+ поддерживает стек сообщений. Сообщение которое отображается в текущий момент находится на вершине стека.

Любые сообщения добавленные в стек панели состояния должны иметь context_id который используется для точной идентификации источника сообщения. Этот context_id может быть сгенерирован с помощью gtk_statusbar_get_context_id(), с полученным сообщением которое должно быть добавлено в панель состояния. Помните что это сообщение сохраняется в стеке и выбор отображаемого сообщения происходит придерживаясь структуры стека, не зависимо от контекстного идентификатора сообщения.

Панель состояния создаётся с помощью gtk_statusbar_new().

Сообщения добавляются с помощью gtk_statusbar_push().

Сообщение из верхушки стека можно удалить используя gtk_statusbar_pop(). Сообщения можно удалить из любого положения в стеке если во время добавления был зарегистрирован его message_id. Это делается с помощью gtk_statusbar_remove().

Детали

GtkStatusbar

typedef struct _GtkStatusbar GtkStatusbar;

Содержит закрытые данные доступ к которым должен происходить из функций описанных ниже.


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 :

GtkStatusbar.

context_description :

Текстовое описание содержимого используемого сообщения.

Возвращает :

целочисленный id.


gtk_statusbar_push ()

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

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

statusbar :

GtkStatusbar.

context_id :

Контекстный id сообщения, который возвращает gtk_statusbar_get_context_id().

text :

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

Возвращает :

Новый id сообщения для использования в gtk_statusbar_remove().


gtk_statusbar_pop ()

void        gtk_statusbar_pop               (GtkStatusbar *statusbar,
                                             guint context_id);

Удаляет верхнее сообщение из стека GtkStatusBar's.

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_set_has_resize_grip ()

void        gtk_statusbar_set_has_resize_grip
                                            (GtkStatusbar *statusbar,
                                             gboolean setting);

Устанавливает должна ли панель состояния иметь захват для изменения размера. TRUE по умолчанию.

statusbar :

GtkStatusBar.

setting :

TRUE для установки захвата.


gtk_statusbar_get_has_resize_grip ()

gboolean    gtk_statusbar_get_has_resize_grip
                                            (GtkStatusbar *statusbar);

Определяет имеет ли панель состояния захват для изменения размера.

statusbar :

GtkStatusBar.

Возвращает :

TRUE если захват есть.

Детали свойств

Свойство "has-resize-grip"

  "has-resize-grip"      gboolean              : Read / Write

Имеется ли захват для изменения размера окна верхнего уровня.

Значение по умолчанию : TRUE

Начиная с версии 2.4

Детали свойств стиля

Свойство стиля "shadow-type"

  "shadow-type"          GtkShadowType         : Read

Стиль скоса вокруг текста панели состояния.

Значение по умолчанию : GTK_SHADOW_IN

Детали сигналов

Сигнал "text-popped"

void        user_function                  (GtkStatusbar *statusbar,
                                            guint         context_id,
                                            gchar        *text,
                                            gpointer      user_data)       : Run last

Издаётся каждый раз при выталкивании сообщения из стека панели состояния.

statusbar :

Объект получающий сигнал.

context_id :

Контекстный идентификатор соответствующего сообщения.

text :

Сообщение которое было продвинуто.

user_data :

Пользовательские данные помещаемые при подключении сигнала.


Сигнал "text-pushed"

void        user_function                  (GtkStatusbar *statusbar,
                                            guint         context_id,
                                            gchar        *text,
                                            gpointer      user_data)       : Run last

Издаётся каждый раз при помещении сообщения в стек панели состояния.

statusbar :

объект получающий сигнал.

context_id :

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

text :

Сообщение которое было помещено.

user_data :

Пользовательские данные помещаемые при подключении сигнала.

Смотрите также

GtkDialog

Другой способ отображения сообщений для пользователя.






Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру