topic "Color widgets";
[2 $$0,0#00000000000000000000000000000000:Default]
[i448;a25;kKO9;2 $$1,0#37138531426314131252341829483380:class]
[l288;2 $$2,0#27521748481378242620020725143825:desc]
[0 $$3,0#96390100711032703541132217272105:end]
[H6;0 $$4,0#05600065144404261032431302351956:begin]
[i448;a25;kKO9;2 $$5,0#37138531426314131252341829483370:item]
[l288;a4;*@5;1 $$6,6#70004532496200323422659154056402:requirement]
[l288;i1121;b17;O9;~~~.1408;2 $$7,0#10431211400427159095818037425705:param]
[i448;b42;O9;2 $$8,8#61672508125594000341940100500538:tparam]
[b42;2 $$9,9#13035079074754324216151401829390:normal]
[{_}%EN-US 
[ {{10000@3 [s0; [*@(229)4 ColorPopUp]]}}&]
[s3;%- &]
[s1;:ColorPopUp`:`:class:%- [@(0.0.255)3 class][3 _][*3 ColorPopUp][3 _:_][@(0.0.255)3 public][3 _
][*@3;3 Ctrl]&]
[s9; This class implements pop`-up window for color`-selection.&]
[s0; &]
[s2; 
@@image:1100&1399
([encoded data, 64852 characters])
&]
[s0; &]
[s9; ColorPopUp calls [* WhenAction] Ctrl callback and sets modify 
flag whenever selected color changes (that is [*/ during] selection). 
&]
[s0; &]
[s0;%- [%%/ Derived from][%%  ][^topic`:`/`/CtrlCore`/src`/Ctrl`$en`-us`#`:`:Ctrl`:`:class Ctrl^ C
trl]&]
[s3; &]
[s0;%- &]
[ {{10000F(128)G(128)@1 [s0; [* Public Member List]]}}&]
[s3;%- &]
[s5;:ColorPopUp`:`:PopUp`(Ctrl`*`,Color`):%- [@(0.0.255) void]_[* PopUp]([_^Ctrl^ Ctrl]_`*[*@3 o
wner], [_^Color^ Color]_[*@3 c]_`=_White)&]
[s2; Opens ColorPopUp as pop`-up window.&]
[s7; [%-*C@3 owner]-|Owner Ctrl. ColorPopUp appears bellow or above 
this Ctrl.&]
[s7; [%-*C@3 c]-|Initial color for wheel and ramp selectors.&]
[s3; &]
[s4;%- &]
[s5;:ColorPopUp`:`:Get`(`)const:%- [_^Color^ Color]_[* Get]()_[@(0.0.255) const]&]
[s7; [*/ Return value]-|Returns current color selected.&]
[s3; &]
[s4;%- &]
[s5;:ColorPopUp`:`:NotNull`(bool`):%- [_^ColorPopUp^ ColorPopUp][@(0.0.255) `&]_[* NotNull](
[@(0.0.255) bool]_[*@3 b]_`=_[@(0.0.255) true])&]
[s2; Setups whether Null (that is transparent) color choice is enabled. 
Constructor setting is NotNull(false).&]
[s7; [%-*C@3 b]-|true disables Null color choice. &]
[s7; [*/ Return value]-|`*this.&]
[s3; &]
[s4;%- &]
[s5;:ColorPopUp`:`:SColors`(bool`):%- [_^ColorPopUp^ ColorPopUp][@(0.0.255) `&]_[* SColors](
[@(0.0.255) bool]_[*@3 b]_`=_[@(0.0.255) true])&]
[s2; Setups whether choice of system colors is allowed. Constructor 
setting is SColors(false).&]
[s7; [%-*C@3 b]-|true enables choice of system colors.&]
[s7; [*/ Return value]-|`*this.&]
[s3; &]
[s4;%- &]
[s5;:ColorPopUp`:`:NullText`(const char`*`):%- [_^ColorPopUp^ ColorPopUp][@(0.0.255) `&]_
[* NullText]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 s])&]
[s2; Setups text for Null color choice. Constructor setting for en`-us 
is `"(transparent)`".&]
[s7; [%-*C@3 s]-|New text for Null color choice.&]
[s7; [*/ Return value]-|`*this.&]
[s3; &]
[s4;%- &]
[s5;:Upp`:`:ColorPopUp`:`:WithVoid`(bool`):%- [_^Upp`:`:ColorPopUp^ ColorPopUp][@(0.0.255) `&
]_[* WithVoid]([@(0.0.255) bool]_[*@3 b]_`=_[@(0.0.255) true])&]
[s2; Enables special VoidColor() (labeled `"(None)`", unless the 
name is changed by VoidText).&]
[s3; &]
[s4;%- &]
[s5;:Upp`:`:ColorPopUp`:`:VoidText`(const char`*`):%- [_^Upp`:`:ColorPopUp^ ColorPopUp][@(0.0.255) `&
]_[* VoidText]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 s])&]
[s2; Changes the label of VoidColor().&]
[s3; &]
[s4;%- &]
[s5;:ColorPopUp`:`:WhenCancel:%- [_^Callback^ Callback]_[* WhenCancel]&]
[s2; This callback is invoked when ColorPopUp is canceled (e.g. by 
clicking outside).&]
[s3; &]
[s4;%- &]
[s5;:ColorPopUp`:`:WhenSelect:%- [_^Callback^ Callback]_[* WhenSelect]&]
[s2; This callback is invoked when color is chosen. Resulting color 
can be obtained by Get().&]
[s0; &]
[s0;%- &]
[ {{10000@3 [s0; [*@(229)4 ColorPusher]]}}&]
[s3; &]
[s1;:ColorPusher`:`:class:%- [@(0.0.255)3 class][3 _][*3 ColorPusher][3 _:_][@(0.0.255)3 public][3 _
][*@3;3 Ctrl]&]
[s9; This class represents Ctrl with Color value. It uses ColorPopUp 
to edit this value.&]
[s0; &]
[s2; 
@@image:398&199
(AzAAGAAAAOj/AAAAAHice/PyxptRRAitWTFzYNH////R3MMwcADoAKzu+T9AAI976B84RLjnPx3RqHtG3TPqnlH3jLpn1D3Ucg9dAX73DAjA6p4BaZfCEZp7BipkkMHABshQQQCO3pjh)
  
@@image:1021&189
(A30AFwAAAOn/AAAAAHic7Zg9DsIwDIW5v8SKxA0YOBBbZiTuYJhQ5Z8Xu03apvVTBpK6jv0lNoJSUqlz6fm451hhEBHDfkl11uf9UrFTqqcAdufBbZ3BkMLYr3TDI7HPU3PsnkLwHNbURrVni1WfLCpZs/4qZrHJt+SUeWiL3YnCg0iNnyWLbawd/9lFo1L3wn4s8l2xg+BDBhh7aGtahl1a7hm7VXRqbUo/6nQ5dqszhG6F6kdaro/dKnBQ+P2wAzj4Dlt7Of2Mjt15NKpAMTotPX6Oil3tBqHOUH00NHaMd3aT8duAp0dqMmR8MbGV6Qdr3UrTWqxOZWDVOP1bR/3s81fqQretomqYXQi7R60Cw3EOLZlL/gO5iVTsv8UcvQfDvvE9OJNKKnUyfQHnsr1w)
&]
[s0; &]
[s9; As is U`+`+ standard, Color value is set and get using SetData 
and GetData virtual method.&]
[s9; WhenAction callback and modify set behaviour depends on track 
mode. When track mode is enabled (Track(true)), WhenAction is 
called and modify set upon any change of color (including moving 
mouse through ColorPopUp). When track mode is off, it is called 
and set only after new Color is selected.&]
[s9; &]
[s0;%- [%%/ Derived from][%%  ][^topic`:`/`/CtrlCore`/src`/Ctrl`$en`-us`#`:`:Ctrl`:`:class Ctrl^ C
trl]&]
[s3; &]
[s0;%- &]
[ {{10000F(128)G(128)@1 [s0; [* Public Member List]]}}&]
[s3;%- &]
[s5;:ColorPusher`:`:NullText`(const char`*`):%- [_^ColorPusher^ ColorPusher][@(0.0.255) `&
]_[* NullText]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 s])&]
[s2; Sets a text to be displayed if Color value is Null. Constructor 
setting for en`-us is `"(transparent)`".&]
[s7; [%-*C@3 s]-|Text.&]
[s7; [*/ Return value]-|`*this.&]
[s3; &]
[s4;%- &]
[s5;:ColorPusher`:`:NotNull`(bool`):%- [_^ColorPusher^ ColorPusher][@(0.0.255) `&]_[* NotNu
ll]([@(0.0.255) bool]_[*@3 b]_`=_[@(0.0.255) true])&]
[s2; Setups whether Null (that is transparent) color choice is enabled. 
Constructor setting is NotNull(false).&]
[s7; [%-*C@3 b]-|true disables Null color choice. &]
[s7; [*/ Return value]-|`*this.&]
[s3; &]
[s4;%- &]
[s5;:Upp`:`:ColorPusher`:`:WithVoid`(bool`):%- [_^Upp`:`:ColorPusher^ ColorPusher][@(0.0.255) `&
]_[* WithVoid]([@(0.0.255) bool]_[*@3 b]_`=_[@(0.0.255) true])&]
[s2; Enables special VoidColor() (labeled `"(None)`", unless the 
name is changed by VoidText).&]
[s3; &]
[s4;%- &]
[s5;:Upp`:`:ColorPusher`:`:VoidText`(const char`*`):%- [_^Upp`:`:ColorPusher^ ColorPush
er][@(0.0.255) `&]_[* VoidText]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 s])&]
[s2; Changes the label of VoidColor().&]
[s3; &]
[s4;%- &]
[s5;:ColorPusher`:`:SColors`(bool`):%- [_^ColorPusher^ ColorPusher][@(0.0.255) `&]_[* SColo
rs]([@(0.0.255) bool]_[*@3 b]_`=_[@(0.0.255) true])&]
[s2; Setups whether choice of system colors is allowed. Constructor 
setting is SColors(false).&]
[s7; [%-*C@3 b]-|true enables choice of system colors.&]
[s7; [*/ Return value]-|`*this.&]
[s3; &]
[s4;%- &]
[s5;:ColorPusher`:`:WithText`(`):%- [_^ColorPusher^ ColorPusher][@(0.0.255) `&]_[* WithText
]()&]
[s2; Setups displaying of text representation of color.&]
[s7; [*/ Return value]-|`*this.&]
[s3; &]
[s4;%- &]
[s5;:Upp`:`:ColorPusher`:`:WithHex`(`):%- [_^Upp`:`:ColorPusher^ ColorPusher][@(0.0.255) `&
]_[* WithHex]()&]
[s2; Setups displaying of text representation of color in HTML hexadecimal 
format.&]
[s3;%- &]
[s4;%- &]
[s5;:ColorPusher`:`:Track`(bool`):%- [_^ColorPusher^ ColorPusher][@(0.0.255) `&]_[* Track](
[@(0.0.255) bool]_[*@3 b]_`=_[@(0.0.255) true])&]
[s2; Setups track mode. Constructor setting is Track(false).&]
[s7; [%-*C@3 b]-|true enables track mode.&]
[s7; [*/ Return value]-|`*this&]
[s3; &]
[s4;%- &]
[s5;:ColorPusher`:`:NoTrack`(`):%- [_^ColorPusher^ ColorPusher][@(0.0.255) `&]_[* NoTrack](
)&]
[s2; Same as Track(false).&]
[s7; [*/ Return value]-|`*this.&]
[s3; &]
[s0; &]
[s0; &]
[s0;%- &]
[ {{10000@3 [s0; [*@(229)4 ColorButton]]}}&]
[s3; &]
[s1;:ColorButton`:`:class:%- [@(0.0.255)3 class][3 _][*3 ColorButton][3 _:_][@(0.0.255)3 public][3 _
][*@3;3 ColorPusher]&]
[s0; &]
[s2; 
@@image:150&137
(AxgAFgAAAOr/AAAAAHice/PyxpshhRgYGKhiyKP6aZQbRRVzIIZAECVGUcUcuCHIjIEyB00v2UZRxRxkXciAVKOQowkTEWkOfkOINwqXp0jyGkGVRBpFRXMggEI1owgTAQBQI8Hg)
&]
[s0;* &]
[s9; This class is similar to ColorPusher, but intended to be used 
in ToolBar. It supports displaying color using Image too.&]
[s0; &]
[s0;%- [%%/ Derived from][%%  ][^topic`:`/`/CtrlLib`/src`/ColorPopUp`$en`-us`#`:`:ColorPusher`:`:class ColorPusher^ C
olorPusher]&]
[s3; &]
[s0;%- &]
[ {{10000F(128)G(128)@1 [s0; [* Public Member List]]}}&]
[s3;%- &]
[s5;:ColorButton`:`:ColorImage`(const Image`&`):%- [_^ColorButton^ ColorButton][@(0.0.255) `&
]_[* ColorImage]([@(0.0.255) const]_[_^Image^ Image][@(0.0.255) `&]_[*@3 img])&]
[s2; Sets image to display color. This image is drawn (in the center 
of ColorButton) with selected color.&]
[s7; [%-*C@3 img]-|Image.&]
[s7; [*/ Return value]-|`*this.&]
[s3; &]
[s4;%- &]
[s5;:ColorButton`:`:NullImage`(const Image`&`):%- [_^ColorButton^ ColorButton][@(0.0.255) `&
]_[* NullImage]([@(0.0.255) const]_[_^Image^ Image][@(0.0.255) `&]_[*@3 img])&]
[s2; Sets image to display null color.&]
[s7; [%-*C@3 img]-|Image.&]
[s7; [*/ Return value]-|`*this.&]
[s3; &]
[s4;%- &]
[s5;:ColorButton`:`:StaticImage`(const Image`&`):%- [_^ColorButton^ ColorButton][@(0.0.255) `&
]_[* StaticImage]([@(0.0.255) const]_[_^Image^ Image][@(0.0.255) `&]_[*@3 img])&]
[s2; Sets static image that is always displayed with ColorImage and 
NullImage.&]
[s7; [%-*C@3 img]-|Image.&]
[s7; [*/ Return value]-|`*this.&]
[s3; &]
[s0; ]]