| 
 | |
|  | 
| GTK+ Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | Implemented Interfaces | Properties | Signals | ||||
| GtkHandleBoxGtkHandleBox Виджет для перемещения частей окна | 
#include <gtk/gtk.h>
            GtkHandleBox;
GtkWidget*  gtk_handle_box_new              (void);
void        gtk_handle_box_set_shadow_type  (GtkHandleBox *handle_box,
                                             GtkShadowType type);
void        gtk_handle_box_set_handle_position
                                            (GtkHandleBox *handle_box,
                                             GtkPositionType position);
void        gtk_handle_box_set_snap_edge    (GtkHandleBox *handle_box,
                                             GtkPositionType edge);
GtkPositionType gtk_handle_box_get_handle_position
                                            (GtkHandleBox *handle_box);
GtkShadowType gtk_handle_box_get_shadow_type
                                            (GtkHandleBox *handle_box);
GtkPositionType gtk_handle_box_get_snap_edge
                                            (GtkHandleBox *handle_box);
GObject +----GInitiallyUnowned +----GtkObject +----GtkWidget +----GtkContainer +----GtkBin +----GtkHandleBox
GtkHandleBox реализует AtkImplementorIface.
"handle-position" GtkPositionType : Read / Write "shadow" GtkShadowType : Read / Write "shadow-type" GtkShadowType : Read / Write "snap-edge" GtkPositionType : Read / Write "snap-edge-set" gboolean : Read / Write
"child-attached" void user_function (GtkHandleBox *handlebox, GtkWidget *widget, gpointer user_data) : Run first "child-detached" void user_function (GtkHandleBox *handlebox, GtkWidget *widget, gpointer user_data) : Run first
Виджет GtkHandleBox позволяет отсоединять части окна "torn off". Это контейнер с отображаемым дочерним виджетом который пользователь может перетащить отцепив от отдельного окна (плавающее окно) содержащего дочерний виджет. Например вы можете отцепить меню и перетащить в удобное для вас место, а затем вернуть его на прежнее.
Основное окно и перемещаемое окно должны выравниваться по одному из краёв, граница выравнивания (snap edge). Это определяется непосредственно программистом приложения, или GTK+ выберет разумное значение по умолчанию для позиции маркера (область для захвата при перемещении).
Для выполнения отсоединения
и прикрепления обратно handlebox максимально
минимизирует неудобства пользователя,
важно установить границу выравнивания
неподвижно при отсоединении handlebox.
Например, если handlebox упакован в нижний
VBox, то при отсоединении handlebox, нижняя
граница расположения handlebox's зафиксируется,
так как высота handlebox сожмётся, поэтому
граница выравнивания должна быть
установлена в значение GTK_POS_BOTTOM.
typedef struct _GtkHandleBox GtkHandleBox;Структура GtkHandleBox содержит следующие поля. (Эти поля должны рассматриваться только для чтения. Они никогда не должны устанавливаться приложением.)
| GtkShadowType shadow_type; | Тип тени для ввода. (Смотрите
			 | 
| GtkPositionType handle_position; | Позиция маркера handlebox's относительно
			дочернего виджета. (Смотрите
			 | 
| gint snap_edge; | Значение типа GtkPosition указывающее границу выравнивания виджета. (Смотрите gtk_handle_box_set_snap_edge). Значение -1 указывает что данное значение не установлено. | 
| gboolean child_detached; | Логическое значение указывающее откреплен или прикреплен дочерний виджет handlebox's. | 
GtkWidget*  gtk_handle_box_new              (void);Создаёт новый контейнер обработки.
| Возвращает : | новый GtkHandleBox. | 
void gtk_handle_box_set_shadow_type (GtkHandleBox *handle_box, GtkShadowType type);
Устанавливает тип тени изображаемой вокруг границ контейнера обработки.
| 
 | |
| 
 | Тип тени. | 
void        gtk_handle_box_set_handle_position
                                            (GtkHandleBox *handle_box,
                                             GtkPositionType position);Устанавливает сторону с которой рисуется маркер (место захвата виджета при перетаскивании).
| 
 | |
| 
 | Сторона с которой должен рисоваться маркер. | 
void gtk_handle_box_set_snap_edge (GtkHandleBox *handle_box, GtkPositionType edge);
Устанавливает границу выравнивания handlebox. Граница выравнивания- это граница отсоединяемого дочернего виджета который должен быть выравнен с соответствующего края оставленного позади "ghost" когда дочерний виджет отсоединяется, для повторного прикрепления к окну. Обычно, граница выравнивания должна быть выбрана так, чтобы остаться в том же самом месте экрана где handlebox отсоединён.
Если граница выравнивания
не установлена, то соответствующие
значения предполагаются от позиции
маркера. Если позиция маркера GTK_POS_RIGHT
или GTK_POS_LEFT,
то когда позиция границы выравнивания
GTK_POS_TOP,
иначе она будет GTK_POS_LEFT.
| 
 | |
| 
 | Граница выравнивания, или -1 для сброса значения; в этом случае GTK+ попытается предположить значение в будещем. | 
GtkPositionType gtk_handle_box_get_handle_position (GtkHandleBox *handle_box);
Определяет позицию маркера в
контейнере обработки. Смотрите
gtk_handle_box_set_handle_position().
| 
 | |
| Возвращает : | Текущая позиция маркера. | 
GtkShadowType gtk_handle_box_get_shadow_type (GtkHandleBox *handle_box);
Определяет тип тени изображаемой
вокруг границ контейнера обработки.
Смотрите gtk_handle_box_set_shadow_type().
| 
 | |
| Возвращает : | Тип тени изображаемой в текущий момент вокруг границ контейнера. | 
GtkPositionType gtk_handle_box_get_snap_edge (GtkHandleBox *handle_box);
Определяет границу контейнера
обработки для прикрепления. Смотрите
gtk_handle_box_set_snap_edge().
| 
 | |
| Возвращает : | Граница используемая для прикрепления, или (GtkPositionType)-1 если она определяется (значение по умолчанию) из позиции маркера. | 
handle-position"  "handle-position"      GtkPositionType       : Read / WriteПозиция маркера относительно дочернего виджета.
Значение по умолчанию: GTK_POS_LEFT
shadow"  "shadow"               GtkShadowType         : Read / WriteУстаревшее свойство, вместо него используйте shadow_type.
Значение по умолчанию: GTK_SHADOW_ETCHED_OUT
shadow-type"  "shadow-type"          GtkShadowType         : Read / WriteПоявление тени вокруг контейнера.
Значение по умолчанию: GTK_SHADOW_ETCHED_OUT
snap-edge"  "snap-edge"            GtkPositionType       : Read / WriteСторона handlebox для закрепления.
Значение по умолчанию: GTK_POS_TOP
snap-edge-set"  "snap-edge-set"        gboolean              : Read / WriteИиспользовать значение свойства snap_edge или handle_position.
Значение по умолчанию: FALSE
void user_function (GtkHandleBox *handlebox, GtkWidget *widget, gpointer user_data) : Run first
Этот сигнал издаётся когда содержимое handlebox прикреплено к основному окну.
| 
 | Объект получающий сигнал. | 
| 
 | Дочерний виджет handlebox. (этот параметр не обеспечивает дополнительной информации, он используется только для обратной совместимости) | 
| 
 | Данные устанавливаемые при подключении обработчика сигнала. | 
void user_function (GtkHandleBox *handlebox, GtkWidget *widget, gpointer user_data) : Run first
Этот сигнал издаётся когда содержимое handlebox откреплено от основного окна.
| 
 | Объект получающий сигнал. | 
| 
 | Дочерний виджет handlebox. (этот параметр не обеспечивает дополнительной информации, он используется только для обратной совместимости) | 
| 
 | Данные устанавливаемые при подключении обработчика сигнала. | 
| Закладки на сайте Проследить за страницей | Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |