краткое описание#include <gtk/gtk.h> gtksizegroup; enum gtksizegroupmode; gtksizegroup* gtk_size_group_new (gtksizegroupmode mode); void gtk_size_group_set_mode (gtksizegroup *size_group, gtksizegroupmode mode); gtksizegroupmode gtk_size_group_get_mode (gtksizegroup *size_group); void gtk_size_group_set_ignore_hidden (gtksizegroup *size_group, gboolean ignore_hidden); gboolean gtk_size_group_get_ignore_hidden (gtksizegroup *size_group); void gtk_size_group_add_widget (gtksizegroup *size_group, gtkwidget *widget); void gtk_size_group_remove_widget (gtksizegroup *size_group, gtkwidget *widget); gslist* gtk_size_group_get_widgets (gtksizegroup *size_group); иерархия объектовgobject +----gtksizegroup свойства"ignore-hidden" gboolean : read / write "mode" gtksizegroupmode : read / write описаниеgtksizegroup обеспечивает механизм группировки виджетов таким образом, чтобы они занимали одинаковое количество пространства. это полезно когда вам нужно привести столбцы виджета к одинаковому размеру, но вы не можете использовать gtktable. подробнее, размер запрашиваемый для
каждого виджета в gtksizegroup это
максимальный размер который запрашивает
каждый виджет в групповом размере, если
они не в групповом размере. режим
группового размера (смотрите
помните, групповой размер влияет
только на объём запрашиваемого
пространства, не на конечный размер
получаемый виджетом. если вам нужны
виджеты в gtksizegroup фактически
одного размера, вам нужно упаковать их
таким образом, чтобы они получили размер
не больше запрашиваемого. например,
если вы упаковываете ваши виджеты в
таблицу, вы не должны включать флажок
gtksizegroup объекты являются
ссылками на каждый виджет в групповом
размере, так как только вы добавляете
все виджеты в gtksizegroup, вы можете
сбросить начальную ссылку для группового
размера с помощью виджеты могут быть частью множества
групповых размеров; gtk+ рассчитает
горизонтальный размер виджета из
горизонтального запроса всех виджетов
которые могут быть досягаемы из цепочки
групповых размеров типа
деталиgtksizegrouptypedef struct _gtksizegroup gtksizegroup; enum gtksizegroupmodetypedef enum {
gtk_size_group_none,
gtk_size_group_horizontal,
gtk_size_group_vertical,
gtk_size_group_both
} gtksizegroupmode; режим группового размера определяется направлением в котором групповой размер влияет на запрашиваемые размеры виджетов которыми укомплектован.
gtk_size_group_new ()gtksizegroup* gtk_size_group_new (gtksizegroupmode mode); создаёт новый gtksizegroup.
gtk_size_group_set_mode ()void gtk_size_group_set_mode (gtksizegroup *size_group, gtksizegroupmode mode);
устанавливает gtksizegroupmode
группового размера. режим группового
размера определяет в каком направлении
влияет групповой размер на размер
виджетов входящих в его состав -
горизонтальный (
gtk_size_group_get_mode ()gtksizegroupmode gtk_size_group_get_mode (gtksizegroup *size_group);
определяет текущий режим группового
размера. смотрите
gtk_size_group_set_ignore_hidden ()void gtk_size_group_set_ignore_hidden (gtksizegroup *size_group, gboolean ignore_hidden); устанавливает должен ли игнорироваться не видимый (unmapped) виджет при расчете размера.
начиная с версии 2.8 gtk_size_group_get_ignore_hidden ()gboolean gtk_size_group_get_ignore_hidden (gtksizegroup *size_group); определяет если не видимый виджет игнорируется при расчете размера.
начиная с версии 2.8 gtk_size_group_add_widget ()void gtk_size_group_add_widget (gtksizegroup *size_group, gtkwidget *widget);
добавляет виджеты в gtksizegroup. в
будущем, размер виджета будет определяться
как максимум его реквизиции и размеров
других виджетов в групповом размере. к
каким направлениям размера это будет
относиться зависит от режима группового
размера. смотрите
gtk_size_group_remove_widget ()void gtk_size_group_remove_widget (gtksizegroup *size_group, gtkwidget *widget); удаляет виджеты из gtksizegroup.
gtk_size_group_get_widgets ()gslist* gtk_size_group_get_widgets (gtksizegroup *size_group);
возвращает список виджетов связанных
с
начиная с версии 2.10 детали свойствсвойство "
|