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 | Чтение |
Сигналы
Типы и значения
| структура | 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);
Устанавливает корректировку, которая будет использоваться как объект «модели» для этого виджета диапазона. Корректировка указывает текущее значение диапазона, минимальные и максимальные значения диапазона, приращения шага/страницы, используемые для клавишных сочетаний и прокрутки, и размер страницы. Размер страницы обычно равен 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”, если значение изменяется.
Параметры
диапазон | a GtkRange | |
значение | новое значение диапазона |
gtk_range_set_increments ()
void gtk_range_set_increments (GtkRange *range,gdouble step,gdouble page);
Устанавливает шаг и размер страницы для диапазона. Размер шага используется, когда пользователь щелкает стрелки GtkScrollbar или перемещает GtkScale с помощью клавиш со стрелками. Размер страницы используется, например, при перемещении с помощью клавиш Page Up или Page Down.
Параметры
диапазон | a GtkRange | |
шаг | размер шага | |
страница | размер страницы |
gtk_range_set_range ()
void gtk_range_set_range (GtkRange *range,gdouble min,gdouble max);
Устанавливает допустимые значения в GtkRange и ограничивает значение диапазона между min и max . (Если диапазон имеет ненулевой размер страницы, он ограничен между min и max - размером страницы.)
Параметры
диапазон | a GtkRange | |
мин | минимальное значение диапазона | |
макс | максимальное значение диапазона |
gtk_range_get_round_digits ()
gint
gtk_range_get_round_digits (GtkRange *range); Получает количество цифр для округления значения при изменении. См. “change-value”.
Параметры
диапазон | a GtkRange |
Возвращаемое значение
количество цифр для округления
С: 2.24
gtk_range_set_round_digits ()
void gtk_range_set_round_digits (GtkRange *range,gint round_digits);
Устанавливает количество цифр для округления значения при изменении. См. “change-value”.
Параметры
диапазон | 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.
Параметры
диапазон | a GtkRange | |
чувствительность | политика чувствительности нижнего шага. |
С: 2.10
gtk_range_get_lower_stepper_sensitivity ()
GtkSensitivityType
gtk_range_get_lower_stepper_sensitivity
(GtkRange *range); Получает политику чувствительности для шага, указывающего на «нижний» конец настройки GtkRange.
Параметры
диапазон | a GtkRange |
Возвращаемое значение
Политика чувствительности нижнего шага.
С: 2.10
gtk_range_set_upper_stepper_sensitivity ()
void gtk_range_set_upper_stepper_sensitivity (GtkRange *range,GtkSensitivityType sensitivity);
Устанавливает политику чувствительности для шага, указывающего на «верхний» конец настройки GtkRange.
Параметры
диапазон | a GtkRange | |
чувствительность | политика чувствительности верхнего шага. |
С: 2.10
gtk_range_get_upper_stepper_sensitivity ()
GtkSensitivityType
gtk_range_get_upper_stepper_sensitivity
(GtkRange *range); Получает политику чувствительности для шага, указывающего на «верхний» конец настройки GtkRange.
Параметры
диапазон | a GtkRange |
Возвращаемое значение
Политика чувствительности верхнего шага.
С: 2.10
gtk_range_get_flippable ()
gboolean
gtk_range_get_flippable (GtkRange *range); Получает значение, установленное с помощью gtk_range_set_flippable().
Параметры
диапазон | 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().
С: 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().
Параметры
диапазон | a GtkRange |
Возвращаемое значение
Минимальный размер ползунка диапазона.
С: 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
Типы и значения
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 | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Run Last
Сигнал “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 для дальнейшей передачи сигнала
Флаги: Run Last
С версии: 2.6
Сигнал “move-slider”
void user_function (GtkRange *range, GtkScrollType step, gpointer user_data)
Виртуальная функция, перемещающая ползунок. Используется для горячих клавиш.
Параметры
range | диапазон 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.22/GtkRange.html