import type { ColorPickerButton } from "./ColorPickerButton"; import type { ISpritePointerEvent } from "../../core/render/Sprite"; import { Color } from "../../core/util/Color"; import { ListTemplate } from "../../core/util/List"; import { Button } from "../../core/render/Button"; import { Circle } from "../../core/render/Circle"; import { Container, IContainerEvents, IContainerPrivate, IContainerSettings } from "../../core/render/Container"; import { EditableLabel } from "../../core/render/EditableLabel"; import { Rectangle } from "../../core/render/Rectangle"; import { RoundedRectangle } from "../../core/render/RoundedRectangle"; import { Slider } from "../../core/render/Slider"; export interface IColorPickerSettings extends IContainerSettings { /** * Color picker button to use. */ colorButton?: ColorPickerButton; hue?: number; /** * Color of the color picker. */ color?: Color; /** * Opacity of the color. */ colorOpacity?: number; /** * Background color of the color picker. */ backgroundColor?: Color; } export interface IColorPickerPrivate extends IContainerPrivate { } export interface IColorPickerEvents extends IContainerEvents { colorchanged: { color?: Color; colorOpacity?: number; }; } export declare class ColorPicker extends Container { static className: string; static classNames: Array; _settings: IColorPickerSettings; _privateSettings: IColorPickerPrivate; _events: IColorPickerEvents; protected _currentRectangle: RoundedRectangle | undefined; _clickOverlay: Rectangle; readonly rectangles: ListTemplate; /** * Container for color gradients. */ gradientsContainer: Container; /** * Container for color gradients. * @ignore */ colorGradientsContainer: Container; /** * Rectangle that displays the color gradient. * @ignore */ colorRectangle: Rectangle; /** * Rectangle that displays the white overlay. * @ignore* */ colorRectangleWhiteOverlay: Rectangle; /** * Rectangle that displays the black overlay. * @ignore */ colorRectangleBlackOverlay: Rectangle; /** * Slider that displays the hue of the color. */ slider: Slider; /** * @ignore */ inputContainer: Container; /** * Button that shows color picker button. */ pickerButton: Button; /** * Button that allows to remove color. */ noColorButton: Button; /** * Editable label that allows to input color in hex format. */ colorInput: EditableLabel; /** * @ignore */ opacityContainer: Container; /** * Slider that allows to change opacity of the color. */ opacitySlider: Slider; /** * Circle that indicates the target color. */ targetCircle: Circle; /** * @ignore */ buttonsContainer: Container; /** * Button that allows to cancel color selection. */ cancelButton: Button; /** * Button that allows to confirm color selection. */ okButton: Button; protected _isColorDown: boolean; protected _isPicking: boolean; protected _isEditing: boolean; protected _previousColor: Color | undefined; protected _previousOpacity: number | undefined; protected _prevColor: Color | undefined; /** * @ignore */ protected _afterNew(): void; /** * @ignore */ _updateChildren(): void; /** * @ignore */ protected _handleDirtyHue(): void; /** * @ignore */ protected _handleTargetMove(e: ISpritePointerEvent): void; /** * @ignore */ protected _updateColor(): void; /** * @ignore */ protected _updateOpacitySliderGrip(): void; /** * Cancels color selection and restores previous color. */ cancel(): void; } //# sourceMappingURL=ColorPicker.d.ts.map