ColorPicker

Наследует: VBoxContainer < BoxContainer < Container < Control < CanvasItem < Node < Object

Виджет, предоставляющий интерфейс для выбора или изменения цвета.

Описание

Виджет, предоставляющий интерфейс для выбора или изменения цвета. Он может дополнительно предоставлять такие функции, как сэмплер цвета (пипетка), цветовые режимы и предустановки.

Примечание: Этот элемент управления сам по себе является виджетом выбора цвета. Вы можете использовать ColorPickerButton вместо этого, если вам нужна кнопка, которая вызывает ColorPicker во всплывающем окне.

Обучающие материалы

Свойства

bool

can_add_swatches

true

Color

color

Color(1, 1, 1, 1)

ColorModeType

color_mode

0

bool

color_modes_visible

true

bool

deferred_mode

false

bool

edit_alpha

true

bool

edit_intensity

true

bool

hex_visible

true

PickerShapeType

picker_shape

0

bool

presets_visible

true

bool

sampler_visible

true

bool

sliders_visible

true

Методы

void

add_preset(color: Color)

void

add_recent_preset(color: Color)

void

erase_preset(color: Color)

void

erase_recent_preset(color: Color)

PackedColorArray

get_presets() const

PackedColorArray

get_recent_presets() const

Свойства темы

Color

focused_not_editing_cursor_color

Color(1, 1, 1, 0.275)

int

center_slider_grabbers

1

int

h_width

30

int

label_width

10

int

margin

4

int

sv_height

256

int

sv_width

256

Texture2D

add_preset

Texture2D

bar_arrow

Texture2D

color_hue

Texture2D

color_script

Texture2D

expanded_arrow

Texture2D

folded_arrow

Texture2D

menu_option

Texture2D

overbright_indicator

Texture2D

picker_cursor

Texture2D

picker_cursor_bg

Texture2D

sample_bg

Texture2D

sample_revert

Texture2D

screen_picker

Texture2D

shape_circle

Texture2D

shape_rect

Texture2D

shape_rect_wheel

StyleBox

picker_focus_circle

StyleBox

picker_focus_rectangle

StyleBox

sample_focus


Сигналы

color_changed(color: Color) 🔗

Излучается при изменении цвета.


preset_added(color: Color) 🔗

Выдается при добавлении пресета.


preset_removed(color: Color) 🔗

Выдается при удалении предустановки.


Перечисления

enum ColorModeType: 🔗

ColorModeType MODE_RGB = 0

Позволяет редактировать цвет с помощью ползунков Красный/Зеленый/Синий в цветовом пространстве sRGB.

ColorModeType MODE_HSV = 1

Позволяет редактировать цвет с помощью ползунков «Оттенок/Насыщенность/Значение».

ColorModeType MODE_RAW = 2

Устарело: This is replaced by MODE_LINEAR.

ColorModeType MODE_LINEAR = 2

Позволяет редактировать цвет с помощью ползунков Красный/Зеленый/Синий в линейном цветовом пространстве.

ColorModeType MODE_OKHSL = 3

Позволяет редактировать цвет с помощью ползунков Hue/Saturation/Lightness.

OKHSL — это новое цветовое пространство, похожее на HSL, но лучше соответствующее восприятию за счет использования цветового пространства Oklab, которое разработано для простоты использования, при этом хорошо предсказывая воспринимаемую светлоту, цветность и оттенок.

Цветовые пространства Okhsv и Okhsl


enum PickerShapeType: 🔗

PickerShapeType SHAPE_HSV_RECTANGLE = 0

Цветовая модель HSV — прямоугольное цветовое пространство.

PickerShapeType SHAPE_HSV_WHEEL = 1

Цветовая модель HSV — прямоугольное цветовое пространство с кругом.

PickerShapeType SHAPE_VHS_CIRCLE = 2

Круговое цветовое пространство HSV Color Model. Используйте Saturation в качестве радиуса.

PickerShapeType SHAPE_OKHSL_CIRCLE = 3

Круговое цветовое пространство модели HSL OK Color.

PickerShapeType SHAPE_NONE = 4

Форма цветового пространства и кнопка выбора формы скрыты. Невозможно выбрать из всплывающего окна форм.

