GtkColorChooser
GtkColorChooser — Интерфейс, реализуемый виджетами для выбора цветов
Функции
| void | gtk_color_chooser_get_rgba () |
| void | gtk_color_chooser_set_rgba () |
| gboolean | gtk_color_chooser_get_use_alpha () |
| void | gtk_color_chooser_set_use_alpha () |
| void | gtk_color_chooser_add_palette () |
| void | gtk_hsv_to_rgb () |
| void | gtk_rgb_to_hsv () |
Сигналы
| void | color-activated | Выполнять сначала |
Типы и значения
Иерархия объектов
GInterface ╰── GtkColorChooser
Предварительные условия
GtkColorChooser требует GObject.
Известные реализации
GtkColorChooser реализуется GtkColorButton, GtkColorChooserDialog и GtkColorChooserWidget.
Включения
#include <gtk/gtk.h>
Описание
GtkColorChooser — это интерфейс, реализуемый виджетами для выбора цветов. В зависимости от ситуации, цвета могут иметь альфа-канал (прозрачность).
В GTK основными виджетами, реализующими этот интерфейс, являются GtkColorChooserWidget, GtkColorChooserDialog и GtkColorButton.
Функции
gtk_color_chooser_get_rgba ()
void gtk_color_chooser_get_rgba (GtkColorChooser *chooser,GdkRGBA *color);
Получает текущий выбранный цвет.
Параметры
chooser | ||
color | a GdkRGBA для заполнения текущим цветом. | [out] |
gtk_color_chooser_set_rgba ()
void gtk_color_chooser_set_rgba (GtkColorChooser *chooser,const GdkRGBA *color);
Устанавливает цвет.
Параметры
chooser | ||
color | новый цвет |
gtk_color_chooser_get_use_alpha ()
gboolean
gtk_color_chooser_get_use_alpha (GtkColorChooser *chooser); Возвращает, отображает ли цветовой выборщик канал альфа.
Параметры
chooser |
Возвращает
TRUE если цветовой выборщик использует канал альфа, FALSE если нет
gtk_color_chooser_set_use_alpha ()
void gtk_color_chooser_set_use_alpha (GtkColorChooser *chooser,gboolean use_alpha);
Устанавливает, использовать ли цветовому выборщику канал альфа.
Параметры
chooser | ||
use_alpha |
|
gtk_color_chooser_add_palette ()
void gtk_color_chooser_add_palette (GtkColorChooser *chooser,GtkOrientation orientation,int colors_per_line,int n_colors,GdkRGBA *colors);
Добавляет палитру в цветовой выборщик. Если orientation горизонтальная, цвета группируются в строки, по colors_per_line цветов в каждой строке. Если horizontal FALSE, цвета группируются в столбцы.
По умолчанию палитра цветов GtkColorChooserWidget содержит 27 цветов, организованных в столбцы по 3 цвета. По умолчанию палитра серых цветов содержит 9 оттенков серого в одной строке.
Макет виджета цветового выбора лучше всего работает, когда палитры имеют 9-10 столбцов.
Первый вызов этой функции удаляет стандартные палитры цветов и серого из цветового выборщика.
Если colors NULL, удаляет все ранее добавленные палитры.
Параметры
chooser | ||
orientation |
| |
colors_per_line | количество цветов для отображения в каждой строке/столбце | |
n_colors | общее количество элементов в | |
colors | цвета палитры или | [allow-none][array length=n_colors] |
gtk_hsv_to_rgb ()
void
gtk_hsv_to_rgb (float h,
float s,
float v,
float *r,
float *g,
float *b); Преобразует цвет из пространства HSV в RGB.
Входные значения должны быть в диапазоне [0.0, 1.0]; выходные значения будут в том же диапазоне.
Параметры
h | Оттенок | |
s | Насыщенность | |
v | Значение | |
r | Возвращаемое значение для красного компонента. | [out] |
g | Возвращаемое значение для зелёного компонента. | [out] |
b | Возвращаемое значение для синего компонента. | [out] |
gtk_rgb_to_hsv ()
void
gtk_rgb_to_hsv (float r,
float g,
float b,
float *h,
float *s,
float *v); Преобразует цвет из пространства RGB в HSV.
Входные значения должны быть в диапазоне [0.0, 1.0]; выходные значения будут в том же диапазоне.
Параметры
r | Красный | |
g | Зелёный | |
b | Синий | |
h | Возвращаемое значение для компонента оттенка. | [out] |
s | Возвращаемое значение для компонента насыщенности. | [out] |
v | Возвращаемое значение для компонента значения. | [out] |
Типы и значения
GtkColorChooser
typedef struct _GtkColorChooser GtkColorChooser;
Подробное описание свойств
Свойство “rgba”
“rgba” GdkRGBA *
Свойство ::rgba содержит текущий выбранный цвет в виде структуры GdkRGBA. Свойство может быть установлено для изменения текущего выбора программно.
Владелец: GtkColorChooser
Флаги: Чтение / Запись
Свойство “use-alpha”
“use-alpha” gboolean
Когда ::use-alpha TRUE, цвета могут иметь информацию об альфа-канале (прозрачность). Когда это FALSE, структура GdkRGBA, полученная через свойство “rgba”, будет принудительно иметь alpha == 1.
Ожидается, что реализации будут показывать альфа-канал, рендеринга цвета поверх неравномерного фона (например, шахматной доски).
Владелец: GtkColorChooser
Флаги: Чтение / Запись
Значение по умолчанию: TRUE
Сведения о сигналах
Сигнал “color-activated”
void user_function (GtkColorChooser *chooser, GdkRGBA *color, gpointer user_data)
Выдается при активации цвета в диалоге выбора цвета. Это обычно происходит, когда пользователь нажимает на образец цвета или выбирает цвет и нажимает одну из клавиш Пробел, Shift+Пробел, Возврат или Enter.
Параметры
chooser | объект, получивший сигнал | |
color | цвет | |
user_data | данные пользователя, заданные при подключении обработчика сигнала. |
Флаги: Выполняется первым
См. также
GtkColorChooserDialog, GtkColorChooserWidget, GtkColorButton
© 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/GtkColorChooser.html