краткое описание#include <gtk/gtk.h> gtkpaned; void gtk_paned_add1 (gtkpaned *paned, gtkwidget *child); void gtk_paned_add2 (gtkpaned *paned, gtkwidget *child); #define gtk_paned_gutter_size (p,s) void gtk_paned_pack1 (gtkpaned *paned, gtkwidget *child, gboolean resize, gboolean shrink); void gtk_paned_pack2 (gtkpaned *paned, gtkwidget *child, gboolean resize, gboolean shrink); gtkwidget* gtk_paned_get_child1 (gtkpaned *paned); gtkwidget* gtk_paned_get_child2 (gtkpaned *paned); #define gtk_paned_set_gutter_size (p,s) void gtk_paned_set_position (gtkpaned *paned, gint position); gint gtk_paned_get_position (gtkpaned *paned); иерархия объектовgobject +----ginitiallyunowned +----gtkobject +----gtkwidget +----gtkcontainer +----gtkpaned +----gtkhpaned +----gtkvpaned осуществляемый интерфейсgtkpaned осуществляет atkimplementoriface. свойства"max-position" gint : read "min-position" gint : read "position" gint : read / write "position-set" gboolean : read / write дочерние свойства"resize" gboolean : read / write "shrink" gboolean : read / write свойство стиля"handle-size" gint : read сигналы"accept-position" gboolean user_function (gtkpaned *paned, gpointer user_data) : run last / action "cancel-position" gboolean user_function (gtkpaned *paned, gpointer user_data) : run last / action "cycle-child-focus" gboolean user_function (gtkpaned *paned, gboolean arg1, gpointer user_data) : run last / action "cycle-handle-focus" gboolean user_function (gtkpaned *paned, gboolean arg1, gpointer user_data) : run last / action "move-handle" gboolean user_function (gtkpaned *paned, gtkscrolltype arg1, gpointer user_data) : run last / action "toggle-handle-focus" gboolean user_function (gtkpaned *paned, gpointer user_data) : run last / action описаниеgtkpaned – базовый класс для виджетов с двумя панелями, регулируемыми или горизонтально (gtkhpaned) или вертикально (gtkvpaned). дочерние виджеты добавляются на панели виджета с использованием gtk_paned_pack1() и gtk_paned_pack2(). деление между двумя панелями устанавливается по умолчанию из запрашиваемого размера, но может быть отрегулировано пользователем. панельный виджет отрисовывает разделитель между двумя дочерними виджетами и небольшую область захвата с помощью которой пользователь может регулировать деление. вокруг панелей или разделителя не создается никакого декоративного рельефа. (поле разделителя называют жёлоб (gutter).) часто бывает полезным поместить каждую дочернюю панель в gtkframe с типом тени установленной в gtk_shadow_in, таким образом жёлоб появляется как ребро небольшой ширины. каждая дочерняя панель имеет две опции, resize и shrink. если resize истина, то когда gtkpaned изменит размер, дочерний виджет сожмётся или расширится вместе с панельным виджетом. если shrink истина, то дочерний виджет может быть сделан меньше чем запрашивается пользователем. установка shrink в false позволяет приложению установить минимальный размер. если resize ложно для обоих дочерних виджетов, то это обрабатывается как истинный resize для обоих. приложение может устанавливать позицию ползунка, как если бы это сделал пользователь, используя вызов gtk_paned_set_position(). пример 1. создание панельного виджета минимального размера. gtkwidget *hpaned = gtk_hpaned_new (); gtkwidget *frame1 = gtk_frame_new (null); gtkwidget *frame2 = gtk_frame_new (null); gtk_frame_set_shadow_type (gtk_frame (frame1), gtk_shadow_in); gtk_frame_set_shadow_type (gtk_frame (frame2), gtk_shadow_in); gtk_widget_set_size_request (hpaned, 200 + gtk_paned (hpaned)->gutter_size, -1); gtk_paned_pack1 (gtk_paned (hpaned), frame1, true, false); gtk_widget_set_size_request (frame1, 50, -1); gtk_paned_pack2 (gtk_paned (hpaned), frame2, false, false); gtk_widget_set_size_request (frame2, 50, -1); деталиgtkpanedtypedef struct _gtkpaned gtkpaned; gtk_paned_add1 ()void gtk_paned_add1 (gtkpaned *paned, gtkwidget *child); добавляет дочернюю панель сверху или cлево от панели с параметрами по умолчанию. эквивалентно gtk_paned_pack1 (paned, child, false, true).
gtk_paned_add2 ()void gtk_paned_add2 (gtkpaned *paned, gtkwidget *child); добавляет панель снизу или справо панели с параметрами по умолчанию. эквивалентно gtk_paned_pack2 (paned, child, true, true).
gtk_paned_gutter_size()#define gtk_paned_gutter_size(p,s) (void) 0 вниманиеgtk_paned_gutter_size устарела и не должна использоваться во вновь создаваемом коде. старое имя для gtk_paned_set_gutter_size().
gtk_paned_pack1 ()void gtk_paned_pack1 (gtkpaned *paned, gtkwidget *child, gboolean resize, gboolean shrink); добавляет дочернюю панель сверху или слева от панели.
gtk_paned_pack2 ()void gtk_paned_pack2 (gtkpaned *paned, gtkwidget *child, gboolean resize, gboolean shrink); добавляет панель снизу или справа от панели.
gtk_paned_get_child1 ()gtkwidget* gtk_paned_get_child1 (gtkpaned *paned); получает первый дочерний виджет панельного виджета.
начиная с версии 2.4 gtk_paned_get_child2 ()gtkwidget* gtk_paned_get_child2 (gtkpaned *paned); получает второй дочерний виджет панельного виджета.
начиная с версии 2.4 gtk_paned_set_gutter_size()#define gtk_paned_set_gutter_size(p,s) (void) 0 вниманиеgtk_paned_set_gutter_size устарела и не должна использоваться во вновь создаваемом коде. в старых версиях gtk+, эта функция использовалась для установки ширины желоба (область между двумя панелями). теперь она не используется.
gtk_paned_set_position ()void gtk_paned_set_position (gtkpaned *paned, gint position); устанавливает позицию разделителя между двумя панелями.
gtk_paned_get_position ()gint gtk_paned_get_position (gtkpaned *paned); получает позицию разделителя между двумя панелями.
детали свойствсвойство "max-position""max-position" gint : read самое большое, возможное значение свойства позиции. это свойство происходит из размера и возможности уменьшаться дочернего виджета. допустимое значение: >= 0 значение по умолчанию: 2147483647 начиная с версии 2.4 свойство "min-position""min-position" gint : read самое маленькое, возможное значение свойства позиции. это свойство происходит из размера и возможности уменьшаться дочернего виджета. допустимое значение: >= 0 значение по умолчанию: 0 начиная с версии 2.4 свойство "position""position" gint : read / write позиция разделителя панелей в пикселах (0 означает весь путь left/top). допустимое значение: >= 0 значение по умолчанию: 0 свойство "position-set""position-set" gboolean : read / write true если свойство позиции должно быть использовано. значение по умолчанию: false детали дочерних свойствдочернее свойство "resize""resize" gboolean : read / write дочернее свойство "resize" определяет должен ли дочерний виджет расширяться и сужаться вместе с панельным виджетом. значение по умолчанию: true начиная с версии 2.4 дочернее свойство "shrink""shrink" gboolean : read / write дочернее свойство "shrink" определяет может ли дочерний виджет быть меньше чем заявленно. значение по умолчанию: true начиная с версии 2.4 детали свойств стилясвойство стиля "handle-size""handle-size" gint : read ширина области для регулирования. допустимое значение: >= 0 значение по умолчанию: 5 детали сигналовсигнал "accept-position"gboolean user_function (gtkpaned *paned, gpointer user_data) : run last / action
сигнал "cancel-position"gboolean user_function (gtkpaned *paned, gpointer user_data) : run last / action
сигнал "cycle-child-focus"gboolean user_function (gtkpaned *paned, gboolean arg1, gpointer user_data) : run last / action
сигнал "cycle-handle-focus"gboolean user_function (gtkpaned *paned, gboolean arg1, gpointer user_data) : run last / action
сигнал "move-handle"gboolean user_function (gtkpaned *paned, gtkscrolltype arg1, gpointer user_data) : run last / action
сигнал "toggle-handle-focus"gboolean user_function (gtkpaned *paned, gpointer user_data) : run last / action
|