PickerShapeType SHAPE_OK_HS_RECTANGLE = 5

Цветовая модель OKHSL — прямоугольник с постоянной яркостью.

PickerShapeType SHAPE_OK_HL_RECTANGLE = 6

Цветовая модель OKHSL — прямоугольник с постоянной насыщенностью.


Описания свойств

bool can_add_swatches = true 🔗

  • void set_can_add_swatches(value: bool)

  • bool are_swatches_enabled()

Если true, можно добавлять пресеты в Swatches. Если false, кнопка добавления пресетов отключена.


Color color = Color(1, 1, 1, 1) 🔗

  • void set_pick_color(value: Color)

  • Color get_pick_color()

Текущий выбранный цвет.


ColorModeType color_mode = 0 🔗

Текущий выбранный цветовой режим.


bool color_modes_visible = true 🔗

  • void set_modes_visible(value: bool)

  • bool are_modes_visible()

Если true, кнопки цветового режима видны.


bool deferred_mode = false 🔗

  • void set_deferred_mode(value: bool)

  • bool is_deferred_mode()

Если true, цвет будет применен только после того, как пользователь отпустит кнопку мыши, в противном случае он будет применен немедленно, даже при событии движения мыши (что может вызвать проблемы с производительностью).


bool edit_alpha = true 🔗

  • void set_edit_alpha(value: bool)

  • bool is_editing_alpha()

Если true, отображается ползунок альфа-канала (непрозрачность).


bool edit_intensity = true 🔗

  • void set_edit_intensity(value: bool)

  • bool is_editing_intensity()

Если true, отображается ползунок интенсивности. Интенсивность применяется следующим образом: цвет преобразуется в линейное кодирование, умножается на 2 ** интенсивность, а затем преобразуется обратно в нелинейное кодирование sRGB.


bool hex_visible = true 🔗

  • void set_hex_visible(value: bool)

  • bool is_hex_visible()

Если true, поле ввода шестнадцатеричного кода цвета будет видимо.


PickerShapeType picker_shape = 0 🔗

Форма представления цветового пространства.


bool presets_visible = true 🔗

  • void set_presets_visible(value: bool)

  • bool are_presets_visible()

Если true, отображаются предустановки «Образцы» и «Недавние цвета».


bool sampler_visible = true 🔗

  • void set_sampler_visible(value: bool)

  • bool is_sampler_visible()

Если true, отображаются цветовой сэмплер и предварительный просмотр цвета.


bool sliders_visible = true 🔗

  • void set_sliders_visible(value: bool)

  • bool are_sliders_visible()

Если true, цветовые ползунки видны.


Описания метода

void add_preset(color: Color) 🔗

Добавляет заданный цвет в список цветовых предустановок. Предустановки отображаются в палитре цветов, и пользователь может их выбрать.

Примечание: Список предустановок предназначен только для этой палитры цветов.


void add_recent_preset(color: Color) 🔗

Добавляет заданный цвет в список недавних предустановок цвета, чтобы его можно было выбрать позже. Недавние предустановки — это цвета, которые были выбраны недавно, новая предустановка автоматически создается и добавляется в недавние предустановки, когда вы выбираете новый цвет.

Примечание: Список недавних предустановок предназначен только для этого селектора цветов.


void erase_preset(color: Color) 🔗

Удаляет указанный цвет из списка цветовых предустановок данной палитры цветов.


void erase_recent_preset(color: Color) 🔗

Удаляет указанный цвет из списка последних предустановок цветов этой палитры цветов.


PackedColorArray get_presets() const 🔗

Возвращает список цветов в предустановках палитры цветов.


PackedColorArray get_recent_presets() const 🔗

Возвращает список цветов в последних предустановках палитры цветов.


Описания свойств темы

Color focused_not_editing_cursor_color = Color(1, 1, 1, 0.275) 🔗

Цвет прямоугольника или круга, нарисованного, когда часть фигуры выбора находится в фокусе, но не может быть отредактирована с помощью клавиатуры или джойстика. Отображается над фигурой выбора, поэтому следует использовать частично прозрачный цвет, чтобы фигура выбора оставалась видимой.


int center_slider_grabbers = 1 🔗

