table of contents
Prima::Dialog::ColorDialog(3) | User Contributed Perl Documentation | Prima::Dialog::ColorDialog(3) |
NAME¶
Prima::Dialog::ColorDialog - standard color selection facilities
SYNOPSIS¶
use Prima qw(Dialog::ColorDialog Application); my $p = Prima::Dialog::ColorDialog-> new( quality => 1, ); printf "color: %06x", $p-> value if $p-> execute == mb::OK;
DESCRIPTION¶
The module contains two packages, "Prima::Dialog::ColorDialog" and "Prima::ColorComboBox", used as standard tools for the interactive color selection. "Prima::ColorComboBox" is a modified combo widget that provides selecting colors from a predefined palette, but also can invoke a "Prima::Dialog::ColorDialog" window.
Prima::Dialog::ColorDialog¶
Properties¶
- grayscale BOOLEAN
- If set, allows only gray colors
- quality BOOLEAN
- The setting can increase the visual quality of the dialog if run on
paletted displays.
Default value: 0
- value COLOR
- Selects the color represented by the color wheel and other dialog
controls.
Default value: "cl::White"
Methods¶
- hsv2rgb HUE, SATURATION, LUMINOSITY
- Converts a color from HSV to RGB format and returns three 8-bit integer values, red, green, and blue components.
- rgb2hsv RED, GREEN, BLUE
- Converts color from RGB to HSV format and returns three numerical values, hue, saturation, and luminosity components.
- xy2hs X, Y, RADIUS
- Maps X and Y coordinate values onto a color wheel with RADIUS in pixels. The code uses RADIUS = 119 for mouse position coordinate mapping. Returns three values, - hue, saturation, and error flag. If the error flag is set, the conversion is failed.
- hs2xy HUE, SATURATION
- Maps hue and saturation onto a 256-pixel wide color wheel, and returns X and Y coordinates of the corresponding point.
- create_wheel SHADES, BACK_COLOR
- Creates a color wheel with the number of SHADES given, drawn on a BACK_COLOR background. Returns a "Prima::DeviceBitmap" object.
- create_wheel_shape SHADES
- Creates a circular 1-bit mask with a radius derived from SHAPES. SHAPES must be the same as passed to create_wheel. Returns a "Prima::Image" object.
Events¶
- BeginDragColor $PROPERTY
- Called when the user starts dragging a color from the color wheel by the
left mouse button and an optional combination of Alt, Ctrl, and Shift
keys. $PROPERTY is one of the
"Prima::Widget" color properties, and
depends on a combination of the following keys:
Alt backColor Ctrl color Alt+Shift hiliteBackColor Ctrl+Shift hiliteColor Ctrl+Alt disabledColor Ctrl+Alt+Shift disabledBackColor
The default action reflects the property to be changed in the dialog title
- Change
- The notification is called when the value property is changed, either interactively or as a result of a direct call.
- EndDragColor $PROPERTY, $WIDGET
- Called when the user releases the mouse button over a Prima widget. The default action sets "$WIDGET->$PROPERTY" to the selected color value.
Variables¶
- $colorWheel
- Contains the cached result of the create_wheel method.
- $colorWheelShape
- Contains the cached result of the create_wheel_shape method.
Prima::ColorComboBox¶
Events¶
- Colorify INDEX, COLOR_PTR
- "nt::Action" callback, designed to map combo palette index into an RGB color. INDEX is an integer from 0 to colors - 1, COLOR_PTR is a reference to the result scalar where the notification is expected to store the resulting color.
Properties¶
- colors INTEGER
- Defines the amount of colors in the fixed palette of the combo box.
- grayscale BOOLEAN
- If set, allows only gray colors
- value COLOR
- Contains the color selection as a 24-bit integer value.
SEE ALSO¶
Prima, Prima::ComboBox, examples/cv.pl.
AUTHOR¶
Dmitry Karasik, <dmitry@karasik.eu.org>.
2024-02-01 | perl v5.38.2 |