flex-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From cd...@apache.org
Subject [04/10] Added the compilable version of all test projects that fail with falcon and did not fail with the default compiler.
Date Wed, 22 Oct 2014 14:49:32 GMT
http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Slider.as
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Slider.as b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Slider.as
new file mode 100644
index 0000000..50078f1
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Slider.as
@@ -0,0 +1,352 @@
+/**
+ * Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+ * Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.bit101.components
+{
+	import flash.display.DisplayObjectContainer;
+	import flash.display.Sprite;
+	import flash.events.Event;
+	import flash.events.MouseEvent;
+	import flash.geom.Rectangle;
+	
+	public class Slider extends Component
+	{
+		protected var _handle:Sprite;
+		private var _back:Sprite;
+		private var _backClick:Boolean = false;
+		protected var _value:Number = 0;
+		protected var _max:Number = 100;
+		protected var _min:Number = 0;
+		protected var _orientation:String;
+		protected var _tick:Number = 1;
+		
+		public static const HORIZONTAL:String = "horizontal";
+		public static const VERTICAL:String = "vertical";
+		
+		/**
+		 * Constructor
+		 * @param parent The parent DisplayObjectContainer on which to add this Slider.
+		 * @param xpos The x position to place this component.
+		 * @param ypos The y position to place this component.
+		 * @param defaultHandler The event handling function to handle the default event for this component (change in this case).
+		 */
+		public function Slider(orientation:String = Slider.HORIZONTAL, parent:DisplayObjectContainer = null, xpos:Number = 0, ypos:Number =  0, defaultHandler:Function = null)
+		{
+			_orientation = orientation;
+			super(parent, xpos, ypos);
+			if(defaultHandler != null)
+			{
+				addEventListener(Event.CHANGE, defaultHandler);
+			}
+		}
+		
+		/**
+		 * Initializes the component.
+		 */
+		override protected function init():void
+		{
+			super.init();
+
+			if(_orientation == HORIZONTAL)
+			{
+				setSize(100, 10);
+			}
+			else
+			{
+				setSize(10, 100);
+			}
+		}
+		
+		/**
+		 * Creates and adds the child display objects of this component.
+		 */
+		override protected function addChildren():void
+		{
+			_back = new Sprite();
+			_back.filters = [getShadow(2, true)];
+			addChild(_back);
+			
+			_handle = new Sprite();
+			_handle.filters = [getShadow(1)];
+			_handle.addEventListener(MouseEvent.MOUSE_DOWN, onDrag);
+			_handle.buttonMode = true;
+			_handle.useHandCursor = true;
+			addChild(_handle);
+		}
+		
+		/**
+		 * Draws the back of the slider.
+		 */
+		protected function drawBack():void
+		{
+			_back.graphics.clear();
+			_back.graphics.beginFill(Style.BACKGROUND);
+			_back.graphics.drawRect(0, 0, _width, _height);
+			_back.graphics.endFill();
+
+			if(_backClick)
+			{
+				_back.addEventListener(MouseEvent.MOUSE_DOWN, onBackClick);
+			}
+			else
+			{
+				_back.removeEventListener(MouseEvent.MOUSE_DOWN, onBackClick);
+			}
+		}
+		
+		/**
+		 * Draws the handle of the slider.
+		 */
+		protected function drawHandle():void
+		{	
+			_handle.graphics.clear();
+			_handle.graphics.beginFill(Style.BUTTON_FACE);
+			if(_orientation == HORIZONTAL)
+			{
+				_handle.graphics.drawRect(1, 1, _height - 2, _height - 2);
+			}
+			else
+			{
+				_handle.graphics.drawRect(1, 1, _width - 2, _width - 2);
+			}
+			_handle.graphics.endFill();
+			positionHandle();
+		}
+		
+		/**
+		 * Adjusts value to be within minimum and maximum.
+		 */
+		protected function correctValue():void
+		{
+			if(_max > _min)
+			{
+				_value = Math.min(_value, _max);
+				_value = Math.max(_value, _min);
+			}
+			else
+			{
+				_value = Math.max(_value, _max);
+				_value = Math.min(_value, _min);
+			}
+		}
+		
+		/**
+		 * Adjusts position of handle when value, maximum or minimum have changed.
+		 * TODO: Should also be called when slider is resized.
+		 */
+		protected function positionHandle():void
+		{
+			var range:Number;
+			if(_orientation == HORIZONTAL)
+			{
+				range = width - height;
+				_handle.x = (_value - _min) / (_max - _min) * range;
+			}
+			else
+			{
+				range = height - width;
+				_handle.y = _height - _width - (_value - _min) / (_max - _min) * range;
+			}
+		}
+		
+		
+		
+		
+		///////////////////////////////////
+		// public methods
+		///////////////////////////////////
+		
+		/**
+		 * Draws the visual ui of the component.
+		 */
+		override public function draw():void
+		{
+			super.draw();
+			drawBack();
+			drawHandle();
+		}
+		
+		/**
+		 * Convenience method to set the three main parameters in one shot.
+		 * @param min The minimum value of the slider.
+		 * @param max The maximum value of the slider.
+		 * @param value The value of the slider.
+		 */
+		public function setSliderParams(min:Number, max:Number, value:Number):void
+		{
+			this.minimum = min;
+			this.maximum = max;
+			this.value = value;
+		}
+		
+		
+		
+		
+		///////////////////////////////////
+		// event handlers
+		///////////////////////////////////
+		
+		/**
+		 * Handler called when user clicks the background of the slider, causing the handle to move to that point. Only active if backClick is true.
+		 * @param event The MouseEvent passed by the system.
+		 */
+		protected function onBackClick(event:MouseEvent):void
+		{
+			if(_orientation == HORIZONTAL)
+			{
+				_handle.x = mouseX - height / 2;
+				_handle.x = Math.max(_handle.x, 0);
+				_handle.x = Math.min(_handle.x, width - height);
+				_value = _handle.x / (width - height) * (_max - _min) + _min;
+			}
+			else
+			{
+				_handle.y = mouseY - width / 2;
+				_handle.y = Math.max(_handle.y, 0);
+				_handle.y = Math.min(_handle.y, height - width);
+				_value = (_height - _width - _handle.y) / (height - width) * (_max - _min) + _min;
+			}
+			dispatchEvent(new Event(Event.CHANGE));
+			
+		}
+		
+		/**
+		 * Internal mouseDown handler. Starts dragging the handle.
+		 * @param event The MouseEvent passed by the system.
+		 */
+		protected function onDrag(event:MouseEvent):void
+		{
+			stage.addEventListener(MouseEvent.MOUSE_UP, onDrop);
+			stage.addEventListener(MouseEvent.MOUSE_MOVE, onSlide);
+			if(_orientation == HORIZONTAL)
+			{
+				_handle.startDrag(false, new Rectangle(0, 0, width - height, 0));
+			}
+			else
+			{
+				_handle.startDrag(false, new Rectangle(0, 0, 0, height - width));
+			}
+		}
+		
+		/**
+		 * Internal mouseUp handler. Stops dragging the handle.
+		 * @param event The MouseEvent passed by the system.
+		 */
+		protected function onDrop(event:MouseEvent):void
+		{
+			stage.removeEventListener(MouseEvent.MOUSE_UP, onDrop);
+			stage.removeEventListener(MouseEvent.MOUSE_MOVE, onSlide);
+			stopDrag();
+		}
+		
+		/**
+		 * Internal mouseMove handler for when the handle is being moved.
+		 * @param event The MouseEvent passed by the system.
+		 */
+		protected function onSlide(event:MouseEvent):void
+		{
+			var oldValue:Number = _value;
+			if(_orientation == HORIZONTAL)
+			{
+				_value = _handle.x / (width - height) * (_max - _min) + _min;
+			}
+			else
+			{
+				_value = (_height - _width - _handle.y) / (height - width) * (_max - _min) + _min;
+			}
+			if(_value != oldValue)
+			{
+				dispatchEvent(new Event(Event.CHANGE));
+			}
+		}
+		
+		
+		
+		
+		///////////////////////////////////
+		// getter/setters
+		///////////////////////////////////
+		
+		/**
+		 * Sets / gets whether or not a click on the background of the slider will move the handler to that position.
+		 */
+		public function set backClick(b:Boolean):void
+		{
+			_backClick = b;
+			invalidate();
+		}
+		public function get backClick():Boolean
+		{
+			return _backClick;
+		}
+		
+		/**
+		 * Sets / gets the current value of this slider.
+		 */
+		public function set value(v:Number):void
+		{
+			_value = v;
+			correctValue();
+			positionHandle();
+		}
+		public function get value():Number
+		{
+			return Math.round(_value / _tick) * _tick;
+		}
+		
+		/**
+		 * Gets / sets the maximum value of this slider.
+		 */
+		public function set maximum(m:Number):void
+		{
+			_max = m;
+			correctValue();
+			positionHandle();
+		}
+		public function get maximum():Number
+		{
+			return _max;
+		}
+		
+		/**
+		 * Gets / sets the minimum value of this slider.
+		 */
+		public function set minimum(m:Number):void
+		{
+			_min = m;
+			correctValue();
+			positionHandle();
+		}
+		public function get minimum():Number
+		{
+			return _min;
+		}
+		
+		/**
+		 * Gets / sets the tick value of this slider. This round the value to the nearest multiple of this number. 
+		 */
+		public function set tick(t:Number):void
+		{
+			_tick = t;
+		}
+		public function get tick():Number
+		{
+			return _tick;
+		}
+		
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Style.as
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Style.as b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Style.as
new file mode 100644
index 0000000..29e8059
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Style.as
@@ -0,0 +1,30 @@
+/**
+ * Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+ * Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.bit101.components
+{
+	public class Style
+	{
+		public static var BACKGROUND:uint = 0xCCCCCC;
+		public static var BUTTON_FACE:uint = 0xFFFFFF;
+		public static var INPUT_TEXT:uint = 0x333333;
+		public static var LABEL_TEXT:uint = 0x666666;
+		public static var DROPSHADOW:uint = 0x000000;
+		public static var PANEL:uint = 0xF3F3F3;
+		public static var PROGRESS_BAR:uint = 0xFFFFFF;
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Text.as
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Text.as b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Text.as
new file mode 100644
index 0000000..d460f1c
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Text.as
@@ -0,0 +1,154 @@
+/**
+ * Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+ * Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.bit101.components
+{
+	import flash.display.DisplayObjectContainer;
+	import flash.events.Event;
+	import flash.text.TextField;
+	import flash.text.TextFieldType;
+	import flash.text.TextFormat;
+	
+	public class Text extends Component
+	{
+		private var _tf:TextField;
+		private var _text:String = "";
+		private var _editable:Boolean = true;
+		private var _panel:Panel;
+		
+		
+		/**
+		 * Constructor
+		 * @param parent The parent DisplayObjectContainer on which to add this Label.
+		 * @param xpos The x position to place this component.
+		 * @param ypos The y position to place this component.
+		 * @param text The initial text to display in this component.
+		 */
+		public function Text(parent:DisplayObjectContainer = null, xpos:Number = 0, ypos:Number =  0, text:String = "")
+		{
+			_text = text;
+			super(parent, xpos, ypos);
+			setSize(200, 100);
+		}
+		
+		/**
+		 * Initializes the component.
+		 */
+		override protected function init():void
+		{
+			super.init();
+		}
+		
+		/**
+		 * Creates and adds the child display objects of this component.
+		 */
+		override protected function addChildren():void
+		{
+			_panel = new Panel(this);
+			_panel.color = 0xffffff;
+			
+			_tf = new TextField();
+			_tf.x = 2;
+			_tf.y = 2;
+			_tf.height = _height;
+			_tf.embedFonts = true;
+			_tf.multiline = true;
+			_tf.wordWrap = true;
+			_tf.selectable = true;
+			_tf.type = TextFieldType.INPUT;
+			_tf.defaultTextFormat = new TextFormat("PF Ronda Seven", 8, Style.LABEL_TEXT);
+			_tf.addEventListener(Event.CHANGE, onChange);			
+			addChild(_tf);
+		}
+		
+		
+		
+		
+		///////////////////////////////////
+		// public methods
+		///////////////////////////////////
+		
+		/**
+		 * Draws the visual ui of the component.
+		 */
+		override public function draw():void
+		{
+			super.draw();
+			
+			_panel.setSize(_width, _height);
+			
+			_tf.width = _width - 4;
+			_tf.height = _height - 4;
+			_tf.text = _text;
+			if(_editable)
+			{
+				_tf.mouseEnabled = true;
+				_tf.selectable = true;
+				_tf.type = TextFieldType.INPUT;
+			}
+			else
+			{
+				_tf.mouseEnabled = false;
+				_tf.selectable = false;
+				_tf.type = TextFieldType.DYNAMIC;
+			}
+		}
+		
+		
+		
+		
+		///////////////////////////////////
+		// event handlers
+		///////////////////////////////////
+		
+		protected function onChange(event:Event):void
+		{
+			_text = _tf.text;
+			dispatchEvent(event);
+		}
+		
+		///////////////////////////////////
+		// getter/setters
+		///////////////////////////////////
+		
+		/**
+		 * Gets / sets the text of this Label.
+		 */
+		public function set text(t:String):void
+		{
+			_text = t;
+			invalidate();
+		}
+		public function get text():String
+		{
+			return _text;
+		}
+		
+		/**
+		 * Gets / sets whether or not this text component will be editable.
+		 */
+		public function set editable(b:Boolean):void
+		{
+			_editable = b;
+			invalidate();
+		}
+		public function get editable():Boolean
+		{
+			return _editable;
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/UISlider.as
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/UISlider.as b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/UISlider.as
new file mode 100644
index 0000000..f5eebbf
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/UISlider.as
@@ -0,0 +1,232 @@
+/**
+ * Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+ * Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.bit101.components
+{
+	import flash.display.DisplayObjectContainer;
+	import flash.events.Event;
+
+	public class UISlider extends Component
+	{
+		protected var _label:Label;
+		protected var _valueLabel:Label;
+		protected var _slider:Slider;
+		private var _precision:int = 1;
+		protected var _sliderClass:Class;
+		private var _labelText:String;
+		private var _tick:Number = 1;
+		
+		
+		/**
+		 * Constructor
+		 * @param parent The parent DisplayObjectContainer on which to add this UISlider.
+		 * @param xpos The x position to place this component.
+		 * @param ypos The y position to place this component.
+		 * @param label The initial string to display as this component's label.
+		 * @param defaultHandler The event handling function to handle the default event for this component (change in this case).
+		 */
+		public function UISlider(parent:DisplayObjectContainer = null, x:Number = 0, y:Number = 0, label:String = "", defaultEventHandler:Function = null)
+		{
+			_labelText = label;
+			super(parent, x, y);
+			if(defaultEventHandler != null)
+			{
+				addEventListener(Event.CHANGE, defaultEventHandler);
+			}
+			formatValueLabel();
+		}
+		
+		/**
+		 * Creates and adds the child display objects of this component.
+		 */
+		override protected function addChildren():void
+		{
+			_label = new Label(this, 0, 0);
+			_slider = new _sliderClass(this, 0, 0, onSliderChange);
+			_valueLabel = new Label(this);
+		}
+		
+		/**
+		 * Formats the value of the slider to a string based on the current level of precision.
+		 */
+		protected function formatValueLabel():void
+		{
+			var mult:Number = Math.pow(10, _precision);
+			var val:String = (Math.round(_slider.value * mult) / mult).toString();
+			var parts:Array = val.split(".");
+			if(parts[1] == null)
+			{ 
+				if(_precision > 0)
+				{
+					val += "."
+				}
+				for(var i:uint = 0; i < _precision; i++)
+				{
+					val += "0";
+				}
+			}
+			else if(parts[1].length < _precision)
+			{
+				for(i = 0; i < _precision - parts[1].length; i++)
+				{
+					val += "0";
+				}
+			}
+			_valueLabel.text = val;
+			positionLabel();
+		}
+		
+		/**
+		 * Positions the label when it has changed. Implemented in child classes.
+		 */
+		protected function positionLabel():void
+		{
+			
+		}
+		
+		
+		
+		
+		///////////////////////////////////
+		// public methods
+		///////////////////////////////////
+		
+		/**
+		 * Draws the visual ui of this component.
+		 */
+		override public function draw():void
+		{
+			super.draw();
+			_label.text = _labelText
+			_label.draw();
+			formatValueLabel();
+		}
+		
+		/**
+		 * Convenience method to set the three main parameters in one shot.
+		 * @param min The minimum value of the slider.
+		 * @param max The maximum value of the slider.
+		 * @param value The value of the slider.
+		 */
+		public function setSliderParams(min:Number, max:Number, value:Number):void
+		{
+			_slider.setSliderParams(min, max, value);
+		}
+		
+		
+		
+		
+		///////////////////////////////////
+		// event handlers
+		///////////////////////////////////
+		
+		/**
+		 * Handler called when the slider's value changes.
+		 * @param event The Event passed by the slider.
+		 */
+		protected function onSliderChange(event:Event):void
+		{
+			formatValueLabel();
+			dispatchEvent(new Event(Event.CHANGE));
+		}
+		
+		
+		
+		
+		///////////////////////////////////
+		// getter/setters
+		///////////////////////////////////
+		
+		/**
+		 * Sets / gets the current value of this slider.
+		 */
+		public function set value(v:Number):void
+		{
+			_slider.value = v;
+			formatValueLabel();
+		}
+		public function get value():Number
+		{
+			return _slider.value;
+		}
+		
+		/**
+		 * Gets / sets the maximum value of this slider.
+		 */
+		public function set maximum(m:Number):void
+		{
+			_slider.maximum = m;
+		}
+		public function get maximum():Number
+		{
+			return _slider.maximum;
+		}
+		
+		/**
+		 * Gets / sets the minimum value of this slider.
+		 */
+		public function set minimum(m:Number):void
+		{
+			_slider.minimum = m;
+		}
+		public function get minimum():Number
+		{
+			return _slider.minimum;
+		}
+		
+		/**
+		 * Gets / sets the number of decimals to format the value label. Does not affect the actual value of the slider, just the number shown.
+		 */
+		public function set labelPrecision(decimals:int):void
+		{
+			_precision = decimals;
+		}
+		public function get labelPrecision():int
+		{
+			return _precision;
+		}
+		
+		/**
+		 * Gets / sets the text shown in this component's label.
+		 */
+		public function set label(str:String):void
+		{
+			_labelText = str;
+//			invalidate();
+			draw();
+		}
+		public function get label():String
+		{
+			return _labelText;
+		}
+		
+		/**
+		 * Gets / sets the tick value of this slider. This round the value to the nearest multiple of this number. 
+		 */
+		public function set tick(t:Number):void
+		{
+			_tick = t;
+			_slider.tick = _tick;
+		}
+		public function get tick():Number
+		{
+			return _tick;
+		}
+		
+
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VBox.as
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VBox.as b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VBox.as
new file mode 100644
index 0000000..4d1ff79
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VBox.as
@@ -0,0 +1,88 @@
+/**
+ * Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+ * Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+ 
+package com.bit101.components
+{
+	import flash.display.DisplayObject;
+	import flash.display.DisplayObjectContainer;
+	import flash.events.Event;
+
+	public class VBox extends Component
+	{
+		private var _spacing:Number = 5;
+		
+		
+		/**
+		 * Constructor
+		 * @param parent The parent DisplayObjectContainer on which to add this PushButton.
+		 * @param xpos The x position to place this component.
+		 * @param ypos The y position to place this component.
+		 */
+		public function VBox(parent:DisplayObjectContainer = null, xpos:Number = 0, ypos:Number =  0)
+		{
+			super(parent, xpos, ypos);
+		}
+		
+		/**
+		 * Override of addChild to force layout;
+		 */
+		override public function addChild(child:DisplayObject) : DisplayObject
+		{
+			super.addChild(child);
+			child.addEventListener(Event.RESIZE, onResize);
+			invalidate();
+			return child;
+		}
+		
+		/**
+		 * Internal handler for resize event of any attached component. Will redo the layout based on new size.
+		 */
+		protected function onResize(event:Event):void
+		{
+			invalidate();
+		}
+		
+		/**
+		 * Draws the visual ui of the component, in this case, laying out the sub components.
+		 */
+		override public function draw() : void
+		{
+			var ypos:Number = 0;
+			for(var i:int = 0; i < numChildren; i++)
+			{
+				var child:DisplayObject = getChildAt(i);
+				child.y = ypos;
+				ypos += child.height;
+				ypos += _spacing;
+			}
+		}
+		
+		/**
+		 * Gets / sets the spacing between each sub component.
+		 */
+		public function set spacing(s:Number):void
+		{
+			_spacing = s;
+			invalidate();
+		}
+		public function get spacing():Number
+		{
+			return _spacing;
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VSlider.as
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VSlider.as b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VSlider.as
new file mode 100644
index 0000000..81ac337
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VSlider.as
@@ -0,0 +1,36 @@
+/**
+ * Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+ * Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.bit101.components
+{
+	import flash.display.DisplayObjectContainer;
+
+	public class VSlider extends Slider
+	{
+		/**
+		 * Constructor
+		 * @param parent The parent DisplayObjectContainer on which to add this Slider.
+		 * @param xpos The x position to place this component.
+		 * @param ypos The y position to place this component.
+		 * @param defaultHandler The event handling function to handle the default event for this component.
+		 */
+		public function VSlider(parent:DisplayObjectContainer=null, xpos:Number=0, ypos:Number=0, defaultHandler:Function = null)
+		{
+			super(Slider.VERTICAL, parent, xpos, ypos, defaultHandler);
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VUISlider.as
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VUISlider.as b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VUISlider.as
new file mode 100644
index 0000000..165ce97
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/VUISlider.as
@@ -0,0 +1,93 @@
+/**
+ * Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+ * Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.bit101.components
+{
+	import flash.display.DisplayObjectContainer;
+	import flash.events.Event;
+
+	public class VUISlider extends UISlider
+	{
+		
+		
+		/**
+		 * Constructor
+		 * @param parent The parent DisplayObjectContainer on which to add this VUISlider.
+		 * @param xpos The x position to place this component.
+		 * @param ypos The y position to place this component.
+		 * @param label The string to use as the label for this component.
+		 * @param defaultHandler The event handling function to handle the default event for this component.
+		 */
+		public function VUISlider(parent:DisplayObjectContainer = null, x:Number = 0, y:Number = 0, label:String = "", defaultEventHandler:Function = null)
+		{
+			_sliderClass = VSlider;
+			super(parent, x, y, label, defaultEventHandler);
+		}
+		
+		/**
+		 * Initializes this component.
+		 */
+		protected override function init():void
+		{
+			super.init();
+			setSize(20, 146);
+		}
+		
+		
+		
+		
+		///////////////////////////////////
+		// public methods
+		///////////////////////////////////
+		
+		override public function draw():void
+		{
+			super.draw();
+			_label.x = width / 2 - _label.width / 2;
+			
+			_slider.x = width / 2 - _slider.width / 2;
+			_slider.y = _label.height + 5;
+			_slider.height = height - _label.height - _valueLabel.height - 10;
+			
+			_valueLabel.x = width / 2 - _valueLabel.width / 2;
+			_valueLabel.y = _slider.y + _slider.height + 5;
+		}
+		
+		override protected function positionLabel():void
+		{
+			_valueLabel.x = width / 2 - _valueLabel.width / 2;
+		}
+		
+		
+		
+		
+		///////////////////////////////////
+		// event handlers
+		///////////////////////////////////
+		
+		///////////////////////////////////
+		// getter/setters
+		///////////////////////////////////
+		
+		override public function get width():Number
+		{
+			if(_label == null) return _width;
+			return Math.max(_width, _label.width);
+		}
+		
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/WheelMenu.as
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/WheelMenu.as b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/WheelMenu.as
new file mode 100644
index 0000000..215d616
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/WheelMenu.as
@@ -0,0 +1,431 @@
+/**
+ * Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+ * Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.bit101.components
+{
+	import flash.display.DisplayObjectContainer;
+	import flash.display.Sprite;
+	import flash.events.Event;
+	import flash.events.MouseEvent;
+	import flash.filters.DropShadowFilter;
+
+	public class WheelMenu extends Component
+	{
+		private var _borderColor:uint = 0xcccccc;
+		private var _buttons:Array;
+		private var _color:uint = 0xffffff;
+		private var _highlightColor:uint = 0xeeeeee;
+		private var _iconRadius:Number;
+		private var _innerRadius:Number;
+		private var _items:Array;
+		private var _numButtons:int;
+		private var _outerRadius:Number;
+		private var _selectedIndex:int = -1;
+		private var _startingAngle:Number = -90;
+		
+		
+		/**
+		 * Constructor
+		 * @param parent The parent DisplayObjectContainer on which to add this component.
+		 * @param numButtons The number of segments in the menu
+		 * @param outerRadius The radius of the menu as a whole.
+		 * @parem innerRadius The radius of the inner circle at the center of the menu.
+		 * @param defaultHandler The event handling function to handle the default event for this component (select in this case).
+		 */
+		public function WheelMenu(parent:DisplayObjectContainer, numButtons:int, outerRadius:Number = 80, iconRadius:Number = 60, innerRadius:Number = 10, defaultHandler:Function = null)
+		{
+			_numButtons = numButtons;
+			_outerRadius = outerRadius;
+			_iconRadius = iconRadius;
+			_innerRadius = innerRadius;
+			super(parent);
+			
+			if(defaultHandler != null)
+			{
+				addEventListener(Event.SELECT, defaultHandler);
+			}
+		}
+			
+		///////////////////////////////////
+		// protected methods
+		///////////////////////////////////
+		
+		/**
+		 * Initializes the component.
+		 */
+		override protected function init():void
+		{
+			super.init();
+			_items = new Array();
+			makeButtons();
+
+			filters = [new DropShadowFilter(4, 45, 0, 1, 4, 4, .2, 4)];
+			hide();
+		}
+		
+		/**
+		 * Creates the buttons that make up the wheel menu.
+		 */
+		protected function makeButtons():void
+		{
+			_buttons = new Array();
+			for(var i:int = 0; i < _numButtons; i++)
+			{
+				var btn:ArcButton = new ArcButton(Math.PI * 2 / _numButtons, _outerRadius, _iconRadius, _innerRadius);
+				btn.id = i;
+				btn.rotation = _startingAngle + 360 / _numButtons * i;
+				btn.addEventListener(Event.SELECT, onSelect);
+				addChild(btn);
+				_buttons.push(btn);
+			}
+		}
+		
+		///////////////////////////////////
+		// public methods
+		///////////////////////////////////
+		
+		/**
+		 * Hides the menu.
+		 */
+		public function hide():void
+		{
+			visible = false;
+			stage.removeEventListener(MouseEvent.MOUSE_UP, onStageMouseUp);
+		}
+		
+		/**
+		 * Sets the icon / text and data for a specific menu item.
+		 * @param index The index of the item to set icon/text and data for.
+		 * @iconOrLabel Either a display object instance, a class that extends DisplayObject, or text to show in a label.
+		 * @data Any data to associate with the item.
+		 */
+		public function setItem(index:int, iconOrLabel:Object, data:Object = null):void
+		{
+			_buttons[index].setIcon(iconOrLabel);
+			_items[index] = data;
+		}
+		
+		/**
+		 * Shows the menu - placing it on top level of parent and centering around mouse.
+		 */
+		public function show():void
+		{
+			parent.addChild(this);
+			x = Math.round(parent.mouseX)
+			y = Math.round(parent.mouseY);
+			_selectedIndex = -1;
+			visible = true;
+			stage.addEventListener(MouseEvent.MOUSE_UP, onStageMouseUp);
+		}
+		
+		///////////////////////////////////
+		// event handlers
+		///////////////////////////////////
+		
+		/**
+		 * Called when one of the buttons is selected. Sets selected index and dispatches select event.
+		 */
+		protected function onSelect(event:Event):void
+		{
+			_selectedIndex = event.target.id;
+			dispatchEvent(new Event(Event.SELECT));
+		}
+		
+		/**
+		 * Called when mouse is released. Hides menu.
+		 */
+		protected function onStageMouseUp(event:MouseEvent):void
+		{
+			hide();
+		}
+		
+		///////////////////////////////////
+		// getter / setters
+		///////////////////////////////////
+		
+		/**
+		 * Gets / sets the color of the border around buttons.
+		 */
+		public function set borderColor(value:uint):void
+		{
+			_borderColor = value;
+			for(var i:int = 0; i < _numButtons; i++)
+			{
+				_buttons[i].borderColor = _borderColor;
+			}
+		}
+		public function get borderColor():uint
+		{
+			return _borderColor;
+		}
+		
+		/**
+		 * Gets / sets the base color of buttons.
+		 */
+		public function set color(value:uint):void
+		{
+			_color = value;
+			for(var i:int = 0; i < _numButtons; i++)
+			{
+				_buttons[i].color = _color;
+			}
+		}
+		public function get color():uint
+		{
+			return _color;
+		}
+		
+		/**
+		 * Gets / sets the highlighted color of buttons.
+		 */
+		public function set highlightColor(value:uint):void
+		{
+			_highlightColor = value;
+			for(var i:int = 0; i < _numButtons; i++)
+			{
+				_buttons[i].selectedColor = _highlightColor;
+			}
+		}
+		public function get highlightColor():uint
+		{
+			return _highlightColor;
+		}
+		
+		/**
+		 * Gets the selected index.
+		 */
+		public function get selectedIndex():int
+		{
+			return _selectedIndex;
+		}
+		
+		/**
+		 * Gets the selected item.
+		 */
+		public function get selectedItem():Object
+		{
+			return _items[_selectedIndex];
+		}
+		
+	
+		
+	}
+}
+
+
+/**
+ * ArcButton class. Internal class only used by WheelMenu.
+ */
+import flash.display.DisplayObject;
+import flash.display.Sprite;
+import flash.events.Event;
+import flash.events.MouseEvent;
+import flash.utils.getDefinitionByName;
+import flash.display.Shape;
+import com.bit101.components.Label;
+
+class ArcButton extends Sprite
+{
+	public var id:int;
+	
+	private var _arc:Number;
+	private var _bg:Shape;
+	private var _borderColor:uint = 0xcccccc;
+	private var _color:uint = 0xffffff;
+	private var _highlightColor:uint = 0xeeeeee;
+	private var _icon:DisplayObject;
+	private var _iconHolder:Sprite;
+	private var _iconRadius:Number;
+	private var _innerRadius:Number;
+	private var _outerRadius:Number;
+	
+	/**
+	 * Constructor.
+	 * @param arc The radians of the arc to draw.
+	 * @param outerRadius The outer radius of the arc. 
+	 * @param innerRadius The inner radius of the arc.
+	 */
+	public function ArcButton(arc:Number, outerRadius:Number, iconRadius:Number, innerRadius:Number)
+	{
+		_arc = arc;
+		_outerRadius = outerRadius;
+		_iconRadius = iconRadius;
+		_innerRadius = innerRadius;
+		
+		_bg = new Shape();
+		addChild(_bg);
+		
+		_iconHolder = new Sprite();
+		addChild(_iconHolder);
+		
+		drawArc(0xffffff);
+		addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
+		addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
+		addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
+	}
+	
+	///////////////////////////////////
+	// private methods
+	///////////////////////////////////
+	
+	/**
+	 * Draws an arc of the specified color.
+	 * @param color The color to draw the arc.
+	 */
+	protected function drawArc(color:uint):void
+	{
+		_bg.graphics.clear();
+		_bg.graphics.lineStyle(2, _borderColor);
+		_bg.graphics.beginFill(color);
+		_bg.graphics.moveTo(_innerRadius, 0);
+		_bg.graphics.lineTo(_outerRadius, 0);
+		for(var i:Number = 0; i < _arc; i += .05)
+		{
+			_bg.graphics.lineTo(Math.cos(i) * _outerRadius, Math.sin(i) * _outerRadius);
+		}
+		_bg.graphics.lineTo(Math.cos(_arc) * _outerRadius, Math.sin(_arc) * _outerRadius);
+		_bg.graphics.lineTo(Math.cos(_arc) * _innerRadius, Math.sin(_arc) * _innerRadius);
+		for(i = _arc; i > 0; i -= .05)
+		{
+			_bg.graphics.lineTo(Math.cos(i) * _innerRadius, Math.sin(i) * _innerRadius);
+		}
+		_bg.graphics.lineTo(_innerRadius, 0);
+		
+		graphics.endFill();
+	}
+	
+	///////////////////////////////////
+	// public methods
+	///////////////////////////////////
+	
+	/**
+	 * Sets the icon or label of this button.
+	 * @param iconOrLabel Either a display object instance, a class that extends DisplayObject, or text to show in a label.
+	 */
+	public function setIcon(iconOrLabel:Object):void
+	{
+		if(iconOrLabel == null) return;
+		while(_iconHolder.numChildren > 0) _iconHolder.removeChildAt(0);
+		if(iconOrLabel is Class)
+		{
+			_icon = new iconOrLabel() as DisplayObject;
+		}
+		else if(iconOrLabel is DisplayObject)
+		{
+			_icon = iconOrLabel as DisplayObject;
+		}
+		else if(iconOrLabel is String)
+		{
+			_icon = new Label(null, 0, 0, iconOrLabel as String);
+			(_icon as Label).draw();
+		}
+		if(_icon != null)
+		{
+			var angle:Number = _bg.rotation * Math.PI / 180;
+			_icon.x = Math.round(-_icon.width / 2);
+			_icon.y = Math.round(-_icon.height / 2);
+			_iconHolder.addChild(_icon);
+			_iconHolder.x = Math.round(Math.cos(angle + _arc / 2) * _iconRadius);
+			_iconHolder.y = Math.round(Math.sin(angle + _arc / 2) * _iconRadius);
+		}
+	}
+	
+	
+	///////////////////////////////////
+	// event handlers
+	///////////////////////////////////
+	
+	/**
+	 * Called when mouse moves over this button. Draws highlight.
+	 */
+	protected function onMouseOver(event:MouseEvent):void
+	{
+		drawArc(_highlightColor);
+	}
+	
+	/**
+	 * Called when mouse moves out of this button. Draw base color.
+	 */
+	protected function onMouseOut(event:MouseEvent):void
+	{
+		drawArc(_color);
+	}
+	
+	/**
+	 * Called when mouse is released over this button. Dispatches select event.
+	 */
+	protected function onMouseUp(event:MouseEvent):void
+	{
+		dispatchEvent(new Event(Event.SELECT));
+	}
+
+	
+	///////////////////////////////////
+	// getter / setters
+	///////////////////////////////////
+	
+	/**
+	 * Sets / gets border color.
+	 */
+	public function set borderColor(value:uint):void
+	{
+		_borderColor = value;
+		drawArc(_color);
+	}
+	public function get borderColor():uint
+	{
+		return _borderColor;
+	}
+	
+	/**
+	 * Sets / gets base color.
+	 */
+	public function set color(value:uint):void
+	{
+		_color = value;
+		drawArc(_color);
+	}
+	public function get color():uint
+	{
+		return _color;
+	}
+	
+	/**
+	 * Sets / gets highlight color.
+	 */
+	public function set highlightColor(value:uint):void
+	{
+		_highlightColor = value;
+	}
+	public function get highlightColor():uint
+	{
+		return _highlightColor;
+	}
+	
+	/**
+	 * Overrides rotation by rotating arc only, allowing label / icon to be unrotated.
+	 */
+	override public function set rotation(value:Number):void
+	{
+		_bg.rotation = value;
+	}
+	override public function get rotation():Number
+	{
+		return _bg.rotation;
+	}
+	
+}

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Window.as
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Window.as b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Window.as
new file mode 100644
index 0000000..5699992
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.ManifestTest.manifestCreation/src/com/bit101/components/Window.as
@@ -0,0 +1,284 @@
+/**
+ * Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+ * Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.bit101.components
+{
+	import flash.display.DisplayObjectContainer;
+	import flash.display.Sprite;
+	import flash.events.Event;
+	import flash.events.MouseEvent;
+
+	public class Window extends Component
+	{
+		private var _title:String;
+		private var _titleBar:Panel;
+		private var _titleLabel:Label;
+		private var _panel:Panel;
+		private var _color:int = -1;
+		private var _shadow:Boolean = true;
+		private var _draggable:Boolean = true;
+		private var _minimizeButton:Sprite;
+		private var _hasMinimizeButton:Boolean = false;
+		private var _minimized:Boolean = false;
+		
+		
+		/**
+		 * Constructor
+		 * @param parent The parent DisplayObjectContainer on which to add this Panel.
+		 * @param xpos The x position to place this component.
+		 * @param ypos The y position to place this component.
+		 * @param title The string to display in the title bar.
+		 */
+		public function Window(parent:DisplayObjectContainer=null, xpos:Number=0, ypos:Number=0, title:String="Window")
+		{
+			_title = title;
+			super(parent, xpos, ypos);
+		}
+		
+		/**
+		 * Initializes the component.
+		 */
+		override protected function init():void
+		{
+			super.init();
+			setSize(100, 100);
+		}
+		
+		/**
+		 * Creates and adds the child display objects of this component.
+		 */
+		override protected function addChildren():void
+		{
+			_titleBar = new Panel(this);
+			_titleBar.buttonMode = true;
+			_titleBar.useHandCursor = true;
+			_titleBar.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
+			_titleBar.height = 20;
+			_titleLabel = new Label(_titleBar.content, 5, 1, _title);
+			
+			_panel = new Panel(this, 0, 20);
+			_panel.visible = !_minimized;
+			
+			_minimizeButton = new Sprite();
+			_minimizeButton.graphics.beginFill(0, 0);
+			_minimizeButton.graphics.drawRect(-10, -10, 20, 20);
+			_minimizeButton.graphics.endFill();
+			_minimizeButton.graphics.beginFill(0, .35);
+			_minimizeButton.graphics.moveTo(-5, -3);
+			_minimizeButton.graphics.lineTo(5, -3);
+			_minimizeButton.graphics.lineTo(0, 4);
+			_minimizeButton.graphics.lineTo(-5, -3);
+			_minimizeButton.graphics.endFill();
+			_minimizeButton.x = 10;
+			_minimizeButton.y = 10;
+			_minimizeButton.useHandCursor = true;
+			_minimizeButton.buttonMode = true;
+			_minimizeButton.addEventListener(MouseEvent.CLICK, onMinimize);
+			
+			filters = [getShadow(4, false)];
+		}
+		
+		
+		
+		
+		///////////////////////////////////
+		// public methods
+		///////////////////////////////////
+		
+		/**
+		 * Draws the visual ui of the component.
+		 */
+		override public function draw():void
+		{
+			super.draw();
+			_titleBar.color = _color;
+			_panel.color = _color;
+			_titleBar.width = width;
+			_titleLabel.x = _hasMinimizeButton ? 20 : 5;
+			_panel.setSize(_width, _height - 20);
+		}
+
+
+		///////////////////////////////////
+		// event handlers
+		///////////////////////////////////
+		
+		/**
+		 * Internal mouseDown handler. Starts a drag.
+		 * @param event The MouseEvent passed by the system.
+		 */
+		protected function onMouseDown(event:MouseEvent):void
+		{
+			this.startDrag();
+			stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
+			parent.addChild(this);
+		}
+		
+		/**
+		 * Internal mouseUp handler. Stops the drag.
+		 * @param event The MouseEvent passed by the system.
+		 */
+		protected function onMouseUp(event:MouseEvent):void
+		{
+			this.stopDrag();
+			stage.removeEventListener(MouseEvent.MOUSE_UP, onMouseUp);
+		}
+		
+		protected function onMinimize(event:MouseEvent):void
+		{
+			minimized = !minimized;
+		}
+		
+		///////////////////////////////////
+		// getter/setters
+		///////////////////////////////////
+		
+		/**
+		 * Gets / sets whether or not this Window will have a drop shadow.
+		 */
+		public function set shadow(b:Boolean):void
+		{
+			_shadow = b;
+			if(_shadow)
+			{
+				filters = [getShadow(4, false)];
+			}
+			else
+			{
+				filters = [];
+			}
+		}
+		public function get shadow():Boolean
+		{
+			return _shadow;
+		}
+		
+		/**
+		 * Gets / sets the background color of this panel.
+		 */
+		public function set color(c:int):void
+		{
+			_color = c;
+			invalidate();
+		}
+		public function get color():int
+		{
+			return _color;
+		}
+		
+		/**
+		 * Gets / sets the title shown in the title bar.
+		 */
+		public function set title(t:String):void
+		{
+			_title = t;
+			_titleLabel.text = _title;
+		}
+		public function get title():String
+		{
+			return _title;
+		}
+		
+		/**
+		 * Container for content added to this panel. This is just a reference to the content of the internal Panel, which is masked, so best to add children to content, rather than directly to the window.
+		 */
+		public function get content():DisplayObjectContainer
+		{
+			return _panel.content;
+		}
+		
+		/**
+		 * Sets / gets whether or not the window will be draggable by the title bar.
+		 */
+		public function set draggable(b:Boolean):void
+		{
+			_draggable = b;
+			_titleBar.buttonMode = _draggable;
+			_titleBar.useHandCursor = _draggable;
+			if(_draggable)
+			{
+				_titleBar.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
+			}
+			else
+			{
+				_titleBar.removeEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
+			}
+		}
+		public function get draggable():Boolean
+		{
+			return _draggable;
+		}
+		
+		/**
+		 * Gets / sets whether or not the window will show a minimize button that will toggle the window open and closed. A closed window will only show the title bar.
+		 */
+		public function set hasMinimizeButton(b:Boolean):void
+		{
+			_hasMinimizeButton = b;
+			if(_hasMinimizeButton)
+			{
+				addChild(_minimizeButton);
+			}
+			else if(contains(_minimizeButton))
+			{
+				removeChild(_minimizeButton);
+			}
+			invalidate();
+		}
+		public function get hasMinimizeButton():Boolean
+		{
+			return _hasMinimizeButton;
+		}
+		
+		/**
+		 * Gets / sets whether the window is closed. A closed window will only show its title bar.
+		 */
+		public function set minimized(value:Boolean):void
+		{
+			_minimized = value;
+			_panel.visible = !_minimized;
+			if(_minimized)
+			{
+				_minimizeButton.rotation = -90;
+			}
+			else
+			{
+				_minimizeButton.rotation = 0;
+			}
+			dispatchEvent(new Event(Event.RESIZE));
+		}
+		public function get minimized():Boolean
+		{
+			return _minimized;
+		}
+		
+		/**
+		 * Gets the height of the component. A minimized window's height will only be that of its title bar.
+		 */
+		override public function get height():Number
+		{
+			if(_panel.visible)
+			{
+				return super.height;
+			}
+			else
+			{
+				return 20;
+			}
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.MetadataTest.testMetadataTest/pom.xml
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.MetadataTest.testMetadataTest/pom.xml b/flexmojos-tests/net.flexmojos.oss.tests.concept.MetadataTest.testMetadataTest/pom.xml
new file mode 100644
index 0000000..8022f48
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.MetadataTest.testMetadataTest/pom.xml
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+    Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+-->
+<!-- Copyright 2008 Marvin Herman Froeder Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless 
+  required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions 
+  and limitations under the License. -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>info.rvin.itest</groupId>
+    <artifactId>metadata-test</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <packaging>swf</packaging>
+
+    <name>Metadata Test project</name>
+    <description>Some kind of description text for test flex-metadata bugs</description>
+
+    <developers>
+        <developer>
+            <id>velo.br</id>
+            <name>Marvin Herman Froeder</name>
+            <email>velo.br at gmail.com</email>
+            <roles>
+                <role>Author Developer</role>
+            </roles>
+            <timezone>-3</timezone>
+        </developer>
+        <developer>
+            <id>joost</id>
+            <name>Joost den Boer</name>
+            <email>jdboer at e-id.nl</email>
+            <url>http://joost.claroquesi.info</url>
+            <organization>E-id! Internet Strategies B.V.</organization>
+            <organizationUrl>http://www.e-id.nl</organizationUrl>
+            <roles>
+                <role>Developer Documentation</role>
+            </roles>
+            <timezone>+1</timezone>
+        </developer>
+        <developer>
+            <id>logan</id>
+            <name>Logan Allred</name>
+            <email>RedBugz at gmail.com</email>
+            <roles>
+                <role>Developer</role>
+            </roles>
+            <timezone>-5</timezone>
+        </developer>
+    </developers>
+
+    <contributors>
+        <contributor>
+            <name>Justin</name>
+        </contributor>
+    </contributors>
+
+    <build>
+        <sourceDirectory>src/main/flex</sourceDirectory>
+        <testSourceDirectory>src/test/flex</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>net.flexmojos.oss</groupId>
+                <artifactId>flexmojos-maven-plugin</artifactId>
+                <version>7.1.0-SNAPSHOT</version>
+                <extensions>true</extensions>
+                <configuration>
+                    <metadata>
+                        <description>Some kind of description text for test flex-metadata bugs</description>
+                        <localizedTitles>
+                            <en-us>title for en-us locale from metadata</en-us>
+                        </localizedTitles>
+                    </metadata>
+                </configuration>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.apache.flex.compiler</groupId>
+                        <artifactId>falcon-compiler</artifactId>
+                        <version>0.0.3-SNAPSHOT</version>
+                    </dependency>
+                </dependencies>
+            </plugin>
+        </plugins>
+    </build>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.flex</groupId>
+            <artifactId>framework</artifactId>
+            <version>4.13.0.20140701</version>
+            <type>pom</type>
+        </dependency>
+        <dependency>
+            <groupId>com.adobe.flash.framework</groupId>
+            <artifactId>playerglobal</artifactId>
+            <version>13.0</version>
+            <type>swc</type>
+        </dependency>
+    </dependencies>
+
+</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.MetadataTest.testMetadataTest/src/main/flex/main.mxml
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.MetadataTest.testMetadataTest/src/main/flex/main.mxml b/flexmojos-tests/net.flexmojos.oss.tests.concept.MetadataTest.testMetadataTest/src/main/flex/main.mxml
new file mode 100644
index 0000000..94c729f
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.MetadataTest.testMetadataTest/src/main/flex/main.mxml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+    Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+    Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+-->
+<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
+	<mx:Label text="Hello World" />
+</mx:Application>

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedApplication/pom.xml
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedApplication/pom.xml b/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedApplication/pom.xml
new file mode 100644
index 0000000..c602340
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedApplication/pom.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+    Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>info.rvin.itest</groupId>
+    <artifactId>optimized-application</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <packaging>swf</packaging>
+
+    <build>
+        <sourceDirectory>src/main/flex</sourceDirectory>
+        <testSourceDirectory>src/test/flex</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>net.flexmojos.oss</groupId>
+                <artifactId>flexmojos-maven-plugin</artifactId>
+                <version>7.1.0-SNAPSHOT</version>
+                <extensions>true</extensions>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>optimize-swf</goal>
+                        </goals>
+                    </execution>
+                </executions>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.apache.flex.compiler</groupId>
+                        <artifactId>falcon-compiler</artifactId>
+                        <version>0.0.3-SNAPSHOT</version>
+                    </dependency>
+                </dependencies>
+            </plugin>
+        </plugins>
+    </build>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.flex</groupId>
+            <artifactId>framework</artifactId>
+            <version>4.13.0.20140701</version>
+            <type>pom</type>
+        </dependency>
+        <dependency>
+            <groupId>com.adobe.flash.framework</groupId>
+            <artifactId>playerglobal</artifactId>
+            <version>13.0</version>
+            <type>swc</type>
+        </dependency>
+    </dependencies>
+
+</project>

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedApplication/src/main/flex/HelloWorld.as
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedApplication/src/main/flex/HelloWorld.as b/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedApplication/src/main/flex/HelloWorld.as
new file mode 100644
index 0000000..4b39ba2
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedApplication/src/main/flex/HelloWorld.as
@@ -0,0 +1,27 @@
+/**
+ * Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+ * Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package
+{
+	public class HelloWorld
+	{
+		public function HelloWorld()
+		{
+		}
+
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedFlexLibrary/pom.xml
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedFlexLibrary/pom.xml b/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedFlexLibrary/pom.xml
new file mode 100644
index 0000000..9ca3e37
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedFlexLibrary/pom.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+    Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>info.rvin.itest</groupId>
+    <artifactId>optimized-flex-library</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <packaging>swc</packaging>
+
+    <build>
+        <sourceDirectory>src/main/flex</sourceDirectory>
+        <testSourceDirectory>src/test/flex</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>net.flexmojos.oss</groupId>
+                <artifactId>flexmojos-maven-plugin</artifactId>
+                <version>7.1.0-SNAPSHOT</version>
+                <extensions>true</extensions>
+                <executions>
+                    <execution>
+                        <goals>
+                            <goal>create-rsl</goal>
+                        </goals>
+                    </execution>
+                </executions>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.apache.flex.compiler</groupId>
+                        <artifactId>falcon-compiler</artifactId>
+                        <version>0.0.3-SNAPSHOT</version>
+                    </dependency>
+                </dependencies>
+            </plugin>
+        </plugins>
+    </build>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.flex</groupId>
+            <artifactId>framework</artifactId>
+            <version>4.13.0.20140701</version>
+            <type>pom</type>
+        </dependency>
+        <dependency>
+            <groupId>com.adobe.flash.framework</groupId>
+            <artifactId>playerglobal</artifactId>
+            <version>13.0</version>
+            <type>swc</type>
+        </dependency>
+    </dependencies>
+
+</project>

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedFlexLibrary/src/main/flex/HelloWorld.as
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedFlexLibrary/src/main/flex/HelloWorld.as b/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedFlexLibrary/src/main/flex/HelloWorld.as
new file mode 100644
index 0000000..4b39ba2
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.OptimizationTest.testOptimizedFlexLibrary/src/main/flex/HelloWorld.as
@@ -0,0 +1,27 @@
+/**
+ * Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+ * Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package
+{
+	public class HelloWorld
+	{
+		public function HelloWorld()
+		{
+		}
+
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.TestSwfTest.testSwf/pom.xml
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.TestSwfTest.testSwf/pom.xml b/flexmojos-tests/net.flexmojos.oss.tests.concept.TestSwfTest.testSwf/pom.xml
new file mode 100644
index 0000000..53aa151
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.TestSwfTest.testSwf/pom.xml
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+    Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+-->
+<!-- Copyright 2008 Marvin Herman Froeder Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless 
+  required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions 
+  and limitations under the License. -->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+
+    <groupId>info.rvin.itest</groupId>
+    <artifactId>hello-world</artifactId>
+    <version>1.0-SNAPSHOT</version>
+    <packaging>swf</packaging>
+
+    <properties>
+        <isIt>false</isIt>
+    </properties>
+
+    <build>
+        <sourceDirectory>src/main/flex</sourceDirectory>
+        <testSourceDirectory>src/test/flex</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>net.flexmojos.oss</groupId>
+                <artifactId>flexmojos-maven-plugin</artifactId>
+                <version>7.1.0-SNAPSHOT</version>
+                <extensions>true</extensions>
+                <configuration>
+                    <defines>
+                        <property>
+                            <name>CFG::IT</name>
+                            <value>${isIt}</value>
+                        </property>
+                    </defines>
+                </configuration>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.apache.flex.compiler</groupId>
+                        <artifactId>falcon-compiler</artifactId>
+                        <version>0.0.3-SNAPSHOT</version>
+                    </dependency>
+                </dependencies>
+            </plugin>
+        </plugins>
+    </build>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.flex</groupId>
+            <artifactId>framework</artifactId>
+            <version>4.13.0.20140701</version>
+            <type>pom</type>
+        </dependency>
+        <dependency>
+            <groupId>com.adobe.flash.framework</groupId>
+            <artifactId>playerglobal</artifactId>
+            <version>13.0</version>
+            <type>swc</type>
+        </dependency>
+        <dependency>
+            <groupId>org.flexunit</groupId>
+            <artifactId>flexunit</artifactId>
+            <version>4.1.0</version>
+            <classifier>flex4</classifier>
+            <type>swc</type>
+            <scope>test</scope>
+        </dependency>
+    </dependencies>
+
+</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.concept.TestSwfTest.testSwf/src/main/flex/main.mxml
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.concept.TestSwfTest.testSwf/src/main/flex/main.mxml b/flexmojos-tests/net.flexmojos.oss.tests.concept.TestSwfTest.testSwf/src/main/flex/main.mxml
new file mode 100644
index 0000000..257fdab
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.concept.TestSwfTest.testSwf/src/main/flex/main.mxml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+    Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+    Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+-->
+    <!--
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+    -->
+
+    <!--
+        http://www.apache.org/licenses/LICENSE-2.0
+    -->
+
+    <!--
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="kill()">
+	<mx:Label text="Hello World" />
+
+    <mx:Script>
+        <![CDATA[
+            private function kill():void
+            {
+                CFG::IT {
+                  System.exit( 3539 );
+                }
+            }
+        ]]>
+    </mx:Script>
+
+</mx:Application>

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/pom.xml
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/pom.xml b/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/pom.xml
new file mode 100644
index 0000000..e68fbc2
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/pom.xml
@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+    Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<groupId>info.rvin.coverage.itest</groupId>
+	<artifactId>application-forced</artifactId>
+	<version>1.0-SNAPSHOT</version>
+	<packaging>swf</packaging>
+  
+	<build>
+        <sourceDirectory>src/main/flex</sourceDirectory>
+        <testSourceDirectory>src/test/flex</testSourceDirectory>
+        <plugins>
+			<plugin>
+				<groupId>net.flexmojos.oss</groupId>
+				<artifactId>flexmojos-maven-plugin</artifactId>
+                <version>7.1.0-SNAPSHOT</version>
+                <extensions>true</extensions>
+                <configuration>
+					<sourceFile>Forced.mxml</sourceFile>
+				</configuration>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.apache.flex.compiler</groupId>
+                        <artifactId>falcon-compiler</artifactId>
+                        <version>0.0.3-SNAPSHOT</version>
+                    </dependency>
+                </dependencies>
+            </plugin>
+		</plugins>
+	</build>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.flex</groupId>
+            <artifactId>framework</artifactId>
+            <version>4.13.0.20140701</version>
+            <type>pom</type>
+        </dependency>
+        <dependency>
+            <groupId>com.adobe.flash.framework</groupId>
+            <artifactId>playerglobal</artifactId>
+            <version>13.0</version>
+            <type>swc</type>
+        </dependency>
+    </dependencies>
+
+</project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Forced.mxml
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Forced.mxml b/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Forced.mxml
new file mode 100644
index 0000000..94c729f
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Forced.mxml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+    Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+    Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+-->
+<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
+	<mx:Label text="Hello World" />
+</mx:Application>

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Index.mxml
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Index.mxml b/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Index.mxml
new file mode 100644
index 0000000..2dafc90
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Index.mxml
@@ -0,0 +1,20 @@
+<!--
+
+    Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+    Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+-->
+//Is empty because should not be used

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Main.mxml
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Main.mxml b/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Main.mxml
new file mode 100644
index 0000000..2dafc90
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-forced/src/main/flex/Main.mxml
@@ -0,0 +1,20 @@
+<!--
+
+    Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+    Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+-->
+//Is empty because should not be used

http://git-wip-us.apache.org/repos/asf/flex-falcon/blob/b6e082df/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-index/pom.xml
----------------------------------------------------------------------
diff --git a/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-index/pom.xml b/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-index/pom.xml
new file mode 100644
index 0000000..0118247
--- /dev/null
+++ b/flexmojos-tests/net.flexmojos.oss.tests.coverage.SourceFileResolverTest.testSourceFileResolver/application-index/pom.xml
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Flexmojos is a set of maven goals to allow maven users to compile, optimize and test Flex SWF, Flex SWC, Air SWF and Air SWC.
+    Copyright (C) 2008-2012  Marvin Froeder <marvin@flexmojos.net>
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<groupId>info.rvin.coverage.itest</groupId>
+	<artifactId>application-index</artifactId>
+	<version>1.0-SNAPSHOT</version>
+	<packaging>swf</packaging>
+
+    <build>
+        <sourceDirectory>src/main/flex</sourceDirectory>
+        <testSourceDirectory>src/test/flex</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>net.flexmojos.oss</groupId>
+                <artifactId>flexmojos-maven-plugin</artifactId>
+                <version>7.1.0-SNAPSHOT</version>
+                <extensions>true</extensions>
+                <dependencies>
+                    <dependency>
+                        <groupId>org.apache.flex.compiler</groupId>
+                        <artifactId>falcon-compiler</artifactId>
+                        <version>0.0.3-SNAPSHOT</version>
+                    </dependency>
+                </dependencies>
+            </plugin>
+        </plugins>
+    </build>
+
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.flex</groupId>
+            <artifactId>framework</artifactId>
+            <version>4.13.0.20140701</version>
+            <type>pom</type>
+        </dependency>
+        <dependency>
+            <groupId>com.adobe.flash.framework</groupId>
+            <artifactId>playerglobal</artifactId>
+            <version>13.0</version>
+            <type>swc</type>
+        </dependency>
+    </dependencies>
+
+</project>


Mime
View raw message