Переопределяет свойство темы Slider.center_grabber ползунков.


int h_width = 30 🔗

Ширина ползунка выбора оттенка.


int label_width = 10 🔗

Минимальная ширина цветных меток рядом с ползунками.


int margin = 4 🔗

Поле вокруг ColorPicker.


int sv_height = 256 🔗

Высота поля выбора значения насыщенности.


int sv_width = 256 🔗

Ширина поля выбора значения насыщенности.


Texture2D add_preset 🔗

Значок кнопки «Добавить предустановку».


Texture2D bar_arrow 🔗

Текстура для захвата стрел (arrow grabber).


Texture2D color_hue 🔗

Пользовательская текстура для ползунка выбора оттенка справа.


Texture2D color_script 🔗

Значок кнопки, переключающей цветной текст на шестнадцатеричный.


Texture2D expanded_arrow 🔗

Значок раскрывающегося меню предустановок цвета в развернутом виде.


Texture2D folded_arrow 🔗

Значок раскрывающегося меню предустановок цвета в сложенном виде.


Texture2D menu_option 🔗

Значок меню параметров предустановки цвета.


Texture2D overbright_indicator 🔗

Индикатор, используемый для сигнализации о том, что значение цвета находится за пределами диапазона 0-1.


Texture2D picker_cursor 🔗

Изображение, отображаемое поверх цветового поля/круга (в зависимости от picker_shape), обозначающее текущий выбранный цвет.


Texture2D picker_cursor_bg 🔗

Изображение заливки, отображаемое за курсором выбора.


Texture2D sample_bg 🔗

Фоновая панель для окна предварительного просмотра цвета (видима, когда цвет полупрозрачен).


Texture2D sample_revert 🔗

Значок кнопки возврата (виден в середине «старого» цвета, когда он отличается от текущего выбранного цвета). Этот значок модулируется темным цветом, если «старый» цвет достаточно яркий, поэтому значок должен быть ярким, чтобы обеспечить видимость в обоих сценариях.


Texture2D screen_picker 🔗

Значок кнопки выбора цвета экрана.


Texture2D shape_circle 🔗

Значок для круглой формы инструмента выбора.


Texture2D shape_rect 🔗

Значок для прямоугольных фигур выбора.


Texture2D shape_rect_wheel 🔗

Значок для прямоугольных форм колесного подборщика.


StyleBox picker_focus_circle 🔗

StyleBox, используемый, когда фокусируется на круглой части селектора. Отображается поверх формы селектора, поэтому следует использовать частично прозрачный StyleBox, чтобы форма селектора оставалась видимой. StyleBox, представляющий контур или подчеркивание, хорошо подходит для этой цели. Чтобы отключить визуальный эффект фокуса, назначьте ресурс StyleBoxEmpty. Обратите внимание, что отключение визуального эффекта фокуса навредит удобству использования навигации с помощью клавиатуры/контроллера, поэтому это не рекомендуется по соображениям доступности.


StyleBox picker_focus_rectangle 🔗

StyleBox, используемый, когда сфокусирована прямоугольная часть селектора. Отображается поверх формы селектора, поэтому следует использовать частично прозрачный StyleBox, чтобы форма селектора оставалась видимой. StyleBox, представляющий контур или подчеркивание, хорошо подходит для этой цели. Чтобы отключить визуальный эффект фокуса, назначьте ресурс StyleBoxEmpty. Обратите внимание, что отключение визуального эффекта фокуса навредит удобству использования навигации с помощью клавиатуры/контроллера, поэтому это не рекомендуется по соображениям доступности.


StyleBox sample_focus 🔗

StyleBox, используемый для старой части образца цвета, когда он сфокусирован. Отображается поверх образца, поэтому следует использовать частично прозрачный StyleBox, чтобы гарантировать, что форма выбора остается видимой. StyleBox, представляющий контур или подчеркивание, хорошо подходит для этой цели. Чтобы отключить визуальный эффект фокуса, назначьте ресурс StyleBoxEmpty. Обратите внимание, что отключение визуального эффекта фокуса навредит удобству использования навигации с помощью клавиатуры/контроллера, поэтому это не рекомендуется по соображениям доступности.