GtkConstraint
GtkConstraint — Описание ограничения
Функции
Свойства
| double | constant | Чтение / Запись / Только для создания |
| double | multiplier | Чтение / Запись / Только для создания |
| GtkConstraintRelation | relation | Чтение / Запись / Только для создания |
| GtkConstraintTarget * | source | Чтение / Запись / Только для создания |
| GtkConstraintAttribute | source-attribute | Чтение / Запись / Только для создания |
| int | strength | Чтение / Запись / Только для создания |
| GtkConstraintTarget * | target | Чтение / Запись / Только для создания |
| GtkConstraintAttribute | target-attribute | Чтение / Запись / Только для создания |
Типы и значения
| GtkConstraint | |
| GtkConstraintTarget | |
| перечисление | GtkConstraintAttribute |
| перечисление | GtkConstraintRelation |
| перечисление | GtkConstraintStrength |
Иерархия объектов
GInterface ╰── GtkConstraintTarget GObject ╰── GtkConstraint
Предпосылки
GtkConstraintTarget требует GObject.
Известные реализации
GtkConstraintTarget реализуется в GtkAboutDialog, GtkActionBar, GtkAppChooserButton, GtkAppChooserDialog, GtkAppChooserWidget, GtkApplicationWindow, GtkAspectFrame, GtkAssistant, GtkBox, GtkButton, GtkCalendar, GtkCellView, GtkCenterBox, GtkCheckButton, GtkColorButton, GtkColorChooserDialog, GtkColorChooserWidget, GtkColumnView, GtkComboBox, GtkComboBoxText, GtkConstraintGuide, GtkDialog, GtkDragIcon, GtkDrawingArea, GtkDropDown, GtkEditableLabel, GtkEmojiChooser, GtkEntry, GtkExpander, GtkFileChooserDialog, GtkFileChooserWidget, GtkFixed, GtkFlowBox, GtkFlowBoxChild, GtkFontButton, GtkFontChooserDialog, GtkFontChooserWidget, GtkFrame, GtkGLArea, GtkGrid, GtkGridView, GtkHeaderBar, GtkIconView, GtkImage, GtkInfoBar, GtkLabel, GtkLevelBar, GtkLinkButton, GtkListBox, GtkListBoxRow, GtkListView, GtkLockButton, GtkMediaControls, GtkMenuButton, GtkMessageDialog, GtkNotebook, GtkOverlay, GtkPageSetupUnixDialog, GtkPaned, GtkPasswordEntry, GtkPicture, GtkPopover, GtkPopoverMenu, GtkPopoverMenuBar, GtkPrintUnixDialog, GtkProgressBar, GtkRange, GtkRevealer, GtkScale, GtkScaleButton, GtkScrollbar, GtkScrolledWindow, GtkSearchBar, GtkSearchEntry, GtkSeparator, GtkShortcutLabel, GtkShortcutsGroup, GtkShortcutsSection, GtkShortcutsShortcut, GtkShortcutsWindow, GtkSpinButton, GtkSpinner, GtkStack, GtkStackSidebar, GtkStackSwitcher, GtkStatusbar, GtkSwitch, GtkText, GtkTextView, GtkToggleButton, GtkTreeExpander, GtkTreeView, GtkVideo, GtkViewport, GtkVolumeButton, GtkWidget, GtkWindow, GtkWindowControls и GtkWindowHandle.
Включения
#include <gtk/gtk.h>
Описание
GtkConstraint описывает ограничение между атрибутом виджета и другим атрибутом другого виджета, выраженное как линейное уравнение, например:
Каждый GtkConstraint является частью системы, которая будет решена GtkConstraintLayout для размещения и позиционирования каждого виджета-потомка.
И исходные, и целевые виджеты, а также их атрибуты в GtkConstraint экземпляре являются неизменяемыми после создания.
Функции
gtk_constraint_new ()
GtkConstraint * gtk_constraint_new (gpointer target,GtkConstraintAttribute target_attribute,GtkConstraintRelation relation,gpointer source,GtkConstraintAttribute source_attribute,double multiplier,double constant,int strength);
Создаёт новый GtkConstraint, представляющий отношение между атрибутом макета в источнике и атрибутом макета в целевом элементе.
Параметры
target | объект GtkConstraintTarget. | [nullable][type GtkConstraintTarget] |
target_attribute | атрибут | |
relation | отношение эквивалентности между | |
source | объект GtkConstraintTarget. | [nullable][type GtkConstraintTarget] |
source_attribute | атрибут | |
multiplier | множитель, который будет применён к | |
constant | константа, которая будет добавлена к | |
strength | сила ограничения |
Возвращаемое значение
созданный GtkConstraint
gtk_constraint_new_constant ()
GtkConstraint * gtk_constraint_new_constant (gpointer target,GtkConstraintAttribute target_attribute,GtkConstraintRelation relation,double constant,int strength);
Создаёт новый GtkConstraint, представляющий отношение между атрибутом макета в целевом элементе и константой.
Параметры
target | объект GtkConstraintTarget. | [nullable][type GtkConstraintTarget] |
target_attribute | атрибут | |
relation | отношение эквивалентности между | |
constant | константа, которая будет установлена для | |
strength | сила ограничения |
Возвращаемое значение
созданный GtkConstraint
gtk_constraint_get_target ()
GtkConstraintTarget *
gtk_constraint_get_target (GtkConstraint *constraint); Возвращает GtkConstraintTarget, используемый в качестве целевого элемента для constraint .
Если свойство “target” установлено в NULL, constraint будет использовать виджет GtkConstraintLayout.
Параметры
constraint |
gtk_constraint_get_target_attribute ()
GtkConstraintAttribute
gtk_constraint_get_target_attribute (GtkConstraint *constraint); Возвращает атрибут целевого элемента, который должен быть установлен constraint .
Параметры
constraint |
Возвращаемое значение
атрибут целевого элемента
gtk_constraint_get_relation ()
GtkConstraintRelation
gtk_constraint_get_relation (GtkConstraint *constraint); Порядковое отношение между членами constraint .
Параметры
constraint |
Возвращаемое значение
значение GtkConstraintRelation
gtk_constraint_get_source ()
GtkConstraintTarget *
gtk_constraint_get_source (GtkConstraint *constraint); Возвращает GtkConstraintTarget, используемый в качестве источника для constraint .
Если свойство “source” установлено в NULL, constraint будет использовать виджет GtkConstraintLayout.
Параметры
constraint |
gtk_constraint_get_source_attribute ()
GtkConstraintAttribute
gtk_constraint_get_source_attribute (GtkConstraint *constraint); Возвращает атрибут источника, который должен быть прочитан constraint .
Параметры
constraint |
Возвращаемое значение
атрибут источника
gtk_constraint_get_multiplier ()
double
gtk_constraint_get_multiplier (GtkConstraint *constraint); Возвращает множитель, применяемый к значению атрибута источника.
Параметры
constraint |
Возвращаемое значение
множитель
gtk_constraint_get_constant ()
double
gtk_constraint_get_constant (GtkConstraint *constraint); Возвращает константу, добавляемую к значению атрибутов источника.
Параметры
constraint |
Возвращаемое значение
константа
gtk_constraint_get_strength ()
int
gtk_constraint_get_strength (GtkConstraint *constraint); Получает силу ограничения.
Параметры
constraint | объект GtkConstraint |
Возвращает
силу ограничения
gtk_constraint_is_required ()
gboolean
gtk_constraint_is_required (GtkConstraint *constraint); Проверяет, является ли constraint обязательным соотношением для решения макета по ограничениям.
Параметры
constraint | объект GtkConstraint |
Возвращает
TRUE если ограничение обязательно
gtk_constraint_is_attached ()
gboolean
gtk_constraint_is_attached (GtkConstraint *constraint); Проверяет, прикреплено ли constraint к GtkConstraintLayout и участвует ли оно в формировании макета.
Параметры
constraint | объект GtkConstraint |
Возвращает
TRUE если ограничение прикреплено
gtk_constraint_is_constant ()
gboolean
gtk_constraint_is_constant (GtkConstraint *constraint); Проверяет, описывает ли constraint отношение между атрибутом на “target” и константным значением.
Параметры
constraint | объект GtkConstraint |
Возвращает
TRUE если ограничение является константным отношением
Типы и значения
GtkConstraint
typedef struct _GtkConstraint GtkConstraint;
Объект, описывающий отношение между двумя атрибутами виджета.
Все отношения имеют вид:
target.attr1 = source.attr2 × multiplier + constant
Объект GtkConstraint становится неизменяемым после создания.
GtkConstraintTarget
typedef struct _GtkConstraintTarget GtkConstraintTarget;
Интерфейс GtkConstraintTarget реализуется объектами, которые могут использоваться в качестве источника или цели в GtkConstraints. Помимо GtkWidget, его также реализует GtkConstraintGuide.
перечисление GtkConstraintAttribute
Атрибуты виджетов, которые могут быть использованы при создании GtkConstraint.
Элементы
GTK_CONSTRAINT_ATTRIBUTE_NONE | Нет атрибута, используется для константных отношений | |
GTK_CONSTRAINT_ATTRIBUTE_LEFT | Левая граница виджета, независимо от направления текста | |
GTK_CONSTRAINT_ATTRIBUTE_RIGHT | Правая граница виджета, независимо от направления текста | |
GTK_CONSTRAINT_ATTRIBUTE_TOP | Верхняя граница виджета | |
GTK_CONSTRAINT_ATTRIBUTE_BOTTOM | Нижняя граница виджета | |
GTK_CONSTRAINT_ATTRIBUTE_START | Ведущая граница виджета, зависящая от направления текста; эквивалентно | |
GTK_CONSTRAINT_ATTRIBUTE_END | Замыкающая граница виджета, зависящая от направления текста; эквивалентно | |
GTK_CONSTRAINT_ATTRIBUTE_WIDTH | Ширина виджета | |
GTK_CONSTRAINT_ATTRIBUTE_HEIGHT | Высота виджета | |
GTK_CONSTRAINT_ATTRIBUTE_CENTER_X | Центр виджета по горизонтальной оси | |
GTK_CONSTRAINT_ATTRIBUTE_CENTER_Y | Центр виджета по вертикальной оси | |
GTK_CONSTRAINT_ATTRIBUTE_BASELINE | Базовая линия виджета |
перечисление GtkConstraintRelation
Отношение между двумя членами ограничения.
Элементы
GTK_CONSTRAINT_RELATION_LE | Меньше или равно | |
GTK_CONSTRAINT_RELATION_EQ | Равно | |
GTK_CONSTRAINT_RELATION_GE | Больше или равно |
перечисление GtkConstraintStrength
Сила ограничения, выраженная как символическая константа.
Сила ограничения GtkConstraint может быть выражена любым положительным целым числом; значения этого перечисления могут быть использованы для повышения удобочитаемости.
Элементы
GTK_CONSTRAINT_STRENGTH_REQUIRED | Ограничение обязательно для решения макета | |
GTK_CONSTRAINT_STRENGTH_STRONG | Сильное ограничение | |
GTK_CONSTRAINT_STRENGTH_MEDIUM | Среднее ограничение | |
GTK_CONSTRAINT_STRENGTH_WEAK | Слабое ограничение |
Подробное описание свойств
Свойство “constant”
“constant” double
Значение константы, которое добавляется к “source-attribute”.
Владелец: GtkConstraint
Флаги: Чтение / Запись / Только для создания
Значение по умолчанию: 0
Свойство “multiplier”
“multiplier” double
Коэффициент умножения, применяемый к “source-attribute”.
Владелец: GtkConstraint
Флаги: Чтение / Запись / Только для создания
Значение по умолчанию: 1
Свойство “relation”
“relation” GtkConstraintRelation
Операционное соотношение между членами ограничения.
Владелец: GtkConstraint
Флаги: Чтение / Запись / Только для создания
Значение по умолчанию: GTK_CONSTRAINT_RELATION_EQ
Свойство “source”
“source” GtkConstraintTarget *
Источник ограничения.
Ограничение установит “target-attribute” целевого элемента, используя “source-attribute” источника.
Владелец: GtkConstraint
Флаги: Чтение / Запись / Только для создания
Свойство “source-attribute”
“source-attribute” GtkConstraintAttribute
Атрибут “source”, считываемый ограничением.
Владелец: GtkConstraint
Флаги: Чтение / Запись / Только для создания
Значение по умолчанию: GTK_CONSTRAINT_ATTRIBUTE_NONE
Свойство “strength”
“strength” int
Сила ограничения.
Сила может быть выражена либо одним из символьных значений перечисления GtkConstraintStrength, либо любым положительным целым значением.
Владелец: GtkConstraint
Флаги: Чтение / Запись / Только для создания
Допустимые значения: [0,1001001000]
Значение по умолчанию: 1001001000
Свойство “target”
“target” GtkConstraintTarget *
Целевой элемент ограничения.
Ограничение установит “target-attribute” целевого элемента, используя “source-attribute” источника виджета.
Владелец: GtkConstraint
Флаги: Чтение / Запись / Только для создания
Свойство “target-attribute”
“target-attribute” GtkConstraintAttribute
Атрибут “target”, устанавливаемый ограничением.
Владелец: GtkConstraint
Флаги: Чтение / Запись / Только для создания
Значение по умолчанию: GTK_CONSTRAINT_ATTRIBUTE_NONE
© 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/GtkConstraint.html