GtkRange
GtkRange — Базовый класс для виджетов, визуализирующих настройку
Функции
Свойства
| GtkAdjustment * | adjustment | Чтение / Запись / Создание |
| gdouble | fill-level | Чтение / Запись |
| gboolean | inverted | Чтение / Запись |
| GtkSensitivityType | lower-stepper-sensitivity | Чтение / Запись |
| gboolean | restrict-to-fill-level | Чтение / Запись |
| gint | round-digits | Чтение / Запись |
| gboolean | show-fill-level | Чтение / Запись |
| GtkSensitivityType | upper-stepper-sensitivity | Чтение / Запись |
Стилизованные свойства
| gint | arrow-displacement-x | Чтение |
| gint | arrow-displacement-y | Чтение |
| gfloat | arrow-scaling | Чтение |
| gint | slider-width | Чтение |
| gint | stepper-size | Чтение |
| gint | stepper-spacing | Чтение |
| gint | trough-border | Чтение |
| gboolean | trough-under-steppers | Чтение |
Сигналы
Типы и значения
| struct | GtkRange |
| перечисление | 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 |
Возвращает
Текущий уровень заполнения
С версии: 2.12
gtk_range_get_restrict_to_fill_level ()
gboolean
gtk_range_get_restrict_to_fill_level (GtkRange *range); Получает, ограничено ли значение диапазона уровнем заполнения.
Параметры
range | A GtkRange |
Возвращает
TRUE, если range ограничено уровнем заполнения.
С версии: 2.12
gtk_range_get_show_fill_level ()
gboolean
gtk_range_get_show_fill_level (GtkRange *range); Получает, отображается ли графически уровень заполнения диапазона.
Параметры
range | A GtkRange |
Возвращает
TRUE, если range отображает уровень заполнения.
С версии: 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 | новое положение индикатора уровня заполнения |
С версии: 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 | Ограничивает ли уровень заполнения движение ползунка. |
С версии: 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 | Отображать ли графический индикатор уровня заполнения. |
С версии: 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);
Устанавливает GtkAdjustment в качестве объекта «модели» для этого виджета диапазона. GtkAdjustment указывает текущее значение диапазона, минимальные и максимальные значения диапазона, приращения шага/страницы, используемые для горячих клавиш и прокрутки, и размер страницы. Размер страницы обычно равен 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);
Диапазоны обычно перемещаются от меньших к большим значениям, по мере того, как ползунок перемещается сверху вниз или слева направо. В инвертированных диапазонах большие значения находятся сверху или справа, а не снизу или слева.
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 |
Возвращаемое значение
количество цифр для округления
Since: 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 |
Since: 2.24
gtk_range_set_lower_stepper_sensitivity ()
void gtk_range_set_lower_stepper_sensitivity (GtkRange *range,GtkSensitivityType sensitivity);
Устанавливает политику чувствительности для шагомера, указывающего на «нижний» конец корректировки GtkRange.
Параметры
range | a GtkRange | |
sensitivity | политика чувствительности нижнего шагомера. |
Since: 2.10
gtk_range_get_lower_stepper_sensitivity ()
GtkSensitivityType
gtk_range_get_lower_stepper_sensitivity
(GtkRange *range); Получает политику чувствительности для шагомера, указывающего на «нижний» конец корректировки GtkRange.
Параметры
range | a GtkRange |
Возвращаемое значение
Политика чувствительности нижнего шагомера.
Since: 2.10
gtk_range_set_upper_stepper_sensitivity ()
void gtk_range_set_upper_stepper_sensitivity (GtkRange *range,GtkSensitivityType sensitivity);
Устанавливает политику чувствительности для шагомера, указывающего на «верхний» конец корректировки GtkRange.
Параметры
range | a GtkRange | |
sensitivity | политика чувствительности верхнего шагомера. |
Since: 2.10
gtk_range_get_upper_stepper_sensitivity ()
GtkSensitivityType
gtk_range_get_upper_stepper_sensitivity
(GtkRange *range); Получает политику чувствительности для шагомера, указывающего на «верхний» конец корректировки GtkRange.
Параметры
range | a GtkRange |
Возвращаемое значение
Политика чувствительности верхнего шагомера.
Since: 2.10
gtk_range_get_flippable ()
gboolean
gtk_range_get_flippable (GtkRange *range); Возвращает значение, установленное функцией gtk_range_set_flippable().
Параметры
range | a GtkRange |
Возвращаемое значение
TRUE, если диапазон может быть перевернут
Since: 2.18
gtk_range_set_flippable ()
void gtk_range_set_flippable (GtkRange *range,gboolean flippable);
Если диапазон может быть перевернут, он будет изменять своё направление, если он горизонтальный и его направление GTK_TEXT_DIR_RTL.
См. gtk_widget_get_direction().
Since: 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 и не должна использоваться в новом коде.
Используйте свойства min-height/min-width CSS для узла ползунка.
Эта функция полезна в основном для подклассов GtkRange.
См. gtk_range_set_min_slider_size().
Параметры
range | a GtkRange |
Возвращаемое значение
Минимальный размер ползунка диапазона.
Since: 2.20
gtk_range_get_range_rect ()
void gtk_range_get_range_rect (GtkRange *range,GdkRectangle *range_rect);
Эта функция возвращает область, содержащую желоб диапазона и его ползунки, в координатах окна виджета.
Эта функция полезна в основном для подклассов 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.
Параметры
С версии: 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.
С версии: 2.20
Типы и Значения
struct GtkRange
struct GtkRange;
перечисление GtkSensitivityType
Определяет, как GTK+ обрабатывает чувствительность стрелок ползунков на концах виджетов диапазона.
Элементы
GTK_SENSITIVITY_AUTO | Стрелка становится неактивной, если ползунок находится на конце | |
GTK_SENSITIVITY_ON | Стрелка всегда активна | |
GTK_SENSITIVITY_OFF | Стрелка всегда неактивна |
Подробности свойств
Свойство “adjustment”
“adjustment” GtkAdjustment *
GtkAdjustment, содержащий текущее значение этого объекта диапазона.
Флаги: Чтение / Запись / Конструирование
Свойство “fill-level”
“fill-level” gdouble
Уровень заполнения (например, предварительная буферизация сетевого потока). См. gtk_range_set_fill_level().
Флаги: Чтение / Запись
Значение по умолчанию: 1.79769e+308
С версии: 2.12
Свойство “inverted”
“inverted” gboolean
Инвертировать направление перемещения ползунка для увеличения значения диапазона.
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
Свойство “lower-stepper-sensitivity”
“lower-stepper-sensitivity” GtkSensitivityType
Политика чувствительности ползунка, указывающего на нижнюю сторону регулировки.
Флаги: Чтение / Запись
Значение по умолчанию: GTK_SENSITIVITY_AUTO
Свойство “restrict-to-fill-level”
“restrict-to-fill-level” gboolean
Свойство restrict-to-fill-level контролирует, ограничено ли перемещение ползунка верхней границей, заданной уровнем заполнения. См. gtk_range_set_restrict_to_fill_level().
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
С версии: 2.12
Свойство “round-digits”
“round-digits” gint
Количество цифр, до которых округляется значение при изменении, или -1. См. “change-value”.
Флаги: Чтение / Запись
Допустимые значения: >= -1
Значение по умолчанию: -1
С версии: 2.24
Свойство “show-fill-level”
“show-fill-level” gboolean
Свойство show-fill-level контролирует, отображаются ли графические индикаторы уровня заполнения на желобе. См. gtk_range_set_show_fill_level().
Флаги: Чтение / Запись
Значение по умолчанию: FALSE
С версии: 2.12
Свойство “upper-stepper-sensitivity”
“upper-stepper-sensitivity” GtkSensitivityType
Политика чувствительности ползунка, указывающего на верхнюю сторону регулировки.
Флаги: Чтение / Запись
Значение по умолчанию: GTK_SENSITIVITY_AUTO
Подробные сведения о свойствах стиля
Свойство стиля “arrow-displacement-x”
“arrow-displacement-x” gint
Насколько далеко в направлении оси x нужно сместить стрелку при нажатии на кнопку.
GtkRange:arrow-displacement-x устарело с версии 3.20 и не должно использоваться в новом коде.
Значение этого свойства стиля игнорируется.
Флаги: Чтение
Значение по умолчанию: 0
Свойство стиля “arrow-displacement-y”
“arrow-displacement-y” gint
Насколько далеко в направлении оси y нужно сместить стрелку при нажатии на кнопку.
GtkRange:arrow-displacement-y устарело с версии 3.20 и не должно использоваться в новом коде.
Значение этого свойства стиля игнорируется.
Флаги: Чтение
Значение по умолчанию: 0
Свойство стиля “arrow-scaling”
“arrow-scaling” gfloat
Пропорция размера стрелки относительно размера кнопки прокрутки.
GtkRange:arrow-scaling устарело с версии 3.20 и не должно использоваться в новом коде.
Используйте min-width/min-height для узла «button» вместо этого. Значение этого свойства стиля игнорируется.
Флаги: Чтение
Допустимые значения: [0,1]
Значение по умолчанию: 0,5
С версии: 2.14
Свойство стиля “slider-width”
“slider-width” gint
Ширина ползунка или бегунка шкалы.
GtkRange:slider-width устарело с версии 3.20 и не должно использоваться в новом коде.
Используйте CSS-свойства min-height/min-width для элемента ползунка. Значение этого свойства стиля игнорируется.
Флаги: Чтение
Допустимые значения: ≥ 0
Значение по умолчанию: 14
Свойство стиля “stepper-size”
“stepper-size” gint
Длина кнопок шагов в конце.
GtkRange:stepper-size устарело с версии 3.20 и не должно использоваться в новом коде.
Используйте CSS-свойства min-height/min-width для элементов шагов. Значение этого свойства стиля игнорируется.
Флаги: Чтение
Допустимые значения: ≥ 0
Значение по умолчанию: 14
Свойство стиля “stepper-spacing”
“stepper-spacing” gint
Интервал между кнопками шагов и ползунком. Обратите внимание, что stepper-spacing не будет иметь никакого эффекта, если шаги отсутствуют.
GtkRange:stepper-spacing устарело с версии 3.20 и не должно использоваться в новом коде.
Используйте CSS-свойство margin для элементов шагов. Значение этого свойства стиля игнорируется.
Флаги: Чтение
Допустимые значения: ≥ 0
Значение по умолчанию: 0
Свойство стиля “trough-border”
“trough-border” gint
Интервал между ползунком/шагами и внешним фланцем желоба.
GtkRange:trough-border устарело с версии 3.20 и не должно использоваться в новом коде.
Используйте CSS-свойства margin/padding для элементов желоба и шагов. Значение этого свойства стиля игнорируется.
Флаги: Чтение
Допустимые значения: ≥ 0
Значение по умолчанию: 1
Свойство стиля “trough-under-steppers”
“trough-under-steppers” gboolean
Определяет, нужно ли рисовать желоб по всей длине диапазона или исключить шаги и их отступы.
GtkRange:trough-under-steppers устарело с версии 3.20 и не должно использоваться в новом коде.
Значение этого свойства стиля игнорируется, и виджет будет вести себя так, как если бы оно было установлено в TRUE.
Флаги: Чтение
Значение по умолчанию: TRUE
С версии: 2.10
Подробные сведения о сигналах
Сигнал “adjust-bounds”
void user_function (GtkRange *range, gdouble value, gpointer user_data)
Издаётся перед ограничением значения, чтобы дать приложению возможность скорректировать пределы.
Параметры
range | элемент GtkRange, получивший сигнал | |
value | значение перед ограничением | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполнить последним
Сигнал “change-value”
gboolean user_function (GtkRange *range, GtkScrollType scroll, gdouble value, gpointer user_data)
Сигнал «change-value» излучается при выполнении действия прокрутки на диапазоне. Он позволяет приложению определить тип события прокрутки и результирующее новое значение. Приложение может обработать событие само и вернуть TRUE для предотвращения дальнейшей обработки. Или, вернув FALSE, оно может передать событие другим обработчикам, пока не будет достигнута обработка по умолчанию GTK+.
Параметр value не округляется. Приложение, которое переопределяет сигнал GtkRange::change-value, отвечает за ограничение значения до требуемого числа десятичных знаков; обработчик по умолчанию GTK+ ограничивает значение на основе «round-digits».
Использование стратегий отложенного обновления в переопределённом обработчике «change-value» недоступно.
Параметры
range | элемент GtkRange, получивший сигнал | |
scroll | тип действия прокрутки, которое было выполнено | |
value | новое значение, полученное в результате действия прокрутки | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Возвращаемое значение
TRUE для предотвращения вызова других обработчиков для сигнала, FALSE для дальнейшего распространения сигнала
Флаги: Выполнить последним
С версии: 2.6
Сигнал “move-slider”
void user_function (GtkRange *range, GtkScrollType step, gpointer user_data)
Виртуальная функция, перемещающая ползунок. Используется для нажатий клавиш.
Параметры
range | элемент GtkRange, получивший сигнал | |
step | как перемещать ползунок | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Действие
Сигнал “value-changed”
void user_function (GtkRange *range, gpointer user_data)
Издается, когда значение диапазона меняется.
Параметры
range | элемент GtkRange, получивший сигнал | |
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.20/GtkRange.html