The following example shows how you can set the swatch highlight size on a Flex 3 ColorPicker control by setting the swatchHighlightSize style. You can also see how you can set the swatchBorderColor, swatchBorderSize, and swatchHighlightColor styles using CSS.
Full code after the jump.
<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2007/12/29/changing-the-swatch-highlight-size-for-a-colorpicker-control-in-flex-3/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="top"
backgroundColor="white"
creationComplete="init();">
<mx:Style>
ColorPicker {
swatchPanelStyleName: myCustomSwatchPanelStyleName;
}
.myCustomSwatchPanelStyleName {
/* border */
swatchBorderColor: white;
swatchBorderSize: 1;
/* highlight */
swatchHighlightColor: red;
swatchHighlightSize: 1;
}
</mx:Style>
<mx:Script>
<![CDATA[
import mx.events.SliderEvent;
private var cssObj:CSSStyleDeclaration;
private function init():void {
cssObj = StyleManager.getStyleDeclaration(".myCustomSwatchPanelStyleName");
colorPicker.open();
}
private function borderSlider_change(evt:SliderEvent):void {
cssObj.setStyle("swatchBorderSize", evt.value);
colorPicker.open();
}
private function highlightSlider_change(evt:SliderEvent):void {
cssObj.setStyle("swatchHighlightSize", evt.value);
colorPicker.open();
}
]]>
</mx:Script>
<mx:ApplicationControlBar dock="true">
<mx:Form styleName="plain">
<mx:FormItem label="swatchBorderSize:">
<mx:HSlider id="borderSlider"
minimum="0"
maximum="5"
value="1"
liveDragging="true"
snapInterval="1"
tickInterval="1"
change="borderSlider_change(event);" />
</mx:FormItem>
<mx:FormItem label="swatchHighlightSize:">
<mx:HSlider id="highlightSlider"
minimum="0"
maximum="5"
value="1"
liveDragging="true"
snapInterval="1"
tickInterval="1"
change="highlightSlider_change(event);" />
</mx:FormItem>
</mx:Form>
</mx:ApplicationControlBar>
<mx:ColorPicker id="colorPicker" />
</mx:Application>
View source is enabled in the following example.





0 Responses to “Changing the swatch highlight size for a ColorPicker control in Flex 3”
Leave a Reply