<?xml version="1.0" encoding="utf-8"?>
<FxApplication name="Ellipse_fill_LinearGradient_test"
xmlns="http://ns.adobe.com/mxml/2009"
initialize="init();">
<layout>
<BasicLayout />
</layout>
<Script>
<![CDATA[
import mx.containers.Form;
import mx.containers.FormItem;
import mx.controls.ColorPicker;
import mx.controls.HSlider;
import mx.events.ColorPickerEvent;
import mx.events.SliderEvent;
import mx.graphics.Ellipse;
import mx.graphics.GradientEntry;
import mx.graphics.LinearGradient;
private var colorPicker1:ColorPicker;
private var colorPicker2:ColorPicker;
private var colorPicker3:ColorPicker;
private var slider1:HSlider;
private var slider2:HSlider;
private var slider3:HSlider;
private var ellipse:Ellipse;
private var gradientEntry1:GradientEntry;
private var gradientEntry2:GradientEntry;
private var gradientEntry3:GradientEntry;
private function init():void {
colorPicker1 = new ColorPicker();
colorPicker1.selectedColor = 0xFF0000; // red
colorPicker1.addEventListener(ColorPickerEvent.CHANGE, colorPicker1_change);
colorPicker2 = new ColorPicker();
colorPicker2.selectedColor = 0x00FF00; // green
colorPicker2.addEventListener(ColorPickerEvent.CHANGE, colorPicker2_change);
colorPicker3 = new ColorPicker();
colorPicker3.selectedColor = 0x0000FF; // blue
colorPicker3.addEventListener(ColorPickerEvent.CHANGE, colorPicker3_change);
slider1 = new HSlider();
slider1.minimum = 0.0;
slider1.maximum = 1.0;
slider1.value = 1.0;
slider1.snapInterval = 0.1;
slider1.tickInterval = 0.1;
slider1.liveDragging = true;
slider1.addEventListener(SliderEvent.CHANGE, slider1_change);
slider2 = new HSlider();
slider2.minimum = 0.0;
slider2.maximum = 1.0;
slider2.value = 1.0;
slider2.snapInterval = 0.1;
slider2.tickInterval = 0.1;
slider2.liveDragging = true;
slider2.addEventListener(SliderEvent.CHANGE, slider2_change);
slider3 = new HSlider();
slider3.minimum = 0.0;
slider3.maximum = 1.0;
slider3.value = 1.0;
slider3.snapInterval = 0.1;
slider3.tickInterval = 0.1;
slider3.liveDragging = true;
slider3.addEventListener(SliderEvent.CHANGE, slider3_change);
var formItem1a:FormItem = new FormItem();
formItem1a.label = "color 1:";
formItem1a.addChild(colorPicker1);
var formItem1b:FormItem = new FormItem();
formItem1b.label = "alpha 1:";
formItem1b.addChild(slider1);
var formItem2a:FormItem = new FormItem();
formItem2a.label = "color 2:";
formItem2a.addChild(colorPicker2);
var formItem2b:FormItem = new FormItem();
formItem2b.label = "alpha 2:";
formItem2b.addChild(slider2);
var formItem3a:FormItem = new FormItem();
formItem3a.label = "color 3:";
formItem3a.addChild(colorPicker3);
var formItem3b:FormItem = new FormItem();
formItem3b.label = "alpha 3:";
formItem3b.addChild(slider3);
var form:Form = new Form();
form.addChild(formItem1a); // colorPicker1
form.addChild(formItem1b); // slider1
form.addChild(formItem2a); // colorPicker2
form.addChild(formItem2b); // slider2
form.addChild(formItem3a); // colorPicker3
form.addChild(formItem3b); // slider3
addItem(form);
gradientEntry1 = new GradientEntry(0xFF0000); // red
gradientEntry2 = new GradientEntry(0x00FF00); // green
gradientEntry3 = new GradientEntry(0x0000FF); // blue
var gradientArr:Array = [];
gradientArr.push(gradientEntry1);
gradientArr.push(gradientEntry2);
gradientArr.push(gradientEntry3);
var linearGradient:LinearGradient = new LinearGradient();
linearGradient.entries = gradientArr;
ellipse = new Ellipse();
ellipse.fill = linearGradient;
ellipse.width = 200;
ellipse.height = 300;
ellipse.horizontalCenter = 100;
ellipse.verticalCenter = 0;
addItem(ellipse);
}
private function colorPicker1_change(evt:ColorPickerEvent):void {
gradientEntry1.color = evt.color;
}
private function slider1_change(evt:SliderEvent):void {
gradientEntry1.alpha = evt.value;
}
private function colorPicker2_change(evt:ColorPickerEvent):void {
gradientEntry2.color = evt.color;
}
private function slider2_change(evt:SliderEvent):void {
gradientEntry2.alpha = evt.value;
}
private function colorPicker3_change(evt:ColorPickerEvent):void {
gradientEntry3.color = evt.color;
}
private function slider3_change(evt:SliderEvent):void {
gradientEntry3.alpha = evt.value;
}
]]>
</Script>
</FxApplication>