GtkRange
GtkRange — Базовый класс для виджетов, визуализирующих регулировку
Функции
Свойства
| GtkAdjustment * | adjustment | Чтение / Запись / Создание |
| double | fill-level | Чтение / Запись |
| gboolean | inverted | Чтение / Запись |
| GtkSensitivityType | lower-stepper-sensitivity | Чтение / Запись |
| gboolean | restrict-to-fill-level | Чтение / Запись |
| int | round-digits | Чтение / Запись |
| gboolean | show-fill-level | Чтение / Запись |
| GtkSensitivityType | upper-stepper-sensitivity | Чтение / Запись |
Свойства стиля
| int | смещение стрелки по оси X | Чтение |
| int | смещение стрелки по оси Y | Чтение |
| float | масштабирование стрелки | Чтение |
| int | ширина ползунка | Чтение |
| int | размер шага | Чтение |
| int | расстояние между шагами | Чтение |
| int | граница желоба | Чтение |
| gboolean | желоб под шагами | Чтение |
Сигналы
| void | установить границы | Выполнить последним |
| gboolean | изменение значения | Выполнить последним |
| void | перемещение ползунка | Действие |
| void | изменение значения | Выполнить последним |
Типы и значения
| struct | GtkRange |
| enum | GtkSensitivityType |
Иерархия объектов
GObject
╰── GInitiallyUnowned
╰── GtkWidget
╰── GtkRange
├── GtkScale
╰── GtkScrollbar
Реализованные интерфейсы
GtkRange реализует AtkImplementorIface, GtkBuildable и GtkOrientable.
Включаемые файлы
#include <gtk/gtk.h>
Описание
GtkRange — это базовый класс для виджетов, которые визуализируют регулировку, например, GtkScale или GtkScrollbar.
Помимо сигналов для мониторинга параметров регулировки, GtkRange предоставляет свойства и методы для влияния на чувствительность «шагов». Он также предоставляет свойства и методы для задания «уровня заполнения» на виджетах диапазона. См. gtk_range_set_fill_level().
Функции
gtk_range_get_fill_level ()
gdouble
gtk_range_get_fill_level (GtkRange *range); Получает текущее положение индикатора уровня заполнения.
Параметры
range | A GtkRange |
Возвращает
Текущий уровень заполнения
Since: 2.12
gtk_range_get_restrict_to_fill_level ()
gboolean
gtk_range_get_restrict_to_fill_level (GtkRange *range); Получает, ограничен ли диапазон уровнем заполнения.
Параметры
range | A GtkRange |
Возвращает
TRUE если range ограничен уровнем заполнения.
Since: 2.12
gtk_range_get_show_fill_level ()
gboolean
gtk_range_get_show_fill_level (GtkRange *range); Получает, отображает ли диапазон графически уровень заполнения.
Параметры
range | A GtkRange |
Возвращает
TRUE если range отображает уровень заполнения.
Since: 2.12
gtk_range_set_fill_level ()
void gtk_range_set_fill_level (GtkRange *range,gdouble fill_level);
Устанавливает новое положение индикатора уровня заполнения.
«Уровень заполнения» лучше всего описывается на примере его наиболее распространенного применения — индикатора предварительной буферизации в плеере потокового видео. В этом случае значение диапазона будет указывать текущее положение воспроизведения, а уровень заполнения — положение, до которого файл/поток был загружен.
Это количество предварительной буферизации может отображаться в канавке диапазона и стилизуется отдельно от канавки. Для включения отображения уровня заполнения используйте gtk_range_set_show_fill_level(). По умолчанию диапазон не отображает уровень заполнения.
Кроме того, можно ограничить положение ползунка диапазона значениями, которые меньше уровня заполнения. Это контролируется gtk_range_set_restrict_to_fill_level() и по умолчанию включено.
Параметры
range | a GtkRange | |
fill_level | новое положение индикатора уровня заполнения |
Since: 2.12
gtk_range_set_restrict_to_fill_level ()
void gtk_range_set_restrict_to_fill_level (GtkRange *range,gboolean restrict_to_fill_level);
Устанавливает, ограничен ли ползунок уровнем заполнения. См. gtk_range_set_fill_level() для общего описания концепции уровня заполнения.
Параметры
range | A GtkRange | |
restrict_to_fill_level | Ограничивает ли уровень заполнения перемещение ползунка. |
Since: 2.12
gtk_range_set_show_fill_level ()
void gtk_range_set_show_fill_level (GtkRange *range,gboolean show_fill_level);
Устанавливает, отображается ли графический уровень заполнения в канавке. См. gtk_range_set_fill_level() для общего описания концепции уровня заполнения.
Параметры
range | A GtkRange | |
show_fill_level | Отображать ли графический индикатор уровня заполнения. |
Since: 2.12
gtk_range_get_adjustment ()
GtkAdjustment *
gtk_range_get_adjustment (GtkRange *range); Получает GtkAdjustment, который является объектом «модели» для GtkRange. Подробности см. в gtk_range_set_adjustment(). Значение возврата не имеет ссылки, поэтому не должно быть отменено.
Параметры
range | a GtkRange |
gtk_range_set_adjustment ()
void gtk_range_set_adjustment (GtkRange *range,GtkAdjustment *adjustment);
Устанавливает корректировку, которая будет использоваться в качестве объекта «модели» для этого виджета диапазона. Корректировка указывает текущее значение диапазона, минимальные и максимальные значения диапазона, приращения шага/страницы, используемые для клавишных комбинаций и прокрутки, и размер страницы. Размер страницы обычно равен 0 для GtkScale и отличен от нуля для GtkScrollbar, и указывает размер видимой области виджета, который прокручивается. Размер страницы влияет на размер ползунка полосы прокрутки.
Параметры
range | a GtkRange | |
adjustment |
gtk_range_get_inverted ()
gboolean
gtk_range_get_inverted (GtkRange *range); Получает значение, установленное с помощью gtk_range_set_inverted().
Параметры
range | a GtkRange |
Возвращает
TRUE если диапазон инвертирован
gtk_range_set_inverted ()
void gtk_range_set_inverted (GtkRange *range,gboolean setting);
Диапазоны обычно перемещаются от меньших значений к большим значениям, когда ползунок перемещается сверху вниз или слева направо. В инвертированных диапазонах большие значения находятся сверху или справа, а не снизу или слева.
Параметры
range | a GtkRange | |
setting |
|
gtk_range_get_value ()
gdouble
gtk_range_get_value (GtkRange *range); Получает текущее значение диапазона.
Параметры
range | a GtkRange |
Возвращает
Текущее значение диапазона.
gtk_range_set_value ()
void gtk_range_set_value (GtkRange *range,gdouble value);
Устанавливает текущее значение диапазона; если значение находится за пределами минимального или максимального значений диапазона, оно будет ограничено, чтобы соответствовать им. Диапазон излучает сигнал “value-changed”, если значение меняется.
Параметры
range | a GtkRange | |
value | новое значение диапазона |
gtk_range_set_increments ()
void gtk_range_set_increments (GtkRange *range,gdouble step,gdouble page);
Задает размер шага и страницы для диапазона. Размер шага используется, когда пользователь щелкает стрелки GtkScrollbar или перемещает GtkScale с помощью клавиш со стрелками. Размер страницы используется, например, при перемещении с помощью клавиш Page Up или Page Down.
Параметры
range | a GtkRange | |
step | размер шага | |
page | размер страницы |
gtk_range_set_range ()
void gtk_range_set_range (GtkRange *range,gdouble min,gdouble max);
Задает допустимые значения в GtkRange и ограничивает значение диапазона в пределах от min до max . (Если диапазон имеет ненулевой размер страницы, он ограничивается значениями от min до max - размер страницы.)
Параметры
range | a GtkRange | |
min | минимальное значение диапазона | |
max | максимальное значение диапазона |
gtk_range_get_round_digits ()
gint
gtk_range_get_round_digits (GtkRange *range); Возвращает количество знаков после запятой, до которых должно быть округлено значение при его изменении. См. “change-value”.
Параметры
range | a GtkRange |
Возвращаемое значение
количество знаков для округления
С версии: 2.24
gtk_range_set_round_digits ()
void gtk_range_set_round_digits (GtkRange *range,gint round_digits);
Задает количество знаков после запятой, до которых должно быть округлено значение при его изменении. См. “change-value”.
Параметры
range | a GtkRange | |
round_digits | точность в знаках после запятой или -1 |
С версии: 2.24
gtk_range_set_lower_stepper_sensitivity ()
void gtk_range_set_lower_stepper_sensitivity (GtkRange *range,GtkSensitivityType sensitivity);
Задает политику чувствительности для шагомера, указывающего на «нижний» конец регулировки GtkRange.
Параметры
range | a GtkRange | |
sensitivity | политика чувствительности нижнего шагомера. |
С версии: 2.10
gtk_range_get_lower_stepper_sensitivity ()
GtkSensitivityType
gtk_range_get_lower_stepper_sensitivity
(GtkRange *range); Возвращает политику чувствительности для шагомера, указывающего на «нижний» конец регулировки GtkRange.
Параметры
range | a GtkRange |
Возвращаемое значение
политика чувствительности нижнего шагомера.
С версии: 2.10
gtk_range_set_upper_stepper_sensitivity ()
void gtk_range_set_upper_stepper_sensitivity (GtkRange *range,GtkSensitivityType sensitivity);
Задает политику чувствительности для шагомера, указывающего на «верхний» конец регулировки GtkRange.
Параметры
range | a GtkRange | |
sensitivity | политика чувствительности верхнего шагомера. |
С версии: 2.10
gtk_range_get_upper_stepper_sensitivity ()
GtkSensitivityType
gtk_range_get_upper_stepper_sensitivity
(GtkRange *range); Возвращает политику чувствительности для шагомера, указывающего на «верхний» конец регулировки GtkRange.
Параметры
range | a GtkRange |
Возвращаемое значение
политика чувствительности верхнего шагомера.
С версии: 2.10
gtk_range_get_flippable ()
gboolean
gtk_range_get_flippable (GtkRange *range); Возвращает значение, установленное функцией gtk_range_set_flippable().
Параметры
range | a GtkRange |
Возвращаемое значение
TRUE если диапазон инвертируемый
С версии: 2.18
gtk_range_set_flippable ()
void gtk_range_set_flippable (GtkRange *range,gboolean flippable);
Если диапазон инвертируемый, он изменит свое направление, если он горизонтальный и его направление — GTK_TEXT_DIR_RTL.
См. gtk_widget_get_direction().
Параметры
range | a GtkRange | |
flippable |
|
С версии: 2.18
gtk_range_get_min_slider_size ()
gint
gtk_range_get_min_slider_size (GtkRange *range); gtk_range_get_min_slider_size устарела с версии 3.20 и не должна использоваться в новом коде.
Используйте свойства CSS min-height/min-width для узла ползунка.
Эта функция полезна в основном для подклассов GtkRange.
См. gtk_range_set_min_slider_size().
Параметры
range | a GtkRange |
Возвращаемое значение
Минимальный размер ползунка диапазона.
С версии: 2.20
gtk_range_get_range_rect ()
void gtk_range_get_range_rect (GtkRange *range,GdkRectangle *range_rect);
Эта функция возвращает область, которая содержит канал диапазона и его шагомеры, в координатах widget->window.
Эта функция полезна в основном для подклассов GtkRange.
Параметры
range | a GtkRange | |
range_rect | местоположение для возврата прямоугольника диапазона. | [out] |
С версии: 2.20
gtk_range_get_slider_range ()
void gtk_range_get_slider_range (GtkRange *range,gint *slider_start,gint *slider_end);
Эта функция возвращает диапазон ползунка по длинной оси в координатах окна виджета.
Эта функция полезна главным образом для подклассов GtkRange.
Параметры
range | a GtkRange | |
slider_start | место возврата для начала ползунка, или | [out][allow-none] |
slider_end | место возврата для конца ползунка, или | [out][allow-none] |
С: 2.20
gtk_range_get_slider_size_fixed ()
gboolean
gtk_range_get_slider_size_fixed (GtkRange *range); Эта функция полезна главным образом для подклассов GtkRange.
См. gtk_range_set_slider_size_fixed().
Параметры
range | a GtkRange |
Возвращаемое значение
является ли размер ползунка диапазона фиксированным.
С: 2.20
gtk_range_set_min_slider_size ()
void gtk_range_set_min_slider_size (GtkRange *range,gint min_size);
gtk_range_set_min_slider_size устарела с версии 3.20 и не должна использоваться в новом коде.
Используйте свойства min-height/min-width CSS для узла ползунка.
Устанавливает минимальный размер ползунка диапазона.
Эта функция полезна главным образом для подклассов GtkRange.
Параметры
range | a GtkRange | |
min_size | Минимальный размер ползунка |
С: 2.20
gtk_range_set_slider_size_fixed ()
void gtk_range_set_slider_size_fixed (GtkRange *range,gboolean size_fixed);
Устанавливает, имеет ли ползунок диапазона фиксированный размер или размер, зависящий от размера страницы настройки.
Эта функция полезна главным образом для подклассов GtkRange.
Параметры
range | a GtkRange | |
size_fixed |
|
С: 2.20
Типы и значения
struct GtkRange
struct GtkRange;
перечисление GtkSensitivityType
Определяет, как GTK+ обрабатывает чувствительность стрелок шага в конце виджетов диапазона.
Элементы
GTK_SENSITIVITY_AUTO | Стрелка становится неактивной, если ползунок находится в конце | |
GTK_SENSITIVITY_ON | Стрелка всегда активна | |
GTK_SENSITIVITY_OFF | Стрелка всегда неактивна |
Подробности свойств
Свойство “adjustment”
“adjustment” GtkAdjustment *
GtkAdjustment, содержащий текущее значение этого объекта диапазона.
Владелец: GtkRange
Флаги: Чтение / Запись / Создание
Свойство “fill-level”
“fill-level” double
Уровень заполнения (например, предварительная буферизация сетевого потока). См. gtk_range_set_fill_level().
Владелец: GtkRange
Флаги: Чтение / Запись
Значение по умолчанию: 1.79769e+308
С: 2.12
Свойство “inverted”
“inverted” gboolean
Инвертировать направление перемещения ползунка для увеличения значения диапазона.
Владелец: GtkRange
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “lower-stepper-sensitivity”
“lower-stepper-sensitivity” GtkSensitivityType
Политика чувствительности шагового переключателя, указывающего на нижнюю сторону настройки.
Владелец: GtkRange
Флаги: Чтение / Запись
Значение по умолчанию: GTK_SENSITIVITY_AUTO
Свойство “restrict-to-fill-level”
“restrict-to-fill-level” gboolean
Свойство restrict-to-fill-level контролирует, ограничено ли перемещение ползунка верхним пределом, установленным уровнем заполнения. См. gtk_range_set_restrict_to_fill_level().
Владелец: GtkRange
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
С: 2.12
Свойство “round-digits”
“round-digits” int
Количество знаков после запятой для округления значения при изменении или -1. См. “изменение-значения”.
Владелец: GtkRange
Флаги: Чтение / Запись
Допустимые значения: >= -1
Значение по умолчанию: -1
С: 2.24
Свойство “show-fill-level”
“show-fill-level” gboolean
Свойство show-fill-level управляет отображением графики индикатора уровня заполнения на желобе. См. gtk_range_set_show_fill_level().
Владелец: GtkRange
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
С: 2.12
Свойство “upper-stepper-sensitivity”
“upper-stepper-sensitivity” GtkSensitivityType
Политика чувствительности шагового переключателя, указывающего на верхнюю сторону настройки.
Владелец: GtkRange
Флаги: Чтение / Запись
Значение по умолчанию: GTK_SENSITIVITY_AUTO
Подробное описание свойств стиля
Свойство стиля “arrow-displacement-x”
“arrow-displacement-x” int
Насколько в направлении x необходимо сдвинуть стрелку при нажатии на кнопку.
GtkRange:arrow-displacement-x устарело с версии 3.20 и не должно использоваться в новом коде.
Значение этого свойства стиля игнорируется.
Владелец: GtkRange
Флаги: Чтение
Значение по умолчанию: 0
Свойство стиля “arrow-displacement-y”
“arrow-displacement-y” int
Насколько в направлении y необходимо сдвинуть стрелку при нажатии на кнопку.
GtkRange:arrow-displacement-y устарело с версии 3.20 и не должно использоваться в новом коде.
Значение этого свойства стиля игнорируется.
Владелец: GtkRange
Флаги: Чтение
Значение по умолчанию: 0
Свойство стиля “arrow-scaling”
“arrow-scaling” float
Пропорция размера стрелки относительно размера кнопки прокрутки.
GtkRange:arrow-scaling устарело с версии 3.20 и не должно использоваться в новом коде.
Используйте min-width/min-height для узла "button" вместо этого. Значение этого свойства стиля игнорируется.
Владелец: GtkRange
Флаги: Чтение
Допустимые значения: [0,1]
Значение по умолчанию: 0.5
С версии: 2.14
Свойство стиля “slider-width”
“slider-width” int
Ширина ползунка или бегунка шкалы.
GtkRange:slider-width устарело с версии 3.20 и не должно использоваться в новом коде.
Используйте CSS-свойства min-height/min-width для элемента ползунка. Значение этого свойства стиля игнорируется.
Владелец: GtkRange
Флаги: Чтение
Допустимые значения: >= 0
Значение по умолчанию: 14
Свойство стиля “stepper-size”
“stepper-size” int
Длина кнопок шагов на концах.
GtkRange:stepper-size устарело с версии 3.20 и не должно использоваться в новом коде.
Используйте CSS-свойства min-height/min-width для элементов шага. Значение этого свойства стиля игнорируется.
Владелец: GtkRange
Флаги: Чтение
Допустимые значения: >= 0
Значение по умолчанию: 14
Свойство стиля “stepper-spacing”
“stepper-spacing” int
Отступ между кнопками шагов и ползунком. Обратите внимание, что отступ кнопок шагов не повлияет, если нет кнопок шагов.
GtkRange:stepper-spacing устарело с версии 3.20 и не должно использоваться в новом коде.
Используйте CSS-свойство margin для элементов шага. Значение этого свойства стиля игнорируется.
Владелец: GtkRange
Флаги: Чтение
Допустимые значения: >= 0
Значение по умолчанию: 0
Свойство стиля “trough-border”
“trough-border” int
Отступ между ползунком/кнопками шагов и внешним выступом желоба.
GtkRange:trough-border устарело с версии 3.20 и не должно использоваться в новом коде.
Используйте CSS-свойства margin/padding для элементов желоба и шага. Значение этого свойства стиля игнорируется.
Владелец: GtkRange
Флаги: Чтение
Допустимые значения: >= 0
Значение по умолчанию: 1
Свойство стиля “trough-under-steppers”
“trough-under-steppers” gboolean
Рисовать ли желоб по всей длине диапазона или исключить кнопки шагов и их отступы.
GtkRange:trough-under-steppers устарело с версии 3.20 и не должно использоваться в новом коде.
Значение этого свойства стиля игнорируется, и виджет будет вести себя так, как если бы оно было установлено в TRUE.
Владелец: GtkRange
Флаги: Чтение
Значение по умолчанию: TRUE
С версии: 2.10
Подробное описание сигналов
Сигнал “adjust-bounds”
void user_function (GtkRange *range, double value, gpointer user_data)
Выдаётся перед ограничением значения, чтобы дать приложению возможность настроить границы.
Параметры
range | the GtkRange получивший сигнал | |
value | значение до ограничения | |
user_data | данные пользователя, заданные при подключении обработчика сигналов. |
Флаги: Выполняется последним
Сигнал “change-value”
gboolean user_function (GtkRange *range, GtkScrollType scroll, double value, gpointer user_data)
Сигнал «изменение-значения» генерируется при выполнении действия прокрутки в диапазоне. Он позволяет приложению определить тип события прокрутки и новое значение. Приложение может обработать событие и вернуть TRUE, чтобы предотвратить дальнейшую обработку. Или, вернув FALSE, оно может передать событие другим обработчикам, пока не дойдёт до обработчика по умолчанию GTK+.
Параметр value не округлен. Приложение, которое переопределяет сигнал GtkRange::change-value, отвечает за ограничение значения до необходимого количества десятичных разрядов; обработчик по умолчанию GTK+ ограничивает значение на основе «округляемые-цифры».
Параметры
range | the GtkRange получивший сигнал | |
scroll | тип действия прокрутки, которое было выполнено | |
value | новое значение, полученное в результате действия прокрутки | |
user_data | данные пользователя, заданные при подключении обработчика сигналов. |
Возвращаемое значение
TRUE для предотвращения вызова других обработчиков сигнала, FALSE для дальнейшей передачи сигнала
Флаги: Выполняется последним
С версии: 2.6
Сигнал “move-slider”
void user_function (GtkRange *range, GtkScrollType step, gpointer user_data)
Виртуальная функция, перемещающая ползунок. Используется для нажатия клавиш.
Параметры
range | the GtkRange получивший сигнал | |
step | способ перемещения ползунка | |
user_data | данные пользователя, заданные при подключении обработчика сигналов. |
Флаги: Действие
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkRange.html