You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ca...@apache.org on 2016/11/10 09:23:08 UTC

[01/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Repository: flex-asjs
Updated Branches:
  refs/heads/feature/mdl dd6421089 -> 1cb8e192b


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StyleExample/src/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/StyleExample/src/models/MyModel.as b/examples/flexjs/StyleExample/src/models/MyModel.as
deleted file mode 100644
index 20ab016..0000000
--- a/examples/flexjs/StyleExample/src/models/MyModel.as
+++ /dev/null
@@ -1,53 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.collections.ArrayList;
-	import org.apache.flex.collections.IArrayList;
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-
-	public class MyModel extends EventDispatcher
-	{
-		public function MyModel()
-		{
-		}
-
-        private var _strings:Array = ["AAPL", "ADBE", "FX", "GOOG", "MSFT", "NYSE", "YHOO"];
-        [Bindable("__NoChangeEvent__")]
-        public function get strings():Array
-        {
-            return _strings;
-        }
-
-        private var _gridData:ArrayList = new ArrayList([
-			{month:"January", days:31}, {month:"February", days:28},
-			{month:"March", days:31}, {month:"April", days:30},
-			{month:"May", days:31}, {month:"June", days:30},
-			{month:"July", days:31}, {month:"August", days:31},
-			{month:"September", days:30}, {month:"October", days:31},
-			{month:"November", days:30}, {month:"December", days:31}]);
-		[Bindable("__NoChangeEvent__")]
-		public function get gridData():IArrayList
-		{
-			return _gridData;
-		}
-
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/TodoListSampleApp.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/TodoListSampleApp.mxml b/examples/flexjs/TodoListSampleApp/src/TodoListSampleApp.mxml
deleted file mode 100644
index e734026..0000000
--- a/examples/flexjs/TodoListSampleApp/src/TodoListSampleApp.mxml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!---
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-                   xmlns:js="library://ns.apache.org/flexjs/basic"
-                   xmlns:controllers="sample.todo.controllers.*"
-                   xmlns:models="sample.todo.models.*"
-                   xmlns:views="sample.todo.views.*">
-
-    <js:valuesImpl>
-        <js:SimpleCSSValuesImpl/>
-    </js:valuesImpl>
-
-    <js:controller>
-        <controllers:TodoListController/>
-    </js:controller>
-
-    <js:model>
-        <models:TodoListModel/>
-    </js:model>
-
-    <js:initialView>
-        <views:TodoListView/>
-    </js:initialView>
-
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/main/flex/TodoListSampleApp.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/main/flex/TodoListSampleApp.mxml b/examples/flexjs/TodoListSampleApp/src/main/flex/TodoListSampleApp.mxml
new file mode 100644
index 0000000..e734026
--- /dev/null
+++ b/examples/flexjs/TodoListSampleApp/src/main/flex/TodoListSampleApp.mxml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+                   xmlns:js="library://ns.apache.org/flexjs/basic"
+                   xmlns:controllers="sample.todo.controllers.*"
+                   xmlns:models="sample.todo.models.*"
+                   xmlns:views="sample.todo.views.*">
+
+    <js:valuesImpl>
+        <js:SimpleCSSValuesImpl/>
+    </js:valuesImpl>
+
+    <js:controller>
+        <controllers:TodoListController/>
+    </js:controller>
+
+    <js:model>
+        <models:TodoListModel/>
+    </js:model>
+
+    <js:initialView>
+        <views:TodoListView/>
+    </js:initialView>
+
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/controllers/TodoListController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/controllers/TodoListController.as b/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/controllers/TodoListController.as
new file mode 100644
index 0000000..6402a9c
--- /dev/null
+++ b/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/controllers/TodoListController.as
@@ -0,0 +1,77 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package sample.todo.controllers {
+	import org.apache.flex.core.Application;
+	import org.apache.flex.core.IDocument;
+	import org.apache.flex.events.Event;
+
+	import sample.todo.events.TodoListEvent;
+	import sample.todo.models.TodoListModel;
+
+	public class TodoListController implements IDocument {
+
+		private var model:TodoListModel;
+
+		public function TodoListController(app:Application = null) {
+			 if (app != null) {
+ 				// store the model for future use.
+ 				model = app.model as TodoListModel;
+ 			}
+		}
+
+		/**
+		 *
+		 */
+		public function setDocument(document:Object, id:String = null):void {
+			var app:Application = document as Application;
+			app.addEventListener("viewChanged", viewChangeHandler);
+
+			// store the model for future use
+			model = app.model as TodoListModel;
+		}
+
+		/**
+		 *
+		 * @param event
+		 */
+		private function viewChangeHandler(event:Event):void {
+			var app:Application = event.target as Application;
+			app.initialView.addEventListener(TodoListEvent.LOG_TODO, logTodo);
+			app.initialView.addEventListener(TodoListEvent.ITEM_CHECKED,handleItemChecked);
+			app.initialView.addEventListener(TodoListEvent.ITEM_REMOVE_REQUEST, handleItemRemove);
+		}
+
+		/**
+		 * log todo
+		 * @param event
+		 */
+		public function logTodo(evt:TodoListEvent):void {
+			// still need to change model a view get the changes
+			model.addTodo(evt.todo);
+		}
+
+		public function handleItemChecked(event:TodoListEvent):void {
+			model.toggleItemCheck(event.item);
+		}
+
+		public function handleItemRemove(event:TodoListEvent):void {
+			model.removeItem(event.item);
+		}
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/events/TodoListEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/events/TodoListEvent.as b/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/events/TodoListEvent.as
new file mode 100644
index 0000000..7c55b61
--- /dev/null
+++ b/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/events/TodoListEvent.as
@@ -0,0 +1,42 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package sample.todo.events {
+    import org.apache.flex.events.Event;
+
+    public class TodoListEvent extends Event {
+
+        public static const LOG_TODO:String = "logTodoEvent";
+		public static const ITEM_CHECKED:String = "itemChecked";
+		public static const ITEM_REMOVE_REQUEST:String = "itemRemoveRequest";
+
+        /**
+         * the todo to log
+         */
+        public var todo:String = null;
+		
+		/**
+		 * handle item selection or removal
+		 */
+		public var item:Object = null;
+
+        public function TodoListEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false) {
+            super(type, bubbles, cancelable);
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/models/TodoListModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/models/TodoListModel.as b/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/models/TodoListModel.as
new file mode 100644
index 0000000..780d4f5
--- /dev/null
+++ b/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/models/TodoListModel.as
@@ -0,0 +1,99 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package sample.todo.models {
+    import org.apache.flex.events.Event;
+    import org.apache.flex.events.EventDispatcher;
+
+    public class TodoListModel extends EventDispatcher {
+        public function TodoListModel() {
+            super();
+			_filterFunction();
+        }
+
+        private var _todos:Array = [{title:"Get something", selected:true},
+			{title:"Do this", selected:true},
+			{title:"Do that", selected:false}];
+		
+		private var _filteredList:Array = [];
+		private var _filterFunction:Function = showAllTodos;
+
+        [Bindable("todoListChanged")]
+        public function get todos():Array {
+			return _filteredList;
+        }
+
+        public function set todos(value:Array):void {
+            _todos = value;
+			_filterFunction();
+			dispatchEvent(new Event("todoListChanged"));
+        }
+
+        public function addTodo(value:String):Object
+        {
+			var item:Object = {title:value, selected:false};
+			_todos.push(item);
+			
+			_filterFunction();
+			
+			return item;
+        }
+		
+		public function showAllTodos() : void {
+			_filteredList = _todos.slice();
+			dispatchEvent(new Event("todoListChanged"));
+			_filterFunction = showAllTodos;
+		}
+		
+		public function showActiveTodos() : void {
+			_filteredList = [];
+			for (var i:int=0; i < _todos.length; i++) {
+				if (!_todos[i].selected) {
+					_filteredList.push(_todos[i]);
+				}
+			}
+			dispatchEvent(new Event("todoListChanged"));
+			_filterFunction = showActiveTodos;
+		}
+		
+		public function showCompletedTodos() : void {
+			_filteredList = [];
+			for (var i:int=0; i < _todos.length; i++) {
+				if (_todos[i].selected) {
+					_filteredList.push(_todos[i]);
+				}
+			}
+			dispatchEvent(new Event("todoListChanged"));
+			_filterFunction = showCompletedTodos;
+		}
+		
+		public function toggleItemCheck(item:Object) : void {
+			item.selected = !item.selected;
+			_filterFunction();
+			dispatchEvent(new Event("todoListChanged"));
+		}
+		
+		public function removeItem(item:Object) : void {
+			var index:int = _todos.indexOf(item);
+			if (index >= 0) {
+				_todos.splice(index,1);
+			}
+			_filterFunction();
+		}
+    }
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/renderers/TodoItemRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/renderers/TodoItemRenderer.as b/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/renderers/TodoItemRenderer.as
new file mode 100644
index 0000000..7a0d6e3
--- /dev/null
+++ b/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/renderers/TodoItemRenderer.as
@@ -0,0 +1,90 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package sample.todo.renderers {
+
+    import org.apache.flex.events.Event;
+    import org.apache.flex.events.MouseEvent;
+    import org.apache.flex.html.Button;
+    import org.apache.flex.html.CheckBox;
+    import org.apache.flex.html.Label;
+    import org.apache.flex.html.supportClasses.DataItemRenderer;
+    
+	[Event("checkChanged","org.apache.flex.events.Event")]
+	[Event("removeRequest","org.apache.flex.events.Event")]
+
+    public class TodoItemRenderer extends DataItemRenderer {
+		
+        public function TodoItemRenderer() {
+            super();
+			className = "TodoItemRenderer";
+        }
+
+        private var checkbox:CheckBox;
+        private var title:Label;
+        private var removeButton:Button;
+
+        override public function addedToParent():void {
+            super.addedToParent();
+
+            checkbox = new CheckBox();
+            addElement(checkbox);
+			checkbox.addEventListener("change", checkBoxChange);
+
+            title = new Label();
+            addElement(title);
+
+            removeButton = new Button();
+            addElement(removeButton);
+			removeButton.addEventListener("click", removeClick);
+        }
+
+        override public function set data(value:Object):void {
+            super.data = value;
+
+            checkbox.selected = data.selected;
+            title.text = data.title;
+        }
+
+        override public function adjustSize():void {
+        	var hgt:Number = this.height;
+            var cy:Number = this.height / 2;
+
+            checkbox.x = 10;
+            checkbox.y = cy;
+
+            title.x = 60;
+            title.y = cy;
+
+            removeButton.x = 300;
+            removeButton.y = cy;
+
+            updateRenderer();
+        }
+
+		private function checkBoxChange(event:Event):void
+		{
+			dispatchEvent(new Event("checkChanged"));
+		}
+
+		private function removeClick(event:MouseEvent):void
+		{
+			dispatchEvent(new Event("removeRequest"));
+		}
+    }
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/views/TodoListView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/views/TodoListView.mxml b/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/views/TodoListView.mxml
new file mode 100644
index 0000000..9ddf675
--- /dev/null
+++ b/examples/flexjs/TodoListSampleApp/src/main/flex/sample/todo/views/TodoListView.mxml
@@ -0,0 +1,172 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+                xmlns:js="library://ns.apache.org/flexjs/basic"
+                xmlns:svg="library://ns.apache.org/flexjs/svg"
+				initComplete="setup()" 
+				xmlns:renderers="sample.todo.renderers.*">
+
+    <fx:Script>
+		<![CDATA[
+			import org.apache.flex.events.Event;
+			import org.apache.flex.events.IEventDispatcher;
+			import org.apache.flex.events.ItemRendererEvent;
+			import org.apache.flex.html.beads.controllers.ItemRendererMouseController;
+			
+			import sample.todo.events.TodoListEvent;
+			import sample.todo.models.TodoListModel;
+			import sample.todo.renderers.TodoItemRenderer;
+			
+			private function setup():void {
+				// Listening for events on the model will update the UI. Functions like
+				// showActive() change the model which results in this event being
+				// dispatched.
+				(applicationModel as TodoListModel).addEventListener("todoListChanged", updateStatus);
+				updateStatus(null);
+			}
+			
+			/**
+			 * add to the list the text entered by the user, in the text box,
+			 * as a new todo list item
+			 */
+			public function logTodo():void {
+				var logEvent:TodoListEvent = new TodoListEvent(TodoListEvent.LOG_TODO);
+				logEvent.todo = todoInput.text;
+				dispatchEvent(logEvent);
+				
+				todoInput.text = "";
+			}
+			
+			private function updateStatus(event:org.apache.flex.events.Event):void {
+				var numberLeft:Number = 0;
+				
+				var model: TodoListModel = applicationModel as TodoListModel;
+				var list: Array = model.todos;
+				for (var i:int=0; i < list.length; i++) {
+					var item:Object = list[i];
+					numberLeft += item.selected ? 0 : 1;
+				}
+				
+				statusLabel.text = numberLeft + " items left";
+			}
+			
+			/**
+			 * show all todos
+			 */
+			private function showAll():void {
+				(applicationModel as TodoListModel).showAllTodos();
+			}
+			
+			/**
+			 * show active todos
+			 */
+			private function showActive():void {
+				(applicationModel as TodoListModel).showActiveTodos();
+			}
+			
+			/**
+			 * show completed todos
+			 */
+			private function showCompleted():void {
+				(applicationModel as TodoListModel).showCompletedTodos();
+			}
+			
+			/**
+			 * Handle creation of itemRenderers by listening for the events they dispatch.
+			 */
+			private function handleRendererCreated(event:ItemRendererEvent):void {
+				var renderer:IEventDispatcher = event.itemRenderer as IEventDispatcher;
+				renderer.addEventListener("checkChanged",itemChecked);
+				renderer.addEventListener("removeRequest",itemRemove);
+			}
+			
+			/**
+			 * When an item is checked, form new event and dispatch to controller.
+			 */
+			private function itemChecked(event:Event):void
+			{
+				var renderer:TodoItemRenderer = event.target as TodoItemRenderer;
+
+				var newEvent:TodoListEvent = new TodoListEvent(TodoListEvent.ITEM_CHECKED);
+				newEvent.item = renderer.data;
+				dispatchEvent(newEvent);
+			}
+
+			/**
+			 * When an item is removed, form a new event and dispatch to the controller.
+			 */
+			private function itemRemove(event:Event):void
+			{
+				var renderer:TodoItemRenderer = event.target as TodoItemRenderer;
+
+				var newEvent:TodoListEvent = new TodoListEvent(TodoListEvent.ITEM_REMOVE_REQUEST);
+				newEvent.item = renderer.data;
+				dispatchEvent(newEvent);
+			}
+        ]]>
+	</fx:Script>
+	
+	<js:beads>
+		<js:ViewDataBinding />
+	</js:beads>
+
+    <js:Panel title="FlexJS TODO List" width="600">
+        <js:beads>
+            <js:VerticalLayout/>
+        </js:beads>
+
+		<js:HContainer width="100%">
+        	<js:TextInput id="todoInput"
+                         width="85%"/>
+            <js:TextButton text="Enter" click="logTodo()" width="15%" />
+        </js:HContainer>
+
+        <js:List id="todoList"
+                    itemRenderer="sample.todo.renderers.TodoItemRenderer"
+					dataProvider="{TodoListModel(applicationModel).todos}"
+                    width="100%" height="400">
+			<js:beads>
+				<js:DataItemRendererFactoryForArrayData itemRendererCreated="handleRendererCreated(event)" />
+			</js:beads>
+        </js:List>
+
+        <js:Container>
+            <js:beads>
+                <js:HorizontalLayout/>
+            </js:beads>
+            <js:Label id="statusLabel" text="N items left" width="295"/>
+            <svg:TextButton text="All" width="100" height="30" click="showAll()" />
+            <svg:TextButton text="Active" width="100" height="30" click="showActive()" />
+            <svg:TextButton text="Completed" width="100" height="30" click="showCompleted()" />
+        </js:Container>
+    </js:Panel>
+
+    <fx:Style>
+        @namespace basic "library://ns.apache.org/flexjs/basic";
+        @namespace renderers "sample.todo.renderers.*";
+
+        renderers|TodoItemRenderer {
+			backgroundColor: #FFFFFF;
+            height: 40px;
+            IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ItemRendererMouseController");
+        }
+    </fx:Style>
+
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/sample/todo/controllers/TodoListController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/sample/todo/controllers/TodoListController.as b/examples/flexjs/TodoListSampleApp/src/sample/todo/controllers/TodoListController.as
deleted file mode 100644
index 6402a9c..0000000
--- a/examples/flexjs/TodoListSampleApp/src/sample/todo/controllers/TodoListController.as
+++ /dev/null
@@ -1,77 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package sample.todo.controllers {
-	import org.apache.flex.core.Application;
-	import org.apache.flex.core.IDocument;
-	import org.apache.flex.events.Event;
-
-	import sample.todo.events.TodoListEvent;
-	import sample.todo.models.TodoListModel;
-
-	public class TodoListController implements IDocument {
-
-		private var model:TodoListModel;
-
-		public function TodoListController(app:Application = null) {
-			 if (app != null) {
- 				// store the model for future use.
- 				model = app.model as TodoListModel;
- 			}
-		}
-
-		/**
-		 *
-		 */
-		public function setDocument(document:Object, id:String = null):void {
-			var app:Application = document as Application;
-			app.addEventListener("viewChanged", viewChangeHandler);
-
-			// store the model for future use
-			model = app.model as TodoListModel;
-		}
-
-		/**
-		 *
-		 * @param event
-		 */
-		private function viewChangeHandler(event:Event):void {
-			var app:Application = event.target as Application;
-			app.initialView.addEventListener(TodoListEvent.LOG_TODO, logTodo);
-			app.initialView.addEventListener(TodoListEvent.ITEM_CHECKED,handleItemChecked);
-			app.initialView.addEventListener(TodoListEvent.ITEM_REMOVE_REQUEST, handleItemRemove);
-		}
-
-		/**
-		 * log todo
-		 * @param event
-		 */
-		public function logTodo(evt:TodoListEvent):void {
-			// still need to change model a view get the changes
-			model.addTodo(evt.todo);
-		}
-
-		public function handleItemChecked(event:TodoListEvent):void {
-			model.toggleItemCheck(event.item);
-		}
-
-		public function handleItemRemove(event:TodoListEvent):void {
-			model.removeItem(event.item);
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/sample/todo/events/TodoListEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/sample/todo/events/TodoListEvent.as b/examples/flexjs/TodoListSampleApp/src/sample/todo/events/TodoListEvent.as
deleted file mode 100644
index 7c55b61..0000000
--- a/examples/flexjs/TodoListSampleApp/src/sample/todo/events/TodoListEvent.as
+++ /dev/null
@@ -1,42 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package sample.todo.events {
-    import org.apache.flex.events.Event;
-
-    public class TodoListEvent extends Event {
-
-        public static const LOG_TODO:String = "logTodoEvent";
-		public static const ITEM_CHECKED:String = "itemChecked";
-		public static const ITEM_REMOVE_REQUEST:String = "itemRemoveRequest";
-
-        /**
-         * the todo to log
-         */
-        public var todo:String = null;
-		
-		/**
-		 * handle item selection or removal
-		 */
-		public var item:Object = null;
-
-        public function TodoListEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false) {
-            super(type, bubbles, cancelable);
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/sample/todo/models/TodoListModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/sample/todo/models/TodoListModel.as b/examples/flexjs/TodoListSampleApp/src/sample/todo/models/TodoListModel.as
deleted file mode 100644
index 780d4f5..0000000
--- a/examples/flexjs/TodoListSampleApp/src/sample/todo/models/TodoListModel.as
+++ /dev/null
@@ -1,99 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package sample.todo.models {
-    import org.apache.flex.events.Event;
-    import org.apache.flex.events.EventDispatcher;
-
-    public class TodoListModel extends EventDispatcher {
-        public function TodoListModel() {
-            super();
-			_filterFunction();
-        }
-
-        private var _todos:Array = [{title:"Get something", selected:true},
-			{title:"Do this", selected:true},
-			{title:"Do that", selected:false}];
-		
-		private var _filteredList:Array = [];
-		private var _filterFunction:Function = showAllTodos;
-
-        [Bindable("todoListChanged")]
-        public function get todos():Array {
-			return _filteredList;
-        }
-
-        public function set todos(value:Array):void {
-            _todos = value;
-			_filterFunction();
-			dispatchEvent(new Event("todoListChanged"));
-        }
-
-        public function addTodo(value:String):Object
-        {
-			var item:Object = {title:value, selected:false};
-			_todos.push(item);
-			
-			_filterFunction();
-			
-			return item;
-        }
-		
-		public function showAllTodos() : void {
-			_filteredList = _todos.slice();
-			dispatchEvent(new Event("todoListChanged"));
-			_filterFunction = showAllTodos;
-		}
-		
-		public function showActiveTodos() : void {
-			_filteredList = [];
-			for (var i:int=0; i < _todos.length; i++) {
-				if (!_todos[i].selected) {
-					_filteredList.push(_todos[i]);
-				}
-			}
-			dispatchEvent(new Event("todoListChanged"));
-			_filterFunction = showActiveTodos;
-		}
-		
-		public function showCompletedTodos() : void {
-			_filteredList = [];
-			for (var i:int=0; i < _todos.length; i++) {
-				if (_todos[i].selected) {
-					_filteredList.push(_todos[i]);
-				}
-			}
-			dispatchEvent(new Event("todoListChanged"));
-			_filterFunction = showCompletedTodos;
-		}
-		
-		public function toggleItemCheck(item:Object) : void {
-			item.selected = !item.selected;
-			_filterFunction();
-			dispatchEvent(new Event("todoListChanged"));
-		}
-		
-		public function removeItem(item:Object) : void {
-			var index:int = _todos.indexOf(item);
-			if (index >= 0) {
-				_todos.splice(index,1);
-			}
-			_filterFunction();
-		}
-    }
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/sample/todo/renderers/TodoItemRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/sample/todo/renderers/TodoItemRenderer.as b/examples/flexjs/TodoListSampleApp/src/sample/todo/renderers/TodoItemRenderer.as
deleted file mode 100644
index 7a0d6e3..0000000
--- a/examples/flexjs/TodoListSampleApp/src/sample/todo/renderers/TodoItemRenderer.as
+++ /dev/null
@@ -1,90 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package sample.todo.renderers {
-
-    import org.apache.flex.events.Event;
-    import org.apache.flex.events.MouseEvent;
-    import org.apache.flex.html.Button;
-    import org.apache.flex.html.CheckBox;
-    import org.apache.flex.html.Label;
-    import org.apache.flex.html.supportClasses.DataItemRenderer;
-    
-	[Event("checkChanged","org.apache.flex.events.Event")]
-	[Event("removeRequest","org.apache.flex.events.Event")]
-
-    public class TodoItemRenderer extends DataItemRenderer {
-		
-        public function TodoItemRenderer() {
-            super();
-			className = "TodoItemRenderer";
-        }
-
-        private var checkbox:CheckBox;
-        private var title:Label;
-        private var removeButton:Button;
-
-        override public function addedToParent():void {
-            super.addedToParent();
-
-            checkbox = new CheckBox();
-            addElement(checkbox);
-			checkbox.addEventListener("change", checkBoxChange);
-
-            title = new Label();
-            addElement(title);
-
-            removeButton = new Button();
-            addElement(removeButton);
-			removeButton.addEventListener("click", removeClick);
-        }
-
-        override public function set data(value:Object):void {
-            super.data = value;
-
-            checkbox.selected = data.selected;
-            title.text = data.title;
-        }
-
-        override public function adjustSize():void {
-        	var hgt:Number = this.height;
-            var cy:Number = this.height / 2;
-
-            checkbox.x = 10;
-            checkbox.y = cy;
-
-            title.x = 60;
-            title.y = cy;
-
-            removeButton.x = 300;
-            removeButton.y = cy;
-
-            updateRenderer();
-        }
-
-		private function checkBoxChange(event:Event):void
-		{
-			dispatchEvent(new Event("checkChanged"));
-		}
-
-		private function removeClick(event:MouseEvent):void
-		{
-			dispatchEvent(new Event("removeRequest"));
-		}
-    }
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TodoListSampleApp/src/sample/todo/views/TodoListView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TodoListSampleApp/src/sample/todo/views/TodoListView.mxml b/examples/flexjs/TodoListSampleApp/src/sample/todo/views/TodoListView.mxml
deleted file mode 100644
index 9ddf675..0000000
--- a/examples/flexjs/TodoListSampleApp/src/sample/todo/views/TodoListView.mxml
+++ /dev/null
@@ -1,172 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-                xmlns:js="library://ns.apache.org/flexjs/basic"
-                xmlns:svg="library://ns.apache.org/flexjs/svg"
-				initComplete="setup()" 
-				xmlns:renderers="sample.todo.renderers.*">
-
-    <fx:Script>
-		<![CDATA[
-			import org.apache.flex.events.Event;
-			import org.apache.flex.events.IEventDispatcher;
-			import org.apache.flex.events.ItemRendererEvent;
-			import org.apache.flex.html.beads.controllers.ItemRendererMouseController;
-			
-			import sample.todo.events.TodoListEvent;
-			import sample.todo.models.TodoListModel;
-			import sample.todo.renderers.TodoItemRenderer;
-			
-			private function setup():void {
-				// Listening for events on the model will update the UI. Functions like
-				// showActive() change the model which results in this event being
-				// dispatched.
-				(applicationModel as TodoListModel).addEventListener("todoListChanged", updateStatus);
-				updateStatus(null);
-			}
-			
-			/**
-			 * add to the list the text entered by the user, in the text box,
-			 * as a new todo list item
-			 */
-			public function logTodo():void {
-				var logEvent:TodoListEvent = new TodoListEvent(TodoListEvent.LOG_TODO);
-				logEvent.todo = todoInput.text;
-				dispatchEvent(logEvent);
-				
-				todoInput.text = "";
-			}
-			
-			private function updateStatus(event:org.apache.flex.events.Event):void {
-				var numberLeft:Number = 0;
-				
-				var model: TodoListModel = applicationModel as TodoListModel;
-				var list: Array = model.todos;
-				for (var i:int=0; i < list.length; i++) {
-					var item:Object = list[i];
-					numberLeft += item.selected ? 0 : 1;
-				}
-				
-				statusLabel.text = numberLeft + " items left";
-			}
-			
-			/**
-			 * show all todos
-			 */
-			private function showAll():void {
-				(applicationModel as TodoListModel).showAllTodos();
-			}
-			
-			/**
-			 * show active todos
-			 */
-			private function showActive():void {
-				(applicationModel as TodoListModel).showActiveTodos();
-			}
-			
-			/**
-			 * show completed todos
-			 */
-			private function showCompleted():void {
-				(applicationModel as TodoListModel).showCompletedTodos();
-			}
-			
-			/**
-			 * Handle creation of itemRenderers by listening for the events they dispatch.
-			 */
-			private function handleRendererCreated(event:ItemRendererEvent):void {
-				var renderer:IEventDispatcher = event.itemRenderer as IEventDispatcher;
-				renderer.addEventListener("checkChanged",itemChecked);
-				renderer.addEventListener("removeRequest",itemRemove);
-			}
-			
-			/**
-			 * When an item is checked, form new event and dispatch to controller.
-			 */
-			private function itemChecked(event:Event):void
-			{
-				var renderer:TodoItemRenderer = event.target as TodoItemRenderer;
-
-				var newEvent:TodoListEvent = new TodoListEvent(TodoListEvent.ITEM_CHECKED);
-				newEvent.item = renderer.data;
-				dispatchEvent(newEvent);
-			}
-
-			/**
-			 * When an item is removed, form a new event and dispatch to the controller.
-			 */
-			private function itemRemove(event:Event):void
-			{
-				var renderer:TodoItemRenderer = event.target as TodoItemRenderer;
-
-				var newEvent:TodoListEvent = new TodoListEvent(TodoListEvent.ITEM_REMOVE_REQUEST);
-				newEvent.item = renderer.data;
-				dispatchEvent(newEvent);
-			}
-        ]]>
-	</fx:Script>
-	
-	<js:beads>
-		<js:ViewDataBinding />
-	</js:beads>
-
-    <js:Panel title="FlexJS TODO List" width="600">
-        <js:beads>
-            <js:VerticalLayout/>
-        </js:beads>
-
-		<js:HContainer width="100%">
-        	<js:TextInput id="todoInput"
-                         width="85%"/>
-            <js:TextButton text="Enter" click="logTodo()" width="15%" />
-        </js:HContainer>
-
-        <js:List id="todoList"
-                    itemRenderer="sample.todo.renderers.TodoItemRenderer"
-					dataProvider="{TodoListModel(applicationModel).todos}"
-                    width="100%" height="400">
-			<js:beads>
-				<js:DataItemRendererFactoryForArrayData itemRendererCreated="handleRendererCreated(event)" />
-			</js:beads>
-        </js:List>
-
-        <js:Container>
-            <js:beads>
-                <js:HorizontalLayout/>
-            </js:beads>
-            <js:Label id="statusLabel" text="N items left" width="295"/>
-            <svg:TextButton text="All" width="100" height="30" click="showAll()" />
-            <svg:TextButton text="Active" width="100" height="30" click="showActive()" />
-            <svg:TextButton text="Completed" width="100" height="30" click="showCompleted()" />
-        </js:Container>
-    </js:Panel>
-
-    <fx:Style>
-        @namespace basic "library://ns.apache.org/flexjs/basic";
-        @namespace renderers "sample.todo.renderers.*";
-
-        renderers|TodoItemRenderer {
-			backgroundColor: #FFFFFF;
-            height: 40px;
-            IBeadController: ClassReference("org.apache.flex.html.beads.controllers.ItemRendererMouseController");
-        }
-    </fx:Style>
-
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TreeExample/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TreeExample/src/MyInitialView.mxml b/examples/flexjs/TreeExample/src/MyInitialView.mxml
deleted file mode 100644
index 2418cd7..0000000
--- a/examples/flexjs/TreeExample/src/MyInitialView.mxml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:js="library://ns.apache.org/flexjs/basic">
-    
-    <js:beads>
-        <js:ViewDataBinding />
-    </js:beads>
-	
-	<js:Tree id="tree" x="30" y="30" width="400" height="300" 
-			 labelField="title">
-		<js:beads>
-			<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="treeData"
-				destinationPropertyName="dataProvider" />
-		</js:beads>
-	</js:Tree>
-
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TreeExample/src/TreeExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TreeExample/src/TreeExample.mxml b/examples/flexjs/TreeExample/src/TreeExample.mxml
deleted file mode 100644
index e969146..0000000
--- a/examples/flexjs/TreeExample/src/TreeExample.mxml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!---
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-				   xmlns:local="*"
-				   xmlns:models="models.*"
-				   xmlns:js="library://ns.apache.org/flexjs/basic" 
-				   >
-	
-	<js:valuesImpl>
-		<js:SimpleCSSValuesImpl />
-	</js:valuesImpl>
-	<js:model>
-		<models:MyModel />
-	</js:model>
-	<js:initialView>
-		<local:MyInitialView />
-	</js:initialView>
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TreeExample/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TreeExample/src/main/flex/MyInitialView.mxml b/examples/flexjs/TreeExample/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..2418cd7
--- /dev/null
+++ b/examples/flexjs/TreeExample/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:js="library://ns.apache.org/flexjs/basic">
+    
+    <js:beads>
+        <js:ViewDataBinding />
+    </js:beads>
+	
+	<js:Tree id="tree" x="30" y="30" width="400" height="300" 
+			 labelField="title">
+		<js:beads>
+			<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="treeData"
+				destinationPropertyName="dataProvider" />
+		</js:beads>
+	</js:Tree>
+
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TreeExample/src/main/flex/TreeExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TreeExample/src/main/flex/TreeExample.mxml b/examples/flexjs/TreeExample/src/main/flex/TreeExample.mxml
new file mode 100644
index 0000000..e969146
--- /dev/null
+++ b/examples/flexjs/TreeExample/src/main/flex/TreeExample.mxml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				   xmlns:local="*"
+				   xmlns:models="models.*"
+				   xmlns:js="library://ns.apache.org/flexjs/basic" 
+				   >
+	
+	<js:valuesImpl>
+		<js:SimpleCSSValuesImpl />
+	</js:valuesImpl>
+	<js:model>
+		<models:MyModel />
+	</js:model>
+	<js:initialView>
+		<local:MyInitialView />
+	</js:initialView>
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TreeExample/src/main/flex/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TreeExample/src/main/flex/models/MyModel.as b/examples/flexjs/TreeExample/src/main/flex/models/MyModel.as
new file mode 100644
index 0000000..d224293
--- /dev/null
+++ b/examples/flexjs/TreeExample/src/main/flex/models/MyModel.as
@@ -0,0 +1,72 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	import org.apache.flex.collections.HierarchicalData;
+
+	public class MyModel extends EventDispatcher
+	{
+		public function MyModel()
+		{
+			treeData = new HierarchicalData(store);
+			treeData.childrenField = "children";
+		}
+
+		public var treeData:HierarchicalData;
+
+		private var store:Object = { title:"That's Entertainment",
+        		children:[
+        			{title:"My Music",
+        				children:[
+        					{title:"Language and Perspective", artist:"Bad Suns",
+        					    children:[
+        					    	{title:"Matthew James", length:"3:24"},
+        					    	{title:"We Move Like the Ocean", length:"3:56"},
+        					    	{title:"Cardiac Arrest", length:"3:15"}
+        					    ]},
+        					{title:"Strange Desire", artist:"Bleachers",
+        						children:[
+        							{title:"Wild Heart", length:"4:15"},
+        							{title:"Rollercoaster", length:"3:39"},
+        							{title:"Shadow", length:"3:46"},
+        							{title:"I Wanna Get Better", length:"4:23"}
+        						]}
+        				]},
+        			{title:"My Books",
+        				children:[
+        					{title:"Wizard of Oz",
+        						children:[
+        							{title:"So this is Kansas?", length:"82"},
+        							{title:"A Might Dusty Here", length:"63"},
+        							{title:"Is that a Tornado?", length:"103"}
+        						]},
+        					{title:"Favorite Book #2",
+        						children:[
+        							{title:"Chapter 1", length:"15"},
+        							{title:"Chapter 2", length:"86"},
+        							{title:"Chapter 3", length:"104"},
+        							{title:"Chapter 4", length:"99"}
+        						]}
+        				]}
+        		]};
+
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/TreeExample/src/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TreeExample/src/models/MyModel.as b/examples/flexjs/TreeExample/src/models/MyModel.as
deleted file mode 100644
index d224293..0000000
--- a/examples/flexjs/TreeExample/src/models/MyModel.as
+++ /dev/null
@@ -1,72 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	import org.apache.flex.collections.HierarchicalData;
-
-	public class MyModel extends EventDispatcher
-	{
-		public function MyModel()
-		{
-			treeData = new HierarchicalData(store);
-			treeData.childrenField = "children";
-		}
-
-		public var treeData:HierarchicalData;
-
-		private var store:Object = { title:"That's Entertainment",
-        		children:[
-        			{title:"My Music",
-        				children:[
-        					{title:"Language and Perspective", artist:"Bad Suns",
-        					    children:[
-        					    	{title:"Matthew James", length:"3:24"},
-        					    	{title:"We Move Like the Ocean", length:"3:56"},
-        					    	{title:"Cardiac Arrest", length:"3:15"}
-        					    ]},
-        					{title:"Strange Desire", artist:"Bleachers",
-        						children:[
-        							{title:"Wild Heart", length:"4:15"},
-        							{title:"Rollercoaster", length:"3:39"},
-        							{title:"Shadow", length:"3:46"},
-        							{title:"I Wanna Get Better", length:"4:23"}
-        						]}
-        				]},
-        			{title:"My Books",
-        				children:[
-        					{title:"Wizard of Oz",
-        						children:[
-        							{title:"So this is Kansas?", length:"82"},
-        							{title:"A Might Dusty Here", length:"63"},
-        							{title:"Is that a Tornado?", length:"103"}
-        						]},
-        					{title:"Favorite Book #2",
-        						children:[
-        							{title:"Chapter 1", length:"15"},
-        							{title:"Chapter 2", length:"86"},
-        							{title:"Chapter 3", length:"104"},
-        							{title:"Chapter 4", length:"99"}
-        						]}
-        				]}
-        		]};
-
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index 6f981d4..d3e1598 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -42,10 +42,10 @@
   </modules>
 
   <build>
-    <sourceDirectory>src</sourceDirectory>
+    <sourceDirectory>src/main/flex</sourceDirectory>
     <resources>
       <resource>
-        <directory>resources</directory>
+        <directory>src/main/resources</directory>
         <filtering>true</filtering>
       </resource>
     </resources>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index a7888f0..67695d2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -74,9 +74,8 @@
   <!-- Only configure the site distribution as the rest is handled by the apache parent -->
   <distributionManagement>
     <site>
-      <id>website</id>
-      <!-- TODO: Set this to the correct url -->
-      <url>scp://www.mycompany.com/www/docs/project/</url>
+      <id>apache.website</id>
+      <url>scm:git:https://git-wip-us.apache.org/repos/asf/flex-asjs.git</url>
     </site>
   </distributionManagement>
 
@@ -196,6 +195,91 @@
           </dependency>
         </dependencies>
       </plugin>
+
+      <!-- Configure the Site generation -->
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-site-plugin</artifactId>
+        <!-- Downgraded to 3.4 as 3.5 and 3.5.1 seem to have issues with the velocity tools -->
+        <version>3.4</version>
+        <configuration>
+          <generateReports>true</generateReports>
+          <generateSitemap>true</generateSitemap>
+          <relativizeDecorationLinks>false</relativizeDecorationLinks>
+          <locales>en</locales>
+          <inputEncoding>${project.build.sourceEncoding}</inputEncoding>
+          <outputEncoding>${project.reporting.outputencoding}</outputEncoding>
+        </configuration>
+        <dependencies>
+          <dependency>
+            <groupId>commons-lang</groupId>
+            <artifactId>commons-lang</artifactId>
+            <version>2.6</version>
+          </dependency>
+          <dependency>
+            <groupId>org.apache.maven.doxia</groupId>
+            <artifactId>doxia-core</artifactId>
+            <version>1.6</version>
+          </dependency>
+          <!-- All dependencies needed by the reflow skin -->
+          <dependency>
+            <groupId>lt.velykis.maven.skins</groupId>
+            <artifactId>reflow-velocity-tools</artifactId>
+            <version>1.1.1</version>
+          </dependency>
+          <dependency>
+            <groupId>org.apache.velocity</groupId>
+            <artifactId>velocity</artifactId>
+            <version>1.7</version>
+          </dependency>
+          <!-- add support for scm/git site deployment -->
+          <dependency>
+            <groupId>org.apache.maven.wagon</groupId>
+            <artifactId>wagon-scm</artifactId>
+            <version>2.10</version>
+          </dependency>
+          <dependency>
+            <groupId>org.apache.maven.scm</groupId>
+            <artifactId>maven-scm-api</artifactId>
+            <version>1.9.5</version>
+          </dependency>
+          <dependency>
+            <groupId>org.apache.maven.scm</groupId>
+            <artifactId>maven-scm-manager-plexus</artifactId>
+            <version>1.9.5</version>
+          </dependency>
+          <dependency>
+            <groupId>org.apache.maven.scm</groupId>
+            <artifactId>maven-scm-provider-gitexe</artifactId>
+            <version>1.9.5</version>
+          </dependency>
+        </dependencies>
+      </plugin>
+
+      <!--
+        Make the maven-site-plugin stage the output in the "asf-site" branch
+      -->
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-scm-publish-plugin</artifactId>
+        <version>1.1</version>
+        <executions>
+          <execution>
+            <id>scm-publish</id>
+            <phase>site-deploy</phase>
+            <!-- deploy site with maven-scm-publish-plugin -->
+            <goals>
+              <goal>publish-scm</goal>
+            </goals>
+            <configuration>
+              <!-- mono-module doesn't require site:stage -->
+              <content>${project.build.directory}/site</content>
+              <!-- branch where to deploy -->
+              <scmBranch>asf-site</scmBranch>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
     </plugins>
   </build>
 

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/src/site/site.xml
----------------------------------------------------------------------
diff --git a/src/site/site.xml b/src/site/site.xml
index bf57b2c..a7a5a3a 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -19,24 +19,54 @@
  -->
 <project name="Maven" xmlns="https://maven.apache.org/xsd/decoration-1.7.0.xsd">
 
-    <!-- Use the nicer looking fluido skin instead of the default -->
     <skin>
-        <groupId>org.apache.maven.skins</groupId>
-        <artifactId>maven-fluido-skin</artifactId>
-        <version>1.5</version>
+        <groupId>lt.velykis.maven.skins</groupId>
+        <artifactId>reflow-maven-skin</artifactId>
+        <version>1.1.1</version>
     </skin>
 
+    <!--
+        Details on how to configure the reflow skin:
+        http://andriusvelykis.github.io/reflow-maven-skin/skin/
+    -->
+    <custom>
+        <reflowSkin>
+            <theme>site</theme>
+            <titleTemplate>Apache Flex\ufffd - %2$s</titleTemplate>
+            <breadcrumbs>false</breadcrumbs>
+            <highlightJs>true</highlightJs>
+        </reflowSkin>
+    </custom>
+
     <bannerLeft>
         <name>Apache Flex</name>
-        <src>http://flex.apache.org/images/logo_01_fullcolor-sm.png</src>
+        <src>img/logo-flex.png</src>
         <href>http://flex.apache.org/</href>
     </bannerLeft>
 
-    <!--bannerRight>
-        <src>http://maven.apache.org/images/maven-small.gif</src>
-    </bannerRight-->
+    <bannerRight>
+        <name>An Apache Project</name>
+        <src>img/logo-asf.png</src>
+        <href>http://www.apache.org</href>
+    </bannerRight>
 
     <body>
+        <head>
+            <link rel="icon" type="image/x-icon" href="img/favicon.ico"/>
+            <link rel="apple-touch-icon" href="img/apple-touch-icon-60.png"/>
+            <link rel="apple-touch-icon" sizes="76x76" href="img/apple-touch-icon-76.png"/>
+            <link rel="apple-touch-icon" sizes="120x120" href="img/apple-touch-icon-120.png"/>
+            <link rel="apple-touch-icon" sizes="152x152" href="img/apple-touch-icon-152.png"/>
+        </head>
+
+        <links>
+            <item name="Apache Flex Homepage" href="http://flex.apache.org/" />
+            <!--item name="Apache FlexJS Homepage" href="http://flex.apache.org/" /-->
+            <item name="Apache Flex Wiki" href="https://cwiki.apache.org/confluence/display/FLEX/Apache+Flex+Wiki"/>
+        </links>
 
+        <menu ref="reports" />
+        <menu ref="parent" />
+        <menu ref="modules" />
     </body>
 </project>
\ No newline at end of file


[18/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Merged latest changes from develop - Hopefully fixed an issue if the closure-lib is specified on the commandline/ant

Posted by ca...@apache.org.
- Merged latest changes from develop
- Hopefully fixed an issue if the closure-lib is specified on the commandline/ant


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/ecb14509
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/ecb14509
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/ecb14509

Branch: refs/heads/feature/mdl
Commit: ecb14509980927d9b58343b8da6d10ea95f80dee
Parents: e75059f
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Sat Nov 5 09:50:11 2016 +0100
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Sat Nov 5 09:50:11 2016 +0100

----------------------------------------------------------------------
 examples/flexjs/pom.xml | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ecb14509/examples/flexjs/pom.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/pom.xml b/examples/flexjs/pom.xml
index cf65ec1..86db5f9 100644
--- a/examples/flexjs/pom.xml
+++ b/examples/flexjs/pom.xml
@@ -53,6 +53,7 @@
     <module>MobileTrader</module>
     <module>StorageExample</module>
     <module>StyleExample</module>
+    <!--module>TeamPage</module-->
     <module>TodoListSampleApp</module>
     <module>TreeExample</module>
   </modules>


[23/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Moved resources to the src/main/resources directories - Adjusted the config to use the maven-resources-plugin for copying the resources

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/TeamPage/src/main/resources/team.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/resources/team.json b/examples/flexjs/TeamPage/src/main/resources/team.json
new file mode 100644
index 0000000..b082f40
--- /dev/null
+++ b/examples/flexjs/TeamPage/src/main/resources/team.json
@@ -0,0 +1,504 @@
+/*
+ *
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You 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.
+ *
+ */
+ 
+ { "template": {
+	"name": "put here name here",
+	"title": "put your apache.org title here or leave blank",
+	"photoURL": "put the url to your uploaded photo here",
+	"url": "not used at the moment but should point to a personal site",
+	"bio": "put your official Apache Flex bio here. If you use HTML, be sure to use single quote (apostrophes)",
+	"twitter": "put your URL here or leave blank",
+	"facebook": "put your URL here or leave blank",
+	"github": "put your URL here or leave blank",
+	"googleplus": "put your URL here or leave blank",
+	"rss": "put your URL here or leave blank",
+	"wordpress": "put your URL here or leave blank"
+  },
+
+  "members": [
+	{"name": "Alex Harui",
+     "title": "PMC Chair of Apache Flex",
+     "apacheID": "aharui (C+P)",
+	 "photoURL": "images/headshots/aharui.jpg",
+     "url": "http://www.apache.org/alex",
+     "bio": "Alex Harui has been working on the Flex SDK since he joined Macromedia in 2002. He is now spending most of his time on a next-generation of Flex called FlexJS that cross-compiles MXML and ActionScript into JavaScript so your Flex apps can run without Flash and AIR",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+	{"name": "Carlos Rovira",
+     "title": "",
+     "apacheID": "carlosrovira",
+	 "photoURL": "images/headshots/carlosrovira.jpg",
+     "url": "http://www.apache.org/carlos",
+     "bio": "Carlos Rovira is a technologist, entrepreneur and businessman. He is passionate about advanced web interfaces and rich multi-device business applications. He is extremely happy when their applications are useful for people, combining functionality and usability. He's founder of various companies including carlosrovira.com in 2007 and Codeoscopic in 2009. He's the technical leader behind the Riality Flex/JEE Platform and other successful insurance software products like Direct Writer and Avant 2",
+     "twitter":"http://www.twitter.com/carlosrovira",
+     "linkedIn":"http://es.linkedin.com/in/carlosrovira/",
+     "facebook":"",
+     "github":"http://www.github.com/carlosrovira",
+     "googleplus":"https://plus.google.com/115670167046758349523",
+     "rss":"http://www.carlosrovira.com/blog/feed/"
+    },
+    
+    {"name": "Carol Frampton",
+     "title": "",
+     "apacheID": "cframpton (C+P)",
+     "photoURL": "images/headshots/cframpton.jpg",
+     "bio": "Carol is a software engineer at Adobe, based outside of Boston.  She worked on Adobe Flex for about five years - FTE and TLF text with Gordon, Spark DataGrid, mirroring and the top bug fixer for the last couple of years - then transitioned with Flex to Apache. Release manager for Apache Flex 4.8.0.  Being a generalist, she's worked on a wide variety of software, including ColdFusion and JRun, kernel-level networking code and distributed networking software. ",
+     "twitter":"",
+     "linkedIn":"http://www.linkedin.com/in/carolframpton",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Chema Balsas",
+     "title": "",
+     "apacheID": "jbalsas (C)",
+     "photoURL": "images/headshots/jbalsas.jpg",
+     "bio": "Web application developer. Focusing on JS right now and trying to help with Falcon and FalconJS as an Apache Flex Commiter.",
+     "twitter":"http://www.twitter.com/jbalsas",
+     "linkedIn":"http://www.linkedin.com/in/jbalsas",
+     "facebook":"",
+     "github":"http://www.github.com/jbalsas",
+     "googleplus":"https://plus.google.com/109872083963647761639",
+     "rss":""
+    },
+    
+    {"name": "Christofer Dutz",
+     "title": "",
+     "apacheID": "cdutz (C+P)",
+     "photoURL": "images/headshots/cdutz.jpg",
+     "bio": "Christofer is a software engineer secialized on Flex, Java, Spring and Maven. He is the lead developer of the <a href='https://flexmojos.atlassian.net/wiki/display/FLEXMOJOS/Home' target='_blank'>Flexmojos</a> project (Maven plugin for building Flex applications) after taking over from Velo in 2012. His main areas of contribution to the Apache Flex project is creating a tool for creating Mavenized versions of Flex SDKs, continuing to advance Flex' Maven support.",
+     "twitter":"http://de.twitter.com/ChristoferDutz",
+     "linkedIn":"http://www.linkedin.com/pub/christofer-dutz/49/9b6/424",
+     "facebook":"",
+     "github":"http://github.com/chrisdutz",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Chris Martin",
+     "title": "",
+     "apacheID": "chrsmrtn (C+P)",
+     "photoURL": "images/headshots/chrsmrtn.jpg",
+     "bio": "Chris has been doing Flex UI development since Flex 2 and is very excited to be apart of the Apache Flex Team. With the Apache Flex Team, he feels that the Flex SDK has a bright future. He looks to help with the flex sdk bug verification and patching.",
+     "twitter":"http://www.twitter.com/chrsmrtn",
+     "linkedIn":"http://es.linkedin.com/in/chrsmrtn/",
+     "facebook":"",
+     "github":"http://www.github.com/chrsmrtn-",
+     "googleplus":"https://plus.google.com/+chrismartinplus",
+     "wordpress":"http://chrsmrtn.azurewebsites.net",
+     "rss":""
+    },
+    
+    {"name": "DarkStone (\u5468\u6208)",
+     "title": "",
+     "apacheID": "darkstone (C)",
+     "photoURL": "images/headshots/darkstone.png",
+     "bio": "DarkStone has been doing Flash since 2002, doing Flex since 2006, doing PHP since 2007, he is both a designer and a developer.<br/><br/>He had several jobs, last job he was a product manager for 3 years, had done several RIA  products. <p>Since 2013 he quit his job and started his own studio, forging his own path.<br/><br/>Now he's goal is to develop mobile and desktop platform apps (using Flex and PHP etc.) and sell them to the AppStore.<br/><br/>Basically, make the money first, and try to change the world later ; )</p><p>He is now living in Wuhan city of China.",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Douglas Arthur",
+     "title": "",
+     "apacheID": "dougarthur (C+P)",
+     "photoURL": "images/headshots/dougarthur.jpg",
+     "bio": "Douglas passed away in May, 2012.  He is deeply missed within our community.",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Erik de Bruin",
+     "title": "",
+     "apacheID": "erikdebruin (C+P)",
+     "photoURL": "images/headshots/erikdebruin.jpg",
+     "bio": "Erik is a software engineer (Flex/Flash, PHP, Delphi, Authorware, to name a few), e-learning consultant and occassional project manager. For the Apache Flex project he is a committer and part of the PMC. He has contributed the SDK Installer Badge, was contributor and co-release manager on the first release of the SDK Installer and is currently busy getting the FalconJx and FlexJS projects off the ground.",
+     "twitter":"",
+     "linkedIn":"http://www.linkedin.com/pub/erik-de-bruin/1/281/176",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Espen Skogen",
+     "title": "",
+     "apacheID": "espenskogen (C+P)",
+     "photoURL": "images/headshots/espenskogen.jpg",
+     "bio": "Espen is a Vice President at JP Morgan, where he is leading the development of client facing trading technology. Espen was one of the initial committers and PMC members of Apache Flex. ",
+     "twitter":"",
+     "linkedIn":"http://uk.linkedin.com/in/espenskogen",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Fr�d�ric Thomas",
+     "title": "",
+     "apacheID": "fthomas (C+P)",
+     "photoURL": "images/headshots/fthomas.jpg",
+     "bio": "Freelancer, software architect, Apache Flex PMC Member, trying to make the Flex world better.<br>(French)",
+     "twitter":"http://www.twitter.com/webdoublefx",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"https://plus.google.com/116545614452242070442/posts",
+     "rss":""
+    },
+    
+    {"name": "Gordon Smith",
+     "title": "",
+     "apacheID": "gordonsmith (C+P)",
+     "photoURL": "images/headshots/gordonsmith.png",
+     "bio": "Gordon is currently working on completing MXML support in the new Falcon compiler. He lives in San Francisco and works for Adobe.</p><p>Gordon was one of the original four engineers on a 2002 Macromedia project that became Flex, and worked on the Flex framework for eight years:<ul><li>Developed components for Flex 1.0.</li><li>Built a customer application with Flex 1.5.</li><li>Led the port to AS3 for Flex 2.</li><li>Designed and implemented the ResourceManager for Flex 3.</li><li>Integrated the FTE and TLF text technologies into Flex 4.</li></ul></p><p>Since 2010 he has been part of the compiler team at Adobe.</p>",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Harbs",
+     "title": "",
+     "apacheID": "harbs (C+P)",
+     "photoURL": "images/headshots/harbs.jpg",
+     "bio": "Harbs comes from a print background and his primary interest is in publishing. He keeps himself busy with his multiple technology businesses: <a href='http://in-tools.com'>In-Tools</a>, <a href='http://printui.com'>PrintUI</a> and <a href='http://unhurdle.com/'>UnHurdle</a>.  All three businesses rely heavily on Flex as one of the active technologies, so Harbs has a strong interest in Flex.<br/><br/>Harbs also spends his time studying Talmud, and with his wife and kids. If there's any time left, he gets a bit of sleep.",
+     "twitter":"http://www.twitter.com/intools",
+     "linkedIn":"http://www.linkedin.com/profile/view?id=46698545",
+     "facebook":"http://www.facebook.com/gharbs",
+     "github":"https://github.com/Harbs",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Jeffry Houser",
+     "title": "",
+     "apacheID": "jhouser (C+P)",
+     "photoURL": "images/headshots/jhouser.jpg",
+     "bio": "<a href='http://www.jeffryhouser.com'>Jeffry Houser</a> is a technical entrepreneur that likes to share cool stuff with other people. Jeffry is the Brains behind <a href='http://www.flextras.com'>Flextras</a>, a library of Open Source Flex Components including a Calendar, AutoComplete, and a Mobile DropDownList.<br/><br/> Jeffry is one of the initial contributors to Apache Flex and his primary interest lies in expanding the component library, especially for use in mobile applications.<br/><br/>In his spare time, Jeffry runs <a href='http://www.dot-com-it.com.'>DotComIt</a>, a consulting firm developing Rich Internet Applications. He has spoken all over the US, is author of three books, over 30 articles, and hundreds of podcasts.",
+     "twitter":"http://www.twitter.com/reboog711",
+     "linkedIn":"http://www.linkedin.com/in/jeffryhouser",
+     "facebook":"http://www.facebook.com/reboog711",
+     "github":"https://github.com/Flextras/FlextrasComponents/",
+     "googleplus":"",
+     "rss":"http://www.jeffryhouser.com/rss.cfm?mode=full",
+     "rss2":"https://www.flextras.com/blog/rss.cfm?mode=full"
+    },
+    
+    {"name": "Jeremy Tellier",
+     "title": "",
+     "apacheID": "jtellier (C+P)",
+     "photoURL": "images/headshots/jtellier.jpg",
+     "bio": "Macromedia/Adobe Technology evangelist, architect, engineer, Jeremy has implemented a slew of Flash, Flex, & AIR based solutions for startups to fortune 100 companies over the past 15 years.<br/><br/>Jeremy works as a consultant at <a href='http://www.actieve.com' target='_blank'>Actieve</a> for Rich Mobile, Desktop & Web Based projects in which Flex is at the top of his preferred technology stack.<br/><br/>On a more personal note.... Jeremy feels awkward writing about himself in the third person.",
+     "twitter":"http://www.twitter.com/jtellier",
+     "linkedIn":"http://www.linkedin.com/in/jeremytellier/",
+     "facebook":"http://www.facebook.com/JeremyTellier",
+     "github":"",
+     "googleplus":"https://plus.google.com/115560858703396246574",
+     "rss":"",
+     "skype":"skype:JeremyTellier?chat"
+    },
+    
+    {"name": "Jose Barragan",
+     "title": "",
+     "apacheID": "josebarragan (C)",
+     "photoURL": "images/headshots/josebarragan.jpg",
+     "bio": "Jose Barragan is a Software Architect, with over 10 years experience in the enterprise sector. Has a big experience in design, development and implementation of high performance software in corporate environments. Has an extensive knowledge of Flex, Java, Spring, Hibernate, Maven, Git, being the technical co-leader behind the <a href='http://www.codeoscopic.com/tecnologia/riality/'>Riality</a> Flex/JEE Platform and other successful insurance software products like <a href='http://www.directwriter.es'>Direct Writer</a> and <a href='http://www.avant2.es'>Avant 2</a>. Restless mind and enthusiast of new technologies. Always learning from everything and everyone.",
+     "twitter":"http://www.twitter.com/morphx",
+     "linkedIn":"http://es.linkedin.com/in/pepebarragan/",
+     "facebook":"",
+     "github":"http://github.com/pepebarragan",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Joseph Labrecque",
+     "title": "",
+     "apacheID": "josephlabrecque (C)",
+     "photoURL": "images/headshots/josephlabrecque.jpg",
+     "bio": "Joseph Labrecque is primarily employed by the University of Denver as a senior interactive software engineer specializing in the creation of expressive desktop, web, and mobile solutions. He is also the proprietor of Fractured Vision Media, LLC. Joseph is an Adobe Education Leader and Adobe Community Professional.",
+     "twitter":"http://twitter.com/josephlabrecque",
+     "linkedIn":"http://www.linkedin.com/in/josephlabrecque",
+     "facebook":"https://www.facebook.com/joseph.labrecque",
+     "github":"https://github.com/josephlabrecque/",
+     "googleplus":"https://google.com/+JosephLabrecque/",
+     "rss":"http://www.lynda.com/JosephLabrecque",
+     "rss2":"http://inflagrantedelicto.memoryspiral.com/feed/",
+     "amazon":"http://www.amazon.com/-/e/B0057R7UO0",
+     "behance":"https://www.behance.net/JosephLabrecque",
+     "youtube":"https://www.youtube.com/channel/UCOznZ0dg3BwfhxwO2p90ejQ"
+    },
+    
+    {"name": "Josh Tynjala",
+     "title": "",
+     "apacheID": "joshtynjala (C+P)",
+     "photoURL": "images/headshots/joshtynjala.jpg",
+     "bio": "Josh Tynjala is the author of the open source <a href='http://feathersui.com/'>Feathers</a> user interface components for Starling Framework. In addition to improving the Apache FlexJS compilers, Josh teaches developers how to transpile ActionScript on his website, <a href='http://nextgenactionscript.com/'>NextGen ActionScript</a>",
+     "twitter":"https://twitter.com/joshtynjala",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"https://github.com/joshtynjala",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Jun Heider",
+     "title": "",
+     "apacheID": "junheider (C+P)",
+     "photoURL": "images/headshots/junheider.jpg",
+     "bio": "Helping Apache Flex grow through mentoring and community awareness. An officer of the Open Spoon Foundation. Cross-platform Flex mobile developer at RealEyes Media with a focus in video and multiuser applications. Adjunct Faculty at University of Denver, University College teaching students how to build native applications with Adobe AIR.",
+     "twitter":"http://twitter.com/coderjun",
+     "linkedIn":"http://www.linkedin.com/in/junheider",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Justin Mclean",
+     "title": "",
+     "apacheID": "jmclean (C+P)",
+     "photoURL": "images/headshots/jmclean.jpg",
+     "bio": "Experienced web application developer, certified trainer, international conference speaker and Arduino tinkerer. Interesting in making Apache Flex more international and work on a wider range of platforms. Added international postcode support and locales to Apache Flex 4.9.0. Release manager for Apache Flex 4.9.0.",
+     "twitter":"http://twitter.com/JustinMclean",
+     "linkedIn":"http://www.linkedin.com/in/justinmclean",
+     "facebook":"",
+     "github":"http://www.github.com/justinmclean",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Mahmoud Ali",
+     "title": "",
+     "apacheID": "akamud (C)",
+     "photoURL": "images/headshots/akamud.jpg",
+     "bio": ".NET and Apache Flex developer, working on Web and mobile applications. One of the creators of the <a href='https://github.com/akamud/FlatSpark'>FlatSpark</a> skin, a project to bring a more clean and modern look to Apache Flex applications, recently donated to Apache Software Foundation. His goal as a committer is to continue improving and creating new Skins and components for Flex.</p <p>Always interested in learning and sharing about new technologies. In his spare time wanders around the internet looking for open source projects that need help.<br/><br/>Also feels weird describing himself in the third person.</p>",
+     "twitter":"http://twitter.com/akamud",
+     "linkedIn":"http://www.linkedin.com/in/akamud/en",
+     "facebook":"",
+     "github":"https://github.com/akamud",
+     "googleplus":"",
+     "rss":"http://www.akamud.com.br/feed",
+     "wordpress":"http://www.akamud.com.br/"
+    },
+    
+    {"name": "Maurice Amsellem",
+     "title": "",
+     "apacheID": "mamsellem (C+P)",
+     "photoURL": "images/headshots/mamsellem.jpg",
+     "bio": "<p>Maurice has been working for <a href='http://www.systar.com'>Systar</a> since 1996 in various positions, and since 2009 as a software engineer on a Flex-based BAM application development framework.</p><p>Maurice is professionally interested in GUI design in general, and personally in clay modeling.<br/>He is based in Paris area, France.</p>",
+     "twitter":"",
+     "linkedIn":"http://www.linkedin.com/pub/maurice-amsellem/1/50a/b64",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Michael Schmalle",
+     "title": "",
+     "apacheID": "mschmalle (C+P)",
+     "photoURL": "images/headshots/mschmalle.jpg",
+     "bio": "<p>Past; ActionScript since 2001 and ui component developer. Created a read/write DOM for ActionScript in AS3 and Java, familiar with parsers and compilers.<br/><br/>Future; Working creating a framework to make synths and sequencers for techno music in Android and also Unity3D, WebAudio and JavaScript.<br/><br/>Leading the development of FalconJx to finally put the last nail in the Flash Player for myself. I don't claim to be anything I'm not, the third person scares me.</p>",
+     "twitter":"http://www.twitter.com/teotigraphix",
+     "linkedIn":"http://www.linkedin.com/pub/michael-schmalle/4/409/980",
+     "facebook":"",
+     "github":"https://github.com/teotigraphix",
+     "googleplus":"",
+     "rss":"http://blog.teotigraphix.com/feed"
+    },
+    
+    {"name": "Nicholas Kwiatkowski",
+     "title": "",
+     "apacheID": "quetwo (C+P)",
+     "photoURL": "images/headshots/quetwo.jpg",
+     "bio": "Working on components, website, marketing.",
+     "twitter":"http://www.twitter.com/quetwo",
+     "linkedIn":"",
+     "facebook":"http://www.facebook.com/quetwo",
+     "github":"",
+     "googleplus":"https://plus.google.com/106376488955804514674/",
+     "rss":"",
+     "blog":"http://www.quetwo.com",
+     "deviantart":"http://quetwo.deviantart.com"
+    },
+    
+    {"name": "Omar Gonzalez",
+     "title": "",
+     "apacheID": "s9tpepper (C+P)",
+     "photoURL": "images/headshots/s9tpepper.jpg",
+     "bio": "<p>Apache Flex committer and PMC member. Test driven development enthusiast. Wrestles code all day. Developing Flash since 2000, Flex since version 2 beta. Senior Architect for <a href='http://almerblank.com' target='_blank'>almer/blank</a> developing front-ends and back-ends in HTML5, JavaScript, Flash, Flex, Node.js, PHP, MySQL and MongoDB, just to name a few. Interested in expanding Apache Flex beyond the Flash Player plugin as well as other random experiments.</p>",
+     "twitter":"http://www.twitter.com/s9tpepper",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"https://github.com/s9tpepper",
+     "googleplus":"https://plus.google.com/109288512951904372418",
+     "rss":"http://omar.gy/rss"
+    },
+    
+    {"name": "OmPrakash Muppirala",
+     "title": "",
+     "apacheID": " bigosmallm (C + P)",
+     "photoURL": "images/headshots/bigosmallm.jpg",
+     "bio": "<p>Om 'bigosmallm' Muppirala is a UI architect with years of experience building Flex and Flash based applications. He has been working on various tools and utilities aimed at making life easier for Apache Flex developers and users(SDK Installer, OneClick Mustella, etc.)  Also interested in contributing more web and mobile Flex components.</p>",
+     "twitter":"http://twitter.com/bigosmallm",
+     "linkedIn":"http://www.linkedin.com/in/omprakashm/",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Peter Elst",
+     "title": "",
+     "apacheID": "peterelst (C + P)",
+     "photoURL": "images/headshots/peterelst.jpg",
+     "bio": "<p>Peter is a Web Solutions Engineer at Google, an author of multiple ActionScript books, speaker at various industry events and longtime supporter of Flex as a platform.</p><p>In his spare time, you can find him blogging at <a href='http://www.peterelst.com'>www.peterelst.com</a>.</p>",
+     "twitter":"http://www.twitter.com/peterelst",
+     "linkedIn":"http://www.linkedin.com/in/peterelst",
+     "facebook":"",
+     "github":"",
+     "googleplus":"https://www.google.com/+peterelst",
+     "rss":""
+    },
+    
+    {"name": "Piotr Zarzycki",
+     "title": "",
+     "apacheID": "piotrz (C + P)",
+     "photoURL": "images/headshots/piotrz.jpg",
+     "bio": "<p>Piotr has been working with Flex since 2008 in various project. He always stays open for self-development opportunity.</p><p>He currently lives in Cracow, Poland.</p>",
+     "twitter":"",
+     "linkedIn":"http://pl.linkedin.com/pub/piotr-zarzycki/52/535/92a/",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":"",
+     "skype":"skype:zarzycki10?call"
+    },
+    
+    {"name": "Stephan Plath",
+     "title": "",
+     "apacheID": "splath (C)",
+     "photoURL": "images/headshots/splath.jpg",
+     "bio": "",
+     "twitter":"http://www.twitter.com/xplath",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Tom Chiverton",
+     "title": "",
+     "apacheID": "tomc (P+C)",
+     "photoURL": "images/headshots/tomc.jpg",
+     "bio": "<p>Tom has been building internet applications since before the term RIA, and was part of the community contributing to Flex while it was looked after by Adobe.</p><p>Within Apache Flex his focus is on making sure the experience on Linux is on par with the other supported platforms, as well as pitching in keeping the Jenkins servers running.</p><p>He currently lives in Manchester, UK.</p>",
+     "twitter":"http://www.twitter.com/thefalken",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Maxim Solodovnik",
+     "title": "",
+     "apacheID": "solomax (C)",
+     "photoURL": "images/headshots/solomax.jpg",
+     "bio": "<p>Maxim developing desktop and mobile applications working with video components.</p><p>The main contribution so far was Russian translation of various Flex components</p><p>He currently lives in Novosibirsk, Russia.</p>",
+     "twitter":"http://www.twitter.com/solomax666",
+     "linkedIn":"https://www.linkedin.com/in/maximsolodovnik",
+     "facebook":"",
+     "github":"https://github.com/solomax",
+     "googleplus":"https://www.google.com/+MaximSolodovnik",
+     "rss":""
+    },
+    
+    {"name": "Olaf Krueger",
+     "title": "",
+     "apacheID": "okrueger (C)",
+     "photoURL": "images/headshots/okrueger.png",
+     "bio": "<p>Olaf believes in the power and beauty of simplicity in all respects.</p><p>Employed at a leading automotive supplier for hinge systems he creates software for internal use. For many years and still with great passion.</p><p>Olaf would like to help to bring the Material Design to Flex/FlexJS</p>",
+     "twitter":"http://www.twitter.com/openoli",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Bertrand Delacretaz",
+     "title": "Project Mentor",
+     "apacheID": "bdelacretaz (C+P)",
+     "photoURL": "images/headshots/bdelacretaz.jpg",
+     "bio": "<p>I'm happy to have been able to help Flex incubate at Apache, the team did a great job in creating a successful Apache project. I left the PMC on graduation to free some time for other podlings, wishing Flex a bright future!</p>",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Dave Fisher ",
+     "title": "Project Mentor",
+     "apacheID": "wave (C+P)",
+     "photoURL": "images/headshots/davefisher.jpg",
+     "bio": "<p>I'm fascinated by the communities that develop around projects at Apache I really enjoy the spirit here in the Apache Flex project. I am particularly interested in documents and am on the Apache POI and OpenOffice PMCs. Apache Flex for office documents anyone?</p><p>I live in San Francisco where the weather is mild.</p>",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Greg Reddin",
+     "title": "Project Mentor",
+     "apacheID": "greddin (C+P)",
+     "photoURL": "images/staff-1.jpg",
+     "bio": "",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    }
+]
+  
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index d3e1598..ea865fa 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -34,6 +34,10 @@
 
   <name>Apache Flex - FlexJS: Examples</name>
 
+  <properties>
+    <compiler.output-dir>${basedir}/target/javascript/bin/js-debug</compiler.output-dir>
+  </properties>
+
   <modules>
     <module>flexjs</module>
     <!--module>native</module-->
@@ -51,6 +55,15 @@
     </resources>
     <pluginManagement>
       <plugins>
+        <!-- Copy the resources to the compiler output directory -->
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-resources-plugin</artifactId>
+          <version>3.0.1</version>
+          <configuration>
+            <outputDirectory>${compiler.output-dir}</outputDirectory>
+          </configuration>
+        </plugin>
         <plugin>
           <groupId>org.apache.flex.flexjs.compiler</groupId>
           <artifactId>flexjs-maven-plugin</artifactId>
@@ -84,7 +97,7 @@
             </execution>
           </executions>
           <configuration>
-            <warSourceDirectory>${basedir}/target/javascript/bin/js-debug</warSourceDirectory>
+            <warSourceDirectory>${compiler.output-dir}</warSourceDirectory>
             <failOnMissingWebXml>false</failOnMissingWebXml>
             <webResources>
               <resource>
@@ -130,20 +143,10 @@
   <profiles>
     <profile>
       <id>release</id>
-      <build>
-        <pluginManagement>
-          <plugins>
-            <plugin>
-              <groupId>org.apache.maven.plugins</groupId>
-              <artifactId>maven-war-plugin</artifactId>
-              <version>2.6</version>
-              <configuration>
-                <warSourceDirectory>${basedir}/target/javascript/bin/js-release</warSourceDirectory>
-              </configuration>
-            </plugin>
-          </plugins>
-        </pluginManagement>
-      </build>
+
+      <properties>
+        <compiler.output-dir>${basedir}/target/javascript/bin/js-release</compiler.output-dir>
+      </properties>
     </profile>
 
     <profile>


[30/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/flex-asjs into develop

Posted by ca...@apache.org.
Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/flex-asjs into develop


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/d99854c2
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/d99854c2
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/d99854c2

Branch: refs/heads/feature/mdl
Commit: d99854c2f7e883aa6db10a061d879e08d57f5250
Parents: 2a06fe6 cf4fd2d
Author: yishayw <yi...@hotmail.com>
Authored: Mon Nov 7 13:04:58 2016 +0200
Committer: yishayw <yi...@hotmail.com>
Committed: Mon Nov 7 13:04:58 2016 +0200

----------------------------------------------------------------------
 examples/flexjs/StyleExample/pom.xml |  2 +-
 examples/flexjs/TeamPage/pom.xml     | 31 +++++++++----------------------
 2 files changed, 10 insertions(+), 23 deletions(-)
----------------------------------------------------------------------



[28/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Adjusted the version of the StyleExample - Made sure the war for the TeamPage example is created

Posted by ca...@apache.org.
- Adjusted the version of the StyleExample
- Made sure the war for the TeamPage example is created


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/cf4fd2d8
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/cf4fd2d8
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/cf4fd2d8

Branch: refs/heads/feature/mdl
Commit: cf4fd2d819815f17e08204ccf660887bd6db2779
Parents: ec60f6a
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Mon Nov 7 10:43:08 2016 +0100
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Mon Nov 7 10:43:08 2016 +0100

----------------------------------------------------------------------
 examples/flexjs/StyleExample/pom.xml |  2 +-
 examples/flexjs/TeamPage/pom.xml     | 31 +++++++++----------------------
 2 files changed, 10 insertions(+), 23 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/cf4fd2d8/examples/flexjs/StyleExample/pom.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/StyleExample/pom.xml b/examples/flexjs/StyleExample/pom.xml
index eddd944..5a76f9b 100644
--- a/examples/flexjs/StyleExample/pom.xml
+++ b/examples/flexjs/StyleExample/pom.xml
@@ -40,7 +40,7 @@
   </parent>
 
   <artifactId>StyleExample</artifactId>
-  <version>1.0.0-SNAPSHOT</version>
+  <version>0.8.0-SNAPSHOT</version>
   <packaging>swf</packaging>
 
   <name>Apache Flex - FlexJS: Examples: FlexJS: StyleExample</name>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/cf4fd2d8/examples/flexjs/TeamPage/pom.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/pom.xml b/examples/flexjs/TeamPage/pom.xml
index b407b02..709f291 100644
--- a/examples/flexjs/TeamPage/pom.xml
+++ b/examples/flexjs/TeamPage/pom.xml
@@ -35,7 +35,6 @@
   <name>Apache Flex - FlexJS: Examples: FlexJS: TeamPage</name>
 
   <build>
-    <sourceDirectory>src</sourceDirectory>
     <plugins>
       <plugin>
         <groupId>org.apache.flex.flexjs.compiler</groupId>
@@ -43,30 +42,18 @@
         <extensions>true</extensions>
         <configuration>
           <mainClass>TeamPage.mxml</mainClass>
+          <removeCirculars>true</removeCirculars>
           <!-- Not a config option of flexjs-maven-plugin -->
           <!--flashVersion>20.0</flashVersion-->
         </configuration>
-        <executions>
-          <!-- Add a second execution with output set to JavaScript (Flash is the default) -->
-          <execution>
-            <id>compile-javascript</id>
-            <phase>compile</phase>
-            <goals>
-              <goal>compile-app</goal>
-            </goals>
-            <configuration>
-              <outputJavaScript>true</outputJavaScript>
-              <removeCirculars>true</removeCirculars>
-            </configuration>
-          </execution>
-        </executions>
-        <dependencies>
-          <dependency>
-            <groupId>org.apache.flex.flexjs.compiler</groupId>
-            <artifactId>compiler-jx</artifactId>
-            <version>0.8.0-SNAPSHOT</version>
-          </dependency>
-        </dependencies>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-war-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>build-helper-maven-plugin</artifactId>
       </plugin>
     </plugins>
   </build>


[05/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/models/StatsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/models/StatsModel.as b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/models/StatsModel.as
new file mode 100644
index 0000000..d6d1254
--- /dev/null
+++ b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/models/StatsModel.as
@@ -0,0 +1,55 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	
+	public class StatsModel extends EventDispatcher
+	{
+		private var _lastThirtyDaysUsers:Array;
+		public function StatsModel()
+		{
+			
+		}
+		
+		[Bindable("lastThirtyDaysDataChanged")]
+		public function get lastThirtyDaysUsers():Array
+		{
+			return _lastThirtyDaysUsers;
+		}
+		
+		public function set lastThirtyDaysUsers(v:Array):void
+		{
+			if(v != _lastThirtyDaysUsers)
+			{
+				_lastThirtyDaysUsers = v;
+				dispatchEvent(new Event("lastThirtyDaysDataChanged"));
+			}
+		}
+		
+		private var _labelFields:Array = [ "date", "users"];
+		public function get labelFields():Array
+		{
+			return _labelFields;
+		}
+		
+	}
+	
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/models/StatsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/models/StatsModel.as b/examples/flexjs/FlexWebsiteStatsViewer/src/models/StatsModel.as
deleted file mode 100644
index d6d1254..0000000
--- a/examples/flexjs/FlexWebsiteStatsViewer/src/models/StatsModel.as
+++ /dev/null
@@ -1,55 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	
-	public class StatsModel extends EventDispatcher
-	{
-		private var _lastThirtyDaysUsers:Array;
-		public function StatsModel()
-		{
-			
-		}
-		
-		[Bindable("lastThirtyDaysDataChanged")]
-		public function get lastThirtyDaysUsers():Array
-		{
-			return _lastThirtyDaysUsers;
-		}
-		
-		public function set lastThirtyDaysUsers(v:Array):void
-		{
-			if(v != _lastThirtyDaysUsers)
-			{
-				_lastThirtyDaysUsers = v;
-				dispatchEvent(new Event("lastThirtyDaysDataChanged"));
-			}
-		}
-		
-		private var _labelFields:Array = [ "date", "users"];
-		public function get labelFields():Array
-		{
-			return _labelFields;
-		}
-		
-	}
-	
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/HelloWorld/src/HelloWorld.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/HelloWorld/src/HelloWorld.mxml b/examples/flexjs/HelloWorld/src/HelloWorld.mxml
deleted file mode 100644
index 70d8d20..0000000
--- a/examples/flexjs/HelloWorld/src/HelloWorld.mxml
+++ /dev/null
@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-                   xmlns:js="library://ns.apache.org/flexjs/basic" >
-    <js:valuesImpl>
-        <js:SimpleCSSValuesImpl />
-    </js:valuesImpl>
-    <js:initialView>
-        <js:View>
-        	<js:Label text="Hello World!" />
-        </js:View>
-    </js:initialView>
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/HelloWorld/src/main/flex/HelloWorld.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/HelloWorld/src/main/flex/HelloWorld.mxml b/examples/flexjs/HelloWorld/src/main/flex/HelloWorld.mxml
new file mode 100644
index 0000000..70d8d20
--- /dev/null
+++ b/examples/flexjs/HelloWorld/src/main/flex/HelloWorld.mxml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+                   xmlns:js="library://ns.apache.org/flexjs/basic" >
+    <js:valuesImpl>
+        <js:SimpleCSSValuesImpl />
+    </js:valuesImpl>
+    <js:initialView>
+        <js:View>
+        	<js:Label text="Hello World!" />
+        </js:View>
+    </js:initialView>
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MapSearch/src/MapSearch.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MapSearch/src/MapSearch.mxml b/examples/flexjs/MapSearch/src/MapSearch.mxml
deleted file mode 100644
index af06140..0000000
--- a/examples/flexjs/MapSearch/src/MapSearch.mxml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!---
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-				   xmlns:local="*"
-				   xmlns:models="models.*"
-				   xmlns:js="library://ns.apache.org/flexjs/basic" 
-				   >
-	
-	<!-- This application demonstrates how to use the Google MAP API
-	on both the AIR and JavaScript/browser platform. After cross-
-	compiling this application for JavaScript, edit the index.html
-	file and include your Google developer API token.
-	-->
-	
-	<js:valuesImpl>
-		<js:SimpleCSSValuesImpl />
-	</js:valuesImpl>
-	<js:initialView>
-		<local:MyInitialView />
-	</js:initialView>
-	<js:model>
-		<models:MyModel />
-	</js:model>
-	<js:beads>
-		<js:MixinManager />
-	</js:beads>
-	
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MapSearch/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MapSearch/src/MyInitialView.mxml b/examples/flexjs/MapSearch/src/MyInitialView.mxml
deleted file mode 100644
index 54ec4a2..0000000
--- a/examples/flexjs/MapSearch/src/MyInitialView.mxml
+++ /dev/null
@@ -1,211 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:js="library://ns.apache.org/flexjs/basic"
-                xmlns:google="library://ns.apache.org/flexjs/google"
-				xmlns:local="*"
-				initComplete="initControls()">
-	<fx:Script>
-		<![CDATA[		
-			import models.MyModel;			
-			import org.apache.flex.events.Event;
-			
-			import google.maps.places.PlaceResult;
-			import google.maps.Marker;
-			
-			private function initControls() : void
-			{
-				
-			}
-			
-			/**
-			 * Called when the map is ready for use. This function adds a variety of event
-			 * listners, some of which will trigger a new search.
-			 */
-			private function onMapReady() : void
-			{
-				map.addEventListener("centered", onMapCenteredOrChanged);
-				map.addEventListener("boundsChanged", onMapCenteredOrChanged);
-				map.addEventListener("zoomChanged", onMapCenteredOrChanged);
-				map.addEventListener("dragEnd", onMapCenteredOrChanged);
-				map.addEventListener("markerClicked", onMarkerClicked);
-				
-				// Listen for changes to the search results on the map's model.
-				map.model.addEventListener("searchResultsChanged", onSearchResults);
-			}
-			
-			private var selectedCity:String;
-			
-			/**
-			 * Triggered by a change in the drop list with a new city selected. This
-			 * will also update the input fields.
-			 */
-			private function changeCity(event:org.apache.flex.events.Event) : void
-			{
-				var index:int = list.selectedIndex;
-				mapLocation.text = MyModel(applicationModel).cities[index];
-				codeAddress();
-			}
-			
-			private function codeAddress() : void
-			{
-				map.markAddress(mapLocation.text);
-			}
-			
-			private function searchOnMap() : void
-			{
-				map.nearbySearch(search.text);
-			}
-			
-			private function clearSearchResults() : void
-			{
-				map.clearSearchResults();
-			}
-			
-			private function orientMap() : void
-			{
-				map.centerOnAddress(mapLocation.text);
-			}
-			
-			/**
-			 * Called when the map has been re-centered or moved. The search results are
-			 * cleared and a new search is triggered.
-			 */
-			private function onMapCenteredOrChanged(event:org.apache.flex.events.Event):void
-			{
-				clearSearchResults();
-				if (search.text) searchOnMap();
-			}
-			
-			/**
-			 * Called when search results are available in the map's model. This function
-			 * transfers those results to the application's model which is bound to the
-			 * List component.
-			 */
-			private function onSearchResults(event:org.apache.flex.events.Event):void
-			{
-				var searchResults:Array = map.searchResults;
-				MyModel(applicationModel).searchResults = searchResults;
-			}
-			
-			/**
-			 * Called when a marker on the map has been selected. This function centers
-			 * the map on the marker and, if necessary, zooms the map in for closer
-			 * inspection.
-			 */
-			private function onMarkerClicked(event:org.apache.flex.events.Event):void
-			{
-				var marker:Marker = map.selectedMarker as Marker;
-				map.setZoom(12);
-				map.setCenter(marker.getPosition());
-			}
-			
-		]]>
-	</fx:Script>
-	
-		<fx:Style>
-		@namespace basic "library://ns.apache.org/flexjs/basic";
-		
-		.FormLabel {
-			font-weight: bold;
-			font-size: 12;
-			padding-left: 20px;
-			padding-right: 20px;
-			padding-top: 20px;
-			padding-bottom: 20px;
-			height: 22px;
-		}
-		
-		.FormButton {
-			font-weight: bold;
-			font-size: 12;
-			color: #000000;
-			background-color: #FFFFFF;
-			border-style: solid;
-			padding-top: 5px;
-			padding-bottom: 5px;
-			padding-left: 5px;
-			padding-right: 5px;
-		}
-		
-		.FormInput {
-			font-weight: normal;
-			font-size: 12;
-			color: #0000DE;
-			padding: 0px;
-			height: 20px;
-		}
-		
-		.InnerBox {
-			margin-top: 11px;
-			margin-bottom: 10px;
-		}
-	</fx:Style>
-	
-	<js:beads>
-		<js:ViewDataBinding />
-	</js:beads>
-	
-	
-	<js:Container x="5" y="5" className="topContainer" >
-		<js:beads>
-			<js:VerticalLayout />
-		</js:beads>
-		
-		<js:Container className="InnerBox">
-			<js:beads>
-				<js:HorizontalLayout />
-			</js:beads>
-			<js:Label id="label1" text="Location:" className="FormLabel"  />
-			<js:TextInput id="mapLocation" />
-			<js:TextButton text="Go" id="goButton" click="orientMap()" className="FormButton" />
-			
-			<js:DropDownList id="list" width="100" height="20"
-								change="changeCity(event)"
-								dataProvider="{MyModel(applicationModel).cities}" />
-		</js:Container>
-		
-		<google:Map id="map" width="450" height="300" className="MainMap"
-				   token="AIzaSyDkQgg2iojLCYeuW6hK7DkuAHD-SwJJhdE" 
-				   ready="onMapReady()"/>
-		
-		<js:Container className="InnerBox">
-			<js:beads>
-				<js:HorizontalLayout />
-			</js:beads>
-			<js:Label id="label2" text="Search on Map:" className="FormLabel" />
-			<js:TextInput id="search" />
-			<js:TextButton text="Find" click="searchOnMap()" className="FormButton" />
-			<js:TextButton text="Clear"click="clearSearchResults()" className="FormButton" />
-		</js:Container>
-		
-		<js:List id="resultsList" width="450" height="200">
-			<js:beads>
-				<js:SimpleBinding
-					sourceID="applicationModel"
-					sourcePropertyName="searchResults"
-					eventName="searchResultsChanged"
-					destinationPropertyName="dataProvider" />
-			</js:beads>
-		</js:List>
-		
-	</js:Container>
-	
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MapSearch/src/main/flex/MapSearch.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MapSearch/src/main/flex/MapSearch.mxml b/examples/flexjs/MapSearch/src/main/flex/MapSearch.mxml
new file mode 100644
index 0000000..af06140
--- /dev/null
+++ b/examples/flexjs/MapSearch/src/main/flex/MapSearch.mxml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				   xmlns:local="*"
+				   xmlns:models="models.*"
+				   xmlns:js="library://ns.apache.org/flexjs/basic" 
+				   >
+	
+	<!-- This application demonstrates how to use the Google MAP API
+	on both the AIR and JavaScript/browser platform. After cross-
+	compiling this application for JavaScript, edit the index.html
+	file and include your Google developer API token.
+	-->
+	
+	<js:valuesImpl>
+		<js:SimpleCSSValuesImpl />
+	</js:valuesImpl>
+	<js:initialView>
+		<local:MyInitialView />
+	</js:initialView>
+	<js:model>
+		<models:MyModel />
+	</js:model>
+	<js:beads>
+		<js:MixinManager />
+	</js:beads>
+	
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MapSearch/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MapSearch/src/main/flex/MyInitialView.mxml b/examples/flexjs/MapSearch/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..54ec4a2
--- /dev/null
+++ b/examples/flexjs/MapSearch/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,211 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:js="library://ns.apache.org/flexjs/basic"
+                xmlns:google="library://ns.apache.org/flexjs/google"
+				xmlns:local="*"
+				initComplete="initControls()">
+	<fx:Script>
+		<![CDATA[		
+			import models.MyModel;			
+			import org.apache.flex.events.Event;
+			
+			import google.maps.places.PlaceResult;
+			import google.maps.Marker;
+			
+			private function initControls() : void
+			{
+				
+			}
+			
+			/**
+			 * Called when the map is ready for use. This function adds a variety of event
+			 * listners, some of which will trigger a new search.
+			 */
+			private function onMapReady() : void
+			{
+				map.addEventListener("centered", onMapCenteredOrChanged);
+				map.addEventListener("boundsChanged", onMapCenteredOrChanged);
+				map.addEventListener("zoomChanged", onMapCenteredOrChanged);
+				map.addEventListener("dragEnd", onMapCenteredOrChanged);
+				map.addEventListener("markerClicked", onMarkerClicked);
+				
+				// Listen for changes to the search results on the map's model.
+				map.model.addEventListener("searchResultsChanged", onSearchResults);
+			}
+			
+			private var selectedCity:String;
+			
+			/**
+			 * Triggered by a change in the drop list with a new city selected. This
+			 * will also update the input fields.
+			 */
+			private function changeCity(event:org.apache.flex.events.Event) : void
+			{
+				var index:int = list.selectedIndex;
+				mapLocation.text = MyModel(applicationModel).cities[index];
+				codeAddress();
+			}
+			
+			private function codeAddress() : void
+			{
+				map.markAddress(mapLocation.text);
+			}
+			
+			private function searchOnMap() : void
+			{
+				map.nearbySearch(search.text);
+			}
+			
+			private function clearSearchResults() : void
+			{
+				map.clearSearchResults();
+			}
+			
+			private function orientMap() : void
+			{
+				map.centerOnAddress(mapLocation.text);
+			}
+			
+			/**
+			 * Called when the map has been re-centered or moved. The search results are
+			 * cleared and a new search is triggered.
+			 */
+			private function onMapCenteredOrChanged(event:org.apache.flex.events.Event):void
+			{
+				clearSearchResults();
+				if (search.text) searchOnMap();
+			}
+			
+			/**
+			 * Called when search results are available in the map's model. This function
+			 * transfers those results to the application's model which is bound to the
+			 * List component.
+			 */
+			private function onSearchResults(event:org.apache.flex.events.Event):void
+			{
+				var searchResults:Array = map.searchResults;
+				MyModel(applicationModel).searchResults = searchResults;
+			}
+			
+			/**
+			 * Called when a marker on the map has been selected. This function centers
+			 * the map on the marker and, if necessary, zooms the map in for closer
+			 * inspection.
+			 */
+			private function onMarkerClicked(event:org.apache.flex.events.Event):void
+			{
+				var marker:Marker = map.selectedMarker as Marker;
+				map.setZoom(12);
+				map.setCenter(marker.getPosition());
+			}
+			
+		]]>
+	</fx:Script>
+	
+		<fx:Style>
+		@namespace basic "library://ns.apache.org/flexjs/basic";
+		
+		.FormLabel {
+			font-weight: bold;
+			font-size: 12;
+			padding-left: 20px;
+			padding-right: 20px;
+			padding-top: 20px;
+			padding-bottom: 20px;
+			height: 22px;
+		}
+		
+		.FormButton {
+			font-weight: bold;
+			font-size: 12;
+			color: #000000;
+			background-color: #FFFFFF;
+			border-style: solid;
+			padding-top: 5px;
+			padding-bottom: 5px;
+			padding-left: 5px;
+			padding-right: 5px;
+		}
+		
+		.FormInput {
+			font-weight: normal;
+			font-size: 12;
+			color: #0000DE;
+			padding: 0px;
+			height: 20px;
+		}
+		
+		.InnerBox {
+			margin-top: 11px;
+			margin-bottom: 10px;
+		}
+	</fx:Style>
+	
+	<js:beads>
+		<js:ViewDataBinding />
+	</js:beads>
+	
+	
+	<js:Container x="5" y="5" className="topContainer" >
+		<js:beads>
+			<js:VerticalLayout />
+		</js:beads>
+		
+		<js:Container className="InnerBox">
+			<js:beads>
+				<js:HorizontalLayout />
+			</js:beads>
+			<js:Label id="label1" text="Location:" className="FormLabel"  />
+			<js:TextInput id="mapLocation" />
+			<js:TextButton text="Go" id="goButton" click="orientMap()" className="FormButton" />
+			
+			<js:DropDownList id="list" width="100" height="20"
+								change="changeCity(event)"
+								dataProvider="{MyModel(applicationModel).cities}" />
+		</js:Container>
+		
+		<google:Map id="map" width="450" height="300" className="MainMap"
+				   token="AIzaSyDkQgg2iojLCYeuW6hK7DkuAHD-SwJJhdE" 
+				   ready="onMapReady()"/>
+		
+		<js:Container className="InnerBox">
+			<js:beads>
+				<js:HorizontalLayout />
+			</js:beads>
+			<js:Label id="label2" text="Search on Map:" className="FormLabel" />
+			<js:TextInput id="search" />
+			<js:TextButton text="Find" click="searchOnMap()" className="FormButton" />
+			<js:TextButton text="Clear"click="clearSearchResults()" className="FormButton" />
+		</js:Container>
+		
+		<js:List id="resultsList" width="450" height="200">
+			<js:beads>
+				<js:SimpleBinding
+					sourceID="applicationModel"
+					sourcePropertyName="searchResults"
+					eventName="searchResultsChanged"
+					destinationPropertyName="dataProvider" />
+			</js:beads>
+		</js:List>
+		
+	</js:Container>
+	
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MapSearch/src/main/flex/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MapSearch/src/main/flex/models/MyModel.as b/examples/flexjs/MapSearch/src/main/flex/models/MyModel.as
new file mode 100644
index 0000000..8a1e8fd
--- /dev/null
+++ b/examples/flexjs/MapSearch/src/main/flex/models/MyModel.as
@@ -0,0 +1,71 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.core.IBeadModel;
+	import org.apache.flex.core.IStrand;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	
+	public class MyModel extends EventDispatcher implements IBeadModel
+	{
+		public function MyModel()
+		{
+			super();
+		}
+		
+		private var _strand:IStrand;
+		
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+		}
+		
+		private var _cities:Array = ["Sydney", "NYC", "Mexico City", "London", "Rio de Janeiro"];
+		
+		[Bindable]
+		public function get cities():Array
+		{
+			return _cities;
+		}
+		
+		private var _coordinates:Array = [{lat:-33.86, lng:151.211},
+			{lat:40.712, lng:-74.0059},
+			{lat:19.26, lng:-99.03},
+			{lat:51.4, lng:-0.1},
+			{lat:-22.95, lng:-43.12}];
+		public function get coordinates():Array
+		{
+			return _coordinates;
+		}
+		
+		private var _searchResults:Array = [];
+		
+		[Bindable("searchResultsChanged")]
+		public function get searchResults():Array
+		{
+			return _searchResults;
+		}
+		public function set searchResults(value:Array):void
+		{
+			_searchResults = value;
+			dispatchEvent(new Event("searchResultsChanged"));
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MapSearch/src/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MapSearch/src/models/MyModel.as b/examples/flexjs/MapSearch/src/models/MyModel.as
deleted file mode 100644
index 8a1e8fd..0000000
--- a/examples/flexjs/MapSearch/src/models/MyModel.as
+++ /dev/null
@@ -1,71 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.core.IBeadModel;
-	import org.apache.flex.core.IStrand;
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	
-	public class MyModel extends EventDispatcher implements IBeadModel
-	{
-		public function MyModel()
-		{
-			super();
-		}
-		
-		private var _strand:IStrand;
-		
-		public function set strand(value:IStrand):void
-		{
-			_strand = value;
-		}
-		
-		private var _cities:Array = ["Sydney", "NYC", "Mexico City", "London", "Rio de Janeiro"];
-		
-		[Bindable]
-		public function get cities():Array
-		{
-			return _cities;
-		}
-		
-		private var _coordinates:Array = [{lat:-33.86, lng:151.211},
-			{lat:40.712, lng:-74.0059},
-			{lat:19.26, lng:-99.03},
-			{lat:51.4, lng:-0.1},
-			{lat:-22.95, lng:-43.12}];
-		public function get coordinates():Array
-		{
-			return _coordinates;
-		}
-		
-		private var _searchResults:Array = [];
-		
-		[Bindable("searchResultsChanged")]
-		public function get searchResults():Array
-		{
-			return _searchResults;
-		}
-		public function set searchResults(value:Array):void
-		{
-			_searchResults = value;
-			dispatchEvent(new Event("searchResultsChanged"));
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileMap/resources/config.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileMap/resources/config.xml b/examples/flexjs/MobileMap/resources/config.xml
deleted file mode 100644
index 00b9f64..0000000
--- a/examples/flexjs/MobileMap/resources/config.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version='1.0' encoding='utf-8'?>
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You 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.
-
--->
-<widget id="${groupId}.${artifactId}" version="${version}" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
-    <name>${artifactId}</name>
-    <description>
-        ${description}
-    </description>
-    <author email="dev@flex.apache.org" href="http://flex.apache.org">
-        Apache Flex Team
-    </author>
-    <content src="index.html" />
-    <plugin name="cordova-plugin-whitelist" version="1" />
-    <access origin="*" />
-    <allow-intent href="http://*/*" />
-    <allow-intent href="https://*/*" />
-    <allow-intent href="tel:*" />
-    <allow-intent href="sms:*" />
-    <allow-intent href="mailto:*" />
-    <allow-intent href="geo:*" />
-    <platform name="android">
-        <allow-intent href="market:*" />
-    </platform>
-    <platform name="ios">
-        <allow-intent href="itms:*" />
-        <allow-intent href="itms-apps:*" />
-    </platform>
-</widget>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileMap/src/MobileMap.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileMap/src/MobileMap.mxml b/examples/flexjs/MobileMap/src/MobileMap.mxml
deleted file mode 100644
index 1a68662..0000000
--- a/examples/flexjs/MobileMap/src/MobileMap.mxml
+++ /dev/null
@@ -1,71 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<mjs:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-                 xmlns:js="library://ns.apache.org/flexjs/basic"
-                 xmlns:mjs="library://ns.apache.org/flexjs/cordova"
-                 xmlns:google="library://ns.apache.org/flexjs/google"
-                 applicationComplete="onDeviceReady()">
-    <js:valuesImpl>
-        <js:SimpleCSSValuesImpl />
-    </js:valuesImpl>
-    <fx:Script>
-        <![CDATA[
-        	import org.apache.cordova.geolocation.Geolocation;
-        	import google.maps.LatLng;
-        	
-            private function onDeviceReady():void {
-                label.text = "The device ready, loading map...";
-                
-                var location:Geolocation = new Geolocation();
-                location.getCurrentPosition(onSuccess, onError);
-            }
-            
-            private function onSuccess(position:Object):void
-            {
-            	// Extract the latitude and longitude from the position
-            	// given and covert it to GoogleMaps LatLng object so
-            	// the map can be centered on it.
-            	
-            	var lat:Number = Number(position["coords"]["latitude"]);
-            	var lng:Number = Number(position["coords"]["longitude"]);
-            	
-            	label.text = String(lat) + ", " + String(lng);
-            	map.setCenter(new LatLng(lat, lng));
-            }
-            
-            private function onError(error:*):void
-            {
-            	label.text = "Location failure";
-            }
-        ]]>
-    </fx:Script>
-    <js:initialView>
-        <js:View>
-        	<js:VContainer width="450" height="640">
-        		<js:HContainer width="100%" height="40">
-        			<js:Label text="Current Location: " width="25%" />
-            		<js:Label id="label" text="" width="75%" />
-            	</js:HContainer>
-            	<google:Map id="map" width="100%" height="600" 
-                        token="AIzaSyDkQgg2iojLCYeuW6hK7DkuAHD-SwJJhdE" />
-            </js:VContainer>
-        </js:View>
-    </js:initialView>
-</mjs:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileMap/src/main/flex/MobileMap.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileMap/src/main/flex/MobileMap.mxml b/examples/flexjs/MobileMap/src/main/flex/MobileMap.mxml
new file mode 100644
index 0000000..1a68662
--- /dev/null
+++ b/examples/flexjs/MobileMap/src/main/flex/MobileMap.mxml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<mjs:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+                 xmlns:js="library://ns.apache.org/flexjs/basic"
+                 xmlns:mjs="library://ns.apache.org/flexjs/cordova"
+                 xmlns:google="library://ns.apache.org/flexjs/google"
+                 applicationComplete="onDeviceReady()">
+    <js:valuesImpl>
+        <js:SimpleCSSValuesImpl />
+    </js:valuesImpl>
+    <fx:Script>
+        <![CDATA[
+        	import org.apache.cordova.geolocation.Geolocation;
+        	import google.maps.LatLng;
+        	
+            private function onDeviceReady():void {
+                label.text = "The device ready, loading map...";
+                
+                var location:Geolocation = new Geolocation();
+                location.getCurrentPosition(onSuccess, onError);
+            }
+            
+            private function onSuccess(position:Object):void
+            {
+            	// Extract the latitude and longitude from the position
+            	// given and covert it to GoogleMaps LatLng object so
+            	// the map can be centered on it.
+            	
+            	var lat:Number = Number(position["coords"]["latitude"]);
+            	var lng:Number = Number(position["coords"]["longitude"]);
+            	
+            	label.text = String(lat) + ", " + String(lng);
+            	map.setCenter(new LatLng(lat, lng));
+            }
+            
+            private function onError(error:*):void
+            {
+            	label.text = "Location failure";
+            }
+        ]]>
+    </fx:Script>
+    <js:initialView>
+        <js:View>
+        	<js:VContainer width="450" height="640">
+        		<js:HContainer width="100%" height="40">
+        			<js:Label text="Current Location: " width="25%" />
+            		<js:Label id="label" text="" width="75%" />
+            	</js:HContainer>
+            	<google:Map id="map" width="100%" height="600" 
+                        token="AIzaSyDkQgg2iojLCYeuW6hK7DkuAHD-SwJJhdE" />
+            </js:VContainer>
+        </js:View>
+    </js:initialView>
+</mjs:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileMap/src/main/resources/config.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileMap/src/main/resources/config.xml b/examples/flexjs/MobileMap/src/main/resources/config.xml
new file mode 100644
index 0000000..00b9f64
--- /dev/null
+++ b/examples/flexjs/MobileMap/src/main/resources/config.xml
@@ -0,0 +1,44 @@
+<?xml version='1.0' encoding='utf-8'?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You 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.
+
+-->
+<widget id="${groupId}.${artifactId}" version="${version}" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+    <name>${artifactId}</name>
+    <description>
+        ${description}
+    </description>
+    <author email="dev@flex.apache.org" href="http://flex.apache.org">
+        Apache Flex Team
+    </author>
+    <content src="index.html" />
+    <plugin name="cordova-plugin-whitelist" version="1" />
+    <access origin="*" />
+    <allow-intent href="http://*/*" />
+    <allow-intent href="https://*/*" />
+    <allow-intent href="tel:*" />
+    <allow-intent href="sms:*" />
+    <allow-intent href="mailto:*" />
+    <allow-intent href="geo:*" />
+    <platform name="android">
+        <allow-intent href="market:*" />
+    </platform>
+    <platform name="ios">
+        <allow-intent href="itms:*" />
+        <allow-intent href="itms-apps:*" />
+    </platform>
+</widget>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/resources/config.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/resources/config.xml b/examples/flexjs/MobileStocks/resources/config.xml
deleted file mode 100644
index 00b9f64..0000000
--- a/examples/flexjs/MobileStocks/resources/config.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version='1.0' encoding='utf-8'?>
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You 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.
-
--->
-<widget id="${groupId}.${artifactId}" version="${version}" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
-    <name>${artifactId}</name>
-    <description>
-        ${description}
-    </description>
-    <author email="dev@flex.apache.org" href="http://flex.apache.org">
-        Apache Flex Team
-    </author>
-    <content src="index.html" />
-    <plugin name="cordova-plugin-whitelist" version="1" />
-    <access origin="*" />
-    <allow-intent href="http://*/*" />
-    <allow-intent href="https://*/*" />
-    <allow-intent href="tel:*" />
-    <allow-intent href="sms:*" />
-    <allow-intent href="mailto:*" />
-    <allow-intent href="geo:*" />
-    <platform name="android">
-        <allow-intent href="market:*" />
-    </platform>
-    <platform name="ios">
-        <allow-intent href="itms:*" />
-        <allow-intent href="itms-apps:*" />
-    </platform>
-</widget>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/MobileStocks.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/MobileStocks.mxml b/examples/flexjs/MobileStocks/src/MobileStocks.mxml
deleted file mode 100644
index 1d30b37..0000000
--- a/examples/flexjs/MobileStocks/src/MobileStocks.mxml
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<cordova:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-					  xmlns:local="*"
-					  xmlns:models="models.*"
-					  xmlns:views="views.*"
-					  xmlns:js="library://ns.apache.org/flexjs/basic" 
-				      xmlns:cordova="library://ns.apache.org/flexjs/cordova"
-					  >
-	<fx:Declarations>
-		<!-- Place non-visual elements (e.g., services, value objects) here -->
-	</fx:Declarations>
-	
-	<js:valuesImpl>
-		<js:SimpleCSSValuesImpl />
-	</js:valuesImpl>
-	
-	<js:model>
-		<models:ProductsModel />
-	</js:model>
-	
-	<js:initialView>
-		<local:MyInitialView width="100%" height="100%" className="InitalView" />
-	</js:initialView>
-	
-	<js:beads>
-		<cordova:Weinre guid="aharui" />
-		<js:MixinManager />
-		<js:DeviceSizeBead />
-	</js:beads>
-	
-	
-</cordova:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/MyInitialView.mxml b/examples/flexjs/MobileStocks/src/MyInitialView.mxml
deleted file mode 100755
index b6853e2..0000000
--- a/examples/flexjs/MobileStocks/src/MyInitialView.mxml
+++ /dev/null
@@ -1,253 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:local="*"
-				xmlns:js="library://ns.apache.org/flexjs/basic"
-				xmlns:views="views.*" 
-				xmlns:apache="org.apache.flex.html.beads.*"
-				xmlns:html="org.apache.flex.html.*"
-				xmlns:controller="controller.*"
-				initComplete="onInitComplete()" xmlns:models="models.*" >
-	
-	<fx:Style>
-		@namespace js  "library://ns.apache.org/flexjs/basic";
-		@namespace views  "views.*";
-		
-		js|Container {
-			background-color: #FFFFFF;
-		}
-		
-		js|TextInput {
-			font-size: 10pt;
-		}
-		
-		js|Label {
-		    font-size: 8pt;
-		}
-		
-		js|StackedViewManager {
-			padding-top: 0px;
-			padding-bottom: 0px;
-			padding-left: 0px;
-			padding-right: 0px;
-		}
-		
-		js|TabbedViewManager {
-			position : absolute ;
-			height : 100% ;
-			width : 100% ;
-			left : 0px ;
-			top : 0px ;
-			border: solid 1px #444444;
-			background-color: #FFFFFF;
-		}
-		
-		.NavigationBar {
-			background-image: url("assets/background.png");
-			height: 56px;
-			width: 100%;
-			IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalLayout");
-		}
-		
-		.TabBar {
-			background-color: #DEDEDE;
-			height: 55px;
-			vertical-align: middle;
-			line-height: 55px;
-		}
-		
-		.BackButton:hover {
-			background-image: url('assets/arrow_left_24.png');
-		}
-		
-		.BackButton:active {
-			background-image: url('assets/arrow_left_24.png');
-		}
-		
-		.BackButton {
-			background-image: url('assets/arrow_left_24.png');
-		}
-		
-		views|LaunchView {
-			width: 100%;
-			height: 100%;
-			IBeadController:ClassReference('controller.LaunchViewController');
-			background-color: #FFFFFF;
-		}
-		
-		views|WatchListView {
-			width: 100%;
-			height: 100%;
-			IBeadController:ClassReference('controller.WatchListController');
-			background-color: #FFFFFF;
-		}
-		
-		.WatchListInner {
-			height: 480px;
-			width:  100%;
-			background-color: #FFFFFF;
-		}
-		
-		.WatchListDataGrid {
-			height: 480px;
-			width:  100%;
-		}
-		
-		.WatchListInputArea {
-			background-color: #FFFFFF;
-			width: 480px;
-			height: 25px;
-			padding-top: 5px;
-			padding-bottom: 2px;
-		}
-		
-		views|StockView {
-			width: 100%;
-			height: 100%;
-		}
-		
-		.redCell {
-			color: #FF0000;
-		}
-		
-		.greenCell {
-			color: #00FF00;
-		}
-		
-		.ViewTitle {
-			font-size: 18pt;
-			font-weight: bold;
-			padding: 10pt;
-		}
-		
-		.StockName {
-			font-size: 14pt;
-			font-weight: normal;
-			padding: 10pt;
-		}
-		
-		.StockDetailArea {
-			padding: 10pt;
-		}
-		
-		.StockLabel {
-			font-size: 18pt;
-			font-weight: normal;
-			color: #2255DD;
-		}
-		
-		.StockRemoveButton {
-			background-color: #FF5522;
-			font-size: 16pt;
-			font-weight: bold;
-			color: #FFFFFF;
-			width: 200px;
-			height: 50px;
-		}
-		
-		.StockRemoveButton:hover {
-			background-color: #DD3300;
-		}
-		
-		.StockValue {
-			font-size: 18pt;
-			font-weight: normal;
-			color: #999999;
-		}
-		
-		@media -flex-flash
-		{
-			.NavigationBar {
-				IBackgroundBead: ClassReference("org.apache.flex.html.beads.BackgroundImageBead");
-			}
-		}
-		
-	</fx:Style>
-	
-	<fx:Script>
-		<![CDATA[
-			import org.apache.flex.core.IBeadController;
-			import org.apache.flex.core.IBeadModel;
-			import org.apache.flex.events.Event;
-			import org.apache.flex.mobile.IViewManagerView;
-			import org.apache.flex.mobile.IViewManager;
-			import org.apache.flex.mobile.chrome.NavigationBar;
-			
-			import models.ProductsModel;
-			
-			private function onInitComplete():void
-			{
-				(applicationModel as ProductsModel).loadDataFromStorage();
-			}
-			
-			/* debugging */
-			private function tabbedViewChanged(event:org.apache.flex.events.Event):void
-			{
-				//var manager:IViewManager = event.currentTarget as IViewManager;
-				//trace("TabbedViewChanged for "+manager);
-			}
-			
-			private function watchListStackChanged(event:org.apache.flex.events.Event):void
-			{
-				//trace("watchlist stack changed");
-				var manager:StackedViewManager = event.currentTarget as StackedViewManager;
-				
-				var currentView:IViewManagerView = manager.selectedView;
-				backButton.visible = manager.views.length > 1;
-			}
-			
-			private function goBack(event:org.apache.flex.events.MouseEvent):void
-			{
-				if (navController.selectedIndex == 1) {
-					watchListStack.pop();
-				}
-			}
-		]]>
-	</fx:Script>
-	
-	<js:beads>
-		<js:ViewDataBinding />
-	</js:beads>
-	
-	<js:TabbedViewManager id="navController" width="100%" height="100%" x="0" y="0" viewChanged="tabbedViewChanged(event)">
-		<js:navigationBarItems>
-			<js:TextButton id="backButton" width="45" height="45" className="BackButton" visible="false" click="goBack(event)">
-				<js:beads>
-					<apache:ImageButtonView />
-				</js:beads>
-			</js:TextButton>
-			<js:Image source="assets/logo.png" width="218" height="55" />
-		</js:navigationBarItems>
-		<js:views>
-			<js:StackedViewManager title="Assets">
-				<js:views>
-					<views:LaunchView id="assetsView" title="Assets" dataModel="{applicationModel}" />
-				</js:views>
-			</js:StackedViewManager>
-			
-			<js:StackedViewManager id="watchListStack" title="Watch List" viewChanged="watchListStackChanged(event)">
-				<js:views>
-					<views:WatchListView id="watchListView" dataModel="{applicationModel}"/>
-				</js:views>
-			</js:StackedViewManager>
-		</js:views>
-	</js:TabbedViewManager>
-	
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/StockDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/StockDataJSONItemConverter.as b/examples/flexjs/MobileStocks/src/StockDataJSONItemConverter.as
deleted file mode 100755
index 92a75dc..0000000
--- a/examples/flexjs/MobileStocks/src/StockDataJSONItemConverter.as
+++ /dev/null
@@ -1,41 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package
-{
-    import org.apache.flex.collections.converters.JSONItemConverter;
-
-    public class StockDataJSONItemConverter extends JSONItemConverter
-    {
-        public function StockDataJSONItemConverter()
-        {
-            super();
-        }
-
-        override public function convertItem(data:String):Object
-        {
-            var obj:Object = super.convertItem(data);
-            if (obj["query"] == null) return "No Data";
-			if (obj["query"]["count"] == 0)
-				return "No Data";
-
-			obj = obj["query"]["results"]["quote"];
-			return obj;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/VerticalLayoutTextView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/VerticalLayoutTextView.mxml b/examples/flexjs/MobileStocks/src/VerticalLayoutTextView.mxml
deleted file mode 100755
index 0353195..0000000
--- a/examples/flexjs/MobileStocks/src/VerticalLayoutTextView.mxml
+++ /dev/null
@@ -1,68 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:js="library://ns.apache.org/flexjs/basic"
-			 >
-	
-	<fx:Style>
-		@namespace js  "library://ns.apache.org/flexjs/basic";
-		@namespace views  "views.*";
-		
-		.TopContainer {
-			background-color: #FFFFCC;
-		}
-		
-		.MidContainer {
-			background-color: #FFCCFF;
-		}
-		
-		.BotContainer {
-			background-color: #CCFFFF;
-		}
-		
-	</fx:Style>
-	
-	<fx:Script>
-		<![CDATA[
-			
-		]]>
-	</fx:Script>
-	
-	<js:beads>
-		<js:ViewDataBinding />
-	</js:beads>
-	
-	<js:VContainer width="100%" height="100%">
-	
-		<js:Container width="100%" height="25%" className="TopContainer">
-			<js:Label text="Top Container: 25%" />
-		</js:Container>
-	
-		<js:Container width="100%" height="50%" className="MidContainer">
-			<js:Label text="Middle Container: 50%" />
-		</js:Container>
-	
-		<js:Container width="100%" height="25%" className="BotContainer">
-			<js:Label text="Bottom Container: 25%" />
-		</js:Container>
-		
-	</js:VContainer>
-	
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/assets/arrow_left_24.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/assets/arrow_left_24.png b/examples/flexjs/MobileStocks/src/assets/arrow_left_24.png
deleted file mode 100755
index a3019ba..0000000
Binary files a/examples/flexjs/MobileStocks/src/assets/arrow_left_24.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/assets/background.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/assets/background.png b/examples/flexjs/MobileStocks/src/assets/background.png
deleted file mode 100755
index 87bbd59..0000000
Binary files a/examples/flexjs/MobileStocks/src/assets/background.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/assets/logo.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/assets/logo.png b/examples/flexjs/MobileStocks/src/assets/logo.png
deleted file mode 100755
index 0fb0f21..0000000
Binary files a/examples/flexjs/MobileStocks/src/assets/logo.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/controller/LaunchViewController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/controller/LaunchViewController.as b/examples/flexjs/MobileStocks/src/controller/LaunchViewController.as
deleted file mode 100644
index 2b88d26..0000000
--- a/examples/flexjs/MobileStocks/src/controller/LaunchViewController.as
+++ /dev/null
@@ -1,150 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package controller
-{
-	import models.ProductsModel;
-	import models.Stock;
-
-	import org.apache.flex.core.IBeadController;
-	import org.apache.flex.core.IBeadModel;
-	import org.apache.flex.core.IStrand;
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	import org.apache.flex.utils.Timer;
-	import org.apache.flex.collections.ArrayList;
-
-	import views.LaunchView;
-
-	public class LaunchViewController extends EventDispatcher implements IBeadController
-	{
-		public function LaunchViewController()
-		{
-			super();
-
-			timer = new Timer(updateInterval, 0);
-			timer.addEventListener("timer", timerHandler);
-		}
-
-		public var updateInterval:Number = 5000;
-
-		protected var timer:Timer;
-
-		private var index:Number = 0;
-		private var selectedStock:Stock;
-		private var _strand:IStrand;
-
-		public function set strand(value:IStrand):void
-		{
-			_strand = value;
-
-			var view:LaunchView = value as LaunchView;
-			view.addEventListener("addSymbol", handleAddSymbol);
-			view.addEventListener("removeSymbol", handleRemoveSymbol);
-			view.addEventListener("symbolSelected", handleGridSelection);
-		}
-
-		private var _model:IBeadModel;
-		public function set model(value:IBeadModel):void
-		{
-			_model = value;
-		}
-		public function get model():IBeadModel
-		{
-			return _model;
-		}
-
-		private function handleAddSymbol(event:Event):void
-		{
-			var view:LaunchView = _strand as LaunchView;
-			var symbol:String = view.symbolInput.text.toUpperCase();
-			var shares:Number = Number(view.sharesInput.text);
-			if (isNaN(shares) || shares < 0) shares = 0;
-
-			(model as ProductsModel).addStockToAssetList(symbol, shares);
-			(model as ProductsModel).saveDataToStorage();
-
-			subscribe();
-
-			view.symbolInput.text = "";
-			view.sharesInput.text = "";
-			view.addButton.text = "Add";
-		}
-
-		private function handleGridSelection(event:Event):void
-		{
-			var view:LaunchView = _strand as LaunchView;
-			var index:int = view.assetGrid.selectedIndex;
-			var data:Object = (model as ProductsModel).assetList.getItemAt(index);
-			view.symbolInput.text = data.symbol;
-			view.sharesInput.text = String(data.shares);
-
-			view.addButton.text = "Change";
-		}
-
-		public function handleRemoveSymbol(event:Event):void
-		{
-			var view:LaunchView = _strand as LaunchView;
-			var index:int = view.assetGrid.selectedIndex;
-			if (index < 0) return;
-
-			(model as ProductsModel).removeStockFromAssetListAtIndex(index);
-
-			view.symbolInput.text = "";
-			view.sharesInput.text = "";
-
-			view.addButton.text = "Add";
-		}
-
-		public function subscribe():void
-		{
-			if (!timer.running)
-			{
-				timer.start();
-			}
-		}
-
-		public function unsubscribe():void
-		{
-			if (timer.running)
-			{
-				timer.stop();
-			}
-		}
-
-		/**
-		 * Each time the handler goes off a different stock in the list
-		 * is updated. This keeps the app from sending too many requests
-		 * all at once.
-		 */
-		protected function timerHandler(event:*):void
-		{
-			var stockList:ArrayList = (model as ProductsModel).assetList;
-
-			if (stockList.length == 0) return;
-
-			if (index >= stockList.length) index = 0;
-
-			(model as ProductsModel).updateStockData(stockList.getItemAt(index) as Stock);
-			index++;
-
-			var newEvent:Event = new Event("update");
-			model.dispatchEvent(newEvent);
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/controller/WatchListController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/controller/WatchListController.as b/examples/flexjs/MobileStocks/src/controller/WatchListController.as
deleted file mode 100644
index 0d94e5f..0000000
--- a/examples/flexjs/MobileStocks/src/controller/WatchListController.as
+++ /dev/null
@@ -1,139 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package controller
-{
-	import models.ProductsModel;
-	import models.Stock;
-
-	import org.apache.flex.core.IBeadController;
-	import org.apache.flex.core.IBeadModel;
-	import org.apache.flex.core.IStrand;
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	import org.apache.flex.utils.Timer;
-	import org.apache.flex.collections.ArrayList;
-
-	import views.StockView;
-	import views.WatchListView;
-
-	public class WatchListController extends EventDispatcher implements IBeadController
-	{
-		public function WatchListController()
-		{
-			super();
-
-			timer = new Timer(updateInterval, 0);
-			timer.addEventListener("timer", timerHandler);
-		}
-
-		public var updateInterval:Number = 5000;
-
-		protected var timer:Timer;
-
-		private var index:Number = 0;
-		private var selectedStock:Stock;
-		private var _strand:IStrand;
-
-		public function set strand(value:IStrand):void
-		{
-			_strand = value;
-
-			var view:WatchListView = value as WatchListView;
-			view.addEventListener("addSymbol", handleAddSymbol);
-			view.addEventListener("stockSelected", handleGridSelection);
-		}
-
-		private var _model:IBeadModel;
-		public function set model(value:IBeadModel):void
-		{
-			_model = value;
-		}
-		public function get model():IBeadModel
-		{
-			return _model;
-		}
-
-		private function handleAddSymbol(event:Event):void
-		{
-			var view:WatchListView = _strand as WatchListView;
-			var symbol:String = view.symbolName.text.toUpperCase();
-
-			view.symbolName.text = "";
-
-			(model as ProductsModel).addStockToWatchList(symbol);
-			(model as ProductsModel).saveDataToStorage();
-
-			subscribe();
-		}
-
-		private function handleGridSelection(event:Event):void
-		{
-			var view:WatchListView = _strand as WatchListView;
-			selectedStock = (model as ProductsModel).watchList.getItemAt(view.selectedStockIndex) as Stock;
-			trace("Selected stock "+selectedStock.symbol);
-
-			var stockView:StockView = view.showStockDetails(selectedStock);
-			stockView.addEventListener("removeFromList", handleRemoveFromList);
-		}
-
-		public function handleRemoveFromList(event:Event):void
-		{
-			(model as ProductsModel).removeStockFromWatchList(selectedStock);
-
-			var view:WatchListView = _strand as WatchListView;
-			view.popView();
-		}
-
-		public function subscribe():void
-		{
-			if (!timer.running)
-			{
-				timer.start();
-			}
-		}
-
-		public function unsubscribe():void
-		{
-			if (timer.running)
-			{
-				timer.stop();
-			}
-		}
-
-		/**
-		 * Each time the handler goes off a different stock in the list
-		 * is updated. This keeps the app from sending too many requests
-		 * all at once.
-		 */
-		protected function timerHandler(event:*):void
-		{
-			var stockList:ArrayList = (model as ProductsModel).watchList;
-
-			if (stockList.length == 0) return;
-
-			if (index >= stockList.length) index = 0;
-
-			(model as ProductsModel).updateStockData(stockList.getItemAt(index) as Stock);
-			index++;
-
-			var newEvent:Event = new Event("update");
-			model.dispatchEvent(newEvent);
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/MobileStocks.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/MobileStocks.mxml b/examples/flexjs/MobileStocks/src/main/flex/MobileStocks.mxml
new file mode 100644
index 0000000..1d30b37
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/MobileStocks.mxml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<cordova:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+					  xmlns:local="*"
+					  xmlns:models="models.*"
+					  xmlns:views="views.*"
+					  xmlns:js="library://ns.apache.org/flexjs/basic" 
+				      xmlns:cordova="library://ns.apache.org/flexjs/cordova"
+					  >
+	<fx:Declarations>
+		<!-- Place non-visual elements (e.g., services, value objects) here -->
+	</fx:Declarations>
+	
+	<js:valuesImpl>
+		<js:SimpleCSSValuesImpl />
+	</js:valuesImpl>
+	
+	<js:model>
+		<models:ProductsModel />
+	</js:model>
+	
+	<js:initialView>
+		<local:MyInitialView width="100%" height="100%" className="InitalView" />
+	</js:initialView>
+	
+	<js:beads>
+		<cordova:Weinre guid="aharui" />
+		<js:MixinManager />
+		<js:DeviceSizeBead />
+	</js:beads>
+	
+	
+</cordova:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/MyInitialView.mxml b/examples/flexjs/MobileStocks/src/main/flex/MyInitialView.mxml
new file mode 100755
index 0000000..b6853e2
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:local="*"
+				xmlns:js="library://ns.apache.org/flexjs/basic"
+				xmlns:views="views.*" 
+				xmlns:apache="org.apache.flex.html.beads.*"
+				xmlns:html="org.apache.flex.html.*"
+				xmlns:controller="controller.*"
+				initComplete="onInitComplete()" xmlns:models="models.*" >
+	
+	<fx:Style>
+		@namespace js  "library://ns.apache.org/flexjs/basic";
+		@namespace views  "views.*";
+		
+		js|Container {
+			background-color: #FFFFFF;
+		}
+		
+		js|TextInput {
+			font-size: 10pt;
+		}
+		
+		js|Label {
+		    font-size: 8pt;
+		}
+		
+		js|StackedViewManager {
+			padding-top: 0px;
+			padding-bottom: 0px;
+			padding-left: 0px;
+			padding-right: 0px;
+		}
+		
+		js|TabbedViewManager {
+			position : absolute ;
+			height : 100% ;
+			width : 100% ;
+			left : 0px ;
+			top : 0px ;
+			border: solid 1px #444444;
+			background-color: #FFFFFF;
+		}
+		
+		.NavigationBar {
+			background-image: url("assets/background.png");
+			height: 56px;
+			width: 100%;
+			IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalLayout");
+		}
+		
+		.TabBar {
+			background-color: #DEDEDE;
+			height: 55px;
+			vertical-align: middle;
+			line-height: 55px;
+		}
+		
+		.BackButton:hover {
+			background-image: url('assets/arrow_left_24.png');
+		}
+		
+		.BackButton:active {
+			background-image: url('assets/arrow_left_24.png');
+		}
+		
+		.BackButton {
+			background-image: url('assets/arrow_left_24.png');
+		}
+		
+		views|LaunchView {
+			width: 100%;
+			height: 100%;
+			IBeadController:ClassReference('controller.LaunchViewController');
+			background-color: #FFFFFF;
+		}
+		
+		views|WatchListView {
+			width: 100%;
+			height: 100%;
+			IBeadController:ClassReference('controller.WatchListController');
+			background-color: #FFFFFF;
+		}
+		
+		.WatchListInner {
+			height: 480px;
+			width:  100%;
+			background-color: #FFFFFF;
+		}
+		
+		.WatchListDataGrid {
+			height: 480px;
+			width:  100%;
+		}
+		
+		.WatchListInputArea {
+			background-color: #FFFFFF;
+			width: 480px;
+			height: 25px;
+			padding-top: 5px;
+			padding-bottom: 2px;
+		}
+		
+		views|StockView {
+			width: 100%;
+			height: 100%;
+		}
+		
+		.redCell {
+			color: #FF0000;
+		}
+		
+		.greenCell {
+			color: #00FF00;
+		}
+		
+		.ViewTitle {
+			font-size: 18pt;
+			font-weight: bold;
+			padding: 10pt;
+		}
+		
+		.StockName {
+			font-size: 14pt;
+			font-weight: normal;
+			padding: 10pt;
+		}
+		
+		.StockDetailArea {
+			padding: 10pt;
+		}
+		
+		.StockLabel {
+			font-size: 18pt;
+			font-weight: normal;
+			color: #2255DD;
+		}
+		
+		.StockRemoveButton {
+			background-color: #FF5522;
+			font-size: 16pt;
+			font-weight: bold;
+			color: #FFFFFF;
+			width: 200px;
+			height: 50px;
+		}
+		
+		.StockRemoveButton:hover {
+			background-color: #DD3300;
+		}
+		
+		.StockValue {
+			font-size: 18pt;
+			font-weight: normal;
+			color: #999999;
+		}
+		
+		@media -flex-flash
+		{
+			.NavigationBar {
+				IBackgroundBead: ClassReference("org.apache.flex.html.beads.BackgroundImageBead");
+			}
+		}
+		
+	</fx:Style>
+	
+	<fx:Script>
+		<![CDATA[
+			import org.apache.flex.core.IBeadController;
+			import org.apache.flex.core.IBeadModel;
+			import org.apache.flex.events.Event;
+			import org.apache.flex.mobile.IViewManagerView;
+			import org.apache.flex.mobile.IViewManager;
+			import org.apache.flex.mobile.chrome.NavigationBar;
+			
+			import models.ProductsModel;
+			
+			private function onInitComplete():void
+			{
+				(applicationModel as ProductsModel).loadDataFromStorage();
+			}
+			
+			/* debugging */
+			private function tabbedViewChanged(event:org.apache.flex.events.Event):void
+			{
+				//var manager:IViewManager = event.currentTarget as IViewManager;
+				//trace("TabbedViewChanged for "+manager);
+			}
+			
+			private function watchListStackChanged(event:org.apache.flex.events.Event):void
+			{
+				//trace("watchlist stack changed");
+				var manager:StackedViewManager = event.currentTarget as StackedViewManager;
+				
+				var currentView:IViewManagerView = manager.selectedView;
+				backButton.visible = manager.views.length > 1;
+			}
+			
+			private function goBack(event:org.apache.flex.events.MouseEvent):void
+			{
+				if (navController.selectedIndex == 1) {
+					watchListStack.pop();
+				}
+			}
+		]]>
+	</fx:Script>
+	
+	<js:beads>
+		<js:ViewDataBinding />
+	</js:beads>
+	
+	<js:TabbedViewManager id="navController" width="100%" height="100%" x="0" y="0" viewChanged="tabbedViewChanged(event)">
+		<js:navigationBarItems>
+			<js:TextButton id="backButton" width="45" height="45" className="BackButton" visible="false" click="goBack(event)">
+				<js:beads>
+					<apache:ImageButtonView />
+				</js:beads>
+			</js:TextButton>
+			<js:Image source="assets/logo.png" width="218" height="55" />
+		</js:navigationBarItems>
+		<js:views>
+			<js:StackedViewManager title="Assets">
+				<js:views>
+					<views:LaunchView id="assetsView" title="Assets" dataModel="{applicationModel}" />
+				</js:views>
+			</js:StackedViewManager>
+			
+			<js:StackedViewManager id="watchListStack" title="Watch List" viewChanged="watchListStackChanged(event)">
+				<js:views>
+					<views:WatchListView id="watchListView" dataModel="{applicationModel}"/>
+				</js:views>
+			</js:StackedViewManager>
+		</js:views>
+	</js:TabbedViewManager>
+	
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/StockDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/StockDataJSONItemConverter.as b/examples/flexjs/MobileStocks/src/main/flex/StockDataJSONItemConverter.as
new file mode 100755
index 0000000..92a75dc
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/StockDataJSONItemConverter.as
@@ -0,0 +1,41 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package
+{
+    import org.apache.flex.collections.converters.JSONItemConverter;
+
+    public class StockDataJSONItemConverter extends JSONItemConverter
+    {
+        public function StockDataJSONItemConverter()
+        {
+            super();
+        }
+
+        override public function convertItem(data:String):Object
+        {
+            var obj:Object = super.convertItem(data);
+            if (obj["query"] == null) return "No Data";
+			if (obj["query"]["count"] == 0)
+				return "No Data";
+
+			obj = obj["query"]["results"]["quote"];
+			return obj;
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/VerticalLayoutTextView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/VerticalLayoutTextView.mxml b/examples/flexjs/MobileStocks/src/main/flex/VerticalLayoutTextView.mxml
new file mode 100755
index 0000000..0353195
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/VerticalLayoutTextView.mxml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:js="library://ns.apache.org/flexjs/basic"
+			 >
+	
+	<fx:Style>
+		@namespace js  "library://ns.apache.org/flexjs/basic";
+		@namespace views  "views.*";
+		
+		.TopContainer {
+			background-color: #FFFFCC;
+		}
+		
+		.MidContainer {
+			background-color: #FFCCFF;
+		}
+		
+		.BotContainer {
+			background-color: #CCFFFF;
+		}
+		
+	</fx:Style>
+	
+	<fx:Script>
+		<![CDATA[
+			
+		]]>
+	</fx:Script>
+	
+	<js:beads>
+		<js:ViewDataBinding />
+	</js:beads>
+	
+	<js:VContainer width="100%" height="100%">
+	
+		<js:Container width="100%" height="25%" className="TopContainer">
+			<js:Label text="Top Container: 25%" />
+		</js:Container>
+	
+		<js:Container width="100%" height="50%" className="MidContainer">
+			<js:Label text="Middle Container: 50%" />
+		</js:Container>
+	
+		<js:Container width="100%" height="25%" className="BotContainer">
+			<js:Label text="Bottom Container: 25%" />
+		</js:Container>
+		
+	</js:VContainer>
+	
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/assets/arrow_left_24.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/assets/arrow_left_24.png b/examples/flexjs/MobileStocks/src/main/flex/assets/arrow_left_24.png
new file mode 100755
index 0000000..a3019ba
Binary files /dev/null and b/examples/flexjs/MobileStocks/src/main/flex/assets/arrow_left_24.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/assets/background.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/assets/background.png b/examples/flexjs/MobileStocks/src/main/flex/assets/background.png
new file mode 100755
index 0000000..87bbd59
Binary files /dev/null and b/examples/flexjs/MobileStocks/src/main/flex/assets/background.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/assets/logo.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/assets/logo.png b/examples/flexjs/MobileStocks/src/main/flex/assets/logo.png
new file mode 100755
index 0000000..0fb0f21
Binary files /dev/null and b/examples/flexjs/MobileStocks/src/main/flex/assets/logo.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/controller/LaunchViewController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/controller/LaunchViewController.as b/examples/flexjs/MobileStocks/src/main/flex/controller/LaunchViewController.as
new file mode 100644
index 0000000..2b88d26
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/controller/LaunchViewController.as
@@ -0,0 +1,150 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package controller
+{
+	import models.ProductsModel;
+	import models.Stock;
+
+	import org.apache.flex.core.IBeadController;
+	import org.apache.flex.core.IBeadModel;
+	import org.apache.flex.core.IStrand;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	import org.apache.flex.utils.Timer;
+	import org.apache.flex.collections.ArrayList;
+
+	import views.LaunchView;
+
+	public class LaunchViewController extends EventDispatcher implements IBeadController
+	{
+		public function LaunchViewController()
+		{
+			super();
+
+			timer = new Timer(updateInterval, 0);
+			timer.addEventListener("timer", timerHandler);
+		}
+
+		public var updateInterval:Number = 5000;
+
+		protected var timer:Timer;
+
+		private var index:Number = 0;
+		private var selectedStock:Stock;
+		private var _strand:IStrand;
+
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+
+			var view:LaunchView = value as LaunchView;
+			view.addEventListener("addSymbol", handleAddSymbol);
+			view.addEventListener("removeSymbol", handleRemoveSymbol);
+			view.addEventListener("symbolSelected", handleGridSelection);
+		}
+
+		private var _model:IBeadModel;
+		public function set model(value:IBeadModel):void
+		{
+			_model = value;
+		}
+		public function get model():IBeadModel
+		{
+			return _model;
+		}
+
+		private function handleAddSymbol(event:Event):void
+		{
+			var view:LaunchView = _strand as LaunchView;
+			var symbol:String = view.symbolInput.text.toUpperCase();
+			var shares:Number = Number(view.sharesInput.text);
+			if (isNaN(shares) || shares < 0) shares = 0;
+
+			(model as ProductsModel).addStockToAssetList(symbol, shares);
+			(model as ProductsModel).saveDataToStorage();
+
+			subscribe();
+
+			view.symbolInput.text = "";
+			view.sharesInput.text = "";
+			view.addButton.text = "Add";
+		}
+
+		private function handleGridSelection(event:Event):void
+		{
+			var view:LaunchView = _strand as LaunchView;
+			var index:int = view.assetGrid.selectedIndex;
+			var data:Object = (model as ProductsModel).assetList.getItemAt(index);
+			view.symbolInput.text = data.symbol;
+			view.sharesInput.text = String(data.shares);
+
+			view.addButton.text = "Change";
+		}
+
+		public function handleRemoveSymbol(event:Event):void
+		{
+			var view:LaunchView = _strand as LaunchView;
+			var index:int = view.assetGrid.selectedIndex;
+			if (index < 0) return;
+
+			(model as ProductsModel).removeStockFromAssetListAtIndex(index);
+
+			view.symbolInput.text = "";
+			view.sharesInput.text = "";
+
+			view.addButton.text = "Add";
+		}
+
+		public function subscribe():void
+		{
+			if (!timer.running)
+			{
+				timer.start();
+			}
+		}
+
+		public function unsubscribe():void
+		{
+			if (timer.running)
+			{
+				timer.stop();
+			}
+		}
+
+		/**
+		 * Each time the handler goes off a different stock in the list
+		 * is updated. This keeps the app from sending too many requests
+		 * all at once.
+		 */
+		protected function timerHandler(event:*):void
+		{
+			var stockList:ArrayList = (model as ProductsModel).assetList;
+
+			if (stockList.length == 0) return;
+
+			if (index >= stockList.length) index = 0;
+
+			(model as ProductsModel).updateStockData(stockList.getItemAt(index) as Stock);
+			index++;
+
+			var newEvent:Event = new Event("update");
+			model.dispatchEvent(newEvent);
+		}
+	}
+}


[26/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Make application implement IInitialViewApplication

Posted by ca...@apache.org.
Make application implement IInitialViewApplication


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/3c703fed
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/3c703fed
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/3c703fed

Branch: refs/heads/feature/mdl
Commit: 3c703fede373946f90eea7e8561eaa4d56fa5ab6
Parents: d47d3d9
Author: yishayw <yi...@hotmail.com>
Authored: Mon Nov 7 09:23:48 2016 +0200
Committer: yishayw <yi...@hotmail.com>
Committed: Mon Nov 7 09:23:48 2016 +0200

----------------------------------------------------------------------
 .../flex/org/apache/flex/core/Application.as    | 53 +++++++++++++-------
 1 file changed, 35 insertions(+), 18 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3c703fed/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/Application.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/Application.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/Application.as
index 2277802..bef9f3d 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/Application.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/Application.as
@@ -18,19 +18,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.flex.core
 {
+    
+    
     import org.apache.flex.events.Event;
     import org.apache.flex.events.IEventDispatcher;
-    import org.apache.flex.events.MouseEvent;
     import org.apache.flex.utils.MXMLDataInterpreter;
     import org.apache.flex.utils.Timer;
 
     COMPILE::SWF {
+	    import flash.display.Stage;
         import flash.display.DisplayObject;
         import flash.display.Graphics;
         import flash.display.Sprite;
 		import flash.events.Event;
-        import flash.system.ApplicationDomain;
-        import flash.utils.getQualifiedClassName;
         import org.apache.flex.events.utils.MouseEventConverter;
     }
 
@@ -109,11 +109,11 @@ package org.apache.flex.core
      *
      *  @see ViewBase
      *  @langversion 3.0
-     *  @playerversion Flash 10.2
+     *  @playerversion Flash 10.2 
      *  @playerversion AIR 2.6
      *  @productversion FlexJS 0.0
      */
-    public class Application extends ApplicationBase implements IStrand, IParent, IEventDispatcher, ISWFApplication, IPopUpHost, IRenderedObject
+    public class Application extends ApplicationBase implements IInitialViewApplication, IStrand, IParent, IEventDispatcher, ISWFApplication, IPopUpHost, IRenderedObject
     {
         /**
          *  Constructor.
@@ -257,18 +257,7 @@ package org.apache.flex.core
             ValuesManager.valuesImpl.init(this);
         }
 
-        /**
-         *  The initial view.
-         *
-         *  @see org.apache.flex.core.ViewBase
-         *
-         *  @langversion 3.0
-         *  @playerversion Flash 10.2
-         *  @playerversion AIR 2.6
-         *  @productversion FlexJS 0.0
-         */
-        [Bindable("__NoChangeEvent__")]
-        public var initialView:IApplicationView;
+        private var _initialView:IApplicationView;
 
         /**
          *  The controller.  The controller typically watches
@@ -556,5 +545,33 @@ package org.apache.flex.core
 			}
 		}
 		
-    }
+		/**
+		 *  The initial view.
+		 *
+		 *  @see org.apache.flex.core.ViewBase
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10.2
+		 *  @playerversion AIR 2.6
+		 *  @productversion FlexJS 0.0
+		 */
+		[Bindable("__NoChangeEvent__")]
+		public function get initialView():IApplicationView
+		{
+			return _initialView;
+		}
+		
+		public function set initialView(value:IApplicationView):void
+		{
+			_initialView = value;
+			dispatchEvent(new org.apache.flex.events.Event("__NoChangeEvent__");
+		}
+		
+		COMPILE::SWF
+		public function get stage():Stage
+		{
+			return $displayObject.stage;
+		}
+		
+	}
 }


[47/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Fix background line

Posted by ca...@apache.org.
Fix background line


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/0c0dea77
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/0c0dea77
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/0c0dea77

Branch: refs/heads/feature/mdl
Commit: 0c0dea776888cab267e9fd87d2601f8fd279defd
Parents: bc828bb
Author: Carlos Rovira <ca...@apache.org>
Authored: Wed Nov 9 23:30:32 2016 +0100
Committer: Carlos Rovira <ca...@apache.org>
Committed: Wed Nov 9 23:30:32 2016 +0100

----------------------------------------------------------------------
 examples/flexjs/MDLExample/src/main/flex/App.mxml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0c0dea77/examples/flexjs/MDLExample/src/main/flex/App.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLExample/src/main/flex/App.mxml b/examples/flexjs/MDLExample/src/main/flex/App.mxml
index cdd07e4..b77ec2c 100644
--- a/examples/flexjs/MDLExample/src/main/flex/App.mxml
+++ b/examples/flexjs/MDLExample/src/main/flex/App.mxml
@@ -114,7 +114,7 @@ limitations under the License.
                 </js:VContainer>
 
                 <mdl:Card width="512" shadow="2">
-                    <mdl:CardTitle style="color: #666;height: 176px; backgroundImage: url('assets/Unknown.jpeg') center / cover;">
+                    <mdl:CardTitle style="color: #666;height: 176px; background:url('assets/Unknown.jpg') center / cover;">
                         <js:H2 text="Welcome" className="mdl-card__title-text"/>
                     </mdl:CardTitle>
                     <mdl:CardMedia>


[03/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/MyInitialView.mxml b/examples/flexjs/MobileTrader/src/MyInitialView.mxml
deleted file mode 100755
index 0c353ff..0000000
--- a/examples/flexjs/MobileTrader/src/MyInitialView.mxml
+++ /dev/null
@@ -1,256 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:local="*"
-				xmlns:js="library://ns.apache.org/flexjs/basic"
-				xmlns:views="views.*" 
-				xmlns:apache="org.apache.flex.html.beads.*"
-				xmlns:html="org.apache.flex.html.*"
-				xmlns:controller="controller.*"
-				initComplete="onInitComplete()" xmlns:models="models.*" >
-	
-	<fx:Style>
-		@namespace js  "library://ns.apache.org/flexjs/basic";
-		@namespace views  "views.*";
-		
-		js|Container {
-			background-color: #FFFFFF;
-		}
-		
-		js|StackedViewManager {
-			padding-top: 0px;
-			padding-bottom: 0px;
-			padding-left: 0px;
-			padding-right: 0px;
-		}
-		
-		js|TabbedViewManager {
-			position : absolute ;
-			height : 100% ;
-			width : 100% ;
-			left : 0px ;
-			top : 0px ;
-			border: solid 1px #444444;
-			background-color: #FFFFFF;
-		}
-		
-		.NavigationBar {
-			background-image: url("assets/background.png");
-			height: 55px;
-			IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalLayout");
-		}
-		
-		.TabBar {
-			background-color: #DEDEDE;
-			height: 55px;
-			vertical-align: middle;
-			line-height: 55px;
-		}
-		
-		.BackButton:hover {
-			background-image: url('assets/arrow_left_24.png');
-		}
-		
-		.BackButton:active {
-			background-image: url('assets/arrow_left_24.png');
-		}
-		
-		.BackButton {
-			background-image: url('assets/arrow_left_24.png');
-		}
-		
-		.AssetsInner {
-			padding-top: 5px;
-			background-color: #FFFFFF;
-		}
-		
-		views|AssetsView {
-			width: 100%;
-			height: 100%;
-		}
-		
-		views|WatchListView {
-			width: 100%;
-			height: 100%;
-			IBeadController:ClassReference('controller.WatchListController');
-			background-color: #FFFFFF;
-		}
-		
-		.WatchListInner {
-			height: 480px;
-			width:  100%;
-			background-color: #FFFFFF;
-		}
-		
-		.WatchListDataGrid {
-			height: 480px;
-			width:  100%;
-		}
-		
-		.WatchListInputArea {
-			background-color: #FFFFFF;
-			width: 480px;
-			height: 25px;
-			padding-top: 5px;
-			padding-bottom: 2px;
-		}
-		
-		views|StockView {
-			width: 100%;
-			height: 100%;
-		}
-		
-		views|AlertsView {
-			width: 100%;
-			height: 100%;
-			IBeadController:ClassReference('controller.AlertsViewController');
-		}
-		
-		.redCell {
-			color: #FF0000;
-		}
-		
-		.greenCell {
-			color: #00FF00;
-		}
-		
-		.ViewTitle {
-			font-size: 18pt;
-			font-weight: bold;
-			padding: 10pt;
-		}
-		
-		.StockName {
-			font-size: 14pt;
-			font-weight: normal;
-			padding: 10pt;
-		}
-		
-		.StockDetailArea {
-			padding: 10pt;
-		}
-		
-		.StockLabel {
-			font-size: 18pt;
-			font-weight: normal;
-			color: #2255DD;
-		}
-		
-		.StockRemoveButton {
-			background-color: #FF5522;
-			font-size: 16pt;
-			font-weight: bold;
-			color: #FFFFFF;
-			width: 200px;
-			height: 50px;
-		}
-		
-		.StockRemoveButton:hover {
-			background-color: #DD3300;
-		}
-		
-		.StockValue {
-			font-size: 18pt;
-			font-weight: normal;
-			color: #999999;
-		}
-		
-		@media -flex-flash
-		{
-			.NavigationBar {
-				IBackgroundBead: ClassReference("org.apache.flex.html.beads.BackgroundImageBead");
-			}
-		}
-		
-	</fx:Style>
-	
-	<fx:Script>
-		<![CDATA[
-			import org.apache.flex.core.IBeadController;
-			import org.apache.flex.core.IBeadModel;
-			import org.apache.flex.events.Event;
-			import org.apache.flex.mobile.IViewManagerView;
-			import org.apache.flex.mobile.IViewManager;
-			import org.apache.flex.mobile.chrome.NavigationBar;
-			
-			private function onInitComplete():void
-			{
-			}
-			
-			private function onAssetsNext():void
-			{
-				
-			}
-			
-			private function tabbedViewChanged(event:org.apache.flex.events.Event):void
-			{
-				var manager:IViewManager = event.currentTarget as IViewManager;
-				trace("TabbedViewChanged for "+manager);
-			}
-			
-			private function watchListStackChanged(event:org.apache.flex.events.Event):void
-			{
-				trace("watchlist stack changed");
-				var manager:StackedViewManager = event.currentTarget as StackedViewManager;
-				
-				var currentView:IViewManagerView = manager.selectedView;
-				backButton.visible = manager.views.length > 1;
-			}
-			
-			private function goBack(event:org.apache.flex.events.MouseEvent):void
-			{
-				if (navController.selectedIndex == 1) {
-					watchListStack.pop();
-				}
-			}
-		]]>
-	</fx:Script>
-	
-	<js:beads>
-		<js:ViewDataBinding />
-	</js:beads>
-	
-	<js:TabbedViewManager id="navController" width="100%" height="100%" x="0" y="0" viewChanged="tabbedViewChanged(event)">
-		<js:navigationBarItems>
-			<js:TextButton id="backButton" width="45" height="45" className="BackButton" visible="false" click="goBack(event)">
-				<js:beads>
-					<apache:ImageButtonView />
-				</js:beads>
-			</js:TextButton>
-			<js:Image source="assets/logo.png" width="218" height="55" />
-		</js:navigationBarItems>
-		<js:views>
-			<js:StackedViewManager title="Assets">
-				<js:views>
-					<views:AssetsView id="assetsView" title="Assets" next="onAssetsNext()" />
-				</js:views>
-			</js:StackedViewManager>
-			
-			<js:StackedViewManager id="watchListStack" title="Watch List" viewChanged="watchListStackChanged(event)">
-				<js:views>
-					<views:WatchListView id="watchListView" dataModel="{applicationModel}"/>
-				</js:views>
-			</js:StackedViewManager>
-			
-			<views:AlertsView id="alertsView" title="Alerts" dataModel="{applicationModel}" />
-		</js:views>
-	</js:TabbedViewManager>
-	
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/StockDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/StockDataJSONItemConverter.as b/examples/flexjs/MobileTrader/src/StockDataJSONItemConverter.as
deleted file mode 100755
index 5c21c26..0000000
--- a/examples/flexjs/MobileTrader/src/StockDataJSONItemConverter.as
+++ /dev/null
@@ -1,40 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package
-{    
-    import org.apache.flex.collections.converters.JSONItemConverter;
-    
-    public class StockDataJSONItemConverter extends JSONItemConverter
-    {
-        public function StockDataJSONItemConverter()
-        {
-            super();
-        }
-        
-        override public function convertItem(data:String):Object
-        {
-            var obj:Object = super.convertItem(data);
-			if (obj["query"]["count"] == 0)
-				return "No Data";
-			
-			obj = obj["query"]["results"]["quote"];
-			return obj;
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/assets/arrow_left_24.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/assets/arrow_left_24.png b/examples/flexjs/MobileTrader/src/assets/arrow_left_24.png
deleted file mode 100755
index a3019ba..0000000
Binary files a/examples/flexjs/MobileTrader/src/assets/arrow_left_24.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/assets/background.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/assets/background.png b/examples/flexjs/MobileTrader/src/assets/background.png
deleted file mode 100755
index 87bbd59..0000000
Binary files a/examples/flexjs/MobileTrader/src/assets/background.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/assets/logo.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/assets/logo.png b/examples/flexjs/MobileTrader/src/assets/logo.png
deleted file mode 100755
index 0fb0f21..0000000
Binary files a/examples/flexjs/MobileTrader/src/assets/logo.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/controller/AlertsViewController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/controller/AlertsViewController.as b/examples/flexjs/MobileTrader/src/controller/AlertsViewController.as
deleted file mode 100644
index f8373ca..0000000
--- a/examples/flexjs/MobileTrader/src/controller/AlertsViewController.as
+++ /dev/null
@@ -1,141 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package controller
-{
-	import models.Alert;
-	import models.ProductsModel;
-	import models.Stock;
-	
-	import org.apache.flex.core.IBeadController;
-	import org.apache.flex.core.IBeadModel;
-	import org.apache.flex.core.IStrand;
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	import org.apache.flex.utils.Timer;
-	import org.apache.flex.collections.ArrayList;
-	
-	import views.AlertsView;
-	
-	public class AlertsViewController extends EventDispatcher implements IBeadController
-	{
-		public function AlertsViewController()
-		{
-			super();
-			
-			timer = new Timer(updateInterval, 0);
-			timer.addEventListener("timer", timerHandler);
-		}
-		
-		public var updateInterval:Number = 5000;
-		
-		protected var timer:Timer;
-			
-		private var _strand:IStrand;
-		
-		public function set strand(value:IStrand):void
-		{
-			_strand = value;
-			
-			var view:AlertsView = value as AlertsView;
-			view.addEventListener("alertSet", handleAlertSet);
-		}
-		
-		private var _model:IBeadModel;
-		public function set model(value:IBeadModel):void
-		{
-			_model = value;
-		}
-		public function get model():IBeadModel
-		{
-			return _model;
-		}
-		
-		private function handleAlertSet(event:Event):void
-		{
-			var view:AlertsView = _strand as AlertsView;
-			
-			var sym:String = view.symbolField.text.toUpperCase();
-			var value:Number = Number(view.valueField.text);
-			
-			var alert:Alert = new Alert();
-			alert.symbol = sym;
-			alert.value = value;
-			alert.greaterThan = view.higherCheck.selected;
-			
-			// add this stock to the watch list in case it isn't there already
-			alert.stock = (model as ProductsModel).addStock(sym);
-			
-			// set up the alert for the stock
-			(model as ProductsModel).addAlert(alert);
-			
-			view.symbolField.text = "";
-			view.valueField.text = "";
-			
-			subscribe();
-		}
-		
-		public function subscribe():void
-		{
-			if (!timer.running) 
-			{
-				timer.start();
-			}
-		}
-		
-		public function unsubscribe():void
-		{
-			if (timer.running) 
-			{
-				timer.stop();
-			}
-		}
-		
-		/**
-		 * When the timer goes off, verify all of the alerts against each stocks' last
-		 * price.
-		 */
-		protected function timerHandler(event:*):void
-		{
-			var alerts:ArrayList = (model as ProductsModel).alerts;
-			
-			if (alerts.length == 0) return;
-			
-			for (var i:int=0; i < alerts.length; i++)
-			{
-				var alert:Alert = alerts.getItemAt(i) as Alert;
-				alert.message = "";
-				
-				if (alert.greaterThan) {
-					if (alert.stock.last >= alert.value) {
-						alert.message = "Now @"+alert.stock.last;
-					}
-				}
-				else {
-					if (alert.stock.last <= alert.value) {
-						alert.message = "Now @"+alert.stock.last;
-					}
-				}
-				alerts.itemUpdatedAt(i);
-			}
-			
-			var newEvent:Event = new Event("alertsUpdate");
-			model.dispatchEvent(newEvent);
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/controller/WatchListController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/controller/WatchListController.as b/examples/flexjs/MobileTrader/src/controller/WatchListController.as
deleted file mode 100644
index 5da5b70..0000000
--- a/examples/flexjs/MobileTrader/src/controller/WatchListController.as
+++ /dev/null
@@ -1,138 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package controller
-{
-	import models.ProductsModel;
-	import models.Stock;
-	
-	import org.apache.flex.core.IBeadController;
-	import org.apache.flex.core.IBeadModel;
-	import org.apache.flex.core.IStrand;
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	import org.apache.flex.utils.Timer;
-	import org.apache.flex.collections.ArrayList;
-	
-	import views.StockView;
-	import views.WatchListView;
-	
-	public class WatchListController extends EventDispatcher implements IBeadController
-	{
-		public function WatchListController()
-		{
-			super();
-			
-			timer = new Timer(updateInterval, 0);
-			timer.addEventListener("timer", timerHandler);
-		}
-		
-		public var updateInterval:Number = 5000;
-		
-		protected var timer:Timer;
-		
-		private var index:Number = 0;
-		private var selectedStock:Stock;
-		private var _strand:IStrand;
-		
-		public function set strand(value:IStrand):void
-		{
-			_strand = value;
-			
-			var view:WatchListView = value as WatchListView;
-			view.addEventListener("addSymbol", handleAddSymbol);
-			view.addEventListener("stockSelected", handleGridSelection);
-		}
-		
-		private var _model:IBeadModel;
-		public function set model(value:IBeadModel):void
-		{
-			_model = value;
-		}
-		public function get model():IBeadModel
-		{
-			return _model;
-		}
-		
-		private function handleAddSymbol(event:Event):void
-		{
-			var view:WatchListView = _strand as WatchListView;
-			var symbol:String = view.symbolName.text.toUpperCase();
-			
-			view.symbolName.text = "";
-			
-			(model as ProductsModel).addStock(symbol);
-			
-			subscribe();
-		}
-		
-		private function handleGridSelection(event:Event):void
-		{
-			var view:WatchListView = _strand as WatchListView;
-			selectedStock = (model as ProductsModel).watchList[view.selectedStockIndex] as Stock;
-			trace("Selected stock "+selectedStock.symbol);
-			
-			var stockView:StockView = view.showStockDetails(selectedStock);
-			stockView.addEventListener("removeFromList", handleRemoveFromList);
-		}
-		
-		public function handleRemoveFromList(event:Event):void
-		{
-			(model as ProductsModel).removeStock(selectedStock);
-			
-			var view:WatchListView = _strand as WatchListView;
-			view.popView();
-		}
-		
-		public function subscribe():void
-		{
-			if (!timer.running) 
-			{
-				timer.start();
-			}
-		}
-		
-		public function unsubscribe():void
-		{
-			if (timer.running) 
-			{
-				timer.stop();
-			}
-		}
-		
-		/**
-		 * Each time the handler goes off a different stock in the list
-		 * is updated. This keeps the app from sending too many requests
-		 * all at once.
-		 */
-		protected function timerHandler(event:*):void
-		{
-			var stockList:ArrayList = (model as ProductsModel).watchList;
-			
-			if (stockList.length == 0) return;
-			
-			if (index >= stockList.length) index = 0;
-			
-			(model as ProductsModel).updateStockData(stockList.getItemAt(index) as Stock);
-			index++;
-			
-			var newEvent:Event = new Event("update");
-			model.dispatchEvent(newEvent);
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/MobileTrader.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/MobileTrader.mxml b/examples/flexjs/MobileTrader/src/main/flex/MobileTrader.mxml
new file mode 100755
index 0000000..c76531c
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/MobileTrader.mxml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				   xmlns:local="*"
+				   xmlns:models="models.*"
+				   xmlns:js="library://ns.apache.org/flexjs/basic" 
+				   xmlns:controller="controller.*" 
+				   >
+	
+	<js:valuesImpl>
+		<js:SimpleCSSValuesImpl />
+	</js:valuesImpl>
+	
+	<js:model>
+		<models:ProductsModel />
+	</js:model>
+	
+	<js:initialView>
+	   <local:MyInitialView width="100%" height="100%" />
+	</js:initialView>
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml b/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
new file mode 100755
index 0000000..0c353ff
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,256 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:local="*"
+				xmlns:js="library://ns.apache.org/flexjs/basic"
+				xmlns:views="views.*" 
+				xmlns:apache="org.apache.flex.html.beads.*"
+				xmlns:html="org.apache.flex.html.*"
+				xmlns:controller="controller.*"
+				initComplete="onInitComplete()" xmlns:models="models.*" >
+	
+	<fx:Style>
+		@namespace js  "library://ns.apache.org/flexjs/basic";
+		@namespace views  "views.*";
+		
+		js|Container {
+			background-color: #FFFFFF;
+		}
+		
+		js|StackedViewManager {
+			padding-top: 0px;
+			padding-bottom: 0px;
+			padding-left: 0px;
+			padding-right: 0px;
+		}
+		
+		js|TabbedViewManager {
+			position : absolute ;
+			height : 100% ;
+			width : 100% ;
+			left : 0px ;
+			top : 0px ;
+			border: solid 1px #444444;
+			background-color: #FFFFFF;
+		}
+		
+		.NavigationBar {
+			background-image: url("assets/background.png");
+			height: 55px;
+			IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalLayout");
+		}
+		
+		.TabBar {
+			background-color: #DEDEDE;
+			height: 55px;
+			vertical-align: middle;
+			line-height: 55px;
+		}
+		
+		.BackButton:hover {
+			background-image: url('assets/arrow_left_24.png');
+		}
+		
+		.BackButton:active {
+			background-image: url('assets/arrow_left_24.png');
+		}
+		
+		.BackButton {
+			background-image: url('assets/arrow_left_24.png');
+		}
+		
+		.AssetsInner {
+			padding-top: 5px;
+			background-color: #FFFFFF;
+		}
+		
+		views|AssetsView {
+			width: 100%;
+			height: 100%;
+		}
+		
+		views|WatchListView {
+			width: 100%;
+			height: 100%;
+			IBeadController:ClassReference('controller.WatchListController');
+			background-color: #FFFFFF;
+		}
+		
+		.WatchListInner {
+			height: 480px;
+			width:  100%;
+			background-color: #FFFFFF;
+		}
+		
+		.WatchListDataGrid {
+			height: 480px;
+			width:  100%;
+		}
+		
+		.WatchListInputArea {
+			background-color: #FFFFFF;
+			width: 480px;
+			height: 25px;
+			padding-top: 5px;
+			padding-bottom: 2px;
+		}
+		
+		views|StockView {
+			width: 100%;
+			height: 100%;
+		}
+		
+		views|AlertsView {
+			width: 100%;
+			height: 100%;
+			IBeadController:ClassReference('controller.AlertsViewController');
+		}
+		
+		.redCell {
+			color: #FF0000;
+		}
+		
+		.greenCell {
+			color: #00FF00;
+		}
+		
+		.ViewTitle {
+			font-size: 18pt;
+			font-weight: bold;
+			padding: 10pt;
+		}
+		
+		.StockName {
+			font-size: 14pt;
+			font-weight: normal;
+			padding: 10pt;
+		}
+		
+		.StockDetailArea {
+			padding: 10pt;
+		}
+		
+		.StockLabel {
+			font-size: 18pt;
+			font-weight: normal;
+			color: #2255DD;
+		}
+		
+		.StockRemoveButton {
+			background-color: #FF5522;
+			font-size: 16pt;
+			font-weight: bold;
+			color: #FFFFFF;
+			width: 200px;
+			height: 50px;
+		}
+		
+		.StockRemoveButton:hover {
+			background-color: #DD3300;
+		}
+		
+		.StockValue {
+			font-size: 18pt;
+			font-weight: normal;
+			color: #999999;
+		}
+		
+		@media -flex-flash
+		{
+			.NavigationBar {
+				IBackgroundBead: ClassReference("org.apache.flex.html.beads.BackgroundImageBead");
+			}
+		}
+		
+	</fx:Style>
+	
+	<fx:Script>
+		<![CDATA[
+			import org.apache.flex.core.IBeadController;
+			import org.apache.flex.core.IBeadModel;
+			import org.apache.flex.events.Event;
+			import org.apache.flex.mobile.IViewManagerView;
+			import org.apache.flex.mobile.IViewManager;
+			import org.apache.flex.mobile.chrome.NavigationBar;
+			
+			private function onInitComplete():void
+			{
+			}
+			
+			private function onAssetsNext():void
+			{
+				
+			}
+			
+			private function tabbedViewChanged(event:org.apache.flex.events.Event):void
+			{
+				var manager:IViewManager = event.currentTarget as IViewManager;
+				trace("TabbedViewChanged for "+manager);
+			}
+			
+			private function watchListStackChanged(event:org.apache.flex.events.Event):void
+			{
+				trace("watchlist stack changed");
+				var manager:StackedViewManager = event.currentTarget as StackedViewManager;
+				
+				var currentView:IViewManagerView = manager.selectedView;
+				backButton.visible = manager.views.length > 1;
+			}
+			
+			private function goBack(event:org.apache.flex.events.MouseEvent):void
+			{
+				if (navController.selectedIndex == 1) {
+					watchListStack.pop();
+				}
+			}
+		]]>
+	</fx:Script>
+	
+	<js:beads>
+		<js:ViewDataBinding />
+	</js:beads>
+	
+	<js:TabbedViewManager id="navController" width="100%" height="100%" x="0" y="0" viewChanged="tabbedViewChanged(event)">
+		<js:navigationBarItems>
+			<js:TextButton id="backButton" width="45" height="45" className="BackButton" visible="false" click="goBack(event)">
+				<js:beads>
+					<apache:ImageButtonView />
+				</js:beads>
+			</js:TextButton>
+			<js:Image source="assets/logo.png" width="218" height="55" />
+		</js:navigationBarItems>
+		<js:views>
+			<js:StackedViewManager title="Assets">
+				<js:views>
+					<views:AssetsView id="assetsView" title="Assets" next="onAssetsNext()" />
+				</js:views>
+			</js:StackedViewManager>
+			
+			<js:StackedViewManager id="watchListStack" title="Watch List" viewChanged="watchListStackChanged(event)">
+				<js:views>
+					<views:WatchListView id="watchListView" dataModel="{applicationModel}"/>
+				</js:views>
+			</js:StackedViewManager>
+			
+			<views:AlertsView id="alertsView" title="Alerts" dataModel="{applicationModel}" />
+		</js:views>
+	</js:TabbedViewManager>
+	
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/StockDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/StockDataJSONItemConverter.as b/examples/flexjs/MobileTrader/src/main/flex/StockDataJSONItemConverter.as
new file mode 100755
index 0000000..5c21c26
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/StockDataJSONItemConverter.as
@@ -0,0 +1,40 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package
+{    
+    import org.apache.flex.collections.converters.JSONItemConverter;
+    
+    public class StockDataJSONItemConverter extends JSONItemConverter
+    {
+        public function StockDataJSONItemConverter()
+        {
+            super();
+        }
+        
+        override public function convertItem(data:String):Object
+        {
+            var obj:Object = super.convertItem(data);
+			if (obj["query"]["count"] == 0)
+				return "No Data";
+			
+			obj = obj["query"]["results"]["quote"];
+			return obj;
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/assets/arrow_left_24.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/assets/arrow_left_24.png b/examples/flexjs/MobileTrader/src/main/flex/assets/arrow_left_24.png
new file mode 100755
index 0000000..a3019ba
Binary files /dev/null and b/examples/flexjs/MobileTrader/src/main/flex/assets/arrow_left_24.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/assets/background.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/assets/background.png b/examples/flexjs/MobileTrader/src/main/flex/assets/background.png
new file mode 100755
index 0000000..87bbd59
Binary files /dev/null and b/examples/flexjs/MobileTrader/src/main/flex/assets/background.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/assets/logo.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/assets/logo.png b/examples/flexjs/MobileTrader/src/main/flex/assets/logo.png
new file mode 100755
index 0000000..0fb0f21
Binary files /dev/null and b/examples/flexjs/MobileTrader/src/main/flex/assets/logo.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/controller/AlertsViewController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/controller/AlertsViewController.as b/examples/flexjs/MobileTrader/src/main/flex/controller/AlertsViewController.as
new file mode 100644
index 0000000..f8373ca
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/controller/AlertsViewController.as
@@ -0,0 +1,141 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package controller
+{
+	import models.Alert;
+	import models.ProductsModel;
+	import models.Stock;
+	
+	import org.apache.flex.core.IBeadController;
+	import org.apache.flex.core.IBeadModel;
+	import org.apache.flex.core.IStrand;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	import org.apache.flex.utils.Timer;
+	import org.apache.flex.collections.ArrayList;
+	
+	import views.AlertsView;
+	
+	public class AlertsViewController extends EventDispatcher implements IBeadController
+	{
+		public function AlertsViewController()
+		{
+			super();
+			
+			timer = new Timer(updateInterval, 0);
+			timer.addEventListener("timer", timerHandler);
+		}
+		
+		public var updateInterval:Number = 5000;
+		
+		protected var timer:Timer;
+			
+		private var _strand:IStrand;
+		
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+			
+			var view:AlertsView = value as AlertsView;
+			view.addEventListener("alertSet", handleAlertSet);
+		}
+		
+		private var _model:IBeadModel;
+		public function set model(value:IBeadModel):void
+		{
+			_model = value;
+		}
+		public function get model():IBeadModel
+		{
+			return _model;
+		}
+		
+		private function handleAlertSet(event:Event):void
+		{
+			var view:AlertsView = _strand as AlertsView;
+			
+			var sym:String = view.symbolField.text.toUpperCase();
+			var value:Number = Number(view.valueField.text);
+			
+			var alert:Alert = new Alert();
+			alert.symbol = sym;
+			alert.value = value;
+			alert.greaterThan = view.higherCheck.selected;
+			
+			// add this stock to the watch list in case it isn't there already
+			alert.stock = (model as ProductsModel).addStock(sym);
+			
+			// set up the alert for the stock
+			(model as ProductsModel).addAlert(alert);
+			
+			view.symbolField.text = "";
+			view.valueField.text = "";
+			
+			subscribe();
+		}
+		
+		public function subscribe():void
+		{
+			if (!timer.running) 
+			{
+				timer.start();
+			}
+		}
+		
+		public function unsubscribe():void
+		{
+			if (timer.running) 
+			{
+				timer.stop();
+			}
+		}
+		
+		/**
+		 * When the timer goes off, verify all of the alerts against each stocks' last
+		 * price.
+		 */
+		protected function timerHandler(event:*):void
+		{
+			var alerts:ArrayList = (model as ProductsModel).alerts;
+			
+			if (alerts.length == 0) return;
+			
+			for (var i:int=0; i < alerts.length; i++)
+			{
+				var alert:Alert = alerts.getItemAt(i) as Alert;
+				alert.message = "";
+				
+				if (alert.greaterThan) {
+					if (alert.stock.last >= alert.value) {
+						alert.message = "Now @"+alert.stock.last;
+					}
+				}
+				else {
+					if (alert.stock.last <= alert.value) {
+						alert.message = "Now @"+alert.stock.last;
+					}
+				}
+				alerts.itemUpdatedAt(i);
+			}
+			
+			var newEvent:Event = new Event("alertsUpdate");
+			model.dispatchEvent(newEvent);
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/controller/WatchListController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/controller/WatchListController.as b/examples/flexjs/MobileTrader/src/main/flex/controller/WatchListController.as
new file mode 100644
index 0000000..5da5b70
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/controller/WatchListController.as
@@ -0,0 +1,138 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package controller
+{
+	import models.ProductsModel;
+	import models.Stock;
+	
+	import org.apache.flex.core.IBeadController;
+	import org.apache.flex.core.IBeadModel;
+	import org.apache.flex.core.IStrand;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	import org.apache.flex.utils.Timer;
+	import org.apache.flex.collections.ArrayList;
+	
+	import views.StockView;
+	import views.WatchListView;
+	
+	public class WatchListController extends EventDispatcher implements IBeadController
+	{
+		public function WatchListController()
+		{
+			super();
+			
+			timer = new Timer(updateInterval, 0);
+			timer.addEventListener("timer", timerHandler);
+		}
+		
+		public var updateInterval:Number = 5000;
+		
+		protected var timer:Timer;
+		
+		private var index:Number = 0;
+		private var selectedStock:Stock;
+		private var _strand:IStrand;
+		
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+			
+			var view:WatchListView = value as WatchListView;
+			view.addEventListener("addSymbol", handleAddSymbol);
+			view.addEventListener("stockSelected", handleGridSelection);
+		}
+		
+		private var _model:IBeadModel;
+		public function set model(value:IBeadModel):void
+		{
+			_model = value;
+		}
+		public function get model():IBeadModel
+		{
+			return _model;
+		}
+		
+		private function handleAddSymbol(event:Event):void
+		{
+			var view:WatchListView = _strand as WatchListView;
+			var symbol:String = view.symbolName.text.toUpperCase();
+			
+			view.symbolName.text = "";
+			
+			(model as ProductsModel).addStock(symbol);
+			
+			subscribe();
+		}
+		
+		private function handleGridSelection(event:Event):void
+		{
+			var view:WatchListView = _strand as WatchListView;
+			selectedStock = (model as ProductsModel).watchList[view.selectedStockIndex] as Stock;
+			trace("Selected stock "+selectedStock.symbol);
+			
+			var stockView:StockView = view.showStockDetails(selectedStock);
+			stockView.addEventListener("removeFromList", handleRemoveFromList);
+		}
+		
+		public function handleRemoveFromList(event:Event):void
+		{
+			(model as ProductsModel).removeStock(selectedStock);
+			
+			var view:WatchListView = _strand as WatchListView;
+			view.popView();
+		}
+		
+		public function subscribe():void
+		{
+			if (!timer.running) 
+			{
+				timer.start();
+			}
+		}
+		
+		public function unsubscribe():void
+		{
+			if (timer.running) 
+			{
+				timer.stop();
+			}
+		}
+		
+		/**
+		 * Each time the handler goes off a different stock in the list
+		 * is updated. This keeps the app from sending too many requests
+		 * all at once.
+		 */
+		protected function timerHandler(event:*):void
+		{
+			var stockList:ArrayList = (model as ProductsModel).watchList;
+			
+			if (stockList.length == 0) return;
+			
+			if (index >= stockList.length) index = 0;
+			
+			(model as ProductsModel).updateStockData(stockList.getItemAt(index) as Stock);
+			index++;
+			
+			var newEvent:Event = new Event("update");
+			model.dispatchEvent(newEvent);
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/models/Alert.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/models/Alert.as b/examples/flexjs/MobileTrader/src/main/flex/models/Alert.as
new file mode 100644
index 0000000..7b9dc8b
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/models/Alert.as
@@ -0,0 +1,94 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+
+	public class Alert extends EventDispatcher
+	{
+		public function Alert()
+		{
+			super();
+			message = "";
+		}
+		
+		private var _symbol:String;
+		private var _value:Number;
+		private var _greaterThan:Boolean;
+		private var _message:String;
+		private var _stock:Stock;
+		
+		[Binding("symbolChanged")]
+		public function get symbol():String
+		{
+			return _symbol;
+		}
+		public function set symbol(value:String):void
+		{
+			_symbol = value;
+			dispatchEvent(new Event("symbolChanged"));
+		}
+		
+		[Binding("messageChanged")]
+		public function get message():String
+		{
+			return _message;
+		}
+		public function set message(value:String):void
+		{
+			_message = value;
+			dispatchEvent(new Event("messageChanged"));
+		}
+		
+		[Binding("valueChanged")]
+		public function get value():Number
+		{
+			return _value;
+		}
+		public function set value(newValue:Number):void
+		{
+			_value = newValue;
+			dispatchEvent(new Event("valueChanged"));
+		}
+		
+		[Binding("greaterThanChanged")]
+		public function get greaterThan():Boolean
+		{
+			return _greaterThan;
+		}
+		public function set greaterThan(value:Boolean):void
+		{
+			_greaterThan = value;
+			dispatchEvent(new Event("greaterThanChanged"));
+		}
+		
+		[Binding("stockChanged")]
+		public function get stock():Stock
+		{
+			return _stock;
+		}
+		public function set stock(value:Stock):void
+		{
+			_stock = value;
+			dispatchEvent(new Event("stockChanged"));
+		}
+		
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/models/Asset.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/models/Asset.as b/examples/flexjs/MobileTrader/src/main/flex/models/Asset.as
new file mode 100644
index 0000000..050e2bf
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/models/Asset.as
@@ -0,0 +1,77 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+
+	public class Asset extends EventDispatcher
+	{
+		private var _label:String;
+		private var _value:Number;
+		private var _netChange:Number;
+
+		public function Asset(newLabel:String, newValue:Number, newNetChange:Number)
+		{
+			_label = newLabel;
+			_value = newValue;
+			_netChange = newNetChange;
+		}
+
+		[Bindable("labelChanged")]
+		public function get label():String
+		{
+			return _label;
+		}
+		public function set label(value:String):void
+		{
+			if (value != _label) {
+				_label = value;
+			dispatchEvent(new Event("labelChanged"));
+			}
+		}
+
+		[Bindable("valueChanged")]
+		public function get value():Number
+		{
+			return _value;
+		}
+		public function set value(newValue:Number):void
+		{
+			if (_value != newValue) {
+				_value = newValue;
+			dispatchEvent(new Event("valueChanged"));
+			}
+		}
+
+		[Bindable("netChangeChanged")]
+		public function get netChange():Number
+		{
+			return _netChange;
+		}
+		public function set netChange(value:Number):void
+		{
+			if (_netChange != value) {
+				_netChange = value;
+			dispatchEvent(new Event("netChangeChanged"));
+			}
+		}
+	}
+
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/models/AssetsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/models/AssetsModel.as b/examples/flexjs/MobileTrader/src/main/flex/models/AssetsModel.as
new file mode 100755
index 0000000..3d72137
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/models/AssetsModel.as
@@ -0,0 +1,57 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.core.IBeadModel;
+	import org.apache.flex.core.IStrand;
+	import org.apache.flex.events.EventDispatcher;
+	import org.apache.flex.collections.ArrayList;
+
+	public class AssetsModel extends EventDispatcher implements IBeadModel
+	{
+		public function AssetsModel()
+		{
+			super();
+			_assetsData = new ArrayList();
+			_assetsData.source = source;
+		}
+		private var source:Array = [
+			new Asset("NetWorth:", 161984, 2.36),
+			new Asset("Last Month:", 165915, 10.98),
+			new Asset("6 Months Ago:", 145962, 16.56),
+			new Asset("Last Year:", 138972, 8.36)
+		];
+		private var _assetsData:ArrayList;
+
+		public function get assetsData():ArrayList
+		{
+			return _assetsData;
+		}
+
+		public function get assetsDataAsArray():Array
+		{
+		    return source;
+		}
+
+		public function set strand(value:IStrand):void
+		{
+			// not used
+		}
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/models/ProductsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/models/ProductsModel.as b/examples/flexjs/MobileTrader/src/main/flex/models/ProductsModel.as
new file mode 100755
index 0000000..f4b2008
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/models/ProductsModel.as
@@ -0,0 +1,165 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.core.IBeadModel;
+	import org.apache.flex.core.IStrand;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	import org.apache.flex.net.HTTPService;
+	import org.apache.flex.collections.parsers.JSONInputParser;
+	import org.apache.flex.collections.LazyCollection;
+	import org.apache.flex.collections.ArrayList;
+		
+	public class ProductsModel extends EventDispatcher implements IBeadModel
+	{
+		public function ProductsModel()
+		{
+			super();
+			
+			service = new HTTPService();
+			collection = new LazyCollection;
+			collection.inputParser = new JSONInputParser();
+			collection.itemConverter = new StockDataJSONItemConverter();
+			
+			_watchList = new ArrayList();
+			_alerts = new ArrayList();
+		}
+		
+		private var service:HTTPService;
+		private var collection:LazyCollection;
+		private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
+		private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
+		
+		private var _strand:IStrand;
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+			
+			service.addBead(collection);
+			_strand.addBead(service);
+		}
+
+		private var _tabList:Array = ["Assets", "Watch", "Alerts"];
+		public function get tabList():Array
+		{
+			return _tabList;
+		}
+
+		private var _labelFields:Array = [ "id", "title", "detail" ];
+		public function get labelFields():Array
+		{
+			return _labelFields;
+		}
+		
+		private var _watchList:ArrayList;
+		
+		public function get watchList():ArrayList
+		{
+			return _watchList;
+		}
+		
+		private var _alerts:ArrayList;
+		
+		public function get alerts():ArrayList
+		{
+			return _alerts;
+		}
+		
+		public function addAlert(value:Alert):void
+		{
+			for (var i:int =0; i < _alerts.length; i++)
+			{
+				var alert:Alert = _alerts.getItemAt(i) as Alert;
+				if (alert.symbol == value.symbol) {
+				    _alerts.setItemAt(value, i);
+					return;
+				}
+			}
+			
+			_alerts.addItem(value);
+			dispatchEvent(new Event("alertsUpdate"));
+		}
+		
+		public function addStock(symbol:String):Stock
+		{
+			for (var i:int=0; i < _watchList.length; i++)
+			{
+				var stock:Stock = _watchList.getItemAt(i) as Stock;
+				if (stock.symbol == symbol) return stock;
+			}
+			
+			stock = new Stock(symbol);
+			
+			_watchList.addItem(stock);
+	//		dispatchEvent(new Event("update"));
+			
+			updateStockData(stock);
+			return stock;
+		}
+		
+		public function updateStockData(value:Stock):void
+		{
+			var sym:String = value.symbol;
+			service.url = queryBegin + sym + queryEnd;
+			service.send();
+			service.addEventListener("complete", completeHandler);
+		}
+		
+		public function removeStock(stock:Stock):void
+		{
+			for (var i:int=0; i < alerts.length; i++)
+			{
+				var alert:Alert = alerts.getItemAt(i) as Alert;
+				if (stock.symbol == alert.symbol) {
+					alerts.removeItemAt(i);
+					break;
+				}
+			}
+			
+			for (i=0; i < _watchList.length; i++)
+			{
+				var s:Stock = _watchList.getItemAt(i) as Stock;
+				if (stock.symbol == s.symbol) {
+					_watchList.removeItemAt(i);
+					break;
+				}
+			}
+			
+			dispatchEvent(new Event("alertsUpdate"));
+			dispatchEvent(new Event("update"));
+		}
+		
+		private function completeHandler(event:Event):void
+		{
+			var responseData:Object = collection.getItemAt(0);
+			
+			var sym:String = responseData["Symbol"];
+			for (var i:int=0; i < _watchList.length; i++)
+			{
+				var stock:Stock = _watchList.getItemAt(i) as Stock;
+				if (stock.symbol == sym) {
+					stock.updateFromData(responseData);
+					_watchList.itemUpdatedAt(i);
+					break;
+				}
+			}
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/models/Stock.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/models/Stock.as b/examples/flexjs/MobileTrader/src/main/flex/models/Stock.as
new file mode 100755
index 0000000..c06790d
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/models/Stock.as
@@ -0,0 +1,148 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	
+	public class Stock extends EventDispatcher
+	{	    		
+		public var history:Array;
+		
+		public function Stock(symbol:String=null, last:Number=0)
+		{
+			this.symbol = symbol;
+			this.last = last;
+			this.low = last;
+			this.high = last;
+			this.open = last;
+			this.change = 0;
+			this.name = "";
+		}
+		
+		public function updateFromData(obj:Object):void
+		{
+			name = obj["Name"];
+			low = obj["DaysLow"];
+			high = obj["DaysHigh"];
+			open = obj["Open"];
+			change = obj["Change"];
+			symbol = obj["Symbol"];
+			last = obj["LastTradePriceOnly"];
+		}
+		
+		private var _symbol:String;
+		private var _name:String;
+		private var _low:Number;
+		private var _high:Number;
+		private var _open:Number;
+		private var _last:Number;
+		private var _change:Number;
+		private var _date:Date;
+		
+		[Bindable("symbolChanged")]
+		public function get symbol():String
+		{
+			return _symbol;
+		}
+		public function set symbol(value:String):void
+		{
+			_symbol = value;
+			dispatchEvent(new Event("symbolChanged"));
+		}
+		
+		[Bindable("nameChanged")]
+		public function get name():String
+		{
+			return _name;
+		}
+		public function set name(value:String):void
+		{
+			_name = value;
+			dispatchEvent(new Event("nameChanged"));
+		}
+		
+		[Bindable("lowChanged")]
+		public function get low():Number
+		{
+			return _low;
+		}
+		public function set low(value:Number):void
+		{
+			_low = value;
+			dispatchEvent(new Event("lowChanged"));
+		}
+		
+		[Bindable("highChanged")]
+		public function get high():Number
+		{
+			return _high;
+		}
+		public function set high(value:Number):void
+		{
+			_high = value;
+			dispatchEvent(new Event("highChanged"));
+		}
+		
+		[Bindable("openChanged")]
+		public function get open():Number
+		{
+			return _open;
+		}
+		public function set open(value:Number):void
+		{
+			_open = value;
+			dispatchEvent(new Event("openChanged"));
+		}
+		
+		[Bindable("lastChanged")]
+		public function get last():Number
+		{
+			return _last;
+		}
+		public function set last(value:Number):void
+		{
+			_last = value;
+			dispatchEvent(new Event("lastChanged"));
+		}
+		
+		[Bindable("changeChanged")]
+		public function get change():Number
+		{
+			return _change;
+		}
+		public function set change(value:Number):void
+		{
+			_change = value;
+			dispatchEvent(new Event("changeChanged"));
+		}
+		
+		[Bindable("dateChanged")]
+		public function get date():Date
+		{
+			return _date;
+		}
+		public function set date(value:Date):void
+		{
+			_date = value;
+			dispatchEvent(new Event("dateChanged"));
+		}
+	}
+	
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/renderers/AlertRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/renderers/AlertRenderer.as b/examples/flexjs/MobileTrader/src/main/flex/renderers/AlertRenderer.as
new file mode 100644
index 0000000..e683020
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/renderers/AlertRenderer.as
@@ -0,0 +1,44 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package renderers
+{
+	import org.apache.flex.html.supportClasses.StringItemRenderer;
+	
+	public class AlertRenderer extends StringItemRenderer
+	{
+		public function AlertRenderer()
+		{
+			super();
+		}
+		
+		override public function set data(value:Object):void
+		{
+			super.data = value;
+			
+			if (labelField == "greaterThan") {
+				if (Boolean(value[labelField])) {
+					text = "when over "+value["value"];
+				}
+				else {
+					text = "when under "+value["value"];
+				}
+			}
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/renderers/StockRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/renderers/StockRenderer.as b/examples/flexjs/MobileTrader/src/main/flex/renderers/StockRenderer.as
new file mode 100755
index 0000000..afba26f
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/renderers/StockRenderer.as
@@ -0,0 +1,47 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package renderers
+{
+	import org.apache.flex.html.supportClasses.StringItemRenderer;
+	
+	public class StockRenderer extends StringItemRenderer
+	{
+		public function StockRenderer()
+		{
+			super();
+		}
+		
+		override public function set data(value:Object):void
+		{
+			super.data = value;
+			
+			var n1:Number = Number(value[labelField]);
+			if (!isNaN(n1)) {
+				n1 = Math.round(n1*100)/100.0;
+				
+				// something to keep in mind when using FlexJS for cross-platform
+				// use: make sure that public properties are used versus protected
+				// functions or properties. in most cases, internal vars and functions
+				// will be platform-specific whereas public properties and function
+				// should be cross-platform. 
+				text = String(n1);
+			}
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml b/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml
new file mode 100755
index 0000000..f06dd65
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/views/AlertsView.mxml
@@ -0,0 +1,101 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
+			 title="Alerts"
+				       xmlns:js="library://ns.apache.org/flexjs/basic"
+				       xmlns:local="*"
+				       className="AlertsView" xmlns:renderers="renderers.*">
+	
+	<fx:Metadata>
+		[Event("next")]
+	</fx:Metadata>
+	
+	<fx:Script>
+		<![CDATA[			
+			import org.apache.flex.core.IBeadModel;
+			import org.apache.flex.core.IBeadController;
+			import org.apache.flex.events.Event;
+			import controller.AlertsViewController;
+			
+			public function set dataModel(value:IBeadModel):void
+			{
+				var cm:IBeadController = controller;
+				(cm as AlertsViewController).model = value;
+			}
+			public function get dataModel():IBeadModel
+			{
+				var cm:IBeadController = controller;
+				return (cm as AlertsViewController).model;
+			}
+
+			private function onAlertSet():void
+			{
+				dispatchEvent(new org.apache.flex.events.Event("alertSet"));
+			}
+		]]>
+	</fx:Script>
+		
+	<js:Container x="4" y="10" >
+		<js:beads>
+			<js:HorizontalLayout />
+		</js:beads>
+		<js:Label text="Symbol:" />
+		<js:TextInput id="symbolField" width="50" />
+		<js:Label text="Value:" />
+		<js:TextInput id="valueField" width="50" />
+		<js:CheckBox text="Higher?" id="higherCheck" />
+		<js:TextButton text="Set" click="onAlertSet()" />
+	</js:Container>
+	
+	<js:DataGrid id="dataGrid" x="0" y="40" width="100%" height="200">
+		<js:beads>
+			<js:DataProviderChangeNotifier sourceID="dataModel" propertyName="alerts" />
+			<js:SimpleBinding
+				eventName="alertsUpdate"
+				sourceID="dataModel"
+				sourcePropertyName="alerts"
+				destinationPropertyName="dataProvider" />
+		</js:beads>
+		<js:columns>
+			<js:DataGridColumn label="Symbol" dataField="symbol">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:StringItemRenderer />
+					</fx:Component>
+				</js:itemRenderer>
+			</js:DataGridColumn>
+			<js:DataGridColumn label="Alert" dataField="greaterThan">
+				<js:itemRenderer>
+					<fx:Component>
+						<renderers:AlertRenderer />
+					</fx:Component>
+				</js:itemRenderer>
+			</js:DataGridColumn>
+			<js:DataGridColumn label="Message" dataField="message">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:StringItemRenderer />
+					</fx:Component>
+				</js:itemRenderer>
+			</js:DataGridColumn>
+		</js:columns>
+	</js:DataGrid>
+	
+</js:TitleView>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/views/AssetsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/views/AssetsView.mxml b/examples/flexjs/MobileTrader/src/main/flex/views/AssetsView.mxml
new file mode 100755
index 0000000..2929a3e
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/views/AssetsView.mxml
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
+			title="Assets"
+			xmlns:js="library://ns.apache.org/flexjs/basic"
+			xmlns:models="models.*"
+			xmlns:local="*"
+			className="AssetsView">
+	<fx:Script>
+		<![CDATA[
+
+		]]>
+	</fx:Script>
+	
+	<fx:Metadata>
+		[Event("next")]
+	</fx:Metadata>
+	
+	<js:beads>
+		<js:VerticalLayout />
+	</js:beads>
+	
+	<js:model>
+		<models:AssetsModel />
+	</js:model>
+
+	<js:Label text="Summary" height="10%" />
+	
+	<js:DataGrid height="150" width="100%">
+		<js:style>
+			<js:SimpleCSSStyles top="0" left="0" right="0" />
+		</js:style>
+		<js:beads>
+			<js:ConstantBinding
+				sourceID="model"
+				sourcePropertyName="assetsData"
+				destinationPropertyName="dataProvider" />
+		</js:beads>
+		<js:columns>
+			<js:DataGridColumn label="Type" dataField="label" />
+			<js:DataGridColumn label="Value" dataField="value" />
+			<js:DataGridColumn label="Change" dataField="netChange" />
+		</js:columns>
+	</js:DataGrid>
+		
+	<js:Label text="Performance History" height="10%" />
+		
+	<js:BarChart id="barChart" width="100%" height="40%">
+		<js:beads>
+			<js:ConstantBinding
+				sourceID="model"
+				sourcePropertyName="assetsDataAsArray"
+				destinationPropertyName="dataProvider" />
+			<js:VerticalCategoryAxisBead categoryField="label" />
+			<js:HorizontalLinearAxisBead valueField="netChange" />
+		</js:beads>
+		<js:series>
+			<js:BarSeries xField="netChange"> 
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#FF964D" alpha="1.0" />
+							</js:fill>
+						</js:BoxItemRenderer>                      
+					</fx:Component>
+				</js:itemRenderer>
+			</js:BarSeries>
+		</js:series>
+	</js:BarChart>
+
+</js:TitleView>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/views/SearchView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/views/SearchView.mxml b/examples/flexjs/MobileTrader/src/main/flex/views/SearchView.mxml
new file mode 100755
index 0000000..0348fba
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/views/SearchView.mxml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
+					   xmlns:js="library://ns.apache.org/flexjs/basic"
+					   xmlns:apache="org.apache.flex.html.beads.*"
+					   xmlns:local="*"
+					   className="StockView">
+	
+	<fx:Script>
+		<![CDATA[			
+			import org.apache.flex.mobile.StackedViewManager;
+			private function onBackClick() : void
+			{
+				(viewManager as StackedViewManager).pop();
+			}
+		]]>
+	</fx:Script>
+		
+	<js:Label text="Search View" x="20" y="100" />
+</js:TitleView>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/views/StockView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/views/StockView.mxml b/examples/flexjs/MobileTrader/src/main/flex/views/StockView.mxml
new file mode 100755
index 0000000..95b8992
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/views/StockView.mxml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
+					   xmlns:js="library://ns.apache.org/flexjs/basic"
+					   xmlns:apache="org.apache.flex.html.beads.*"
+					   xmlns:local="*"
+					   className="StockView">
+	
+	<fx:Script>
+		<![CDATA[			
+			import models.Stock;
+			
+			import org.apache.flex.events.Event;
+			import org.apache.flex.mobile.StackedViewManager;
+			
+			private var _stock:Stock;
+			
+			[Bindable("stockChanged")]
+			public function get stock():Stock
+			{
+				return _stock;
+			}
+			public function set stock(value:Stock):void
+			{
+				_stock = value;
+				dispatchEvent(new org.apache.flex.events.Event("stockChanged"));
+			}
+			
+			private function onBackClick() : void
+			{
+				(viewManager as StackedViewManager).pop();
+			}
+			
+			override public function addedToParent():void
+			{
+				super.addedToParent();
+				
+				stockSymbol.text = stock.symbol;
+				stockName.text = stock.name;
+				lastPrice.text = String(stock.last);
+				openPrice.text = String(stock.open);
+				lowPrice.text = String(stock.low);
+				highPrice.text = String(stock.high);
+				changeAmount.text = String(stock.change);
+			}
+			
+			private function removeFromList():void
+			{
+				dispatchEvent(new org.apache.flex.events.Event("removeFromList"));
+			}
+		]]>
+	</fx:Script>
+	
+	<js:Container>
+		<js:beads>
+			<js:VerticalLayout />
+		</js:beads>
+		<js:style>
+			<js:SimpleCSSStyles top="10px" left="10px" />
+		</js:style>
+		
+		<js:Label id="stockSymbol" text="{stock.symbol}" className="ViewTitle" />
+		<js:Label id="stockName" text="{stock.name}" className="StockName"  />
+		
+		<js:Container className="StockDetailArea">
+			<js:beads>
+				<js:VerticalColumnLayout numColumns="2" />
+			</js:beads>
+			
+			<js:Label text="Last Price:" className="StockLabel" /> <js:Label id="lastPrice" className="StockValue" />
+			<js:Label text="Open Price:" className="StockLabel" /> <js:Label id="openPrice" className="StockValue" />
+			<js:Label text="Low  Price:" className="StockLabel" /> <js:Label id="lowPrice" className="StockValue" />
+			<js:Label text="High Price:" className="StockLabel" /> <js:Label id="highPrice" className="StockValue" />
+			<js:Label text="Change:    " className="StockLabel" /> <js:Label id="changeAmount" className="StockValue" />
+		</js:Container>
+		
+		<js:Container className="StockDetailArea">
+			<js:TextButton text="Remove From List" width="200" className="StockRemoveButton" click="removeFromList()" />
+		</js:Container>
+	</js:Container>
+</js:TitleView>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml b/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml
new file mode 100755
index 0000000..aa9da04
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/flex/views/WatchListView.mxml
@@ -0,0 +1,151 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
+		 title="Watch List"
+		 xmlns:js="library://ns.apache.org/flexjs/basic"
+		 xmlns:controller="controller.*"
+		 xmlns:local="*"
+		 className="WatchListView"
+		 xmlns:renderers="renderers.*">
+	
+	<fx:Script>
+		<![CDATA[						
+			import controller.WatchListController;
+			
+			import models.ProductsModel;
+			import models.Stock;
+			
+			import org.apache.flex.binding.SimpleBinding;
+			import org.apache.flex.core.IBeadController;
+			import org.apache.flex.core.IBeadModel;
+			import org.apache.flex.events.Event;
+			import org.apache.flex.mobile.IViewManager;
+			import org.apache.flex.mobile.StackedViewManager;
+			
+			public function set dataModel(value:IBeadModel):void
+			{
+				var cm:IBeadController = controller;
+				(cm as WatchListController).model = value;
+			}
+			public function get dataModel():IBeadModel
+			{
+				var cm:IBeadController = controller;
+				return (cm as WatchListController).model;
+			}
+			
+			private function onSelectStock():void
+			{
+				var stockView:StockView = new StockView();
+				var svm:IViewManager = viewManager;
+				(viewManager as StackedViewManager).push(stockView);
+			}
+			
+			private function addSymbol():void
+			{
+				dispatchEvent(new org.apache.flex.events.Event("addSymbol"));
+			}
+			
+			public var selectedStockIndex:Number;
+			
+			private function selectRow():void
+			{
+				selectedStockIndex = dataGrid.selectedIndex;
+				dispatchEvent(new org.apache.flex.events.Event("stockSelected"));
+			}
+			
+			public function showStockDetails(stock:Stock):StockView
+			{
+				var stockView:StockView = new StockView();
+				stockView.stock = stock;
+				(viewManager as StackedViewManager).push(stockView);
+				
+				var cm:IBeadController = controller;
+				
+				return stockView;
+			}
+			
+			public function popView():void
+			{
+				(viewManager as StackedViewManager).pop();
+			}
+		]]>
+	</fx:Script>
+	
+	<js:beads>
+		<js:VerticalLayout />
+	</js:beads>
+	
+	<js:HContainer className="WatchListInputArea" width="100%" height="10%">
+		<js:Label text="Symbol:" />
+		<js:TextInput id="symbolName" />
+		<js:TextButton text="Add" click="addSymbol()" />
+	</js:HContainer>
+	
+	<js:Spacer height="10" />
+		
+	<js:DataGrid id="dataGrid" width="100%" height="85%" change="selectRow()" className="WatchListDataGrid">
+		<js:beads>
+			<js:DataProviderChangeNotifier sourceID="dataModel" propertyName="watchList" />
+			<js:SimpleBinding
+				eventName="update"
+				sourceID="dataModel"
+				sourcePropertyName="watchList"
+				destinationPropertyName="dataProvider" />
+		</js:beads>
+		<js:columns>
+			<js:DataGridColumn label="Symbol" dataField="symbol">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:StringItemRenderer />
+					</fx:Component>
+				</js:itemRenderer>
+			</js:DataGridColumn>
+			<js:DataGridColumn label="Open" dataField="open">
+				<js:itemRenderer>
+					<fx:Component>
+						<renderers:StockRenderer />
+					</fx:Component>
+				</js:itemRenderer>
+			</js:DataGridColumn>
+			<js:DataGridColumn label="Last" dataField="last" >
+				<js:itemRenderer>
+					<fx:Component>
+						<renderers:StockRenderer />
+					</fx:Component>
+				</js:itemRenderer>
+			</js:DataGridColumn>
+			<js:DataGridColumn label="High" dataField="high" >
+				<js:itemRenderer>
+					<fx:Component>
+						<renderers:StockRenderer />
+					</fx:Component>
+				</js:itemRenderer>
+			</js:DataGridColumn>
+			<js:DataGridColumn label="Low" dataField="low" >
+				<js:itemRenderer>
+					<fx:Component>
+						<renderers:StockRenderer />
+					</fx:Component>
+				</js:itemRenderer>
+			</js:DataGridColumn>
+		</js:columns>
+	</js:DataGrid>
+	
+</js:TitleView>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/main/resources/config.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/resources/config.xml b/examples/flexjs/MobileTrader/src/main/resources/config.xml
new file mode 100644
index 0000000..00b9f64
--- /dev/null
+++ b/examples/flexjs/MobileTrader/src/main/resources/config.xml
@@ -0,0 +1,44 @@
+<?xml version='1.0' encoding='utf-8'?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You 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.
+
+-->
+<widget id="${groupId}.${artifactId}" version="${version}" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+    <name>${artifactId}</name>
+    <description>
+        ${description}
+    </description>
+    <author email="dev@flex.apache.org" href="http://flex.apache.org">
+        Apache Flex Team
+    </author>
+    <content src="index.html" />
+    <plugin name="cordova-plugin-whitelist" version="1" />
+    <access origin="*" />
+    <allow-intent href="http://*/*" />
+    <allow-intent href="https://*/*" />
+    <allow-intent href="tel:*" />
+    <allow-intent href="sms:*" />
+    <allow-intent href="mailto:*" />
+    <allow-intent href="geo:*" />
+    <platform name="android">
+        <allow-intent href="market:*" />
+    </platform>
+    <platform name="ios">
+        <allow-intent href="itms:*" />
+        <allow-intent href="itms-apps:*" />
+    </platform>
+</widget>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/models/Alert.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/models/Alert.as b/examples/flexjs/MobileTrader/src/models/Alert.as
deleted file mode 100644
index 7b9dc8b..0000000
--- a/examples/flexjs/MobileTrader/src/models/Alert.as
+++ /dev/null
@@ -1,94 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-
-	public class Alert extends EventDispatcher
-	{
-		public function Alert()
-		{
-			super();
-			message = "";
-		}
-		
-		private var _symbol:String;
-		private var _value:Number;
-		private var _greaterThan:Boolean;
-		private var _message:String;
-		private var _stock:Stock;
-		
-		[Binding("symbolChanged")]
-		public function get symbol():String
-		{
-			return _symbol;
-		}
-		public function set symbol(value:String):void
-		{
-			_symbol = value;
-			dispatchEvent(new Event("symbolChanged"));
-		}
-		
-		[Binding("messageChanged")]
-		public function get message():String
-		{
-			return _message;
-		}
-		public function set message(value:String):void
-		{
-			_message = value;
-			dispatchEvent(new Event("messageChanged"));
-		}
-		
-		[Binding("valueChanged")]
-		public function get value():Number
-		{
-			return _value;
-		}
-		public function set value(newValue:Number):void
-		{
-			_value = newValue;
-			dispatchEvent(new Event("valueChanged"));
-		}
-		
-		[Binding("greaterThanChanged")]
-		public function get greaterThan():Boolean
-		{
-			return _greaterThan;
-		}
-		public function set greaterThan(value:Boolean):void
-		{
-			_greaterThan = value;
-			dispatchEvent(new Event("greaterThanChanged"));
-		}
-		
-		[Binding("stockChanged")]
-		public function get stock():Stock
-		{
-			return _stock;
-		}
-		public function set stock(value:Stock):void
-		{
-			_stock = value;
-			dispatchEvent(new Event("stockChanged"));
-		}
-		
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/models/Asset.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/models/Asset.as b/examples/flexjs/MobileTrader/src/models/Asset.as
deleted file mode 100644
index 869ba72..0000000
--- a/examples/flexjs/MobileTrader/src/models/Asset.as
+++ /dev/null
@@ -1,77 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-
-	public class Asset extends EventDispatcher
-	{
-		private var _label:String;
-		private var _value:Number;
-		private var _netChange:Number;
-
-		public function Asset(newLabel:String, newValue:Number, newNetChange:Number)
-		{
-			_label = newLabel;
-			_value = newValue;
-			_netChange = newNetChange;
-		}
-
-		[Bindable("labelChanged")]
-		public function get label():String
-		{
-			return _label;
-		}
-		public function set label(value:String):void
-		{
-			if (value != _label) {
-				_label = value;
-			dispatchEvent(new Event("labelChanged"));
-			}
-		}
-
-		[Bindable("valueChanged")]
-		public function get value():Number
-		{
-			return _value;
-		}
-		public function set value(newValue:Number):void
-		{
-			if (_value != newValue) {
-				_value = newValue;
-			dispatchEvent(new Event("valueChanged"));
-			}
-		}
-
-		[Bindable("netChangeChanged")]
-		public function get netChange():Number
-		{
-			return _netChange;
-		}
-		public function set netChange(value:Number):void
-		{
-			if (_netChange != value) {
-				_netChange = value;
-			dispatchEvent(new Event("netChangeChanged"));
-			}
-		}
-	}
-
-}


[14/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/products/ProductItemRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/products/ProductItemRenderer.as b/examples/flexjs/DataGridExample/src/products/ProductItemRenderer.as
deleted file mode 100644
index 4edc5b7..0000000
--- a/examples/flexjs/DataGridExample/src/products/ProductItemRenderer.as
+++ /dev/null
@@ -1,66 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package products
-{
-	import org.apache.flex.html.Image;
-	import org.apache.flex.html.supportClasses.DataItemRenderer;
-	
-	public class ProductItemRenderer extends DataItemRenderer
-	{
-		public function ProductItemRenderer()
-		{
-			super();
-		}
-		
-		private var image:Image;
-		
-		override public function addedToParent():void
-		{
-			super.addedToParent();
-			
-			// add an image and two labels
-			image = new Image();
-			addElement(image);
-		}
-		
-		override public function get data():Object
-		{
-			return super.data;
-		}
-		
-		override public function set data(value:Object):void
-		{
-			super.data = value;
-			
-			image.source = value.image;
-		}
-		
-		override public function adjustSize():void
-		{
-			var cy:Number = this.height/2;
-			
-			image.x = 4;
-			image.y = cy - 16;
-			image.width = 32;
-			image.height = 32;
-			
-			updateRenderer();
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DesktopMap/src/DesktopMap.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DesktopMap/src/DesktopMap.mxml b/examples/flexjs/DesktopMap/src/DesktopMap.mxml
deleted file mode 100644
index 4f938b6..0000000
--- a/examples/flexjs/DesktopMap/src/DesktopMap.mxml
+++ /dev/null
@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!---
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-				   xmlns:local="*"
-				   xmlns:models="models.*"
-				   xmlns:js="library://ns.apache.org/flexjs/basic" 
-				   >
-	
-	<!-- This application demonstrates how to use the Google MAP API
-	     on both the AIR and JavaScript/browser platform. After cross-
-	     compiling this application for JavaScript, edit the index.html
-	     file and include your Google developer API token.
-	-->
-	
-	<js:valuesImpl>
-		<js:SimpleCSSValuesImpl />
-	</js:valuesImpl>
-	<js:initialView>
-		<local:MyInitialView />
-	</js:initialView>
-	<js:model>
-		<models:MyModel />
-	</js:model>
-	<js:beads>
-		<js:MixinManager />
-	</js:beads>
-	
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DesktopMap/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DesktopMap/src/MyInitialView.mxml b/examples/flexjs/DesktopMap/src/MyInitialView.mxml
deleted file mode 100644
index 7a1d46d..0000000
--- a/examples/flexjs/DesktopMap/src/MyInitialView.mxml
+++ /dev/null
@@ -1,147 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:js="library://ns.apache.org/flexjs/basic"
-                xmlns:google="library://ns.apache.org/flexjs/google"
-				xmlns:local="*"
-				initComplete="initControls()">
-    <fx:Script>
-        <![CDATA[			
-			import models.MyModel;
-			import org.apache.flex.events.Event;
-									
-
-			private function initControls() : void
-			{
-				
-			}
-			
-			/**
-			 * Take the values from the input field and have the map
-			 * display that coordinate.
-			 */
-			private function mapIt() : void
-			{
-				var lat:Number = Number(latInput.text);
-				var lng:Number = Number(longInput.text);
-				var zoom:Number = Number(zoomInput.text);
-				
-				map.loadMap(lat, lng, zoom);
-			}
-			
-			private var selectedCity:String;
-			
-			/**
-			 * Triggered by a change in the drop list with a new city selected. This
-			 * will also update the input fields.
-			 */
-			private function changeCity(event:org.apache.flex.events.Event) : void
-			{
-				var index:int = list.selectedIndex;
-				
-				var latlng:Object = MyModel(applicationModel).coordinates[index];
-				map.loadMap(latlng.lat, latlng.lng, Number(zoomInput.text));
-				
-				latInput.text = String(latlng.lat);
-				longInput.text = String(latlng.lng);
-			}
-			
-			private function codeAddress() : void
-			{
-				map.markAddress(mapLocation.text);
-				map.setZoom(12);
-			}
-			
-			private function searchOnMap() : void
-			{
-				map.nearbySearch(search.text);
-				map.setZoom(12);
-			}
-			
-			private function clearSearchResults() : void
-			{
-				map.clearSearchResults();
-			}
-			
-			private function orientMap() : void
-			{
-				map.centerOnAddress(mapLocation.text);
-				map.setZoom(12);
-			}
-			
-		]]>
-    </fx:Script>
-	
-	<fx:Style>
-		@namespace basic "library://ns.apache.org/flexjs/basic";
-	
-	</fx:Style>
-	
-	<js:beads>
-		<js:ViewDataBinding />
-	</js:beads>
-	
-	
-	<js:Container x="5" y="5" className="topContainer" >
-		<js:beads>
-			<js:VerticalLayout />
-		</js:beads>
-		
-		<js:Container>
-			<js:beads>
-				<js:HorizontalLayout />
-			</js:beads>
-			<js:Label text="Location:" />
-			<js:TextInput id="mapLocation" />
-			<js:TextButton text="Go" click="orientMap()" />
-		</js:Container>
-		
-		<google:Map id="map" width="450" height="300" token="AIzaSyDkQgg2iojLCYeuW6hK7DkuAHD-SwJJhdE" />
-		
-		<js:Container>
-			<js:beads>
-				<js:HorizontalLayout />
-			</js:beads>
-			<js:Label text="Search on Map:" />
-			<js:TextInput id="search" />
-			<js:TextButton text="Find" click="searchOnMap()" />
-			<js:TextButton text="Clear" click="clearSearchResults()" />
-		</js:Container>
-		
-		<js:Label text="History:" />
-		
-		<!--<js:List id="historyList" />-->
-		<js:DropDownList id="list" width="100" height="17"
-							change="changeCity(event)"
-							dataProvider="{MyModel(applicationModel).cities}" />
-		
-		<js:Label text="Lat:" />
-		<js:TextInput id="latInput" text="-34.397" />
-		
-		<js:Label text="Long:" />
-		<js:TextInput id="longInput" text="150.644" />
-		
-		<js:Label text="Zoom:" />
-		<js:TextInput id="zoomInput" text="8" />
-		
-		<js:TextButton text="MapIt" click="mapIt()" />
-	</js:Container>
-
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DesktopMap/src/main/flex/DesktopMap.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DesktopMap/src/main/flex/DesktopMap.mxml b/examples/flexjs/DesktopMap/src/main/flex/DesktopMap.mxml
new file mode 100644
index 0000000..4f938b6
--- /dev/null
+++ b/examples/flexjs/DesktopMap/src/main/flex/DesktopMap.mxml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				   xmlns:local="*"
+				   xmlns:models="models.*"
+				   xmlns:js="library://ns.apache.org/flexjs/basic" 
+				   >
+	
+	<!-- This application demonstrates how to use the Google MAP API
+	     on both the AIR and JavaScript/browser platform. After cross-
+	     compiling this application for JavaScript, edit the index.html
+	     file and include your Google developer API token.
+	-->
+	
+	<js:valuesImpl>
+		<js:SimpleCSSValuesImpl />
+	</js:valuesImpl>
+	<js:initialView>
+		<local:MyInitialView />
+	</js:initialView>
+	<js:model>
+		<models:MyModel />
+	</js:model>
+	<js:beads>
+		<js:MixinManager />
+	</js:beads>
+	
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DesktopMap/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DesktopMap/src/main/flex/MyInitialView.mxml b/examples/flexjs/DesktopMap/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..7a1d46d
--- /dev/null
+++ b/examples/flexjs/DesktopMap/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,147 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:js="library://ns.apache.org/flexjs/basic"
+                xmlns:google="library://ns.apache.org/flexjs/google"
+				xmlns:local="*"
+				initComplete="initControls()">
+    <fx:Script>
+        <![CDATA[			
+			import models.MyModel;
+			import org.apache.flex.events.Event;
+									
+
+			private function initControls() : void
+			{
+				
+			}
+			
+			/**
+			 * Take the values from the input field and have the map
+			 * display that coordinate.
+			 */
+			private function mapIt() : void
+			{
+				var lat:Number = Number(latInput.text);
+				var lng:Number = Number(longInput.text);
+				var zoom:Number = Number(zoomInput.text);
+				
+				map.loadMap(lat, lng, zoom);
+			}
+			
+			private var selectedCity:String;
+			
+			/**
+			 * Triggered by a change in the drop list with a new city selected. This
+			 * will also update the input fields.
+			 */
+			private function changeCity(event:org.apache.flex.events.Event) : void
+			{
+				var index:int = list.selectedIndex;
+				
+				var latlng:Object = MyModel(applicationModel).coordinates[index];
+				map.loadMap(latlng.lat, latlng.lng, Number(zoomInput.text));
+				
+				latInput.text = String(latlng.lat);
+				longInput.text = String(latlng.lng);
+			}
+			
+			private function codeAddress() : void
+			{
+				map.markAddress(mapLocation.text);
+				map.setZoom(12);
+			}
+			
+			private function searchOnMap() : void
+			{
+				map.nearbySearch(search.text);
+				map.setZoom(12);
+			}
+			
+			private function clearSearchResults() : void
+			{
+				map.clearSearchResults();
+			}
+			
+			private function orientMap() : void
+			{
+				map.centerOnAddress(mapLocation.text);
+				map.setZoom(12);
+			}
+			
+		]]>
+    </fx:Script>
+	
+	<fx:Style>
+		@namespace basic "library://ns.apache.org/flexjs/basic";
+	
+	</fx:Style>
+	
+	<js:beads>
+		<js:ViewDataBinding />
+	</js:beads>
+	
+	
+	<js:Container x="5" y="5" className="topContainer" >
+		<js:beads>
+			<js:VerticalLayout />
+		</js:beads>
+		
+		<js:Container>
+			<js:beads>
+				<js:HorizontalLayout />
+			</js:beads>
+			<js:Label text="Location:" />
+			<js:TextInput id="mapLocation" />
+			<js:TextButton text="Go" click="orientMap()" />
+		</js:Container>
+		
+		<google:Map id="map" width="450" height="300" token="AIzaSyDkQgg2iojLCYeuW6hK7DkuAHD-SwJJhdE" />
+		
+		<js:Container>
+			<js:beads>
+				<js:HorizontalLayout />
+			</js:beads>
+			<js:Label text="Search on Map:" />
+			<js:TextInput id="search" />
+			<js:TextButton text="Find" click="searchOnMap()" />
+			<js:TextButton text="Clear" click="clearSearchResults()" />
+		</js:Container>
+		
+		<js:Label text="History:" />
+		
+		<!--<js:List id="historyList" />-->
+		<js:DropDownList id="list" width="100" height="17"
+							change="changeCity(event)"
+							dataProvider="{MyModel(applicationModel).cities}" />
+		
+		<js:Label text="Lat:" />
+		<js:TextInput id="latInput" text="-34.397" />
+		
+		<js:Label text="Long:" />
+		<js:TextInput id="longInput" text="150.644" />
+		
+		<js:Label text="Zoom:" />
+		<js:TextInput id="zoomInput" text="8" />
+		
+		<js:TextButton text="MapIt" click="mapIt()" />
+	</js:Container>
+
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DesktopMap/src/main/flex/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DesktopMap/src/main/flex/models/MyModel.as b/examples/flexjs/DesktopMap/src/main/flex/models/MyModel.as
new file mode 100644
index 0000000..e0dab68
--- /dev/null
+++ b/examples/flexjs/DesktopMap/src/main/flex/models/MyModel.as
@@ -0,0 +1,58 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.core.IBeadModel;
+	import org.apache.flex.core.IStrand;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	
+	public class MyModel extends EventDispatcher implements IBeadModel
+	{
+		public function MyModel()
+		{
+			super();
+		}
+		
+		private var _strand:IStrand;
+		
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+		}
+		
+		private var _cities:Array = ["Sydney", "NYC", "Mexico City", "London", "Rio de Janeiro"];
+		
+		[Bindable]
+		public function get cities():Array
+		{
+			return _cities;
+		}
+		
+		private var _coordinates:Array = [{lat:-33.86, lng:151.211},
+			{lat:40.712, lng:-74.0059},
+			{lat:19.26, lng:-99.03},
+			{lat:51.4, lng:-0.1},
+			{lat:-22.95, lng:-43.12}];
+		public function get coordinates():Array
+		{
+			return _coordinates;
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DesktopMap/src/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DesktopMap/src/models/MyModel.as b/examples/flexjs/DesktopMap/src/models/MyModel.as
deleted file mode 100644
index e0dab68..0000000
--- a/examples/flexjs/DesktopMap/src/models/MyModel.as
+++ /dev/null
@@ -1,58 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.core.IBeadModel;
-	import org.apache.flex.core.IStrand;
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	
-	public class MyModel extends EventDispatcher implements IBeadModel
-	{
-		public function MyModel()
-		{
-			super();
-		}
-		
-		private var _strand:IStrand;
-		
-		public function set strand(value:IStrand):void
-		{
-			_strand = value;
-		}
-		
-		private var _cities:Array = ["Sydney", "NYC", "Mexico City", "London", "Rio de Janeiro"];
-		
-		[Bindable]
-		public function get cities():Array
-		{
-			return _cities;
-		}
-		
-		private var _coordinates:Array = [{lat:-33.86, lng:151.211},
-			{lat:40.712, lng:-74.0059},
-			{lat:19.26, lng:-99.03},
-			{lat:51.4, lng:-0.1},
-			{lat:-22.95, lng:-43.12}];
-		public function get coordinates():Array
-		{
-			return _coordinates;
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/FlexJSStore.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/FlexJSStore.mxml b/examples/flexjs/FlexJSStore/src/FlexJSStore.mxml
deleted file mode 100755
index 8f4ade3..0000000
--- a/examples/flexjs/FlexJSStore/src/FlexJSStore.mxml
+++ /dev/null
@@ -1,268 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-                xmlns:js="library://ns.apache.org/flexjs/basic" 
-                xmlns="*"
-                initialize="startService()"
-			    pageTitle="FlexStore">
-	
-	<fx:Script>
-		<![CDATA[	
-            import org.apache.flex.core.ValuesManager;
-            
-            /*
-			private var currentTheme:String = "beige";
-			
-			private function toggleTheme():void
-			{
-				if (currentTheme == "beige")
-				{
-					currentTheme = "blue";
-				}
-				else
-				{
-					currentTheme = "beige";
-				}
-				
-				loadStyle();
-			}
-			*/
-            
-			private function startService():void
-			{
-				productService.send();
-			}
-			
-			private function loadStyle():void
-			{
-                /* load css not implemented yet
-				var eventDispatcher:IEventDispatcher =
-					styleManager.loadStyleDeclarations(currentTheme + ".swf");
-				eventDispatcher.addEventListener(StyleEvent.COMPLETE, completeHandler);
-                */
-			}
-			
-			private function completeHandler(event:Event):void
-			{
-				image.source = ValuesManager.valuesImpl.getValue(acb, "storeLogo");
-                /*
-				super.initialized = true;
-                */
-                callLater.callLater(prebake);
-			}
-			
-            /*
-			override public function set initialized(value:Boolean):void
-			{
-				// Hold off until the Runtime CSS SWF is done loading.
-			}
-            */
-            
-            private var stateChain:Array;
-            
-            private function headHome():void
-            {
-                homeButton.selected = true;
-                if (initialView.currentState == "ProductsState")
-                {
-                    productsButton.selected = false;
-                    stateChain = ["ProductsWipeUp", "HomeWipeDown", "HomeState"];
-                    initialView.currentState = "ProductsWipeUp";
-                }
-                else if (initialView.currentState == "SupportState")
-                {
-                    supportButton.selected = false;
-                    stateChain = ["SupportWipeUp", "HomeWipeDown", "HomeState"];
-                    initialView.currentState = "SupportWipeUp";                    
-                }
-            }
-            
-            private function headToProducts():void
-            {
-                productsButton.selected = true;
-                if (initialView.currentState == "SupportState")
-                {
-                    supportButton.selected = false;
-                    stateChain = ["SupportWipeUp", "ProductsWipeDown", "ProductsState"];
-                    initialView.currentState = "SupportWipeUp";                    
-                }
-                if (initialView.currentState == "HomeState")
-                {
-                    homeButton.selected = false;
-                    stateChain = ["HomeWipeUp", "ProductsWipeDown", "ProductsState"];
-                    initialView.currentState = "HomeWipeUp";                    
-                }
-            }
-            
-            private function headToSupport():void
-            {
-                supportButton.selected = true;
-                if (initialView.currentState == "ProductsState")
-                {
-                    productsButton.selected = false;
-                    stateChain = ["ProductsWipeUp", "SupportWipeDown", "SupportState"];
-                    initialView.currentState = "ProductsWipeUp";                    
-                }
-                if (initialView.currentState == "HomeState")
-                {
-                    homeButton.selected = false;
-                    stateChain = ["HomeWipeUp", "SupportWipeDown", "SupportState"];
-                    initialView.currentState = "HomeWipeUp";                    
-                }
-            }
-            
-            private function prebake():void
-            {
-                callLater.callLater(prebake2);
-            }
-            
-            private function prebake2():void
-            {
-                trace("prebake2");
-                stateChain = ["ProductsPreBake", "HomeState"];
-                initialView.currentState = "ProductsPreBake";
-            }
-                
-            private function chainStatesIfNeeded():void
-            {
-                if (stateChain != null)
-                {
-                    if (initialView.currentState == stateChain[0])
-                    {
-                        callLater.callLater(nextState);
-                    }
-                }
-            }
-            
-            private function nextState():void
-            {
-                stateChain.shift();
-                if (stateChain.length)
-                    initialView.currentState = stateChain[0];
-                else
-                    stateChain = null;
-            }
-		]]>
-	</fx:Script>
-	
-	<fx:Style source="main.css"/>
-    <fx:Style source="beige.css"/>
-	
-    <fx:Declarations>
-        <js:HTTPService id="productService" url="data/catalog.json">
-            <js:LazyCollection id="catalog" complete="if (pView) pView.catalog = catalog">
-                <js:inputParser>
-                    <js:JSONInputParser />
-                </js:inputParser>
-                <js:itemConverter>
-                    <ProductJSONItemConverter />
-                </js:itemConverter> 
-            </js:LazyCollection>
-        </js:HTTPService>        
-    </fx:Declarations>
-    <js:valuesImpl>
-        <js:SimpleCSSValuesImpl />
-    </js:valuesImpl>
-	<js:beads>
-        <js:ViewSourceContextMenuOption />
-        <js:CallLaterBead id="callLater" />
-        <js:ApplicationDataBinding />
-    </js:beads>
-    <js:initialView>
-        <js:View	width="990" height="585"
-                        initComplete="completeHandler(null)"
-                        stateChangeComplete="chainStatesIfNeeded()">
-            <js:states>
-                <js:State name="HomeState" stateGroups="['Home']" />
-                <js:State name="HomeWipeUp" stateGroups="['Home']" />
-                <js:State name="HomeWipeDown" stateGroups="['Home']" />
-                <js:State name="ProductsPreBake" stateGroups="['Home', 'Products']" />
-                <js:State name="ProductsState" stateGroups="['Products']" />
-                <js:State name="ProductsWipeUp" stateGroups="['Products']" />
-                <js:State name="ProductsWipeDown" stateGroups="['Products']" />
-                <js:State name="SupportState" stateGroups="['Support']" />
-                <js:State name="SupportWipeUp" stateGroups="['Support']" />
-                <js:State name="SupportWipeDown" stateGroups="['Support']" />
-            </js:states>
-            
-            <js:transitions>
-                <js:Transition fromState="HomeState" toState="HomeWipeUp">
-                    <js:Wipe direction="up" target="homeView" />
-                </js:Transition>
-                <js:Transition fromState="HomeWipeDown" toState="HomeState">
-                    <js:Wipe direction="down" target="homeView" />
-                </js:Transition>
-                <js:Transition fromState="ProductsState" toState="ProductsWipeUp">
-                    <js:Wipe direction="up" target="pView" />
-                </js:Transition>
-                <js:Transition fromState="ProductsWipeDown" toState="ProductsState">
-                    <js:Wipe direction="down" target="pView" />
-                </js:Transition>
-                <js:Transition fromState="SupportState" toState="SupportWipeUp">
-                    <js:Wipe direction="up" target="supportView" />
-                </js:Transition>
-                <js:Transition fromState="SupportWipeDown" toState="SupportState">
-                    <js:Wipe direction="down" target="supportView" />
-                </js:Transition>
-            </js:transitions>
-            <js:beads>
-                <js:VerticalLayout />
-            </js:beads>
-            <js:ControlBar id="acb" width="100%" className="storeControlBar" >
-                <js:beads>
-                    <js:HorizontalLayout />
-                </js:beads>
-                <js:Image id="image" />
-                         <!-- click="toggleTheme()" -->
-                         <!-- toolTip="Change Theme"/ -->
-                <js:ToggleTextButton id="homeButton"
-                                text="Home"
-                                height="100%"
-                                selected="true"
-                                className="storeButtonBar"
-                                click="headHome()" />
-                <js:ToggleTextButton id="productsButton"
-                                text="Products"
-                                height="100%"
-                                className="storeButtonBar"
-                                click="headToProducts()"/>
-                <js:ToggleTextButton id="supportButton"
-                                text="Support"
-                                height="100%"
-                                className="storeButtonBar"
-                                click="headToSupport()"/>            
-            </js:ControlBar>
-            <js:Container width="990" id="viewholder">
-                <js:style>
-                    <js:SimpleCSSStyles paddingLeft="0" paddingRight="0"/>
-                </js:style>
-                        
-                <HomeView id="homeView" width="100%" height="550" includeIn="Home"
-                          />
-                <ProductsView id="pView" includeIn="Products" visible.ProductsPreBake="false"
-                              width="100%" height="550" initComplete="if (catalog.length) pView.catalog = catalog"
-                              />
-                <SupportView id="supportView" includeIn="Support"
-                             width="100%" height="550"
-                             />
-            </js:Container>
-        </js:View>        
-    </js:initialView>    
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/HomeView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/HomeView.mxml b/examples/flexjs/FlexJSStore/src/HomeView.mxml
deleted file mode 100755
index 451c5c1..0000000
--- a/examples/flexjs/FlexJSStore/src/HomeView.mxml
+++ /dev/null
@@ -1,194 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<!--
-This component is primarily static and is only meant to show what other
-pages of the store could look like.
-
-Note that this page was put together in the Design view so you'll see more
-hard coded locations and sizes.
-
-Also note when working with a Canvas that using the constraint styles 
-(e.g., left, top, right, bottom) can provide better layout predictability than 
-using x and y, especially when percentage widths and heights are used.
-
-Width and height are hard-coded in the root tag to help the Design view.
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-         xmlns:js="library://ns.apache.org/flexjs/basic" 
-           xmlns="*" width="990" height="550"
-           initComplete="updateMapImage()">
-	<fx:Script>
-		<![CDATA[
-            import org.apache.flex.core.ValuesManager;
-			import org.apache.flex.html.SimpleAlert;
-
-			public function updateMapImage():void
-			{
-				mapImage.source = ValuesManager.valuesImpl.getValue(mapCanvas, 'dottedMap');
-			}
-		]]>
-	</fx:Script>
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-	<js:HContainer width="100%" height="100%" y="0" x="0" className="colorPanel">
-		<js:VContainer width="230" height="100%">
-			<js:Container width="100%" height="100%">
-			
-				<js:Container height="60" className="homeSection">
-                    <js:style>
-                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="10" right="10"/>
-                    </js:style>
-					<js:Label style="left:10;top:10" text="Search Developers" height="22" className="sectionHeader" />
-					<js:TextButton style="left:168;top:30" text="Go" width="27" height="20" className="glass" click="SimpleAlert.show('This feature is not implemented in this sample', 'Go')"/>
-					<js:TextInput style="left:10;top:30" height="20" width="150"/>
-				</js:Container>
-				
-				<js:Container height="280" className="homeSection">
-                    <js:style>
-                        <js:SimpleCSSStyles backgroundColor="#ffffff" left="10" top="78" right="10" />                        
-                    </js:style>
-					<js:VContainer width="100%" height="100%">
-                        <js:style>
-                            <js:SimpleCSSStyles left="10" top="10" />                        
-                        </js:style>
-						<js:Label text="Flex Experts That Can Help You" className="sectionHeader"/>
-						<js:HRule height="5" width="187" style="marginLeft:0"/>
-						<js:Label text="General" className="homeProgramHeader"/>
-						<js:Label text="BlazeDS Experts" style="fontSize:9"/>
-						<js:Spacer height="8" width="100%"/>
-						<js:Label text="Server-side" className="homeProgramHeader"/>
-						<js:Label text="Java, PHP Developers" style="fontSize:9"/>
-						<js:Spacer height="8" width="100%"/>
-						<js:Label text="Mobile" className="homeProgramHeader"/>
-						<js:Label text="Android, IOS and more" style="fontSize:9"/>
-						<js:Spacer height="8" width="100%"/>
-						<js:Label text="Students" className="homeProgramHeader"/>
-						<js:Label text="Free Assistance" style="fontSize:9"/>
-						<js:Spacer height="8" width="100%"/>
-					</js:VContainer>
-				</js:Container>
-				
-				<js:Container height="174" className="homeSection">
-                    <js:style>
-                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="366" right="10" />
-                    </js:style>
-					<js:VContainer width="100%" height="100%">
-                        <js:style>
-                            <js:SimpleCSSStyles left="10" top="10" />
-                        </js:style>
-						<js:Label text="Manage My Account" className="sectionHeader"/>
-						
-						<js:Label text="Phone Number"/>
-						
-						<js:HContainer width="100%" height="25" >
-                            <js:style>
-                                <js:SimpleCSSStyles verticalAlign="middle" />
-                            </js:style>
-							<js:TextInput height="20" width="40"/>
-							<js:HRule width="8" height="2"/>
-							<js:TextInput height="20" width="40"/>
-							<js:HRule width="8" height="2"/>
-							<js:TextInput height="20" width="40"/>
-						</js:HContainer>
-						
-						<js:Label text="Password"/>
-						<js:TextInput height="20"/>
-						<js:Spacer height="8" width="100%"/>
-						
-						<js:CheckBox text="Remember my phone number" selected="true"/>
-						<js:Spacer height="8" width="100%"/>
-						
-						<js:TextButton text="Login" className="glass" height="20" width="55" click="SimpleAlert.show('This feature is not implemented in this sample', 'Login')"/>
-						
-					</js:VContainer>
-				</js:Container>
-				
-			</js:Container>
-			
-		</js:VContainer>
-		
-		<js:VContainer width="750" height="100%">
-			<js:Container width="100%" height="100%">
-			
-			    <!-- can't use binding to set the mapImage source because the style isn't available early enough -->
-				<js:Container id="mapCanvas" height="35%" className="homeMap">
-                    <js:style>
-                        <js:SimpleCSSStyles left="0" right="10" top="10" />
-                    </js:style>
-					<js:Image id="mapImage" width="487" height="100%" alpha="1.0" style="left:10;top:10"/>
-					<js:Label y="110" text="US Developers . Flex . FlexJS" width="95%" height="40" style="margin:auto;fontWeight:'bold';fontSize:22;color:#ffffff;fontFamily:'Arial';textAlign:'center'"/>
-					<js:Label text="Learn More &gt;&gt;" width="95" style="fontSize:12;fontFamily:'Arial';bottom:10;right:10"/>
-					<js:Label text="$60/hr" style="color:#ffffff;fontWeight:'bold';fontFamily:'Arial';fontSize:20;right:10:top:10"/>
-					<js:Label text="Rates as low as" x="551" y="16" style="fontSize:12"/>
-				</js:Container>
-				
-				<js:Container height="330" >
-                    <js:style>
-                        <js:SimpleCSSStyles backgroundColor="#ffffff" borderStyle="solid" bottom="10" right="10" left="0" /> <!-- cornerRadius="4" -->
-                    </js:style>
-					
-					<js:Label style="left:10;top:10" text="Featured Developers" width="173" height="25" className="sectionHeader"/>
-					
-					<js:HContainer style="left:10;top:43" width="100%" height="100%">
-						<js:VContainer width="33%" height="100%">
-							<js:Container width="100%">
-								<js:Image id="image1" source="assets/akotter.jpg" style="margin:auto;verticalCenter:0"/>
-							</js:Container>
-							
-							<js:Container width="100%">
-								<js:Label text="Annette Kotter" id="feat_prod_1" style="margin:auto;fontWeight:'bold';fontSize:12"/>
-							</js:Container>
-							
-						</js:VContainer>
-						
-						<js:VContainer width="33%" height="100%">							
-							<js:Container width="100%">
-								<js:Image id="image2" style="margin:auto;verticalCenter:0" source="assets/bcrater.jpg"/>
-							</js:Container>
-							
-							<js:Container width="100%">
-								<js:Label text="Ben Crater" id="feat_prod_2" style="margin:auto;fontWeight:'bold';fontSize:12"/>
-							</js:Container>
-							
-						</js:VContainer>
-						
-						<js:VContainer width="33%" height="100%">
-							<js:Container width="100%">
-								<js:Image id="image3" style="margin:auto;verticalCenter:0" source="assets/jproctor.jpg"/>
-							</js:Container>
-							
-							<js:Container width="100%">
-								<js:Label text="Jane Proctor" id="feat_prod_3" style="margin:auto;fontWeight:'bold';fontSize:12"/>
-							</js:Container>
-							
-						</js:VContainer>
-						
-					</js:HContainer>
-					
-				</js:Container>
-				
-			</js:Container>
-		
-		</js:VContainer>
-		
-	</js:HContainer>
-	
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/ProductJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/ProductJSONItemConverter.as b/examples/flexjs/FlexJSStore/src/ProductJSONItemConverter.as
deleted file mode 100755
index cb27bde..0000000
--- a/examples/flexjs/FlexJSStore/src/ProductJSONItemConverter.as
+++ /dev/null
@@ -1,41 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package
-{
-    import org.apache.flex.collections.converters.JSONItemConverter;
-    
-    import samples.flexstore.Product;
-    
-    public class ProductJSONItemConverter extends JSONItemConverter
-    {
-        public function ProductJSONItemConverter()
-        {
-            super();
-        }
-        
-        override public function convertItem(data:String):Object
-        {
-            var obj:Object = super.convertItem(data);
-            var product:Product = new Product();
-            for (var p:String in obj)
-                product[p] = obj[p];
-			return product;
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/ProductsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/ProductsView.mxml b/examples/flexjs/FlexJSStore/src/ProductsView.mxml
deleted file mode 100755
index 70fccd1..0000000
--- a/examples/flexjs/FlexJSStore/src/ProductsView.mxml
+++ /dev/null
@@ -1,121 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<!-- width and height hard-coded in the root tag to better support the 
-     Design view in FlexBuilder since we know the width and height from the 
-     settings in flexstore.mxml -->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-         xmlns:js="library://ns.apache.org/flexjs/basic" 
-    xmlns:productsView="productsView.*"
-    width="990" height="550"
-    currentState="showFilter"
-    >
-
-    <fx:Script>
-        <![CDATA[
-        import org.apache.flex.events.Event;
-        import org.apache.flex.collections.LazyCollection;
-        import samples.flexstore.Product;
-                
-        private var _catalog:LazyCollection;
-        
-        [Bindable("catalogChange")]
-        public function get catalog():LazyCollection
-        {
-            return _catalog;
-        }
-        
-        public function set catalog(c:LazyCollection):void
-        {
-            _catalog = c;
-            if (filterPanel != null)
-            {
-                filterPanel.filter.count = c.length;
-            }
-            dispatchEvent(new org.apache.flex.events.Event("catalogChange"));
-        }
-        
-        public function addToCompare(product:Product):void
-        {
-            //setting the state before adding the product avoids jumpiness in the transition, not sure why
-            currentState = 'showFilter';
-            filterPanel.productList.addProduct(product);
-        }
-        
-        public function addToCart(product:Product):void
-        {
-            //setting the state before adding the product avoids jumpiness in the transition, not sure why
-            currentState = 'showCart'; 
-            cartPanel.productList.addProduct(product);
-        }
-        
-        
-        ]]>
-    </fx:Script>
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-    <js:Container 
-        className="colorPanel"
-        height="100%" width="100%" 
-        >
-        <js:beads>
-            <js:OneFlexibleChildHorizontalLayout flexibleChild="spacer" />
-        </js:beads>
-        <productsView:Grip id="filterGrip" gripIcon="assets/icon_magnifier.png" 
-            gripTip="Show filter panel" click="currentState = 'showFilter'"/>
-    
-        <productsView:ProductFilterPanel x="{filterGrip.width}" y="0" id="filterPanel" width="265" height="100%"
-            filter="catalogPanel.filter(event.filter, event.live)"
-            compare="catalogPanel.compare(filterPanel.productList.getProducts())"
-            initComplete="if (catalog) filterPanel.filter.count = catalog.length"/>
-    
-        <js:Spacer id="spacer" />
-        
-        <productsView:ProductCart id="cartPanel" width="265" height="100%" />
-
-        <productsView:Grip id="cartGrip" gripIcon="assets/icon_cart_empty.png"
-            gripTip="Show cart" click="currentState = 'showCart'" />
-    
-    </js:Container>
-        
-    <productsView:ProductCatalogPanel id="catalogPanel" y="4" width="685" height="540"
-                                      x.showFilter="288" x.showCart="0"
-        catalog="{catalog}"
-        compare="addToCompare(event.product)"
-        purchase="addToCart(event.product)"
-        cartCount="{cartPanel.numProducts}">
-    </productsView:ProductCatalogPanel>
-    
-    <js:states>
-       <js:State name="showFilter" />
-       <js:State name="showCart" />
-    </js:states>
-    
-    <!-- 
-      make sure to use transitions here instead of applying a Move effect
-      to the Panel itself which will result in odd behavior
-    -->
-    <js:transitions>
-       <js:Transition fromState="*" toState="*">
-          <js:Move target="catalogPanel" />
-       </js:Transition>
-    </js:transitions>
-        
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/SupportView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/SupportView.mxml b/examples/flexjs/FlexJSStore/src/SupportView.mxml
deleted file mode 100755
index ab3eea7..0000000
--- a/examples/flexjs/FlexJSStore/src/SupportView.mxml
+++ /dev/null
@@ -1,149 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<!--
-This component is primarily static and is only meant to show what other
-pages of the store could look like.
-
-Note that this page was put together in the Design view so you'll see more
-hard coded locations and sizes.
-
-We did not have sizing issues here as much so you'll see more hardcoded 
-"y" values rather than "top."
-
-The width and height are hard-coded in the root tag to help the Design view.
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-                 xmlns:js="library://ns.apache.org/flexjs/basic" 
-                 xmlns="*" alpha="1.0"
-    width="990" height="550">
-	
-	<fx:Script>
-	    <![CDATA[
-	       import org.apache.flex.html.SimpleAlert;
-	    ]]>
-	</fx:Script>
-	
-    <fx:Declarations>
-        <fx:Array id="locations">
-            <fx:Object image="assets/support_mapmarker_a.png" name="601 Townsend St" /> 
-            <fx:Object image="assets/support_mapmarker_b.png" name="Location B" />
-            <fx:Object image="assets/support_mapmarker_c.png" name="Location C" />	   	   
-        </fx:Array>   
-        
-    </fx:Declarations>
-	
-	<js:HContainer x="0" y="0" width="100%" height="100%" className="colorPanel">
-	
-		<js:VContainer width="32%" height="100%">
-			<js:Container width="100%" height="420">
-			
-				<js:Label y="10" text="Check Location" className="sectionHeader" x="20"/>
-				
-				<js:Container height="150" y="64" style="margin:auto">
-                    <js:beads>
-                        <js:VerticalColumnLayout numColumns="2" />
-                    </js:beads>
-					<js:Label text="Address:"/>
-					<js:TextInput id="address"/>
-					
-					<js:Label text="City:" style="marginTop:20"/>
-					<js:TextInput id="city" style="marginTop:20"/>						
-					
-					<js:Label text="State:" style="marginTop:20"/>
-					<js:DropDownList id="state" style="marginTop:20">
-						<js:dataProvider>
-                            <fx:Array>
-                                <fx:String>California</fx:String>
-                                <fx:String>Nevada</fx:String>
-                                <fx:String>Oregon</fx:String>
-                                <fx:String>Washington</fx:String>
-                            </fx:Array>                                    
-            			</js:dataProvider>
-					</js:DropDownList>
-					
-					<js:Label text="ZIP Code:" style="marginTop:20"/>
-					<js:TextInput id="zip" style="marginTop:20"/>
-					
-				</js:Container>
-				
-				<js:Label y="38" text="Option1: Enter Address" style="margin:auto" className="instructions"/>
-				
-				<js:TextButton y="297" text="Locate" click="SimpleAlert.show('This feature is not implemented in this sample', 'Locate')" 
-                                  style="margin:auto"/>
-				
-				<js:HContainer y="327" height="20" >
-                    <js:style>
-                        <js:SimpleCSSStyles margin="auto" verticalAlign="middle" />
-                    </js:style>
-					<js:HRule width="60" />
-					<js:Label text="OR"/>
-                    <js:HRule width="60" />
-				</js:HContainer>
-				
-				<js:Label y="355" text="Option 2: Drag this marker into the map" style="margin:auto" className="instructions"/>
-				
-				<js:Image y="380" style="margin:auto" source="assets/support_mapmarker_plus.png"/>
-				
-				<js:HRule y="415" style="margin:auto" width="200" alpha="0.6"/>
-				
-			</js:Container>
-			
-			<js:Container width="100%" height="130">
-				<js:VContainer width="80%" height="90%" >
-                    <js:style>
-                        <js:SimpleCSSStyles margin="auto" top="0"/>
-                    </js:style>
-					<js:Label text="Location" className="instructions"/>
-					<js:List width="100%" dataProvider="{locations}">
-                        <js:itemRenderer>
-                            <fx:Component>
-                                <js:DataItemRenderer className="listItem" width="100%">
-                                    <fx:Script>
-                                        <![CDATA[
-                                            import samples.flexstore.Product;
-                                            [Bindable("__NoChangeEvent__")]
-                                            private function get product():Product
-                                            {
-                                                return data as Product;
-                                            }
-                                        ]]>
-                                    </fx:Script>
-                                    <js:Image width="21" height="25" source="{product.image}" />
-                                    <js:Label width="100%" text="{product.name}" />
-                                </js:DataItemRenderer>                                                            
-                            </fx:Component>
-                        </js:itemRenderer>
-					</js:List>
-				</js:VContainer>
-			</js:Container>
-			
-		</js:VContainer>
-		
-		<js:Container width="68%" height="100%">
-			<js:Image source="assets/427px-Bayarea_map.png">
-                <js:style>
-                    <js:SimpleCSSStyles left="12" top="12"/>
-                </js:style>
-            </js:Image>
-		</js:Container>
-		
-	</js:HContainer>
-	
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/427px-Bayarea_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/427px-Bayarea_map.png b/examples/flexjs/FlexJSStore/src/assets/427px-Bayarea_map.png
deleted file mode 100644
index a183699..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/427px-Bayarea_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/akotter.jpg b/examples/flexjs/FlexJSStore/src/assets/akotter.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/akotter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/bcrater.jpg b/examples/flexjs/FlexJSStore/src/assets/bcrater.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/bcrater.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/beige_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/beige_background.jpg b/examples/flexjs/FlexJSStore/src/assets/beige_background.jpg
deleted file mode 100755
index 8f034ba..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/beige_background.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/beige_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/beige_dotted_map.png b/examples/flexjs/FlexJSStore/src/assets/beige_dotted_map.png
deleted file mode 100755
index e88d9ef..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/beige_dotted_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/blue_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/blue_background.jpg b/examples/flexjs/FlexJSStore/src/assets/blue_background.jpg
deleted file mode 100755
index 361ce0e..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/blue_background.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/blue_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/blue_dotted_map.png b/examples/flexjs/FlexJSStore/src/assets/blue_dotted_map.png
deleted file mode 100755
index 5fa6714..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/blue_dotted_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/button_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/button_cart_empty.png b/examples/flexjs/FlexJSStore/src/assets/button_cart_empty.png
deleted file mode 100644
index 0e1a2b5..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/button_cart_empty.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/button_cart_full.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/button_cart_full.png b/examples/flexjs/FlexJSStore/src/assets/button_cart_full.png
deleted file mode 100644
index 9c9eea0..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/button_cart_full.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/button_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/button_compare.png b/examples/flexjs/FlexJSStore/src/assets/button_compare.png
deleted file mode 100644
index c2ac969..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/button_compare.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/button_details.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/button_details.png b/examples/flexjs/FlexJSStore/src/assets/button_details.png
deleted file mode 100644
index 3e6238c..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/button_details.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/button_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/button_tiles.png b/examples/flexjs/FlexJSStore/src/assets/button_tiles.png
deleted file mode 100644
index 4266a22..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/button_tiles.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/grip.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/grip.png b/examples/flexjs/FlexJSStore/src/assets/grip.png
deleted file mode 100755
index 64ee835..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/grip.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/icon_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/icon_cart_empty.png b/examples/flexjs/FlexJSStore/src/assets/icon_cart_empty.png
deleted file mode 100644
index 562064b..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/icon_cart_empty.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/icon_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/icon_compare.png b/examples/flexjs/FlexJSStore/src/assets/icon_compare.png
deleted file mode 100644
index efc3ea1..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/icon_compare.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/icon_magnifier.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/icon_magnifier.png b/examples/flexjs/FlexJSStore/src/assets/icon_magnifier.png
deleted file mode 100755
index 939f814..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/icon_magnifier.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/icon_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/icon_tiles.png b/examples/flexjs/FlexJSStore/src/assets/icon_tiles.png
deleted file mode 100644
index dbf75b6..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/icon_tiles.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/jproctor.jpg b/examples/flexjs/FlexJSStore/src/assets/jproctor.jpg
deleted file mode 100755
index 1111787..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/jproctor.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/logo_blue.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/logo_blue.png b/examples/flexjs/FlexJSStore/src/assets/logo_blue.png
deleted file mode 100755
index 85bad70..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/logo_blue.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/logo_orange.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/logo_orange.png b/examples/flexjs/FlexJSStore/src/assets/logo_orange.png
deleted file mode 100755
index 0ce7dc4..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/logo_orange.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/abrilliam.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/abrilliam.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/abrilliam.jpg
deleted file mode 100755
index 6954858..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/abrilliam.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/akotter.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/akotter.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/akotter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/bcrater.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/bcrater.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/bcrater.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/bleporte.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/bleporte.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/bleporte.jpg
deleted file mode 100755
index c4769e8..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/bleporte.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/bvanbrocklin.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/bvanbrocklin.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/bvanbrocklin.jpg
deleted file mode 100755
index 489fa2e..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/bvanbrocklin.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/ccarpenter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/ccarpenter.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/ccarpenter.jpg
deleted file mode 100755
index c1dc3d8..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/ccarpenter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/clampberto.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/clampberto.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/clampberto.jpg
deleted file mode 100755
index 9deacd2..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/clampberto.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/davenon.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/davenon.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/davenon.jpg
deleted file mode 100755
index 6a2a142..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/davenon.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/dmcgoyal.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/dmcgoyal.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/dmcgoyal.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/dmcgoyal.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/dwillhelm.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/dwillhelm.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/dwillhelm.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/dwillhelm.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/esunderland.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/esunderland.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/esunderland.jpg
deleted file mode 100755
index c4769e8..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/esunderland.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/jproctor.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/jproctor.jpg
deleted file mode 100755
index 1111787..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/jproctor.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/mfields.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/mfields.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/mfields.jpg
deleted file mode 100755
index 489fa2e..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/mfields.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/pdempsey.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/pdempsey.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/pdempsey.jpg
deleted file mode 100755
index 9deacd2..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/pdempsey.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/ptranep.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/ptranep.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/ptranep.jpg
deleted file mode 100755
index 4b9a03b..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/ptranep.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/rcrawley.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/rcrawley.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/rcrawley.jpg
deleted file mode 100755
index 9b60320..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/rcrawley.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/rdreifus.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/rdreifus.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/rdreifus.jpg
deleted file mode 100755
index 6a2a142..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/rdreifus.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/pic/twong.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/pic/twong.jpg b/examples/flexjs/FlexJSStore/src/assets/pic/twong.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/pic/twong.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_a.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_a.png b/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_a.png
deleted file mode 100755
index 20c21e1..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_a.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_b.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_b.png b/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_b.png
deleted file mode 100755
index 069ccd8..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_b.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_c.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_c.png b/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_c.png
deleted file mode 100755
index f6b587e..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_c.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_plus.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_plus.png b/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_plus.png
deleted file mode 100755
index 4192088..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/support_mapmarker_plus.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/assets/trashcan.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/assets/trashcan.png b/examples/flexjs/FlexJSStore/src/assets/trashcan.png
deleted file mode 100644
index 483a37c..0000000
Binary files a/examples/flexjs/FlexJSStore/src/assets/trashcan.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/beige.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/beige.css b/examples/flexjs/FlexJSStore/src/beige.css
deleted file mode 100755
index 764b49c..0000000
--- a/examples/flexjs/FlexJSStore/src/beige.css
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-*/
-
-/* Style for color-specific state - Beige */
-
-@namespace "library://ns.apache.org/flexjs/basic";
-
-/*
-//----------------------------
-//  Global styles
-//----------------------------
-*/
-.global
-{
-    highlightAlphas:        .5, .25;
-    borderColor:            #939A9D;
-    headerColors:           #A65904, #E68701;
-    themeColor:             #75B1CE;
-    rollOverColor:          #D6E6EE;
-    selectionColor:         #B8D5E4;
-}
-
-/*
-//----------------------------
-// Type selectors
-//----------------------------
-*/
-Application
-{
-    backgroundColor:		#EAE6DD;
-    backgroundImage:        "assets/beige_background.jpg";
-}
-
-/*
-//----------------------------
-// Apply to Panels and Alerts by default
-//----------------------------
-*/
-.windowStatus {
-	color: #FFCC99;
-}
-
-.windowStyles {		/* catalog panel's title text */
-	color: #FFCC99;
-}
-
-/*
-//----------------------------
-// Named styles
-//----------------------------
-*/
-
-.colorPanel /* for the background of some surfaces */
-{
-    borderStyle:            "solid";
-    borderWidth:        0;
-    backgroundColor:		#BCB29F;
-    backgroundAlpha:		0.4;
-    color: 					#170505;
-    cornerRadius:           4;
-    dropShadowEnabled:      true;
-}
-
-.homeProgramHeader /* in HomeView */
-{
-    fontWeight:             "bold";
-    fontSize:               13;
-    color:                  #BE7E3F;
-}
-
-.homeMap
-{
-    borderStyle:            "solid";
-    cornerRadius:           4;
-    backgroundColor:        #BE7E3F;
-    alpha:                  1;
-    dottedMap:              "assets/beige_dotted_map.png";
-}
-
-.instructions
-{
-    alpha:                  .85;
-    color:                  #5C5857;
-}
-
-.storeControlBar
-{
-    fillAlphas: 			.60, .40;
-    fillColors: 			#8F8879, #BCB29F;
-    highlightAlphas:		.05, .25;
-    cornerRadius: 			3;
-	shadowDistance:         4;
-	paddingLeft:            0;
-	paddingRight:           0;
-	paddingTop:             0;
-	paddingBottom:          0;
-	horizontalGap:          0;
-    storeLogo:              "assets/logo_orange.png";
-}
-
-.storeButtonBar
-{
-    cornerRadius:           0;
-    buttonStyleName:        "storeButton";
-    themeColor:             #A65904;
-}
-
-.storeButton
-{
-    cornerRadius:           0;
-    fillColors:             #8F8879, #BCB29F, #A65904, #E68701;
-    fillAlphas:             1, 1;
-    highlightAlphas:        .5, .25;
-    fontWeight:             "normal";
-    /** need to port to ButtonView 
-    selectedOverSkin:       ClassReference("samples.flexstore.ButtonBarButtonSkin");
-    selectedUpSkin:         ClassReference("samples.flexstore.ButtonBarButtonSkin");
-    overSkin:               ClassReference("samples.flexstore.ButtonBarButtonSkin");
-    **/
-}
-
-.catalogTitleButtonSelected
-{
-    color:                  #FFFFFF;
-    fontWeight:             "bold";
-}
-
-.catalogTitleButtonDeselected
-{
-    color:                  #222222;
-    fontWeight:             "bold";
-}
-
-.catalogTitleButtonHighlighted
-{
-    color:                  #FFCC99;
-    fontWeight:             "bold";
-}
-
-.catalogPanel
-{
-    highlightAlphas:        .5, .25;
-    headerColors:           #A65904, #E68701;
-    borderAlpha:            1;
-    borderColor:            #FFFFFF;
-    border-width: 1px;
-    borderThicknessRight:   1;
-    borderThicknessBottom:  1;
-    paddingRight:           0;
-    paddingBottom:          0;
-}
-
-

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/blue.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/blue.css b/examples/flexjs/FlexJSStore/src/blue.css
deleted file mode 100755
index 58e98cd..0000000
--- a/examples/flexjs/FlexJSStore/src/blue.css
+++ /dev/null
@@ -1,165 +0,0 @@
-/*
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-*/
-
-/* Style for color-specific state - Beige */
-
-/*
-//----------------------------
-//  Global styles
-//----------------------------
-*/
-.global
-{
-    highlightAlphas:        .5, .25;
-    borderColor:            #939A9D;
-    headerColors:           #456F84, #9ABBC9;
-    themeColor:             #75B1CE;
-    rollOverColor:          #D6E6EE;
-    selectionColor:         #B8D5E4;
-}
-
-/*
-//----------------------------
-// Type selectors
-//----------------------------
-*/
-Application
-{
-    backgroundColor:		#AAB2B7;
-    backgroundImage:        Embed("assets/blue_background.jpg");
-}
-
-/*
-//----------------------------
-// Apply to Panels and Alerts by default
-//----------------------------
-*/
-.windowStatus {
-	color: #BDE9FA;
-}
-
-.windowStyles {		/* catalog panel's title text */
-	color: #BDE9FA;
-}
-
-/*
-//----------------------------
-// Named styles
-//----------------------------
-*/
-
-.colorPanel /* for the background of some surfaces */
-{
-    borderStyle:            "solid";
-    borderThickness:        0;
-    backgroundColor:		#BDD6E2;
-    backgroundAlpha:		0.4;
-    color: 					#170505;
-    cornerRadius:           4;
-    dropShadowEnabled:      true;
-}
-
-.homeProgramHeader /* in HomeView */
-{
-    fontWeight:             "bold";
-    fontSize:               13;
-    color:                  #7AA4B9;
-}
-
-.homeMap
-{
-    borderStyle:            "solid";
-    cornerRadius:           4;
-    backgroundColor:        #7AA4B9;
-    alpha:                  1;
-    dottedMap:              Embed("assets/blue_dotted_map.png");
-}
-
-.instructions
-{
-    alpha:                  .85;
-    color:                  #5C5857;
-}
-
-.storeControlBar
-{
-    fillAlphas: 			.60, .40;
-    fillColors: 			#4A6F81, #BDD6E2;
-    highlightAlphas:		.05, .25;
-    cornerRadius: 			3;
-	shadowDistance:         4;
-	paddingLeft:            0;
-	paddingRight:           0;
-	paddingTop:             0;
-	paddingBottom:          0;
-	horizontalGap:          0;
-    storeLogo:              Embed("assets/logo_blue.png");
-}
-
-.storeButtonBar
-{
-    cornerRadius:           0;
-    buttonStyleName:        "storeButton";
-    themeColor:             #456F84;
-}
-
-.storeButton
-{
-    cornerRadius:           0;
-    fillColors:             #4A6F81, #BDD6E2, #456F84, #9ABBC9;
-    fillAlphas:             1, 1;
-    highlightAlphas:        .5, .25;
-    fontWeight:             "normal";
-    selectedOverSkin:       ClassReference("samples.flexstore.ButtonBarButtonSkin");
-    selectedUpSkin:         ClassReference("samples.flexstore.ButtonBarButtonSkin");
-    overSkin:               ClassReference("samples.flexstore.ButtonBarButtonSkin");
-}
-
-.catalogTitleButtonSelected
-{
-    color:                  #FFFFFF;
-    fontWeight:             "bold";
-}
-
-.catalogTitleButtonDeselected
-{
-    color:                  #222222;
-    fontWeight:             "bold";
-}
-
-.catalogTitleButtonHighlighted
-{
-    color:                  #BDE9FA;
-    fontWeight:             "bold";
-}
-
-.catalogPanel
-{
-    highlightAlphas:        .5, .25;
-    headerColors:           #456F84, #9ABBC9;
-    borderAlpha:            1;
-    borderColor:            #FFFFFF;
-    borderThicknessRight:   1;
-    borderThicknessBottom:  1;
-    paddingRight:           0;
-    paddingBottom:          0;
-}
-


[38/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - fix build. I think the compiler now catches this. __NoChangeEvent__ should not be dispatched. It is a special event name to tell the binding subsystem not to expect change events

Posted by ca...@apache.org.
fix build.  I think the compiler now catches this.  __NoChangeEvent__ should not be dispatched.  It is a special event name to tell the binding subsystem not to expect change events


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/0423210e
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/0423210e
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/0423210e

Branch: refs/heads/feature/mdl
Commit: 0423210ebd985aed38b255bb2a36229f9e255d2d
Parents: 72c1e1f
Author: Alex Harui <ah...@apache.org>
Authored: Tue Nov 8 13:32:59 2016 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Tue Nov 8 13:32:59 2016 -0800

----------------------------------------------------------------------
 .../HTML/src/main/flex/org/apache/flex/core/Application.as         | 2 --
 1 file changed, 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/0423210e/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/Application.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/Application.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/Application.as
index bef9f3d..8883673 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/Application.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/Application.as
@@ -555,7 +555,6 @@ package org.apache.flex.core
 		 *  @playerversion AIR 2.6
 		 *  @productversion FlexJS 0.0
 		 */
-		[Bindable("__NoChangeEvent__")]
 		public function get initialView():IApplicationView
 		{
 			return _initialView;
@@ -564,7 +563,6 @@ package org.apache.flex.core
 		public function set initialView(value:IApplicationView):void
 		{
 			_initialView = value;
-			dispatchEvent(new org.apache.flex.events.Event("__NoChangeEvent__");
 		}
 		
 		COMPILE::SWF


[41/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Put images where correspond, and fix paths

Posted by ca...@apache.org.
Put images where correspond, and fix paths


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/35e7acc0
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/35e7acc0
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/35e7acc0

Branch: refs/heads/feature/mdl
Commit: 35e7acc0bc3ff960bf580f3e14f0961472837495
Parents: 70acec9
Author: Carlos Rovira <ca...@apache.org>
Authored: Tue Nov 8 23:28:17 2016 +0100
Committer: Carlos Rovira <ca...@apache.org>
Committed: Tue Nov 8 23:28:17 2016 +0100

----------------------------------------------------------------------
 examples/flexjs/MDLExample/src/main/flex/App.mxml  |   4 ++--
 .../MDLExample/src/main/resources/Unknown.jpg      | Bin 50531 -> 0 bytes
 .../src/main/resources/assets/Unknown.jpg          | Bin 0 -> 50531 bytes
 3 files changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/35e7acc0/examples/flexjs/MDLExample/src/main/flex/App.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLExample/src/main/flex/App.mxml b/examples/flexjs/MDLExample/src/main/flex/App.mxml
index 0bacef4..cdd07e4 100644
--- a/examples/flexjs/MDLExample/src/main/flex/App.mxml
+++ b/examples/flexjs/MDLExample/src/main/flex/App.mxml
@@ -114,11 +114,11 @@ limitations under the License.
                 </js:VContainer>
 
                 <mdl:Card width="512" shadow="2">
-                    <mdl:CardTitle style="color: #666;height: 176px; backgroundImage: url('../../../../src/main/resources/Unknown.jpeg') center / cover;">
+                    <mdl:CardTitle style="color: #666;height: 176px; backgroundImage: url('assets/Unknown.jpeg') center / cover;">
                         <js:H2 text="Welcome" className="mdl-card__title-text"/>
                     </mdl:CardTitle>
                     <mdl:CardMedia>
-                        <js:Image url="../../../../src/main/resources/Unknown.jpg"  height="176"/>
+                        <js:Image url="assets/Unknown.jpg"  height="176"/>
                     </mdl:CardMedia>
                     <mdl:CardSupportingText>
                         <js:MultilineLabel text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris sagittis pellentesque lacus eleifend lacinia..."/>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/35e7acc0/examples/flexjs/MDLExample/src/main/resources/Unknown.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLExample/src/main/resources/Unknown.jpg b/examples/flexjs/MDLExample/src/main/resources/Unknown.jpg
deleted file mode 100644
index 08fb201..0000000
Binary files a/examples/flexjs/MDLExample/src/main/resources/Unknown.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/35e7acc0/examples/flexjs/MDLExample/src/main/resources/assets/Unknown.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLExample/src/main/resources/assets/Unknown.jpg b/examples/flexjs/MDLExample/src/main/resources/assets/Unknown.jpg
new file mode 100644
index 0000000..08fb201
Binary files /dev/null and b/examples/flexjs/MDLExample/src/main/resources/assets/Unknown.jpg differ


[25/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Moved resources to the src/main/resources directories - Adjusted the config to use the maven-resources-plugin for copying the resources

Posted by ca...@apache.org.
- Moved resources to the src/main/resources directories
- Adjusted the config to use the maven-resources-plugin for copying the resources


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/a07e0a2e
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/a07e0a2e
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/a07e0a2e

Branch: refs/heads/feature/mdl
Commit: a07e0a2e34c8b749f9cb3009860a9a3e34942621
Parents: 8d49554
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Sat Nov 5 16:38:56 2016 +0100
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Sat Nov 5 16:38:56 2016 +0100

----------------------------------------------------------------------
 .../src/main/flex/assets/smallbluerect.jpg      | Bin 13500 -> 0 bytes
 .../src/main/flex/assets/smallgreenrect.jpg     | Bin 13542 -> 0 bytes
 .../src/main/flex/assets/smallorangerect.gif    | Bin 821 -> 0 bytes
 .../src/main/flex/assets/smallorangerect.jpg    | Bin 13571 -> 0 bytes
 .../src/main/flex/assets/smallpurplerect.jpg    | Bin 13517 -> 0 bytes
 .../src/main/flex/assets/smallredrect.jpg       | Bin 13477 -> 0 bytes
 .../src/main/flex/assets/smallyellowrect.jpg    | Bin 13598 -> 0 bytes
 .../src/main/resources/assets/smallbluerect.jpg | Bin 0 -> 13500 bytes
 .../main/resources/assets/smallgreenrect.jpg    | Bin 0 -> 13542 bytes
 .../main/resources/assets/smallorangerect.gif   | Bin 0 -> 821 bytes
 .../main/resources/assets/smallorangerect.jpg   | Bin 0 -> 13571 bytes
 .../main/resources/assets/smallpurplerect.jpg   | Bin 0 -> 13517 bytes
 .../src/main/resources/assets/smallredrect.jpg  | Bin 0 -> 13477 bytes
 .../main/resources/assets/smallyellowrect.jpg   | Bin 0 -> 13598 bytes
 .../src/main/flex/assets/427px-Bayarea_map.png  | Bin 122661 -> 0 bytes
 .../src/main/flex/assets/akotter.jpg            | Bin 19395 -> 0 bytes
 .../src/main/flex/assets/bcrater.jpg            | Bin 22670 -> 0 bytes
 .../src/main/flex/assets/beige_background.jpg   | Bin 12533 -> 0 bytes
 .../src/main/flex/assets/beige_dotted_map.png   | Bin 216598 -> 0 bytes
 .../src/main/flex/assets/blue_background.jpg    | Bin 12868 -> 0 bytes
 .../src/main/flex/assets/blue_dotted_map.png    | Bin 217088 -> 0 bytes
 .../src/main/flex/assets/button_cart_empty.png  | Bin 289 -> 0 bytes
 .../src/main/flex/assets/button_cart_full.png   | Bin 308 -> 0 bytes
 .../src/main/flex/assets/button_compare.png     | Bin 304 -> 0 bytes
 .../src/main/flex/assets/button_details.png     | Bin 284 -> 0 bytes
 .../src/main/flex/assets/button_tiles.png       | Bin 218 -> 0 bytes
 .../FlexJSStore/src/main/flex/assets/grip.png   | Bin 19836 -> 0 bytes
 .../src/main/flex/assets/icon_cart_empty.png    | Bin 29594 -> 0 bytes
 .../src/main/flex/assets/icon_compare.png       | Bin 30218 -> 0 bytes
 .../src/main/flex/assets/icon_magnifier.png     | Bin 30454 -> 0 bytes
 .../src/main/flex/assets/icon_tiles.png         | Bin 27988 -> 0 bytes
 .../src/main/flex/assets/jproctor.jpg           | Bin 21684 -> 0 bytes
 .../src/main/flex/assets/logo_blue.png          | Bin 33677 -> 0 bytes
 .../src/main/flex/assets/logo_orange.png        | Bin 34166 -> 0 bytes
 .../src/main/flex/assets/pic/abrilliam.jpg      | Bin 18903 -> 0 bytes
 .../src/main/flex/assets/pic/akotter.jpg        | Bin 19395 -> 0 bytes
 .../src/main/flex/assets/pic/bcrater.jpg        | Bin 22670 -> 0 bytes
 .../src/main/flex/assets/pic/bleporte.jpg       | Bin 23363 -> 0 bytes
 .../src/main/flex/assets/pic/bvanbrocklin.jpg   | Bin 18066 -> 0 bytes
 .../src/main/flex/assets/pic/ccarpenter.jpg     | Bin 19219 -> 0 bytes
 .../src/main/flex/assets/pic/clampberto.jpg     | Bin 18611 -> 0 bytes
 .../src/main/flex/assets/pic/davenon.jpg        | Bin 20028 -> 0 bytes
 .../src/main/flex/assets/pic/dmcgoyal.jpg       | Bin 19395 -> 0 bytes
 .../src/main/flex/assets/pic/dwillhelm.jpg      | Bin 22670 -> 0 bytes
 .../src/main/flex/assets/pic/esunderland.jpg    | Bin 23363 -> 0 bytes
 .../src/main/flex/assets/pic/jproctor.jpg       | Bin 21684 -> 0 bytes
 .../src/main/flex/assets/pic/mfields.jpg        | Bin 18066 -> 0 bytes
 .../src/main/flex/assets/pic/pdempsey.jpg       | Bin 18611 -> 0 bytes
 .../src/main/flex/assets/pic/ptranep.jpg        | Bin 19627 -> 0 bytes
 .../src/main/flex/assets/pic/rcrawley.jpg       | Bin 23692 -> 0 bytes
 .../src/main/flex/assets/pic/rdreifus.jpg       | Bin 20028 -> 0 bytes
 .../src/main/flex/assets/pic/twong.jpg          | Bin 19395 -> 0 bytes
 .../main/flex/assets/support_mapmarker_a.png    | Bin 834 -> 0 bytes
 .../main/flex/assets/support_mapmarker_b.png    | Bin 822 -> 0 bytes
 .../main/flex/assets/support_mapmarker_c.png    | Bin 817 -> 0 bytes
 .../main/flex/assets/support_mapmarker_plus.png | Bin 827 -> 0 bytes
 .../src/main/flex/assets/trashcan.png           | Bin 182 -> 0 bytes
 .../FlexJSStore/src/main/flex/data/catalog.json | 236 ---------
 .../main/resources/assets/427px-Bayarea_map.png | Bin 0 -> 122661 bytes
 .../src/main/resources/assets/akotter.jpg       | Bin 0 -> 19395 bytes
 .../src/main/resources/assets/bcrater.jpg       | Bin 0 -> 22670 bytes
 .../main/resources/assets/beige_background.jpg  | Bin 0 -> 12533 bytes
 .../main/resources/assets/beige_dotted_map.png  | Bin 0 -> 216598 bytes
 .../main/resources/assets/blue_background.jpg   | Bin 0 -> 12868 bytes
 .../main/resources/assets/blue_dotted_map.png   | Bin 0 -> 217088 bytes
 .../main/resources/assets/button_cart_empty.png | Bin 0 -> 289 bytes
 .../main/resources/assets/button_cart_full.png  | Bin 0 -> 308 bytes
 .../main/resources/assets/button_compare.png    | Bin 0 -> 304 bytes
 .../main/resources/assets/button_details.png    | Bin 0 -> 284 bytes
 .../src/main/resources/assets/button_tiles.png  | Bin 0 -> 218 bytes
 .../src/main/resources/assets/grip.png          | Bin 0 -> 19836 bytes
 .../main/resources/assets/icon_cart_empty.png   | Bin 0 -> 29594 bytes
 .../src/main/resources/assets/icon_compare.png  | Bin 0 -> 30218 bytes
 .../main/resources/assets/icon_magnifier.png    | Bin 0 -> 30454 bytes
 .../src/main/resources/assets/icon_tiles.png    | Bin 0 -> 27988 bytes
 .../src/main/resources/assets/jproctor.jpg      | Bin 0 -> 21684 bytes
 .../src/main/resources/assets/logo_blue.png     | Bin 0 -> 33677 bytes
 .../src/main/resources/assets/logo_orange.png   | Bin 0 -> 34166 bytes
 .../src/main/resources/assets/pic/abrilliam.jpg | Bin 0 -> 18903 bytes
 .../src/main/resources/assets/pic/akotter.jpg   | Bin 0 -> 19395 bytes
 .../src/main/resources/assets/pic/bcrater.jpg   | Bin 0 -> 22670 bytes
 .../src/main/resources/assets/pic/bleporte.jpg  | Bin 0 -> 23363 bytes
 .../main/resources/assets/pic/bvanbrocklin.jpg  | Bin 0 -> 18066 bytes
 .../main/resources/assets/pic/ccarpenter.jpg    | Bin 0 -> 19219 bytes
 .../main/resources/assets/pic/clampberto.jpg    | Bin 0 -> 18611 bytes
 .../src/main/resources/assets/pic/davenon.jpg   | Bin 0 -> 20028 bytes
 .../src/main/resources/assets/pic/dmcgoyal.jpg  | Bin 0 -> 19395 bytes
 .../src/main/resources/assets/pic/dwillhelm.jpg | Bin 0 -> 22670 bytes
 .../main/resources/assets/pic/esunderland.jpg   | Bin 0 -> 23363 bytes
 .../src/main/resources/assets/pic/jproctor.jpg  | Bin 0 -> 21684 bytes
 .../src/main/resources/assets/pic/mfields.jpg   | Bin 0 -> 18066 bytes
 .../src/main/resources/assets/pic/pdempsey.jpg  | Bin 0 -> 18611 bytes
 .../src/main/resources/assets/pic/ptranep.jpg   | Bin 0 -> 19627 bytes
 .../src/main/resources/assets/pic/rcrawley.jpg  | Bin 0 -> 23692 bytes
 .../src/main/resources/assets/pic/rdreifus.jpg  | Bin 0 -> 20028 bytes
 .../src/main/resources/assets/pic/twong.jpg     | Bin 0 -> 19395 bytes
 .../resources/assets/support_mapmarker_a.png    | Bin 0 -> 834 bytes
 .../resources/assets/support_mapmarker_b.png    | Bin 0 -> 822 bytes
 .../resources/assets/support_mapmarker_c.png    | Bin 0 -> 817 bytes
 .../resources/assets/support_mapmarker_plus.png | Bin 0 -> 827 bytes
 .../src/main/resources/assets/trashcan.png      | Bin 0 -> 182 bytes
 .../src/main/resources/data/catalog.json        | 236 +++++++++
 .../src/main/flex/assets/427px-Bayarea_map.png  | Bin 122661 -> 0 bytes
 .../src/main/flex/assets/akotter.jpg            | Bin 19395 -> 0 bytes
 .../src/main/flex/assets/bcrater.jpg            | Bin 22670 -> 0 bytes
 .../src/main/flex/assets/beige_background.jpg   | Bin 12533 -> 0 bytes
 .../src/main/flex/assets/beige_dotted_map.png   | Bin 216598 -> 0 bytes
 .../src/main/flex/assets/blue_background.jpg    | Bin 12868 -> 0 bytes
 .../src/main/flex/assets/blue_dotted_map.png    | Bin 217088 -> 0 bytes
 .../src/main/flex/assets/button_cart_empty.png  | Bin 289 -> 0 bytes
 .../src/main/flex/assets/button_cart_full.png   | Bin 308 -> 0 bytes
 .../src/main/flex/assets/button_compare.png     | Bin 304 -> 0 bytes
 .../src/main/flex/assets/button_details.png     | Bin 284 -> 0 bytes
 .../src/main/flex/assets/button_tiles.png       | Bin 218 -> 0 bytes
 .../src/main/flex/assets/grip.png               | Bin 19836 -> 0 bytes
 .../src/main/flex/assets/icon_cart_empty.png    | Bin 29594 -> 0 bytes
 .../src/main/flex/assets/icon_compare.png       | Bin 30218 -> 0 bytes
 .../src/main/flex/assets/icon_magnifier.png     | Bin 30454 -> 0 bytes
 .../src/main/flex/assets/icon_tiles.png         | Bin 27988 -> 0 bytes
 .../src/main/flex/assets/jproctor.jpg           | Bin 21684 -> 0 bytes
 .../src/main/flex/assets/logo_blue.png          | Bin 33677 -> 0 bytes
 .../src/main/flex/assets/logo_orange.png        | Bin 34199 -> 0 bytes
 .../src/main/flex/assets/pic/abrilliam.jpg      | Bin 18903 -> 0 bytes
 .../src/main/flex/assets/pic/akotter.jpg        | Bin 19395 -> 0 bytes
 .../src/main/flex/assets/pic/bcrater.jpg        | Bin 22670 -> 0 bytes
 .../src/main/flex/assets/pic/bleporte.jpg       | Bin 23363 -> 0 bytes
 .../src/main/flex/assets/pic/bvanbrocklin.jpg   | Bin 18066 -> 0 bytes
 .../src/main/flex/assets/pic/ccarpenter.jpg     | Bin 19219 -> 0 bytes
 .../src/main/flex/assets/pic/clampberto.jpg     | Bin 18611 -> 0 bytes
 .../src/main/flex/assets/pic/davenon.jpg        | Bin 20028 -> 0 bytes
 .../src/main/flex/assets/pic/dmcgoyal.jpg       | Bin 19395 -> 0 bytes
 .../src/main/flex/assets/pic/dwillhelm.jpg      | Bin 22670 -> 0 bytes
 .../src/main/flex/assets/pic/esunderland.jpg    | Bin 23363 -> 0 bytes
 .../src/main/flex/assets/pic/jproctor.jpg       | Bin 21684 -> 0 bytes
 .../src/main/flex/assets/pic/mfields.jpg        | Bin 18066 -> 0 bytes
 .../src/main/flex/assets/pic/pdempsey.jpg       | Bin 18611 -> 0 bytes
 .../src/main/flex/assets/pic/ptranep.jpg        | Bin 19627 -> 0 bytes
 .../src/main/flex/assets/pic/rcrawley.jpg       | Bin 23692 -> 0 bytes
 .../src/main/flex/assets/pic/rdreifus.jpg       | Bin 20028 -> 0 bytes
 .../src/main/flex/assets/pic/twong.jpg          | Bin 19395 -> 0 bytes
 .../main/flex/assets/support_mapmarker_a.png    | Bin 834 -> 0 bytes
 .../main/flex/assets/support_mapmarker_b.png    | Bin 822 -> 0 bytes
 .../main/flex/assets/support_mapmarker_c.png    | Bin 817 -> 0 bytes
 .../main/flex/assets/support_mapmarker_plus.png | Bin 827 -> 0 bytes
 .../src/main/flex/assets/trashcan.png           | Bin 182 -> 0 bytes
 .../src/main/flex/data/catalog.json             | 236 ---------
 .../main/resources/assets/427px-Bayarea_map.png | Bin 0 -> 122661 bytes
 .../src/main/resources/assets/akotter.jpg       | Bin 0 -> 19395 bytes
 .../src/main/resources/assets/bcrater.jpg       | Bin 0 -> 22670 bytes
 .../main/resources/assets/beige_background.jpg  | Bin 0 -> 12533 bytes
 .../main/resources/assets/beige_dotted_map.png  | Bin 0 -> 216598 bytes
 .../main/resources/assets/blue_background.jpg   | Bin 0 -> 12868 bytes
 .../main/resources/assets/blue_dotted_map.png   | Bin 0 -> 217088 bytes
 .../main/resources/assets/button_cart_empty.png | Bin 0 -> 289 bytes
 .../main/resources/assets/button_cart_full.png  | Bin 0 -> 308 bytes
 .../main/resources/assets/button_compare.png    | Bin 0 -> 304 bytes
 .../main/resources/assets/button_details.png    | Bin 0 -> 284 bytes
 .../src/main/resources/assets/button_tiles.png  | Bin 0 -> 218 bytes
 .../src/main/resources/assets/grip.png          | Bin 0 -> 19836 bytes
 .../main/resources/assets/icon_cart_empty.png   | Bin 0 -> 29594 bytes
 .../src/main/resources/assets/icon_compare.png  | Bin 0 -> 30218 bytes
 .../main/resources/assets/icon_magnifier.png    | Bin 0 -> 30454 bytes
 .../src/main/resources/assets/icon_tiles.png    | Bin 0 -> 27988 bytes
 .../src/main/resources/assets/jproctor.jpg      | Bin 0 -> 21684 bytes
 .../src/main/resources/assets/logo_blue.png     | Bin 0 -> 33677 bytes
 .../src/main/resources/assets/logo_orange.png   | Bin 0 -> 34199 bytes
 .../src/main/resources/assets/pic/abrilliam.jpg | Bin 0 -> 18903 bytes
 .../src/main/resources/assets/pic/akotter.jpg   | Bin 0 -> 19395 bytes
 .../src/main/resources/assets/pic/bcrater.jpg   | Bin 0 -> 22670 bytes
 .../src/main/resources/assets/pic/bleporte.jpg  | Bin 0 -> 23363 bytes
 .../main/resources/assets/pic/bvanbrocklin.jpg  | Bin 0 -> 18066 bytes
 .../main/resources/assets/pic/ccarpenter.jpg    | Bin 0 -> 19219 bytes
 .../main/resources/assets/pic/clampberto.jpg    | Bin 0 -> 18611 bytes
 .../src/main/resources/assets/pic/davenon.jpg   | Bin 0 -> 20028 bytes
 .../src/main/resources/assets/pic/dmcgoyal.jpg  | Bin 0 -> 19395 bytes
 .../src/main/resources/assets/pic/dwillhelm.jpg | Bin 0 -> 22670 bytes
 .../main/resources/assets/pic/esunderland.jpg   | Bin 0 -> 23363 bytes
 .../src/main/resources/assets/pic/jproctor.jpg  | Bin 0 -> 21684 bytes
 .../src/main/resources/assets/pic/mfields.jpg   | Bin 0 -> 18066 bytes
 .../src/main/resources/assets/pic/pdempsey.jpg  | Bin 0 -> 18611 bytes
 .../src/main/resources/assets/pic/ptranep.jpg   | Bin 0 -> 19627 bytes
 .../src/main/resources/assets/pic/rcrawley.jpg  | Bin 0 -> 23692 bytes
 .../src/main/resources/assets/pic/rdreifus.jpg  | Bin 0 -> 20028 bytes
 .../src/main/resources/assets/pic/twong.jpg     | Bin 0 -> 19395 bytes
 .../resources/assets/support_mapmarker_a.png    | Bin 0 -> 834 bytes
 .../resources/assets/support_mapmarker_b.png    | Bin 0 -> 822 bytes
 .../resources/assets/support_mapmarker_c.png    | Bin 0 -> 817 bytes
 .../resources/assets/support_mapmarker_plus.png | Bin 0 -> 827 bytes
 .../src/main/resources/assets/trashcan.png      | Bin 0 -> 182 bytes
 .../src/main/resources/data/catalog.json        | 236 +++++++++
 .../src/main/flex/assets/arrow_left_24.png      | Bin 47785 -> 0 bytes
 .../src/main/flex/assets/background.png         | Bin 49376 -> 0 bytes
 .../MobileStocks/src/main/flex/assets/logo.png  | Bin 55223 -> 0 bytes
 .../src/main/resources/assets/arrow_left_24.png | Bin 0 -> 47785 bytes
 .../src/main/resources/assets/background.png    | Bin 0 -> 49376 bytes
 .../src/main/resources/assets/logo.png          | Bin 0 -> 55223 bytes
 .../src/main/flex/assets/arrow_left_24.png      | Bin 47785 -> 0 bytes
 .../src/main/flex/assets/background.png         | Bin 49376 -> 0 bytes
 .../MobileTrader/src/main/flex/assets/logo.png  | Bin 55223 -> 0 bytes
 .../src/main/resources/assets/arrow_left_24.png | Bin 0 -> 47785 bytes
 .../src/main/resources/assets/background.png    | Bin 0 -> 49376 bytes
 .../src/main/resources/assets/logo.png          | Bin 0 -> 55223 bytes
 .../flexjs/TeamPage/src/main/flex/team.json     | 504 -------------------
 .../TeamPage/src/main/resources/team.json       | 504 +++++++++++++++++++
 examples/pom.xml                                |  33 +-
 205 files changed, 994 insertions(+), 991 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/flex/assets/smallbluerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallbluerect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallbluerect.jpg
deleted file mode 100644
index 80ed275..0000000
Binary files a/examples/flexjs/DataGridExample/src/main/flex/assets/smallbluerect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/flex/assets/smallgreenrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallgreenrect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallgreenrect.jpg
deleted file mode 100644
index c5f9ce6..0000000
Binary files a/examples/flexjs/DataGridExample/src/main/flex/assets/smallgreenrect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.gif
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.gif b/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.gif
deleted file mode 100644
index 603f810..0000000
Binary files a/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.gif and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.jpg
deleted file mode 100644
index 4982d87..0000000
Binary files a/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/flex/assets/smallpurplerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallpurplerect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallpurplerect.jpg
deleted file mode 100644
index 201f625..0000000
Binary files a/examples/flexjs/DataGridExample/src/main/flex/assets/smallpurplerect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/flex/assets/smallredrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallredrect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallredrect.jpg
deleted file mode 100644
index d2cfa31..0000000
Binary files a/examples/flexjs/DataGridExample/src/main/flex/assets/smallredrect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/flex/assets/smallyellowrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallyellowrect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallyellowrect.jpg
deleted file mode 100644
index b17b62d..0000000
Binary files a/examples/flexjs/DataGridExample/src/main/flex/assets/smallyellowrect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/resources/assets/smallbluerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/resources/assets/smallbluerect.jpg b/examples/flexjs/DataGridExample/src/main/resources/assets/smallbluerect.jpg
new file mode 100644
index 0000000..80ed275
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/resources/assets/smallbluerect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/resources/assets/smallgreenrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/resources/assets/smallgreenrect.jpg b/examples/flexjs/DataGridExample/src/main/resources/assets/smallgreenrect.jpg
new file mode 100644
index 0000000..c5f9ce6
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/resources/assets/smallgreenrect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/resources/assets/smallorangerect.gif
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/resources/assets/smallorangerect.gif b/examples/flexjs/DataGridExample/src/main/resources/assets/smallorangerect.gif
new file mode 100644
index 0000000..603f810
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/resources/assets/smallorangerect.gif differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/resources/assets/smallorangerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/resources/assets/smallorangerect.jpg b/examples/flexjs/DataGridExample/src/main/resources/assets/smallorangerect.jpg
new file mode 100644
index 0000000..4982d87
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/resources/assets/smallorangerect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/resources/assets/smallpurplerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/resources/assets/smallpurplerect.jpg b/examples/flexjs/DataGridExample/src/main/resources/assets/smallpurplerect.jpg
new file mode 100644
index 0000000..201f625
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/resources/assets/smallpurplerect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/resources/assets/smallredrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/resources/assets/smallredrect.jpg b/examples/flexjs/DataGridExample/src/main/resources/assets/smallredrect.jpg
new file mode 100644
index 0000000..d2cfa31
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/resources/assets/smallredrect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/DataGridExample/src/main/resources/assets/smallyellowrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/resources/assets/smallyellowrect.jpg b/examples/flexjs/DataGridExample/src/main/resources/assets/smallyellowrect.jpg
new file mode 100644
index 0000000..b17b62d
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/resources/assets/smallyellowrect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/427px-Bayarea_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/427px-Bayarea_map.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/427px-Bayarea_map.png
deleted file mode 100644
index a183699..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/427px-Bayarea_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/akotter.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/akotter.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/akotter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/bcrater.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/bcrater.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/bcrater.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_background.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_background.jpg
deleted file mode 100755
index 8f034ba..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_background.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_dotted_map.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_dotted_map.png
deleted file mode 100755
index e88d9ef..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_dotted_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_background.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_background.jpg
deleted file mode 100755
index 361ce0e..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_background.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_dotted_map.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_dotted_map.png
deleted file mode 100755
index 5fa6714..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_dotted_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_empty.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_empty.png
deleted file mode 100644
index 0e1a2b5..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_empty.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_full.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_full.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_full.png
deleted file mode 100644
index 9c9eea0..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_full.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/button_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_compare.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_compare.png
deleted file mode 100644
index c2ac969..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_compare.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/button_details.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_details.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_details.png
deleted file mode 100644
index 3e6238c..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_details.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/button_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_tiles.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_tiles.png
deleted file mode 100644
index 4266a22..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_tiles.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/grip.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/grip.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/grip.png
deleted file mode 100755
index 64ee835..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/grip.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_cart_empty.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_cart_empty.png
deleted file mode 100644
index 562064b..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_cart_empty.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_compare.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_compare.png
deleted file mode 100644
index efc3ea1..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_compare.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_magnifier.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_magnifier.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_magnifier.png
deleted file mode 100755
index 939f814..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_magnifier.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_tiles.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_tiles.png
deleted file mode 100644
index dbf75b6..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_tiles.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/jproctor.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/jproctor.jpg
deleted file mode 100755
index 1111787..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/jproctor.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_blue.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_blue.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_blue.png
deleted file mode 100755
index 85bad70..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_blue.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_orange.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_orange.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_orange.png
deleted file mode 100755
index 0ce7dc4..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_orange.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/abrilliam.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/abrilliam.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/abrilliam.jpg
deleted file mode 100755
index 6954858..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/abrilliam.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/akotter.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/akotter.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/akotter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bcrater.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bcrater.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bcrater.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bleporte.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bleporte.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bleporte.jpg
deleted file mode 100755
index c4769e8..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bleporte.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bvanbrocklin.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bvanbrocklin.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bvanbrocklin.jpg
deleted file mode 100755
index 489fa2e..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bvanbrocklin.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ccarpenter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ccarpenter.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ccarpenter.jpg
deleted file mode 100755
index c1dc3d8..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ccarpenter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/clampberto.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/clampberto.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/clampberto.jpg
deleted file mode 100755
index 9deacd2..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/clampberto.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/davenon.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/davenon.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/davenon.jpg
deleted file mode 100755
index 6a2a142..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/davenon.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dmcgoyal.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dmcgoyal.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dmcgoyal.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dmcgoyal.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dwillhelm.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dwillhelm.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dwillhelm.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dwillhelm.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/esunderland.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/esunderland.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/esunderland.jpg
deleted file mode 100755
index c4769e8..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/esunderland.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/jproctor.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/jproctor.jpg
deleted file mode 100755
index 1111787..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/jproctor.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/mfields.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/mfields.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/mfields.jpg
deleted file mode 100755
index 489fa2e..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/mfields.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/pdempsey.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/pdempsey.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/pdempsey.jpg
deleted file mode 100755
index 9deacd2..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/pdempsey.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ptranep.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ptranep.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ptranep.jpg
deleted file mode 100755
index 4b9a03b..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ptranep.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rcrawley.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rcrawley.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rcrawley.jpg
deleted file mode 100755
index 9b60320..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rcrawley.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rdreifus.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rdreifus.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rdreifus.jpg
deleted file mode 100755
index 6a2a142..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rdreifus.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/twong.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/twong.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/twong.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/twong.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_a.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_a.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_a.png
deleted file mode 100755
index 20c21e1..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_a.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_b.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_b.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_b.png
deleted file mode 100755
index 069ccd8..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_b.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_c.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_c.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_c.png
deleted file mode 100755
index f6b587e..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_c.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_plus.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_plus.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_plus.png
deleted file mode 100755
index 4192088..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_plus.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/assets/trashcan.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/trashcan.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/trashcan.png
deleted file mode 100644
index 483a37c..0000000
Binary files a/examples/flexjs/FlexJSStore/src/main/flex/assets/trashcan.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.json b/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.json
deleted file mode 100755
index 89bdd43..0000000
--- a/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.json
+++ /dev/null
@@ -1,236 +0,0 @@
-{ catalog : [
-
-    { "productId" :"1",
-      "name" : "Andrew Brilliam",
-      "description" : "15 years experience. 8 years with Flex.  Specializing in Text Layout Framework",
-      "price" : 60.00,
-      "image" : "assets/pic/abrilliam.jpg",
-      "experience" : 15,
-      "blazeds" : false,
-      "mobile" : false,
-      "video" : false,
-      "highlight1" : "Text Layout Framework",
-	  "highlight2" : "Parsley"
-    },
-    
-    { "productId" : "2",
-        "name" : "Annette Kotter",
-        "description" : "Specializing in custom components.  PHP servers.",
-        "price" : 55,
-        "image" : "assets/pic/akotter.jpg",
-        "experience" : 3,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "Custom Components",
-		"highlight2" : "PHP"
-    },
-
-    { "productId" : "3",
-        "name" : "Ben Crater",
-        "description" : "Specializing in BlazeDS backends.",
-        "price" : 55,
-        "image" : "assets/pic/bcrater.jpg",
-        "experience" : 4,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Remote Object"
-    },
-
-    { "productId" : "4",
-        "name" : "Beth Leporte",
-        "description" : "BlazeDS or PHP servers.  Multimedia messagin.",
-        "price" : 70.00,
-        "image" : "assets/pic/bleporte.jpg",
-        "experience" : 6,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "Multimedia messaging",
-		"highlight2" : "BlazeDS"
-    },
-
-    { "productId" : "5",
-        "name" : "Brad Van Brocklin",
-        "description" : "Emphasis on mobile application development",
-        "price" : 80,
-        "image" : "assets/pic/bvanbrocklin.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : false,
-        "highlight1" : "Mobile",
-		"highlight2" : "Android"
-    },
-
-    { "productId" : "6",
-        "name" : "Carlos Carpenter",
-        "description" : "Built many mobile apps and video apps.",
-        "price" : 80,
-        "image" : "assets/pic/ccarpenter.jpg",
-        "experience" : 4,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Mobile",
-		"highlight2" : "Video"
-    },
-
-    { "productId" : "7",
-        "name" : "Christine Lampberto",
-        "description" : "7 years experience building mobile applications.",
-        "price" : 90,
-        "image" : "assets/pic/clampberto.jpg",
-        "experience" : 7,
-        "blazeds" : true,
-        "mobile" : true,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Mobile"
-    },
-
-    { "productId" : "8",
-        "name" : "Dee Dee Avenon",
-        "description" : "I've been making video apps for over 5 years and mobile apps for about 3 years.",
-        "price" : 100,
-        "image" : "assets/pic/davenon.jpg",
-        "experience" : 10,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "9",
-        "name" : "Denise McGoyal",
-        "description" : "Specializing in video sharing applicaions.  MObile apps too.",
-        "price" : 100,
-        "image" : "assets/pic/dmcgoyal.jpg",
-        "experience" : 5,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "10",
-        "name" : "Daniel Willhelm",
-        "description" : "I'm into mobile apps, video apps and social apps.",
-        "price" : 70,
-        "image" : "assets/pic/dwillhelm.jpg",
-        "experience" : 90,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "11",
-        "name" : "Eunice Sunderland",
-        "description" : "My recent focus is on mobile apps, but I have considerable experience in video apps as well.",
-        "price" : 150,
-        "image" : "assets/pic/esunderland.jpg",
-        "experience" : 30,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "12",
-        "name" : "Jane Proctor",
-        "description" : "I've been developing mobile companion apps for the past 3 years.",
-        "price" : 75,
-        "image" : "assets/pic/jproctor.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "13",
-        "name" : "Mark Fields",
-        "description" : "Video is my favorite thing.  Mobile is also a favorite.",
-        "price" : 60,
-        "image" : "assets/pic/mfields.jpg",
-        "experience" : 70,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "14",
-        "name" : "Patricia Dempsey",
-        "description" : "I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.",
-        "price" : 120,
-        "image" : "assets/pic/pdempsey.jpg",
-        "experience" : 7,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "15",
-        "name" : "Paul Trandep",
-        "description" : "I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'",
-        "price" : 50,
-        "image" : "assets/pic/ptranep.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "16",
-        "name" : "Roscoe Crawley",
-        "description" : "My main specialty is in BlazeDS connected to Flex.",
-        "price" : 59,
-        "image" : "assets/pic/rcrawley.jpg",
-        "experience" : 9,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Remote Object"
-    },
-
-    { "productId" : "17",
-        "name" : "Renee Dreifus",
-            "description" : "I can do it all: BlazeDS, Mobile, Video.",
-        "price" : 79,
-        "image" : "assets/pic/rdreifus.jpg",
-        "experience" : 90,
-        "blazeds" : true,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "18",
-        "name" : "Tina Wong",
-        "description" : "I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.",
-        "price" : 109,
-        "image" : "assets/pic/twong.jpg",
-        "experience" : 9,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    
-];

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/427px-Bayarea_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/427px-Bayarea_map.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/427px-Bayarea_map.png
new file mode 100644
index 0000000..a183699
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/427px-Bayarea_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/akotter.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/akotter.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/akotter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/bcrater.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/bcrater.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/bcrater.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/beige_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/beige_background.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/beige_background.jpg
new file mode 100755
index 0000000..8f034ba
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/beige_background.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/beige_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/beige_dotted_map.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/beige_dotted_map.png
new file mode 100755
index 0000000..e88d9ef
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/beige_dotted_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/blue_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/blue_background.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/blue_background.jpg
new file mode 100755
index 0000000..361ce0e
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/blue_background.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/blue_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/blue_dotted_map.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/blue_dotted_map.png
new file mode 100755
index 0000000..5fa6714
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/blue_dotted_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/button_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/button_cart_empty.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/button_cart_empty.png
new file mode 100644
index 0000000..0e1a2b5
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/button_cart_empty.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/button_cart_full.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/button_cart_full.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/button_cart_full.png
new file mode 100644
index 0000000..9c9eea0
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/button_cart_full.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/button_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/button_compare.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/button_compare.png
new file mode 100644
index 0000000..c2ac969
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/button_compare.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/button_details.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/button_details.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/button_details.png
new file mode 100644
index 0000000..3e6238c
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/button_details.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/button_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/button_tiles.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/button_tiles.png
new file mode 100644
index 0000000..4266a22
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/button_tiles.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/grip.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/grip.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/grip.png
new file mode 100755
index 0000000..64ee835
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/grip.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_cart_empty.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_cart_empty.png
new file mode 100644
index 0000000..562064b
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_cart_empty.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_compare.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_compare.png
new file mode 100644
index 0000000..efc3ea1
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_compare.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_magnifier.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_magnifier.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_magnifier.png
new file mode 100755
index 0000000..939f814
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_magnifier.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_tiles.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_tiles.png
new file mode 100644
index 0000000..dbf75b6
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/icon_tiles.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/jproctor.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/jproctor.jpg
new file mode 100755
index 0000000..1111787
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/jproctor.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/logo_blue.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/logo_blue.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/logo_blue.png
new file mode 100755
index 0000000..85bad70
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/logo_blue.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/logo_orange.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/logo_orange.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/logo_orange.png
new file mode 100755
index 0000000..0ce7dc4
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/logo_orange.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/abrilliam.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/abrilliam.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/abrilliam.jpg
new file mode 100755
index 0000000..6954858
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/abrilliam.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/akotter.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/akotter.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/akotter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bcrater.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bcrater.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bcrater.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bleporte.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bleporte.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bleporte.jpg
new file mode 100755
index 0000000..c4769e8
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bleporte.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bvanbrocklin.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bvanbrocklin.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bvanbrocklin.jpg
new file mode 100755
index 0000000..489fa2e
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/bvanbrocklin.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/ccarpenter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/ccarpenter.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/ccarpenter.jpg
new file mode 100755
index 0000000..c1dc3d8
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/ccarpenter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/clampberto.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/clampberto.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/clampberto.jpg
new file mode 100755
index 0000000..9deacd2
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/clampberto.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/davenon.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/davenon.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/davenon.jpg
new file mode 100755
index 0000000..6a2a142
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/davenon.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/dmcgoyal.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/dmcgoyal.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/dmcgoyal.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/dmcgoyal.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/dwillhelm.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/dwillhelm.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/dwillhelm.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/dwillhelm.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/esunderland.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/esunderland.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/esunderland.jpg
new file mode 100755
index 0000000..c4769e8
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/esunderland.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/jproctor.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/jproctor.jpg
new file mode 100755
index 0000000..1111787
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/jproctor.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/mfields.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/mfields.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/mfields.jpg
new file mode 100755
index 0000000..489fa2e
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/mfields.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/pdempsey.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/pdempsey.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/pdempsey.jpg
new file mode 100755
index 0000000..9deacd2
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/pdempsey.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/ptranep.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/ptranep.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/ptranep.jpg
new file mode 100755
index 0000000..4b9a03b
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/ptranep.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/rcrawley.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/rcrawley.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/rcrawley.jpg
new file mode 100755
index 0000000..9b60320
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/rcrawley.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/rdreifus.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/rdreifus.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/rdreifus.jpg
new file mode 100755
index 0000000..6a2a142
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/rdreifus.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/twong.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/twong.jpg b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/twong.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/pic/twong.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_a.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_a.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_a.png
new file mode 100755
index 0000000..20c21e1
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_a.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_b.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_b.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_b.png
new file mode 100755
index 0000000..069ccd8
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_b.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_c.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_c.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_c.png
new file mode 100755
index 0000000..f6b587e
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_c.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_plus.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_plus.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_plus.png
new file mode 100755
index 0000000..4192088
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/support_mapmarker_plus.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/assets/trashcan.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/assets/trashcan.png b/examples/flexjs/FlexJSStore/src/main/resources/assets/trashcan.png
new file mode 100644
index 0000000..483a37c
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/resources/assets/trashcan.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore/src/main/resources/data/catalog.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/resources/data/catalog.json b/examples/flexjs/FlexJSStore/src/main/resources/data/catalog.json
new file mode 100755
index 0000000..89bdd43
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/resources/data/catalog.json
@@ -0,0 +1,236 @@
+{ catalog : [
+
+    { "productId" :"1",
+      "name" : "Andrew Brilliam",
+      "description" : "15 years experience. 8 years with Flex.  Specializing in Text Layout Framework",
+      "price" : 60.00,
+      "image" : "assets/pic/abrilliam.jpg",
+      "experience" : 15,
+      "blazeds" : false,
+      "mobile" : false,
+      "video" : false,
+      "highlight1" : "Text Layout Framework",
+	  "highlight2" : "Parsley"
+    },
+    
+    { "productId" : "2",
+        "name" : "Annette Kotter",
+        "description" : "Specializing in custom components.  PHP servers.",
+        "price" : 55,
+        "image" : "assets/pic/akotter.jpg",
+        "experience" : 3,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "Custom Components",
+		"highlight2" : "PHP"
+    },
+
+    { "productId" : "3",
+        "name" : "Ben Crater",
+        "description" : "Specializing in BlazeDS backends.",
+        "price" : 55,
+        "image" : "assets/pic/bcrater.jpg",
+        "experience" : 4,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Remote Object"
+    },
+
+    { "productId" : "4",
+        "name" : "Beth Leporte",
+        "description" : "BlazeDS or PHP servers.  Multimedia messagin.",
+        "price" : 70.00,
+        "image" : "assets/pic/bleporte.jpg",
+        "experience" : 6,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "Multimedia messaging",
+		"highlight2" : "BlazeDS"
+    },
+
+    { "productId" : "5",
+        "name" : "Brad Van Brocklin",
+        "description" : "Emphasis on mobile application development",
+        "price" : 80,
+        "image" : "assets/pic/bvanbrocklin.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : false,
+        "highlight1" : "Mobile",
+		"highlight2" : "Android"
+    },
+
+    { "productId" : "6",
+        "name" : "Carlos Carpenter",
+        "description" : "Built many mobile apps and video apps.",
+        "price" : 80,
+        "image" : "assets/pic/ccarpenter.jpg",
+        "experience" : 4,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Mobile",
+		"highlight2" : "Video"
+    },
+
+    { "productId" : "7",
+        "name" : "Christine Lampberto",
+        "description" : "7 years experience building mobile applications.",
+        "price" : 90,
+        "image" : "assets/pic/clampberto.jpg",
+        "experience" : 7,
+        "blazeds" : true,
+        "mobile" : true,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Mobile"
+    },
+
+    { "productId" : "8",
+        "name" : "Dee Dee Avenon",
+        "description" : "I've been making video apps for over 5 years and mobile apps for about 3 years.",
+        "price" : 100,
+        "image" : "assets/pic/davenon.jpg",
+        "experience" : 10,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "9",
+        "name" : "Denise McGoyal",
+        "description" : "Specializing in video sharing applicaions.  MObile apps too.",
+        "price" : 100,
+        "image" : "assets/pic/dmcgoyal.jpg",
+        "experience" : 5,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "10",
+        "name" : "Daniel Willhelm",
+        "description" : "I'm into mobile apps, video apps and social apps.",
+        "price" : 70,
+        "image" : "assets/pic/dwillhelm.jpg",
+        "experience" : 90,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "11",
+        "name" : "Eunice Sunderland",
+        "description" : "My recent focus is on mobile apps, but I have considerable experience in video apps as well.",
+        "price" : 150,
+        "image" : "assets/pic/esunderland.jpg",
+        "experience" : 30,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "12",
+        "name" : "Jane Proctor",
+        "description" : "I've been developing mobile companion apps for the past 3 years.",
+        "price" : 75,
+        "image" : "assets/pic/jproctor.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "13",
+        "name" : "Mark Fields",
+        "description" : "Video is my favorite thing.  Mobile is also a favorite.",
+        "price" : 60,
+        "image" : "assets/pic/mfields.jpg",
+        "experience" : 70,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "14",
+        "name" : "Patricia Dempsey",
+        "description" : "I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.",
+        "price" : 120,
+        "image" : "assets/pic/pdempsey.jpg",
+        "experience" : 7,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "15",
+        "name" : "Paul Trandep",
+        "description" : "I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'",
+        "price" : 50,
+        "image" : "assets/pic/ptranep.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "16",
+        "name" : "Roscoe Crawley",
+        "description" : "My main specialty is in BlazeDS connected to Flex.",
+        "price" : 59,
+        "image" : "assets/pic/rcrawley.jpg",
+        "experience" : 9,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Remote Object"
+    },
+
+    { "productId" : "17",
+        "name" : "Renee Dreifus",
+            "description" : "I can do it all: BlazeDS, Mobile, Video.",
+        "price" : 79,
+        "image" : "assets/pic/rdreifus.jpg",
+        "experience" : 90,
+        "blazeds" : true,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "18",
+        "name" : "Tina Wong",
+        "description" : "I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.",
+        "price" : 109,
+        "image" : "assets/pic/twong.jpg",
+        "experience" : 9,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    
+];

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/427px-Bayarea_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/427px-Bayarea_map.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/427px-Bayarea_map.png
deleted file mode 100644
index a183699..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/427px-Bayarea_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/akotter.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/akotter.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/akotter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/bcrater.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/bcrater.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/bcrater.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_background.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_background.jpg
deleted file mode 100755
index 8f034ba..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_background.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_dotted_map.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_dotted_map.png
deleted file mode 100755
index e88d9ef..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_dotted_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_background.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_background.jpg
deleted file mode 100755
index 361ce0e..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_background.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_dotted_map.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_dotted_map.png
deleted file mode 100755
index 5fa6714..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_dotted_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_empty.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_empty.png
deleted file mode 100644
index 0e1a2b5..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_empty.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_full.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_full.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_full.png
deleted file mode 100644
index 9c9eea0..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_full.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_compare.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_compare.png
deleted file mode 100644
index c2ac969..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_compare.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_details.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_details.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_details.png
deleted file mode 100644
index 3e6238c..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_details.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_tiles.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_tiles.png
deleted file mode 100644
index 4266a22..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_tiles.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/grip.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/grip.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/grip.png
deleted file mode 100755
index 64ee835..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/grip.png and /dev/null differ


[24/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Moved resources to the src/main/resources directories - Adjusted the config to use the maven-resources-plugin for copying the resources

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_cart_empty.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_cart_empty.png
deleted file mode 100644
index 562064b..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_cart_empty.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_compare.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_compare.png
deleted file mode 100644
index efc3ea1..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_compare.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_magnifier.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_magnifier.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_magnifier.png
deleted file mode 100755
index 939f814..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_magnifier.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_tiles.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_tiles.png
deleted file mode 100644
index dbf75b6..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_tiles.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/jproctor.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/jproctor.jpg
deleted file mode 100755
index 1111787..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/jproctor.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_blue.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_blue.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_blue.png
deleted file mode 100755
index 85bad70..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_blue.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_orange.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_orange.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_orange.png
deleted file mode 100755
index e3ff7a6..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_orange.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/abrilliam.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/abrilliam.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/abrilliam.jpg
deleted file mode 100755
index 6954858..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/abrilliam.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/akotter.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/akotter.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/akotter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bcrater.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bcrater.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bcrater.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bleporte.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bleporte.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bleporte.jpg
deleted file mode 100755
index c4769e8..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bleporte.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bvanbrocklin.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bvanbrocklin.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bvanbrocklin.jpg
deleted file mode 100755
index 489fa2e..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bvanbrocklin.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ccarpenter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ccarpenter.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ccarpenter.jpg
deleted file mode 100755
index c1dc3d8..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ccarpenter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/clampberto.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/clampberto.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/clampberto.jpg
deleted file mode 100755
index 9deacd2..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/clampberto.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/davenon.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/davenon.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/davenon.jpg
deleted file mode 100755
index 6a2a142..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/davenon.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dmcgoyal.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dmcgoyal.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dmcgoyal.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dmcgoyal.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dwillhelm.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dwillhelm.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dwillhelm.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dwillhelm.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/esunderland.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/esunderland.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/esunderland.jpg
deleted file mode 100755
index c4769e8..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/esunderland.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/jproctor.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/jproctor.jpg
deleted file mode 100755
index 1111787..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/jproctor.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/mfields.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/mfields.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/mfields.jpg
deleted file mode 100755
index 489fa2e..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/mfields.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/pdempsey.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/pdempsey.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/pdempsey.jpg
deleted file mode 100755
index 9deacd2..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/pdempsey.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ptranep.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ptranep.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ptranep.jpg
deleted file mode 100755
index 4b9a03b..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ptranep.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rcrawley.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rcrawley.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rcrawley.jpg
deleted file mode 100755
index 9b60320..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rcrawley.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rdreifus.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rdreifus.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rdreifus.jpg
deleted file mode 100755
index 6a2a142..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rdreifus.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/twong.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/twong.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/twong.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/twong.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_a.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_a.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_a.png
deleted file mode 100755
index 20c21e1..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_a.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_b.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_b.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_b.png
deleted file mode 100755
index 069ccd8..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_b.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_c.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_c.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_c.png
deleted file mode 100755
index f6b587e..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_c.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_plus.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_plus.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_plus.png
deleted file mode 100755
index 4192088..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_plus.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/trashcan.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/trashcan.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/trashcan.png
deleted file mode 100644
index 483a37c..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/trashcan.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.json b/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.json
deleted file mode 100755
index 89bdd43..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.json
+++ /dev/null
@@ -1,236 +0,0 @@
-{ catalog : [
-
-    { "productId" :"1",
-      "name" : "Andrew Brilliam",
-      "description" : "15 years experience. 8 years with Flex.  Specializing in Text Layout Framework",
-      "price" : 60.00,
-      "image" : "assets/pic/abrilliam.jpg",
-      "experience" : 15,
-      "blazeds" : false,
-      "mobile" : false,
-      "video" : false,
-      "highlight1" : "Text Layout Framework",
-	  "highlight2" : "Parsley"
-    },
-    
-    { "productId" : "2",
-        "name" : "Annette Kotter",
-        "description" : "Specializing in custom components.  PHP servers.",
-        "price" : 55,
-        "image" : "assets/pic/akotter.jpg",
-        "experience" : 3,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "Custom Components",
-		"highlight2" : "PHP"
-    },
-
-    { "productId" : "3",
-        "name" : "Ben Crater",
-        "description" : "Specializing in BlazeDS backends.",
-        "price" : 55,
-        "image" : "assets/pic/bcrater.jpg",
-        "experience" : 4,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Remote Object"
-    },
-
-    { "productId" : "4",
-        "name" : "Beth Leporte",
-        "description" : "BlazeDS or PHP servers.  Multimedia messagin.",
-        "price" : 70.00,
-        "image" : "assets/pic/bleporte.jpg",
-        "experience" : 6,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "Multimedia messaging",
-		"highlight2" : "BlazeDS"
-    },
-
-    { "productId" : "5",
-        "name" : "Brad Van Brocklin",
-        "description" : "Emphasis on mobile application development",
-        "price" : 80,
-        "image" : "assets/pic/bvanbrocklin.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : false,
-        "highlight1" : "Mobile",
-		"highlight2" : "Android"
-    },
-
-    { "productId" : "6",
-        "name" : "Carlos Carpenter",
-        "description" : "Built many mobile apps and video apps.",
-        "price" : 80,
-        "image" : "assets/pic/ccarpenter.jpg",
-        "experience" : 4,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Mobile",
-		"highlight2" : "Video"
-    },
-
-    { "productId" : "7",
-        "name" : "Christine Lampberto",
-        "description" : "7 years experience building mobile applications.",
-        "price" : 90,
-        "image" : "assets/pic/clampberto.jpg",
-        "experience" : 7,
-        "blazeds" : true,
-        "mobile" : true,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Mobile"
-    },
-
-    { "productId" : "8",
-        "name" : "Dee Dee Avenon",
-        "description" : "I've been making video apps for over 5 years and mobile apps for about 3 years.",
-        "price" : 100,
-        "image" : "assets/pic/davenon.jpg",
-        "experience" : 10,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "9",
-        "name" : "Denise McGoyal",
-        "description" : "Specializing in video sharing applicaions.  MObile apps too.",
-        "price" : 100,
-        "image" : "assets/pic/dmcgoyal.jpg",
-        "experience" : 5,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "10",
-        "name" : "Daniel Willhelm",
-        "description" : "I'm into mobile apps, video apps and social apps.",
-        "price" : 70,
-        "image" : "assets/pic/dwillhelm.jpg",
-        "experience" : 90,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "11",
-        "name" : "Eunice Sunderland",
-        "description" : "My recent focus is on mobile apps, but I have considerable experience in video apps as well.",
-        "price" : 150,
-        "image" : "assets/pic/esunderland.jpg",
-        "experience" : 30,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "12",
-        "name" : "Jane Proctor",
-        "description" : "I've been developing mobile companion apps for the past 3 years.",
-        "price" : 75,
-        "image" : "assets/pic/jproctor.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "13",
-        "name" : "Mark Fields",
-        "description" : "Video is my favorite thing.  Mobile is also a favorite.",
-        "price" : 60,
-        "image" : "assets/pic/mfields.jpg",
-        "experience" : 70,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "14",
-        "name" : "Patricia Dempsey",
-        "description" : "I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.",
-        "price" : 120,
-        "image" : "assets/pic/pdempsey.jpg",
-        "experience" : 7,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "15",
-        "name" : "Paul Trandep",
-        "description" : "I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'",
-        "price" : 50,
-        "image" : "assets/pic/ptranep.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "16",
-        "name" : "Roscoe Crawley",
-        "description" : "My main specialty is in BlazeDS connected to Flex.",
-        "price" : 59,
-        "image" : "assets/pic/rcrawley.jpg",
-        "experience" : 9,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Remote Object"
-    },
-
-    { "productId" : "17",
-        "name" : "Renee Dreifus",
-            "description" : "I can do it all: BlazeDS, Mobile, Video.",
-        "price" : 79,
-        "image" : "assets/pic/rdreifus.jpg",
-        "experience" : 90,
-        "blazeds" : true,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "18",
-        "name" : "Tina Wong",
-        "description" : "I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.",
-        "price" : 109,
-        "image" : "assets/pic/twong.jpg",
-        "experience" : 9,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    
-];

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/427px-Bayarea_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/427px-Bayarea_map.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/427px-Bayarea_map.png
new file mode 100644
index 0000000..a183699
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/427px-Bayarea_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/akotter.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/akotter.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/akotter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/bcrater.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/bcrater.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/bcrater.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/beige_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/beige_background.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/beige_background.jpg
new file mode 100755
index 0000000..8f034ba
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/beige_background.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/beige_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/beige_dotted_map.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/beige_dotted_map.png
new file mode 100755
index 0000000..e88d9ef
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/beige_dotted_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/blue_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/blue_background.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/blue_background.jpg
new file mode 100755
index 0000000..361ce0e
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/blue_background.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/blue_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/blue_dotted_map.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/blue_dotted_map.png
new file mode 100755
index 0000000..5fa6714
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/blue_dotted_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_cart_empty.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_cart_empty.png
new file mode 100644
index 0000000..0e1a2b5
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_cart_empty.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_cart_full.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_cart_full.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_cart_full.png
new file mode 100644
index 0000000..9c9eea0
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_cart_full.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_compare.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_compare.png
new file mode 100644
index 0000000..c2ac969
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_compare.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_details.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_details.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_details.png
new file mode 100644
index 0000000..3e6238c
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_details.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_tiles.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_tiles.png
new file mode 100644
index 0000000..4266a22
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/button_tiles.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/grip.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/grip.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/grip.png
new file mode 100755
index 0000000..64ee835
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/grip.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_cart_empty.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_cart_empty.png
new file mode 100644
index 0000000..562064b
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_cart_empty.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_compare.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_compare.png
new file mode 100644
index 0000000..efc3ea1
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_compare.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_magnifier.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_magnifier.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_magnifier.png
new file mode 100755
index 0000000..939f814
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_magnifier.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_tiles.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_tiles.png
new file mode 100644
index 0000000..dbf75b6
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/icon_tiles.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/jproctor.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/jproctor.jpg
new file mode 100755
index 0000000..1111787
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/jproctor.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/logo_blue.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/logo_blue.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/logo_blue.png
new file mode 100755
index 0000000..85bad70
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/logo_blue.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/logo_orange.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/logo_orange.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/logo_orange.png
new file mode 100755
index 0000000..e3ff7a6
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/logo_orange.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/abrilliam.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/abrilliam.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/abrilliam.jpg
new file mode 100755
index 0000000..6954858
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/abrilliam.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/akotter.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/akotter.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/akotter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bcrater.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bcrater.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bcrater.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bleporte.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bleporte.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bleporte.jpg
new file mode 100755
index 0000000..c4769e8
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bleporte.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bvanbrocklin.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bvanbrocklin.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bvanbrocklin.jpg
new file mode 100755
index 0000000..489fa2e
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/bvanbrocklin.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/ccarpenter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/ccarpenter.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/ccarpenter.jpg
new file mode 100755
index 0000000..c1dc3d8
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/ccarpenter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/clampberto.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/clampberto.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/clampberto.jpg
new file mode 100755
index 0000000..9deacd2
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/clampberto.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/davenon.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/davenon.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/davenon.jpg
new file mode 100755
index 0000000..6a2a142
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/davenon.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/dmcgoyal.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/dmcgoyal.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/dmcgoyal.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/dmcgoyal.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/dwillhelm.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/dwillhelm.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/dwillhelm.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/dwillhelm.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/esunderland.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/esunderland.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/esunderland.jpg
new file mode 100755
index 0000000..c4769e8
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/esunderland.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/jproctor.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/jproctor.jpg
new file mode 100755
index 0000000..1111787
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/jproctor.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/mfields.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/mfields.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/mfields.jpg
new file mode 100755
index 0000000..489fa2e
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/mfields.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/pdempsey.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/pdempsey.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/pdempsey.jpg
new file mode 100755
index 0000000..9deacd2
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/pdempsey.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/ptranep.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/ptranep.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/ptranep.jpg
new file mode 100755
index 0000000..4b9a03b
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/ptranep.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/rcrawley.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/rcrawley.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/rcrawley.jpg
new file mode 100755
index 0000000..9b60320
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/rcrawley.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/rdreifus.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/rdreifus.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/rdreifus.jpg
new file mode 100755
index 0000000..6a2a142
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/rdreifus.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/twong.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/twong.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/twong.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/pic/twong.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_a.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_a.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_a.png
new file mode 100755
index 0000000..20c21e1
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_a.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_b.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_b.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_b.png
new file mode 100755
index 0000000..069ccd8
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_b.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_c.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_c.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_c.png
new file mode 100755
index 0000000..f6b587e
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_c.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_plus.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_plus.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_plus.png
new file mode 100755
index 0000000..4192088
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/support_mapmarker_plus.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/trashcan.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/trashcan.png b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/trashcan.png
new file mode 100644
index 0000000..483a37c
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/resources/assets/trashcan.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/FlexJSStore_jquery/src/main/resources/data/catalog.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/resources/data/catalog.json b/examples/flexjs/FlexJSStore_jquery/src/main/resources/data/catalog.json
new file mode 100755
index 0000000..89bdd43
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/resources/data/catalog.json
@@ -0,0 +1,236 @@
+{ catalog : [
+
+    { "productId" :"1",
+      "name" : "Andrew Brilliam",
+      "description" : "15 years experience. 8 years with Flex.  Specializing in Text Layout Framework",
+      "price" : 60.00,
+      "image" : "assets/pic/abrilliam.jpg",
+      "experience" : 15,
+      "blazeds" : false,
+      "mobile" : false,
+      "video" : false,
+      "highlight1" : "Text Layout Framework",
+	  "highlight2" : "Parsley"
+    },
+    
+    { "productId" : "2",
+        "name" : "Annette Kotter",
+        "description" : "Specializing in custom components.  PHP servers.",
+        "price" : 55,
+        "image" : "assets/pic/akotter.jpg",
+        "experience" : 3,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "Custom Components",
+		"highlight2" : "PHP"
+    },
+
+    { "productId" : "3",
+        "name" : "Ben Crater",
+        "description" : "Specializing in BlazeDS backends.",
+        "price" : 55,
+        "image" : "assets/pic/bcrater.jpg",
+        "experience" : 4,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Remote Object"
+    },
+
+    { "productId" : "4",
+        "name" : "Beth Leporte",
+        "description" : "BlazeDS or PHP servers.  Multimedia messagin.",
+        "price" : 70.00,
+        "image" : "assets/pic/bleporte.jpg",
+        "experience" : 6,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "Multimedia messaging",
+		"highlight2" : "BlazeDS"
+    },
+
+    { "productId" : "5",
+        "name" : "Brad Van Brocklin",
+        "description" : "Emphasis on mobile application development",
+        "price" : 80,
+        "image" : "assets/pic/bvanbrocklin.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : false,
+        "highlight1" : "Mobile",
+		"highlight2" : "Android"
+    },
+
+    { "productId" : "6",
+        "name" : "Carlos Carpenter",
+        "description" : "Built many mobile apps and video apps.",
+        "price" : 80,
+        "image" : "assets/pic/ccarpenter.jpg",
+        "experience" : 4,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Mobile",
+		"highlight2" : "Video"
+    },
+
+    { "productId" : "7",
+        "name" : "Christine Lampberto",
+        "description" : "7 years experience building mobile applications.",
+        "price" : 90,
+        "image" : "assets/pic/clampberto.jpg",
+        "experience" : 7,
+        "blazeds" : true,
+        "mobile" : true,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Mobile"
+    },
+
+    { "productId" : "8",
+        "name" : "Dee Dee Avenon",
+        "description" : "I've been making video apps for over 5 years and mobile apps for about 3 years.",
+        "price" : 100,
+        "image" : "assets/pic/davenon.jpg",
+        "experience" : 10,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "9",
+        "name" : "Denise McGoyal",
+        "description" : "Specializing in video sharing applicaions.  MObile apps too.",
+        "price" : 100,
+        "image" : "assets/pic/dmcgoyal.jpg",
+        "experience" : 5,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "10",
+        "name" : "Daniel Willhelm",
+        "description" : "I'm into mobile apps, video apps and social apps.",
+        "price" : 70,
+        "image" : "assets/pic/dwillhelm.jpg",
+        "experience" : 90,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "11",
+        "name" : "Eunice Sunderland",
+        "description" : "My recent focus is on mobile apps, but I have considerable experience in video apps as well.",
+        "price" : 150,
+        "image" : "assets/pic/esunderland.jpg",
+        "experience" : 30,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "12",
+        "name" : "Jane Proctor",
+        "description" : "I've been developing mobile companion apps for the past 3 years.",
+        "price" : 75,
+        "image" : "assets/pic/jproctor.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "13",
+        "name" : "Mark Fields",
+        "description" : "Video is my favorite thing.  Mobile is also a favorite.",
+        "price" : 60,
+        "image" : "assets/pic/mfields.jpg",
+        "experience" : 70,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "14",
+        "name" : "Patricia Dempsey",
+        "description" : "I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.",
+        "price" : 120,
+        "image" : "assets/pic/pdempsey.jpg",
+        "experience" : 7,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "15",
+        "name" : "Paul Trandep",
+        "description" : "I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'",
+        "price" : 50,
+        "image" : "assets/pic/ptranep.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "16",
+        "name" : "Roscoe Crawley",
+        "description" : "My main specialty is in BlazeDS connected to Flex.",
+        "price" : 59,
+        "image" : "assets/pic/rcrawley.jpg",
+        "experience" : 9,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Remote Object"
+    },
+
+    { "productId" : "17",
+        "name" : "Renee Dreifus",
+            "description" : "I can do it all: BlazeDS, Mobile, Video.",
+        "price" : 79,
+        "image" : "assets/pic/rdreifus.jpg",
+        "experience" : 90,
+        "blazeds" : true,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "18",
+        "name" : "Tina Wong",
+        "description" : "I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.",
+        "price" : 109,
+        "image" : "assets/pic/twong.jpg",
+        "experience" : 9,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    
+];

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileStocks/src/main/flex/assets/arrow_left_24.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/assets/arrow_left_24.png b/examples/flexjs/MobileStocks/src/main/flex/assets/arrow_left_24.png
deleted file mode 100755
index a3019ba..0000000
Binary files a/examples/flexjs/MobileStocks/src/main/flex/assets/arrow_left_24.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileStocks/src/main/flex/assets/background.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/assets/background.png b/examples/flexjs/MobileStocks/src/main/flex/assets/background.png
deleted file mode 100755
index 87bbd59..0000000
Binary files a/examples/flexjs/MobileStocks/src/main/flex/assets/background.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileStocks/src/main/flex/assets/logo.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/assets/logo.png b/examples/flexjs/MobileStocks/src/main/flex/assets/logo.png
deleted file mode 100755
index 0fb0f21..0000000
Binary files a/examples/flexjs/MobileStocks/src/main/flex/assets/logo.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileStocks/src/main/resources/assets/arrow_left_24.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/resources/assets/arrow_left_24.png b/examples/flexjs/MobileStocks/src/main/resources/assets/arrow_left_24.png
new file mode 100755
index 0000000..a3019ba
Binary files /dev/null and b/examples/flexjs/MobileStocks/src/main/resources/assets/arrow_left_24.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileStocks/src/main/resources/assets/background.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/resources/assets/background.png b/examples/flexjs/MobileStocks/src/main/resources/assets/background.png
new file mode 100755
index 0000000..87bbd59
Binary files /dev/null and b/examples/flexjs/MobileStocks/src/main/resources/assets/background.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileStocks/src/main/resources/assets/logo.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/resources/assets/logo.png b/examples/flexjs/MobileStocks/src/main/resources/assets/logo.png
new file mode 100755
index 0000000..0fb0f21
Binary files /dev/null and b/examples/flexjs/MobileStocks/src/main/resources/assets/logo.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileTrader/src/main/flex/assets/arrow_left_24.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/assets/arrow_left_24.png b/examples/flexjs/MobileTrader/src/main/flex/assets/arrow_left_24.png
deleted file mode 100755
index a3019ba..0000000
Binary files a/examples/flexjs/MobileTrader/src/main/flex/assets/arrow_left_24.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileTrader/src/main/flex/assets/background.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/assets/background.png b/examples/flexjs/MobileTrader/src/main/flex/assets/background.png
deleted file mode 100755
index 87bbd59..0000000
Binary files a/examples/flexjs/MobileTrader/src/main/flex/assets/background.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileTrader/src/main/flex/assets/logo.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/flex/assets/logo.png b/examples/flexjs/MobileTrader/src/main/flex/assets/logo.png
deleted file mode 100755
index 0fb0f21..0000000
Binary files a/examples/flexjs/MobileTrader/src/main/flex/assets/logo.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileTrader/src/main/resources/assets/arrow_left_24.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/resources/assets/arrow_left_24.png b/examples/flexjs/MobileTrader/src/main/resources/assets/arrow_left_24.png
new file mode 100755
index 0000000..a3019ba
Binary files /dev/null and b/examples/flexjs/MobileTrader/src/main/resources/assets/arrow_left_24.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileTrader/src/main/resources/assets/background.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/resources/assets/background.png b/examples/flexjs/MobileTrader/src/main/resources/assets/background.png
new file mode 100755
index 0000000..87bbd59
Binary files /dev/null and b/examples/flexjs/MobileTrader/src/main/resources/assets/background.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/MobileTrader/src/main/resources/assets/logo.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/main/resources/assets/logo.png b/examples/flexjs/MobileTrader/src/main/resources/assets/logo.png
new file mode 100755
index 0000000..0fb0f21
Binary files /dev/null and b/examples/flexjs/MobileTrader/src/main/resources/assets/logo.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a07e0a2e/examples/flexjs/TeamPage/src/main/flex/team.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/team.json b/examples/flexjs/TeamPage/src/main/flex/team.json
deleted file mode 100644
index b082f40..0000000
--- a/examples/flexjs/TeamPage/src/main/flex/team.json
+++ /dev/null
@@ -1,504 +0,0 @@
-/*
- *
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You 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.
- *
- */
- 
- { "template": {
-	"name": "put here name here",
-	"title": "put your apache.org title here or leave blank",
-	"photoURL": "put the url to your uploaded photo here",
-	"url": "not used at the moment but should point to a personal site",
-	"bio": "put your official Apache Flex bio here. If you use HTML, be sure to use single quote (apostrophes)",
-	"twitter": "put your URL here or leave blank",
-	"facebook": "put your URL here or leave blank",
-	"github": "put your URL here or leave blank",
-	"googleplus": "put your URL here or leave blank",
-	"rss": "put your URL here or leave blank",
-	"wordpress": "put your URL here or leave blank"
-  },
-
-  "members": [
-	{"name": "Alex Harui",
-     "title": "PMC Chair of Apache Flex",
-     "apacheID": "aharui (C+P)",
-	 "photoURL": "images/headshots/aharui.jpg",
-     "url": "http://www.apache.org/alex",
-     "bio": "Alex Harui has been working on the Flex SDK since he joined Macromedia in 2002. He is now spending most of his time on a next-generation of Flex called FlexJS that cross-compiles MXML and ActionScript into JavaScript so your Flex apps can run without Flash and AIR",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-	{"name": "Carlos Rovira",
-     "title": "",
-     "apacheID": "carlosrovira",
-	 "photoURL": "images/headshots/carlosrovira.jpg",
-     "url": "http://www.apache.org/carlos",
-     "bio": "Carlos Rovira is a technologist, entrepreneur and businessman. He is passionate about advanced web interfaces and rich multi-device business applications. He is extremely happy when their applications are useful for people, combining functionality and usability. He's founder of various companies including carlosrovira.com in 2007 and Codeoscopic in 2009. He's the technical leader behind the Riality Flex/JEE Platform and other successful insurance software products like Direct Writer and Avant 2",
-     "twitter":"http://www.twitter.com/carlosrovira",
-     "linkedIn":"http://es.linkedin.com/in/carlosrovira/",
-     "facebook":"",
-     "github":"http://www.github.com/carlosrovira",
-     "googleplus":"https://plus.google.com/115670167046758349523",
-     "rss":"http://www.carlosrovira.com/blog/feed/"
-    },
-    
-    {"name": "Carol Frampton",
-     "title": "",
-     "apacheID": "cframpton (C+P)",
-     "photoURL": "images/headshots/cframpton.jpg",
-     "bio": "Carol is a software engineer at Adobe, based outside of Boston.  She worked on Adobe Flex for about five years - FTE and TLF text with Gordon, Spark DataGrid, mirroring and the top bug fixer for the last couple of years - then transitioned with Flex to Apache. Release manager for Apache Flex 4.8.0.  Being a generalist, she's worked on a wide variety of software, including ColdFusion and JRun, kernel-level networking code and distributed networking software. ",
-     "twitter":"",
-     "linkedIn":"http://www.linkedin.com/in/carolframpton",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Chema Balsas",
-     "title": "",
-     "apacheID": "jbalsas (C)",
-     "photoURL": "images/headshots/jbalsas.jpg",
-     "bio": "Web application developer. Focusing on JS right now and trying to help with Falcon and FalconJS as an Apache Flex Commiter.",
-     "twitter":"http://www.twitter.com/jbalsas",
-     "linkedIn":"http://www.linkedin.com/in/jbalsas",
-     "facebook":"",
-     "github":"http://www.github.com/jbalsas",
-     "googleplus":"https://plus.google.com/109872083963647761639",
-     "rss":""
-    },
-    
-    {"name": "Christofer Dutz",
-     "title": "",
-     "apacheID": "cdutz (C+P)",
-     "photoURL": "images/headshots/cdutz.jpg",
-     "bio": "Christofer is a software engineer secialized on Flex, Java, Spring and Maven. He is the lead developer of the <a href='https://flexmojos.atlassian.net/wiki/display/FLEXMOJOS/Home' target='_blank'>Flexmojos</a> project (Maven plugin for building Flex applications) after taking over from Velo in 2012. His main areas of contribution to the Apache Flex project is creating a tool for creating Mavenized versions of Flex SDKs, continuing to advance Flex' Maven support.",
-     "twitter":"http://de.twitter.com/ChristoferDutz",
-     "linkedIn":"http://www.linkedin.com/pub/christofer-dutz/49/9b6/424",
-     "facebook":"",
-     "github":"http://github.com/chrisdutz",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Chris Martin",
-     "title": "",
-     "apacheID": "chrsmrtn (C+P)",
-     "photoURL": "images/headshots/chrsmrtn.jpg",
-     "bio": "Chris has been doing Flex UI development since Flex 2 and is very excited to be apart of the Apache Flex Team. With the Apache Flex Team, he feels that the Flex SDK has a bright future. He looks to help with the flex sdk bug verification and patching.",
-     "twitter":"http://www.twitter.com/chrsmrtn",
-     "linkedIn":"http://es.linkedin.com/in/chrsmrtn/",
-     "facebook":"",
-     "github":"http://www.github.com/chrsmrtn-",
-     "googleplus":"https://plus.google.com/+chrismartinplus",
-     "wordpress":"http://chrsmrtn.azurewebsites.net",
-     "rss":""
-    },
-    
-    {"name": "DarkStone (\u5468\u6208)",
-     "title": "",
-     "apacheID": "darkstone (C)",
-     "photoURL": "images/headshots/darkstone.png",
-     "bio": "DarkStone has been doing Flash since 2002, doing Flex since 2006, doing PHP since 2007, he is both a designer and a developer.<br/><br/>He had several jobs, last job he was a product manager for 3 years, had done several RIA  products. <p>Since 2013 he quit his job and started his own studio, forging his own path.<br/><br/>Now he's goal is to develop mobile and desktop platform apps (using Flex and PHP etc.) and sell them to the AppStore.<br/><br/>Basically, make the money first, and try to change the world later ; )</p><p>He is now living in Wuhan city of China.",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Douglas Arthur",
-     "title": "",
-     "apacheID": "dougarthur (C+P)",
-     "photoURL": "images/headshots/dougarthur.jpg",
-     "bio": "Douglas passed away in May, 2012.  He is deeply missed within our community.",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Erik de Bruin",
-     "title": "",
-     "apacheID": "erikdebruin (C+P)",
-     "photoURL": "images/headshots/erikdebruin.jpg",
-     "bio": "Erik is a software engineer (Flex/Flash, PHP, Delphi, Authorware, to name a few), e-learning consultant and occassional project manager. For the Apache Flex project he is a committer and part of the PMC. He has contributed the SDK Installer Badge, was contributor and co-release manager on the first release of the SDK Installer and is currently busy getting the FalconJx and FlexJS projects off the ground.",
-     "twitter":"",
-     "linkedIn":"http://www.linkedin.com/pub/erik-de-bruin/1/281/176",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Espen Skogen",
-     "title": "",
-     "apacheID": "espenskogen (C+P)",
-     "photoURL": "images/headshots/espenskogen.jpg",
-     "bio": "Espen is a Vice President at JP Morgan, where he is leading the development of client facing trading technology. Espen was one of the initial committers and PMC members of Apache Flex. ",
-     "twitter":"",
-     "linkedIn":"http://uk.linkedin.com/in/espenskogen",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Fr�d�ric Thomas",
-     "title": "",
-     "apacheID": "fthomas (C+P)",
-     "photoURL": "images/headshots/fthomas.jpg",
-     "bio": "Freelancer, software architect, Apache Flex PMC Member, trying to make the Flex world better.<br>(French)",
-     "twitter":"http://www.twitter.com/webdoublefx",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"https://plus.google.com/116545614452242070442/posts",
-     "rss":""
-    },
-    
-    {"name": "Gordon Smith",
-     "title": "",
-     "apacheID": "gordonsmith (C+P)",
-     "photoURL": "images/headshots/gordonsmith.png",
-     "bio": "Gordon is currently working on completing MXML support in the new Falcon compiler. He lives in San Francisco and works for Adobe.</p><p>Gordon was one of the original four engineers on a 2002 Macromedia project that became Flex, and worked on the Flex framework for eight years:<ul><li>Developed components for Flex 1.0.</li><li>Built a customer application with Flex 1.5.</li><li>Led the port to AS3 for Flex 2.</li><li>Designed and implemented the ResourceManager for Flex 3.</li><li>Integrated the FTE and TLF text technologies into Flex 4.</li></ul></p><p>Since 2010 he has been part of the compiler team at Adobe.</p>",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Harbs",
-     "title": "",
-     "apacheID": "harbs (C+P)",
-     "photoURL": "images/headshots/harbs.jpg",
-     "bio": "Harbs comes from a print background and his primary interest is in publishing. He keeps himself busy with his multiple technology businesses: <a href='http://in-tools.com'>In-Tools</a>, <a href='http://printui.com'>PrintUI</a> and <a href='http://unhurdle.com/'>UnHurdle</a>.  All three businesses rely heavily on Flex as one of the active technologies, so Harbs has a strong interest in Flex.<br/><br/>Harbs also spends his time studying Talmud, and with his wife and kids. If there's any time left, he gets a bit of sleep.",
-     "twitter":"http://www.twitter.com/intools",
-     "linkedIn":"http://www.linkedin.com/profile/view?id=46698545",
-     "facebook":"http://www.facebook.com/gharbs",
-     "github":"https://github.com/Harbs",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Jeffry Houser",
-     "title": "",
-     "apacheID": "jhouser (C+P)",
-     "photoURL": "images/headshots/jhouser.jpg",
-     "bio": "<a href='http://www.jeffryhouser.com'>Jeffry Houser</a> is a technical entrepreneur that likes to share cool stuff with other people. Jeffry is the Brains behind <a href='http://www.flextras.com'>Flextras</a>, a library of Open Source Flex Components including a Calendar, AutoComplete, and a Mobile DropDownList.<br/><br/> Jeffry is one of the initial contributors to Apache Flex and his primary interest lies in expanding the component library, especially for use in mobile applications.<br/><br/>In his spare time, Jeffry runs <a href='http://www.dot-com-it.com.'>DotComIt</a>, a consulting firm developing Rich Internet Applications. He has spoken all over the US, is author of three books, over 30 articles, and hundreds of podcasts.",
-     "twitter":"http://www.twitter.com/reboog711",
-     "linkedIn":"http://www.linkedin.com/in/jeffryhouser",
-     "facebook":"http://www.facebook.com/reboog711",
-     "github":"https://github.com/Flextras/FlextrasComponents/",
-     "googleplus":"",
-     "rss":"http://www.jeffryhouser.com/rss.cfm?mode=full",
-     "rss2":"https://www.flextras.com/blog/rss.cfm?mode=full"
-    },
-    
-    {"name": "Jeremy Tellier",
-     "title": "",
-     "apacheID": "jtellier (C+P)",
-     "photoURL": "images/headshots/jtellier.jpg",
-     "bio": "Macromedia/Adobe Technology evangelist, architect, engineer, Jeremy has implemented a slew of Flash, Flex, & AIR based solutions for startups to fortune 100 companies over the past 15 years.<br/><br/>Jeremy works as a consultant at <a href='http://www.actieve.com' target='_blank'>Actieve</a> for Rich Mobile, Desktop & Web Based projects in which Flex is at the top of his preferred technology stack.<br/><br/>On a more personal note.... Jeremy feels awkward writing about himself in the third person.",
-     "twitter":"http://www.twitter.com/jtellier",
-     "linkedIn":"http://www.linkedin.com/in/jeremytellier/",
-     "facebook":"http://www.facebook.com/JeremyTellier",
-     "github":"",
-     "googleplus":"https://plus.google.com/115560858703396246574",
-     "rss":"",
-     "skype":"skype:JeremyTellier?chat"
-    },
-    
-    {"name": "Jose Barragan",
-     "title": "",
-     "apacheID": "josebarragan (C)",
-     "photoURL": "images/headshots/josebarragan.jpg",
-     "bio": "Jose Barragan is a Software Architect, with over 10 years experience in the enterprise sector. Has a big experience in design, development and implementation of high performance software in corporate environments. Has an extensive knowledge of Flex, Java, Spring, Hibernate, Maven, Git, being the technical co-leader behind the <a href='http://www.codeoscopic.com/tecnologia/riality/'>Riality</a> Flex/JEE Platform and other successful insurance software products like <a href='http://www.directwriter.es'>Direct Writer</a> and <a href='http://www.avant2.es'>Avant 2</a>. Restless mind and enthusiast of new technologies. Always learning from everything and everyone.",
-     "twitter":"http://www.twitter.com/morphx",
-     "linkedIn":"http://es.linkedin.com/in/pepebarragan/",
-     "facebook":"",
-     "github":"http://github.com/pepebarragan",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Joseph Labrecque",
-     "title": "",
-     "apacheID": "josephlabrecque (C)",
-     "photoURL": "images/headshots/josephlabrecque.jpg",
-     "bio": "Joseph Labrecque is primarily employed by the University of Denver as a senior interactive software engineer specializing in the creation of expressive desktop, web, and mobile solutions. He is also the proprietor of Fractured Vision Media, LLC. Joseph is an Adobe Education Leader and Adobe Community Professional.",
-     "twitter":"http://twitter.com/josephlabrecque",
-     "linkedIn":"http://www.linkedin.com/in/josephlabrecque",
-     "facebook":"https://www.facebook.com/joseph.labrecque",
-     "github":"https://github.com/josephlabrecque/",
-     "googleplus":"https://google.com/+JosephLabrecque/",
-     "rss":"http://www.lynda.com/JosephLabrecque",
-     "rss2":"http://inflagrantedelicto.memoryspiral.com/feed/",
-     "amazon":"http://www.amazon.com/-/e/B0057R7UO0",
-     "behance":"https://www.behance.net/JosephLabrecque",
-     "youtube":"https://www.youtube.com/channel/UCOznZ0dg3BwfhxwO2p90ejQ"
-    },
-    
-    {"name": "Josh Tynjala",
-     "title": "",
-     "apacheID": "joshtynjala (C+P)",
-     "photoURL": "images/headshots/joshtynjala.jpg",
-     "bio": "Josh Tynjala is the author of the open source <a href='http://feathersui.com/'>Feathers</a> user interface components for Starling Framework. In addition to improving the Apache FlexJS compilers, Josh teaches developers how to transpile ActionScript on his website, <a href='http://nextgenactionscript.com/'>NextGen ActionScript</a>",
-     "twitter":"https://twitter.com/joshtynjala",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"https://github.com/joshtynjala",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Jun Heider",
-     "title": "",
-     "apacheID": "junheider (C+P)",
-     "photoURL": "images/headshots/junheider.jpg",
-     "bio": "Helping Apache Flex grow through mentoring and community awareness. An officer of the Open Spoon Foundation. Cross-platform Flex mobile developer at RealEyes Media with a focus in video and multiuser applications. Adjunct Faculty at University of Denver, University College teaching students how to build native applications with Adobe AIR.",
-     "twitter":"http://twitter.com/coderjun",
-     "linkedIn":"http://www.linkedin.com/in/junheider",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Justin Mclean",
-     "title": "",
-     "apacheID": "jmclean (C+P)",
-     "photoURL": "images/headshots/jmclean.jpg",
-     "bio": "Experienced web application developer, certified trainer, international conference speaker and Arduino tinkerer. Interesting in making Apache Flex more international and work on a wider range of platforms. Added international postcode support and locales to Apache Flex 4.9.0. Release manager for Apache Flex 4.9.0.",
-     "twitter":"http://twitter.com/JustinMclean",
-     "linkedIn":"http://www.linkedin.com/in/justinmclean",
-     "facebook":"",
-     "github":"http://www.github.com/justinmclean",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Mahmoud Ali",
-     "title": "",
-     "apacheID": "akamud (C)",
-     "photoURL": "images/headshots/akamud.jpg",
-     "bio": ".NET and Apache Flex developer, working on Web and mobile applications. One of the creators of the <a href='https://github.com/akamud/FlatSpark'>FlatSpark</a> skin, a project to bring a more clean and modern look to Apache Flex applications, recently donated to Apache Software Foundation. His goal as a committer is to continue improving and creating new Skins and components for Flex.</p <p>Always interested in learning and sharing about new technologies. In his spare time wanders around the internet looking for open source projects that need help.<br/><br/>Also feels weird describing himself in the third person.</p>",
-     "twitter":"http://twitter.com/akamud",
-     "linkedIn":"http://www.linkedin.com/in/akamud/en",
-     "facebook":"",
-     "github":"https://github.com/akamud",
-     "googleplus":"",
-     "rss":"http://www.akamud.com.br/feed",
-     "wordpress":"http://www.akamud.com.br/"
-    },
-    
-    {"name": "Maurice Amsellem",
-     "title": "",
-     "apacheID": "mamsellem (C+P)",
-     "photoURL": "images/headshots/mamsellem.jpg",
-     "bio": "<p>Maurice has been working for <a href='http://www.systar.com'>Systar</a> since 1996 in various positions, and since 2009 as a software engineer on a Flex-based BAM application development framework.</p><p>Maurice is professionally interested in GUI design in general, and personally in clay modeling.<br/>He is based in Paris area, France.</p>",
-     "twitter":"",
-     "linkedIn":"http://www.linkedin.com/pub/maurice-amsellem/1/50a/b64",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Michael Schmalle",
-     "title": "",
-     "apacheID": "mschmalle (C+P)",
-     "photoURL": "images/headshots/mschmalle.jpg",
-     "bio": "<p>Past; ActionScript since 2001 and ui component developer. Created a read/write DOM for ActionScript in AS3 and Java, familiar with parsers and compilers.<br/><br/>Future; Working creating a framework to make synths and sequencers for techno music in Android and also Unity3D, WebAudio and JavaScript.<br/><br/>Leading the development of FalconJx to finally put the last nail in the Flash Player for myself. I don't claim to be anything I'm not, the third person scares me.</p>",
-     "twitter":"http://www.twitter.com/teotigraphix",
-     "linkedIn":"http://www.linkedin.com/pub/michael-schmalle/4/409/980",
-     "facebook":"",
-     "github":"https://github.com/teotigraphix",
-     "googleplus":"",
-     "rss":"http://blog.teotigraphix.com/feed"
-    },
-    
-    {"name": "Nicholas Kwiatkowski",
-     "title": "",
-     "apacheID": "quetwo (C+P)",
-     "photoURL": "images/headshots/quetwo.jpg",
-     "bio": "Working on components, website, marketing.",
-     "twitter":"http://www.twitter.com/quetwo",
-     "linkedIn":"",
-     "facebook":"http://www.facebook.com/quetwo",
-     "github":"",
-     "googleplus":"https://plus.google.com/106376488955804514674/",
-     "rss":"",
-     "blog":"http://www.quetwo.com",
-     "deviantart":"http://quetwo.deviantart.com"
-    },
-    
-    {"name": "Omar Gonzalez",
-     "title": "",
-     "apacheID": "s9tpepper (C+P)",
-     "photoURL": "images/headshots/s9tpepper.jpg",
-     "bio": "<p>Apache Flex committer and PMC member. Test driven development enthusiast. Wrestles code all day. Developing Flash since 2000, Flex since version 2 beta. Senior Architect for <a href='http://almerblank.com' target='_blank'>almer/blank</a> developing front-ends and back-ends in HTML5, JavaScript, Flash, Flex, Node.js, PHP, MySQL and MongoDB, just to name a few. Interested in expanding Apache Flex beyond the Flash Player plugin as well as other random experiments.</p>",
-     "twitter":"http://www.twitter.com/s9tpepper",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"https://github.com/s9tpepper",
-     "googleplus":"https://plus.google.com/109288512951904372418",
-     "rss":"http://omar.gy/rss"
-    },
-    
-    {"name": "OmPrakash Muppirala",
-     "title": "",
-     "apacheID": " bigosmallm (C + P)",
-     "photoURL": "images/headshots/bigosmallm.jpg",
-     "bio": "<p>Om 'bigosmallm' Muppirala is a UI architect with years of experience building Flex and Flash based applications. He has been working on various tools and utilities aimed at making life easier for Apache Flex developers and users(SDK Installer, OneClick Mustella, etc.)  Also interested in contributing more web and mobile Flex components.</p>",
-     "twitter":"http://twitter.com/bigosmallm",
-     "linkedIn":"http://www.linkedin.com/in/omprakashm/",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Peter Elst",
-     "title": "",
-     "apacheID": "peterelst (C + P)",
-     "photoURL": "images/headshots/peterelst.jpg",
-     "bio": "<p>Peter is a Web Solutions Engineer at Google, an author of multiple ActionScript books, speaker at various industry events and longtime supporter of Flex as a platform.</p><p>In his spare time, you can find him blogging at <a href='http://www.peterelst.com'>www.peterelst.com</a>.</p>",
-     "twitter":"http://www.twitter.com/peterelst",
-     "linkedIn":"http://www.linkedin.com/in/peterelst",
-     "facebook":"",
-     "github":"",
-     "googleplus":"https://www.google.com/+peterelst",
-     "rss":""
-    },
-    
-    {"name": "Piotr Zarzycki",
-     "title": "",
-     "apacheID": "piotrz (C + P)",
-     "photoURL": "images/headshots/piotrz.jpg",
-     "bio": "<p>Piotr has been working with Flex since 2008 in various project. He always stays open for self-development opportunity.</p><p>He currently lives in Cracow, Poland.</p>",
-     "twitter":"",
-     "linkedIn":"http://pl.linkedin.com/pub/piotr-zarzycki/52/535/92a/",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":"",
-     "skype":"skype:zarzycki10?call"
-    },
-    
-    {"name": "Stephan Plath",
-     "title": "",
-     "apacheID": "splath (C)",
-     "photoURL": "images/headshots/splath.jpg",
-     "bio": "",
-     "twitter":"http://www.twitter.com/xplath",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Tom Chiverton",
-     "title": "",
-     "apacheID": "tomc (P+C)",
-     "photoURL": "images/headshots/tomc.jpg",
-     "bio": "<p>Tom has been building internet applications since before the term RIA, and was part of the community contributing to Flex while it was looked after by Adobe.</p><p>Within Apache Flex his focus is on making sure the experience on Linux is on par with the other supported platforms, as well as pitching in keeping the Jenkins servers running.</p><p>He currently lives in Manchester, UK.</p>",
-     "twitter":"http://www.twitter.com/thefalken",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Maxim Solodovnik",
-     "title": "",
-     "apacheID": "solomax (C)",
-     "photoURL": "images/headshots/solomax.jpg",
-     "bio": "<p>Maxim developing desktop and mobile applications working with video components.</p><p>The main contribution so far was Russian translation of various Flex components</p><p>He currently lives in Novosibirsk, Russia.</p>",
-     "twitter":"http://www.twitter.com/solomax666",
-     "linkedIn":"https://www.linkedin.com/in/maximsolodovnik",
-     "facebook":"",
-     "github":"https://github.com/solomax",
-     "googleplus":"https://www.google.com/+MaximSolodovnik",
-     "rss":""
-    },
-    
-    {"name": "Olaf Krueger",
-     "title": "",
-     "apacheID": "okrueger (C)",
-     "photoURL": "images/headshots/okrueger.png",
-     "bio": "<p>Olaf believes in the power and beauty of simplicity in all respects.</p><p>Employed at a leading automotive supplier for hinge systems he creates software for internal use. For many years and still with great passion.</p><p>Olaf would like to help to bring the Material Design to Flex/FlexJS</p>",
-     "twitter":"http://www.twitter.com/openoli",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Bertrand Delacretaz",
-     "title": "Project Mentor",
-     "apacheID": "bdelacretaz (C+P)",
-     "photoURL": "images/headshots/bdelacretaz.jpg",
-     "bio": "<p>I'm happy to have been able to help Flex incubate at Apache, the team did a great job in creating a successful Apache project. I left the PMC on graduation to free some time for other podlings, wishing Flex a bright future!</p>",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Dave Fisher ",
-     "title": "Project Mentor",
-     "apacheID": "wave (C+P)",
-     "photoURL": "images/headshots/davefisher.jpg",
-     "bio": "<p>I'm fascinated by the communities that develop around projects at Apache I really enjoy the spirit here in the Apache Flex project. I am particularly interested in documents and am on the Apache POI and OpenOffice PMCs. Apache Flex for office documents anyone?</p><p>I live in San Francisco where the weather is mild.</p>",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Greg Reddin",
-     "title": "Project Mentor",
-     "apacheID": "greddin (C+P)",
-     "photoURL": "images/staff-1.jpg",
-     "bio": "",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    }
-]
-  
-}
\ No newline at end of file


[43/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/flex-asjs into develop

Posted by ca...@apache.org.
Merge branch 'develop' of https://git-wip-us.apache.org/repos/asf/flex-asjs into develop


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/9e6e0934
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/9e6e0934
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/9e6e0934

Branch: refs/heads/feature/mdl
Commit: 9e6e093455526fb29ed0baa51f9b7eee0ca5f90c
Parents: 043b092 0423210
Author: yishayw <yi...@hotmail.com>
Authored: Wed Nov 9 09:40:13 2016 +0200
Committer: yishayw <yi...@hotmail.com>
Committed: Wed Nov 9 09:40:13 2016 +0200

----------------------------------------------------------------------
 .../flexjs/TeamPage/src/models/MemberList.as    | 24 +++++++++++++++++---
 .../flex/org/apache/flex/core/Application.as    |  2 --
 2 files changed, 21 insertions(+), 5 deletions(-)
----------------------------------------------------------------------



[34/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Merged stuff that seems to have been lost in previous merges - Removed the clearing of the debug-js and release-js directories - Fixed issues with the cordova build

Posted by ca...@apache.org.
- Merged stuff that seems to have been lost in previous merges
- Removed the clearing of the debug-js and release-js directories
- Fixed issues with the cordova build


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/52d4f35c
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/52d4f35c
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/52d4f35c

Branch: refs/heads/feature/mdl
Commit: 52d4f35c1dcf22a9a41f18c9435bed4673a82b54
Parents: 4bac096
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Tue Nov 8 16:10:44 2016 +0100
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Tue Nov 8 16:10:44 2016 +0100

----------------------------------------------------------------------
 .../flexjs/TeamPage/src/main/flex/MemberDataJSONItemConverter.as | 2 +-
 examples/flexjs/TeamPage/src/main/flex/NoSelectionController.as  | 2 +-
 examples/flexjs/TeamPage/src/main/flex/models/MemberList.as      | 2 +-
 examples/flexjs/TeamPage/src/main/flex/models/Person.as          | 2 +-
 examples/pom.xml                                                 | 4 ++--
 5 files changed, 6 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/52d4f35c/examples/flexjs/TeamPage/src/main/flex/MemberDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/MemberDataJSONItemConverter.as b/examples/flexjs/TeamPage/src/main/flex/MemberDataJSONItemConverter.as
index 6f1e77b..cafb4a9 100644
--- a/examples/flexjs/TeamPage/src/main/flex/MemberDataJSONItemConverter.as
+++ b/examples/flexjs/TeamPage/src/main/flex/MemberDataJSONItemConverter.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package main.flex
+package
 {
     import models.Person;
     

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/52d4f35c/examples/flexjs/TeamPage/src/main/flex/NoSelectionController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/NoSelectionController.as b/examples/flexjs/TeamPage/src/main/flex/NoSelectionController.as
index 380668d..0a8af0a 100644
--- a/examples/flexjs/TeamPage/src/main/flex/NoSelectionController.as
+++ b/examples/flexjs/TeamPage/src/main/flex/NoSelectionController.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package main.flex
+package
 {
 	import org.apache.flex.core.IBeadController;
 	import org.apache.flex.core.IStrand;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/52d4f35c/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as b/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as
index 8fa77dc..1b5c3e7 100644
--- a/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as
+++ b/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package main.flex.models
+package models
 {
 	import org.apache.flex.collections.LazyCollection;
 	import org.apache.flex.core.Application;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/52d4f35c/examples/flexjs/TeamPage/src/main/flex/models/Person.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/models/Person.as b/examples/flexjs/TeamPage/src/main/flex/models/Person.as
index c513157..36ed24a 100644
--- a/examples/flexjs/TeamPage/src/main/flex/models/Person.as
+++ b/examples/flexjs/TeamPage/src/main/flex/models/Person.as
@@ -16,7 +16,7 @@
 //  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package main.flex.models
+package models
 {
 	import org.apache.flex.events.Event;
 	import org.apache.flex.events.EventDispatcher;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/52d4f35c/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index ea865fa..3c5398a 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -97,11 +97,11 @@
             </execution>
           </executions>
           <configuration>
-            <warSourceDirectory>${compiler.output-dir}</warSourceDirectory>
+            <warSourceDirectory>${basedir}/target/javascript/bin/js-debug</warSourceDirectory>
             <failOnMissingWebXml>false</failOnMissingWebXml>
             <webResources>
               <resource>
-                <directory>${build.outputDirectory}</directory>
+                <directory>${compiler.output-dir}</directory>
               </resource>
             </webResources>
           </configuration>


[19/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Merged changes

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductListItem.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductListItem.mxml
index edf3516,0000000..b3b84ea
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductListItem.mxml
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductListItem.mxml
@@@ -1,140 -1,0 +1,140 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
 +                    xmlns:js="library://ns.apache.org/flexjs/basic" 
 +    className="listItem" 
 +    height="{HEIGHT}" implements="org.apache.flex.core.IItemRenderer">
 +    <!--automationName="{product.name}">-->
 +
 +    <fx:Metadata>
 +       [Event(name="productQtyChange", type="samples.flexstore.ProductListEvent")]
 +       [Event(name="removeProduct", type="samples.flexstore.ProductListEvent")]
 +    </fx:Metadata>
 +    
 +    <fx:Script>
 +    <![CDATA[
 +    
 +        import samples.flexstore.Product;
 +        import samples.flexstore.ProductListEvent;
 +        
 +        private static var idCounter:int = 0;
 +        public var uid:String = (idCounter++).toString();
 +        
 +        public static const HEIGHT:int = 30;
 +        
 +        [Bindable("__NoChangeEvent__")]
 +        public function get product():Product
 +        {
 +            return _data as Product;
 +        }
 +        public function set product(value:Product):void
 +        {
 +            _data = value;
 +        }
 +        
 +        private var _data:Object;
 +        
 +        public function get data():Object
 +        {
 +            return _data;
 +        }
 +        
 +        public function set data(value:Object):void
 +        {
 +            _data = value;
 +        }
 +        
 +        public function get listData():Object
 +        {
 +        	return null;
 +        }
 +        
 +        public function set listData(value:Object):void
 +        {
 +        	// not used
 +        }
 +
 +        private var _itemRendererParent:Object;
 +        
 +        public function get itemRendererParent():Object
 +        {
 +            return _itemRendererParent;
 +        }
 +        
 +        public function set itemRendererParent(value:Object):void
 +        {
 +            _itemRendererParent = value;
 +        }
 +        
 +        private function qtyChange():void
 +    	{
 +            product.qty = int(qty.text);
 +            var event:ProductListEvent = new ProductListEvent(ProductListEvent.PRODUCT_QTY_CHANGE);
 +            event.product = product;
 +    		dispatchEvent(event);
 +        }
 +        
 +        private function removeItem():void
 +        {
 +            var event:ProductListEvent = new ProductListEvent(ProductListEvent.REMOVE_PRODUCT);
 +            event.product = product;
 +    		dispatchEvent(event);
 +        }
 +        
 +    ]]>
 +    </fx:Script>
 +    
 +    <fx:Declarations>
 +        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>
 +    </fx:Declarations>
 +    
 +    <js:beads>
 +        <js:ContainerDataBinding />
 +    </js:beads>
 +        
 +    <js:ImageButton id="removeButton" source="assets/trashcan.png"
 +        width="14" height="14" y="5"
 +        click="removeItem()">
 +        <js:beads>
 +            <js:ToolTipBead toolTip="Remove from cart" />
 +        </js:beads>
 +    </js:ImageButton>
 +    
-     <js:Image id="productImage" x="16" y="6" width="12" height="12" source="{product.image}"/>
++    <js:Image id="productImage" x="16" y="6" width="12" height="12" url="{product.image}"/>
 +
 +    <js:Label id="productName" x="30" width="100" y="4" text="{product.name}"/>
 +
 +    <js:Label id="productPrice" width="60" y="4"
 +        text="{cf.format(product.price)}" style="textAlign:right;right:0"
 +                                style.showQuantity="textAlign:right;right:25"/>
 +        
 +    <js:TextInput id="qty" width="25" y="3" text="{product.qty}" includeIn="showQuantity"
 +                  style="textAlign:right;right:0;marginTop:0" change="qtyChange()" >
 +        <js:beads>
 +            <js:NumericOnlyTextInputBead maxChars="3" />
 +        </js:beads>
 +    </js:TextInput>
 +    
 +    <js:states>
 +        <js:State name="compare" />
 +        <js:State name="showQuantity" />
 +    </js:states>
 +    
 +</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore_jquery/src/main/flex/FlexJSStore.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore_jquery/src/main/flex/FlexJSStore.mxml
index e5621c0,0000000..6375cb8
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore_jquery/src/main/flex/FlexJSStore.mxml
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/FlexJSStore.mxml
@@@ -1,268 -1,0 +1,268 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<jquery:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
 +                xmlns:js="library://ns.apache.org/flexjs/basic" 
 +                xmlns:jquery="library://ns.apache.org/flexjs/jquery"
 +                xmlns="*"
 +                initialize="startService()"
 +			    pageTitle="FlexStore">
 +	
 +	<fx:Script>
 +		<![CDATA[	
 +            import org.apache.flex.core.ValuesManager;
 +            
 +            /*
 +			private var currentTheme:String = "beige";
 +			
 +			private function toggleTheme():void
 +			{
 +				if (currentTheme == "beige")
 +				{
 +					currentTheme = "blue";
 +				}
 +				else
 +				{
 +					currentTheme = "beige";
 +				}
 +				
 +				loadStyle();
 +			}
 +			*/
 +            
 +			private function startService():void
 +			{
 +				productService.send();
 +			}
 +			
 +			private function loadStyle():void
 +			{
 +                /* load css not implemented yet
 +				var eventDispatcher:IEventDispatcher =
 +					styleManager.loadStyleDeclarations(currentTheme + ".swf");
 +				eventDispatcher.addEventListener(StyleEvent.COMPLETE, completeHandler);
 +                */
 +			}
 +			
 +			private function completeHandler(event:Event):void
 +			{
- 				image.source = ValuesManager.valuesImpl.getValue(acb, "storeLogo");
++				image.url = ValuesManager.valuesImpl.getValue(acb, "storeLogo");
 +                /*
 +				super.initialized = true;
 +                */
 +                callLater.callLater(prebake);
 +			}
 +			
 +            /*
 +			override public function set initialized(value:Boolean):void
 +			{
 +				// Hold off until the Runtime CSS SWF is done loading.
 +			}
 +            */
 +            
 +            private var stateChain:Array;
 +            
 +            private function headHome():void
 +            {
 +                homeButton.selected = true;
 +                if (initialView.currentState == "ProductsState")
 +                {
 +                    productsButton.selected = false;
 +                    stateChain = ["ProductsWipeUp", "HomeWipeDown", "HomeState"];
 +                    initialView.currentState = "ProductsWipeUp";
 +                }
 +                else if (initialView.currentState == "SupportState")
 +                {
 +                    supportButton.selected = false;
 +                    stateChain = ["SupportWipeUp", "HomeWipeDown", "HomeState"];
 +                    initialView.currentState = "SupportWipeUp";                    
 +                }
 +            }
 +            
 +            private function headToProducts():void
 +            {
 +                productsButton.selected = true;
 +                if (initialView.currentState == "SupportState")
 +                {
 +                    supportButton.selected = false;
 +                    stateChain = ["SupportWipeUp", "ProductsWipeDown", "ProductsState"];
 +                    initialView.currentState = "SupportWipeUp";                    
 +                }
 +                if (initialView.currentState == "HomeState")
 +                {
 +                    homeButton.selected = false;
 +                    stateChain = ["HomeWipeUp", "ProductsWipeDown", "ProductsState"];
 +                    initialView.currentState = "HomeWipeUp";                    
 +                }
 +            }
 +            
 +            private function headToSupport():void
 +            {
 +                supportButton.selected = true;
 +                if (initialView.currentState == "ProductsState")
 +                {
 +                    productsButton.selected = false;
 +                    stateChain = ["ProductsWipeUp", "SupportWipeDown", "SupportState"];
 +                    initialView.currentState = "ProductsWipeUp";                    
 +                }
 +                if (initialView.currentState == "HomeState")
 +                {
 +                    homeButton.selected = false;
 +                    stateChain = ["HomeWipeUp", "SupportWipeDown", "SupportState"];
 +                    initialView.currentState = "HomeWipeUp";                    
 +                }
 +            }
 +            
 +            private function prebake():void
 +            {
 +                callLater.callLater(prebake2);
 +            }
 +            
 +            private function prebake2():void
 +            {
 +                trace("prebake2");
 +                stateChain = ["ProductsPreBake", "HomeState"];
 +                initialView.currentState = "ProductsPreBake";
 +            }
 +                
 +            private function chainStatesIfNeeded():void
 +            {
 +                if (stateChain != null)
 +                {
 +                    if (initialView.currentState == stateChain[0])
 +                    {
 +                        callLater.callLater(nextState);
 +                    }
 +                }
 +            }
 +            
 +            private function nextState():void
 +            {
 +                stateChain.shift();
 +                if (stateChain.length)
 +                    initialView.currentState = stateChain[0];
 +                else
 +                    stateChain = null;
 +            }
 +		]]>
 +	</fx:Script>
 +	
 +	<fx:Style source="main.css"/>
 +    <fx:Style source="beige.css"/>
 +	
 +    <fx:Declarations>
 +        <js:HTTPService id="productService" url="data/catalog.json">
 +            <js:LazyCollection id="catalog" complete="if (pView) pView.catalog = catalog">
 +                <js:inputParser>
 +                    <js:JSONInputParser />
 +                </js:inputParser>
 +                <js:itemConverter>
 +                    <ProductJSONItemConverter />
 +                </js:itemConverter> 
 +            </js:LazyCollection>
 +        </js:HTTPService>        
 +    </fx:Declarations>
 +    <jquery:valuesImpl>
 +        <js:SimpleCSSValuesImpl />
 +    </jquery:valuesImpl>
 +	<jquery:beads>
 +        <js:CallLaterBead id="callLater" />
 +        <js:ApplicationDataBinding />
 +    </jquery:beads>
 +    <jquery:initialView>
 +        <js:View	width="990" height="585"
 +                        initComplete="completeHandler(null)"
 +                        stateChangeComplete="chainStatesIfNeeded()">
 +            <js:states>
 +                <js:State name="HomeState" stateGroups="['Home']" />
 +                <js:State name="HomeWipeUp" stateGroups="['Home']" />
 +                <js:State name="HomeWipeDown" stateGroups="['Home']" />
 +                <js:State name="ProductsPreBake" stateGroups="['Home', 'Products']" />
 +                <js:State name="ProductsState" stateGroups="['Products']" />
 +                <js:State name="ProductsWipeUp" stateGroups="['Products']" />
 +                <js:State name="ProductsWipeDown" stateGroups="['Products']" />
 +                <js:State name="SupportState" stateGroups="['Support']" />
 +                <js:State name="SupportWipeUp" stateGroups="['Support']" />
 +                <js:State name="SupportWipeDown" stateGroups="['Support']" />
 +            </js:states>
 +            
 +            <js:transitions>
 +                <js:Transition fromState="HomeState" toState="HomeWipeUp">
 +                    <js:Wipe direction="up" target="homeView" />
 +                </js:Transition>
 +                <js:Transition fromState="HomeWipeDown" toState="HomeState">
 +                    <js:Wipe direction="down" target="homeView" />
 +                </js:Transition>
 +                <js:Transition fromState="ProductsState" toState="ProductsWipeUp">
 +                    <js:Wipe direction="up" target="pView" />
 +                </js:Transition>
 +                <js:Transition fromState="ProductsWipeDown" toState="ProductsState">
 +                    <js:Wipe direction="down" target="pView" />
 +                </js:Transition>
 +                <js:Transition fromState="SupportState" toState="SupportWipeUp">
 +                    <js:Wipe direction="up" target="supportView" />
 +                </js:Transition>
 +                <js:Transition fromState="SupportWipeDown" toState="SupportState">
 +                    <js:Wipe direction="down" target="supportView" />
 +                </js:Transition>
 +            </js:transitions>
 +            <js:beads>
 +                <js:VerticalLayout />
 +            </js:beads>
 +            <js:ControlBar id="acb" width="100%" className="storeControlBar" >
 +                <js:beads>
 +                    <js:HorizontalLayout />
 +                </js:beads>
 +                <js:Image id="image" />
 +                         <!-- click="toggleTheme()" -->
 +                         <!-- toolTip="Change Theme"/ -->
 +                <jquery:ToggleTextButton id="homeButton"
 +                                text="Home"
 +                                height="100%"
 +                                selected="true"
 +                                className="storeButtonBar"
 +                                click="headHome()" />
 +                <jquery:ToggleTextButton id="productsButton"
 +                                text="Products"
 +                                height="100%"
 +                                className="storeButtonBar"
 +                                click="headToProducts()"/>
 +                <jquery:ToggleTextButton id="supportButton"
 +                                text="Support"
 +                                height="100%"
 +                                className="storeButtonBar"
 +                                click="headToSupport()"/>            
 +            </js:ControlBar>
 +            <js:Container width="990" >
 +                <js:style>
 +                    <js:SimpleCSSStyles paddingLeft="0" paddingRight="0"/>
 +                </js:style>
 +                        
 +                <HomeView id="homeView" width="100%" height="550" includeIn="Home"
 +                          />
 +                <ProductsView id="pView" includeIn="Products" visible.ProductsPreBake="false"
 +                              width="100%" height="550" initComplete="if (catalog.length) pView.catalog = catalog"
 +                              />
 +                <SupportView id="supportView" includeIn="Support"
 +                             width="100%" height="550"
 +                             />
 +            </js:Container>
 +        </js:View>        
 +    </jquery:initialView>    
 +</jquery:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore_jquery/src/main/flex/HomeView.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore_jquery/src/main/flex/HomeView.mxml
index 90049b5,0000000..e667ff3
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore_jquery/src/main/flex/HomeView.mxml
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/HomeView.mxml
@@@ -1,195 -1,0 +1,195 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<!--
 +This component is primarily static and is only meant to show what other
 +pages of the store could look like.
 +
 +Note that this page was put together in the Design view so you'll see more
 +hard coded locations and sizes.
 +
 +Also note when working with a Canvas that using the constraint styles 
 +(e.g., left, top, right, bottom) can provide better layout predictability than 
 +using x and y, especially when percentage widths and heights are used.
 +
 +Width and height are hard-coded in the root tag to help the Design view.
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
 +         xmlns:js="library://ns.apache.org/flexjs/basic" 
 +         xmlns:jquery="library://ns.apache.org/flexjs/jquery"
 +           xmlns="*" width="990" height="550"
 +           initComplete="updateMapImage()">
 +	<fx:Script>
 +		<![CDATA[
 +            import org.apache.flex.core.ValuesManager;
 +			import org.apache.flex.html.SimpleAlert;
 +
 +			public function updateMapImage():void
 +			{
- 				mapImage.source = ValuesManager.valuesImpl.getValue(mapCanvas, 'dottedMap');
++				mapImage.url = ValuesManager.valuesImpl.getValue(mapCanvas, 'dottedMap');
 +			}
 +		]]>
 +	</fx:Script>
 +    <js:beads>
 +        <js:ContainerDataBinding />
 +    </js:beads>
 +	<js:HContainer width="100%" height="100%" y="0" x="0" className="colorPanel">
 +		<js:VContainer width="230" height="100%">
 +			<js:Container width="100%" height="100%">
 +			
 +				<js:Container height="60" className="homeSection">
 +                    <js:style>
 +                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="10" right="10"/>
 +                    </js:style>
 +					<js:Label style="left:10;top:10" text="Search Developers" height="22" className="sectionHeader" />
 +					<jquery:TextButton style="left:168;top:30" text="Go" width="27" height="20" className="glass" click="SimpleAlert.show('This feature is not implemented in this sample', 'Go')"/>
 +					<js:TextInput style="left:10;top:30" height="20" width="150"/>
 +				</js:Container>
 +				
 +				<js:Container height="280" className="homeSection">
 +                    <js:style>
 +                        <js:SimpleCSSStyles backgroundColor="#ffffff" left="10" top="78" right="10" />                        
 +                    </js:style>
 +					<js:VContainer width="100%" height="100%">
 +                        <js:style>
 +                            <js:SimpleCSSStyles left="10" top="10" />                        
 +                        </js:style>
 +						<js:Label text="Flex Experts That Can Help You" className="sectionHeader"/>
 +						<js:HRule height="5" width="187" style="marginLeft:0"/>
 +						<js:Label text="General" className="homeProgramHeader"/>
 +						<js:Label text="BlazeDS Experts" style="fontSize:9"/>
 +						<js:Spacer height="8" width="100%"/>
 +						<js:Label text="Server-side" className="homeProgramHeader"/>
 +						<js:Label text="Java, PHP Developers" style="fontSize:9"/>
 +						<js:Spacer height="8" width="100%"/>
 +						<js:Label text="Mobile" className="homeProgramHeader"/>
 +						<js:Label text="Android, IOS and more" style="fontSize:9"/>
 +						<js:Spacer height="8" width="100%"/>
 +						<js:Label text="Students" className="homeProgramHeader"/>
 +						<js:Label text="Free Assistance" style="fontSize:9"/>
 +						<js:Spacer height="8" width="100%"/>
 +					</js:VContainer>
 +				</js:Container>
 +				
 +				<js:Container height="174" className="homeSection">
 +                    <js:style>
 +                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="366" right="10" />
 +                    </js:style>
 +					<js:VContainer width="100%" height="100%">
 +                        <js:style>
 +                            <js:SimpleCSSStyles left="10" top="10" />
 +                        </js:style>
 +						<js:Label text="Manage My Account" className="sectionHeader"/>
 +						
 +						<js:Label text="Phone Number"/>
 +						
 +						<js:HContainer width="100%" height="25" >
 +                            <js:style>
 +                                <js:SimpleCSSStyles verticalAlign="middle" />
 +                            </js:style>
 +							<js:TextInput height="20" width="40"/>
 +							<js:HRule width="8" height="2"/>
 +							<js:TextInput height="20" width="40"/>
 +							<js:HRule width="8" height="2"/>
 +							<js:TextInput height="20" width="40"/>
 +						</js:HContainer>
 +						
 +						<js:Label text="Password"/>
 +						<js:TextInput height="20"/>
 +						<js:Spacer height="8" width="100%"/>
 +						
 +						<jquery:CheckBox text="Remember my phone number" selected="true"/>
 +						<js:Spacer height="8" width="100%"/>
 +						
 +						<jquery:TextButton text="Login" className="glass" height="20" width="55" click="SimpleAlert.show('This feature is not implemented in this sample', 'Login')"/>
 +						
 +					</js:VContainer>
 +				</js:Container>
 +				
 +			</js:Container>
 +			
 +		</js:VContainer>
 +		
 +		<js:VContainer width="750" height="100%">
 +			<js:Container width="100%" height="100%">
 +			
- 			    <!-- can't use binding to set the mapImage source because the style isn't available early enough -->
++			    <!-- can't use binding to set the mapImage url because the style isn't available early enough -->
 +				<js:Container id="mapCanvas" height="35%" className="homeMap">
 +                    <js:style>
 +                        <js:SimpleCSSStyles left="0" right="10" top="10" />
 +                    </js:style>
 +					<js:Image id="mapImage" width="487" height="100%" alpha="1.0" style="left:10;top:10"/>
 +					<js:Label y="110" text="US Developers . Flex . FlexJS" width="95%" height="40" style="margin:auto;fontWeight:'bold';fontSize:22;color:#ffffff;fontFamily:'Arial';textAlign:'center'"/>
 +					<js:Label text="Learn More &gt;&gt;" width="95" style="fontSize:12;fontFamily:'Arial';bottom:10;right:10"/>
 +					<js:Label text="$60/hr" style="color:#ffffff;fontWeight:'bold';fontFamily:'Arial';fontSize:20;right:10:top:10"/>
 +					<js:Label text="Rates as low as" x="551" y="16" style="fontSize:12"/>
 +				</js:Container>
 +				
 +				<js:Container height="330" >
 +                    <js:style>
 +                        <js:SimpleCSSStyles backgroundColor="#ffffff" borderStyle="solid" bottom="10" right="10" left="0" /> <!-- cornerRadius="4" -->
 +                    </js:style>
 +					
 +					<js:Label style="left:10;top:10" text="Featured Developers" width="173" height="25" className="sectionHeader"/>
 +					
 +					<js:HContainer style="left:10;top:43" width="100%" height="100%">
 +						<js:VContainer width="33%" height="100%">
 +							<js:Container width="100%">
- 								<js:Image id="image1" source="assets/akotter.jpg" style="margin:auto;verticalCenter:0"/>
++								<js:Image id="image1" url="assets/akotter.jpg" style="margin:auto;verticalCenter:0"/>
 +							</js:Container>
 +							
 +							<js:Container width="100%">
 +								<js:Label text="Annette Kotter" id="feat_prod_1" style="margin:auto;fontWeight:'bold';fontSize:12"/>
 +							</js:Container>
 +							
 +						</js:VContainer>
 +						
 +						<js:VContainer width="33%" height="100%">
 +							<js:Container width="100%">
- 								<js:Image id="image2" style="margin:auto;verticalCenter:0" source="assets/bcrater.jpg"/>
++								<js:Image id="image2" style="margin:auto;verticalCenter:0" url="assets/bcrater.jpg"/>
 +							</js:Container>
 +							
 +							<js:Container width="100%">
 +								<js:Label text="Ben Crater" id="feat_prod_2" style="margin:auto;fontWeight:'bold';fontSize:12"/>
 +							</js:Container>
 +							
 +						</js:VContainer>
 +						
 +						<js:VContainer width="33%" height="100%">
 +							<js:Container width="100%">
- 								<js:Image id="image3" style="margin:auto;verticalCenter:0" source="assets/jproctor.jpg"/>
++								<js:Image id="image3" style="margin:auto;verticalCenter:0" url="assets/jproctor.jpg"/>
 +							</js:Container>
 +							
 +							<js:Container width="100%">
 +								<js:Label text="Jane Proctor" id="feat_prod_3" style="margin:auto;fontWeight:'bold';fontSize:12"/>
 +							</js:Container>
 +							
 +						</js:VContainer>
 +						
 +					</js:HContainer>
 +					
 +				</js:Container>
 +				
 +			</js:Container>
 +		
 +		</js:VContainer>
 +		
 +	</js:HContainer>
 +	
 +</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore_jquery/src/main/flex/SupportView.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore_jquery/src/main/flex/SupportView.mxml
index 3d30a9d,0000000..72bbb55
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore_jquery/src/main/flex/SupportView.mxml
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/SupportView.mxml
@@@ -1,149 -1,0 +1,149 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<!--
 +This component is primarily static and is only meant to show what other
 +pages of the store could look like.
 +
 +Note that this page was put together in the Design view so you'll see more
 +hard coded locations and sizes.
 +
 +We did not have sizing issues here as much so you'll see more hardcoded 
 +"y" values rather than "top."
 +
 +The width and height are hard-coded in the root tag to help the Design view.
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
 +                 xmlns:js="library://ns.apache.org/flexjs/basic" 
 +                 xmlns="*" alpha="1.0"
 +    width="990" height="550">
 +	
 +	<fx:Script>
 +	    <![CDATA[
 +	       import org.apache.flex.html.SimpleAlert;
 +	    ]]>
 +	</fx:Script>
 +	
 +    <fx:Declarations>
 +        <fx:Array id="locations">
 +            <fx:Object image="assets/support_mapmarker_a.png" name="601 Townsend St" /> 
 +            <fx:Object image="assets/support_mapmarker_b.png" name="Location B" />
 +            <fx:Object image="assets/support_mapmarker_c.png" name="Location C" />	   	   
 +        </fx:Array>   
 +        
 +    </fx:Declarations>
 +	
 +	<js:HContainer x="0" y="0" width="100%" height="100%" className="colorPanel">
 +	
 +		<js:VContainer width="32%" height="100%">
 +			<js:Container width="100%" height="420">
 +			
 +				<js:Label y="10" text="Check Location" className="sectionHeader" x="20"/>
 +				
 +				<js:Container height="150" y="64" style="margin:auto">
 +                    <js:beads>
 +                        <js:VerticalColumnLayout numColumns="2" />
 +                    </js:beads>
 +					<js:Label text="Address:"/>
 +					<js:TextInput id="address"/>
 +					
 +					<js:Label text="City:" style="marginTop:20"/>
 +					<js:TextInput id="city" style="marginTop:20"/>						
 +					
 +					<js:Label text="State:" style="marginTop:20"/>
 +					<js:DropDownList id="state" style="marginTop:20">
 +						<js:dataProvider>
 +                            <fx:Array>
 +                                <fx:String>California</fx:String>
 +                                <fx:String>Nevada</fx:String>
 +                                <fx:String>Oregon</fx:String>
 +                                <fx:String>Washington</fx:String>
 +                            </fx:Array>                                    
 +            			</js:dataProvider>
 +					</js:DropDownList>
 +					
 +					<js:Label text="ZIP Code:" style="marginTop:20"/>
 +					<js:TextInput id="zip" style="marginTop:20"/>
 +					
 +				</js:Container>
 +				
 +				<js:Label y="38" text="Option1: Enter Address" style="margin:auto" className="instructions"/>
 +				
 +				<js:TextButton y="297" text="Locate" click="SimpleAlert.show('This feature is not implemented in this sample', 'Locate')" 
 +                                  style="margin:auto"/>
 +				
 +				<js:HContainer y="327" height="20" >
 +                    <js:style>
 +                        <js:SimpleCSSStyles margin="auto" verticalAlign="middle" />
 +                    </js:style>
 +					<js:HRule width="60" />
 +					<js:Label text="OR"/>
 +                    <js:HRule width="60" />
 +				</js:HContainer>
 +				
 +				<js:Label y="355" text="Option 2: Drag this marker into the map" style="margin:auto" className="instructions"/>
 +				
- 				<js:Image y="380" style="margin:auto" source="assets/support_mapmarker_plus.png"/>
++				<js:Image y="380" style="margin:auto" url="assets/support_mapmarker_plus.png"/>
 +				
 +				<js:HRule y="415" style="margin:auto" width="200" alpha="0.6"/>
 +				
 +			</js:Container>
 +			
 +			<js:Container width="100%" height="130">
 +				<js:VContainer width="80%" height="90%" >
 +                    <js:style>
 +                        <js:SimpleCSSStyles margin="auto" top="0"/>
 +                    </js:style>
 +					<js:Label text="Location" className="instructions"/>
 +					<js:List width="100%" dataProvider="{locations}">
 +                        <js:itemRenderer>
 +                            <fx:Component>
 +                                <js:DataItemRenderer className="listItem" width="100%">
 +                                    <fx:Script>
 +                                        <![CDATA[
 +                                            import samples.flexstore.Product;
 +                                            [Bindable("__NoChangeEvent__")]
 +                                            private function get product():Product
 +                                            {
 +                                                return data as Product;
 +                                            }
 +                                        ]]>
 +                                    </fx:Script>
-                                     <js:Image width="21" height="25" source="{product.image}" />
++                                    <js:Image width="21" height="25" url="{product.image}" />
 +                                    <js:Label width="100%" text="{product.name}" />
 +                                </js:DataItemRenderer>                                                            
 +                            </fx:Component>
 +                        </js:itemRenderer>
 +					</js:List>
 +				</js:VContainer>
 +			</js:Container>
 +			
 +		</js:VContainer>
 +		
 +		<js:Container width="68%" height="100%">
- 			<js:Image source="assets/427px-Bayarea_map.png">
++			<js:Image url="assets/427px-Bayarea_map.png">
 +                <js:style>
 +                    <js:SimpleCSSStyles left="12" top="12"/>
 +                </js:style>
 +            </js:Image>
 +		</js:Container>
 +		
 +	</js:HContainer>
 +	
 +</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/Grip.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/Grip.mxml
index abd3ce5,0000000..d161d89
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/Grip.mxml
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/Grip.mxml
@@@ -1,48 -1,0 +1,48 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
 +                  xmlns:js="library://ns.apache.org/flexjs/basic" 
 +                  width="17" height="100%" >
 +    <js:style>
 +        <js:SimpleCSSStyles paddingTop="10" />
 +    </js:style>
 +
 +    <fx:Script>
 +        <![CDATA[
 +           [Bindable]
 +           public var gripTip:String; 
 +           
 +           [Bindable]
 +           public var gripIcon:String;
 +        ]]>
 +    </fx:Script>
 +    <js:beads>
 +        <js:ContainerDataBinding />
 +        <js:OneFlexibleChildVerticalLayout flexibleChild="grip" />
 +    </js:beads>
 +
-     <js:Image id="icon" source="{gripIcon}" />
-     <js:Image id="grip" source="assets/grip.png" >
++    <js:Image id="icon" url="{gripIcon}" />
++    <js:Image id="grip" url="assets/grip.png" >
 +        <js:beads>
 +            <js:ToolTipBead toolTip="{gripTip}" />
 +        </js:beads>
 +    </js:Image>
 +    
 +</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogThumbnail.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogThumbnail.mxml
index 1abc428,0000000..0946f8a
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogThumbnail.mxml
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogThumbnail.mxml
@@@ -1,220 -1,0 +1,220 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
 +                   xmlns:js="library://ns.apache.org/flexjs/basic" 
 +    width="{COL_WIDTH_4}" height="{COL_HEIGHT_4}" height.compare="502"
 +    width.x4cols="{COL_WIDTH_4}" height.x4cols="{COL_HEIGHT_4}"
 +    width.x3cols="{COL_WIDTH_3}" height.x3cols="{COL_HEIGHT_3}"
 +    width.x2cols="{COL_WIDTH_2}" height.x2cols="{COL_HEIGHT_2}"
 +    rollOver="rollOverHandler(event)"
 +    rollOut="rollOutHandler(event)"
 +    mouseDown="mouseDownHandler(event)"
 +    mouseMove="mouseMoveHandler(event)"
 +    mouseUp="mouseUpHandler(event)"
 +    click="clickHandler(event)"
 +    currentState="x4cols"
 +    >
 +    <!-- automationName="{product.name}" -->
 +    <js:beads>
 +        <js:ContainerDataBinding />
 +        <js:LayoutChangeNotifier watchedProperty="{borderStyles.borderColor}" initialValue="#FFFFFF" />
 +    </js:beads>
 +    <js:style>
 +        <js:BindableCSSStyles id="borderStyles" borderStyle="solid" borderWidth="1"
 +                               borderColor="#FFFFFF" backgroundColor="#FFFFFF"/>
 +    </js:style>
 +    <fx:Metadata>
 +        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
 +        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
 +        [Event(name="details", type="samples.flexstore.ProductThumbEvent")]
 +    </fx:Metadata>
 +
 +    <fx:Script>
 +        <![CDATA[
 +
 +		import org.apache.flex.events.*;
 +        import org.apache.flex.utils.PointUtils;
 +            
 +        import samples.flexstore.Product;
 +        import samples.flexstore.ProductThumbEvent;
 +        
 +        public static const COL_WIDTH_4:int = 162;
 +        public static const COL_HEIGHT_4:int = 122;
 +        public static const COL_WIDTH_3:int = 217;
 +        public static const COL_HEIGHT_3:int = 165;
 +        public static const COL_WIDTH_2:int = 327;
 +        public static const COL_HEIGHT_2:int = 250;
 +        public static const COMPARE_WIDTH:int = 162;
 +        public static const HORIZONTAL_GAP:int = 2;
 +        public static const VERTICAL_GAP:int = 3;
 +
 +        [Bindable]
 +        public var product:Product;
 +
 +        private function rollOverHandler(event:MouseEvent):void
 +		{
 +            borderStyles.borderColor = "#CCCCCC";
 +            //style["dropShadowEnabled"] = true;
 +            buttons.visible = true;
 +        }
 +
 +        private function rollOutHandler(event:MouseEvent):void
 +		{
 +            borderStyles.borderColor = "#FFFFFF";
 +            //style["dropShadowEnabled"] = false;
 +			buttons.visible = false;
 +        }
 +
 +        private var dragStartPoint:Point;
 +
 +        public function mouseDownHandler(event:MouseEvent):void
 +        {
 +            if (event.target != purchase &&
 +                event.target != compare &&
 +                event.target != details)
 +            {
 +                dragStartPoint = new Point(event.clientX, event.clientY);
 +            }
 +        }
 +
 +        public function mouseMoveHandler(event:MouseEvent):void
 +        {
 +            if (dragStartPoint != null)
 +            {
 +                var dragEvent:DragEvent = new DragEvent(DragEvent.DRAG_START, true);
 +                dragEvent.clientX = dragStartPoint.x;
 +                dragEvent.clientY = dragStartPoint.y;
 +                dragEvent.buttonDown = true;
 +                dispatchEvent(dragEvent);
 +
 +                rollOutHandler(event);
 +
 +                dragStartPoint = null;
 +            }
 +        }
 +
 +        public function mouseUpHandler(event:MouseEvent):void
 +        {
 +            if (dragStartPoint != null)
 +            {
 +                dragStartPoint = null;
 +            }
 +        }
 +
 +        public function clickHandler(event:org.apache.flex.events.MouseEvent):void
 +        {
 +            if (event.target != purchase &&
 +                event.target != compare &&
 +                event.target != details)
 +            {
 +                dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product));
 +            }
 +        }
 +
 +	]]>
 +    </fx:Script>
 +    <fx:Declarations>
 +        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
 +    </fx:Declarations>
 +
 +    <js:VContainer id="vb" width="100%" height="100%">
 +        <js:style>
 +            <js:SimpleCSSStyles paddingLeft="6" paddingTop="4" paddingRight="8" paddingBottom="4" />
 +                                 <!--  gap="0">  -->
 +        </js:style>
 +        
 +
 +        <js:Label text="{product.name}" style="fontWeight:bold"/>
 +
 +        <js:HContainer width="100%" >
 +            <js:style>
 +                <js:SimpleCSSStyles paddingTop="0" /> <!-- gap="4 -->"
 +            </js:style>
 +
 +            <js:Image id="img" height="45" width="45" 
 +                     width.x3cols="60" height.x3cols="60"
 +                     width.x2cols="60" height.x2cols="60"
-                      source="{product.image}" />
++                     url="{product.image}" />
 +
 +            <js:VContainer id="descr" height="100%" >
 +                <js:style>
 +                    <js:SimpleCSSStyles paddingTop="0" right="0" /> <!--  gap="0"  -->
 +                </js:style>
 +                <js:Label text="{product.featureString}" width="60" height="48" />
 +                <js:Label text="{cf.format(product.price)}" style="fontWeight:bold"/>
 +				<js:Spacer height="4"/>
 +                <js:Label text="{product.highlight1}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
 +                <js:Label text="{product.highlight2}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
 +            </js:VContainer>
 +
 +        </js:HContainer>
 +
 +        <js:Spacer height="8"/>
 +
 +        <js:Label id="compYears" text="Years: {product.experience}" includeIn="compare"/>
 +        <js:Label id="compBlaze" text="BlazeDS: {product.blazeds}" includeIn="compare"/>
 +        <js:Label id="compMobile" text="Mobile: {product.mobile}" includeIn="compare"/>
 +        <js:Label id="compVideo" text="Video: {product.video}" includeIn="compare"/>
 +        <js:Label id="compHigh1" text="Highlight: {product.highlight1}" includeIn="compare"/>
 +        <js:Label id="compHigh2" text="Highlight: {product.highlight2}" includeIn="compare"/>
 +        <js:Label text="Description:" includeIn="compare"/>
 +        <js:MultilineLabel id="compDesc" text="{product.description}" width="100%" includeIn="compare"/>
 +    </js:VContainer>
 +
 +
 +    <js:VContainer id="buttons" visible="false" width="30">
 +        <js:style>
 +            <js:SimpleCSSStyles paddingRight="8" right="8" top="12" /> <!-- gap="4" -->
 +        </js:style>
 +        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" className="hoverButton"
 +            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" 
 +            width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Add to cart"/>
 +            </js:beads>
 +        </js:ImageButton>
 +        <js:ImageButton id="compare" source="assets/button_compare.png" className="hoverButton"
 +            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" 
 +            width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Add to compare list"/>
 +            </js:beads>
 +        </js:ImageButton>
 +        <js:ImageButton id="details" source="assets/button_details.png" className="hoverButton"
 +            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product))" 
 +            width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Show details"/>
 +            </js:beads>
 +        </js:ImageButton>
 +    </js:VContainer>
 +
 +    <js:states>
 +
 +        <js:State name="compare" />
 +
 +        <js:State name="x4cols" />
 +
 +        <js:State name="x3cols" />
 +
 +        <js:State name="x2cols"/>
 +    </js:states>
 +
 +</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductDetails.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductDetails.mxml
index 309cb41,0000000..781d120
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductDetails.mxml
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductDetails.mxml
@@@ -1,145 -1,0 +1,145 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
 +                 xmlns:js="library://ns.apache.org/flexjs/basic" 
 +    xmlns:productsView="productsView.*"
 +    >
 +    <js:beads>
 +        <js:ContainerDataBinding />
 +    </js:beads>
 +
 +    <fx:Metadata>
 +        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
 +        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
 +        [Event(name="browse", type="samples.flexstore.ProductThumbEvent")]
 +    </fx:Metadata>
 +
 +    <fx:Script>
 +        <![CDATA[
 +
 +		import samples.flexstore.Product;
 +		import samples.flexstore.ProductThumbEvent;
 +
 +        private var _product:Product;
 +        
 +        [Bindable]
 +        public function get product():Product
 +        {
 +            return _product;
 +        }
 +        
 +        public function set product(p:Product):void
 +        {
 +            _product = p;
 +            tn.selectedIndex = 0;
 +        }
 +        
 +	]]>
 +    </fx:Script>
 +
 +    <fx:Declarations>
 +        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
 +    </fx:Declarations>
 +
 +    <js:states>
 +        <js:State name="Features" />
 +        <js:State name="Support" />
 +    </js:states>
 +    
 +    <js:transitions>
 +        <js:Transition>
 +            <js:Fade />
 +        </js:Transition>
 +    </js:transitions>
 +    
 +    <js:ButtonBar id="tn" width="100%" change="currentState = tn.selectedItem as String">
 +        <js:dataProvider>
 +            <fx:Array>
 +                <fx:String>Features</fx:String>
 +                <fx:String>Support</fx:String>
 +            </fx:Array>
 +        </js:dataProvider>
 +    </js:ButtonBar>
 +    <js:Container >
 +        <js:style>
 +            <js:SimpleCSSStyles left="4" right="8" top="34" bottom="4" />
 +        </js:style>
 +                    
 +
 +        <js:VContainer includeIn="Features" >
 +            <js:style>
 +                <!--<js:SimpleCSSStyles gap="8"-->
 +                <js:SimpleCSSStyles
 +                    left="8" top="8" right="8" bottom="8"/>
 +            </js:style>
 +            <js:Container style="left:0px;right:0px">
 +
-                 <js:Image id="img" width="101" height="101" source="{product.image}"/>
++                <js:Image id="img" width="101" height="101" url="{product.image}"/>
 +
 +                <js:VContainer id="descr" >
 +                    <js:style>
 +                        <js:SimpleCSSStyles top="0" left="105" right="0" bottom="20" />
 +                        <!--<js:SimpleCSSStyles paddingTop="0" gap="4" />-->
 +                    </js:style>
 +                    
 +                    <js:Label text="{product.name}" style="fontSize:11;fontWeight:'bold'"/>
 +
 +	                <js:Label text="{product.featureString}" width="80" height="48" />
 +
 +                    <js:Label text="{product.highlight1}" style="color:#EE8D0C"/>
 +
 +                    <js:Label text="{product.highlight2}" style="color:#EE8D0C"/>
 +
 +                    <js:Label text="{cf.format(product.price)}" style="fontWeight:'bold'"/>
 +
 +                </js:VContainer>
 +            </js:Container>
 +
 +            <js:Label id="descriptionText" style="left:0px;right:0px;bottom:0px" text="{product.description}"/>
 +
 +        </js:VContainer>
 +
 +        <productsView:ProductSupport width="100%" height="100%" includeIn="Support" />
 +
 +    </js:Container>
 +
 +    <js:VContainer>
 +        <js:style>
 +            <js:SimpleCSSStyles marginTop="4" right="16" top="36" />
 +        </js:style>
 +        <js:Spacer width="100%"/>
 +        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Add to cart"/>
 +            </js:beads>
 +        </js:ImageButton>
 +        <js:ImageButton id="compare" source="assets/button_compare.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Add to compare list"/>
 +            </js:beads>
 +        </js:ImageButton>
 +        <js:ImageButton id="tiles" source="assets/button_tiles.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.BROWSE, product));" width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Back to thumbnail view"/>
 +            </js:beads>
 +        </js:ImageButton>
 +    </js:VContainer>
 +
 +</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductListItem.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductListItem.mxml
index edf3516,0000000..b3b84ea
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductListItem.mxml
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductListItem.mxml
@@@ -1,140 -1,0 +1,140 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
 +                    xmlns:js="library://ns.apache.org/flexjs/basic" 
 +    className="listItem" 
 +    height="{HEIGHT}" implements="org.apache.flex.core.IItemRenderer">
 +    <!--automationName="{product.name}">-->
 +
 +    <fx:Metadata>
 +       [Event(name="productQtyChange", type="samples.flexstore.ProductListEvent")]
 +       [Event(name="removeProduct", type="samples.flexstore.ProductListEvent")]
 +    </fx:Metadata>
 +    
 +    <fx:Script>
 +    <![CDATA[
 +    
 +        import samples.flexstore.Product;
 +        import samples.flexstore.ProductListEvent;
 +        
 +        private static var idCounter:int = 0;
 +        public var uid:String = (idCounter++).toString();
 +        
 +        public static const HEIGHT:int = 30;
 +        
 +        [Bindable("__NoChangeEvent__")]
 +        public function get product():Product
 +        {
 +            return _data as Product;
 +        }
 +        public function set product(value:Product):void
 +        {
 +            _data = value;
 +        }
 +        
 +        private var _data:Object;
 +        
 +        public function get data():Object
 +        {
 +            return _data;
 +        }
 +        
 +        public function set data(value:Object):void
 +        {
 +            _data = value;
 +        }
 +        
 +        public function get listData():Object
 +        {
 +        	return null;
 +        }
 +        
 +        public function set listData(value:Object):void
 +        {
 +        	// not used
 +        }
 +
 +        private var _itemRendererParent:Object;
 +        
 +        public function get itemRendererParent():Object
 +        {
 +            return _itemRendererParent;
 +        }
 +        
 +        public function set itemRendererParent(value:Object):void
 +        {
 +            _itemRendererParent = value;
 +        }
 +        
 +        private function qtyChange():void
 +    	{
 +            product.qty = int(qty.text);
 +            var event:ProductListEvent = new ProductListEvent(ProductListEvent.PRODUCT_QTY_CHANGE);
 +            event.product = product;
 +    		dispatchEvent(event);
 +        }
 +        
 +        private function removeItem():void
 +        {
 +            var event:ProductListEvent = new ProductListEvent(ProductListEvent.REMOVE_PRODUCT);
 +            event.product = product;
 +    		dispatchEvent(event);
 +        }
 +        
 +    ]]>
 +    </fx:Script>
 +    
 +    <fx:Declarations>
 +        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>
 +    </fx:Declarations>
 +    
 +    <js:beads>
 +        <js:ContainerDataBinding />
 +    </js:beads>
 +        
 +    <js:ImageButton id="removeButton" source="assets/trashcan.png"
 +        width="14" height="14" y="5"
 +        click="removeItem()">
 +        <js:beads>
 +            <js:ToolTipBead toolTip="Remove from cart" />
 +        </js:beads>
 +    </js:ImageButton>
 +    
-     <js:Image id="productImage" x="16" y="6" width="12" height="12" source="{product.image}"/>
++    <js:Image id="productImage" x="16" y="6" width="12" height="12" url="{product.image}"/>
 +
 +    <js:Label id="productName" x="30" width="100" y="4" text="{product.name}"/>
 +
 +    <js:Label id="productPrice" width="60" y="4"
 +        text="{cf.format(product.price)}" style="textAlign:right;right:0"
 +                                style.showQuantity="textAlign:right;right:25"/>
 +        
 +    <js:TextInput id="qty" width="25" y="3" text="{product.qty}" includeIn="showQuantity"
 +                  style="textAlign:right;right:0;marginTop:0" change="qtyChange()" >
 +        <js:beads>
 +            <js:NumericOnlyTextInputBead maxChars="3" />
 +        </js:beads>
 +    </js:TextInput>
 +    
 +    <js:states>
 +        <js:State name="compare" />
 +        <js:State name="showQuantity" />
 +    </js:states>
 +    
 +</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductThumbEvent.as
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductThumbEvent.as
index ce1cab7,0000000..e2838f9
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductThumbEvent.as
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductThumbEvent.as
@@@ -1,45 -1,0 +1,45 @@@
 +////////////////////////////////////////////////////////////////////////////////
 +//
 +//  Licensed to the Apache Software Foundation (ASF) under one or more
 +//  contributor license agreements.  See the NOTICE file distributed with
 +//  this work for additional information regarding copyright ownership.
 +//  The ASF licenses this file to You 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.
 +//
 +////////////////////////////////////////////////////////////////////////////////
 +package samples.flexstore
 +{
-     
++
 +import org.apache.flex.events.Event;
 +
 +public class ProductThumbEvent extends Event
 +{
 +    public static const PURCHASE:String = "purchase";
 +    public static const COMPARE:String = "compare";
 +    public static const DETAILS:String = "details";
 +    public static const BROWSE:String = "browse";
-     
++
 +    public var product:Product;
-     
++
 +    public function ProductThumbEvent(type:String, product:Product)
 +    {
 +        super(type);
 +        this.product = product;
 +    }
-     
-     override public function cloneEvent():Event
-     {
-         return new ProductThumbEvent(type, product);
-     }
++
++    //override public function cloneEvent():Event
++    //{
++    //    return new ProductThumbEvent(type, product);
++    //}
 +}
 +
- }
++}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/MobileStocks/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/MobileStocks/src/main/flex/MyInitialView.mxml
index b6853e2,0000000..5286e2c
mode 100755,000000..100755
--- a/examples/flexjs/MobileStocks/src/main/flex/MyInitialView.mxml
+++ b/examples/flexjs/MobileStocks/src/main/flex/MyInitialView.mxml
@@@ -1,253 -1,0 +1,253 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
 +				xmlns:local="*"
 +				xmlns:js="library://ns.apache.org/flexjs/basic"
 +				xmlns:views="views.*" 
 +				xmlns:apache="org.apache.flex.html.beads.*"
 +				xmlns:html="org.apache.flex.html.*"
 +				xmlns:controller="controller.*"
 +				initComplete="onInitComplete()" xmlns:models="models.*" >
 +	
 +	<fx:Style>
 +		@namespace js  "library://ns.apache.org/flexjs/basic";
 +		@namespace views  "views.*";
 +		
 +		js|Container {
 +			background-color: #FFFFFF;
 +		}
 +		
 +		js|TextInput {
 +			font-size: 10pt;
 +		}
 +		
 +		js|Label {
 +		    font-size: 8pt;
 +		}
 +		
 +		js|StackedViewManager {
 +			padding-top: 0px;
 +			padding-bottom: 0px;
 +			padding-left: 0px;
 +			padding-right: 0px;
 +		}
 +		
 +		js|TabbedViewManager {
 +			position : absolute ;
 +			height : 100% ;
 +			width : 100% ;
 +			left : 0px ;
 +			top : 0px ;
 +			border: solid 1px #444444;
 +			background-color: #FFFFFF;
 +		}
 +		
 +		.NavigationBar {
 +			background-image: url("assets/background.png");
 +			height: 56px;
 +			width: 100%;
 +			IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalLayout");
 +		}
 +		
 +		.TabBar {
 +			background-color: #DEDEDE;
 +			height: 55px;
 +			vertical-align: middle;
 +			line-height: 55px;
 +		}
 +		
 +		.BackButton:hover {
 +			background-image: url('assets/arrow_left_24.png');
 +		}
 +		
 +		.BackButton:active {
 +			background-image: url('assets/arrow_left_24.png');
 +		}
 +		
 +		.BackButton {
 +			background-image: url('assets/arrow_left_24.png');
 +		}
 +		
 +		views|LaunchView {
 +			width: 100%;
 +			height: 100%;
 +			IBeadController:ClassReference('controller.LaunchViewController');
 +			background-color: #FFFFFF;
 +		}
 +		
 +		views|WatchListView {
 +			width: 100%;
 +			height: 100%;
 +			IBeadController:ClassReference('controller.WatchListController');
 +			background-color: #FFFFFF;
 +		}
 +		
 +		.WatchListInner {
 +			height: 480px;
 +			width:  100%;
 +			background-color: #FFFFFF;
 +		}
 +		
 +		.WatchListDataGrid {
 +			height: 480px;
 +			width:  100%;
 +		}
 +		
 +		.WatchListInputArea {
 +			background-color: #FFFFFF;
 +			width: 480px;
 +			height: 25px;
 +			padding-top: 5px;
 +			padding-bottom: 2px;
 +		}
 +		
 +		views|StockView {
 +			width: 100%;
 +			height: 100%;
 +		}
 +		
 +		.redCell {
 +			color: #FF0000;
 +		}
 +		
 +		.greenCell {
 +			color: #00FF00;
 +		}
 +		
 +		.ViewTitle {
 +			font-size: 18pt;
 +			font-weight: bold;
 +			padding: 10pt;
 +		}
 +		
 +		.StockName {
 +			font-size: 14pt;
 +			font-weight: normal;
 +			padding: 10pt;
 +		}
 +		
 +		.StockDetailArea {
 +			padding: 10pt;
 +		}
 +		
 +		.StockLabel {
 +			font-size: 18pt;
 +			font-weight: normal;
 +			color: #2255DD;
 +		}
 +		
 +		.StockRemoveButton {
 +			background-color: #FF5522;
 +			font-size: 16pt;
 +			font-weight: bold;
 +			color: #FFFFFF;
 +			width: 200px;
 +			height: 50px;
 +		}
 +		
 +		.StockRemoveButton:hover {
 +			background-color: #DD3300;
 +		}
 +		
 +		.StockValue {
 +			font-size: 18pt;
 +			font-weight: normal;
 +			color: #999999;
 +		}
 +		
 +		@media -flex-flash
 +		{
 +			.NavigationBar {
 +				IBackgroundBead: ClassReference("org.apache.flex.html.beads.BackgroundImageBead");
 +			}
 +		}
 +		
 +	</fx:Style>
 +	
 +	<fx:Script>
 +		<![CDATA[
 +			import org.apache.flex.core.IBeadController;
 +			import org.apache.flex.core.IBeadModel;
 +			import org.apache.flex.events.Event;
 +			import org.apache.flex.mobile.IViewManagerView;
 +			import org.apache.flex.mobile.IViewManager;
 +			import org.apache.flex.mobile.chrome.NavigationBar;
 +			
 +			import models.ProductsModel;
 +			
 +			private function onInitComplete():void
 +			{
 +				(applicationModel as ProductsModel).loadDataFromStorage();
 +			}
 +			
 +			/* debugging */
 +			private function tabbedViewChanged(event:org.apache.flex.events.Event):void
 +			{
 +				//var manager:IViewManager = event.currentTarget as IViewManager;
 +				//trace("TabbedViewChanged for "+manager);
 +			}
 +			
 +			private function watchListStackChanged(event:org.apache.flex.events.Event):void
 +			{
 +				//trace("watchlist stack changed");
 +				var manager:StackedViewManager = event.currentTarget as StackedViewManager;
 +				
 +				var currentView:IViewManagerView = manager.selectedView;
 +				backButton.visible = manager.views.length > 1;
 +			}
 +			
 +			private function goBack(event:org.apache.flex.events.MouseEvent):void
 +			{
 +				if (navController.selectedIndex == 1) {
 +					watchListStack.pop();
 +				}
 +			}
 +		]]>
 +	</fx:Script>
 +	
 +	<js:beads>
 +		<js:ViewDataBinding />
 +	</js:beads>
 +	
 +	<js:TabbedViewManager id="navController" width="100%" height="100%" x="0" y="0" viewChanged="tabbedViewChanged(event)">
 +		<js:navigationBarItems>
 +			<js:TextButton id="backButton" width="45" height="45" className="BackButton" visible="false" click="goBack(event)">
 +				<js:beads>
 +					<apache:ImageButtonView />
 +				</js:beads>
 +			</js:TextButton>
- 			<js:Image source="assets/logo.png" width="218" height="55" />
++			<js:Image url="assets/logo.png" width="218" height="55" />
 +		</js:navigationBarItems>
 +		<js:views>
 +			<js:StackedViewManager title="Assets">
 +				<js:views>
 +					<views:LaunchView id="assetsView" title="Assets" dataModel="{applicationModel}" />
 +				</js:views>
 +			</js:StackedViewManager>
 +			
 +			<js:StackedViewManager id="watchListStack" title="Watch List" viewChanged="watchListStackChanged(event)">
 +				<js:views>
 +					<views:WatchListView id="watchListView" dataModel="{applicationModel}"/>
 +				</js:views>
 +			</js:StackedViewManager>
 +		</js:views>
 +	</js:TabbedViewManager>
 +	
 +</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
index 0c353ff,0000000..5b99ae3
mode 100755,000000..100755
--- a/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
+++ b/examples/flexjs/MobileTrader/src/main/flex/MyInitialView.mxml
@@@ -1,256 -1,0 +1,256 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
 +				xmlns:local="*"
 +				xmlns:js="library://ns.apache.org/flexjs/basic"
 +				xmlns:views="views.*" 
 +				xmlns:apache="org.apache.flex.html.beads.*"
 +				xmlns:html="org.apache.flex.html.*"
 +				xmlns:controller="controller.*"
 +				initComplete="onInitComplete()" xmlns:models="models.*" >
 +	
 +	<fx:Style>
 +		@namespace js  "library://ns.apache.org/flexjs/basic";
 +		@namespace views  "views.*";
 +		
 +		js|Container {
 +			background-color: #FFFFFF;
 +		}
 +		
 +		js|StackedViewManager {
 +			padding-top: 0px;
 +			padding-bottom: 0px;
 +			padding-left: 0px;
 +			padding-right: 0px;
 +		}
 +		
 +		js|TabbedViewManager {
 +			position : absolute ;
 +			height : 100% ;
 +			width : 100% ;
 +			left : 0px ;
 +			top : 0px ;
 +			border: solid 1px #444444;
 +			background-color: #FFFFFF;
 +		}
 +		
 +		.NavigationBar {
 +			background-image: url("assets/background.png");
 +			height: 55px;
 +			IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.HorizontalLayout");
 +		}
 +		
 +		.TabBar {
 +			background-color: #DEDEDE;
 +			height: 55px;
 +			vertical-align: middle;
 +			line-height: 55px;
 +		}
 +		
 +		.BackButton:hover {
 +			background-image: url('assets/arrow_left_24.png');
 +		}
 +		
 +		.BackButton:active {
 +			background-image: url('assets/arrow_left_24.png');
 +		}
 +		
 +		.BackButton {
 +			background-image: url('assets/arrow_left_24.png');
 +		}
 +		
 +		.AssetsInner {
 +			padding-top: 5px;
 +			background-color: #FFFFFF;
 +		}
 +		
 +		views|AssetsView {
 +			width: 100%;
 +			height: 100%;
 +		}
 +		
 +		views|WatchListView {
 +			width: 100%;
 +			height: 100%;
 +			IBeadController:ClassReference('controller.WatchListController');
 +			background-color: #FFFFFF;
 +		}
 +		
 +		.WatchListInner {
 +			height: 480px;
 +			width:  100%;
 +			background-color: #FFFFFF;
 +		}
 +		
 +		.WatchListDataGrid {
 +			height: 480px;
 +			width:  100%;
 +		}
 +		
 +		.WatchListInputArea {
 +			background-color: #FFFFFF;
 +			width: 480px;
 +			height: 25px;
 +			padding-top: 5px;
 +			padding-bottom: 2px;
 +		}
 +		
 +		views|StockView {
 +			width: 100%;
 +			height: 100%;
 +		}
 +		
 +		views|AlertsView {
 +			width: 100%;
 +			height: 100%;
 +			IBeadController:ClassReference('controller.AlertsViewController');
 +		}
 +		
 +		.redCell {
 +			color: #FF0000;
 +		}
 +		
 +		.greenCell {
 +			color: #00FF00;
 +		}
 +		
 +		.ViewTitle {
 +			font-size: 18pt;
 +			font-weight: bold;
 +			padding: 10pt;
 +		}
 +		
 +		.StockName {
 +			font-size: 14pt;
 +			font-weight: normal;
 +			padding: 10pt;
 +		}
 +		
 +		.StockDetailArea {
 +			padding: 10pt;
 +		}
 +		
 +		.StockLabel {
 +			font-size: 18pt;
 +			font-weight: normal;
 +			color: #2255DD;
 +		}
 +		
 +		.StockRemoveButton {
 +			background-color: #FF5522;
 +			font-size: 16pt;
 +			font-weight: bold;
 +			color: #FFFFFF;
 +			width: 200px;
 +			height: 50px;
 +		}
 +		
 +		.StockRemoveButton:hover {
 +			background-color: #DD3300;
 +		}
 +		
 +		.StockValue {
 +			font-size: 18pt;
 +			font-weight: normal;
 +			color: #999999;
 +		}
 +		
 +		@media -flex-flash
 +		{
 +			.NavigationBar {
 +				IBackgroundBead: ClassReference("org.apache.flex.html.beads.BackgroundImageBead");
 +			}
 +		}
 +		
 +	</fx:Style>
 +	
 +	<fx:Script>
 +		<![CDATA[
 +			import org.apache.flex.core.IBeadController;
 +			import org.apache.flex.core.IBeadModel;
 +			import org.apache.flex.events.Event;
 +			import org.apache.flex.mobile.IViewManagerView;
 +			import org.apache.flex.mobile.IViewManager;
 +			import org.apache.flex.mobile.chrome.NavigationBar;
 +			
 +			private function onInitComplete():void
 +			{
 +			}
 +			
 +			private function onAssetsNext():void
 +			{
 +				
 +			}
 +			
 +			private function tabbedViewChanged(event:org.apache.flex.events.Event):void
 +			{
 +				var manager:IViewManager = event.currentTarget as IViewManager;
 +				trace("TabbedViewChanged for "+manager);
 +			}
 +			
 +			private function watchListStackChanged(event:org.apache.flex.events.Event):void
 +			{
 +				trace("watchlist stack changed");
 +				var manager:StackedViewManager = event.currentTarget as StackedViewManager;
 +				
 +				var currentView:IViewManagerView = manager.selectedView;
 +				backButton.visible = manager.views.length > 1;
 +			}
 +			
 +			private function goBack(event:org.apache.flex.events.MouseEvent):void
 +			{
 +				if (navController.selectedIndex == 1) {
 +					watchListStack.pop();
 +				}
 +			}
 +		]]>
 +	</fx:Script>
 +	
 +	<js:beads>
 +		<js:ViewDataBinding />
 +	</js:beads>
 +	
 +	<js:TabbedViewManager id="navController" width="100%" height="100%" x="0" y="0" viewChanged="tabbedViewChanged(event)">
 +		<js:navigationBarItems>
 +			<js:TextButton id="backButton" width="45" height="45" className="BackButton" visible="false" click="goBack(event)">
 +				<js:beads>
 +					<apache:ImageButtonView />
 +				</js:beads>
 +			</js:TextButton>
- 			<js:Image source="assets/logo.png" width="218" height="55" />
++			<js:Image url="assets/logo.png" width="218" height="55" />
 +		</js:navigationBarItems>
 +		<js:views>
 +			<js:StackedViewManager title="Assets">
 +				<js:views>
 +					<views:AssetsView id="assetsView" title="Assets" next="onAssetsNext()" />
 +				</js:views>
 +			</js:StackedViewManager>
 +			
 +			<js:StackedViewManager id="watchListStack" title="Watch List" viewChanged="watchListStackChanged(event)">
 +				<js:views>
 +					<views:WatchListView id="watchListView" dataModel="{applicationModel}"/>
 +				</js:views>
 +			</js:StackedViewManager>
 +			
 +			<views:AlertsView id="alertsView" title="Alerts" dataModel="{applicationModel}" />
 +		</js:views>
 +	</js:TabbedViewManager>
 +	
 +</js:View>


[39/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Merge branch 'develop' into feature-autobuild/example-maven-dirs

Posted by ca...@apache.org.
Merge branch 'develop' into feature-autobuild/example-maven-dirs


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/138a7b52
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/138a7b52
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/138a7b52

Branch: refs/heads/feature/mdl
Commit: 138a7b52b23a481d67b9abfacd102abf7e8dfec6
Parents: 9321215 0423210
Author: Carlos Rovira <ca...@apache.org>
Authored: Tue Nov 8 23:09:33 2016 +0100
Committer: Carlos Rovira <ca...@apache.org>
Committed: Tue Nov 8 23:09:33 2016 +0100

----------------------------------------------------------------------
 .../TeamPage/src/main/flex/models/MemberList.as | 24 +++++++++++++++++---
 .../flex/org/apache/flex/core/Application.as    |  2 --
 2 files changed, 21 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/138a7b52/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as
----------------------------------------------------------------------
diff --cc examples/flexjs/TeamPage/src/main/flex/models/MemberList.as
index 1b5c3e7,0000000..69d2220
mode 100644,000000..100644
--- a/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as
+++ b/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as
@@@ -1,82 -1,0 +1,100 @@@
 +////////////////////////////////////////////////////////////////////////////////
 +//
 +//  Licensed to the Apache Software Foundation (ASF) under one or more
 +//  contributor license agreements.  See the NOTICE file distributed with
 +//  this work for additional information regarding copyright ownership.
 +//  The ASF licenses this file to You 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.
 +//
 +////////////////////////////////////////////////////////////////////////////////
 +package models
 +{
 +	import org.apache.flex.collections.LazyCollection;
 +	import org.apache.flex.core.Application;
 +	import org.apache.flex.core.IBeadModel;
 +	import org.apache.flex.core.IStrand;
 +	import org.apache.flex.events.Event;
 +	import org.apache.flex.events.EventDispatcher;
 +	import org.apache.flex.events.IEventDispatcher;
 +	import org.apache.flex.net.HTTPService;
 +
 +	[Event(name="membersChanged", type="org.apache.flex.events.Event")]
 +	public class MemberList extends EventDispatcher implements IBeadModel
 +	{
 +		public function MemberList(target:IEventDispatcher=null)
 +		{
 +			super(target);
 +		}
 +
- 		public var members:Array = null;
++		private var _members:Array = null;
++		public function get members():Array
++		{
++			return _members;
++		}
++		public function set members(value:Array):void
++		{
++			_members = value;
++		}
 +
 +		private var app:Application;
 +		private var service:HTTPService;
 +		private var collection:LazyCollection;
 +
 +		private var _strand:IStrand;
 +		public function set strand(value:IStrand):void
 +		{
 +			_strand = value;
 +
 +			app = value as Application;
 +			if (app) {
 +				app.addEventListener("viewChanged", viewChangeHandler);
 +			}
 +		}
 +
 +		private function viewChangeHandler(event:Event):void
 +		{
 +			service = app["service"] as HTTPService;
 +			collection = app["collection"] as LazyCollection;
 +
 +			loadMembers();
 +		}
 +
 +		public function loadMembers():void
 +		{
 +			service.url = "team.json";
 +			service.send();
++			service.addEventListener("httpStatus", handleStatusReturn);
 +			service.addEventListener("complete", handleLoadComplete);
++			service.addEventListener("ioError", handleError);
++		}
++
++		public function handleStatusReturn(event:org.apache.flex.events.Event):void
++		{
++			// tbd: should handle a bad status here
 +		}
 +
 +		public function handleLoadComplete(event:org.apache.flex.events.Event):void
 +		{
 +			members = [];
- 			trace("We got something back");
- 			trace("Collection: "+collection.length+" items");
 +			for (var i:int=0; i < collection.length; i++) {
 +				var item:Object = collection.getItemAt(i);
 +				members.push(item);
 +			}
 +			dispatchEvent( new Event("membersChanged") );
 +		}
++
++		public function handleError(event:org.apache.flex.events.Event):void
++		{
++			// tbd: should handle error here
++		}
 +	}
 +}


[07/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductFilterPanel.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductFilterPanel.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductFilterPanel.mxml
new file mode 100755
index 0000000..fc2f535
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductFilterPanel.mxml
@@ -0,0 +1,215 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:VContainer xmlns:fx="http://ns.adobe.com/mxml/2009" 
+                  xmlns:js="library://ns.apache.org/flexjs/basic" 
+    xmlns:productsView="productsView.*"
+    xmlns:flexstore="samples.flexstore.*"
+    height="100%" 
+    currentState="showingThumbnails"
+    initComplete="series.selectedIndex = 0">
+    <js:style>
+        <js:SimpleCSSStyles paddingLeft="4" 
+                               paddingRight="12" 
+                               paddingTop="12" 
+                               paddingBottom="8" 
+                               />
+
+    </js:style>
+    
+    <fx:Metadata>
+       [Event(name="filter", type="samples.flexstore.ProductFilterEvent")] 
+       [Event("compare")]
+    </fx:Metadata>
+    
+    <fx:Script>
+        <![CDATA[
+        import org.apache.flex.html.Slider;
+        import org.apache.flex.html.SimpleAlert; 
+        import samples.flexstore.ProductFilterEvent;
+           
+        private var thumbBeingPressed:Boolean;
+           
+        private function dispatchFilter():void
+        {
+            var event:ProductFilterEvent = 
+                new ProductFilterEvent(filter, thumbBeingPressed);
+            dispatchEvent(event);
+            currentState = "showingThumbnails";
+        }
+        
+        private function sliderValue(values:Array, index:int):Number
+        {
+            return values[index];
+        }
+        
+        private function productRemoved():void
+        {
+            if (currentState == "showingComparison")
+            {
+                if (productList.items.length == 0)
+                {
+                    dispatchFilter();
+                }
+                else
+                {
+                    attemptCompare();
+                }
+            }
+        }
+        
+        private function attemptCompare():void
+        {
+            if (productList.items.length > 0)
+            {
+                dispatchEvent(new Event("compare"));
+                currentState = "showingComparison";
+            }
+            else
+            {
+                SimpleAlert.show("There are no items to compare.", "Compare");
+            }
+        }
+        
+        ]]>
+    </fx:Script>
+    <fx:Declarations>
+        <flexstore:ProductFilter id="filter">
+            <flexstore:experience>{series.selectedItem}</flexstore:experience>
+            <flexstore:minPrice>{loPrice.value}</flexstore:minPrice>
+            <flexstore:maxPrice>{hiPrice.value}</flexstore:maxPrice>
+            <flexstore:blazeds>{cbBlazeDS.selected}</flexstore:blazeds>
+            <flexstore:mobile>{cbMobile.selected}</flexstore:mobile>
+            <flexstore:video>{cbVideo.selected}</flexstore:video>
+        </flexstore:ProductFilter>
+        
+        <js:CurrencyFormatter currencySymbol="$" id="cf"/>    
+        
+    </fx:Declarations>
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+    
+    <js:Label text="Find" className="sectionHeader"/>
+    
+    <js:Container width="100%">
+        <js:beads>
+            <js:FlexibleFirstChildHorizontalLayout />
+        </js:beads>
+        <js:TextInput className="glass" width="100%"/>
+        <js:TextButton className="glass" text="Go" click="SimpleAlert.show('This feature is not implemented in this sample', 'Find')"/>
+    </js:Container>
+
+    <js:Spacer height="18"/>
+
+    <js:HRule width="100%"/>
+
+    <js:Spacer height="8"/>
+
+    <js:HContainer>
+        <js:style>
+            <js:SimpleCSSStyles paddingTop="0" paddingLeft="0" verticalAlign="bottom" />
+        </js:style>
+        <js:Label text="Filter" className="sectionHeader"/>
+        <js:Label text="({filter.count} items selected)" >
+            <js:style>
+                <js:SimpleCSSStyles fontWeight="bold" />
+                <!--<js:SimpleCSSStyles color="{getStyle('themeColor')}" fontWeight="bold" />-->
+            </js:style>
+        </js:Label>
+    </js:HContainer>
+
+    <js:Spacer height="8"/>
+
+    <js:Label text="Years of Experience"/>
+
+    <js:DropDownList id="series" className="glass" width="140" change="dispatchFilter();">
+        <js:dataProvider>
+            <fx:Array>
+                <fx:String>All</fx:String>
+                <fx:String>3</fx:String>
+                <fx:String>5</fx:String>
+                <fx:String>7</fx:String>
+                <fx:String>9</fx:String>
+            </fx:Array>                
+        </js:dataProvider>
+    </js:DropDownList>
+
+    <js:Spacer height="18"/>
+
+    <js:Label text="Price"/>
+
+    <!--<s:HSlider id="priceSlider" className="glassSlider" minimum="0" maximum="200" tickInterval="10" snapInterval="10"
+        width="100%" thumbCount="2" values="[0,200]" labels="[$0,$200]" liveDragging="true" dataTipFormatFunction="{cf.format}"
+        change="dispatchFilter()"
+        thumbPress="thumbBeingPressed=true"
+        thumbRelease="thumbBeingPressed=false;dispatchFilter()"
+        />-->
+    <js:HContainer id="nsholder" width="100%">
+        <js:NumericStepper width="48%" id="loPrice" minimum="0" maximum="{hiPrice.value}" value="0" valueChange="dispatchFilter()" />
+        <js:NumericStepper width="48%" id="hiPrice" minimum="{loPrice.value}" maximum="200" value="200" valueChange="dispatchFilter()" />
+    </js:HContainer>
+
+    <js:Spacer height="18"/>
+
+    <js:Label text="Required Features"/>
+
+    <js:Spacer height="4"/>
+
+    <js:CheckBox id="cbBlazeDS" className="glass" text="BlazeDS" click="dispatchFilter();"/>
+    <js:Spacer height="4"/>
+    <js:CheckBox id="cbMobile" className="glass" text="Mobile" click="dispatchFilter()"/>
+    <js:Spacer height="4"/>
+    <js:CheckBox id="cbVideo" className="glass" text="Video" click="dispatchFilter();"/>
+
+    <js:Spacer height="18"/>
+
+    <js:HRule width="100%"/>
+
+    <js:Spacer height="8"/>
+
+        <js:HContainer>
+            <js:Label text="Compare" className="sectionHeader"/>
+            <js:Label text="(Drag items here to compare)" className="instructions"/>
+        </js:HContainer>
+
+
+    <js:Spacer height="4"/>
+
+    <!-- height is maxItems * ProductListItem.HEIGHT + 2px border -->
+    <productsView:ProductList id="productList" height="{productList.maxItems * ProductListItem.HEIGHT + 2}" width="100%"
+        newItemStartX="300" newItemStartY="-100" maxItems="4" 
+        removeProduct="productRemoved()"/>
+
+    <js:Spacer height="8"/>
+    
+    <js:ImageAndTextButton id="compareButton" className="glass" 
+                  click.showingThumbnails="attemptCompare()"
+                  click.showingComparison="dispatchFilter()"            
+                  text.showingComparison="Back to thumbnail view"
+                  text.showingThumbnails="Compare Items"
+                  image.showingThumbnails="assets/icon_compare.png"
+                  image.showingComparison="assets/icon_tiles.png" />
+    
+    <js:states>
+       <js:State name="showingThumbnails" />
+       <js:State name="showingComparison" />
+    </js:states>
+
+</js:VContainer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductList.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductList.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductList.mxml
new file mode 100755
index 0000000..7351e06
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductList.mxml
@@ -0,0 +1,219 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
+                 xmlns:js="library://ns.apache.org/flexjs/basic" 
+    > 
+    <js:style>
+        <js:SimpleCSSStyles borderStyle="solid" borderWidth="1" backgroundColor="#BCB29F" />
+    </js:style>
+    <!-- need a background color for drag and drop but can set alpha to 0 -->
+    
+    <fx:Metadata>
+       [Event(name="addProduct", type="samples.flexstore.ProductListEvent")]
+       [Event(name="duplicateProduct", type="samples.flexstore.ProductListEvent")]
+       [Event(name="productQtyChange", type="samples.flexstore.ProductListEvent")]
+       [Event(name="removeProduct", type="samples.flexstore.ProductListEvent")]
+    </fx:Metadata>
+
+    <fx:Script>
+        <![CDATA[
+        import org.apache.flex.effects.Effect;
+        import org.apache.flex.effects.Move;
+        import org.apache.flex.effects.Sequence;
+        import org.apache.flex.core.DropType;
+        import org.apache.flex.core.IUIBase;
+        import org.apache.flex.events.DragEvent;
+        
+        import samples.flexstore.Product;
+        import samples.flexstore.ProductListEvent;
+        
+        public var items:Array;
+        
+        public var newItemStartX:int;
+        public var newItemStartY:int;
+        [Bindable]
+        public var maxItems:int = 0;
+        public var showQuantity:Boolean;
+        
+        private var playingEffects:Object = new Object();
+        
+        public function addProduct(product:Product):void
+		{
+            if (items == null)
+                items = [];
+            
+            var index:int = indexOf(product.productId);
+            var event:ProductListEvent;
+            var item:ProductListItem;
+            
+            if (index != -1)
+			{
+			    item = items[index] as ProductListItem;
+			    //if we don't keep track of what's playing a double-click can
+			    //cause the list item to keep rising
+			    if (playingEffects[item.uid] == null)
+			    {
+                    var jump:Sequence = new Sequence();
+                    var m1:Move = new Move(item)
+                    m1.yBy = -5;
+                    var m2:Move = new Move(item)
+                    m2.yBy = 5;
+                    jump.addChild(m1);
+                    jump.addChild(m2);
+                    jump.duration = 150;
+                    playingEffects[item.uid] = jump;
+                    jump.addEventListener(Effect.EFFECT_END, function(event:Event):void
+                    {
+                       delete playingEffects[item.uid];
+                    });
+                    jump.play();
+                }
+                event = new ProductListEvent(ProductListEvent.DUPLICATE_PRODUCT);
+                event.product = item.product;
+                dispatchEvent(event);
+            }
+			else
+			{
+                index = items.length;
+                if (maxItems <= 0 || index < maxItems)
+				{
+				    item = new ProductListItem();
+				    if (showQuantity)
+				    {
+				        item.currentState = 'showQuantity';
+				    }
+				    item.product = product;
+				    item.percentWidth = 100;
+				    item.addEventListener(ProductListEvent.REMOVE_PRODUCT, removeItemHandler);
+                    items[index] = item;
+                    viewport.addElement(item);
+                    layoutItems(index, true);
+                    event = new ProductListEvent(ProductListEvent.ADD_PRODUCT);
+                    event.product = product;
+                    dispatchEvent(event);
+                }
+            }
+        }
+        
+        public function getProducts():Array
+        {
+            var ret:Array = [];
+            for (var i:int = 0; i < items.length; i++)
+            {
+                ret[i] = ProductListItem(items[i]).product;
+            }
+            return ret;
+        }
+        
+        private function removeItemHandler(event:Event):void
+        {
+            var item:ProductListItem = event.target as ProductListItem;
+            var index:int = indexOf(item.product.productId);
+            items.splice(index, 1);
+            viewport.removeElement(item);
+            layoutItems(index);
+        }
+            
+        private function layoutItems(startIndex:int, scrollToBottom:Boolean=false):void
+		{
+            var n:int = items.length;
+            var e:Move;
+			for (var i:int = startIndex; i < n ; i++)
+			{
+			    var item:ProductListItem = items[i];
+                var yTo:Number = i * (item.height);
+                //still need to prevent items that are already in motion from getting
+                //jumpy
+			    if (playingEffects[item.uid] == null)
+			    {
+                    e = new Move(item);
+                    if (item.x == 0 && item.y == 0)
+    				{
+    					e.xFrom = newItemStartX;
+    					e.yFrom = newItemStartY;
+                    }
+    
+                    e.xTo = 0;
+                    e.yTo = yTo;
+                    playingEffects[item.uid] = e;
+                    e.addEventListener(Effect.EFFECT_END, function(event:Event):void
+                    {
+                       delete playingEffects[item.uid];
+                    });
+                    e.play();
+                }
+                else
+                {
+                    playingEffects[item.uid].pause();
+                    playingEffects[item.uid].yTo = yTo;
+                    playingEffects[item.uid].play();
+                }
+            }
+            //get the last event and if we should scroll make sure we can validate
+            //and scroll to maxVPosition
+            if (scrollToBottom)
+            {
+                e.addEventListener(Effect.EFFECT_END, function(event:Event):void
+                {
+  //TODO                  scrollingView.model.verticalScrollPosition = scrollingView.maxVerticalScrollPosition;    
+                });
+            }
+        }
+        
+        private function indexOf(productId:int):int
+		{
+            var index:int = -1;
+
+            var n:int = items.length;
+			for (var i:int = 0; i < items.length; i++)
+			{
+                if (ProductListItem(items[i]).product.productId == productId)
+				{
+                    index = i;
+                    break;
+                }
+            }
+
+            return index;
+        }     
+
+        private function doDragEnter(event:DragEvent):void
+        {
+            trace("doDragEnter");
+            dmc.acceptDragDrop(event.target as IUIBase, DropType.COPY);
+        }
+
+        private function doDragDrop(event:DragEvent):void
+        {
+            trace("doDragDrop");
+            var product:Product = DragEvent.dragSource as Product;
+            addProduct(product);
+        }  
+ 
+        ]]>
+    </fx:Script>
+    <js:beads>
+        <js:DropMouseController id="dmc" dragEnter="doDragEnter(event)" dragDrop="doDragDrop(event)" />
+        <js:VerticalLayout />
+		<js:ScrollingViewport id="scrollingView" />
+    </js:beads>
+    <js:Container id="viewport" width="100%" height="100%" >
+    </js:Container>
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductListItem.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductListItem.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductListItem.mxml
new file mode 100755
index 0000000..edf3516
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductListItem.mxml
@@ -0,0 +1,140 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
+                    xmlns:js="library://ns.apache.org/flexjs/basic" 
+    className="listItem" 
+    height="{HEIGHT}" implements="org.apache.flex.core.IItemRenderer">
+    <!--automationName="{product.name}">-->
+
+    <fx:Metadata>
+       [Event(name="productQtyChange", type="samples.flexstore.ProductListEvent")]
+       [Event(name="removeProduct", type="samples.flexstore.ProductListEvent")]
+    </fx:Metadata>
+    
+    <fx:Script>
+    <![CDATA[
+    
+        import samples.flexstore.Product;
+        import samples.flexstore.ProductListEvent;
+        
+        private static var idCounter:int = 0;
+        public var uid:String = (idCounter++).toString();
+        
+        public static const HEIGHT:int = 30;
+        
+        [Bindable("__NoChangeEvent__")]
+        public function get product():Product
+        {
+            return _data as Product;
+        }
+        public function set product(value:Product):void
+        {
+            _data = value;
+        }
+        
+        private var _data:Object;
+        
+        public function get data():Object
+        {
+            return _data;
+        }
+        
+        public function set data(value:Object):void
+        {
+            _data = value;
+        }
+        
+        public function get listData():Object
+        {
+        	return null;
+        }
+        
+        public function set listData(value:Object):void
+        {
+        	// not used
+        }
+
+        private var _itemRendererParent:Object;
+        
+        public function get itemRendererParent():Object
+        {
+            return _itemRendererParent;
+        }
+        
+        public function set itemRendererParent(value:Object):void
+        {
+            _itemRendererParent = value;
+        }
+        
+        private function qtyChange():void
+    	{
+            product.qty = int(qty.text);
+            var event:ProductListEvent = new ProductListEvent(ProductListEvent.PRODUCT_QTY_CHANGE);
+            event.product = product;
+    		dispatchEvent(event);
+        }
+        
+        private function removeItem():void
+        {
+            var event:ProductListEvent = new ProductListEvent(ProductListEvent.REMOVE_PRODUCT);
+            event.product = product;
+    		dispatchEvent(event);
+        }
+        
+    ]]>
+    </fx:Script>
+    
+    <fx:Declarations>
+        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>
+    </fx:Declarations>
+    
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+        
+    <js:ImageButton id="removeButton" source="assets/trashcan.png"
+        width="14" height="14" y="5"
+        click="removeItem()">
+        <js:beads>
+            <js:ToolTipBead toolTip="Remove from cart" />
+        </js:beads>
+    </js:ImageButton>
+    
+    <js:Image id="productImage" x="16" y="6" width="12" height="12" source="{product.image}"/>
+
+    <js:Label id="productName" x="30" width="100" y="4" text="{product.name}"/>
+
+    <js:Label id="productPrice" width="60" y="4"
+        text="{cf.format(product.price)}" style="textAlign:right;right:0"
+                                style.showQuantity="textAlign:right;right:25"/>
+        
+    <js:TextInput id="qty" width="25" y="3" text="{product.qty}" includeIn="showQuantity"
+                  style="textAlign:right;right:0;marginTop:0" change="qtyChange()" >
+        <js:beads>
+            <js:NumericOnlyTextInputBead maxChars="3" />
+        </js:beads>
+    </js:TextInput>
+    
+    <js:states>
+        <js:State name="compare" />
+        <js:State name="showQuantity" />
+    </js:states>
+    
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductSupport.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductSupport.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductSupport.mxml
new file mode 100755
index 0000000..5b2bd32
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductSupport.mxml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:HContainer xmlns:fx="http://ns.adobe.com/mxml/2009" 
+          xmlns:js="library://ns.apache.org/flexjs/basic" 
+		 >
+    <js:style>
+        <js:SimpleCSSStyles paddingLeft="4" paddingRight="8" paddingBottom="4" />
+    </js:style>
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+
+    <fx:Script>
+	<![CDATA[
+
+        private function toggle():void
+		{
+			/*
+            if (vd.playing)
+			{
+                vd.stop();
+                list.visible = true;
+            }
+			else
+			{
+                list.visible = false;
+                vd.play();
+            }
+			*/
+        }
+
+	]]>
+    </fx:Script>
+
+    <fx:Declarations>
+        <js:Parallel id="hideList">
+            <js:children>
+                <fx:Array>
+                    <js:Resize target="{list}" widthTo="0"/>
+                    <!--<mx:Resize target="{vd}" widthTo="400" heightTo="314"/>-->
+                </fx:Array>
+            </js:children>
+        </js:Parallel>
+        
+        <js:Parallel id="showList">
+            <js:children>
+                <fx:Array>
+                    <js:Resize target="{list}" widthTo="130"/>
+                    <!--<mx:Resize target="{vd}" widthTo="270" heightTo="217"/>-->
+                </fx:Array>
+            </js:children>
+        </js:Parallel>        
+    </fx:Declarations>
+    <js:List id="list" width="130" height="100%" selectedIndex="0">
+        <js:dataProvider>
+            <fx:Array>
+                <fx:Object label="Install SIM Card"/>
+            </fx:Array>
+        </js:dataProvider>
+    </js:List>
+
+    <js:Container width="100%">
+
+		<!--<mx:VideoDisplay id="vd" width="270" height="217" source="assets/phone.flv"
+						 autoPlay="false" complete="list.visible=true"/>
+
+		<mx:Button label="{vd.playing ? 'Stop' : 'Play'}" click="toggle()" left="8" bottom="8" includeInLayout="false">
+		</mx:Button>
+		-->
+	</js:Container>
+
+
+</js:HContainer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ButtonBarButtonSkin.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ButtonBarButtonSkin.as b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ButtonBarButtonSkin.as
new file mode 100755
index 0000000..0c36aad
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ButtonBarButtonSkin.as
@@ -0,0 +1,298 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package samples.flexstore
+{
+
+import flash.display.GradientType;
+import mx.containers.BoxDirection;
+import mx.controls.Button;
+import mx.controls.ButtonBar;
+import mx.skins.Border;
+import mx.skins.halo.*;
+import mx.styles.StyleManager;
+import mx.utils.ColorUtil;
+
+/**
+ *  Adapted from mx.skins.halo.ButtonBarButtonSkin.
+ *  This version of the ButtonBarButtonSkin is applied for the
+ *  selectedOver, selectedUp, and over states to use the 2nd two
+ *  values of the fillColors for the selected state of the
+ *  button.  The over state then uses a computed value from
+ *  the themeColor to show emphasis.  The border of the selected
+ *  button also uses a computed value from the themeColor, but
+ *  is partially transparent.
+ */
+public class ButtonBarButtonSkin extends Border
+{
+	//--------------------------------------------------------------------------
+	//
+	//  Class variables
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	private static var cache:Object = {};
+
+	//--------------------------------------------------------------------------
+	//
+	//  Class methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 *  Several colors used for drawing are calculated from the base colors
+	 *  of the component (themeColor, borderColor and fillColors).
+	 *  Since these calculations can be a bit expensive,
+	 *  we calculate once per color set and cache the results.
+	 */
+	private static function calcDerivedStyles(themeColor:uint,
+											  fillColor0:uint,
+											  fillColor1:uint):Object
+	{
+		var key:String = HaloColors.getCacheKey(themeColor,
+												fillColor0, fillColor1);
+
+		if (!cache[key])
+		{
+			var o:Object = cache[key] = {};
+
+			// Cross-component styles.
+			HaloColors.addHaloColors(o, themeColor, fillColor0, fillColor1);
+
+			// Button-specific styles.
+			o.innerEdgeColor1 = ColorUtil.adjustBrightness2(fillColor0, -10);
+			o.innerEdgeColor2 = ColorUtil.adjustBrightness2(fillColor1, -25);
+		}
+
+		return cache[key];
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Constructor
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 *  Constructor.
+	 */
+	public function ButtonBarButtonSkin()
+	{
+		super();
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden properties
+	//
+	//--------------------------------------------------------------------------
+
+	//----------------------------------
+	//  measuredWidth
+	//----------------------------------
+
+	/**
+	 *  @private
+	 */
+	override public function get measuredWidth():Number
+	{
+		return 50;
+	}
+
+	//----------------------------------
+	//  measuredHeight
+	//----------------------------------
+
+	/**
+	 *  @private
+	 */
+	override public function get measuredHeight():Number
+	{
+		return 22;
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	override protected function updateDisplayList(w:Number, h:Number):void
+	{
+		super.updateDisplayList(w, h);
+
+		// User-defined styles.
+		var borderColor:uint = getStyle("borderColor");
+		var cornerRadius:Number = getStyle("cornerRadius");
+		var fillAlphas:Array = getStyle("fillAlphas");
+		var fillColors:Array = getStyle("fillColors");
+		styleManager.getColorNames(fillColors);
+		var highlightAlphas:Array = getStyle("highlightAlphas");
+		var themeColor:uint = getStyle("themeColor");
+
+		// Derivative styles.
+		var derStyles:Object = calcDerivedStyles(themeColor, fillColors[0],
+												 fillColors[1]);
+
+		var borderColorDrk1:Number =
+			ColorUtil.adjustBrightness2(borderColor, -50);
+
+		var themeColorDrk1:Number =
+			ColorUtil.adjustBrightness2(themeColor, -25);
+
+		var emph:Boolean = false;
+
+		if (parent is Button)
+			emph = (parent as Button).emphasized;
+
+		var tmp:Number;
+
+		var bar:ButtonBar = parent ? ButtonBar(parent.parent) : null;
+		var horizontal:Boolean = true;
+		var pos:int = 0;
+
+		if (bar)
+		{
+			if (bar.direction == BoxDirection.VERTICAL)
+				horizontal = false;
+
+			// first: -1, middle: 0, last: 1
+			var index:int = bar.getChildIndex(parent);
+			pos = (index == 0 ? -1 : (index == bar.numChildren - 1 ? 1 : 0));
+		}
+
+		var radius:Object = getCornerRadius(pos, horizontal, cornerRadius);
+		var cr:Object = getCornerRadius(pos, horizontal, cornerRadius);
+		var cr1:Object = getCornerRadius(pos, horizontal, cornerRadius - 1);
+		var cr2:Object = getCornerRadius(pos, horizontal, cornerRadius - 2);
+		var cr3:Object = getCornerRadius(pos, horizontal, cornerRadius - 3);
+
+		graphics.clear();
+
+		switch (name)
+		{
+			case "selectedUpSkin":
+			case "selectedOverSkin":
+			{
+				var overFillColors:Array;
+				if (fillColors.length > 2)
+					overFillColors = [ fillColors[2], fillColors[3] ];
+				else
+					overFillColors = [ fillColors[0], fillColors[1] ];
+
+				var overFillAlphas:Array;
+				if (fillAlphas.length > 2)
+					overFillAlphas = [ fillAlphas[2], fillAlphas[3] ];
+  				else
+					overFillAlphas = [ fillAlphas[0], fillAlphas[1] ];
+
+				// button border/edge
+				drawRoundRect(
+					0, 0, w, h, cr,
+					[ themeColor, derStyles.themeColDrk1 ], 0.5,
+					verticalGradientMatrix(0, 0, w , h),
+					GradientType.LINEAR, null,
+					{ x: 1, y: 1, w: w - 2, h: h - 2, r: cr1 });
+
+				// button fill
+				drawRoundRect(
+					1, 1, w - 2, h - 2, cr1,
+					overFillColors, overFillAlphas,
+					verticalGradientMatrix(0, 0, w - 2, h - 2));
+
+				// top highlight
+				if (!(radius is Number))
+					{ radius.bl = radius.br = 0;}
+				drawRoundRect(
+					1, 1, w - 2, (h - 2) / 2, radius,
+					[ 0xFFFFFF, 0xFFFFFF ], highlightAlphas,
+					verticalGradientMatrix(1, 1, w - 2, (h - 2) / 2));
+				break;
+			}
+
+			case "overSkin":
+			{
+				// button border/edge
+				drawRoundRect(
+					0, 0, w, h, cr,
+					[ themeColor, derStyles.themeColDrk1 ], 0.5,
+					verticalGradientMatrix(0, 0, w, h));
+
+				// button fill
+				drawRoundRect(
+					1, 1, w - 2, h - 2, cr1,
+					[ derStyles.fillColorPress1, derStyles.fillColorPress2 ], 1,
+					verticalGradientMatrix(0, 0, w - 2, h - 2));
+
+				// top highlight
+				if (!(radius is Number))
+					{ radius.bl = radius.br = 0;}
+				drawRoundRect(
+					1, 1, w - 2, (h - 2) / 2, radius,
+					[ 0xFFFFFF, 0xFFFFFF ], highlightAlphas,
+					verticalGradientMatrix(1, 1, w - 2, (h - 2) / 2));
+
+				break;
+			}
+		}
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	private function getCornerRadius(pos:int, horizontal:Boolean,
+									 radius:Number):Object
+	{
+		if (pos == 0)
+			return 0;
+
+		radius = Math.max(0, radius);
+
+		if (horizontal)
+		{
+			if (pos == -1)
+				return { tl: radius, tr: 0, bl: radius, br: 0 };
+			else // pos == 1
+				return { tl: 0, tr: radius, bl: 0, br: radius };
+		}
+		else
+		{
+			if (pos == -1)
+				return { tl: radius, tr: radius, bl: 0, br: 0 };
+			else // pos == 1
+				return { tl: 0, tr: 0, bl: radius, br: radius };
+		}
+	}
+}
+
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/Product.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/Product.as b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/Product.as
new file mode 100755
index 0000000..707fbf6
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/Product.as
@@ -0,0 +1,78 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package samples.flexstore
+{
+
+[Bindable]
+public class Product
+{
+
+    public var productId:int;
+    public var name:String;
+    public var description:String;
+    public var price:Number;
+    public var image:String;
+    public var experience:String;
+    public var blazeds:Boolean;
+    public var mobile:Boolean;
+    public var video:Boolean;
+    public var highlight1:String;
+    public var highlight2:String;
+    public var qty:int;
+
+    public function Product()
+    {
+
+    }
+
+    public function fill(obj:Object):void
+    {
+        for (var i:String in obj)
+        {
+            this[i] = obj[i];
+        }
+    }
+
+    [Bindable(event="propertyChange")]
+    public function get featureString():String
+    {
+    	var str:String = "";
+    	if (blazeds)
+    		str += "BlazeDS";
+
+		if (mobile)
+		{
+			if (str.length > 0)
+				str += "\n";
+			str += "Mobile";
+		}
+
+		if (video)
+		{
+			if (str.length > 0)
+				str += "\n";
+			str += "Video";
+		}
+
+		return str;
+    }
+
+}
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductFilter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductFilter.as b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductFilter.as
new file mode 100755
index 0000000..b31f367
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductFilter.as
@@ -0,0 +1,56 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package samples.flexstore
+{
+
+[Bindable]
+public class ProductFilter
+{
+    public var count:int;
+    public var experience:String;
+    public var minPrice:Number;
+    public var maxPrice:Number;
+    public var blazeds:Boolean;
+    public var mobile:Boolean;
+    public var video:Boolean;
+    
+    public function ProductFilter()
+    {
+        super();
+    }
+    
+    public function accept(product:Product):Boolean
+    {
+        //price is often the first test so let's fail fast if possible
+        if (minPrice > product.price || maxPrice < product.price)
+            return false;
+        if (experience != "All" && experience > product.experience)
+            return false;
+        if (blazeds && !product.blazeds)
+            return false;
+        if (mobile && !product.mobile)
+            return false;
+        if (video && !product.video)
+            return false;
+        
+        return true;
+    }
+}
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductFilterEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductFilterEvent.as b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductFilterEvent.as
new file mode 100755
index 0000000..0160f50
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductFilterEvent.as
@@ -0,0 +1,39 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package samples.flexstore
+{
+
+import org.apache.flex.events.Event;
+
+public class ProductFilterEvent extends Event
+{
+    public static const FILTER:String = "filter";
+    
+    public var live:Boolean;
+    public var filter:ProductFilter;
+    
+    public function ProductFilterEvent(filter:ProductFilter, live:Boolean)
+    {
+        super(FILTER);
+        this.filter = filter;
+        this.live = live;
+    }
+}
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductListEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductListEvent.as b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductListEvent.as
new file mode 100755
index 0000000..0356795
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductListEvent.as
@@ -0,0 +1,42 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package samples.flexstore
+{
+
+import org.apache.flex.events.Event;
+
+public class ProductListEvent extends Event
+{
+    public static const ADD_PRODUCT:String = "addProduct";
+    public static const DUPLICATE_PRODUCT:String = "duplicateProduct";
+    public static const REMOVE_PRODUCT:String = "removeProduct";
+    public static const PRODUCT_QTY_CHANGE:String = "productQtyChange";
+    
+    public var product:Product;
+    
+    //making the default bubbles behavior of the event to true since we want
+    //it to bubble out of the ProductListItem and beyond
+    public function ProductListEvent(type:String, bubbles:Boolean=true, cancelable:Boolean=false)
+    {
+        super(type, bubbles, cancelable);
+    }
+    
+}
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductThumbEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductThumbEvent.as b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductThumbEvent.as
new file mode 100755
index 0000000..ce1cab7
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/samples/flexstore/ProductThumbEvent.as
@@ -0,0 +1,45 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package samples.flexstore
+{
+    
+import org.apache.flex.events.Event;
+
+public class ProductThumbEvent extends Event
+{
+    public static const PURCHASE:String = "purchase";
+    public static const COMPARE:String = "compare";
+    public static const DETAILS:String = "details";
+    public static const BROWSE:String = "browse";
+    
+    public var product:Product;
+    
+    public function ProductThumbEvent(type:String, product:Product)
+    {
+        super(type);
+        this.product = product;
+    }
+    
+    override public function cloneEvent():Event
+    {
+        return new ProductThumbEvent(type, product);
+    }
+}
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/productsView/CatalogTitleButtons.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/productsView/CatalogTitleButtons.mxml b/examples/flexjs/FlexJSStore_jquery/src/productsView/CatalogTitleButtons.mxml
deleted file mode 100755
index af9cfd1..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/productsView/CatalogTitleButtons.mxml
+++ /dev/null
@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:HContainer xmlns:fx="http://ns.adobe.com/mxml/2009"
-                  xmlns:js="library://ns.apache.org/flexjs/basic" 
-                  currentState="showFilter">
-    <js:style>
-        <js:SimpleCSSStyles verticalAlign="middle" 
-                               paddingTop="0" 
-                               paddingBottom="0" />
-    </js:style>
-    <js:beads>
-        <js:ParentDocumentBead id="pdb" />
-        <js:ContainerDataBinding />
-        <js:LayoutChangeNotifier watchedProperty="{viewCart.text}" initialValue="#FFFFFF" />
-    </js:beads>
-    <fx:Script>
-        <![CDATA[
-            [Bindable]
-            public var cartCount:int;
-            
-            private function rollOverLabel(event:MouseEvent):void
-            {
-                try {
-                    Label(event.target).className = "catalogTitleButtonHighlighted";
-                } catch (e:Error) {}
-            }
-            
-            private function rollOutLabel(event:MouseEvent):void
-            {
-                Label(event.target).className = "catalogTitleButtonDeselected";
-            }
-        ]]>
-    </fx:Script>
-    <fx:Binding source="ProductCatalogPanel(pdb.parentDocument).cartCount" destination="cartCount" />
-    <!-- two-way binding between the states of panel title buttons and the product view state -->
-    <fx:Binding source="ProductsView(ProductCatalogPanel(pdb.parentDocument).pdb.parentDocument).currentState" destination="currentState" />
-    <fx:Binding destination="ProductsView(ProductCatalogPanel(pdb.parentDocument).pdb.parentDocument).currentState" source="currentState" />    
-
-    <js:Label id="findPhones" text="Find Developers" click="currentState = 'showFilter'"
-             className.showFilter="catalogTitleButtonSelected"
-             className.showCart="catalogTitleButtonDeselected"
-             rollOver.showCart="rollOverLabel(event)"
-             rollOut.showCart="rollOutLabel(event)"/>
-    <js:VRule height="{findPhones.height * .75}" alpha=".75" style="color:#333333" />
-    <js:Label id="viewCart" text="View Cart ({cartCount} items)" click="currentState = 'showCart'"
-             className.showFilter="catalogTitleButtonDeselected"
-             className.showCart="catalogTitleButtonSelected"
-             rollOver.showFilter="rollOverLabel(event)"
-             rollOut.showFilter="rollOutLabel(event)"/>
-    
-    <js:states>
-        <js:State name="showFilter" />
-        <js:State name="showCart" />
-    </js:states>
-</js:HContainer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/productsView/Grip.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/productsView/Grip.mxml b/examples/flexjs/FlexJSStore_jquery/src/productsView/Grip.mxml
deleted file mode 100755
index 281c572..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/productsView/Grip.mxml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-                  xmlns:js="library://ns.apache.org/flexjs/basic" 
-                  width="17" height="100%" >
-    <js:style>
-        <js:SimpleCSSStyles paddingTop="10" />
-    </js:style>
-
-    <fx:Script>
-        <![CDATA[
-           [Bindable]
-           public var gripTip:String; 
-           
-           [Bindable]
-           public var gripIcon:String;
-        ]]>
-    </fx:Script>
-    <js:beads>
-        <js:ContainerDataBinding />
-        <js:OneFlexibleChildVerticalLayout flexibleChild="grip" />
-    </js:beads>
-
-    <js:Image id="icon" source="{gripIcon}" />
-    <js:Image id="grip" source="assets/grip.png" >
-        <js:beads>
-            <js:ToolTipBead toolTip="{gripTip}" />
-        </js:beads>
-    </js:Image>
-    
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCart.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCart.mxml b/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCart.mxml
deleted file mode 100755
index 830bf21..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCart.mxml
+++ /dev/null
@@ -1,117 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-          xmlns:js="library://ns.apache.org/flexjs/basic" 
-    xmlns:productsView="productsView.*"
-    >
-    <js:style>
-        <js:SimpleCSSStyles 
-                               paddingTop="8"
-                               paddingBottom="8"
-                               paddingRight="4"
-                               paddingLeft="4" />
-    </js:style>
-    <js:beads>
-        <js:ContainerDataBinding />
-        <js:OneFlexibleChildVerticalLayout id="flexLayout" flexibleChild="productList" />
-    </js:beads>
-    <fx:Script>
-        <![CDATA[
-        
-        import org.apache.flex.html.SimpleAlert;
-        
-        import samples.flexstore.Product;
-        import samples.flexstore.ProductListEvent;
-        
-        [Bindable]
-        public var numProducts:int=0;
-        
-        [Bindable]
-        private var total:Number = 0;
-
-        private const SHIPPING:Number = 1.99;
-        
-        private function productListEventHandler(event:ProductListEvent):void
-        {
-            switch (event.type)
-            {
-                case ProductListEvent.ADD_PRODUCT:
-                    event.product.qty = 0;  
-                    //fall through into the same logic as dup          
-                case ProductListEvent.DUPLICATE_PRODUCT:
-                    event.product.qty++;
-                    //total += event.product.price;
-                    total = total + event.product.price;
-                    numProducts++;
-                    break;            
-                case ProductListEvent.PRODUCT_QTY_CHANGE:
-                case ProductListEvent.REMOVE_PRODUCT:
-                    var items:Array = productList.items;
-                    total = 0; 
-                    numProducts = 0;
-                    for (var i:int=0; i < items.length; i++)
-                    {
-                        var product:Product = items[i].product;
-                        //total += product.qty * product.price;
-                        //numProducts += product.qty;
-                        total = total + product.qty * product.price;
-                        numProducts = numProducts + product.qty;
-                    }       
-                    break;
-                default:
-                    break;
-            }
-        }
-        
-        ]]>
-    </fx:Script>
-    <fx:Declarations>
-        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
-    </fx:Declarations>
-    
-    <js:Label width="100%" text="Your Shopping Cart" className="sectionHeader"/>
-        
-    <productsView:ProductList id="productList" width="100%"
-        newItemStartX="-100" newItemStartY="-100" 
-        addProduct="productListEventHandler(event)"
-        duplicateProduct="productListEventHandler(event)"
-        productQtyChange="productListEventHandler(event)"
-        removeProduct="productListEventHandler(event)"
-        showQuantity="true" />
-    
-    <js:Container style="right:0" id="totalContainer">
-        <js:beads>
-            <js:VerticalColumnLayout numColumns="2" />
-        </js:beads>
-        <js:Label text="Total:" />
-        <js:Label width="70" text="{cf.format(total)}" id="lblTotal" style="textAlign:'right'"/>
-
-        <js:Label text="Service Fee:" />
-        <js:Label width="70" text="{cf.format(numProducts * SHIPPING)}" id="lblFee" style="textAlign:'right'"/>
-
-        <js:Label text="Grand Total:" style="fontWeight:'bold'" />
-        <js:Label width="70" text="{cf.format(total + (numProducts * SHIPPING))}" id="lblGrandTotal" style="textAlign:'right'"/>
-
-    </js:Container>
-
-    <js:TextButton text="Submit Order" click="SimpleAlert.show('This feature is not implemented in this sample', 'Submit Order')"
-                   style="right:0"/>
-
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogPanel.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogPanel.mxml b/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogPanel.mxml
deleted file mode 100755
index 48fa69a..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogPanel.mxml
+++ /dev/null
@@ -1,546 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Panel xmlns:fx="http://ns.adobe.com/mxml/2009"
-         xmlns:js="library://ns.apache.org/flexjs/basic" 
-         implements="org.apache.flex.core.IDragInitiator"
-    xmlns:productsView="productsView.*"
-    currentState="browse"
-    title="SpaceHolder"
-    title.browse="Browse"
-    title.compare="Product Comparison"
-    title.details="Product Details"
-    className="catalogPanel"
-    >
-    
-    <fx:Metadata>
-        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="details", type="samples.flexstore.ProductThumbEvent")]
-    </fx:Metadata>
-    
-    <fx:Script>
-        <![CDATA[
-            import org.apache.flex.core.IUIBase;
-            import org.apache.flex.effects.Effect;
-            import org.apache.flex.effects.Fade;
-            import org.apache.flex.effects.Move;
-            import org.apache.flex.effects.Parallel;
-            import org.apache.flex.effects.Tween;
-            import org.apache.flex.events.DragEvent;
-            import org.apache.flex.events.Event;
-            import org.apache.flex.collections.LazyCollection;
-            
-            import samples.flexstore.Product;
-            import samples.flexstore.ProductFilter;
-            import samples.flexstore.ProductFilterEvent;
-            import samples.flexstore.ProductThumbEvent;
-       
-     
-        private var accepted:Object = new Object();
-        private var thumbnails:Array;
-        private var filterCount:int;
-        private var thumbnailState:String = 'browse'; //either 'browse' or 'compare'
-                
-        [Bindable]
-        public var cartCount:int;
-        
-        //-----------------------------
-        // catalog
-        //-----------------------------
-        
-        private var _catalog:LazyCollection;
-        
-        [Bindable]
-        public function set catalog(c:LazyCollection):void
-        {
-            _catalog = c;
-            createThumbnails();
-        }
-        
-        public function get catalog():LazyCollection
-        {
-            return _catalog;
-        }
-        
-        //----------------------------------------------------------------------
-        // methods
-        //----------------------------------------------------------------------
-       
-        private function createThumbnails():void
-        {
-            var i:int; //variables are hoisted up in scope so declare here to avoid warning
-            if (thumbnails != null)
-            {
-                for (i=0; i < thumbnails.length; i++)
-                {
-                    thumbContentGroup.removeElement(thumbnails[i]);
-                }
-            }
-            
-            var row:int = 0;
-            var col:int = -1;
-            var n:int = catalog.length;
-            thumbnails = new Array(n);
-            filterCount = n;
-            
-            for (i=0; i < n; i++)
-            {
-                var thumb:ProductCatalogThumbnail = new ProductCatalogThumbnail();
-                thumb.x = 0;
-                thumb.y = 0;
-                thumbnails[i] = thumb;
-                // thumbnails[i].showInAutomationHierarchy = true;
-                thumb.product = catalog.getItemAt(i) as Product;
-                accepted[thumb.product.productId.toString()] = true;
-                thumbContentGroup.addElement(thumb);
-                thumb.addEventListener(ProductThumbEvent.PURCHASE, productThumbEventHandler);
-                thumb.addEventListener(ProductThumbEvent.COMPARE, productThumbEventHandler);
-                thumb.addEventListener(ProductThumbEvent.DETAILS, productThumbEventHandler);
-                thumb.addEventListener(DragEvent.DRAG_START,thumbDragStartHandler);
-            }
-
-            var lastMove:Effect = layoutCatalog();
-            if (lastMove)
-            {
-                lastMove.addEventListener(Tween.TWEEN_UPDATE, updateLayout);
-                lastMove.addEventListener(Tween.TWEEN_END, updateLayout);
-            }
-        }
-        
-        private function updateLayout(event:org.apache.flex.events.Event):void
-        {
-            thumbContentGroup.dispatchEvent(new org.apache.flex.events.Event("layoutNeeded"));   
-        }
-            
-        private function thumbDragStartHandler(event:MouseEvent):void
-        {
-            if (DragMouseController.dragging == false)
-            {
-                var thumb:ProductCatalogThumbnail = event.target as ProductCatalogThumbnail;
-                DragEvent.dragSource = thumb.product;
-
-                var di:ProductCatalogThumbnail = new ProductCatalogThumbnail();
-                di.product = thumb.product;
-                di.currentState = thumb.currentState;
-                DragMouseController.dragImage = di;
-                
-                DragEvent.dragInitiator = this;
-            }    
-        }
-        
-        public function filter(productFilter:ProductFilter, live:Boolean):void
-        {
-            currentState = "browse";
-            thumbnailState = "browse";
-            var count:int=0;
-            var n:int = thumbnails.length;
-            var targets:Array = [];
-            for (var i:int = 0; i < n; i++)
-            {
-                var thumb:ProductCatalogThumbnail = thumbnails[i];
-                var product:Product = thumb.product;
-                if (productFilter.accept(product))
-                {
-                    accepted[product.productId.toString()] = true;
-                    thumb.alpha = 1;    
-                    count++;
-                }
-                else
-                {
-                    accepted[product.productId.toString()] = false;
-                    if (live)
-                    {
-                        thumb.alpha = .1;
-                    }
-                    else if (thumb.alpha == 1) //only fade if we hadn't started
-                    {
-                        targets.push(thumb);
-                    }
-                }
-            }
-            productFilter.count = count;
-            filterCount = count;
-
-            if (targets.length > 0)    
-            {
-                var p:Parallel = new Parallel();
-                n = targets.length;
-                for (i = 0; i < n; i++)
-                {
-                    var fadeOut:Fade = new Fade(targets[i] as IUIBase);
-                    fadeOut.alphaFrom = 1;
-                    fadeOut.alphaTo = .1;
-                    p.addChild(fadeOut);
-                }
-                p.play();
-                p.addEventListener(Effect.EFFECT_END,
-                    function(event:org.apache.flex.events.Event):void
-                    {
-                        layoutCatalog();
-                    });
-            }
-            else if (!live)
-            {
-                layoutCatalog();
-            }
-        }
-        
-        private function layoutCatalog():Effect
-        {
-            var tileWidth:Number;
-            var tileHeight:Number;
-            var numCols:int;
-
-            if (filterCount > 9 || currentState == "compare")
-            {
-                numCols = 4;
-                tileWidth = ProductCatalogThumbnail.COL_WIDTH_4;
-                tileWidth = currentState == "compare"
-                    ? ProductCatalogThumbnail.COMPARE_WIDTH
-                    : ProductCatalogThumbnail.COL_WIDTH_4
-                tileHeight = currentState == "compare"
-                    ? height - 4
-                    : ProductCatalogThumbnail.COL_HEIGHT_4;
-            }
-            else if (filterCount > 4)
-			{
-                numCols = 3;
-                tileWidth = ProductCatalogThumbnail.COL_WIDTH_3;
-                tileHeight = ProductCatalogThumbnail.COL_HEIGHT_3;
-            }
-			else if (filterCount <= 9)
-			{
-                numCols = 2;
-                tileWidth = ProductCatalogThumbnail.COL_WIDTH_2;
-                tileHeight = ProductCatalogThumbnail.COL_HEIGHT_2;
-            }
-			else
-			{
-            }
-            
-            var row:int = 0;
-            var col:int = -1;
-
-			var move:Move = null;
-
-            var n:int = catalog.length;
-			for (var i:int = 0 ; i < n ; i++)
-			{
-                var product:Product = catalog.getItemAt(i) as Product;
-                var thumb:ProductCatalogThumbnail = thumbnails[i];
-                if (accepted[product.productId.toString()])
-                {
-                    thumb.currentState = "x" + numCols + "cols";
-                    col++;
-                    if (col > numCols - 1)
-					{
-                        row++;
-                        col = 0;
-                    }
-
-                    var xTo:Number = col * (tileWidth + ProductCatalogThumbnail.HORIZONTAL_GAP);
-                    var yTo:Number = row * (tileHeight + ProductCatalogThumbnail.VERTICAL_GAP);
-
-                    // If the thumbnail is already visible
-					// animate it to its new position.
-                    if (thumb.visible)
-					{
-                        // Animate only if the position is different
-						// from its current position.
-                        if (thumb.x != xTo || thumb.y != yTo)
-						{
-                            move = new Move(thumb);
-                            move.xTo = xTo;
-                            move.yTo = yTo;
-                            move.play();
-                        }
-                    }
-
-                    // If the thumbnail was not previously visible, sets its
-					// x and y coordinates. We'll make it reappear after all
-                    // the visible thumbnails have reached their new position.
-					else
-					{
-                        thumb.x = xTo;
-                        thumb.y = yTo;
-//                        thumb.includeInLayout = true;
-                    }
-                }
-				else
-				{
-                    thumb.visible = false;
-//                    thumb.includeInLayout = false;
-                }
-            }
-
-            if (!move)
-			{
-                // No visible thumbnails were animated to a new position;
-				// fade in newly selected thumbnails right away.
-                fadeInThumbnails();
-            }
-			else
-			{
-			    //since movement is happening get the scrollbar back to the top
-				scv.verticalScrollPosition = 0;
-                // Fade in newly selected thumbnails after the last
-				// visible thumbnail has moved to its new position.
-                move.addEventListener(Effect.EFFECT_END,
-					function(event:org.apache.flex.events.Event):void
-					{
-						fadeInThumbnails();
-					});
-            }
-            thumbContentGroup.dispatchEvent(new org.apache.flex.events.Event("layoutNeeded"));
-            //return the last move to watch
-            return move;
-        }
-        
-        //return the last effect so we could add effectEnd handler if desired
-        private function fadeInThumbnails():void
-		{
-			var n:int = thumbnails.length;
-			var targets:Array = [];
-			for (var i:int = 0; i < n ; i++)
-			{
-			    var thumb:ProductCatalogThumbnail = thumbnails[i];
-			    if (accepted[thumb.product.productId.toString()] && !thumb.visible)
-				{
-                    thumb.alpha = 0;
-                    thumb.visible = true;
-                    targets.push(thumb);
-                }
-            }
-            if (targets.length > 0)
-            {
-                n = targets.length;
-                for (i = 0; i < n; i++)
-                {
-                    var effect:Fade = new Fade(targets[i] as IUIBase);
-                    effect.alphaTo = 1;
-                    effect.play();
-                }
-            }
-        }
-        
-        private function showDetails(product:Product):void
-        {
-            if (currentState == "details")
-			{
-                details.product = product;
-                return;
-            }
-
-            var row:int = -1;
-
-            //should be computed using border metrics instead of hard-coding the 20, but...
-			var xTo:Number = thumbContentGroup.width - ProductCatalogThumbnail.COL_WIDTH_4 - 20;
-            var yTo:Number;
-
-            var move:Move;
-            var first:Boolean = true;
-            var selectedThumb:ProductCatalogThumbnail;
-
-            var n:int = thumbnails.length;
-			for (var i:int = 0; i < n; i++)
-			{
-			    var thumb:ProductCatalogThumbnail = thumbnails[i];
-                if (thumb.visible)
-				{
-                    row++;
-                    yTo = row * (ProductCatalogThumbnail.COL_HEIGHT_4 + ProductCatalogThumbnail.VERTICAL_GAP);
-
-                    thumb.currentState = "x4cols";
-
-                    if (thumb.x != xTo || thumb.y != yTo)
-					{
-                        move = new Move(thumb);
-                        if (first)
-						{
-                            move.addEventListener(Effect.EFFECT_END,
-								function(event:org.apache.flex.events.Event):void
-								{
-									details.product = product;
-                                    currentState = "details";
-								});
-
-                            first = false;
-                        }
-                        move.xTo = xTo;
-                        move.yTo = yTo;
-                        move.play();
-                    }
-                    
-                    if (thumb.product == product)
-                    {
-                        selectedThumb = thumb;
-                    }
-                }
-            }
-            if (selectedThumb != null)
-            {
-                //make sure that the selected thumb is visible in the list on the right
-                move.addEventListener(Effect.EFFECT_END,
-					function(e:org.apache.flex.events.Event):void
-					{
-					    var curpos:int = scv.verticalScrollPosition;
-					    if (selectedThumb.y < curpos)
-					    {
-					        scv.verticalScrollPosition = y;
-					    }
-					    else if (selectedThumb.y + ProductCatalogThumbnail.COL_HEIGHT_4 > curpos + thumbContentGroup.height)
-					    {
-					        //this logic doesn't seem to be perfect but it will do
-					        var diff:int = selectedThumb.y - (curpos + thumbContentGroup.height)
-					        scv.verticalScrollPosition += diff + ProductCatalogThumbnail.COL_HEIGHT_4 + ProductCatalogThumbnail.VERTICAL_GAP;
-					    }
-					});
-            }
-            
-        }
-        
-        private function productThumbEventHandler(event:ProductThumbEvent):void
-        {
-            if (event.type == ProductThumbEvent.DETAILS)
-            {
-                showDetails(event.product);
-            }
-            else if (event.type == ProductThumbEvent.BROWSE)
-            {
-                if (thumbnailState == "browse")
-                {                
-                    currentState = "browse";
-                    layoutCatalog();
-                }
-                else
-                {
-                    compare();
-                }
-            }
-            else
-            {
-                dispatchEvent(event);
-            }
-        }
-        
-        public function compare(toCompare:Array=null):void
-        {
-            currentState = "compare";
-            thumbnailState = "compare";
-            if (toCompare != null)
-            {
-                var n:int = thumbnails.length;
-                for (var i:int = 0; i < n; i++)
-                {
-                    accepted[thumbnails[i].product.productId.toString()] = false;
-                }
-                for (i=0; i < toCompare.length; i++)
-                {
-                    accepted[toCompare[i].productId.toString()] = true;
-                }
-            }
-            var lastEffect:Effect = layoutCatalog();
-            if (lastEffect != null)
-            {
-                lastEffect.addEventListener(Effect.EFFECT_END,
-                    function (event:org.apache.flex.events.Event):void
-                    {
-                        setCompareState();
-                    });
-            }
-            else
-            {
-                setCompareState();
-            }
-        }
-        
-        private function setCompareState():void
-        {
-            //avoid an issue if the user clicks quickly where we move into
-            //compare state even though we're no longer in compare
-            if (currentState == "compare") 
-            {
-                var n:int = thumbnails.length;
-                for (var i:int = 0; i < n; i++)
-                {
-                    var thumb:ProductCatalogThumbnail = thumbnails[i];
-                    if (accepted[thumb.product.productId.toString()])
-                    {
-                        thumb.currentState = "compare";
-                    }
-                }
-                
-            }
-        }
-        
-        public function acceptingDrop(dropTarget:Object, type:String):void
-        {
-            
-        }
-            
-        public function acceptedDrop(dropTarget:Object, type:String):void
-        {
-            
-        }
-
-        ]]>
-    </fx:Script>
-    
-    <js:beads>
-        <js:ContainerDataBinding />
-        <js:VerticalLayout />
-        <js:DragMouseController id="dragger" />
-        <js:ParentDocumentBead id="pdb" />
-        <js:PanelView>
-            <js:titleBar>
-                <js:TitleBar height="20" >
-                    <js:style>
-                        <js:SimpleCSSStyles backgroundColor="0xA65904" />
-                    </js:style>
-                    <js:beads>
-                        <productsView:ProductCatalogPanelTitleBarView />
-                    </js:beads>
-                </js:TitleBar>
-            </js:titleBar>
-        </js:PanelView>
-    </js:beads>
-    <js:Container width="100%" height="100%">
-        <js:Container id="thumbContentGroup" width="100%" height="100%">
-            <js:beads>
-				<js:ScrollingViewport id="scv" />
-            </js:beads>
-        </js:Container>
-        <productsView:ProductDetails id="details" y="0"
-            width="{ProductCatalogThumbnail.COL_WIDTH_4 * 3}"
-            height="100%"
-            visible="false"
-            visible.details="true"
-            compare="productThumbEventHandler(event)"
-            purchase="productThumbEventHandler(event)"
-            browse="productThumbEventHandler(event)" />
-    </js:Container>
-    
-    <js:states>
-        <js:State name="browse" />
-        <js:State name="compare" />
-        <js:State name="details" />
-    </js:states>
-    
-</js:Panel>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogPanelTitleBarView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogPanelTitleBarView.mxml b/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogPanelTitleBarView.mxml
deleted file mode 100755
index f2cb397..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogPanelTitleBarView.mxml
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:MXMLBeadView xmlns:fx="http://ns.adobe.com/mxml/2009"
-                        xmlns:js="library://ns.apache.org/flexjs/basic" 
-                        xmlns:productsView="productsView.*"
-                        >
-    <fx:Script>
-        <![CDATA[
-            import org.apache.flex.html.TitleBar;
-            import org.apache.flex.core.ITitleBarModel;
-            import org.apache.flex.core.UIBase;
-            import org.apache.flex.events.Event;
-            
-            private function clickHandler():void
-            {
-                var newEvent:org.apache.flex.events.Event = new org.apache.flex.events.Event('close',true);
-                UIBase(_strand).dispatchEvent(newEvent)   
-            }
-        ]]>
-    </fx:Script>
-    <js:beads>
-        <js:MXMLBeadViewDataBinding />
-        <js:ParentDocumentBead id="pdb" />
-        <js:LayoutChangeNotifier watchedProperty="{buttons.width}" />
-    </js:beads>
-    <js:Label id="titleLabel" text="{ITitleBarModel(model).title}" 
-                 />
-    <js:CloseButton id="closeButton" click="clickHandler()"
-                       visible="{ITitleBarModel(model).showCloseButton}";
-                       />
-    <productsView:CatalogTitleButtons id="buttons" />
-</js:MXMLBeadView>


[50/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - add some targets to build apps from the repos

Posted by ca...@apache.org.
add some targets to build apps from the repos


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/8af90ac4
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/8af90ac4
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/8af90ac4

Branch: refs/heads/feature/mdl
Commit: 8af90ac4a0dc006c295614017d5582be2432815a
Parents: 8e29ae4
Author: Alex Harui <ah...@apache.org>
Authored: Wed Nov 9 21:51:13 2016 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Wed Nov 9 21:52:32 2016 -0800

----------------------------------------------------------------------
 build.xml | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8af90ac4/build.xml
----------------------------------------------------------------------
diff --git a/build.xml b/build.xml
index 18a583b..15af666 100644
--- a/build.xml
+++ b/build.xml
@@ -1863,4 +1863,43 @@
         <echo>Please change directory to ${base.folder.name}/flex-asjs and run ant to complete build</echo>
     </target>
 
+    <target name="compile" depends="check-flex-home,check-falcon-home,load-task" description="compile for SWF">
+        
+        <property name="FLEX_HOME" value="${basedir}" />
+        <mxmlc fork="true" debug="true"
+            file="${file}">
+            <jvmarg line="${mxmlc.jvm.args}"/>
+        </mxmlc>
+    </target>
+    
+    <target name="compile-js" depends="check-flex-home,check-falcon-home,check-falconjx-home,check-goog-home" description="compile for JS">
+        <property name="FLEX_HOME" value="${basedir}" />
+        <java jar="${FALCONJX_HOME}/lib/mxmlc.jar"
+            fork="true">
+            <jvmarg line="${mxmlc.jvm.args}"/>
+            <jvmarg line="-Dflexlib=${FLEXJS_HOME}/frameworks}"/>
+            <arg value="+flexlib=${FLEXJS_HOME}/frameworks" />
+            <arg value="-debug" />
+            <arg value="+playerglobal.version=${playerglobal.version}" />
+            <arg value="+env.PLAYERGLOBAL_HOME=${env.PLAYERGLOBAL_HOME}" />
+            <arg value="-js-output-type=FLEXJS" />
+            <arg value="-closure-lib=${GOOG_HOME}" />
+            <arg value="${file}" />
+        </java>
+    </target>
+    
+    <target name="compile-js-release" depends="check-flex-home,check-falcon-home,check-falconjx-home,check-goog-home" description="compile for JS">
+        <property name="FLEX_HOME" value="${basedir}" />
+        <java jar="${FALCONJX_HOME}/lib/mxmlc.jar"
+            fork="true">
+            <jvmarg line="${mxmlc.jvm.args}"/>
+            <jvmarg line="-Dflexlib=${FLEXJS_HOME}/frameworks}"/>
+            <arg value="+flexlib=${FLEXJS_HOME}/frameworks" />
+            <arg value="+playerglobal.version=${playerglobal.version}" />
+            <arg value="+env.PLAYERGLOBAL_HOME=${env.PLAYERGLOBAL_HOME}" />
+            <arg value="-js-output-type=FLEXJS" />
+            <arg value="-closure-lib=${GOOG_HOME}" />
+            <arg value="${file}" />
+        </java>
+    </target>
 </project>


[10/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/productsView/ProductList.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/productsView/ProductList.mxml b/examples/flexjs/FlexJSStore/src/productsView/ProductList.mxml
deleted file mode 100755
index 951b1fa..0000000
--- a/examples/flexjs/FlexJSStore/src/productsView/ProductList.mxml
+++ /dev/null
@@ -1,219 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
-                 xmlns:js="library://ns.apache.org/flexjs/basic" 
-    > 
-    <js:style>
-        <js:SimpleCSSStyles borderStyle="solid" borderWidth="1" backgroundColor="#BCB29F" />
-    </js:style>
-    <!-- need a background color for drag and drop but can set alpha to 0 -->
-    
-    <fx:Metadata>
-       [Event(name="addProduct", type="samples.flexstore.ProductListEvent")]
-       [Event(name="duplicateProduct", type="samples.flexstore.ProductListEvent")]
-       [Event(name="productQtyChange", type="samples.flexstore.ProductListEvent")]
-       [Event(name="removeProduct", type="samples.flexstore.ProductListEvent")]
-    </fx:Metadata>
-
-    <fx:Script>
-        <![CDATA[
-        import org.apache.flex.effects.Effect;
-        import org.apache.flex.effects.Move;
-        import org.apache.flex.effects.Sequence;
-        import org.apache.flex.core.DropType;
-        import org.apache.flex.core.IUIBase;
-        import org.apache.flex.events.DragEvent;
-        
-        import samples.flexstore.Product;
-        import samples.flexstore.ProductListEvent;
-        
-        public var items:Array;
-        
-        public var newItemStartX:int;
-        public var newItemStartY:int;
-        [Bindable]
-        public var maxItems:int = 0;
-        public var showQuantity:Boolean;
-        
-        private var playingEffects:Object = new Object();
-        
-        public function addProduct(product:Product):void
-		{
-            if (items == null)
-                items = [];
-            
-            var index:int = indexOf(product.productId);
-            var event:ProductListEvent;
-            var item:ProductListItem;
-            
-            if (index != -1)
-			{
-			    item = items[index] as ProductListItem;
-			    //if we don't keep track of what's playing a double-click can
-			    //cause the list item to keep rising
-			    if (playingEffects[item.uid] == null)
-			    {
-                    var jump:Sequence = new Sequence();
-                    var m1:Move = new Move(item)
-                    m1.yBy = -5;
-                    var m2:Move = new Move(item)
-                    m2.yBy = 5;
-                    jump.addChild(m1);
-                    jump.addChild(m2);
-                    jump.duration = 150;
-                    playingEffects[item.uid] = jump;
-                    jump.addEventListener(Effect.EFFECT_END, function(event:Event):void
-                    {
-                       delete playingEffects[item.uid];
-                    });
-                    jump.play();
-                }
-                event = new ProductListEvent(ProductListEvent.DUPLICATE_PRODUCT);
-                event.product = item.product;
-                dispatchEvent(event);
-            }
-			else
-			{
-                index = items.length;
-                if (maxItems <= 0 || index < maxItems)
-				{
-				    item = new ProductListItem();
-				    if (showQuantity)
-				    {
-				        item.currentState = 'showQuantity';
-				    }
-				    item.product = product;
-				    item.percentWidth = 100;
-				    item.addEventListener(ProductListEvent.REMOVE_PRODUCT, removeItemHandler);
-                    items[index] = item;
-                    viewport.addElement(item);
-                    layoutItems(index, true);
-                    event = new ProductListEvent(ProductListEvent.ADD_PRODUCT);
-                    event.product = product;
-                    dispatchEvent(event);
-                }
-            }
-        }
-        
-        public function getProducts():Array
-        {
-            var ret:Array = [];
-            for (var i:int = 0; i < items.length; i++)
-            {
-                ret[i] = ProductListItem(items[i]).product;
-            }
-            return ret;
-        }
-        
-        private function removeItemHandler(event:Event):void
-        {
-            var item:ProductListItem = event.target as ProductListItem;
-            var index:int = indexOf(item.product.productId);
-            items.splice(index, 1);
-            viewport.removeElement(item);
-            layoutItems(index);
-        }
-            
-        private function layoutItems(startIndex:int, scrollToBottom:Boolean=false):void
-		{
-            var n:int = items.length;
-            var e:Move;
-			for (var i:int = startIndex; i < n ; i++)
-			{
-			    var item:ProductListItem = items[i];
-                var yTo:Number = i * (item.height);
-                //still need to prevent items that are already in motion from getting
-                //jumpy
-			    if (playingEffects[item.uid] == null)
-			    {
-                    e = new Move(item);
-                    if (item.x == 0 && item.y == 0)
-    				{
-    					e.xFrom = newItemStartX;
-    					e.yFrom = newItemStartY;
-                    }
-    
-                    e.xTo = 0;
-                    e.yTo = yTo;
-                    playingEffects[item.uid] = e;
-                    e.addEventListener(Effect.EFFECT_END, function(event:Event):void
-                    {
-                       delete playingEffects[item.uid];
-                    });
-                    e.play();
-                }
-                else
-                {
-                    playingEffects[item.uid].pause();
-                    playingEffects[item.uid].yTo = yTo;
-                    playingEffects[item.uid].play();
-                }
-            }
-            //get the last event and if we should scroll make sure we can validate
-            //and scroll to maxVPosition
-            if (scrollToBottom)
-            {
-                e.addEventListener(Effect.EFFECT_END, function(event:Event):void
-                {
-  //TODO                  scrollingView.model.verticalScrollPosition = scrollingView.maxVerticalScrollPosition;    
-                });
-            }
-        }
-        
-        private function indexOf(productId:int):int
-		{
-            var index:int = -1;
-
-            var n:int = items.length;
-			for (var i:int = 0; i < items.length; i++)
-			{
-                if (ProductListItem(items[i]).product.productId == productId)
-				{
-                    index = i;
-                    break;
-                }
-            }
-
-            return index;
-        }     
-
-        private function doDragEnter(event:DragEvent):void
-        {
-            trace("doDragEnter");
-            dmc.acceptDragDrop(event.target as IUIBase, DropType.COPY);
-        }
-
-        private function doDragDrop(event:DragEvent):void
-        {
-            trace("doDragDrop");
-            var product:Product = DragEvent.dragSource as Product;
-            addProduct(product);
-        }  
- 
-        ]]>
-    </fx:Script>
-    <js:beads>
-        <js:DropMouseController id="dmc" dragEnter="doDragEnter(event)" dragDrop="doDragDrop(event)" />
-        <js:VerticalLayout />
-		<js:ScrollingViewport id="scrollingView" />
-    </js:beads>
-    <js:Container id="viewport" width="100%" height="100%" >
-    </js:Container>
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/productsView/ProductListItem.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/productsView/ProductListItem.mxml b/examples/flexjs/FlexJSStore/src/productsView/ProductListItem.mxml
deleted file mode 100755
index 8e98c3b..0000000
--- a/examples/flexjs/FlexJSStore/src/productsView/ProductListItem.mxml
+++ /dev/null
@@ -1,140 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
-                    xmlns:js="library://ns.apache.org/flexjs/basic" 
-    className="listItem" 
-    height="{HEIGHT}" implements="org.apache.flex.core.IItemRenderer">
-    <!--automationName="{product.name}">-->
-
-    <fx:Metadata>
-       [Event(name="productQtyChange", type="samples.flexstore.ProductListEvent")]
-       [Event(name="removeProduct", type="samples.flexstore.ProductListEvent")]
-    </fx:Metadata>
-    
-    <fx:Script>
-    <![CDATA[
-    
-        import samples.flexstore.Product;
-        import samples.flexstore.ProductListEvent;
-        
-        private static var idCounter:int = 0;
-        public var uid:String = (idCounter++).toString();
-        
-        public static const HEIGHT:int = 30;
-        
-        [Bindable("__NoChangeEvent__")]
-        public function get product():Product
-        {
-            return _data as Product;
-        }
-        public function set product(value:Product):void
-        {
-            _data = value;
-        }
-        
-        private var _data:Object;
-        
-        public function get data():Object
-        {
-            return _data;
-        }
-        
-        public function set data(value:Object):void
-        {
-            _data = value;
-        }
-        
-        public function get listData():Object
-        {
-        	return null;
-        }
-        
-        public function set listData(value:Object):void
-        {
-        	// not used
-        }
-
-        private var _itemRendererParent:Object;
-        
-        public function get itemRendererParent():Object
-        {
-            return _itemRendererParent;
-        }
-        
-        public function set itemRendererParent(value:Object):void
-        {
-            _itemRendererParent = value;
-        }
-        
-        private function qtyChange():void
-    	{
-            product.qty = int(qty.text);
-            var event:ProductListEvent = new ProductListEvent(ProductListEvent.PRODUCT_QTY_CHANGE);
-            event.product = product;
-    		dispatchEvent(event);
-        }
-        
-        private function removeItem():void
-        {
-            var event:ProductListEvent = new ProductListEvent(ProductListEvent.REMOVE_PRODUCT);
-            event.product = product;
-    		dispatchEvent(event);
-        }
-        
-    ]]>
-    </fx:Script>
-    
-    <fx:Declarations>
-        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>
-    </fx:Declarations>
-    
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-        
-    <js:ImageButton id="removeButton" source="assets/trashcan.png"
-        width="14" height="14" y="5"
-        click="removeItem()">
-        <js:beads>
-            <js:ToolTipBead toolTip="Remove from cart" />
-        </js:beads>
-    </js:ImageButton>
-    
-    <js:Image id="productImage" x="16" y="6" width="12" height="12" source="{product.image}"/>
-
-    <js:Label id="productName" x="30" width="100" y="4" text="{product.name}"/>
-
-    <js:Label id="productPrice" width="60" y="4"
-        text="{cf.format(product.price)}" style="textAlign:right;right:0"
-                                style.showQuantity="textAlign:right;right:25"/>
-        
-    <js:TextInput id="qty" width="25" y="3" text="{product.qty}" includeIn="showQuantity"
-                  style="textAlign:right;right:0;marginTop:0" change="qtyChange()" >
-        <js:beads>
-            <js:NumericOnlyTextInputBead maxChars="3" />
-        </js:beads>
-    </js:TextInput>
-    
-    <js:states>
-        <js:State name="compare" />
-        <js:State name="showQuantity" />
-    </js:states>
-    
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/productsView/ProductSupport.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/productsView/ProductSupport.mxml b/examples/flexjs/FlexJSStore/src/productsView/ProductSupport.mxml
deleted file mode 100755
index b3c8429..0000000
--- a/examples/flexjs/FlexJSStore/src/productsView/ProductSupport.mxml
+++ /dev/null
@@ -1,90 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:HContainer xmlns:fx="http://ns.adobe.com/mxml/2009" 
-          xmlns:js="library://ns.apache.org/flexjs/basic" 
-		 >
-    <js:style>
-        <js:SimpleCSSStyles paddingLeft="4" paddingRight="8" paddingBottom="4" />
-    </js:style>
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-
-    <fx:Script>
-	<![CDATA[
-
-        private function toggle():void
-		{
-			/*
-            if (vd.playing)
-			{
-                vd.stop();
-                list.visible = true;
-            }
-			else
-			{
-                list.visible = false;
-                vd.play();
-            }
-			*/
-        }
-
-	]]>
-    </fx:Script>
-
-    <fx:Declarations>
-        <js:Parallel id="hideList">
-            <js:children>
-                <fx:Array>
-                    <js:Resize target="{list}" widthTo="0"/>
-                    <!--<mx:Resize target="{vd}" widthTo="400" heightTo="314"/>-->
-                </fx:Array>
-            </js:children>
-        </js:Parallel>
-        
-        <js:Parallel id="showList">
-            <js:children>
-                <fx:Array>
-                    <js:Resize target="{list}" widthTo="130"/>
-                    <!--<mx:Resize target="{vd}" widthTo="270" heightTo="217"/>-->
-                </fx:Array>
-            </js:children>
-        </js:Parallel>        
-    </fx:Declarations>
-    <js:List id="list" width="130" height="100%" selectedIndex="0">
-        <js:dataProvider>
-            <fx:Array>
-                <fx:Object label="Install SIM Card"/>
-            </fx:Array>
-        </js:dataProvider>
-    </js:List>
-
-    <js:Container width="100%">
-
-		<!--<mx:VideoDisplay id="vd" width="270" height="217" source="assets/phone.flv"
-						 autoPlay="false" complete="list.visible=true"/>
-
-		<mx:Button label="{vd.playing ? 'Stop' : 'Play'}" click="toggle()" left="8" bottom="8" includeInLayout="false">
-		</mx:Button>
-		-->
-	</js:Container>
-
-
-</js:HContainer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/samples/flexstore/ButtonBarButtonSkin.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/samples/flexstore/ButtonBarButtonSkin.as b/examples/flexjs/FlexJSStore/src/samples/flexstore/ButtonBarButtonSkin.as
deleted file mode 100755
index 5e94b58..0000000
--- a/examples/flexjs/FlexJSStore/src/samples/flexstore/ButtonBarButtonSkin.as
+++ /dev/null
@@ -1,298 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-
-package samples.flexstore
-{
-
-import flash.display.GradientType;
-import mx.containers.BoxDirection;
-import mx.controls.Button;
-import mx.controls.ButtonBar;
-import mx.skins.Border;
-import mx.skins.halo.*;
-import mx.styles.StyleManager;
-import mx.utils.ColorUtil;
-
-/**
- *  Adapted from mx.skins.halo.ButtonBarButtonSkin.
- *  This version of the ButtonBarButtonSkin is applied for the
- *  selectedOver, selectedUp, and over states to use the 2nd two
- *  values of the fillColors for the selected state of the
- *  button.  The over state then uses a computed value from
- *  the themeColor to show emphasis.  The border of the selected
- *  button also uses a computed value from the themeColor, but
- *  is partially transparent.
- */
-public class ButtonBarButtonSkin extends Border
-{
-	//--------------------------------------------------------------------------
-	//
-	//  Class variables
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  @private
-	 */
-	private static var cache:Object = {};
-
-	//--------------------------------------------------------------------------
-	//
-	//  Class methods
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  @private
-	 *  Several colors used for drawing are calculated from the base colors
-	 *  of the component (themeColor, borderColor and fillColors).
-	 *  Since these calculations can be a bit expensive,
-	 *  we calculate once per color set and cache the results.
-	 */
-	private static function calcDerivedStyles(themeColor:uint,
-											  fillColor0:uint,
-											  fillColor1:uint):Object
-	{
-		var key:String = HaloColors.getCacheKey(themeColor,
-												fillColor0, fillColor1);
-
-		if (!cache[key])
-		{
-			var o:Object = cache[key] = {};
-
-			// Cross-component styles.
-			HaloColors.addHaloColors(o, themeColor, fillColor0, fillColor1);
-
-			// Button-specific styles.
-			o.innerEdgeColor1 = ColorUtil.adjustBrightness2(fillColor0, -10);
-			o.innerEdgeColor2 = ColorUtil.adjustBrightness2(fillColor1, -25);
-		}
-
-		return cache[key];
-	}
-
-	//--------------------------------------------------------------------------
-	//
-	//  Constructor
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  @private
-	 *  Constructor.
-	 */
-	public function ButtonBarButtonSkin()
-	{
-		super();
-	}
-
-	//--------------------------------------------------------------------------
-	//
-	//  Overridden properties
-	//
-	//--------------------------------------------------------------------------
-
-	//----------------------------------
-	//  measuredWidth
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	override public function get measuredWidth():Number
-	{
-		return 50;
-	}
-
-	//----------------------------------
-	//  measuredHeight
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	override public function get measuredHeight():Number
-	{
-		return 22;
-	}
-
-	//--------------------------------------------------------------------------
-	//
-	//  Overridden methods
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  @private
-	 */
-	override protected function updateDisplayList(w:Number, h:Number):void
-	{
-		super.updateDisplayList(w, h);
-
-		// User-defined styles.
-		var borderColor:uint = getStyle("borderColor");
-		var cornerRadius:Number = getStyle("cornerRadius");
-		var fillAlphas:Array = getStyle("fillAlphas");
-		var fillColors:Array = getStyle("fillColors");
-		styleManager.getColorNames(fillColors);
-		var highlightAlphas:Array = getStyle("highlightAlphas");
-		var themeColor:uint = getStyle("themeColor");
-
-		// Derivative styles.
-		var derStyles:Object = calcDerivedStyles(themeColor, fillColors[0],
-												 fillColors[1]);
-
-		var borderColorDrk1:Number =
-			ColorUtil.adjustBrightness2(borderColor, -50);
-
-		var themeColorDrk1:Number =
-			ColorUtil.adjustBrightness2(themeColor, -25);
-
-		var emph:Boolean = false;
-
-		if (parent is Button)
-			emph = (parent as Button).emphasized;
-
-		var tmp:Number;
-
-		var bar:ButtonBar = parent ? ButtonBar(parent.parent) : null;
-		var horizontal:Boolean = true;
-		var pos:int = 0;
-
-		if (bar)
-		{
-			if (bar.direction == BoxDirection.VERTICAL)
-				horizontal = false;
-
-			// first: -1, middle: 0, last: 1
-			var index:int = bar.getChildIndex(parent);
-			pos = (index == 0 ? -1 : (index == bar.numChildren - 1 ? 1 : 0));
-		}
-
-		var radius:Object = getCornerRadius(pos, horizontal, cornerRadius);
-		var cr:Object = getCornerRadius(pos, horizontal, cornerRadius);
-		var cr1:Object = getCornerRadius(pos, horizontal, cornerRadius - 1);
-		var cr2:Object = getCornerRadius(pos, horizontal, cornerRadius - 2);
-		var cr3:Object = getCornerRadius(pos, horizontal, cornerRadius - 3);
-
-		graphics.clear();
-
-		switch (name)
-		{
-			case "selectedUpSkin":
-			case "selectedOverSkin":
-			{
-				var overFillColors:Array;
-				if (fillColors.length > 2)
-					overFillColors = [ fillColors[2], fillColors[3] ];
-				else
-					overFillColors = [ fillColors[0], fillColors[1] ];
-
-				var overFillAlphas:Array;
-				if (fillAlphas.length > 2)
-					overFillAlphas = [ fillAlphas[2], fillAlphas[3] ];
-  				else
-					overFillAlphas = [ fillAlphas[0], fillAlphas[1] ];
-
-				// button border/edge
-				drawRoundRect(
-					0, 0, w, h, cr,
-					[ themeColor, derStyles.themeColDrk1 ], 0.5,
-					verticalGradientMatrix(0, 0, w , h),
-					GradientType.LINEAR, null,
-					{ x: 1, y: 1, w: w - 2, h: h - 2, r: cr1 });
-
-				// button fill
-				drawRoundRect(
-					1, 1, w - 2, h - 2, cr1,
-					overFillColors, overFillAlphas,
-					verticalGradientMatrix(0, 0, w - 2, h - 2));
-
-				// top highlight
-				if (!(radius is Number))
-					{ radius.bl = radius.br = 0;}
-				drawRoundRect(
-					1, 1, w - 2, (h - 2) / 2, radius,
-					[ 0xFFFFFF, 0xFFFFFF ], highlightAlphas,
-					verticalGradientMatrix(1, 1, w - 2, (h - 2) / 2));
-				break;
-			}
-
-			case "overSkin":
-			{
-				// button border/edge
-				drawRoundRect(
-					0, 0, w, h, cr,
-					[ themeColor, derStyles.themeColDrk1 ], 0.5,
-					verticalGradientMatrix(0, 0, w, h));
-
-				// button fill
-				drawRoundRect(
-					1, 1, w - 2, h - 2, cr1,
-					[ derStyles.fillColorPress1, derStyles.fillColorPress2 ], 1,
-					verticalGradientMatrix(0, 0, w - 2, h - 2));
-
-				// top highlight
-				if (!(radius is Number))
-					{ radius.bl = radius.br = 0;}
-				drawRoundRect(
-					1, 1, w - 2, (h - 2) / 2, radius,
-					[ 0xFFFFFF, 0xFFFFFF ], highlightAlphas,
-					verticalGradientMatrix(1, 1, w - 2, (h - 2) / 2));
-
-				break;
-			}
-		}
-	}
-
-	//--------------------------------------------------------------------------
-	//
-	//  Methods
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  @private
-	 */
-	private function getCornerRadius(pos:int, horizontal:Boolean,
-									 radius:Number):Object
-	{
-		if (pos == 0)
-			return 0;
-
-		radius = Math.max(0, radius);
-
-		if (horizontal)
-		{
-			if (pos == -1)
-				return { tl: radius, tr: 0, bl: radius, br: 0 };
-			else // pos == 1
-				return { tl: 0, tr: radius, bl: 0, br: radius };
-		}
-		else
-		{
-			if (pos == -1)
-				return { tl: radius, tr: radius, bl: 0, br: 0 };
-			else // pos == 1
-				return { tl: 0, tr: 0, bl: radius, br: radius };
-		}
-	}
-}
-
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/samples/flexstore/Product.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/samples/flexstore/Product.as b/examples/flexjs/FlexJSStore/src/samples/flexstore/Product.as
deleted file mode 100755
index 040fb8f..0000000
--- a/examples/flexjs/FlexJSStore/src/samples/flexstore/Product.as
+++ /dev/null
@@ -1,78 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package samples.flexstore
-{
-
-[Bindable]
-public class Product
-{
-
-    public var productId:int;
-    public var name:String;
-    public var description:String;
-    public var price:Number;
-    public var image:String;
-    public var experience:String;
-    public var blazeds:Boolean;
-    public var mobile:Boolean;
-    public var video:Boolean;
-    public var highlight1:String;
-    public var highlight2:String;
-    public var qty:int;
-
-    public function Product()
-    {
-
-    }
-
-    public function fill(obj:Object):void
-    {
-        for (var i:String in obj)
-        {
-            this[i] = obj[i];
-        }
-    }
-
-    [Bindable(event="propertyChange")]
-    public function get featureString():String
-    {
-    	var str:String = "";
-    	if (blazeds)
-    		str += "BlazeDS";
-
-		if (mobile)
-		{
-			if (str.length > 0)
-				str += "\n";
-			str += "Mobile";
-		}
-
-		if (video)
-		{
-			if (str.length > 0)
-				str += "\n";
-			str += "Video";
-		}
-
-		return str;
-    }
-
-}
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductFilter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductFilter.as b/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductFilter.as
deleted file mode 100755
index d182371..0000000
--- a/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductFilter.as
+++ /dev/null
@@ -1,56 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package samples.flexstore
-{
-
-[Bindable]
-public class ProductFilter
-{
-    public var count:int;
-    public var experience:String;
-    public var minPrice:Number;
-    public var maxPrice:Number;
-    public var blazeds:Boolean;
-    public var mobile:Boolean;
-    public var video:Boolean;
-    
-    public function ProductFilter()
-    {
-        super();
-    }
-    
-    public function accept(product:Product):Boolean
-    {
-        //price is often the first test so let's fail fast if possible
-        if (minPrice > product.price || maxPrice < product.price)
-            return false;
-        if (experience != "All" && experience > product.experience)
-            return false;
-        if (blazeds && !product.blazeds)
-            return false;
-        if (mobile && !product.mobile)
-            return false;
-        if (video && !product.video)
-            return false;
-        
-        return true;
-    }
-}
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductFilterEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductFilterEvent.as b/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductFilterEvent.as
deleted file mode 100755
index 28129e7..0000000
--- a/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductFilterEvent.as
+++ /dev/null
@@ -1,39 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package samples.flexstore
-{
-
-import org.apache.flex.events.Event;
-
-public class ProductFilterEvent extends Event
-{
-    public static const FILTER:String = "filter";
-    
-    public var live:Boolean;
-    public var filter:ProductFilter;
-    
-    public function ProductFilterEvent(filter:ProductFilter, live:Boolean)
-    {
-        super(FILTER);
-        this.filter = filter;
-        this.live = live;
-    }
-}
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductListEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductListEvent.as b/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductListEvent.as
deleted file mode 100755
index b6b9371..0000000
--- a/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductListEvent.as
+++ /dev/null
@@ -1,42 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package samples.flexstore
-{
-
-import org.apache.flex.events.Event;
-
-public class ProductListEvent extends Event
-{
-    public static const ADD_PRODUCT:String = "addProduct";
-    public static const DUPLICATE_PRODUCT:String = "duplicateProduct";
-    public static const REMOVE_PRODUCT:String = "removeProduct";
-    public static const PRODUCT_QTY_CHANGE:String = "productQtyChange";
-    
-    public var product:Product;
-    
-    //making the default bubbles behavior of the event to true since we want
-    //it to bubble out of the ProductListItem and beyond
-    public function ProductListEvent(type:String, bubbles:Boolean=true, cancelable:Boolean=false)
-    {
-        super(type, bubbles, cancelable);
-    }
-    
-}
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductThumbEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductThumbEvent.as b/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductThumbEvent.as
deleted file mode 100755
index f92dc7f..0000000
--- a/examples/flexjs/FlexJSStore/src/samples/flexstore/ProductThumbEvent.as
+++ /dev/null
@@ -1,45 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package samples.flexstore
-{
-    
-import org.apache.flex.events.Event;
-
-public class ProductThumbEvent extends Event
-{
-    public static const PURCHASE:String = "purchase";
-    public static const COMPARE:String = "compare";
-    public static const DETAILS:String = "details";
-    public static const BROWSE:String = "browse";
-    
-    public var product:Product;
-    
-    public function ProductThumbEvent(type:String, product:Product)
-    {
-        super(type);
-        this.product = product;
-    }
-    
-    override public function cloneEvent():Event
-    {
-        return new ProductThumbEvent(type, product);
-    }
-}
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/FlexJSStore.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/FlexJSStore.mxml b/examples/flexjs/FlexJSStore_jquery/src/FlexJSStore.mxml
deleted file mode 100755
index e5621c0..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/FlexJSStore.mxml
+++ /dev/null
@@ -1,268 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<jquery:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-                xmlns:js="library://ns.apache.org/flexjs/basic" 
-                xmlns:jquery="library://ns.apache.org/flexjs/jquery"
-                xmlns="*"
-                initialize="startService()"
-			    pageTitle="FlexStore">
-	
-	<fx:Script>
-		<![CDATA[	
-            import org.apache.flex.core.ValuesManager;
-            
-            /*
-			private var currentTheme:String = "beige";
-			
-			private function toggleTheme():void
-			{
-				if (currentTheme == "beige")
-				{
-					currentTheme = "blue";
-				}
-				else
-				{
-					currentTheme = "beige";
-				}
-				
-				loadStyle();
-			}
-			*/
-            
-			private function startService():void
-			{
-				productService.send();
-			}
-			
-			private function loadStyle():void
-			{
-                /* load css not implemented yet
-				var eventDispatcher:IEventDispatcher =
-					styleManager.loadStyleDeclarations(currentTheme + ".swf");
-				eventDispatcher.addEventListener(StyleEvent.COMPLETE, completeHandler);
-                */
-			}
-			
-			private function completeHandler(event:Event):void
-			{
-				image.source = ValuesManager.valuesImpl.getValue(acb, "storeLogo");
-                /*
-				super.initialized = true;
-                */
-                callLater.callLater(prebake);
-			}
-			
-            /*
-			override public function set initialized(value:Boolean):void
-			{
-				// Hold off until the Runtime CSS SWF is done loading.
-			}
-            */
-            
-            private var stateChain:Array;
-            
-            private function headHome():void
-            {
-                homeButton.selected = true;
-                if (initialView.currentState == "ProductsState")
-                {
-                    productsButton.selected = false;
-                    stateChain = ["ProductsWipeUp", "HomeWipeDown", "HomeState"];
-                    initialView.currentState = "ProductsWipeUp";
-                }
-                else if (initialView.currentState == "SupportState")
-                {
-                    supportButton.selected = false;
-                    stateChain = ["SupportWipeUp", "HomeWipeDown", "HomeState"];
-                    initialView.currentState = "SupportWipeUp";                    
-                }
-            }
-            
-            private function headToProducts():void
-            {
-                productsButton.selected = true;
-                if (initialView.currentState == "SupportState")
-                {
-                    supportButton.selected = false;
-                    stateChain = ["SupportWipeUp", "ProductsWipeDown", "ProductsState"];
-                    initialView.currentState = "SupportWipeUp";                    
-                }
-                if (initialView.currentState == "HomeState")
-                {
-                    homeButton.selected = false;
-                    stateChain = ["HomeWipeUp", "ProductsWipeDown", "ProductsState"];
-                    initialView.currentState = "HomeWipeUp";                    
-                }
-            }
-            
-            private function headToSupport():void
-            {
-                supportButton.selected = true;
-                if (initialView.currentState == "ProductsState")
-                {
-                    productsButton.selected = false;
-                    stateChain = ["ProductsWipeUp", "SupportWipeDown", "SupportState"];
-                    initialView.currentState = "ProductsWipeUp";                    
-                }
-                if (initialView.currentState == "HomeState")
-                {
-                    homeButton.selected = false;
-                    stateChain = ["HomeWipeUp", "SupportWipeDown", "SupportState"];
-                    initialView.currentState = "HomeWipeUp";                    
-                }
-            }
-            
-            private function prebake():void
-            {
-                callLater.callLater(prebake2);
-            }
-            
-            private function prebake2():void
-            {
-                trace("prebake2");
-                stateChain = ["ProductsPreBake", "HomeState"];
-                initialView.currentState = "ProductsPreBake";
-            }
-                
-            private function chainStatesIfNeeded():void
-            {
-                if (stateChain != null)
-                {
-                    if (initialView.currentState == stateChain[0])
-                    {
-                        callLater.callLater(nextState);
-                    }
-                }
-            }
-            
-            private function nextState():void
-            {
-                stateChain.shift();
-                if (stateChain.length)
-                    initialView.currentState = stateChain[0];
-                else
-                    stateChain = null;
-            }
-		]]>
-	</fx:Script>
-	
-	<fx:Style source="main.css"/>
-    <fx:Style source="beige.css"/>
-	
-    <fx:Declarations>
-        <js:HTTPService id="productService" url="data/catalog.json">
-            <js:LazyCollection id="catalog" complete="if (pView) pView.catalog = catalog">
-                <js:inputParser>
-                    <js:JSONInputParser />
-                </js:inputParser>
-                <js:itemConverter>
-                    <ProductJSONItemConverter />
-                </js:itemConverter> 
-            </js:LazyCollection>
-        </js:HTTPService>        
-    </fx:Declarations>
-    <jquery:valuesImpl>
-        <js:SimpleCSSValuesImpl />
-    </jquery:valuesImpl>
-	<jquery:beads>
-        <js:CallLaterBead id="callLater" />
-        <js:ApplicationDataBinding />
-    </jquery:beads>
-    <jquery:initialView>
-        <js:View	width="990" height="585"
-                        initComplete="completeHandler(null)"
-                        stateChangeComplete="chainStatesIfNeeded()">
-            <js:states>
-                <js:State name="HomeState" stateGroups="['Home']" />
-                <js:State name="HomeWipeUp" stateGroups="['Home']" />
-                <js:State name="HomeWipeDown" stateGroups="['Home']" />
-                <js:State name="ProductsPreBake" stateGroups="['Home', 'Products']" />
-                <js:State name="ProductsState" stateGroups="['Products']" />
-                <js:State name="ProductsWipeUp" stateGroups="['Products']" />
-                <js:State name="ProductsWipeDown" stateGroups="['Products']" />
-                <js:State name="SupportState" stateGroups="['Support']" />
-                <js:State name="SupportWipeUp" stateGroups="['Support']" />
-                <js:State name="SupportWipeDown" stateGroups="['Support']" />
-            </js:states>
-            
-            <js:transitions>
-                <js:Transition fromState="HomeState" toState="HomeWipeUp">
-                    <js:Wipe direction="up" target="homeView" />
-                </js:Transition>
-                <js:Transition fromState="HomeWipeDown" toState="HomeState">
-                    <js:Wipe direction="down" target="homeView" />
-                </js:Transition>
-                <js:Transition fromState="ProductsState" toState="ProductsWipeUp">
-                    <js:Wipe direction="up" target="pView" />
-                </js:Transition>
-                <js:Transition fromState="ProductsWipeDown" toState="ProductsState">
-                    <js:Wipe direction="down" target="pView" />
-                </js:Transition>
-                <js:Transition fromState="SupportState" toState="SupportWipeUp">
-                    <js:Wipe direction="up" target="supportView" />
-                </js:Transition>
-                <js:Transition fromState="SupportWipeDown" toState="SupportState">
-                    <js:Wipe direction="down" target="supportView" />
-                </js:Transition>
-            </js:transitions>
-            <js:beads>
-                <js:VerticalLayout />
-            </js:beads>
-            <js:ControlBar id="acb" width="100%" className="storeControlBar" >
-                <js:beads>
-                    <js:HorizontalLayout />
-                </js:beads>
-                <js:Image id="image" />
-                         <!-- click="toggleTheme()" -->
-                         <!-- toolTip="Change Theme"/ -->
-                <jquery:ToggleTextButton id="homeButton"
-                                text="Home"
-                                height="100%"
-                                selected="true"
-                                className="storeButtonBar"
-                                click="headHome()" />
-                <jquery:ToggleTextButton id="productsButton"
-                                text="Products"
-                                height="100%"
-                                className="storeButtonBar"
-                                click="headToProducts()"/>
-                <jquery:ToggleTextButton id="supportButton"
-                                text="Support"
-                                height="100%"
-                                className="storeButtonBar"
-                                click="headToSupport()"/>            
-            </js:ControlBar>
-            <js:Container width="990" >
-                <js:style>
-                    <js:SimpleCSSStyles paddingLeft="0" paddingRight="0"/>
-                </js:style>
-                        
-                <HomeView id="homeView" width="100%" height="550" includeIn="Home"
-                          />
-                <ProductsView id="pView" includeIn="Products" visible.ProductsPreBake="false"
-                              width="100%" height="550" initComplete="if (catalog.length) pView.catalog = catalog"
-                              />
-                <SupportView id="supportView" includeIn="Support"
-                             width="100%" height="550"
-                             />
-            </js:Container>
-        </js:View>        
-    </jquery:initialView>    
-</jquery:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/HomeView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/HomeView.mxml b/examples/flexjs/FlexJSStore_jquery/src/HomeView.mxml
deleted file mode 100755
index 1882c7e..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/HomeView.mxml
+++ /dev/null
@@ -1,195 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<!--
-This component is primarily static and is only meant to show what other
-pages of the store could look like.
-
-Note that this page was put together in the Design view so you'll see more
-hard coded locations and sizes.
-
-Also note when working with a Canvas that using the constraint styles 
-(e.g., left, top, right, bottom) can provide better layout predictability than 
-using x and y, especially when percentage widths and heights are used.
-
-Width and height are hard-coded in the root tag to help the Design view.
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-         xmlns:js="library://ns.apache.org/flexjs/basic" 
-         xmlns:jquery="library://ns.apache.org/flexjs/jquery"
-           xmlns="*" width="990" height="550"
-           initComplete="updateMapImage()">
-	<fx:Script>
-		<![CDATA[
-            import org.apache.flex.core.ValuesManager;
-			import org.apache.flex.html.SimpleAlert;
-
-			public function updateMapImage():void
-			{
-				mapImage.source = ValuesManager.valuesImpl.getValue(mapCanvas, 'dottedMap');
-			}
-		]]>
-	</fx:Script>
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-	<js:HContainer width="100%" height="100%" y="0" x="0" className="colorPanel">
-		<js:VContainer width="230" height="100%">
-			<js:Container width="100%" height="100%">
-			
-				<js:Container height="60" className="homeSection">
-                    <js:style>
-                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="10" right="10"/>
-                    </js:style>
-					<js:Label style="left:10;top:10" text="Search Developers" height="22" className="sectionHeader" />
-					<jquery:TextButton style="left:168;top:30" text="Go" width="27" height="20" className="glass" click="SimpleAlert.show('This feature is not implemented in this sample', 'Go')"/>
-					<js:TextInput style="left:10;top:30" height="20" width="150"/>
-				</js:Container>
-				
-				<js:Container height="280" className="homeSection">
-                    <js:style>
-                        <js:SimpleCSSStyles backgroundColor="#ffffff" left="10" top="78" right="10" />                        
-                    </js:style>
-					<js:VContainer width="100%" height="100%">
-                        <js:style>
-                            <js:SimpleCSSStyles left="10" top="10" />                        
-                        </js:style>
-						<js:Label text="Flex Experts That Can Help You" className="sectionHeader"/>
-						<js:HRule height="5" width="187" style="marginLeft:0"/>
-						<js:Label text="General" className="homeProgramHeader"/>
-						<js:Label text="BlazeDS Experts" style="fontSize:9"/>
-						<js:Spacer height="8" width="100%"/>
-						<js:Label text="Server-side" className="homeProgramHeader"/>
-						<js:Label text="Java, PHP Developers" style="fontSize:9"/>
-						<js:Spacer height="8" width="100%"/>
-						<js:Label text="Mobile" className="homeProgramHeader"/>
-						<js:Label text="Android, IOS and more" style="fontSize:9"/>
-						<js:Spacer height="8" width="100%"/>
-						<js:Label text="Students" className="homeProgramHeader"/>
-						<js:Label text="Free Assistance" style="fontSize:9"/>
-						<js:Spacer height="8" width="100%"/>
-					</js:VContainer>
-				</js:Container>
-				
-				<js:Container height="174" className="homeSection">
-                    <js:style>
-                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="366" right="10" />
-                    </js:style>
-					<js:VContainer width="100%" height="100%">
-                        <js:style>
-                            <js:SimpleCSSStyles left="10" top="10" />
-                        </js:style>
-						<js:Label text="Manage My Account" className="sectionHeader"/>
-						
-						<js:Label text="Phone Number"/>
-						
-						<js:HContainer width="100%" height="25" >
-                            <js:style>
-                                <js:SimpleCSSStyles verticalAlign="middle" />
-                            </js:style>
-							<js:TextInput height="20" width="40"/>
-							<js:HRule width="8" height="2"/>
-							<js:TextInput height="20" width="40"/>
-							<js:HRule width="8" height="2"/>
-							<js:TextInput height="20" width="40"/>
-						</js:HContainer>
-						
-						<js:Label text="Password"/>
-						<js:TextInput height="20"/>
-						<js:Spacer height="8" width="100%"/>
-						
-						<jquery:CheckBox text="Remember my phone number" selected="true"/>
-						<js:Spacer height="8" width="100%"/>
-						
-						<jquery:TextButton text="Login" className="glass" height="20" width="55" click="SimpleAlert.show('This feature is not implemented in this sample', 'Login')"/>
-						
-					</js:VContainer>
-				</js:Container>
-				
-			</js:Container>
-			
-		</js:VContainer>
-		
-		<js:VContainer width="750" height="100%">
-			<js:Container width="100%" height="100%">
-			
-			    <!-- can't use binding to set the mapImage source because the style isn't available early enough -->
-				<js:Container id="mapCanvas" height="35%" className="homeMap">
-                    <js:style>
-                        <js:SimpleCSSStyles left="0" right="10" top="10" />
-                    </js:style>
-					<js:Image id="mapImage" width="487" height="100%" alpha="1.0" style="left:10;top:10"/>
-					<js:Label y="110" text="US Developers . Flex . FlexJS" width="95%" height="40" style="margin:auto;fontWeight:'bold';fontSize:22;color:#ffffff;fontFamily:'Arial';textAlign:'center'"/>
-					<js:Label text="Learn More &gt;&gt;" width="95" style="fontSize:12;fontFamily:'Arial';bottom:10;right:10"/>
-					<js:Label text="$60/hr" style="color:#ffffff;fontWeight:'bold';fontFamily:'Arial';fontSize:20;right:10:top:10"/>
-					<js:Label text="Rates as low as" x="551" y="16" style="fontSize:12"/>
-				</js:Container>
-				
-				<js:Container height="330" >
-                    <js:style>
-                        <js:SimpleCSSStyles backgroundColor="#ffffff" borderStyle="solid" bottom="10" right="10" left="0" /> <!-- cornerRadius="4" -->
-                    </js:style>
-					
-					<js:Label style="left:10;top:10" text="Featured Developers" width="173" height="25" className="sectionHeader"/>
-					
-					<js:HContainer style="left:10;top:43" width="100%" height="100%">
-						<js:VContainer width="33%" height="100%">
-							<js:Container width="100%">
-								<js:Image id="image1" source="assets/akotter.jpg" style="margin:auto;verticalCenter:0"/>
-							</js:Container>
-							
-							<js:Container width="100%">
-								<js:Label text="Annette Kotter" id="feat_prod_1" style="margin:auto;fontWeight:'bold';fontSize:12"/>
-							</js:Container>
-							
-						</js:VContainer>
-						
-						<js:VContainer width="33%" height="100%">
-							<js:Container width="100%">
-								<js:Image id="image2" style="margin:auto;verticalCenter:0" source="assets/bcrater.jpg"/>
-							</js:Container>
-							
-							<js:Container width="100%">
-								<js:Label text="Ben Crater" id="feat_prod_2" style="margin:auto;fontWeight:'bold';fontSize:12"/>
-							</js:Container>
-							
-						</js:VContainer>
-						
-						<js:VContainer width="33%" height="100%">
-							<js:Container width="100%">
-								<js:Image id="image3" style="margin:auto;verticalCenter:0" source="assets/jproctor.jpg"/>
-							</js:Container>
-							
-							<js:Container width="100%">
-								<js:Label text="Jane Proctor" id="feat_prod_3" style="margin:auto;fontWeight:'bold';fontSize:12"/>
-							</js:Container>
-							
-						</js:VContainer>
-						
-					</js:HContainer>
-					
-				</js:Container>
-				
-			</js:Container>
-		
-		</js:VContainer>
-		
-	</js:HContainer>
-	
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/ProductJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/ProductJSONItemConverter.as b/examples/flexjs/FlexJSStore_jquery/src/ProductJSONItemConverter.as
deleted file mode 100755
index cb27bde..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/ProductJSONItemConverter.as
+++ /dev/null
@@ -1,41 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package
-{
-    import org.apache.flex.collections.converters.JSONItemConverter;
-    
-    import samples.flexstore.Product;
-    
-    public class ProductJSONItemConverter extends JSONItemConverter
-    {
-        public function ProductJSONItemConverter()
-        {
-            super();
-        }
-        
-        override public function convertItem(data:String):Object
-        {
-            var obj:Object = super.convertItem(data);
-            var product:Product = new Product();
-            for (var p:String in obj)
-                product[p] = obj[p];
-			return product;
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/ProductsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/ProductsView.mxml b/examples/flexjs/FlexJSStore_jquery/src/ProductsView.mxml
deleted file mode 100755
index 70fccd1..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/ProductsView.mxml
+++ /dev/null
@@ -1,121 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<!-- width and height hard-coded in the root tag to better support the 
-     Design view in FlexBuilder since we know the width and height from the 
-     settings in flexstore.mxml -->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-         xmlns:js="library://ns.apache.org/flexjs/basic" 
-    xmlns:productsView="productsView.*"
-    width="990" height="550"
-    currentState="showFilter"
-    >
-
-    <fx:Script>
-        <![CDATA[
-        import org.apache.flex.events.Event;
-        import org.apache.flex.collections.LazyCollection;
-        import samples.flexstore.Product;
-                
-        private var _catalog:LazyCollection;
-        
-        [Bindable("catalogChange")]
-        public function get catalog():LazyCollection
-        {
-            return _catalog;
-        }
-        
-        public function set catalog(c:LazyCollection):void
-        {
-            _catalog = c;
-            if (filterPanel != null)
-            {
-                filterPanel.filter.count = c.length;
-            }
-            dispatchEvent(new org.apache.flex.events.Event("catalogChange"));
-        }
-        
-        public function addToCompare(product:Product):void
-        {
-            //setting the state before adding the product avoids jumpiness in the transition, not sure why
-            currentState = 'showFilter';
-            filterPanel.productList.addProduct(product);
-        }
-        
-        public function addToCart(product:Product):void
-        {
-            //setting the state before adding the product avoids jumpiness in the transition, not sure why
-            currentState = 'showCart'; 
-            cartPanel.productList.addProduct(product);
-        }
-        
-        
-        ]]>
-    </fx:Script>
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-    <js:Container 
-        className="colorPanel"
-        height="100%" width="100%" 
-        >
-        <js:beads>
-            <js:OneFlexibleChildHorizontalLayout flexibleChild="spacer" />
-        </js:beads>
-        <productsView:Grip id="filterGrip" gripIcon="assets/icon_magnifier.png" 
-            gripTip="Show filter panel" click="currentState = 'showFilter'"/>
-    
-        <productsView:ProductFilterPanel x="{filterGrip.width}" y="0" id="filterPanel" width="265" height="100%"
-            filter="catalogPanel.filter(event.filter, event.live)"
-            compare="catalogPanel.compare(filterPanel.productList.getProducts())"
-            initComplete="if (catalog) filterPanel.filter.count = catalog.length"/>
-    
-        <js:Spacer id="spacer" />
-        
-        <productsView:ProductCart id="cartPanel" width="265" height="100%" />
-
-        <productsView:Grip id="cartGrip" gripIcon="assets/icon_cart_empty.png"
-            gripTip="Show cart" click="currentState = 'showCart'" />
-    
-    </js:Container>
-        
-    <productsView:ProductCatalogPanel id="catalogPanel" y="4" width="685" height="540"
-                                      x.showFilter="288" x.showCart="0"
-        catalog="{catalog}"
-        compare="addToCompare(event.product)"
-        purchase="addToCart(event.product)"
-        cartCount="{cartPanel.numProducts}">
-    </productsView:ProductCatalogPanel>
-    
-    <js:states>
-       <js:State name="showFilter" />
-       <js:State name="showCart" />
-    </js:states>
-    
-    <!-- 
-      make sure to use transitions here instead of applying a Move effect
-      to the Panel itself which will result in odd behavior
-    -->
-    <js:transitions>
-       <js:Transition fromState="*" toState="*">
-          <js:Move target="catalogPanel" />
-       </js:Transition>
-    </js:transitions>
-        
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/SupportView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/SupportView.mxml b/examples/flexjs/FlexJSStore_jquery/src/SupportView.mxml
deleted file mode 100755
index ab3eea7..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/SupportView.mxml
+++ /dev/null
@@ -1,149 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<!--
-This component is primarily static and is only meant to show what other
-pages of the store could look like.
-
-Note that this page was put together in the Design view so you'll see more
-hard coded locations and sizes.
-
-We did not have sizing issues here as much so you'll see more hardcoded 
-"y" values rather than "top."
-
-The width and height are hard-coded in the root tag to help the Design view.
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-                 xmlns:js="library://ns.apache.org/flexjs/basic" 
-                 xmlns="*" alpha="1.0"
-    width="990" height="550">
-	
-	<fx:Script>
-	    <![CDATA[
-	       import org.apache.flex.html.SimpleAlert;
-	    ]]>
-	</fx:Script>
-	
-    <fx:Declarations>
-        <fx:Array id="locations">
-            <fx:Object image="assets/support_mapmarker_a.png" name="601 Townsend St" /> 
-            <fx:Object image="assets/support_mapmarker_b.png" name="Location B" />
-            <fx:Object image="assets/support_mapmarker_c.png" name="Location C" />	   	   
-        </fx:Array>   
-        
-    </fx:Declarations>
-	
-	<js:HContainer x="0" y="0" width="100%" height="100%" className="colorPanel">
-	
-		<js:VContainer width="32%" height="100%">
-			<js:Container width="100%" height="420">
-			
-				<js:Label y="10" text="Check Location" className="sectionHeader" x="20"/>
-				
-				<js:Container height="150" y="64" style="margin:auto">
-                    <js:beads>
-                        <js:VerticalColumnLayout numColumns="2" />
-                    </js:beads>
-					<js:Label text="Address:"/>
-					<js:TextInput id="address"/>
-					
-					<js:Label text="City:" style="marginTop:20"/>
-					<js:TextInput id="city" style="marginTop:20"/>						
-					
-					<js:Label text="State:" style="marginTop:20"/>
-					<js:DropDownList id="state" style="marginTop:20">
-						<js:dataProvider>
-                            <fx:Array>
-                                <fx:String>California</fx:String>
-                                <fx:String>Nevada</fx:String>
-                                <fx:String>Oregon</fx:String>
-                                <fx:String>Washington</fx:String>
-                            </fx:Array>                                    
-            			</js:dataProvider>
-					</js:DropDownList>
-					
-					<js:Label text="ZIP Code:" style="marginTop:20"/>
-					<js:TextInput id="zip" style="marginTop:20"/>
-					
-				</js:Container>
-				
-				<js:Label y="38" text="Option1: Enter Address" style="margin:auto" className="instructions"/>
-				
-				<js:TextButton y="297" text="Locate" click="SimpleAlert.show('This feature is not implemented in this sample', 'Locate')" 
-                                  style="margin:auto"/>
-				
-				<js:HContainer y="327" height="20" >
-                    <js:style>
-                        <js:SimpleCSSStyles margin="auto" verticalAlign="middle" />
-                    </js:style>
-					<js:HRule width="60" />
-					<js:Label text="OR"/>
-                    <js:HRule width="60" />
-				</js:HContainer>
-				
-				<js:Label y="355" text="Option 2: Drag this marker into the map" style="margin:auto" className="instructions"/>
-				
-				<js:Image y="380" style="margin:auto" source="assets/support_mapmarker_plus.png"/>
-				
-				<js:HRule y="415" style="margin:auto" width="200" alpha="0.6"/>
-				
-			</js:Container>
-			
-			<js:Container width="100%" height="130">
-				<js:VContainer width="80%" height="90%" >
-                    <js:style>
-                        <js:SimpleCSSStyles margin="auto" top="0"/>
-                    </js:style>
-					<js:Label text="Location" className="instructions"/>
-					<js:List width="100%" dataProvider="{locations}">
-                        <js:itemRenderer>
-                            <fx:Component>
-                                <js:DataItemRenderer className="listItem" width="100%">
-                                    <fx:Script>
-                                        <![CDATA[
-                                            import samples.flexstore.Product;
-                                            [Bindable("__NoChangeEvent__")]
-                                            private function get product():Product
-                                            {
-                                                return data as Product;
-                                            }
-                                        ]]>
-                                    </fx:Script>
-                                    <js:Image width="21" height="25" source="{product.image}" />
-                                    <js:Label width="100%" text="{product.name}" />
-                                </js:DataItemRenderer>                                                            
-                            </fx:Component>
-                        </js:itemRenderer>
-					</js:List>
-				</js:VContainer>
-			</js:Container>
-			
-		</js:VContainer>
-		
-		<js:Container width="68%" height="100%">
-			<js:Image source="assets/427px-Bayarea_map.png">
-                <js:style>
-                    <js:SimpleCSSStyles left="12" top="12"/>
-                </js:style>
-            </js:Image>
-		</js:Container>
-		
-	</js:HContainer>
-	
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/427px-Bayarea_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/427px-Bayarea_map.png b/examples/flexjs/FlexJSStore_jquery/src/assets/427px-Bayarea_map.png
deleted file mode 100644
index a183699..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/427px-Bayarea_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/akotter.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/akotter.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/akotter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/bcrater.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/bcrater.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/bcrater.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/beige_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/beige_background.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/beige_background.jpg
deleted file mode 100755
index 8f034ba..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/beige_background.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/beige_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/beige_dotted_map.png b/examples/flexjs/FlexJSStore_jquery/src/assets/beige_dotted_map.png
deleted file mode 100755
index e88d9ef..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/beige_dotted_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/blue_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/blue_background.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/blue_background.jpg
deleted file mode 100755
index 361ce0e..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/blue_background.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/blue_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/blue_dotted_map.png b/examples/flexjs/FlexJSStore_jquery/src/assets/blue_dotted_map.png
deleted file mode 100755
index 5fa6714..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/blue_dotted_map.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/button_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/button_cart_empty.png b/examples/flexjs/FlexJSStore_jquery/src/assets/button_cart_empty.png
deleted file mode 100644
index 0e1a2b5..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/button_cart_empty.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/button_cart_full.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/button_cart_full.png b/examples/flexjs/FlexJSStore_jquery/src/assets/button_cart_full.png
deleted file mode 100644
index 9c9eea0..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/button_cart_full.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/button_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/button_compare.png b/examples/flexjs/FlexJSStore_jquery/src/assets/button_compare.png
deleted file mode 100644
index c2ac969..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/button_compare.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/button_details.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/button_details.png b/examples/flexjs/FlexJSStore_jquery/src/assets/button_details.png
deleted file mode 100644
index 3e6238c..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/button_details.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/button_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/button_tiles.png b/examples/flexjs/FlexJSStore_jquery/src/assets/button_tiles.png
deleted file mode 100644
index 4266a22..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/button_tiles.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/grip.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/grip.png b/examples/flexjs/FlexJSStore_jquery/src/assets/grip.png
deleted file mode 100755
index 64ee835..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/grip.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/icon_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/icon_cart_empty.png b/examples/flexjs/FlexJSStore_jquery/src/assets/icon_cart_empty.png
deleted file mode 100644
index 562064b..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/icon_cart_empty.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/icon_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/icon_compare.png b/examples/flexjs/FlexJSStore_jquery/src/assets/icon_compare.png
deleted file mode 100644
index efc3ea1..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/icon_compare.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/icon_magnifier.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/icon_magnifier.png b/examples/flexjs/FlexJSStore_jquery/src/assets/icon_magnifier.png
deleted file mode 100755
index 939f814..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/icon_magnifier.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/icon_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/icon_tiles.png b/examples/flexjs/FlexJSStore_jquery/src/assets/icon_tiles.png
deleted file mode 100644
index dbf75b6..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/icon_tiles.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/jproctor.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/jproctor.jpg
deleted file mode 100755
index 1111787..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/jproctor.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/logo_blue.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/logo_blue.png b/examples/flexjs/FlexJSStore_jquery/src/assets/logo_blue.png
deleted file mode 100755
index 85bad70..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/logo_blue.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/logo_orange.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/logo_orange.png b/examples/flexjs/FlexJSStore_jquery/src/assets/logo_orange.png
deleted file mode 100755
index e3ff7a6..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/logo_orange.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/abrilliam.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/abrilliam.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/abrilliam.jpg
deleted file mode 100755
index 6954858..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/abrilliam.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/akotter.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/akotter.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/akotter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bcrater.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bcrater.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bcrater.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bleporte.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bleporte.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bleporte.jpg
deleted file mode 100755
index c4769e8..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bleporte.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bvanbrocklin.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bvanbrocklin.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bvanbrocklin.jpg
deleted file mode 100755
index 489fa2e..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/bvanbrocklin.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/ccarpenter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/ccarpenter.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/ccarpenter.jpg
deleted file mode 100755
index c1dc3d8..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/ccarpenter.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/clampberto.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/clampberto.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/clampberto.jpg
deleted file mode 100755
index 9deacd2..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/clampberto.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/davenon.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/davenon.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/davenon.jpg
deleted file mode 100755
index 6a2a142..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/davenon.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/dmcgoyal.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/dmcgoyal.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/dmcgoyal.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/dmcgoyal.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/dwillhelm.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/dwillhelm.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/dwillhelm.jpg
deleted file mode 100755
index fd15d59..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/dwillhelm.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/esunderland.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/esunderland.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/esunderland.jpg
deleted file mode 100755
index c4769e8..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/esunderland.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/jproctor.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/jproctor.jpg
deleted file mode 100755
index 1111787..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/jproctor.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/mfields.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/mfields.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/mfields.jpg
deleted file mode 100755
index 489fa2e..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/mfields.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/pdempsey.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/pdempsey.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/pdempsey.jpg
deleted file mode 100755
index 9deacd2..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/pdempsey.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/ptranep.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/ptranep.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/ptranep.jpg
deleted file mode 100755
index 4b9a03b..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/ptranep.jpg and /dev/null differ


[04/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/controller/WatchListController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/controller/WatchListController.as b/examples/flexjs/MobileStocks/src/main/flex/controller/WatchListController.as
new file mode 100644
index 0000000..0d94e5f
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/controller/WatchListController.as
@@ -0,0 +1,139 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package controller
+{
+	import models.ProductsModel;
+	import models.Stock;
+
+	import org.apache.flex.core.IBeadController;
+	import org.apache.flex.core.IBeadModel;
+	import org.apache.flex.core.IStrand;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	import org.apache.flex.utils.Timer;
+	import org.apache.flex.collections.ArrayList;
+
+	import views.StockView;
+	import views.WatchListView;
+
+	public class WatchListController extends EventDispatcher implements IBeadController
+	{
+		public function WatchListController()
+		{
+			super();
+
+			timer = new Timer(updateInterval, 0);
+			timer.addEventListener("timer", timerHandler);
+		}
+
+		public var updateInterval:Number = 5000;
+
+		protected var timer:Timer;
+
+		private var index:Number = 0;
+		private var selectedStock:Stock;
+		private var _strand:IStrand;
+
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+
+			var view:WatchListView = value as WatchListView;
+			view.addEventListener("addSymbol", handleAddSymbol);
+			view.addEventListener("stockSelected", handleGridSelection);
+		}
+
+		private var _model:IBeadModel;
+		public function set model(value:IBeadModel):void
+		{
+			_model = value;
+		}
+		public function get model():IBeadModel
+		{
+			return _model;
+		}
+
+		private function handleAddSymbol(event:Event):void
+		{
+			var view:WatchListView = _strand as WatchListView;
+			var symbol:String = view.symbolName.text.toUpperCase();
+
+			view.symbolName.text = "";
+
+			(model as ProductsModel).addStockToWatchList(symbol);
+			(model as ProductsModel).saveDataToStorage();
+
+			subscribe();
+		}
+
+		private function handleGridSelection(event:Event):void
+		{
+			var view:WatchListView = _strand as WatchListView;
+			selectedStock = (model as ProductsModel).watchList.getItemAt(view.selectedStockIndex) as Stock;
+			trace("Selected stock "+selectedStock.symbol);
+
+			var stockView:StockView = view.showStockDetails(selectedStock);
+			stockView.addEventListener("removeFromList", handleRemoveFromList);
+		}
+
+		public function handleRemoveFromList(event:Event):void
+		{
+			(model as ProductsModel).removeStockFromWatchList(selectedStock);
+
+			var view:WatchListView = _strand as WatchListView;
+			view.popView();
+		}
+
+		public function subscribe():void
+		{
+			if (!timer.running)
+			{
+				timer.start();
+			}
+		}
+
+		public function unsubscribe():void
+		{
+			if (timer.running)
+			{
+				timer.stop();
+			}
+		}
+
+		/**
+		 * Each time the handler goes off a different stock in the list
+		 * is updated. This keeps the app from sending too many requests
+		 * all at once.
+		 */
+		protected function timerHandler(event:*):void
+		{
+			var stockList:ArrayList = (model as ProductsModel).watchList;
+
+			if (stockList.length == 0) return;
+
+			if (index >= stockList.length) index = 0;
+
+			(model as ProductsModel).updateStockData(stockList.getItemAt(index) as Stock);
+			index++;
+
+			var newEvent:Event = new Event("update");
+			model.dispatchEvent(newEvent);
+		}
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/models/ProductsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/models/ProductsModel.as b/examples/flexjs/MobileStocks/src/main/flex/models/ProductsModel.as
new file mode 100755
index 0000000..ab7689e
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/models/ProductsModel.as
@@ -0,0 +1,271 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.core.IBeadModel;
+	import org.apache.flex.core.IStrand;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	import org.apache.flex.net.HTTPService;
+	import org.apache.flex.collections.parsers.JSONInputParser;
+	import org.apache.flex.collections.LazyCollection;
+	import org.apache.flex.collections.ArrayList;
+
+	import org.apache.flex.storage.PermanentStorage;
+	import org.apache.flex.storage.events.FileEvent;
+	import org.apache.flex.storage.events.FileErrorEvent;
+
+	public class ProductsModel extends EventDispatcher implements IBeadModel
+	{
+		public function ProductsModel()
+		{
+			super();
+
+			service = new HTTPService();
+			collection = new LazyCollection;
+			collection.inputParser = new JSONInputParser();
+			collection.itemConverter = new StockDataJSONItemConverter();
+
+			_watchList = new ArrayList();
+			_assetList = new ArrayList();
+		}
+
+		public function loadDataFromStorage():void
+		{
+			var storage:PermanentStorage = new PermanentStorage();
+			var useFile:String = "com.apache.flex.MobileStocks2";
+
+			storage.addEventListener("READ", handleRead);
+			storage.addEventListener("ERROR", handleReadError);
+			storage.readTextFromDataFile(useFile);
+		}
+
+		private function handleRead(event:FileEvent):void
+		{
+		    trace(event.data);
+		    var result:XML = new XML(event.data);
+		    trace("XML parsing:");
+		    trace(result);
+
+		    var assetItems:XMLList = result..asset;
+		    trace("Got "+assetItems.length()+" assets");
+		    for each (var asset:XML in assetItems) {
+		        trace("symbol = " + asset.@symbol + ", shares = " + asset.@shares);
+		        addStockToAssetList(asset.@symbol, Number(asset.@shares));
+		    }
+
+		    var watchItems:XMLList = result..watch;
+		    trace("Got "+watchItems.length()+" watches");
+		    for each (var watch:XML in watchItems) {
+		        trace("symbol = "+watch.@symbol);
+		        addStockToWatchList(watch.@symbol);
+		    }
+		}
+
+		private function handleReadError(event:FileErrorEvent):void
+		{
+			trace("Read error: "+event.errorMessage);
+		}
+
+		public function saveDataToStorage():void
+		{
+			var storage:PermanentStorage = new PermanentStorage();
+			var useFile:String = "com.apache.flex.MobileStocks2";
+			var assets:String = "";
+
+			for (var i:int=0; i < _assetList.length; i++) {
+				var stock:Stock = _assetList.getItemAt(i) as Stock;
+				assets = assets + '<asset symbol="'+stock.symbol+'" shares="'+stock.shares+'" />';
+			}
+
+			var watches:String = "";
+			for (i=0; i < _watchList.length; i++) {
+			    stock = _watchList.getItemAt(i) as Stock;
+			    watches = watches + '<watch symbol="'+stock.symbol+'" />';
+			}
+
+			var output:String = "<data><assets>"+assets+"</assets><watches>"+watches+"</watches></data>";
+
+			trace("Writing: "+output);
+
+			storage.addEventListener("WRITE", handleSave);
+			storage.addEventListener("ERROR", handleSaveError);
+			storage.writeTextToDataFile(useFile, output);
+		}
+
+		private function handleSave(event:FileEvent):void
+		{
+			trace("Save completed");
+		}
+
+		private function handleSaveError(event:FileErrorEvent):void
+		{
+			trace("Write error: "+event.errorMessage);
+		}
+
+		private var service:HTTPService;
+		private var collection:LazyCollection;
+		private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
+		private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
+
+		private var _strand:IStrand;
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+
+			service.addBead(collection);
+			_strand.addBead(service);
+		}
+
+		private var _tabList:Array = ["Assets", "Watch", "Alerts"];
+		public function get tabList():Array
+		{
+			return _tabList;
+		}
+
+		private var _labelFields:Array = [ "id", "title", "detail" ];
+		public function get labelFields():Array
+		{
+			return _labelFields;
+		}
+
+		private var _watchList:ArrayList;
+
+		public function get watchList():ArrayList
+		{
+			return _watchList;
+		}
+
+		private var _assetList:ArrayList;
+
+		public function get assetList():ArrayList
+		{
+			return _assetList;
+		}
+
+		public function addStockToAssetList(symbol:String, shares:Number):Stock
+		{
+			for (var i:int=0; i < _assetList.length; i++)
+			{
+				var stock:Stock = _assetList.getItemAt(i) as Stock;
+				if (stock.symbol == symbol) {
+					stock.shares = shares;
+					_assetList.itemUpdatedAt(i);
+					return stock;
+				}
+			}
+
+			stock = new Stock(symbol);
+			stock.shares = shares;
+
+			_assetList.addItem(stock);
+			updateStockData(stock);
+
+			return stock;
+		}
+
+		public function addStockToWatchList(symbol:String):Stock
+		{
+			for (var i:int=0; i < _watchList.length; i++)
+			{
+				var stock:Stock = _watchList.getItemAt(i) as Stock;
+				if (stock.symbol == symbol) {
+					_watchList.itemUpdatedAt(i);
+					return stock;
+				}
+			}
+
+			stock = new Stock(symbol);
+			_watchList.addItem(stock);
+			updateStockData(stock);
+			return stock;
+		}
+
+		public function removeStockFromWatchList(stock:Stock):void
+		{
+			for (var i:int=0; i < _watchList.length; i++)
+			{
+				var s:Stock = _watchList.getItemAt(i) as Stock;
+				if (stock.symbol == s.symbol) {
+					_watchList.removeItemAt(i);
+					break;
+				}
+			}
+
+			dispatchEvent(new Event("update"));
+		}
+
+		public function removeStockFromAssetListAtIndex(index:int):void
+		{
+			if (index >= 0 && index < _assetList.length) {
+				_assetList.removeItemAt(index);
+				dispatchEvent(new Event("update"));
+			}
+		}
+
+		// UPDATE STOCK INFORMATION FROM REMOTE SYSTEM
+
+		public function updateStockData(value:Stock):void
+		{
+			var sym:String = value.symbol;
+			service.url = queryBegin + sym + queryEnd;
+			service.send();
+			service.addEventListener("complete", completeHandler);
+		}
+
+		private function completeHandler(event:Event):void
+		{
+			var responseData:Object = collection.getItemAt(0);
+			if ((responseData is String) && (responseData == "No Data")) return;
+			var sym:String = responseData["Symbol"];
+
+			var queueNext:Stock = null;
+
+			for (var i:int=0; i < _watchList.length; i++)
+			{
+				var stock:Stock = _watchList.getItemAt(i) as Stock;
+				if (stock.symbol == sym) {
+					stock.updateFromData(responseData);
+					_watchList.itemUpdatedAt(i);
+				}
+				else if (stock.last == 0) {
+				    queueNext = stock;
+				}
+			}
+
+			for (i=0; i < _assetList.length; i++)
+			{
+				stock = _assetList.getItemAt(i) as Stock;
+				if (stock.symbol == sym) {
+					stock.updateFromData(responseData);
+					_assetList.itemUpdatedAt(i);
+				}
+				else if (stock.last == 0) {
+					queueNext = stock;
+				}
+			}
+
+			if (queueNext != null) {
+				trace("--- queue: "+queueNext.symbol);
+				updateStockData(queueNext);
+			}
+
+		}
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/models/Stock.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/models/Stock.as b/examples/flexjs/MobileStocks/src/main/flex/models/Stock.as
new file mode 100755
index 0000000..e66f353
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/models/Stock.as
@@ -0,0 +1,168 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	
+	public class Stock extends EventDispatcher
+	{	    		
+		public var history:Array;
+		
+		public function Stock(symbol:String=null, last:Number=0)
+		{
+			this.symbol = symbol;
+			this.last = last;
+			this.low = last;
+			this.high = last;
+			this.open = last;
+			this.change = 0;
+			this.name = "";
+			this.shares = 0;
+		}
+		
+		public function updateFromData(obj:Object):void
+		{
+			name = obj["Name"];
+			low = obj["DaysLow"];
+			high = obj["DaysHigh"];
+			open = obj["Open"];
+			change = obj["Change"];
+			symbol = obj["Symbol"];
+			last = obj["LastTradePriceOnly"];
+			// shares do not change this way
+		}
+		
+		private var _symbol:String;
+		private var _name:String;
+		private var _low:Number;
+		private var _high:Number;
+		private var _open:Number;
+		private var _last:Number;
+		private var _change:Number;
+		private var _date:Date;
+		
+		private var _shares:Number;
+		
+		[Bindable("symbolChanged")]
+		public function get symbol():String
+		{
+			return _symbol;
+		}
+		public function set symbol(value:String):void
+		{
+			_symbol = value;
+			dispatchEvent(new Event("symbolChanged"));
+		}
+		
+		[Bindable("nameChanged")]
+		public function get name():String
+		{
+			return _name;
+		}
+		public function set name(value:String):void
+		{
+			_name = value;
+			dispatchEvent(new Event("nameChanged"));
+		}
+		
+		[Bindable("lowChanged")]
+		public function get low():Number
+		{
+			return _low;
+		}
+		public function set low(value:Number):void
+		{
+			_low = value;
+			dispatchEvent(new Event("lowChanged"));
+		}
+		
+		[Bindable("highChanged")]
+		public function get high():Number
+		{
+			return _high;
+		}
+		public function set high(value:Number):void
+		{
+			_high = value;
+			dispatchEvent(new Event("highChanged"));
+		}
+		
+		[Bindable("openChanged")]
+		public function get open():Number
+		{
+			return _open;
+		}
+		public function set open(value:Number):void
+		{
+			_open = value;
+			dispatchEvent(new Event("openChanged"));
+		}
+		
+		[Bindable("lastChanged")]
+		public function get last():Number
+		{
+			return _last;
+		}
+		public function set last(value:Number):void
+		{
+			_last = value;
+			dispatchEvent(new Event("lastChanged"));
+		}
+		
+		[Bindable("changeChanged")]
+		public function get change():Number
+		{
+			return _change;
+		}
+		public function set change(value:Number):void
+		{
+			_change = value;
+			dispatchEvent(new Event("changeChanged"));
+		}
+		
+		[Bindable("dateChanged")]
+		public function get date():Date
+		{
+			return _date;
+		}
+		public function set date(value:Date):void
+		{
+			_date = value;
+			dispatchEvent(new Event("dateChanged"));
+		}
+		
+		[Bindable("sharedChanged")]
+		public function get shares():Number
+		{
+			return _shares;
+		}
+		public function set shares(value:Number):void
+		{
+			_shares = value;
+			dispatchEvent(new Event("sharesChanged"));
+		}
+		
+		public function get total():Number
+		{
+			return _shares * _last;
+		}
+	}
+	
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/renderers/AlertRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/renderers/AlertRenderer.as b/examples/flexjs/MobileStocks/src/main/flex/renderers/AlertRenderer.as
new file mode 100644
index 0000000..e683020
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/renderers/AlertRenderer.as
@@ -0,0 +1,44 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package renderers
+{
+	import org.apache.flex.html.supportClasses.StringItemRenderer;
+	
+	public class AlertRenderer extends StringItemRenderer
+	{
+		public function AlertRenderer()
+		{
+			super();
+		}
+		
+		override public function set data(value:Object):void
+		{
+			super.data = value;
+			
+			if (labelField == "greaterThan") {
+				if (Boolean(value[labelField])) {
+					text = "when over "+value["value"];
+				}
+				else {
+					text = "when under "+value["value"];
+				}
+			}
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/renderers/CompanyNameRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/renderers/CompanyNameRenderer.as b/examples/flexjs/MobileStocks/src/main/flex/renderers/CompanyNameRenderer.as
new file mode 100644
index 0000000..e899b57
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/renderers/CompanyNameRenderer.as
@@ -0,0 +1,37 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package renderers
+{
+	import org.apache.flex.html.supportClasses.StringItemRenderer;
+	
+	public class CompanyNameRenderer extends StringItemRenderer
+	{
+		public function CompanyNameRenderer()
+		{
+			super();
+		}
+		
+		override public function set data(value:Object):void
+		{
+			super.data = value;
+			
+			text = data.name + " (" + data.symbol + ")";
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/renderers/SharesTotalRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/renderers/SharesTotalRenderer.as b/examples/flexjs/MobileStocks/src/main/flex/renderers/SharesTotalRenderer.as
new file mode 100644
index 0000000..f6ac94b
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/renderers/SharesTotalRenderer.as
@@ -0,0 +1,37 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package renderers
+{
+	import org.apache.flex.html.supportClasses.StringItemRenderer;
+	
+	public class SharesTotalRenderer extends StringItemRenderer
+	{
+		public function SharesTotalRenderer()
+		{
+			super();
+		}
+		
+		override public function set data(value:Object):void
+		{
+			super.data = value;
+			
+			text = "$"+String( int(data.total*100)/100.0 );
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/renderers/StockRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/renderers/StockRenderer.as b/examples/flexjs/MobileStocks/src/main/flex/renderers/StockRenderer.as
new file mode 100755
index 0000000..afba26f
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/renderers/StockRenderer.as
@@ -0,0 +1,47 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package renderers
+{
+	import org.apache.flex.html.supportClasses.StringItemRenderer;
+	
+	public class StockRenderer extends StringItemRenderer
+	{
+		public function StockRenderer()
+		{
+			super();
+		}
+		
+		override public function set data(value:Object):void
+		{
+			super.data = value;
+			
+			var n1:Number = Number(value[labelField]);
+			if (!isNaN(n1)) {
+				n1 = Math.round(n1*100)/100.0;
+				
+				// something to keep in mind when using FlexJS for cross-platform
+				// use: make sure that public properties are used versus protected
+				// functions or properties. in most cases, internal vars and functions
+				// will be platform-specific whereas public properties and function
+				// should be cross-platform. 
+				text = String(n1);
+			}
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/views/LaunchView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/views/LaunchView.mxml b/examples/flexjs/MobileStocks/src/main/flex/views/LaunchView.mxml
new file mode 100644
index 0000000..3d38bda
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/views/LaunchView.mxml
@@ -0,0 +1,204 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
+			title="Assets"
+			xmlns:js="library://ns.apache.org/flexjs/basic"
+			xmlns:models="models.*"
+			xmlns:local="*"
+		    xmlns:views="views.*"
+			className="LaunchView">
+			
+	<fx:Script>
+		<![CDATA[
+			import controller.LaunchViewController;
+			import models.ProductsModel;
+			import models.Stock;
+			
+			import org.apache.flex.binding.SimpleBinding;
+			import org.apache.flex.core.IBeadController;
+			import org.apache.flex.core.IBeadModel;
+			import org.apache.flex.events.Event;
+			import org.apache.flex.events.ValueChangeEvent;
+			import org.apache.flex.mobile.IViewManager;
+			import org.apache.flex.mobile.StackedViewManager;
+			import org.apache.flex.html.beads.DataProviderChangeNotifier;
+						
+			public function set dataModel(value:IBeadModel):void
+			{
+				var cm:IBeadController = controller;
+				(cm as LaunchViewController).model = value;
+				
+				var newEvent:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, null, value);
+				newEvent.propertyName = "dataModel";
+				dispatchEvent(newEvent);
+			}
+			
+			public function get dataModel():IBeadModel
+			{
+				var cm:IBeadController = controller;
+				return (cm as LaunchViewController).model;
+			}
+			
+			public function addSymbol():void
+			{
+				dispatchEvent(new org.apache.flex.events.Event("addSymbol"));
+			}
+			
+			public function removeSymbol():void
+			{
+				dispatchEvent(new org.apache.flex.events.Event("removeSymbol"));
+			}
+			
+			public function gridSelected():void
+			{
+				dispatchEvent(new org.apache.flex.events.Event("symbolSelected"));
+			}
+		]]>
+	</fx:Script>
+	
+	<fx:Style>
+		@namespace js "library://ns.apache.org/flexjs/basic";
+		.AllCharts {
+			border-width: 0px;
+			padding-left: 2px;
+			padding-top: 10px;
+			padding-bottom: 2px;
+			padding-right: 10px;
+		}
+		
+		.DataGridListArea .StringItemRenderer {
+			font-size: 10px;
+		}
+
+		.HorizontalAxis .TickLabel {
+			color: #333333;
+		}
+
+		.VerticalAxis .TickLabel {
+			color: #333333;
+		}
+		
+		/*.Outer1 {
+			background-color: #FFFFFF;
+			vertical-align: middle;
+		}*/
+		
+		.InputChild {
+			vertical-align: middle;
+		}
+		
+		/*.Outer2 {
+			background-color: #FFFFFF;
+		}*/
+		
+		.LaunchGrid {
+			background-color: #FFFFFF;
+		}
+		
+		.DataGridListArea {
+			background-color: #FFFFFF;
+		}
+	</fx:Style>
+	
+	<fx:Metadata>
+		[Event("next")]
+	</fx:Metadata>
+	
+	<js:beads>
+		<js:VerticalLayout />
+	</js:beads>
+	
+	<!-- 
+<js:model>
+		<models:AssetsModel />
+	</js:model>
+ -->
+
+	<js:Container height="40" width="100%">
+	  <js:beads>
+	  	<js:OneFlexibleChildHorizontalLayout flexibleChild="spacer1" maxWidth="400" maxHeight="20" />
+	  </js:beads>
+		<js:Label text="Symbol:" className="InputChild" />
+		<js:TextInput id="symbolInput" width="50" className="InputChild" />
+		<js:Spacer width="10" />
+		<js:Label text="Shares:" className="InputChild" />
+		<js:TextInput id="sharesInput" width="50" className="InputChild" />
+		<js:Spacer width="10" />
+		<js:TextButton id="addButton" text="Add" width="80" click="addSymbol()" className="InputChild" />
+		<js:Spacer id="spacer1" width="1" />
+		<js:TextButton id="removeButton" text="Remove" width="80" click="removeSymbol()" className="InputChild" />
+	</js:Container>
+	
+	<js:Container height="45%" width="100%">
+		<js:DataGrid id="assetGrid" height="100%" width="100%" rowHeight="25" change="gridSelected()" className="LaunchGrid">
+			<js:beads>
+				<js:DataGridPercentageLayout />
+				<js:SimpleBinding
+					eventName="update"
+					sourceID="dataModel"
+					sourcePropertyName="assetList"
+					destinationPropertyName="dataProvider" />
+				<js:DataProviderChangeNotifier sourceID="dataModel" propertyName="assetList" 
+											   destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
+			</js:beads>
+			<js:columns>
+				<js:DataGridColumn columnWidth="36" label="Company (SYMB)" dataField="name" itemRenderer="renderers.CompanyNameRenderer" />
+				<js:DataGridColumn columnWidth="20" label="Shares" dataField="shares" />
+				<js:DataGridColumn columnWidth="20" label="Last" dataField="last" />
+				<js:DataGridColumn columnWidth="24" label="Total $" dataField="shares" itemRenderer="renderers.SharesTotalRenderer" />
+			</js:columns>
+		</js:DataGrid>
+	</js:Container>
+	
+	<js:Spacer height="3%" />
+		
+	<js:BarChart id="barChart" width="100%" height="40%" className="AllCharts">
+		<js:model>
+			<js:ChartArrayListSelectionModel />
+		</js:model>
+		<js:beads>
+			<js:DataItemRendererFactoryForSeriesArrayListData />
+			<js:BarChartLayoutForArrayList gap="2" />
+			<js:SimpleBinding
+				eventName="update"
+				sourceID="dataModel"
+				sourcePropertyName="assetList"
+				destinationPropertyName="dataProvider" />
+			<js:DataProviderChangeNotifier sourceID="dataModel" propertyName="assetList" 
+										   destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
+			<js:HorizontalLinearAxisForArrayListBead valueField="total" />
+			<js:VerticalCategoryAxisForArrayListBead categoryField="symbol" />
+		</js:beads>
+		<js:series>
+			<js:BarSeries xField="total"> 
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#FF964D" alpha="1.0" />
+							</js:fill>
+						</js:BoxItemRenderer>                      
+					</fx:Component>
+				</js:itemRenderer>
+			</js:BarSeries>
+		</js:series>
+	</js:BarChart>
+
+</js:TitleView>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/views/StockView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/views/StockView.mxml b/examples/flexjs/MobileStocks/src/main/flex/views/StockView.mxml
new file mode 100755
index 0000000..ca86ba7
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/views/StockView.mxml
@@ -0,0 +1,102 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
+					   xmlns:js="library://ns.apache.org/flexjs/basic"
+					   xmlns:apache="org.apache.flex.html.beads.*"
+					   xmlns:local="*"
+					   className="StockView">
+	
+	<fx:Script>
+		<![CDATA[			
+			import models.Stock;
+			
+			import org.apache.flex.events.Event;
+			import org.apache.flex.mobile.StackedViewManager;
+			
+			private var _stock:Stock;
+			
+			[Bindable("stockChanged")]
+			public function get stock():Stock
+			{
+				return _stock;
+			}
+			public function set stock(value:Stock):void
+			{
+				_stock = value;
+				dispatchEvent(new org.apache.flex.events.Event("stockChanged"));
+			}
+			
+			private function onBackClick() : void
+			{
+				(viewManager as StackedViewManager).pop();
+			}
+			
+			override public function addedToParent():void
+			{
+				super.addedToParent();
+				
+				stockSymbol.text = stock.symbol;
+				stockName.text = stock.name;
+				lastPrice.text = String(stock.last);
+				openPrice.text = String(stock.open);
+				lowPrice.text = String(stock.low);
+				highPrice.text = String(stock.high);
+				changeAmount.text = String(stock.change);
+			}
+			
+			private function removeFromList():void
+			{
+				dispatchEvent(new org.apache.flex.events.Event("removeFromList"));
+			}
+		]]>
+	</fx:Script>
+	
+	<js:Container>
+		<js:beads>
+			<js:VerticalLayout />
+		</js:beads>
+		<js:style>
+			<js:SimpleCSSStyles top="10px" left="10px" />
+		</js:style>
+		
+		<js:Label id="stockSymbol" text="{stock.symbol}" className="ViewTitle" />
+		<js:Label id="stockName" text="{stock.name}" className="StockName" />
+		
+		<js:Spacer height="10" />
+		
+		<js:Container className="StockDetailArea">
+			<js:beads>
+				<js:VerticalColumnLayout numColumns="2" />
+			</js:beads>
+			
+			<js:Label text="Last Price:" className="StockLabel" /> <js:Label id="lastPrice" className="StockValue" />
+			<js:Label text="Open Price:" className="StockLabel" /> <js:Label id="openPrice" className="StockValue" />
+			<js:Label text="Low  Price:" className="StockLabel" /> <js:Label id="lowPrice" className="StockValue" />
+			<js:Label text="High Price:" className="StockLabel" /> <js:Label id="highPrice" className="StockValue" />
+			<js:Label text="Change:    " className="StockLabel" /> <js:Label id="changeAmount" className="StockValue" />
+		</js:Container>
+		
+		<js:Spacer height="10" />
+		
+		<js:Container className="StockDetailArea">
+			<js:TextButton text="Remove From List" width="200" className="StockRemoveButton" click="removeFromList()" />
+		</js:Container>
+	</js:Container>
+</js:TitleView>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/flex/views/WatchListView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/flex/views/WatchListView.mxml b/examples/flexjs/MobileStocks/src/main/flex/views/WatchListView.mxml
new file mode 100755
index 0000000..1c317fe
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/flex/views/WatchListView.mxml
@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
+		 title="Watch List"
+		 xmlns:js="library://ns.apache.org/flexjs/basic"
+		 xmlns:controller="controller.*"
+		 xmlns:local="*"
+		 className="WatchListView"
+		 xmlns:renderers="renderers.*">
+	
+	<fx:Script>
+		<![CDATA[						
+			import controller.WatchListController;
+			
+			import models.ProductsModel;
+			import models.Stock;
+			
+			import org.apache.flex.binding.SimpleBinding;
+			import org.apache.flex.core.IBeadController;
+			import org.apache.flex.core.IBeadModel;
+			import org.apache.flex.events.Event;
+			import org.apache.flex.mobile.IViewManager;
+			import org.apache.flex.mobile.StackedViewManager;
+			
+			public function set dataModel(value:IBeadModel):void
+			{
+				var cm:IBeadController = controller;
+				(cm as WatchListController).model = value;
+				
+				var newEvent:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, null, value);
+				newEvent.propertyName = "dataModel";
+				dispatchEvent(newEvent);
+			}
+			public function get dataModel():IBeadModel
+			{
+				var cm:IBeadController = controller;
+				return (cm as WatchListController).model;
+			}
+			
+			private function onSelectStock():void
+			{
+				var stockView:StockView = new StockView();
+				var svm:IViewManager = viewManager;
+				(viewManager as StackedViewManager).push(stockView);
+			}
+			
+			private function addSymbol():void
+			{
+				dispatchEvent(new org.apache.flex.events.Event("addSymbol"));
+			}
+			
+			public var selectedStockIndex:Number;
+			
+			private function selectRow():void
+			{
+				selectedStockIndex = dataGrid.selectedIndex;
+				dispatchEvent(new org.apache.flex.events.Event("stockSelected"));
+			}
+			
+			public function showStockDetails(stock:Stock):StockView
+			{
+				var stockView:StockView = new StockView();
+				stockView.stock = stock;
+				var vm:* = viewManager;
+				(viewManager as StackedViewManager).push(stockView);
+				
+				var cm:IBeadController = controller;
+				
+				return stockView;
+			}
+			
+			public function popView():void
+			{
+				(viewManager as StackedViewManager).pop();
+			}
+		]]>
+	</fx:Script>
+	
+	<js:beads>
+		<js:VerticalLayout />
+	</js:beads>
+	
+	<js:HContainer className="WatchListInputArea" width="100%" height="10%">
+		<js:Label text="Symbol:" />
+		<js:TextInput id="symbolName" />
+		<js:TextButton text="Add" click="addSymbol()" />
+	</js:HContainer>
+	
+	<js:Spacer height="10" />
+		
+	<js:DataGrid id="dataGrid" width="100%" height="85%" change="selectRow()" className="WatchListDataGrid">
+		<js:beads>
+			<js:DataGridPercentageLayout />
+			<js:SimpleBinding
+				eventName="update"
+				sourceID="dataModel"
+				sourcePropertyName="watchList"
+				destinationPropertyName="dataProvider" />
+			<js:DataProviderChangeNotifier sourceID="dataModel" propertyName="watchList" 
+										   destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
+		</js:beads>
+		<js:columns>
+			<js:DataGridColumn label="Company (SYMB)" dataField="symbol" columnWidth="45"
+			                   itemRenderer="renderers.CompanyNameRenderer" />
+			<js:DataGridColumn label="Open" dataField="open" columnWidth="11"
+			                   itemRenderer="renderers.StockRenderer" />
+			<js:DataGridColumn label="Last" dataField="last"columnWidth="11"
+			                   itemRenderer="renderers.StockRenderer" />
+			<js:DataGridColumn label="Change" dataField="change"columnWidth="11"
+			                   itemRenderer="renderers.StockRenderer" />
+			<js:DataGridColumn label="High" dataField="high"columnWidth="11"
+			                   itemRenderer="renderers.StockRenderer" />
+			<js:DataGridColumn label="Low" dataField="low" columnWidth="11"
+			                   itemRenderer="renderers.StockRenderer" />
+		</js:columns>
+	</js:DataGrid>
+	
+</js:TitleView>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/main/resources/config.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/main/resources/config.xml b/examples/flexjs/MobileStocks/src/main/resources/config.xml
new file mode 100644
index 0000000..00b9f64
--- /dev/null
+++ b/examples/flexjs/MobileStocks/src/main/resources/config.xml
@@ -0,0 +1,44 @@
+<?xml version='1.0' encoding='utf-8'?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You 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.
+
+-->
+<widget id="${groupId}.${artifactId}" version="${version}" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+    <name>${artifactId}</name>
+    <description>
+        ${description}
+    </description>
+    <author email="dev@flex.apache.org" href="http://flex.apache.org">
+        Apache Flex Team
+    </author>
+    <content src="index.html" />
+    <plugin name="cordova-plugin-whitelist" version="1" />
+    <access origin="*" />
+    <allow-intent href="http://*/*" />
+    <allow-intent href="https://*/*" />
+    <allow-intent href="tel:*" />
+    <allow-intent href="sms:*" />
+    <allow-intent href="mailto:*" />
+    <allow-intent href="geo:*" />
+    <platform name="android">
+        <allow-intent href="market:*" />
+    </platform>
+    <platform name="ios">
+        <allow-intent href="itms:*" />
+        <allow-intent href="itms-apps:*" />
+    </platform>
+</widget>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/models/ProductsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/models/ProductsModel.as b/examples/flexjs/MobileStocks/src/models/ProductsModel.as
deleted file mode 100755
index ab7689e..0000000
--- a/examples/flexjs/MobileStocks/src/models/ProductsModel.as
+++ /dev/null
@@ -1,271 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.core.IBeadModel;
-	import org.apache.flex.core.IStrand;
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	import org.apache.flex.net.HTTPService;
-	import org.apache.flex.collections.parsers.JSONInputParser;
-	import org.apache.flex.collections.LazyCollection;
-	import org.apache.flex.collections.ArrayList;
-
-	import org.apache.flex.storage.PermanentStorage;
-	import org.apache.flex.storage.events.FileEvent;
-	import org.apache.flex.storage.events.FileErrorEvent;
-
-	public class ProductsModel extends EventDispatcher implements IBeadModel
-	{
-		public function ProductsModel()
-		{
-			super();
-
-			service = new HTTPService();
-			collection = new LazyCollection;
-			collection.inputParser = new JSONInputParser();
-			collection.itemConverter = new StockDataJSONItemConverter();
-
-			_watchList = new ArrayList();
-			_assetList = new ArrayList();
-		}
-
-		public function loadDataFromStorage():void
-		{
-			var storage:PermanentStorage = new PermanentStorage();
-			var useFile:String = "com.apache.flex.MobileStocks2";
-
-			storage.addEventListener("READ", handleRead);
-			storage.addEventListener("ERROR", handleReadError);
-			storage.readTextFromDataFile(useFile);
-		}
-
-		private function handleRead(event:FileEvent):void
-		{
-		    trace(event.data);
-		    var result:XML = new XML(event.data);
-		    trace("XML parsing:");
-		    trace(result);
-
-		    var assetItems:XMLList = result..asset;
-		    trace("Got "+assetItems.length()+" assets");
-		    for each (var asset:XML in assetItems) {
-		        trace("symbol = " + asset.@symbol + ", shares = " + asset.@shares);
-		        addStockToAssetList(asset.@symbol, Number(asset.@shares));
-		    }
-
-		    var watchItems:XMLList = result..watch;
-		    trace("Got "+watchItems.length()+" watches");
-		    for each (var watch:XML in watchItems) {
-		        trace("symbol = "+watch.@symbol);
-		        addStockToWatchList(watch.@symbol);
-		    }
-		}
-
-		private function handleReadError(event:FileErrorEvent):void
-		{
-			trace("Read error: "+event.errorMessage);
-		}
-
-		public function saveDataToStorage():void
-		{
-			var storage:PermanentStorage = new PermanentStorage();
-			var useFile:String = "com.apache.flex.MobileStocks2";
-			var assets:String = "";
-
-			for (var i:int=0; i < _assetList.length; i++) {
-				var stock:Stock = _assetList.getItemAt(i) as Stock;
-				assets = assets + '<asset symbol="'+stock.symbol+'" shares="'+stock.shares+'" />';
-			}
-
-			var watches:String = "";
-			for (i=0; i < _watchList.length; i++) {
-			    stock = _watchList.getItemAt(i) as Stock;
-			    watches = watches + '<watch symbol="'+stock.symbol+'" />';
-			}
-
-			var output:String = "<data><assets>"+assets+"</assets><watches>"+watches+"</watches></data>";
-
-			trace("Writing: "+output);
-
-			storage.addEventListener("WRITE", handleSave);
-			storage.addEventListener("ERROR", handleSaveError);
-			storage.writeTextToDataFile(useFile, output);
-		}
-
-		private function handleSave(event:FileEvent):void
-		{
-			trace("Save completed");
-		}
-
-		private function handleSaveError(event:FileErrorEvent):void
-		{
-			trace("Write error: "+event.errorMessage);
-		}
-
-		private var service:HTTPService;
-		private var collection:LazyCollection;
-		private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
-		private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
-
-		private var _strand:IStrand;
-		public function set strand(value:IStrand):void
-		{
-			_strand = value;
-
-			service.addBead(collection);
-			_strand.addBead(service);
-		}
-
-		private var _tabList:Array = ["Assets", "Watch", "Alerts"];
-		public function get tabList():Array
-		{
-			return _tabList;
-		}
-
-		private var _labelFields:Array = [ "id", "title", "detail" ];
-		public function get labelFields():Array
-		{
-			return _labelFields;
-		}
-
-		private var _watchList:ArrayList;
-
-		public function get watchList():ArrayList
-		{
-			return _watchList;
-		}
-
-		private var _assetList:ArrayList;
-
-		public function get assetList():ArrayList
-		{
-			return _assetList;
-		}
-
-		public function addStockToAssetList(symbol:String, shares:Number):Stock
-		{
-			for (var i:int=0; i < _assetList.length; i++)
-			{
-				var stock:Stock = _assetList.getItemAt(i) as Stock;
-				if (stock.symbol == symbol) {
-					stock.shares = shares;
-					_assetList.itemUpdatedAt(i);
-					return stock;
-				}
-			}
-
-			stock = new Stock(symbol);
-			stock.shares = shares;
-
-			_assetList.addItem(stock);
-			updateStockData(stock);
-
-			return stock;
-		}
-
-		public function addStockToWatchList(symbol:String):Stock
-		{
-			for (var i:int=0; i < _watchList.length; i++)
-			{
-				var stock:Stock = _watchList.getItemAt(i) as Stock;
-				if (stock.symbol == symbol) {
-					_watchList.itemUpdatedAt(i);
-					return stock;
-				}
-			}
-
-			stock = new Stock(symbol);
-			_watchList.addItem(stock);
-			updateStockData(stock);
-			return stock;
-		}
-
-		public function removeStockFromWatchList(stock:Stock):void
-		{
-			for (var i:int=0; i < _watchList.length; i++)
-			{
-				var s:Stock = _watchList.getItemAt(i) as Stock;
-				if (stock.symbol == s.symbol) {
-					_watchList.removeItemAt(i);
-					break;
-				}
-			}
-
-			dispatchEvent(new Event("update"));
-		}
-
-		public function removeStockFromAssetListAtIndex(index:int):void
-		{
-			if (index >= 0 && index < _assetList.length) {
-				_assetList.removeItemAt(index);
-				dispatchEvent(new Event("update"));
-			}
-		}
-
-		// UPDATE STOCK INFORMATION FROM REMOTE SYSTEM
-
-		public function updateStockData(value:Stock):void
-		{
-			var sym:String = value.symbol;
-			service.url = queryBegin + sym + queryEnd;
-			service.send();
-			service.addEventListener("complete", completeHandler);
-		}
-
-		private function completeHandler(event:Event):void
-		{
-			var responseData:Object = collection.getItemAt(0);
-			if ((responseData is String) && (responseData == "No Data")) return;
-			var sym:String = responseData["Symbol"];
-
-			var queueNext:Stock = null;
-
-			for (var i:int=0; i < _watchList.length; i++)
-			{
-				var stock:Stock = _watchList.getItemAt(i) as Stock;
-				if (stock.symbol == sym) {
-					stock.updateFromData(responseData);
-					_watchList.itemUpdatedAt(i);
-				}
-				else if (stock.last == 0) {
-				    queueNext = stock;
-				}
-			}
-
-			for (i=0; i < _assetList.length; i++)
-			{
-				stock = _assetList.getItemAt(i) as Stock;
-				if (stock.symbol == sym) {
-					stock.updateFromData(responseData);
-					_assetList.itemUpdatedAt(i);
-				}
-				else if (stock.last == 0) {
-					queueNext = stock;
-				}
-			}
-
-			if (queueNext != null) {
-				trace("--- queue: "+queueNext.symbol);
-				updateStockData(queueNext);
-			}
-
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/models/Stock.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/models/Stock.as b/examples/flexjs/MobileStocks/src/models/Stock.as
deleted file mode 100755
index 55f74cc..0000000
--- a/examples/flexjs/MobileStocks/src/models/Stock.as
+++ /dev/null
@@ -1,168 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	
-	public class Stock extends EventDispatcher
-	{	    		
-		public var history:Array;
-		
-		public function Stock(symbol:String=null, last:Number=0)
-		{
-			this.symbol = symbol;
-			this.last = last;
-			this.low = last;
-			this.high = last;
-			this.open = last;
-			this.change = 0;
-			this.name = "";
-			this.shares = 0;
-		}
-		
-		public function updateFromData(obj:Object):void
-		{
-			name = obj["Name"];
-			low = obj["DaysLow"];
-			high = obj["DaysHigh"];
-			open = obj["Open"];
-			change = obj["Change"];
-			symbol = obj["Symbol"];
-			last = obj["LastTradePriceOnly"];
-			// shares do not change this way
-		}
-		
-		private var _symbol:String;
-		private var _name:String;
-		private var _low:Number;
-		private var _high:Number;
-		private var _open:Number;
-		private var _last:Number;
-		private var _change:Number;
-		private var _date:Date;
-		
-		private var _shares:Number;
-		
-		[Bindable("symbolChanged")]
-		public function get symbol():String
-		{
-			return _symbol;
-		}
-		public function set symbol(value:String):void
-		{
-			_symbol = value;
-			dispatchEvent(new Event("symbolChanged"));
-		}
-		
-		[Bindable("nameChanged")]
-		public function get name():String
-		{
-			return _name;
-		}
-		public function set name(value:String):void
-		{
-			_name = value;
-			dispatchEvent(new Event("nameChanged"));
-		}
-		
-		[Bindable("lowChanged")]
-		public function get low():Number
-		{
-			return _low;
-		}
-		public function set low(value:Number):void
-		{
-			_low = value;
-			dispatchEvent(new Event("lowChanged"));
-		}
-		
-		[Bindable("highChanged")]
-		public function get high():Number
-		{
-			return _high;
-		}
-		public function set high(value:Number):void
-		{
-			_high = value;
-			dispatchEvent(new Event("highChanged"));
-		}
-		
-		[Bindable("openChanged")]
-		public function get open():Number
-		{
-			return _open;
-		}
-		public function set open(value:Number):void
-		{
-			_open = value;
-			dispatchEvent(new Event("openChanged"));
-		}
-		
-		[Bindable("lastChanged")]
-		public function get last():Number
-		{
-			return _last;
-		}
-		public function set last(value:Number):void
-		{
-			_last = value;
-			dispatchEvent(new Event("lastChanged"));
-		}
-		
-		[Bindable("changeChanged")]
-		public function get change():Number
-		{
-			return _change;
-		}
-		public function set change(value:Number):void
-		{
-			_change = value;
-			dispatchEvent(new Event("changeChanged"));
-		}
-		
-		[Bindable("dateChanged")]
-		public function get date():Date
-		{
-			return _date;
-		}
-		public function set date(value:Date):void
-		{
-			_date = value;
-			dispatchEvent(new Event("dateChanged"));
-		}
-		
-		[Bindable("sharedChanged")]
-		public function get shares():Number
-		{
-			return _shares;
-		}
-		public function set shares(value:Number):void
-		{
-			_shares = value;
-			dispatchEvent(new Event("sharesChanged"));
-		}
-		
-		public function get total():Number
-		{
-			return _shares * _last;
-		}
-	}
-	
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/renderers/AlertRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/renderers/AlertRenderer.as b/examples/flexjs/MobileStocks/src/renderers/AlertRenderer.as
deleted file mode 100644
index e683020..0000000
--- a/examples/flexjs/MobileStocks/src/renderers/AlertRenderer.as
+++ /dev/null
@@ -1,44 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package renderers
-{
-	import org.apache.flex.html.supportClasses.StringItemRenderer;
-	
-	public class AlertRenderer extends StringItemRenderer
-	{
-		public function AlertRenderer()
-		{
-			super();
-		}
-		
-		override public function set data(value:Object):void
-		{
-			super.data = value;
-			
-			if (labelField == "greaterThan") {
-				if (Boolean(value[labelField])) {
-					text = "when over "+value["value"];
-				}
-				else {
-					text = "when under "+value["value"];
-				}
-			}
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/renderers/CompanyNameRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/renderers/CompanyNameRenderer.as b/examples/flexjs/MobileStocks/src/renderers/CompanyNameRenderer.as
deleted file mode 100644
index e899b57..0000000
--- a/examples/flexjs/MobileStocks/src/renderers/CompanyNameRenderer.as
+++ /dev/null
@@ -1,37 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package renderers
-{
-	import org.apache.flex.html.supportClasses.StringItemRenderer;
-	
-	public class CompanyNameRenderer extends StringItemRenderer
-	{
-		public function CompanyNameRenderer()
-		{
-			super();
-		}
-		
-		override public function set data(value:Object):void
-		{
-			super.data = value;
-			
-			text = data.name + " (" + data.symbol + ")";
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/renderers/SharesTotalRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/renderers/SharesTotalRenderer.as b/examples/flexjs/MobileStocks/src/renderers/SharesTotalRenderer.as
deleted file mode 100644
index f6ac94b..0000000
--- a/examples/flexjs/MobileStocks/src/renderers/SharesTotalRenderer.as
+++ /dev/null
@@ -1,37 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package renderers
-{
-	import org.apache.flex.html.supportClasses.StringItemRenderer;
-	
-	public class SharesTotalRenderer extends StringItemRenderer
-	{
-		public function SharesTotalRenderer()
-		{
-			super();
-		}
-		
-		override public function set data(value:Object):void
-		{
-			super.data = value;
-			
-			text = "$"+String( int(data.total*100)/100.0 );
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/renderers/StockRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/renderers/StockRenderer.as b/examples/flexjs/MobileStocks/src/renderers/StockRenderer.as
deleted file mode 100755
index afba26f..0000000
--- a/examples/flexjs/MobileStocks/src/renderers/StockRenderer.as
+++ /dev/null
@@ -1,47 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package renderers
-{
-	import org.apache.flex.html.supportClasses.StringItemRenderer;
-	
-	public class StockRenderer extends StringItemRenderer
-	{
-		public function StockRenderer()
-		{
-			super();
-		}
-		
-		override public function set data(value:Object):void
-		{
-			super.data = value;
-			
-			var n1:Number = Number(value[labelField]);
-			if (!isNaN(n1)) {
-				n1 = Math.round(n1*100)/100.0;
-				
-				// something to keep in mind when using FlexJS for cross-platform
-				// use: make sure that public properties are used versus protected
-				// functions or properties. in most cases, internal vars and functions
-				// will be platform-specific whereas public properties and function
-				// should be cross-platform. 
-				text = String(n1);
-			}
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/views/LaunchView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/views/LaunchView.mxml b/examples/flexjs/MobileStocks/src/views/LaunchView.mxml
deleted file mode 100644
index 3d38bda..0000000
--- a/examples/flexjs/MobileStocks/src/views/LaunchView.mxml
+++ /dev/null
@@ -1,204 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
-			title="Assets"
-			xmlns:js="library://ns.apache.org/flexjs/basic"
-			xmlns:models="models.*"
-			xmlns:local="*"
-		    xmlns:views="views.*"
-			className="LaunchView">
-			
-	<fx:Script>
-		<![CDATA[
-			import controller.LaunchViewController;
-			import models.ProductsModel;
-			import models.Stock;
-			
-			import org.apache.flex.binding.SimpleBinding;
-			import org.apache.flex.core.IBeadController;
-			import org.apache.flex.core.IBeadModel;
-			import org.apache.flex.events.Event;
-			import org.apache.flex.events.ValueChangeEvent;
-			import org.apache.flex.mobile.IViewManager;
-			import org.apache.flex.mobile.StackedViewManager;
-			import org.apache.flex.html.beads.DataProviderChangeNotifier;
-						
-			public function set dataModel(value:IBeadModel):void
-			{
-				var cm:IBeadController = controller;
-				(cm as LaunchViewController).model = value;
-				
-				var newEvent:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, null, value);
-				newEvent.propertyName = "dataModel";
-				dispatchEvent(newEvent);
-			}
-			
-			public function get dataModel():IBeadModel
-			{
-				var cm:IBeadController = controller;
-				return (cm as LaunchViewController).model;
-			}
-			
-			public function addSymbol():void
-			{
-				dispatchEvent(new org.apache.flex.events.Event("addSymbol"));
-			}
-			
-			public function removeSymbol():void
-			{
-				dispatchEvent(new org.apache.flex.events.Event("removeSymbol"));
-			}
-			
-			public function gridSelected():void
-			{
-				dispatchEvent(new org.apache.flex.events.Event("symbolSelected"));
-			}
-		]]>
-	</fx:Script>
-	
-	<fx:Style>
-		@namespace js "library://ns.apache.org/flexjs/basic";
-		.AllCharts {
-			border-width: 0px;
-			padding-left: 2px;
-			padding-top: 10px;
-			padding-bottom: 2px;
-			padding-right: 10px;
-		}
-		
-		.DataGridListArea .StringItemRenderer {
-			font-size: 10px;
-		}
-
-		.HorizontalAxis .TickLabel {
-			color: #333333;
-		}
-
-		.VerticalAxis .TickLabel {
-			color: #333333;
-		}
-		
-		/*.Outer1 {
-			background-color: #FFFFFF;
-			vertical-align: middle;
-		}*/
-		
-		.InputChild {
-			vertical-align: middle;
-		}
-		
-		/*.Outer2 {
-			background-color: #FFFFFF;
-		}*/
-		
-		.LaunchGrid {
-			background-color: #FFFFFF;
-		}
-		
-		.DataGridListArea {
-			background-color: #FFFFFF;
-		}
-	</fx:Style>
-	
-	<fx:Metadata>
-		[Event("next")]
-	</fx:Metadata>
-	
-	<js:beads>
-		<js:VerticalLayout />
-	</js:beads>
-	
-	<!-- 
-<js:model>
-		<models:AssetsModel />
-	</js:model>
- -->
-
-	<js:Container height="40" width="100%">
-	  <js:beads>
-	  	<js:OneFlexibleChildHorizontalLayout flexibleChild="spacer1" maxWidth="400" maxHeight="20" />
-	  </js:beads>
-		<js:Label text="Symbol:" className="InputChild" />
-		<js:TextInput id="symbolInput" width="50" className="InputChild" />
-		<js:Spacer width="10" />
-		<js:Label text="Shares:" className="InputChild" />
-		<js:TextInput id="sharesInput" width="50" className="InputChild" />
-		<js:Spacer width="10" />
-		<js:TextButton id="addButton" text="Add" width="80" click="addSymbol()" className="InputChild" />
-		<js:Spacer id="spacer1" width="1" />
-		<js:TextButton id="removeButton" text="Remove" width="80" click="removeSymbol()" className="InputChild" />
-	</js:Container>
-	
-	<js:Container height="45%" width="100%">
-		<js:DataGrid id="assetGrid" height="100%" width="100%" rowHeight="25" change="gridSelected()" className="LaunchGrid">
-			<js:beads>
-				<js:DataGridPercentageLayout />
-				<js:SimpleBinding
-					eventName="update"
-					sourceID="dataModel"
-					sourcePropertyName="assetList"
-					destinationPropertyName="dataProvider" />
-				<js:DataProviderChangeNotifier sourceID="dataModel" propertyName="assetList" 
-											   destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
-			</js:beads>
-			<js:columns>
-				<js:DataGridColumn columnWidth="36" label="Company (SYMB)" dataField="name" itemRenderer="renderers.CompanyNameRenderer" />
-				<js:DataGridColumn columnWidth="20" label="Shares" dataField="shares" />
-				<js:DataGridColumn columnWidth="20" label="Last" dataField="last" />
-				<js:DataGridColumn columnWidth="24" label="Total $" dataField="shares" itemRenderer="renderers.SharesTotalRenderer" />
-			</js:columns>
-		</js:DataGrid>
-	</js:Container>
-	
-	<js:Spacer height="3%" />
-		
-	<js:BarChart id="barChart" width="100%" height="40%" className="AllCharts">
-		<js:model>
-			<js:ChartArrayListSelectionModel />
-		</js:model>
-		<js:beads>
-			<js:DataItemRendererFactoryForSeriesArrayListData />
-			<js:BarChartLayoutForArrayList gap="2" />
-			<js:SimpleBinding
-				eventName="update"
-				sourceID="dataModel"
-				sourcePropertyName="assetList"
-				destinationPropertyName="dataProvider" />
-			<js:DataProviderChangeNotifier sourceID="dataModel" propertyName="assetList" 
-										   destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
-			<js:HorizontalLinearAxisForArrayListBead valueField="total" />
-			<js:VerticalCategoryAxisForArrayListBead categoryField="symbol" />
-		</js:beads>
-		<js:series>
-			<js:BarSeries xField="total"> 
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#FF964D" alpha="1.0" />
-							</js:fill>
-						</js:BoxItemRenderer>                      
-					</fx:Component>
-				</js:itemRenderer>
-			</js:BarSeries>
-		</js:series>
-	</js:BarChart>
-
-</js:TitleView>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/views/StockView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/views/StockView.mxml b/examples/flexjs/MobileStocks/src/views/StockView.mxml
deleted file mode 100755
index ca86ba7..0000000
--- a/examples/flexjs/MobileStocks/src/views/StockView.mxml
+++ /dev/null
@@ -1,102 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
-					   xmlns:js="library://ns.apache.org/flexjs/basic"
-					   xmlns:apache="org.apache.flex.html.beads.*"
-					   xmlns:local="*"
-					   className="StockView">
-	
-	<fx:Script>
-		<![CDATA[			
-			import models.Stock;
-			
-			import org.apache.flex.events.Event;
-			import org.apache.flex.mobile.StackedViewManager;
-			
-			private var _stock:Stock;
-			
-			[Bindable("stockChanged")]
-			public function get stock():Stock
-			{
-				return _stock;
-			}
-			public function set stock(value:Stock):void
-			{
-				_stock = value;
-				dispatchEvent(new org.apache.flex.events.Event("stockChanged"));
-			}
-			
-			private function onBackClick() : void
-			{
-				(viewManager as StackedViewManager).pop();
-			}
-			
-			override public function addedToParent():void
-			{
-				super.addedToParent();
-				
-				stockSymbol.text = stock.symbol;
-				stockName.text = stock.name;
-				lastPrice.text = String(stock.last);
-				openPrice.text = String(stock.open);
-				lowPrice.text = String(stock.low);
-				highPrice.text = String(stock.high);
-				changeAmount.text = String(stock.change);
-			}
-			
-			private function removeFromList():void
-			{
-				dispatchEvent(new org.apache.flex.events.Event("removeFromList"));
-			}
-		]]>
-	</fx:Script>
-	
-	<js:Container>
-		<js:beads>
-			<js:VerticalLayout />
-		</js:beads>
-		<js:style>
-			<js:SimpleCSSStyles top="10px" left="10px" />
-		</js:style>
-		
-		<js:Label id="stockSymbol" text="{stock.symbol}" className="ViewTitle" />
-		<js:Label id="stockName" text="{stock.name}" className="StockName" />
-		
-		<js:Spacer height="10" />
-		
-		<js:Container className="StockDetailArea">
-			<js:beads>
-				<js:VerticalColumnLayout numColumns="2" />
-			</js:beads>
-			
-			<js:Label text="Last Price:" className="StockLabel" /> <js:Label id="lastPrice" className="StockValue" />
-			<js:Label text="Open Price:" className="StockLabel" /> <js:Label id="openPrice" className="StockValue" />
-			<js:Label text="Low  Price:" className="StockLabel" /> <js:Label id="lowPrice" className="StockValue" />
-			<js:Label text="High Price:" className="StockLabel" /> <js:Label id="highPrice" className="StockValue" />
-			<js:Label text="Change:    " className="StockLabel" /> <js:Label id="changeAmount" className="StockValue" />
-		</js:Container>
-		
-		<js:Spacer height="10" />
-		
-		<js:Container className="StockDetailArea">
-			<js:TextButton text="Remove From List" width="200" className="StockRemoveButton" click="removeFromList()" />
-		</js:Container>
-	</js:Container>
-</js:TitleView>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileStocks/src/views/WatchListView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileStocks/src/views/WatchListView.mxml b/examples/flexjs/MobileStocks/src/views/WatchListView.mxml
deleted file mode 100755
index 1c317fe..0000000
--- a/examples/flexjs/MobileStocks/src/views/WatchListView.mxml
+++ /dev/null
@@ -1,135 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
-		 title="Watch List"
-		 xmlns:js="library://ns.apache.org/flexjs/basic"
-		 xmlns:controller="controller.*"
-		 xmlns:local="*"
-		 className="WatchListView"
-		 xmlns:renderers="renderers.*">
-	
-	<fx:Script>
-		<![CDATA[						
-			import controller.WatchListController;
-			
-			import models.ProductsModel;
-			import models.Stock;
-			
-			import org.apache.flex.binding.SimpleBinding;
-			import org.apache.flex.core.IBeadController;
-			import org.apache.flex.core.IBeadModel;
-			import org.apache.flex.events.Event;
-			import org.apache.flex.mobile.IViewManager;
-			import org.apache.flex.mobile.StackedViewManager;
-			
-			public function set dataModel(value:IBeadModel):void
-			{
-				var cm:IBeadController = controller;
-				(cm as WatchListController).model = value;
-				
-				var newEvent:ValueChangeEvent = new ValueChangeEvent("valueChange", false, false, null, value);
-				newEvent.propertyName = "dataModel";
-				dispatchEvent(newEvent);
-			}
-			public function get dataModel():IBeadModel
-			{
-				var cm:IBeadController = controller;
-				return (cm as WatchListController).model;
-			}
-			
-			private function onSelectStock():void
-			{
-				var stockView:StockView = new StockView();
-				var svm:IViewManager = viewManager;
-				(viewManager as StackedViewManager).push(stockView);
-			}
-			
-			private function addSymbol():void
-			{
-				dispatchEvent(new org.apache.flex.events.Event("addSymbol"));
-			}
-			
-			public var selectedStockIndex:Number;
-			
-			private function selectRow():void
-			{
-				selectedStockIndex = dataGrid.selectedIndex;
-				dispatchEvent(new org.apache.flex.events.Event("stockSelected"));
-			}
-			
-			public function showStockDetails(stock:Stock):StockView
-			{
-				var stockView:StockView = new StockView();
-				stockView.stock = stock;
-				var vm:* = viewManager;
-				(viewManager as StackedViewManager).push(stockView);
-				
-				var cm:IBeadController = controller;
-				
-				return stockView;
-			}
-			
-			public function popView():void
-			{
-				(viewManager as StackedViewManager).pop();
-			}
-		]]>
-	</fx:Script>
-	
-	<js:beads>
-		<js:VerticalLayout />
-	</js:beads>
-	
-	<js:HContainer className="WatchListInputArea" width="100%" height="10%">
-		<js:Label text="Symbol:" />
-		<js:TextInput id="symbolName" />
-		<js:TextButton text="Add" click="addSymbol()" />
-	</js:HContainer>
-	
-	<js:Spacer height="10" />
-		
-	<js:DataGrid id="dataGrid" width="100%" height="85%" change="selectRow()" className="WatchListDataGrid">
-		<js:beads>
-			<js:DataGridPercentageLayout />
-			<js:SimpleBinding
-				eventName="update"
-				sourceID="dataModel"
-				sourcePropertyName="watchList"
-				destinationPropertyName="dataProvider" />
-			<js:DataProviderChangeNotifier sourceID="dataModel" propertyName="watchList" 
-										   destinationPropertyName="dataProvider" changeEventName="dataProviderChanged" />
-		</js:beads>
-		<js:columns>
-			<js:DataGridColumn label="Company (SYMB)" dataField="symbol" columnWidth="45"
-			                   itemRenderer="renderers.CompanyNameRenderer" />
-			<js:DataGridColumn label="Open" dataField="open" columnWidth="11"
-			                   itemRenderer="renderers.StockRenderer" />
-			<js:DataGridColumn label="Last" dataField="last"columnWidth="11"
-			                   itemRenderer="renderers.StockRenderer" />
-			<js:DataGridColumn label="Change" dataField="change"columnWidth="11"
-			                   itemRenderer="renderers.StockRenderer" />
-			<js:DataGridColumn label="High" dataField="high"columnWidth="11"
-			                   itemRenderer="renderers.StockRenderer" />
-			<js:DataGridColumn label="Low" dataField="low" columnWidth="11"
-			                   itemRenderer="renderers.StockRenderer" />
-		</js:columns>
-	</js:DataGrid>
-	
-</js:TitleView>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/resources/config.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/resources/config.xml b/examples/flexjs/MobileTrader/resources/config.xml
deleted file mode 100644
index 00b9f64..0000000
--- a/examples/flexjs/MobileTrader/resources/config.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version='1.0' encoding='utf-8'?>
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You 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.
-
--->
-<widget id="${groupId}.${artifactId}" version="${version}" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
-    <name>${artifactId}</name>
-    <description>
-        ${description}
-    </description>
-    <author email="dev@flex.apache.org" href="http://flex.apache.org">
-        Apache Flex Team
-    </author>
-    <content src="index.html" />
-    <plugin name="cordova-plugin-whitelist" version="1" />
-    <access origin="*" />
-    <allow-intent href="http://*/*" />
-    <allow-intent href="https://*/*" />
-    <allow-intent href="tel:*" />
-    <allow-intent href="sms:*" />
-    <allow-intent href="mailto:*" />
-    <allow-intent href="geo:*" />
-    <platform name="android">
-        <allow-intent href="market:*" />
-    </platform>
-    <platform name="ios">
-        <allow-intent href="itms:*" />
-        <allow-intent href="itms-apps:*" />
-    </platform>
-</widget>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/MobileTrader.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/MobileTrader.mxml b/examples/flexjs/MobileTrader/src/MobileTrader.mxml
deleted file mode 100755
index c76531c..0000000
--- a/examples/flexjs/MobileTrader/src/MobileTrader.mxml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!---
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-				   xmlns:local="*"
-				   xmlns:models="models.*"
-				   xmlns:js="library://ns.apache.org/flexjs/basic" 
-				   xmlns:controller="controller.*" 
-				   >
-	
-	<js:valuesImpl>
-		<js:SimpleCSSValuesImpl />
-	</js:valuesImpl>
-	
-	<js:model>
-		<models:ProductsModel />
-	</js:model>
-	
-	<js:initialView>
-	   <local:MyInitialView width="100%" height="100%" />
-	</js:initialView>
-</js:Application>


[48/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Fix Card example to support images

Posted by ca...@apache.org.
Fix Card example to support images


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/9633ef5c
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/9633ef5c
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/9633ef5c

Branch: refs/heads/feature/mdl
Commit: 9633ef5c46cfeef4a253ff0255d6726682aebd88
Parents: 0c0dea7
Author: Carlos Rovira <ca...@apache.org>
Authored: Thu Nov 10 00:30:30 2016 +0100
Committer: Carlos Rovira <ca...@apache.org>
Committed: Thu Nov 10 00:30:30 2016 +0100

----------------------------------------------------------------------
 examples/flexjs/MDLExample/src/main/flex/App.mxml | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9633ef5c/examples/flexjs/MDLExample/src/main/flex/App.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLExample/src/main/flex/App.mxml b/examples/flexjs/MDLExample/src/main/flex/App.mxml
index b77ec2c..48e2ec7 100644
--- a/examples/flexjs/MDLExample/src/main/flex/App.mxml
+++ b/examples/flexjs/MDLExample/src/main/flex/App.mxml
@@ -114,12 +114,9 @@ limitations under the License.
                 </js:VContainer>
 
                 <mdl:Card width="512" shadow="2">
-                    <mdl:CardTitle style="color: #666;height: 176px; background:url('assets/Unknown.jpg') center / cover;">
+                    <mdl:CardTitle style="color: #fff;height: 176px; background:url('assets/Unknown.jpg') center / cover;">
                         <js:H2 text="Welcome" className="mdl-card__title-text"/>
                     </mdl:CardTitle>
-                    <mdl:CardMedia>
-                        <js:Image url="assets/Unknown.jpg"  height="176"/>
-                    </mdl:CardMedia>
                     <mdl:CardSupportingText>
                         <js:MultilineLabel text="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris sagittis pellentesque lacus eleifend lacinia..."/>
                     </mdl:CardSupportingText>
@@ -127,12 +124,17 @@ limitations under the License.
                         <mdl:Button text="Get Started" ripple="true" colored="true"/>
                     </mdl:CardActions>
                     <mdl:CardMenu>
-                        <mdl:Button icon="true" ripple="true">
+                        <mdl:Button icon="true" ripple="true" style="color: #fff;">
                             <i class="material-icons">share</i>
                         </mdl:Button>
                     </mdl:CardMenu>
                 </mdl:Card>
 
+
+                    <!--<mdl:CardMedia>
+                        <js:Image url="assets/Unknown.jpg"  height="176"/>
+                    </mdl:CardMedia>-->
+
             </js:Form>
 
         </js:View>


[37/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Added proper setter/getting functions for member property in model so js-release version will work.

Posted by ca...@apache.org.
Added proper setter/getting functions for member property in model so js-release version will work.


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/72c1e1ff
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/72c1e1ff
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/72c1e1ff

Branch: refs/heads/feature/mdl
Commit: 72c1e1ff82615106ed3c2f0713896cbe2f3a2c0a
Parents: f4caf2c
Author: Peter Ent <pe...@apache.org>
Authored: Tue Nov 8 14:56:18 2016 -0500
Committer: Peter Ent <pe...@apache.org>
Committed: Tue Nov 8 14:56:18 2016 -0500

----------------------------------------------------------------------
 .../flexjs/TeamPage/src/models/MemberList.as    | 24 +++++++++++++++++---
 1 file changed, 21 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/72c1e1ff/examples/flexjs/TeamPage/src/models/MemberList.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/models/MemberList.as b/examples/flexjs/TeamPage/src/models/MemberList.as
index 1b5c3e7..69d2220 100644
--- a/examples/flexjs/TeamPage/src/models/MemberList.as
+++ b/examples/flexjs/TeamPage/src/models/MemberList.as
@@ -35,7 +35,15 @@ package models
 			super(target);
 		}
 
-		public var members:Array = null;
+		private var _members:Array = null;
+		public function get members():Array
+		{
+			return _members;
+		}
+		public function set members(value:Array):void
+		{
+			_members = value;
+		}
 
 		private var app:Application;
 		private var service:HTTPService;
@@ -64,19 +72,29 @@ package models
 		{
 			service.url = "team.json";
 			service.send();
+			service.addEventListener("httpStatus", handleStatusReturn);
 			service.addEventListener("complete", handleLoadComplete);
+			service.addEventListener("ioError", handleError);
+		}
+
+		public function handleStatusReturn(event:org.apache.flex.events.Event):void
+		{
+			// tbd: should handle a bad status here
 		}
 
 		public function handleLoadComplete(event:org.apache.flex.events.Event):void
 		{
 			members = [];
-			trace("We got something back");
-			trace("Collection: "+collection.length+" items");
 			for (var i:int=0; i < collection.length; i++) {
 				var item:Object = collection.getItemAt(i);
 				members.push(item);
 			}
 			dispatchEvent( new Event("membersChanged") );
 		}
+
+		public function handleError(event:org.apache.flex.events.Event):void
+		{
+			// tbd: should handle error here
+		}
 	}
 }


[20/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Merged changes

Posted by ca...@apache.org.
- Merged changes


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/962a81ca
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/962a81ca
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/962a81ca

Branch: refs/heads/feature/mdl
Commit: 962a81ca6c493ce190d8f67e570367ce153e9124
Parents: ecb1450 666b761
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Sat Nov 5 16:14:26 2016 +0100
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Sat Nov 5 16:14:26 2016 +0100

----------------------------------------------------------------------
 examples/build_example.xml                      |    1 +
 .../src/main/flex/MyInitialView.mxml            |    2 +-
 .../src/main/flex/models/ProductsModel.as       |   15 +-
 .../main/flex/products/ProductItemRenderer.as   |    2 +-
 .../FlexJSStore/src/main/flex/FlexJSStore.mxml  |    2 +-
 .../FlexJSStore/src/main/flex/HomeView.mxml     |    8 +-
 .../FlexJSStore/src/main/flex/SupportView.mxml  |    6 +-
 .../src/main/flex/productsView/Grip.mxml        |    4 +-
 .../productsView/ProductCatalogThumbnail.mxml   |    2 +-
 .../main/flex/productsView/ProductDetails.mxml  |    2 +-
 .../main/flex/productsView/ProductListItem.mxml |    2 +-
 .../src/main/flex/FlexJSStore.mxml              |    2 +-
 .../src/main/flex/HomeView.mxml                 |   10 +-
 .../src/main/flex/SupportView.mxml              |    6 +-
 .../src/main/flex/productsView/Grip.mxml        |    4 +-
 .../productsView/ProductCatalogThumbnail.mxml   |    2 +-
 .../main/flex/productsView/ProductDetails.mxml  |    2 +-
 .../main/flex/productsView/ProductListItem.mxml |    2 +-
 .../flex/samples/flexstore/ProductThumbEvent.as |   18 +-
 .../src/main/flex/MyInitialView.mxml            |    2 +-
 .../src/main/flex/MyInitialView.mxml            |    2 +-
 examples/flexjs/TeamPage/build.xml              |   61 +
 examples/flexjs/TeamPage/pom.xml                |  115 ++
 .../TeamPage/src/MemberDataJSONItemConverter.as |   55 +
 .../flexjs/TeamPage/src/MemberItemRenderer.mxml |   87 +
 examples/flexjs/TeamPage/src/MyInitialView.mxml |   76 +
 .../TeamPage/src/NoSelectionController.as       |   38 +
 examples/flexjs/TeamPage/src/TeamPage.mxml      |   52 +
 .../flexjs/TeamPage/src/models/MemberList.as    |   82 +
 examples/flexjs/TeamPage/src/models/Person.as   |  128 ++
 examples/flexjs/TeamPage/src/team.json          |  504 ++++++
 examples/flexjs/pom.xml                         |    2 +-
 frameworks/build.xml                            |    5 +
 frameworks/js/FlexJS/build.xml                  |    6 +
 frameworks/js/FlexJS/projects/BasicJS/build.xml |  142 ++
 .../src/main/config/compile-js-config.xml       |   96 ++
 .../src/main/config/compile-js-config.xml       |    1 +
 .../src/main/config/compile-js-config.xml       |    1 +
 frameworks/projects/Basic/build.xml             |  116 ++
 frameworks/projects/Basic/pom.xml               |  128 ++
 .../Basic/src/main/config/compile-as-config.xml |   90 ++
 .../Basic/src/main/flex/BasicClasses.as         |  214 +++
 .../flex/org/apache/flex/core/Application.as    |  647 ++++++++
 .../org/apache/flex/core/ApplicationBase.as     |  110 ++
 .../flex/org/apache/flex/core/ContainerBase.as  |  443 +++++
 .../flex/core/ContainerBaseStrandChildren.as    |   99 ++
 .../org/apache/flex/core/FilledRectangle.as     |  125 ++
 .../org/apache/flex/core/HTMLElementWrapper.as  |  265 +++
 .../apache/flex/core/IScrollingLayoutParent.as  |   68 +
 .../main/flex/org/apache/flex/core/ImageBase.as |   84 +
 .../main/flex/org/apache/flex/core/ListBase.as  |  135 ++
 .../apache/flex/core/ListBaseStrandChildren.as  |   98 ++
 .../org/apache/flex/core/SimpleApplication.as   |  104 ++
 .../main/flex/org/apache/flex/core/UIBase.as    | 1519 ++++++++++++++++++
 .../flex/org/apache/flex/core/UIButtonBase.as   |  877 ++++++++++
 .../src/main/flex/org/apache/flex/core/View.as  |   34 +
 .../main/flex/org/apache/flex/core/ViewBase.as  |  111 ++
 .../org/apache/flex/events/ItemAddedEvent.as    |   88 +
 .../org/apache/flex/events/ItemClickedEvent.as  |  115 ++
 .../org/apache/flex/events/ItemRemovedEvent.as  |   88 +
 .../org/apache/flex/events/ItemRendererEvent.as |   90 ++
 .../src/main/flex/org/apache/flex/html/Alert.as |  287 ++++
 .../main/flex/org/apache/flex/html/Button.as    |   85 +
 .../main/flex/org/apache/flex/html/ButtonBar.as |   76 +
 .../flex/org/apache/flex/html/ButtonBase.as     |  101 ++
 .../main/flex/org/apache/flex/html/CheckBox.as  |  187 +++
 .../flex/org/apache/flex/html/CloseButton.as    |   66 +
 .../main/flex/org/apache/flex/html/ComboBox.as  |  277 ++++
 .../main/flex/org/apache/flex/html/Container.as |  108 ++
 .../flex/org/apache/flex/html/ControlBar.as     |   99 ++
 .../main/flex/org/apache/flex/html/DataGrid.as  |  166 ++
 .../org/apache/flex/html/DataGridButtonBar.as   |   51 +
 .../flex/html/DataGridButtonBarTextButton.as    |   55 +
 .../flex/org/apache/flex/html/DateChooser.as    |   74 +
 .../main/flex/org/apache/flex/html/DateField.as |   95 ++
 .../flex/org/apache/flex/html/DropDownList.as   |  235 +++
 .../src/main/flex/org/apache/flex/html/Form.as  |   99 ++
 .../flex/org/apache/flex/html/HContainer.as     |   61 +
 .../src/main/flex/org/apache/flex/html/HRule.as |   63 +
 .../src/main/flex/org/apache/flex/html/Image.as |   93 ++
 .../org/apache/flex/html/ImageAndTextButton.as  |  128 ++
 .../flex/org/apache/flex/html/ImageButton.as    |   89 +
 .../src/main/flex/org/apache/flex/html/Label.as |  194 +++
 .../src/main/flex/org/apache/flex/html/List.as  |  311 ++++
 .../flex/org/apache/flex/html/MXMLBeadView.as   |  317 ++++
 .../flex/org/apache/flex/html/MultilineLabel.as |   76 +
 .../flex/org/apache/flex/html/NumericStepper.as |  202 +++
 .../src/main/flex/org/apache/flex/html/Panel.as |  121 ++
 .../org/apache/flex/html/PanelWithControlBar.as |  121 ++
 .../flex/org/apache/flex/html/RadioButton.as    |  350 ++++
 .../flex/org/apache/flex/html/RangeStepper.as   |   69 +
 .../flex/org/apache/flex/html/SimpleAlert.as    |  140 ++
 .../flex/org/apache/flex/html/SimpleList.as     |   79 +
 .../main/flex/org/apache/flex/html/Slider.as    |  233 +++
 .../main/flex/org/apache/flex/html/Spacer.as    |   64 +
 .../main/flex/org/apache/flex/html/Spinner.as   |  166 ++
 .../main/flex/org/apache/flex/html/TextArea.as  |  126 ++
 .../flex/org/apache/flex/html/TextButton.as     |  139 ++
 .../main/flex/org/apache/flex/html/TextInput.as |  187 +++
 .../main/flex/org/apache/flex/html/TitleBar.as  |  146 ++
 .../org/apache/flex/html/ToggleTextButton.as    |  170 ++
 .../main/flex/org/apache/flex/html/ToolTip.as   |   60 +
 .../src/main/flex/org/apache/flex/html/Tree.as  |   73 +
 .../flex/org/apache/flex/html/VContainer.as     |   62 +
 .../src/main/flex/org/apache/flex/html/VRule.as |   68 +
 .../flex/org/apache/flex/html/WebBrowser.as     |  145 ++
 .../accessories/NumericOnlyTextInputBead.as     |  199 +++
 .../flex/html/accessories/PasswordInputBead.as  |  102 ++
 .../flex/html/accessories/TextPromptBead.as     |  148 ++
 .../apache/flex/html/accessories/ToolTipBead.as |  141 ++
 .../flex/html/beads/AlertMeasurementBead.as     |   88 +
 .../org/apache/flex/html/beads/AlertView.as     |  226 +++
 .../flex/html/beads/BackgroundImageBead.as      |  112 ++
 .../org/apache/flex/html/beads/ButtonBarView.as |   69 +
 .../org/apache/flex/html/beads/CSSButtonView.as |  167 ++
 .../html/beads/CSSImageAndTextButtonView.as     |  367 +++++
 .../apache/flex/html/beads/CSSTextButtonView.as |  350 ++++
 .../flex/html/beads/CSSTextToggleButtonView.as  |  105 ++
 .../org/apache/flex/html/beads/CheckBoxView.as  |  296 ++++
 .../apache/flex/html/beads/CloseButtonView.as   |  101 ++
 .../org/apache/flex/html/beads/ComboBoxView.as  |  248 +++
 .../org/apache/flex/html/beads/ContainerView.as |  554 +++++++
 .../html/beads/ControlBarMeasurementBead.as     |  116 ++
 .../flex/html/beads/DataGridColumnView.as       |  101 ++
 .../apache/flex/html/beads/DataGridLinesBead.as |  199 +++
 .../org/apache/flex/html/beads/DataGridView.as  |  266 +++
 .../DataItemRendererFactoryForArrayData.as      |  176 ++
 .../DataItemRendererFactoryForArrayList.as      |  194 +++
 .../DataItemRendererFactoryForColumnData.as     |  142 ++
 ...ataItemRendererFactoryForHierarchicalData.as |  113 ++
 .../html/beads/DataProviderChangeNotifier.as    |  194 +++
 .../apache/flex/html/beads/DateChooserView.as   |  328 ++++
 .../org/apache/flex/html/beads/DateFieldView.as |  192 +++
 .../flex/html/beads/DecrementButtonView.as      |   94 ++
 .../flex/html/beads/DownArrowButtonView.as      |  111 ++
 .../apache/flex/html/beads/DropDownListView.as  |  301 ++++
 .../org/apache/flex/html/beads/HRuleView.as     |   87 +
 .../flex/html/beads/HScrollBarThumbView.as      |  120 ++
 .../flex/html/beads/HScrollBarTrackView.as      |  118 ++
 .../apache/flex/html/beads/HScrollBarView.as    |   99 ++
 .../apache/flex/html/beads/IBackgroundBead.as   |   35 +
 .../org/apache/flex/html/beads/IBorderBead.as   |   35 +
 .../org/apache/flex/html/beads/IComboBoxView.as |   78 +
 .../org/apache/flex/html/beads/IDataGridView.as |   36 +
 .../apache/flex/html/beads/IDropDownListView.as |   57 +
 .../apache/flex/html/beads/IGraphicsDrawing.as  |   36 +
 .../org/apache/flex/html/beads/IListView.as     |   48 +
 .../apache/flex/html/beads/IScrollBarView.as    |   80 +
 .../org/apache/flex/html/beads/ISliderView.as   |   60 +
 .../org/apache/flex/html/beads/ISpinnerView.as  |   69 +
 .../apache/flex/html/beads/ITextFieldView.as    |   44 +
 .../apache/flex/html/beads/ITextItemRenderer.as |   45 +
 .../flex/html/beads/ImageAndTextButtonView.as   |  276 ++++
 .../apache/flex/html/beads/ImageButtonView.as   |  158 ++
 .../org/apache/flex/html/beads/ImageView.as     |   46 +
 .../flex/html/beads/IncrementButtonView.as      |   94 ++
 .../flex/html/beads/LeftArrowButtonView.as      |  112 ++
 .../flex/org/apache/flex/html/beads/ListView.as |  211 +++
 .../flex/html/beads/MultilineTextFieldView.as   |   56 +
 .../flex/html/beads/NumericStepperView.as       |  186 +++
 .../org/apache/flex/html/beads/PanelView.as     |  168 ++
 .../flex/html/beads/PanelWithControlBarView.as  |  207 +++
 .../apache/flex/html/beads/RadioButtonView.as   |  281 ++++
 .../apache/flex/html/beads/RangeStepperView.as  |  157 ++
 .../flex/html/beads/RightArrowButtonView.as     |  112 ++
 .../org/apache/flex/html/beads/ScrollBarView.as |  216 +++
 .../apache/flex/html/beads/SimpleAlertView.as   |  150 ++
 .../flex/html/beads/SingleLineBorderBead.as     |   91 ++
 .../apache/flex/html/beads/SliderThumbView.as   |  156 ++
 .../apache/flex/html/beads/SliderTrackView.as   |  153 ++
 .../org/apache/flex/html/beads/SliderView.as    |  179 +++
 .../flex/html/beads/SolidBackgroundBead.as      |  195 +++
 .../org/apache/flex/html/beads/SpinnerView.as   |  180 +++
 .../org/apache/flex/html/beads/TextAreaView.as  |  263 +++
 .../html/beads/TextButtonMeasurementBead.as     |   86 +
 .../apache/flex/html/beads/TextButtonView.as    |  217 +++
 .../html/beads/TextFieldLabelMeasurementBead.as |   92 ++
 .../org/apache/flex/html/beads/TextFieldView.as |   54 +
 .../apache/flex/html/beads/TextFieldViewBase.as |  404 +++++
 .../org/apache/flex/html/beads/TextInputView.as |  135 ++
 .../flex/html/beads/TextInputWithBorderView.as  |  100 ++
 .../TextItemRendererFactoryForArrayData.as      |  159 ++
 ...extItemRendererFactoryForStringVectorData.as |  143 ++
 .../flex/html/beads/TitleBarMeasurementBead.as  |  108 ++
 .../apache/flex/html/beads/TitleBarView.mxml    |   58 +
 .../apache/flex/html/beads/UpArrowButtonView.as |  112 ++
 .../org/apache/flex/html/beads/VRuleView.as     |   87 +
 .../flex/html/beads/VScrollBarThumbView.as      |  119 ++
 .../flex/html/beads/VScrollBarTrackView.as      |  118 ++
 .../apache/flex/html/beads/VScrollBarView.as    |   99 ++
 .../apache/flex/html/beads/WebBrowserView.as    |  198 +++
 .../html/beads/controllers/AlertController.as   |   88 +
 .../controllers/ButtonAutoRepeatController.as   |  147 ++
 .../beads/controllers/ComboBoxController.as     |  104 ++
 .../controllers/DateChooserMouseController.as   |  127 ++
 .../controllers/DateFieldMouseController.as     |   96 ++
 .../beads/controllers/DropDownListController.as |  117 ++
 .../EditableTextKeyboardController.as           |   86 +
 .../controllers/HScrollBarMouseController.as    |  101 ++
 .../controllers/ItemRendererMouseController.as  |  209 +++
 .../ListSingleSelectionMouseController.as       |  153 ++
 .../controllers/RangeStepperMouseController.as  |   94 ++
 .../controllers/ScrollBarMouseControllerBase.as |  184 +++
 .../beads/controllers/SliderMouseController.as  |  286 ++++
 .../beads/controllers/SpinnerMouseController.as |  124 ++
 .../TreeSingleSelectionMouseController.as       |   82 +
 .../controllers/VScrollBarMouseController.as    |  101 ++
 .../flex/html/beads/layouts/BasicLayout.as      |  445 +++++
 .../flex/html/beads/layouts/ButtonBarLayout.as  |  143 ++
 .../flex/html/beads/layouts/DataGridLayout.as   |  208 +++
 .../beads/layouts/DataGridPercentageLayout.as   |  224 +++
 .../FlexibleFirstChildHorizontalLayout.as       |  244 +++
 .../flex/html/beads/layouts/HScrollBarLayout.as |  121 ++
 .../flex/html/beads/layouts/HorizontalLayout.as |  326 ++++
 .../flex/html/beads/layouts/IDataGridLayout.as  |   52 +
 .../html/beads/layouts/LayoutChangeNotifier.as  |  103 ++
 .../layouts/OneFlexibleChildHorizontalLayout.as |  332 ++++
 .../layouts/OneFlexibleChildVerticalLayout.as   |  459 ++++++
 .../flex/html/beads/layouts/TileLayout.as       |  248 +++
 .../flex/html/beads/layouts/VScrollBarLayout.as |  122 ++
 .../html/beads/layouts/VerticalColumnLayout.as  |  199 +++
 .../flex/html/beads/layouts/VerticalLayout.as   |  362 +++++
 .../apache/flex/html/beads/models/AlertModel.as |  288 ++++
 .../beads/models/ArrayListSelectionModel.as     |  244 +++
 .../html/beads/models/ArraySelectionModel.as    |  243 +++
 .../flex/html/beads/models/ComboBoxModel.as     |  100 ++
 .../flex/html/beads/models/DataGridModel.as     |   71 +
 .../beads/models/DataGridPresentationModel.as   |   88 +
 .../flex/html/beads/models/DateChooserModel.as  |  189 +++
 .../flex/html/beads/models/ImageAndTextModel.as |   77 +
 .../apache/flex/html/beads/models/ImageModel.as |   89 +
 .../html/beads/models/ListPresentationModel.as  |  107 ++
 .../apache/flex/html/beads/models/PanelModel.as |  158 ++
 .../apache/flex/html/beads/models/RangeModel.as |  222 +++
 .../html/beads/models/RangeModelExtended.as     |  101 ++
 .../flex/html/beads/models/ScrollBarModel.as    |   98 ++
 .../html/beads/models/SingleLineBorderModel.as  |   85 +
 .../html/beads/models/StringSelectionModel.as   |  221 +++
 .../apache/flex/html/beads/models/TextModel.as  |  125 ++
 .../flex/html/beads/models/TitleBarModel.as     |  136 ++
 .../flex/html/beads/models/ToggleButtonModel.as |  145 ++
 .../html/beads/models/ValueToggleButtonModel.as |  123 ++
 .../flex/html/beads/models/ViewportModel.as     |   72 +
 .../flex/html/beads/models/WebBrowserModel.as   |  100 ++
 .../apache/flex/html/supportClasses/Border.as   |   49 +
 .../ButtonBarButtonItemRenderer.as              |  145 ++
 .../flex/html/supportClasses/CheckBoxIcon.as    |   92 ++
 .../html/supportClasses/ContainerContentArea.as |   81 +
 .../DataGridButtonBarButtonItemRenderer.as      |   81 +
 .../flex/html/supportClasses/DataGridColumn.as  |  127 ++
 .../html/supportClasses/DataGridColumnList.as   |   61 +
 .../flex/html/supportClasses/DataGroup.as       |  122 ++
 .../html/supportClasses/DataItemRenderer.as     |  179 +++
 .../html/supportClasses/DateChooserButton.as    |   67 +
 .../html/supportClasses/DateHeaderButton.as     |   48 +
 .../html/supportClasses/DropDownListList.as     |   63 +
 .../html/supportClasses/GraphicsItemRenderer.as |  316 ++++
 .../flex/html/supportClasses/HScrollBar.as      |   49 +
 .../flex/html/supportClasses/RadioButtonIcon.as |  111 ++
 .../flex/html/supportClasses/ScrollBar.as       |   50 +
 .../html/supportClasses/ScrollingViewport.as    |  354 ++++
 .../flex/html/supportClasses/SpinnerButton.as   |   31 +
 .../html/supportClasses/StringItemRenderer.as   |  180 +++
 .../supportClasses/TextFieldItemRenderer.as     |  576 +++++++
 .../html/supportClasses/TreeItemRenderer.as     |   64 +
 .../flex/html/supportClasses/TreeListData.as    |   76 +
 .../html/supportClasses/UIItemRendererBase.as   |  303 ++++
 .../flex/html/supportClasses/VScrollBar.as      |   49 +
 .../apache/flex/html/supportClasses/Viewport.as |  151 ++
 .../flex/org/apache/flex/svg/BinaryImage.as     |   87 +
 .../src/main/flex/org/apache/flex/svg/Circle.as |  118 ++
 .../flex/org/apache/flex/svg/CompoundGraphic.as |  585 +++++++
 .../main/flex/org/apache/flex/svg/DOMWrapper.as |   56 +
 .../main/flex/org/apache/flex/svg/Ellipse.as    |  152 ++
 .../org/apache/flex/svg/GraphicContainer.as     |  204 +++
 .../flex/org/apache/flex/svg/GraphicShape.as    |  225 +++
 .../src/main/flex/org/apache/flex/svg/Image.as  |  133 ++
 .../src/main/flex/org/apache/flex/svg/Path.as   |  133 ++
 .../src/main/flex/org/apache/flex/svg/Rect.as   |  156 ++
 .../src/main/flex/org/apache/flex/svg/Text.as   |  150 ++
 .../main/flex/org/apache/flex/svg/TextButton.as |   30 +
 .../flex/org/apache/flex/svg/beads/ImageView.as |   87 +
 .../src/main/resources/basic-as-manifest.xml    |   37 +
 .../Basic/src/main/resources/basic-manifest.xml |  129 ++
 .../Basic/src/main/resources/defaults.css       |  672 ++++++++
 .../Basic/src/main/resources/svg-manifest.xml   |   24 +
 .../test/flex/FlexUnitFlexJSApplication.mxml    |   46 +
 .../projects/Basic/src/test/flex/build.xml      |  167 ++
 .../flex/flexUnitTests/DataGridColumnTester.as  |   27 +
 .../flexUnitTests/DataGridColumnTesterTest.as   |   55 +
 .../org/apache/flex/charts/core/IAxisGroup.as   |    3 +-
 .../flex/charts/optimized/SVGChartDataGroup.as  |    5 +-
 .../charts/supportClasses/ChartAxisGroup.as     |    8 +-
 frameworks/projects/Core/.flexLibProperties     |   28 +-
 frameworks/projects/Core/build.xml              |    2 +-
 .../projects/Core/src/main/flex/CoreClasses.as  |   46 +-
 .../flex/org/apache/flex/core/Application.as    |  637 --------
 .../org/apache/flex/core/ApplicationBase.as     |  110 --
 .../org/apache/flex/core/ApplicationFactory.as  |  132 ++
 .../apache/flex/core/BrowserResizeListener.as   |   34 +-
 .../org/apache/flex/core/BrowserScroller.as     |    4 +-
 .../main/flex/org/apache/flex/core/CSSShape.as  |   11 +-
 .../main/flex/org/apache/flex/core/CSSSprite.as |   12 +-
 .../flex/org/apache/flex/core/CSSTextField.as   |   10 +-
 .../flex/org/apache/flex/core/CallLaterBead.as  |    5 +-
 .../flex/org/apache/flex/core/ContainerBase.as  |  443 -----
 .../flex/core/ContainerBaseStrandChildren.as    |   99 --
 .../flex/org/apache/flex/core/ElementWrapper.as |  352 ++++
 .../org/apache/flex/core/FilledRectangle.as     |  125 --
 .../org/apache/flex/core/HTMLElementWrapper.as  |  265 ---
 .../flex/org/apache/flex/core/IBinaryImage.as   |   47 +
 .../org/apache/flex/core/IBinaryImageLoader.as  |   34 +
 .../org/apache/flex/core/IBinaryImageModel.as   |   48 +
 .../main/flex/org/apache/flex/core/IChild.as    |   22 +-
 .../flex/org/apache/flex/core/IContentView.as   |    5 +-
 .../flex/org/apache/flex/core/IFlexJSElement.as |   15 +-
 .../main/flex/org/apache/flex/core/IImage.as    |   50 +
 .../flex/org/apache/flex/core/IImageModel.as    |    5 +-
 .../flex/org/apache/flex/core/IImageView.as     |   53 +
 .../apache/flex/core/IInitialViewApplication.as |   68 +
 .../flex/org/apache/flex/core/IItemRenderer.as  |    2 +-
 .../flex/org/apache/flex/core/ILayoutParent.as  |   34 +
 .../main/flex/org/apache/flex/core/IParent.as   |   10 +-
 .../org/apache/flex/core/IRenderedObject.as     |   44 +
 .../org/apache/flex/core/ISWFApplication.as     |   44 +
 .../org/apache/flex/core/ITransformModel.as     |    2 +-
 .../main/flex/org/apache/flex/core/IUIBase.as   |   46 +-
 .../flex/org/apache/flex/core/ImageViewBase.as  |  255 +++
 .../main/flex/org/apache/flex/core/ListBase.as  |  126 --
 .../apache/flex/core/ListBaseStrandChildren.as  |  100 --
 .../org/apache/flex/core/SimpleApplication.as   |  102 --
 .../org/apache/flex/core/SimpleCSSValuesImpl.as |    3 +-
 .../org/apache/flex/core/SimpleStatesImpl.as    |   13 +-
 .../apache/flex/core/StyleableCSSTextField.as   |    2 +-
 .../org/apache/flex/core/TransformBeadBase.as   |  100 ++
 .../main/flex/org/apache/flex/core/UIBase.as    | 1483 -----------------
 .../flex/org/apache/flex/core/UIButtonBase.as   |  862 ----------
 .../apache/flex/core/UIHTMLElementWrapper.as    |  263 +++
 .../src/main/flex/org/apache/flex/core/View.as  |   34 -
 .../main/flex/org/apache/flex/core/ViewBase.as  |   97 --
 .../org/apache/flex/core/WrappedHTMLElement.as  |    2 +-
 .../org/apache/flex/core/WrappedMovieClip.as    |   60 +
 .../flex/org/apache/flex/core/WrappedShape.as   |   60 +
 .../org/apache/flex/core/WrappedSimpleButton.as |   65 +
 .../flex/org/apache/flex/core/WrappedSprite.as  |   61 +
 .../org/apache/flex/core/WrappedTextField.as    |   60 +
 .../flex/org/apache/flex/events/BrowserEvent.as |    9 +
 .../org/apache/flex/events/ElementEvents.as     |   20 +
 .../main/flex/org/apache/flex/events/Event.as   |   71 +-
 .../flex/org/apache/flex/events/IFlexJSEvent.as |   48 +
 .../flex/org/apache/flex/events/MouseEvent.as   |   67 +-
 .../flex/events/utils/MouseEventConverter.as    |    7 +-
 .../main/flex/org/apache/flex/geom/Rectangle.as |  459 +++---
 .../flex/org/apache/flex/utils/BinaryData.as    |    6 +-
 .../org/apache/flex/utils/CSSBorderUtils.as     |    2 +-
 .../main/flex/org/apache/flex/utils/CSSUtils.as |   14 +-
 .../flex/org/apache/flex/utils/DisplayUtils.as  |  163 ++
 .../apache/flex/utils/MXMLDataInterpreter.as    |   11 +-
 .../flex/org/apache/flex/utils/PointUtils.as    |   22 +-
 .../main/flex/org/apache/flex/utils/UIUtils.as  |    5 +-
 .../main/flex/org/apache/flex/utils/URLUtils.as |   59 +
 .../flex/utils/ViewSourceContextMenuOption.as   |    3 +-
 .../Core/src/main/resources/basic-manifest.xml  |    2 -
 .../test/flex/FlexUnitFlexJSApplication.mxml    |    3 +-
 .../org/apache/flex/createjs/Application.as     |   24 +-
 .../org/apache/flex/createjs/core/UIBase.as     |   43 +-
 .../org/apache/flex/createjs/graphics/Circle.as |    1 +
 .../src/main/config/compile-as-config.xml       |    1 +
 .../flex/org/apache/flex/events/DragEvent.as    |   32 +-
 .../beads/controllers/DragMouseController.as    |    6 +-
 .../beads/controllers/DropMouseController.as    |    5 +
 .../flex/core/StatesWithTransitionsImpl.as      |    9 +-
 .../org/apache/flex/effects/PlatformWiper.as    |    7 +-
 .../beads/CSSContentAndTextToggleButtonView.as  |   28 +-
 .../flex/flat/beads/CSSScrollBarButtonView.as   |   10 +-
 .../apache/flex/flat/beads/CSSScrollBarView.as  |   42 +-
 .../apache/flex/flat/beads/DropDownListView.as  |   33 +-
 frameworks/projects/GoogleMaps/pom.xml          |   13 +
 .../src/main/config/compile-as-config.xml       |    1 +
 .../flex/maps/google/beads/GoogleMapView.as     |    2 +-
 .../projects/Graphics/.actionScriptProperties   |   42 +-
 frameworks/projects/Graphics/.flexLibProperties |   29 +-
 .../src/main/config/compile-as-config.xml       |    9 +
 .../Graphics/src/main/flex/GraphicsClasses.as   |   22 +-
 .../org/apache/flex/graphics/GradientEntry.as   |   21 +-
 .../main/flex/org/apache/flex/graphics/IFill.as |    5 +-
 .../org/apache/flex/graphics/IGraphicShape.as   |    7 -
 .../flex/org/apache/flex/graphics/IStroke.as    |    6 +-
 .../org/apache/flex/graphics/PathBuilder.as     |   19 +-
 .../flex/org/apache/flex/graphics/SolidColor.as |   11 +-
 .../apache/flex/graphics/SolidColorStroke.as    |    8 +-
 .../src/main/flex/org/apache/flex/svg/Circle.as |  118 --
 .../main/flex/org/apache/flex/svg/ClipBead.as   |  182 +++
 .../flex/org/apache/flex/svg/CompoundGraphic.as |  585 -------
 .../main/flex/org/apache/flex/svg/DOMWrapper.as |   56 -
 .../main/flex/org/apache/flex/svg/Ellipse.as    |  152 --
 .../org/apache/flex/svg/GraphicContainer.as     |  208 ---
 .../flex/org/apache/flex/svg/GraphicShape.as    |  225 ---
 .../flex/org/apache/flex/svg/LinearGradient.as  |   17 +-
 .../src/main/flex/org/apache/flex/svg/Path.as   |  133 --
 .../src/main/flex/org/apache/flex/svg/Rect.as   |  156 --
 .../src/main/flex/org/apache/flex/svg/Text.as   |  150 --
 .../flex/org/apache/flex/svg/TransformBead.as   |   81 +-
 .../Graphics/src/main/resources/defaults.css    |   37 +
 .../src/main/resources/svg-manifest.xml         |   10 +-
 .../projects/HTML/.actionScriptProperties       |   19 -
 .../projects/HTML/src/main/flex/HTMLClasses.as  |   24 +-
 .../flex/org/apache/flex/core/Application.as    |  560 +++++++
 .../org/apache/flex/core/ApplicationBase.as     |  109 ++
 .../flex/org/apache/flex/core/ContainerBase.as  |  453 ++++++
 .../flex/core/ContainerBaseStrandChildren.as    |   99 ++
 .../org/apache/flex/core/FilledRectangle.as     |  125 ++
 .../main/flex/org/apache/flex/core/ImageBase.as |   84 +
 .../main/flex/org/apache/flex/core/ListBase.as  |  134 ++
 .../apache/flex/core/ListBaseStrandChildren.as  |  100 ++
 .../org/apache/flex/core/SimpleApplication.as   |  104 ++
 .../main/flex/org/apache/flex/core/UIBase.as    | 1400 ++++++++++++++++
 .../flex/org/apache/flex/core/UIButtonBase.as   |  792 +++++++++
 .../src/main/flex/org/apache/flex/core/View.as  |   34 +
 .../main/flex/org/apache/flex/core/ViewBase.as  |  105 ++
 .../org/apache/flex/events/ItemAddedEvent.as    |    3 +-
 .../org/apache/flex/events/ItemClickedEvent.as  |    3 +-
 .../org/apache/flex/events/ItemRemovedEvent.as  |    3 +-
 .../org/apache/flex/events/ItemRendererEvent.as |    3 +-
 .../src/main/flex/org/apache/flex/html/A.as     |  138 ++
 .../flex/org/apache/flex/html/BinaryImage.as    |   88 +
 .../main/flex/org/apache/flex/html/Container.as |    9 +-
 .../src/main/flex/org/apache/flex/html/Div.as   |  112 ++
 .../src/main/flex/org/apache/flex/html/H1.as    |  112 ++
 .../src/main/flex/org/apache/flex/html/H2.as    |  112 ++
 .../src/main/flex/org/apache/flex/html/H3.as    |  112 ++
 .../src/main/flex/org/apache/flex/html/H4.as    |  112 ++
 .../src/main/flex/org/apache/flex/html/H5.as    |  112 ++
 .../src/main/flex/org/apache/flex/html/H6.as    |  112 ++
 .../src/main/flex/org/apache/flex/html/Image.as |   52 +-
 .../flex/org/apache/flex/html/RadioButton.as    |    4 +-
 .../src/main/flex/org/apache/flex/html/Span.as  |  112 ++
 .../flex/org/apache/flex/html/TextButton.as     |    2 +-
 .../accessories/NumericOnlyTextInputBead.as     |    5 +-
 .../flex/html/accessories/TextPromptBead.as     |    4 +-
 .../flex/html/beads/BackgroundImageBead.as      |    4 +-
 .../apache/flex/html/beads/BinaryImageLoader.as |  121 ++
 .../org/apache/flex/html/beads/CSSButtonView.as |   27 +-
 .../html/beads/CSSImageAndTextButtonView.as     |   39 +-
 .../apache/flex/html/beads/CSSTextButtonView.as |   40 +-
 .../org/apache/flex/html/beads/CheckBoxView.as  |   23 +-
 .../apache/flex/html/beads/CloseButtonView.as   |   10 +-
 .../org/apache/flex/html/beads/ComboBoxView.as  |  124 +-
 .../org/apache/flex/html/beads/ContainerView.as |   11 +-
 .../DataItemRendererFactoryForArrayData.as      |    3 +-
 .../DataItemRendererFactoryForArrayList.as      |    2 +-
 .../DataItemRendererFactoryForColumnData.as     |    2 +-
 .../org/apache/flex/html/beads/DisableBead.as   |  130 ++
 .../flex/html/beads/DownArrowButtonView.as      |   28 +-
 .../apache/flex/html/beads/DropDownListView.as  |   35 +-
 .../org/apache/flex/html/beads/HRuleView.as     |    8 +-
 .../flex/html/beads/HScrollBarThumbView.as      |   20 +-
 .../flex/html/beads/HScrollBarTrackView.as      |   25 +-
 .../apache/flex/html/beads/HScrollBarView.as    |   31 +-
 .../apache/flex/html/beads/IScrollBarView.as    |   10 +-
 .../org/apache/flex/html/beads/ISliderView.as   |    6 +-
 .../org/apache/flex/html/beads/ISpinnerView.as  |    6 +-
 .../flex/html/beads/ImageAndTextButtonView.as   |   12 +-
 .../apache/flex/html/beads/ImageButtonView.as   |   27 +-
 .../org/apache/flex/html/beads/ImageView.as     |  181 +--
 .../flex/html/beads/LeftArrowButtonView.as      |   22 +-
 .../apache/flex/html/beads/RadioButtonView.as   |   25 +-
 .../flex/html/beads/RightArrowButtonView.as     |   22 +-
 .../org/apache/flex/html/beads/ScrollBarView.as |   16 +-
 .../flex/html/beads/SingleLineBorderBead.as     |    2 +-
 .../apache/flex/html/beads/SliderThumbView.as   |   15 +-
 .../apache/flex/html/beads/SliderTrackView.as   |   13 +-
 .../org/apache/flex/html/beads/SliderView.as    |   36 +-
 .../flex/html/beads/SolidBackgroundBead.as      |   18 +-
 .../org/apache/flex/html/beads/SpinnerView.as   |   30 +-
 .../org/apache/flex/html/beads/TextAreaView.as  |   23 +-
 .../apache/flex/html/beads/TextButtonView.as    |   18 +-
 .../apache/flex/html/beads/TextFieldViewBase.as |    2 +-
 .../apache/flex/html/beads/UpArrowButtonView.as |   22 +-
 .../org/apache/flex/html/beads/VRuleView.as     |    8 +-
 .../flex/html/beads/VScrollBarThumbView.as      |   30 +-
 .../flex/html/beads/VScrollBarTrackView.as      |   25 +-
 .../apache/flex/html/beads/VScrollBarView.as    |   24 +-
 .../apache/flex/html/beads/WebBrowserView.as    |    2 +-
 .../html/beads/controllers/AlertController.as   |    4 +-
 .../beads/controllers/ComboBoxController.as     |   15 +-
 .../beads/controllers/DropDownListController.as |   21 +-
 .../controllers/HScrollBarMouseController.as    |   14 +-
 .../controllers/VScrollBarMouseController.as    |   14 +-
 .../flex/html/beads/layouts/BasicLayout.as      |   17 +-
 .../FlexibleFirstChildHorizontalLayout.as       |    5 +-
 .../flex/html/beads/layouts/HScrollBarLayout.as |   26 +-
 .../flex/html/beads/layouts/HorizontalLayout.as |   10 +-
 .../layouts/OneFlexibleChildHorizontalLayout.as |    6 +-
 .../layouts/OneFlexibleChildVerticalLayout.as   |    5 +-
 .../flex/html/beads/layouts/TileLayout.as       |    9 +-
 .../flex/html/beads/layouts/VScrollBarLayout.as |   16 +-
 .../html/beads/layouts/VerticalColumnLayout.as  |    5 +-
 .../flex/html/beads/layouts/VerticalLayout.as   |    5 +-
 .../flex/html/beads/models/BinaryImageModel.as  |   86 +
 .../apache/flex/html/beads/models/ImageModel.as |   17 +-
 .../html/supportClasses/ContainerContentArea.as |    7 +-
 .../flex/html/supportClasses/DataGroup.as       |    5 +-
 .../html/supportClasses/DataItemRenderer.as     |    2 +-
 .../html/supportClasses/MXMLItemRenderer.as     |   72 +
 .../html/supportClasses/ScrollingViewport.as    |   15 +-
 .../html/supportClasses/StringItemRenderer.as   |    2 +-
 .../supportClasses/TextFieldItemRenderer.as     |   15 +-
 .../html/supportClasses/UIItemRendererBase.as   |    7 +-
 .../flex/org/apache/flex/svg/BinaryImage.as     |   87 +
 .../src/main/flex/org/apache/flex/svg/Circle.as |  119 ++
 .../flex/org/apache/flex/svg/CompoundGraphic.as |  584 +++++++
 .../main/flex/org/apache/flex/svg/DOMWrapper.as |   56 +
 .../main/flex/org/apache/flex/svg/Ellipse.as    |  171 ++
 .../org/apache/flex/svg/GraphicContainer.as     |  209 +++
 .../flex/org/apache/flex/svg/GraphicShape.as    |  233 +++
 .../src/main/flex/org/apache/flex/svg/Image.as  |  133 ++
 .../src/main/flex/org/apache/flex/svg/Path.as   |  133 ++
 .../src/main/flex/org/apache/flex/svg/Rect.as   |  156 ++
 .../src/main/flex/org/apache/flex/svg/Text.as   |  150 ++
 .../flex/org/apache/flex/svg/beads/ImageView.as |   87 +
 .../src/main/resources/basic-as-manifest.xml    |    2 +-
 .../HTML/src/main/resources/basic-manifest.xml  |   15 +
 .../HTML/src/main/resources/defaults.css        |    9 +
 .../HTML/src/main/resources/svg-manifest.xml    |    8 +
 .../test/flex/FlexUnitFlexJSApplication.mxml    |    3 +-
 .../projects/HTML/src/test/flex/build.xml       |    2 +
 .../flex/org/apache/flex/html5/TransformBead.as |   44 +
 .../HTML5/src/main/resources/html5-manifest.xml |   51 +-
 .../org/apache/flex/mobile/IViewManagerView.as  |    4 +-
 .../flex/org/apache/flex/mobile/ManagerBase.as  |   11 +-
 .../apache/flex/mobile/StackedViewManager.as    |    3 +-
 .../apache/flex/mobile/beads/DeviceSizeBead.as  |   16 +-
 .../flex/mobile/beads/MobileWebBrowserView.as   |   20 +-
 .../flex/mobile/models/ViewManagerModel.as      |    5 +-
 .../flex/org/apache/flex/net/BinaryUploader.as  |    8 +-
 .../flex/org/apache/flex/net/HTTPService.as     |    8 +-
 .../flex/org/apache/flex/net/HTTPServiceBase.as |    4 +-
 .../main/flex/org/apache/flex/net/URLRequest.as |    4 +-
 .../org/apache/flex/net/URLRequestHeader.as     |   62 +
 .../main/flex/org/apache/flex/net/URLStream.as  |   44 +-
 frameworks/projects/XML/src/main/flex/XML.as    |  293 ++--
 .../projects/XML/src/main/flex/XMLList.as       |  310 +++-
 .../src/products/ProductItemRenderer.as         |    2 +-
 .../src/products/ProductItemRenderer.as         |    2 +-
 545 files changed, 53833 insertions(+), 7929 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml
index 7472d95,0000000..96a8721
mode 100644,000000..100644
--- a/examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml
+++ b/examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml
@@@ -1,75 -1,0 +1,75 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
 +				xmlns:js="library://ns.apache.org/flexjs/basic"
 +				xmlns:local="*" >
 +    <fx:Script>
 +        <![CDATA[
 +			
 +			import org.apache.cordova.camera.Camera;
 +			
 +			private var cam:org.apache.cordova.camera.Camera = new org.apache.cordova.camera.Camera();
 +			
 +			public function set ready(value:Boolean):void
 +			{
 +				status.text = "ready";
 +			}
 +			
 +			public function snapPicture() : void
 +			{
 +				trace("snapping");
 +				cam.getPicture(success,failure,{quality:100, destinationType:org.apache.cordova.camera.Camera.DestinationType.FILE_URI});
 +			}
 +			
 +			private function success(data:Object):void
 +			{
 +				output.text = "Success: "+String(data);
- 				image.source = String(data);
++				image.url = String(data);
 +			}
 +			
 +			private function failure(message:Object):void
 +			{
 +				output.text = "Failed: "+String(message);
 +			}
 +			
 +			private function onFromPhotoLibrary() : void
 +			{
 +				cam.getPicture(success,failure,{ quality: 50,
 +					destinationType: org.apache.cordova.camera.Camera.DestinationType.FILE_URI,
 +					sourceType: org.apache.cordova.camera.Camera.PictureSourceType.PHOTOLIBRARY });
 +			}
 +			
 +		]]>
 +    </fx:Script>
 +	
 +	<fx:Style>
 +	
 +	</fx:Style>
 +	
 +	<js:Label id="status" x="20" y="140" width="400" text="loading..."/>
 +	
 +	<js:TextButton text="From Photo Library" x="20" y="20" click="onFromPhotoLibrary()" />
 +	<js:TextButton text="Snap Picture" x="20" y="55" click="snapPicture()" />
 +	
 +	<js:Label id="output" x="20" y="110" width="400"/>
 +	
 +	<js:Image id="image" x="20" y="200" width="200" height="200" />
 +
 +</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as
----------------------------------------------------------------------
diff --cc examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as
index 8eab2fe,0000000..2526c04
mode 100644,000000..100644
--- a/examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as
+++ b/examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as
@@@ -1,55 -1,0 +1,60 @@@
 +////////////////////////////////////////////////////////////////////////////////
 +//
 +//  Licensed to the Apache Software Foundation (ASF) under one or more
 +//  contributor license agreements.  See the NOTICE file distributed with
 +//  this work for additional information regarding copyright ownership.
 +//  The ASF licenses this file to You 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.
 +//
 +////////////////////////////////////////////////////////////////////////////////
 +package models
 +{
 +	import org.apache.flex.events.EventDispatcher;
 +	import org.apache.flex.collections.ArrayList;
- 	
++
 +	import products.Product;
- 	
++
 +	public class ProductsModel extends EventDispatcher
 +	{
 +		public function ProductsModel()
 +		{
 +			_productList = new ArrayList();
 +			_productList.source = source;
 +		}
 +
 +		private var source:Array = [
 +			new Product("ps100","Widgets",44,200,"assets/smallbluerect.jpg"),
 +			new Product("tx200","Thingys",5,285,"assets/smallgreenrect.jpg"),
 +			new Product("rz300","Sprockets",80,105,"assets/smallyellowrect.jpg"),
 +			new Product("dh440","Doohickies",10,340,"assets/smallredrect.jpg"),
 +			new Product("ps220","Weejets",35,190,"assets/smallorangerect.jpg")
 +			];
- 			
++
 +		private var _productList:ArrayList;
- 		
++
++		override public function toString():String
++		{
++			return "ProductsModel";
++		}
++
 +		public function get productList():ArrayList
 +		{
 +			return _productList;
 +		}
 +
 +		private var _labelFields:Array = [ "id", "title", "sales", "detail" ];
 +		public function get labelFields():Array
 +		{
 +			return _labelFields;
 +		}
 +	}
- }
++}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as
----------------------------------------------------------------------
diff --cc examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as
index 4edc5b7,0000000..0a954b0
mode 100644,000000..100644
--- a/examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as
+++ b/examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as
@@@ -1,66 -1,0 +1,66 @@@
 +////////////////////////////////////////////////////////////////////////////////
 +//
 +//  Licensed to the Apache Software Foundation (ASF) under one or more
 +//  contributor license agreements.  See the NOTICE file distributed with
 +//  this work for additional information regarding copyright ownership.
 +//  The ASF licenses this file to You 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.
 +//
 +////////////////////////////////////////////////////////////////////////////////
 +package products
 +{
 +	import org.apache.flex.html.Image;
 +	import org.apache.flex.html.supportClasses.DataItemRenderer;
 +	
 +	public class ProductItemRenderer extends DataItemRenderer
 +	{
 +		public function ProductItemRenderer()
 +		{
 +			super();
 +		}
 +		
 +		private var image:Image;
 +		
 +		override public function addedToParent():void
 +		{
 +			super.addedToParent();
 +			
 +			// add an image and two labels
 +			image = new Image();
 +			addElement(image);
 +		}
 +		
 +		override public function get data():Object
 +		{
 +			return super.data;
 +		}
 +		
 +		override public function set data(value:Object):void
 +		{
 +			super.data = value;
 +			
- 			image.source = value.image;
++			image.url = value.image;
 +		}
 +		
 +		override public function adjustSize():void
 +		{
 +			var cy:Number = this.height/2;
 +			
 +			image.x = 4;
 +			image.y = cy - 16;
 +			image.width = 32;
 +			image.height = 32;
 +			
 +			updateRenderer();
 +		}
 +	}
 +}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml
index 8f4ade3,0000000..cf29d5b
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml
+++ b/examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml
@@@ -1,268 -1,0 +1,268 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
 +                xmlns:js="library://ns.apache.org/flexjs/basic" 
 +                xmlns="*"
 +                initialize="startService()"
 +			    pageTitle="FlexStore">
 +	
 +	<fx:Script>
 +		<![CDATA[	
 +            import org.apache.flex.core.ValuesManager;
 +            
 +            /*
 +			private var currentTheme:String = "beige";
 +			
 +			private function toggleTheme():void
 +			{
 +				if (currentTheme == "beige")
 +				{
 +					currentTheme = "blue";
 +				}
 +				else
 +				{
 +					currentTheme = "beige";
 +				}
 +				
 +				loadStyle();
 +			}
 +			*/
 +            
 +			private function startService():void
 +			{
 +				productService.send();
 +			}
 +			
 +			private function loadStyle():void
 +			{
 +                /* load css not implemented yet
 +				var eventDispatcher:IEventDispatcher =
 +					styleManager.loadStyleDeclarations(currentTheme + ".swf");
 +				eventDispatcher.addEventListener(StyleEvent.COMPLETE, completeHandler);
 +                */
 +			}
 +			
 +			private function completeHandler(event:Event):void
 +			{
- 				image.source = ValuesManager.valuesImpl.getValue(acb, "storeLogo");
++				image.url = ValuesManager.valuesImpl.getValue(acb, "storeLogo");
 +                /*
 +				super.initialized = true;
 +                */
 +                callLater.callLater(prebake);
 +			}
 +			
 +            /*
 +			override public function set initialized(value:Boolean):void
 +			{
 +				// Hold off until the Runtime CSS SWF is done loading.
 +			}
 +            */
 +            
 +            private var stateChain:Array;
 +            
 +            private function headHome():void
 +            {
 +                homeButton.selected = true;
 +                if (initialView.currentState == "ProductsState")
 +                {
 +                    productsButton.selected = false;
 +                    stateChain = ["ProductsWipeUp", "HomeWipeDown", "HomeState"];
 +                    initialView.currentState = "ProductsWipeUp";
 +                }
 +                else if (initialView.currentState == "SupportState")
 +                {
 +                    supportButton.selected = false;
 +                    stateChain = ["SupportWipeUp", "HomeWipeDown", "HomeState"];
 +                    initialView.currentState = "SupportWipeUp";                    
 +                }
 +            }
 +            
 +            private function headToProducts():void
 +            {
 +                productsButton.selected = true;
 +                if (initialView.currentState == "SupportState")
 +                {
 +                    supportButton.selected = false;
 +                    stateChain = ["SupportWipeUp", "ProductsWipeDown", "ProductsState"];
 +                    initialView.currentState = "SupportWipeUp";                    
 +                }
 +                if (initialView.currentState == "HomeState")
 +                {
 +                    homeButton.selected = false;
 +                    stateChain = ["HomeWipeUp", "ProductsWipeDown", "ProductsState"];
 +                    initialView.currentState = "HomeWipeUp";                    
 +                }
 +            }
 +            
 +            private function headToSupport():void
 +            {
 +                supportButton.selected = true;
 +                if (initialView.currentState == "ProductsState")
 +                {
 +                    productsButton.selected = false;
 +                    stateChain = ["ProductsWipeUp", "SupportWipeDown", "SupportState"];
 +                    initialView.currentState = "ProductsWipeUp";                    
 +                }
 +                if (initialView.currentState == "HomeState")
 +                {
 +                    homeButton.selected = false;
 +                    stateChain = ["HomeWipeUp", "SupportWipeDown", "SupportState"];
 +                    initialView.currentState = "HomeWipeUp";                    
 +                }
 +            }
 +            
 +            private function prebake():void
 +            {
 +                callLater.callLater(prebake2);
 +            }
 +            
 +            private function prebake2():void
 +            {
 +                trace("prebake2");
 +                stateChain = ["ProductsPreBake", "HomeState"];
 +                initialView.currentState = "ProductsPreBake";
 +            }
 +                
 +            private function chainStatesIfNeeded():void
 +            {
 +                if (stateChain != null)
 +                {
 +                    if (initialView.currentState == stateChain[0])
 +                    {
 +                        callLater.callLater(nextState);
 +                    }
 +                }
 +            }
 +            
 +            private function nextState():void
 +            {
 +                stateChain.shift();
 +                if (stateChain.length)
 +                    initialView.currentState = stateChain[0];
 +                else
 +                    stateChain = null;
 +            }
 +		]]>
 +	</fx:Script>
 +	
 +	<fx:Style source="main.css"/>
 +    <fx:Style source="beige.css"/>
 +	
 +    <fx:Declarations>
 +        <js:HTTPService id="productService" url="data/catalog.json">
 +            <js:LazyCollection id="catalog" complete="if (pView) pView.catalog = catalog">
 +                <js:inputParser>
 +                    <js:JSONInputParser />
 +                </js:inputParser>
 +                <js:itemConverter>
 +                    <ProductJSONItemConverter />
 +                </js:itemConverter> 
 +            </js:LazyCollection>
 +        </js:HTTPService>        
 +    </fx:Declarations>
 +    <js:valuesImpl>
 +        <js:SimpleCSSValuesImpl />
 +    </js:valuesImpl>
 +	<js:beads>
 +        <js:ViewSourceContextMenuOption />
 +        <js:CallLaterBead id="callLater" />
 +        <js:ApplicationDataBinding />
 +    </js:beads>
 +    <js:initialView>
 +        <js:View	width="990" height="585"
 +                        initComplete="completeHandler(null)"
 +                        stateChangeComplete="chainStatesIfNeeded()">
 +            <js:states>
 +                <js:State name="HomeState" stateGroups="['Home']" />
 +                <js:State name="HomeWipeUp" stateGroups="['Home']" />
 +                <js:State name="HomeWipeDown" stateGroups="['Home']" />
 +                <js:State name="ProductsPreBake" stateGroups="['Home', 'Products']" />
 +                <js:State name="ProductsState" stateGroups="['Products']" />
 +                <js:State name="ProductsWipeUp" stateGroups="['Products']" />
 +                <js:State name="ProductsWipeDown" stateGroups="['Products']" />
 +                <js:State name="SupportState" stateGroups="['Support']" />
 +                <js:State name="SupportWipeUp" stateGroups="['Support']" />
 +                <js:State name="SupportWipeDown" stateGroups="['Support']" />
 +            </js:states>
 +            
 +            <js:transitions>
 +                <js:Transition fromState="HomeState" toState="HomeWipeUp">
 +                    <js:Wipe direction="up" target="homeView" />
 +                </js:Transition>
 +                <js:Transition fromState="HomeWipeDown" toState="HomeState">
 +                    <js:Wipe direction="down" target="homeView" />
 +                </js:Transition>
 +                <js:Transition fromState="ProductsState" toState="ProductsWipeUp">
 +                    <js:Wipe direction="up" target="pView" />
 +                </js:Transition>
 +                <js:Transition fromState="ProductsWipeDown" toState="ProductsState">
 +                    <js:Wipe direction="down" target="pView" />
 +                </js:Transition>
 +                <js:Transition fromState="SupportState" toState="SupportWipeUp">
 +                    <js:Wipe direction="up" target="supportView" />
 +                </js:Transition>
 +                <js:Transition fromState="SupportWipeDown" toState="SupportState">
 +                    <js:Wipe direction="down" target="supportView" />
 +                </js:Transition>
 +            </js:transitions>
 +            <js:beads>
 +                <js:VerticalLayout />
 +            </js:beads>
 +            <js:ControlBar id="acb" width="100%" className="storeControlBar" >
 +                <js:beads>
 +                    <js:HorizontalLayout />
 +                </js:beads>
 +                <js:Image id="image" />
 +                         <!-- click="toggleTheme()" -->
 +                         <!-- toolTip="Change Theme"/ -->
 +                <js:ToggleTextButton id="homeButton"
 +                                text="Home"
 +                                height="100%"
 +                                selected="true"
 +                                className="storeButtonBar"
 +                                click="headHome()" />
 +                <js:ToggleTextButton id="productsButton"
 +                                text="Products"
 +                                height="100%"
 +                                className="storeButtonBar"
 +                                click="headToProducts()"/>
 +                <js:ToggleTextButton id="supportButton"
 +                                text="Support"
 +                                height="100%"
 +                                className="storeButtonBar"
 +                                click="headToSupport()"/>            
 +            </js:ControlBar>
 +            <js:Container width="990" id="viewholder">
 +                <js:style>
 +                    <js:SimpleCSSStyles paddingLeft="0" paddingRight="0"/>
 +                </js:style>
 +                        
 +                <HomeView id="homeView" width="100%" height="550" includeIn="Home"
 +                          />
 +                <ProductsView id="pView" includeIn="Products" visible.ProductsPreBake="false"
 +                              width="100%" height="550" initComplete="if (catalog.length) pView.catalog = catalog"
 +                              />
 +                <SupportView id="supportView" includeIn="Support"
 +                             width="100%" height="550"
 +                             />
 +            </js:Container>
 +        </js:View>        
 +    </js:initialView>    
 +</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml
index 6e237d2,0000000..9021084
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml
+++ b/examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml
@@@ -1,194 -1,0 +1,194 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<!--
 +This component is primarily static and is only meant to show what other
 +pages of the store could look like.
 +
 +Note that this page was put together in the Design view so you'll see more
 +hard coded locations and sizes.
 +
 +Also note when working with a Canvas that using the constraint styles 
 +(e.g., left, top, right, bottom) can provide better layout predictability than 
 +using x and y, especially when percentage widths and heights are used.
 +
 +Width and height are hard-coded in the root tag to help the Design view.
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
 +         xmlns:js="library://ns.apache.org/flexjs/basic" 
 +           xmlns="*" width="990" height="550"
 +           initComplete="updateMapImage()">
 +	<fx:Script>
 +		<![CDATA[
 +            import org.apache.flex.core.ValuesManager;
 +			import org.apache.flex.html.SimpleAlert;
 +
 +			public function updateMapImage():void
 +			{
- 				mapImage.source = ValuesManager.valuesImpl.getValue(mapCanvas, 'dottedMap');
++				mapImage.url = ValuesManager.valuesImpl.getValue(mapCanvas, 'dottedMap');
 +			}
 +		]]>
 +	</fx:Script>
 +    <js:beads>
 +        <js:ContainerDataBinding />
 +    </js:beads>
 +	<js:HContainer width="100%" height="100%" y="0" x="0" className="colorPanel">
 +		<js:VContainer width="230" height="100%">
 +			<js:Container width="100%" height="100%">
 +			
 +				<js:Container height="60" className="homeSection">
 +                    <js:style>
 +                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="10" right="10"/>
 +                    </js:style>
 +					<js:Label style="left:10;top:10" text="Search Developers" height="22" className="sectionHeader" />
 +					<js:TextButton style="left:168;top:30" text="Go" width="27" height="20" className="glass" click="SimpleAlert.show('This feature is not implemented in this sample', 'Go')"/>
 +					<js:TextInput style="left:10;top:30" height="20" width="150"/>
 +				</js:Container>
 +				
 +				<js:Container height="280" className="homeSection">
 +                    <js:style>
 +                        <js:SimpleCSSStyles backgroundColor="#ffffff" left="10" top="78" right="10" />                        
 +                    </js:style>
 +					<js:VContainer width="100%" height="100%">
 +                        <js:style>
 +                            <js:SimpleCSSStyles left="10" top="10" />                        
 +                        </js:style>
 +						<js:Label text="Flex Experts That Can Help You" className="sectionHeader"/>
 +						<js:HRule height="5" width="187" style="marginLeft:0"/>
 +						<js:Label text="General" className="homeProgramHeader"/>
 +						<js:Label text="BlazeDS Experts" style="fontSize:9"/>
 +						<js:Spacer height="8" width="100%"/>
 +						<js:Label text="Server-side" className="homeProgramHeader"/>
 +						<js:Label text="Java, PHP Developers" style="fontSize:9"/>
 +						<js:Spacer height="8" width="100%"/>
 +						<js:Label text="Mobile" className="homeProgramHeader"/>
 +						<js:Label text="Android, IOS and more" style="fontSize:9"/>
 +						<js:Spacer height="8" width="100%"/>
 +						<js:Label text="Students" className="homeProgramHeader"/>
 +						<js:Label text="Free Assistance" style="fontSize:9"/>
 +						<js:Spacer height="8" width="100%"/>
 +					</js:VContainer>
 +				</js:Container>
 +				
 +				<js:Container height="174" className="homeSection">
 +                    <js:style>
 +                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="366" right="10" />
 +                    </js:style>
 +					<js:VContainer width="100%" height="100%">
 +                        <js:style>
 +                            <js:SimpleCSSStyles left="10" top="10" />
 +                        </js:style>
 +						<js:Label text="Manage My Account" className="sectionHeader"/>
 +						
 +						<js:Label text="Phone Number"/>
 +						
 +						<js:HContainer width="100%" height="25" >
 +                            <js:style>
 +                                <js:SimpleCSSStyles verticalAlign="middle" />
 +                            </js:style>
 +							<js:TextInput height="20" width="40"/>
 +							<js:HRule width="8" height="2"/>
 +							<js:TextInput height="20" width="40"/>
 +							<js:HRule width="8" height="2"/>
 +							<js:TextInput height="20" width="40"/>
 +						</js:HContainer>
 +						
 +						<js:Label text="Password"/>
 +						<js:TextInput height="20"/>
 +						<js:Spacer height="8" width="100%"/>
 +						
 +						<js:CheckBox text="Remember my phone number" selected="true"/>
 +						<js:Spacer height="8" width="100%"/>
 +						
 +						<js:TextButton text="Login" className="glass" height="20" width="55" click="SimpleAlert.show('This feature is not implemented in this sample', 'Login')"/>
 +						
 +					</js:VContainer>
 +				</js:Container>
 +				
 +			</js:Container>
 +			
 +		</js:VContainer>
 +		
 +		<js:VContainer width="750" height="100%">
 +			<js:Container width="100%" height="100%">
 +			
 +			    <!-- can't use binding to set the mapImage source because the style isn't available early enough -->
 +				<js:Container id="mapCanvas" height="35%" className="homeMap">
 +                    <js:style>
 +                        <js:SimpleCSSStyles left="0" right="10" top="10" />
 +                    </js:style>
 +					<js:Image id="mapImage" width="487" height="100%" alpha="1.0" style="left:10;top:10"/>
 +					<js:Label y="110" text="US Developers . Flex . FlexJS" width="95%" height="40" style="margin:auto;fontWeight:'bold';fontSize:22;color:#ffffff;fontFamily:'Arial';textAlign:'center'"/>
 +					<js:Label text="Learn More &gt;&gt;" width="95" style="fontSize:12;fontFamily:'Arial';bottom:10;right:10"/>
 +					<js:Label text="$60/hr" style="color:#ffffff;fontWeight:'bold';fontFamily:'Arial';fontSize:20;right:10:top:10"/>
 +					<js:Label text="Rates as low as" x="551" y="16" style="fontSize:12"/>
 +				</js:Container>
 +				
 +				<js:Container height="330" >
 +                    <js:style>
 +                        <js:SimpleCSSStyles backgroundColor="#ffffff" borderStyle="solid" bottom="10" right="10" left="0" /> <!-- cornerRadius="4" -->
 +                    </js:style>
 +					
 +					<js:Label style="left:10;top:10" text="Featured Developers" width="173" height="25" className="sectionHeader"/>
 +					
 +					<js:HContainer style="left:10;top:43" width="100%" height="100%">
 +						<js:VContainer width="33%" height="100%">
 +							<js:Container width="100%">
- 								<js:Image id="image1" source="assets/akotter.jpg" style="margin:auto;verticalCenter:0"/>
++								<js:Image id="image1" url="assets/akotter.jpg" style="margin:auto;verticalCenter:0"/>
 +							</js:Container>
 +							
 +							<js:Container width="100%">
 +								<js:Label text="Annette Kotter" id="feat_prod_1" style="margin:auto;fontWeight:'bold';fontSize:12"/>
 +							</js:Container>
 +							
 +						</js:VContainer>
 +						
 +						<js:VContainer width="33%" height="100%">							
 +							<js:Container width="100%">
- 								<js:Image id="image2" style="margin:auto;verticalCenter:0" source="assets/bcrater.jpg"/>
++								<js:Image id="image2" style="margin:auto;verticalCenter:0" url="assets/bcrater.jpg"/>
 +							</js:Container>
 +							
 +							<js:Container width="100%">
 +								<js:Label text="Ben Crater" id="feat_prod_2" style="margin:auto;fontWeight:'bold';fontSize:12"/>
 +							</js:Container>
 +							
 +						</js:VContainer>
 +						
 +						<js:VContainer width="33%" height="100%">
 +							<js:Container width="100%">
- 								<js:Image id="image3" style="margin:auto;verticalCenter:0" source="assets/jproctor.jpg"/>
++								<js:Image id="image3" style="margin:auto;verticalCenter:0" url="assets/jproctor.jpg"/>
 +							</js:Container>
 +							
 +							<js:Container width="100%">
 +								<js:Label text="Jane Proctor" id="feat_prod_3" style="margin:auto;fontWeight:'bold';fontSize:12"/>
 +							</js:Container>
 +							
 +						</js:VContainer>
 +						
 +					</js:HContainer>
 +					
 +				</js:Container>
 +				
 +			</js:Container>
 +		
 +		</js:VContainer>
 +		
 +	</js:HContainer>
 +	
 +</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml
index 3d30a9d,0000000..72bbb55
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml
+++ b/examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml
@@@ -1,149 -1,0 +1,149 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<!--
 +This component is primarily static and is only meant to show what other
 +pages of the store could look like.
 +
 +Note that this page was put together in the Design view so you'll see more
 +hard coded locations and sizes.
 +
 +We did not have sizing issues here as much so you'll see more hardcoded 
 +"y" values rather than "top."
 +
 +The width and height are hard-coded in the root tag to help the Design view.
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
 +                 xmlns:js="library://ns.apache.org/flexjs/basic" 
 +                 xmlns="*" alpha="1.0"
 +    width="990" height="550">
 +	
 +	<fx:Script>
 +	    <![CDATA[
 +	       import org.apache.flex.html.SimpleAlert;
 +	    ]]>
 +	</fx:Script>
 +	
 +    <fx:Declarations>
 +        <fx:Array id="locations">
 +            <fx:Object image="assets/support_mapmarker_a.png" name="601 Townsend St" /> 
 +            <fx:Object image="assets/support_mapmarker_b.png" name="Location B" />
 +            <fx:Object image="assets/support_mapmarker_c.png" name="Location C" />	   	   
 +        </fx:Array>   
 +        
 +    </fx:Declarations>
 +	
 +	<js:HContainer x="0" y="0" width="100%" height="100%" className="colorPanel">
 +	
 +		<js:VContainer width="32%" height="100%">
 +			<js:Container width="100%" height="420">
 +			
 +				<js:Label y="10" text="Check Location" className="sectionHeader" x="20"/>
 +				
 +				<js:Container height="150" y="64" style="margin:auto">
 +                    <js:beads>
 +                        <js:VerticalColumnLayout numColumns="2" />
 +                    </js:beads>
 +					<js:Label text="Address:"/>
 +					<js:TextInput id="address"/>
 +					
 +					<js:Label text="City:" style="marginTop:20"/>
 +					<js:TextInput id="city" style="marginTop:20"/>						
 +					
 +					<js:Label text="State:" style="marginTop:20"/>
 +					<js:DropDownList id="state" style="marginTop:20">
 +						<js:dataProvider>
 +                            <fx:Array>
 +                                <fx:String>California</fx:String>
 +                                <fx:String>Nevada</fx:String>
 +                                <fx:String>Oregon</fx:String>
 +                                <fx:String>Washington</fx:String>
 +                            </fx:Array>                                    
 +            			</js:dataProvider>
 +					</js:DropDownList>
 +					
 +					<js:Label text="ZIP Code:" style="marginTop:20"/>
 +					<js:TextInput id="zip" style="marginTop:20"/>
 +					
 +				</js:Container>
 +				
 +				<js:Label y="38" text="Option1: Enter Address" style="margin:auto" className="instructions"/>
 +				
 +				<js:TextButton y="297" text="Locate" click="SimpleAlert.show('This feature is not implemented in this sample', 'Locate')" 
 +                                  style="margin:auto"/>
 +				
 +				<js:HContainer y="327" height="20" >
 +                    <js:style>
 +                        <js:SimpleCSSStyles margin="auto" verticalAlign="middle" />
 +                    </js:style>
 +					<js:HRule width="60" />
 +					<js:Label text="OR"/>
 +                    <js:HRule width="60" />
 +				</js:HContainer>
 +				
 +				<js:Label y="355" text="Option 2: Drag this marker into the map" style="margin:auto" className="instructions"/>
 +				
- 				<js:Image y="380" style="margin:auto" source="assets/support_mapmarker_plus.png"/>
++				<js:Image y="380" style="margin:auto" url="assets/support_mapmarker_plus.png"/>
 +				
 +				<js:HRule y="415" style="margin:auto" width="200" alpha="0.6"/>
 +				
 +			</js:Container>
 +			
 +			<js:Container width="100%" height="130">
 +				<js:VContainer width="80%" height="90%" >
 +                    <js:style>
 +                        <js:SimpleCSSStyles margin="auto" top="0"/>
 +                    </js:style>
 +					<js:Label text="Location" className="instructions"/>
 +					<js:List width="100%" dataProvider="{locations}">
 +                        <js:itemRenderer>
 +                            <fx:Component>
 +                                <js:DataItemRenderer className="listItem" width="100%">
 +                                    <fx:Script>
 +                                        <![CDATA[
 +                                            import samples.flexstore.Product;
 +                                            [Bindable("__NoChangeEvent__")]
 +                                            private function get product():Product
 +                                            {
 +                                                return data as Product;
 +                                            }
 +                                        ]]>
 +                                    </fx:Script>
-                                     <js:Image width="21" height="25" source="{product.image}" />
++                                    <js:Image width="21" height="25" url="{product.image}" />
 +                                    <js:Label width="100%" text="{product.name}" />
 +                                </js:DataItemRenderer>                                                            
 +                            </fx:Component>
 +                        </js:itemRenderer>
 +					</js:List>
 +				</js:VContainer>
 +			</js:Container>
 +			
 +		</js:VContainer>
 +		
 +		<js:Container width="68%" height="100%">
- 			<js:Image source="assets/427px-Bayarea_map.png">
++			<js:Image url="assets/427px-Bayarea_map.png">
 +                <js:style>
 +                    <js:SimpleCSSStyles left="12" top="12"/>
 +                </js:style>
 +            </js:Image>
 +		</js:Container>
 +		
 +	</js:HContainer>
 +	
 +</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml
index abd3ce5,0000000..d161d89
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml
@@@ -1,48 -1,0 +1,48 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
 +                  xmlns:js="library://ns.apache.org/flexjs/basic" 
 +                  width="17" height="100%" >
 +    <js:style>
 +        <js:SimpleCSSStyles paddingTop="10" />
 +    </js:style>
 +
 +    <fx:Script>
 +        <![CDATA[
 +           [Bindable]
 +           public var gripTip:String; 
 +           
 +           [Bindable]
 +           public var gripIcon:String;
 +        ]]>
 +    </fx:Script>
 +    <js:beads>
 +        <js:ContainerDataBinding />
 +        <js:OneFlexibleChildVerticalLayout flexibleChild="grip" />
 +    </js:beads>
 +
-     <js:Image id="icon" source="{gripIcon}" />
-     <js:Image id="grip" source="assets/grip.png" >
++    <js:Image id="icon" url="{gripIcon}" />
++    <js:Image id="grip" url="assets/grip.png" >
 +        <js:beads>
 +            <js:ToolTipBead toolTip="{gripTip}" />
 +        </js:beads>
 +    </js:Image>
 +    
 +</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml
index 1abc428,0000000..0946f8a
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml
@@@ -1,220 -1,0 +1,220 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
 +                   xmlns:js="library://ns.apache.org/flexjs/basic" 
 +    width="{COL_WIDTH_4}" height="{COL_HEIGHT_4}" height.compare="502"
 +    width.x4cols="{COL_WIDTH_4}" height.x4cols="{COL_HEIGHT_4}"
 +    width.x3cols="{COL_WIDTH_3}" height.x3cols="{COL_HEIGHT_3}"
 +    width.x2cols="{COL_WIDTH_2}" height.x2cols="{COL_HEIGHT_2}"
 +    rollOver="rollOverHandler(event)"
 +    rollOut="rollOutHandler(event)"
 +    mouseDown="mouseDownHandler(event)"
 +    mouseMove="mouseMoveHandler(event)"
 +    mouseUp="mouseUpHandler(event)"
 +    click="clickHandler(event)"
 +    currentState="x4cols"
 +    >
 +    <!-- automationName="{product.name}" -->
 +    <js:beads>
 +        <js:ContainerDataBinding />
 +        <js:LayoutChangeNotifier watchedProperty="{borderStyles.borderColor}" initialValue="#FFFFFF" />
 +    </js:beads>
 +    <js:style>
 +        <js:BindableCSSStyles id="borderStyles" borderStyle="solid" borderWidth="1"
 +                               borderColor="#FFFFFF" backgroundColor="#FFFFFF"/>
 +    </js:style>
 +    <fx:Metadata>
 +        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
 +        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
 +        [Event(name="details", type="samples.flexstore.ProductThumbEvent")]
 +    </fx:Metadata>
 +
 +    <fx:Script>
 +        <![CDATA[
 +
 +		import org.apache.flex.events.*;
 +        import org.apache.flex.utils.PointUtils;
 +            
 +        import samples.flexstore.Product;
 +        import samples.flexstore.ProductThumbEvent;
 +        
 +        public static const COL_WIDTH_4:int = 162;
 +        public static const COL_HEIGHT_4:int = 122;
 +        public static const COL_WIDTH_3:int = 217;
 +        public static const COL_HEIGHT_3:int = 165;
 +        public static const COL_WIDTH_2:int = 327;
 +        public static const COL_HEIGHT_2:int = 250;
 +        public static const COMPARE_WIDTH:int = 162;
 +        public static const HORIZONTAL_GAP:int = 2;
 +        public static const VERTICAL_GAP:int = 3;
 +
 +        [Bindable]
 +        public var product:Product;
 +
 +        private function rollOverHandler(event:MouseEvent):void
 +		{
 +            borderStyles.borderColor = "#CCCCCC";
 +            //style["dropShadowEnabled"] = true;
 +            buttons.visible = true;
 +        }
 +
 +        private function rollOutHandler(event:MouseEvent):void
 +		{
 +            borderStyles.borderColor = "#FFFFFF";
 +            //style["dropShadowEnabled"] = false;
 +			buttons.visible = false;
 +        }
 +
 +        private var dragStartPoint:Point;
 +
 +        public function mouseDownHandler(event:MouseEvent):void
 +        {
 +            if (event.target != purchase &&
 +                event.target != compare &&
 +                event.target != details)
 +            {
 +                dragStartPoint = new Point(event.clientX, event.clientY);
 +            }
 +        }
 +
 +        public function mouseMoveHandler(event:MouseEvent):void
 +        {
 +            if (dragStartPoint != null)
 +            {
 +                var dragEvent:DragEvent = new DragEvent(DragEvent.DRAG_START, true);
 +                dragEvent.clientX = dragStartPoint.x;
 +                dragEvent.clientY = dragStartPoint.y;
 +                dragEvent.buttonDown = true;
 +                dispatchEvent(dragEvent);
 +
 +                rollOutHandler(event);
 +
 +                dragStartPoint = null;
 +            }
 +        }
 +
 +        public function mouseUpHandler(event:MouseEvent):void
 +        {
 +            if (dragStartPoint != null)
 +            {
 +                dragStartPoint = null;
 +            }
 +        }
 +
 +        public function clickHandler(event:org.apache.flex.events.MouseEvent):void
 +        {
 +            if (event.target != purchase &&
 +                event.target != compare &&
 +                event.target != details)
 +            {
 +                dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product));
 +            }
 +        }
 +
 +	]]>
 +    </fx:Script>
 +    <fx:Declarations>
 +        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
 +    </fx:Declarations>
 +
 +    <js:VContainer id="vb" width="100%" height="100%">
 +        <js:style>
 +            <js:SimpleCSSStyles paddingLeft="6" paddingTop="4" paddingRight="8" paddingBottom="4" />
 +                                 <!--  gap="0">  -->
 +        </js:style>
 +        
 +
 +        <js:Label text="{product.name}" style="fontWeight:bold"/>
 +
 +        <js:HContainer width="100%" >
 +            <js:style>
 +                <js:SimpleCSSStyles paddingTop="0" /> <!-- gap="4 -->"
 +            </js:style>
 +
 +            <js:Image id="img" height="45" width="45" 
 +                     width.x3cols="60" height.x3cols="60"
 +                     width.x2cols="60" height.x2cols="60"
-                      source="{product.image}" />
++                     url="{product.image}" />
 +
 +            <js:VContainer id="descr" height="100%" >
 +                <js:style>
 +                    <js:SimpleCSSStyles paddingTop="0" right="0" /> <!--  gap="0"  -->
 +                </js:style>
 +                <js:Label text="{product.featureString}" width="60" height="48" />
 +                <js:Label text="{cf.format(product.price)}" style="fontWeight:bold"/>
 +				<js:Spacer height="4"/>
 +                <js:Label text="{product.highlight1}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
 +                <js:Label text="{product.highlight2}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
 +            </js:VContainer>
 +
 +        </js:HContainer>
 +
 +        <js:Spacer height="8"/>
 +
 +        <js:Label id="compYears" text="Years: {product.experience}" includeIn="compare"/>
 +        <js:Label id="compBlaze" text="BlazeDS: {product.blazeds}" includeIn="compare"/>
 +        <js:Label id="compMobile" text="Mobile: {product.mobile}" includeIn="compare"/>
 +        <js:Label id="compVideo" text="Video: {product.video}" includeIn="compare"/>
 +        <js:Label id="compHigh1" text="Highlight: {product.highlight1}" includeIn="compare"/>
 +        <js:Label id="compHigh2" text="Highlight: {product.highlight2}" includeIn="compare"/>
 +        <js:Label text="Description:" includeIn="compare"/>
 +        <js:MultilineLabel id="compDesc" text="{product.description}" width="100%" includeIn="compare"/>
 +    </js:VContainer>
 +
 +
 +    <js:VContainer id="buttons" visible="false" width="30">
 +        <js:style>
 +            <js:SimpleCSSStyles paddingRight="8" right="8" top="12" /> <!-- gap="4" -->
 +        </js:style>
 +        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" className="hoverButton"
 +            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" 
 +            width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Add to cart"/>
 +            </js:beads>
 +        </js:ImageButton>
 +        <js:ImageButton id="compare" source="assets/button_compare.png" className="hoverButton"
 +            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" 
 +            width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Add to compare list"/>
 +            </js:beads>
 +        </js:ImageButton>
 +        <js:ImageButton id="details" source="assets/button_details.png" className="hoverButton"
 +            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product))" 
 +            width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Show details"/>
 +            </js:beads>
 +        </js:ImageButton>
 +    </js:VContainer>
 +
 +    <js:states>
 +
 +        <js:State name="compare" />
 +
 +        <js:State name="x4cols" />
 +
 +        <js:State name="x3cols" />
 +
 +        <js:State name="x2cols"/>
 +    </js:states>
 +
 +</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/962a81ca/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml
----------------------------------------------------------------------
diff --cc examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml
index 309cb41,0000000..781d120
mode 100755,000000..100755
--- a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml
@@@ -1,145 -1,0 +1,145 @@@
 +<?xml version="1.0" encoding="utf-8"?>
 +<!--
 +
 +Licensed to the Apache Software Foundation (ASF) under one or more
 +contributor license agreements.  See the NOTICE file distributed with
 +this work for additional information regarding copyright ownership.
 +The ASF licenses this file to You 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.
 +
 +-->
 +<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
 +                 xmlns:js="library://ns.apache.org/flexjs/basic" 
 +    xmlns:productsView="productsView.*"
 +    >
 +    <js:beads>
 +        <js:ContainerDataBinding />
 +    </js:beads>
 +
 +    <fx:Metadata>
 +        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
 +        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
 +        [Event(name="browse", type="samples.flexstore.ProductThumbEvent")]
 +    </fx:Metadata>
 +
 +    <fx:Script>
 +        <![CDATA[
 +
 +		import samples.flexstore.Product;
 +		import samples.flexstore.ProductThumbEvent;
 +
 +        private var _product:Product;
 +        
 +        [Bindable]
 +        public function get product():Product
 +        {
 +            return _product;
 +        }
 +        
 +        public function set product(p:Product):void
 +        {
 +            _product = p;
 +            tn.selectedIndex = 0;
 +        }
 +        
 +	]]>
 +    </fx:Script>
 +
 +    <fx:Declarations>
 +        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
 +    </fx:Declarations>
 +
 +    <js:states>
 +        <js:State name="Features" />
 +        <js:State name="Support" />
 +    </js:states>
 +    
 +    <js:transitions>
 +        <js:Transition>
 +            <js:Fade />
 +        </js:Transition>
 +    </js:transitions>
 +    
 +    <js:ButtonBar id="tn" width="100%" change="currentState = tn.selectedItem as String">
 +        <js:dataProvider>
 +            <fx:Array>
 +                <fx:String>Features</fx:String>
 +                <fx:String>Support</fx:String>
 +            </fx:Array>
 +        </js:dataProvider>
 +    </js:ButtonBar>
 +    <js:Container >
 +        <js:style>
 +            <js:SimpleCSSStyles left="4" right="8" top="34" bottom="4" />
 +        </js:style>
 +                    
 +
 +        <js:VContainer includeIn="Features" >
 +            <js:style>
 +                <!--<js:SimpleCSSStyles gap="8"-->
 +                <js:SimpleCSSStyles
 +                    left="8" top="8" right="8" bottom="8"/>
 +            </js:style>
 +            <js:Container style="left:0px;right:0px">
 +
-                 <js:Image id="img" width="101" height="101" source="{product.image}"/>
++                <js:Image id="img" width="101" height="101" url="{product.image}"/>
 +
 +                <js:VContainer id="descr" >
 +                    <js:style>
 +                        <js:SimpleCSSStyles top="0" left="105" right="0" bottom="20" />
 +                        <!--<js:SimpleCSSStyles paddingTop="0" gap="4" />-->
 +                    </js:style>
 +                    
 +                    <js:Label text="{product.name}" style="fontSize:11;fontWeight:'bold'"/>
 +
 +	                <js:Label text="{product.featureString}" width="80" height="48" />
 +
 +                    <js:Label text="{product.highlight1}" style="color:#EE8D0C"/>
 +
 +                    <js:Label text="{product.highlight2}" style="color:#EE8D0C"/>
 +
 +                    <js:Label text="{cf.format(product.price)}" style="fontWeight:'bold'"/>
 +
 +                </js:VContainer>
 +            </js:Container>
 +
 +            <js:Label id="descriptionText" style="left:0px;right:0px;bottom:0px" text="{product.description}"/>
 +
 +        </js:VContainer>
 +
 +        <productsView:ProductSupport width="100%" height="100%" includeIn="Support" />
 +
 +    </js:Container>
 +
 +    <js:VContainer>
 +        <js:style>
 +            <js:SimpleCSSStyles marginTop="4" right="16" top="36" />
 +        </js:style>
 +        <js:Spacer width="100%"/>
 +        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Add to cart"/>
 +            </js:beads>
 +        </js:ImageButton>
 +        <js:ImageButton id="compare" source="assets/button_compare.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Add to compare list"/>
 +            </js:beads>
 +        </js:ImageButton>
 +        <js:ImageButton id="tiles" source="assets/button_tiles.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.BROWSE, product));" width="30">
 +            <js:beads>
 +                <js:ToolTipBead toolTip="Back to thumbnail view"/>
 +            </js:beads>
 +        </js:ImageButton>
 +    </js:VContainer>
 +
 +</js:Container>


[13/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/data/catalog.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/data/catalog.json b/examples/flexjs/FlexJSStore/src/data/catalog.json
deleted file mode 100755
index 89bdd43..0000000
--- a/examples/flexjs/FlexJSStore/src/data/catalog.json
+++ /dev/null
@@ -1,236 +0,0 @@
-{ catalog : [
-
-    { "productId" :"1",
-      "name" : "Andrew Brilliam",
-      "description" : "15 years experience. 8 years with Flex.  Specializing in Text Layout Framework",
-      "price" : 60.00,
-      "image" : "assets/pic/abrilliam.jpg",
-      "experience" : 15,
-      "blazeds" : false,
-      "mobile" : false,
-      "video" : false,
-      "highlight1" : "Text Layout Framework",
-	  "highlight2" : "Parsley"
-    },
-    
-    { "productId" : "2",
-        "name" : "Annette Kotter",
-        "description" : "Specializing in custom components.  PHP servers.",
-        "price" : 55,
-        "image" : "assets/pic/akotter.jpg",
-        "experience" : 3,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "Custom Components",
-		"highlight2" : "PHP"
-    },
-
-    { "productId" : "3",
-        "name" : "Ben Crater",
-        "description" : "Specializing in BlazeDS backends.",
-        "price" : 55,
-        "image" : "assets/pic/bcrater.jpg",
-        "experience" : 4,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Remote Object"
-    },
-
-    { "productId" : "4",
-        "name" : "Beth Leporte",
-        "description" : "BlazeDS or PHP servers.  Multimedia messagin.",
-        "price" : 70.00,
-        "image" : "assets/pic/bleporte.jpg",
-        "experience" : 6,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "Multimedia messaging",
-		"highlight2" : "BlazeDS"
-    },
-
-    { "productId" : "5",
-        "name" : "Brad Van Brocklin",
-        "description" : "Emphasis on mobile application development",
-        "price" : 80,
-        "image" : "assets/pic/bvanbrocklin.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : false,
-        "highlight1" : "Mobile",
-		"highlight2" : "Android"
-    },
-
-    { "productId" : "6",
-        "name" : "Carlos Carpenter",
-        "description" : "Built many mobile apps and video apps.",
-        "price" : 80,
-        "image" : "assets/pic/ccarpenter.jpg",
-        "experience" : 4,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Mobile",
-		"highlight2" : "Video"
-    },
-
-    { "productId" : "7",
-        "name" : "Christine Lampberto",
-        "description" : "7 years experience building mobile applications.",
-        "price" : 90,
-        "image" : "assets/pic/clampberto.jpg",
-        "experience" : 7,
-        "blazeds" : true,
-        "mobile" : true,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Mobile"
-    },
-
-    { "productId" : "8",
-        "name" : "Dee Dee Avenon",
-        "description" : "I've been making video apps for over 5 years and mobile apps for about 3 years.",
-        "price" : 100,
-        "image" : "assets/pic/davenon.jpg",
-        "experience" : 10,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "9",
-        "name" : "Denise McGoyal",
-        "description" : "Specializing in video sharing applicaions.  MObile apps too.",
-        "price" : 100,
-        "image" : "assets/pic/dmcgoyal.jpg",
-        "experience" : 5,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "10",
-        "name" : "Daniel Willhelm",
-        "description" : "I'm into mobile apps, video apps and social apps.",
-        "price" : 70,
-        "image" : "assets/pic/dwillhelm.jpg",
-        "experience" : 90,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "11",
-        "name" : "Eunice Sunderland",
-        "description" : "My recent focus is on mobile apps, but I have considerable experience in video apps as well.",
-        "price" : 150,
-        "image" : "assets/pic/esunderland.jpg",
-        "experience" : 30,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "12",
-        "name" : "Jane Proctor",
-        "description" : "I've been developing mobile companion apps for the past 3 years.",
-        "price" : 75,
-        "image" : "assets/pic/jproctor.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "13",
-        "name" : "Mark Fields",
-        "description" : "Video is my favorite thing.  Mobile is also a favorite.",
-        "price" : 60,
-        "image" : "assets/pic/mfields.jpg",
-        "experience" : 70,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "14",
-        "name" : "Patricia Dempsey",
-        "description" : "I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.",
-        "price" : 120,
-        "image" : "assets/pic/pdempsey.jpg",
-        "experience" : 7,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "15",
-        "name" : "Paul Trandep",
-        "description" : "I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'",
-        "price" : 50,
-        "image" : "assets/pic/ptranep.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "16",
-        "name" : "Roscoe Crawley",
-        "description" : "My main specialty is in BlazeDS connected to Flex.",
-        "price" : 59,
-        "image" : "assets/pic/rcrawley.jpg",
-        "experience" : 9,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Remote Object"
-    },
-
-    { "productId" : "17",
-        "name" : "Renee Dreifus",
-            "description" : "I can do it all: BlazeDS, Mobile, Video.",
-        "price" : 79,
-        "image" : "assets/pic/rdreifus.jpg",
-        "experience" : 90,
-        "blazeds" : true,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "18",
-        "name" : "Tina Wong",
-        "description" : "I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.",
-        "price" : 109,
-        "image" : "assets/pic/twong.jpg",
-        "experience" : 9,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    
-];

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/data/catalog.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/data/catalog.xml b/examples/flexjs/FlexJSStore/src/data/catalog.xml
deleted file mode 100755
index 423e177..0000000
--- a/examples/flexjs/FlexJSStore/src/data/catalog.xml
+++ /dev/null
@@ -1,256 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- 
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You 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.
- 
- -->
-<catalog>
-
-    <product productId="1">
-        <name>Andrew Brilliam</name>
-        <description>15 years experience. 8 years with Flex.  Specializing in Text Layout Framework</description>
-        <price>60.00</price>
-        <image>assets/pic/abrilliam.jpg</image>
-        <experience>15</experience>
-        <blazeds>false</blazeds>
-        <mobile>false</mobile>
-        <video>false</video>
-        <highlight1>Text Layout Framework</highlight1>
-		<highlight2>Parsley</highlight2>
-    </product>
-
-    <product productId="2">
-        <name>Annette Kotter</name>
-        <description>Specializing in custom components.  PHP servers.</description>
-        <price>55</price>
-        <image>assets/pic/akotter.jpg</image>
-        <experience>3</experience>
-        <blazeds>true</blazeds>
-        <mobile>false</mobile>
-        <video>false</video>
-        <highlight1>Custom Components</highlight1>
-		<highlight2>PHP</highlight2>
-    </product>
-
-    <product productId="3">
-        <name>Ben Crater</name>
-        <description>Specializing in BlazeDS backends.</description>
-        <price>55</price>
-        <image>assets/pic/bcrater.jpg</image>
-        <experience>4</experience>
-        <blazeds>true</blazeds>
-        <mobile>false</mobile>
-        <video>false</video>
-        <highlight1>BlazeDS</highlight1>
-		<highlight2>Remote Object</highlight2>
-    </product>
-
-    <product productId="4">
-        <name>Beth Leporte</name>
-        <description>BlazeDS or PHP servers.  Multimedia messagin.</description>
-        <price>70.00</price>
-        <image>assets/pic/bleporte.jpg</image>
-        <experience>6</experience>
-        <blazeds>true</blazeds>
-        <mobile>false</mobile>
-        <video>false</video>
-        <highlight1>Multimedia messaging</highlight1>
-		<highlight2>BlazeDS</highlight2>
-    </product>
-
-    <product productId="5">
-        <name>Brad Van Brocklin</name>
-        <description>Emphasis on mobile application development</description>
-        <price>80</price>
-        <image>assets/pic/bvanbrocklin.jpg</image>
-        <experience>6</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>false</video>
-        <highlight1>Mobile</highlight1>
-		<highlight2>Android</highlight2>
-    </product>
-
-    <product productId="6">
-        <name>Carlos Carpenter</name>
-        <description>Built many mobile apps and video apps.</description>
-        <price>80</price>
-        <image>assets/pic/ccarpenter.jpg</image>
-        <experience>4</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Mobile</highlight1>
-		<highlight2>Video</highlight2>
-    </product>
-
-    <product productId="7">
-        <name>Christine Lampberto</name>
-        <description>7 years experience building mobile applications.</description>
-        <price>90</price>
-        <image>assets/pic/clampberto.jpg</image>
-        <experience>7</experience>
-        <blazeds>true</blazeds>
-        <mobile>true</mobile>
-        <video>false</video>
-        <highlight1>BlazeDS</highlight1>
-		<highlight2>Mobile</highlight2>
-    </product>
-
-    <product productId="8">
-        <name>Dee Dee Avenon</name>
-        <description>I've been making video apps for over 5 years and mobile apps for about 3 years.</description>
-        <price>100</price>
-        <image>assets/pic/davenon.jpg</image>
-        <experience>10</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="9">
-        <name>Denise McGoyal</name>
-        <description>Specializing in video sharing applicaions.  MObile apps too.</description>
-        <price>100</price>
-        <image>assets/pic/dmcgoyal.jpg</image>
-        <experience>5</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="10">
-        <name>Daniel Willhelm</name>
-        <description>I'm into mobile apps, video apps and social apps.</description>
-        <price>70</price>
-        <image>assets/pic/dwillhelm.jpg</image>
-        <experience>90</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="11">
-        <name>Eunice Sunderland</name>
-        <description>My recent focus is on mobile apps, but I have considerable experience in video apps as well.</description>
-        <price>150</price>
-        <image>assets/pic/esunderland.jpg</image>
-        <experience>30</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="12">
-        <name>Jane Proctor</name>
-        <description>I've been developing mobile companion apps for the past 3 years.</description>
-        <price>75</price>
-        <image>assets/pic/jproctor.jpg</image>
-        <experience>6</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="13">
-        <name>Mark Fields</name>
-        <description>Video is my favorite thing.  Mobile is also a favorite.</description>
-        <price>60</price>
-        <image>assets/pic/mfields.jpg</image>
-        <experience>70</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="14">
-        <name>Patricia Dempsey</name>
-        <description>I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.</description>
-        <price>120</price>
-        <image>assets/pic/pdempsey.jpg</image>
-        <experience>7</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="15">
-        <name>Paul Trandep</name>
-        <description>I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'</description>
-        <price>50</price>
-        <image>assets/pic/ptranep.jpg</image>
-        <experience>6</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="16">
-        <name>Roscoe Crawley</name>
-        <description>My main specialty is in BlazeDS connected to Flex.</description>
-        <price>59</price>
-        <image>assets/pic/rcrawley.jpg</image>
-        <experience>9</experience>
-        <blazeds>true</blazeds>
-        <mobile>false</mobile>
-        <video>false</video>
-        <highlight1>BlazeDS</highlight1>
-		<highlight2>Remote Object</highlight2>
-    </product>
-
-    <product productId="17">
-        <name>Renee Dreifus</name>
-            <description>I can do it all: BlazeDS, Mobile, Video.</description>
-        <price>79</price>
-        <image>assets/pic/rdreifus.jpg</image>
-        <experience>90</experience>
-        <blazeds>true</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="18">
-        <name>Tina Wong</name>
-        <description>I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.</description>
-        <price>109</price>
-        <image>assets/pic/twong.jpg</image>
-        <experience>9</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-</catalog>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main.css b/examples/flexjs/FlexJSStore/src/main.css
deleted file mode 100755
index 0787a24..0000000
--- a/examples/flexjs/FlexJSStore/src/main.css
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-*/
-
-@namespace basic "library://ns.apache.org/flexjs/basic";
-
-/*
-//----------------------------
-//  Global styles
-//----------------------------
-*/
-.global {
-    IStatesImpl:            ClassReference("org.apache.flex.core.StatesWithTransitionsImpl");
-    color:                  #170505;
-    fillAlphas:             1.00, 1.00; /* last pair are for OVER state */
-    fillColors: 		    #FFFFFF, #DDDDDD, #FFFFFF, #EEEEEE;
-}
-
-global {
-    IStatesImpl:            ClassReference("org.apache.flex.core.StatesWithTransitionsImpl");
-}
-
-/*
-//----------------------------
-// Type selectors
-//----------------------------
-
-HRule
-{
-    color:                  #666666;
-}
-*/
-
-/*
-//----------------------------
-// Named styles
-//----------------------------
-*/
-.glass {
-    borderColor:		    #767473;
-    fillAlphas: 		    .60, .60, .60, .60;
-    fillColors: 		    #888888, #F3F3F3, #9E9E9E, #FCFCFC;
-    highlightAlphas:	    .07, .45;
-}
-
-.glassSlider
-{
-    fillAlphas: 		    .80, .80, .80, .80;
-    fillColors: 		    #F3F3F3, #BBBBBB, #FCFCFC, #CCCCCC;
-}
-
-.listItem
-{
-    paddingLeft:            4;
-    paddingRight:           4;
-    horizontalGap:          5;
-    verticalAlign:          "middle";
-    backgroundColor:        #FFFFFF;
-    backgroundAlpha:        .5;
-    borderStyle:            "outset";
-}
-
-basic|Container
-{
-    IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
-}
-
-.sectionHeader
-{
-    fontWeight:             "bold";
-    fontSize:               11;
-}
-
-.homeSection
-{
-    cornerRadius:           4;
-    borderStyle:            "solid";
-}
-
-.hoverButton
-{
-    height: 20px;
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml b/examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml
new file mode 100755
index 0000000..8f4ade3
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/FlexJSStore.mxml
@@ -0,0 +1,268 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+                xmlns:js="library://ns.apache.org/flexjs/basic" 
+                xmlns="*"
+                initialize="startService()"
+			    pageTitle="FlexStore">
+	
+	<fx:Script>
+		<![CDATA[	
+            import org.apache.flex.core.ValuesManager;
+            
+            /*
+			private var currentTheme:String = "beige";
+			
+			private function toggleTheme():void
+			{
+				if (currentTheme == "beige")
+				{
+					currentTheme = "blue";
+				}
+				else
+				{
+					currentTheme = "beige";
+				}
+				
+				loadStyle();
+			}
+			*/
+            
+			private function startService():void
+			{
+				productService.send();
+			}
+			
+			private function loadStyle():void
+			{
+                /* load css not implemented yet
+				var eventDispatcher:IEventDispatcher =
+					styleManager.loadStyleDeclarations(currentTheme + ".swf");
+				eventDispatcher.addEventListener(StyleEvent.COMPLETE, completeHandler);
+                */
+			}
+			
+			private function completeHandler(event:Event):void
+			{
+				image.source = ValuesManager.valuesImpl.getValue(acb, "storeLogo");
+                /*
+				super.initialized = true;
+                */
+                callLater.callLater(prebake);
+			}
+			
+            /*
+			override public function set initialized(value:Boolean):void
+			{
+				// Hold off until the Runtime CSS SWF is done loading.
+			}
+            */
+            
+            private var stateChain:Array;
+            
+            private function headHome():void
+            {
+                homeButton.selected = true;
+                if (initialView.currentState == "ProductsState")
+                {
+                    productsButton.selected = false;
+                    stateChain = ["ProductsWipeUp", "HomeWipeDown", "HomeState"];
+                    initialView.currentState = "ProductsWipeUp";
+                }
+                else if (initialView.currentState == "SupportState")
+                {
+                    supportButton.selected = false;
+                    stateChain = ["SupportWipeUp", "HomeWipeDown", "HomeState"];
+                    initialView.currentState = "SupportWipeUp";                    
+                }
+            }
+            
+            private function headToProducts():void
+            {
+                productsButton.selected = true;
+                if (initialView.currentState == "SupportState")
+                {
+                    supportButton.selected = false;
+                    stateChain = ["SupportWipeUp", "ProductsWipeDown", "ProductsState"];
+                    initialView.currentState = "SupportWipeUp";                    
+                }
+                if (initialView.currentState == "HomeState")
+                {
+                    homeButton.selected = false;
+                    stateChain = ["HomeWipeUp", "ProductsWipeDown", "ProductsState"];
+                    initialView.currentState = "HomeWipeUp";                    
+                }
+            }
+            
+            private function headToSupport():void
+            {
+                supportButton.selected = true;
+                if (initialView.currentState == "ProductsState")
+                {
+                    productsButton.selected = false;
+                    stateChain = ["ProductsWipeUp", "SupportWipeDown", "SupportState"];
+                    initialView.currentState = "ProductsWipeUp";                    
+                }
+                if (initialView.currentState == "HomeState")
+                {
+                    homeButton.selected = false;
+                    stateChain = ["HomeWipeUp", "SupportWipeDown", "SupportState"];
+                    initialView.currentState = "HomeWipeUp";                    
+                }
+            }
+            
+            private function prebake():void
+            {
+                callLater.callLater(prebake2);
+            }
+            
+            private function prebake2():void
+            {
+                trace("prebake2");
+                stateChain = ["ProductsPreBake", "HomeState"];
+                initialView.currentState = "ProductsPreBake";
+            }
+                
+            private function chainStatesIfNeeded():void
+            {
+                if (stateChain != null)
+                {
+                    if (initialView.currentState == stateChain[0])
+                    {
+                        callLater.callLater(nextState);
+                    }
+                }
+            }
+            
+            private function nextState():void
+            {
+                stateChain.shift();
+                if (stateChain.length)
+                    initialView.currentState = stateChain[0];
+                else
+                    stateChain = null;
+            }
+		]]>
+	</fx:Script>
+	
+	<fx:Style source="main.css"/>
+    <fx:Style source="beige.css"/>
+	
+    <fx:Declarations>
+        <js:HTTPService id="productService" url="data/catalog.json">
+            <js:LazyCollection id="catalog" complete="if (pView) pView.catalog = catalog">
+                <js:inputParser>
+                    <js:JSONInputParser />
+                </js:inputParser>
+                <js:itemConverter>
+                    <ProductJSONItemConverter />
+                </js:itemConverter> 
+            </js:LazyCollection>
+        </js:HTTPService>        
+    </fx:Declarations>
+    <js:valuesImpl>
+        <js:SimpleCSSValuesImpl />
+    </js:valuesImpl>
+	<js:beads>
+        <js:ViewSourceContextMenuOption />
+        <js:CallLaterBead id="callLater" />
+        <js:ApplicationDataBinding />
+    </js:beads>
+    <js:initialView>
+        <js:View	width="990" height="585"
+                        initComplete="completeHandler(null)"
+                        stateChangeComplete="chainStatesIfNeeded()">
+            <js:states>
+                <js:State name="HomeState" stateGroups="['Home']" />
+                <js:State name="HomeWipeUp" stateGroups="['Home']" />
+                <js:State name="HomeWipeDown" stateGroups="['Home']" />
+                <js:State name="ProductsPreBake" stateGroups="['Home', 'Products']" />
+                <js:State name="ProductsState" stateGroups="['Products']" />
+                <js:State name="ProductsWipeUp" stateGroups="['Products']" />
+                <js:State name="ProductsWipeDown" stateGroups="['Products']" />
+                <js:State name="SupportState" stateGroups="['Support']" />
+                <js:State name="SupportWipeUp" stateGroups="['Support']" />
+                <js:State name="SupportWipeDown" stateGroups="['Support']" />
+            </js:states>
+            
+            <js:transitions>
+                <js:Transition fromState="HomeState" toState="HomeWipeUp">
+                    <js:Wipe direction="up" target="homeView" />
+                </js:Transition>
+                <js:Transition fromState="HomeWipeDown" toState="HomeState">
+                    <js:Wipe direction="down" target="homeView" />
+                </js:Transition>
+                <js:Transition fromState="ProductsState" toState="ProductsWipeUp">
+                    <js:Wipe direction="up" target="pView" />
+                </js:Transition>
+                <js:Transition fromState="ProductsWipeDown" toState="ProductsState">
+                    <js:Wipe direction="down" target="pView" />
+                </js:Transition>
+                <js:Transition fromState="SupportState" toState="SupportWipeUp">
+                    <js:Wipe direction="up" target="supportView" />
+                </js:Transition>
+                <js:Transition fromState="SupportWipeDown" toState="SupportState">
+                    <js:Wipe direction="down" target="supportView" />
+                </js:Transition>
+            </js:transitions>
+            <js:beads>
+                <js:VerticalLayout />
+            </js:beads>
+            <js:ControlBar id="acb" width="100%" className="storeControlBar" >
+                <js:beads>
+                    <js:HorizontalLayout />
+                </js:beads>
+                <js:Image id="image" />
+                         <!-- click="toggleTheme()" -->
+                         <!-- toolTip="Change Theme"/ -->
+                <js:ToggleTextButton id="homeButton"
+                                text="Home"
+                                height="100%"
+                                selected="true"
+                                className="storeButtonBar"
+                                click="headHome()" />
+                <js:ToggleTextButton id="productsButton"
+                                text="Products"
+                                height="100%"
+                                className="storeButtonBar"
+                                click="headToProducts()"/>
+                <js:ToggleTextButton id="supportButton"
+                                text="Support"
+                                height="100%"
+                                className="storeButtonBar"
+                                click="headToSupport()"/>            
+            </js:ControlBar>
+            <js:Container width="990" id="viewholder">
+                <js:style>
+                    <js:SimpleCSSStyles paddingLeft="0" paddingRight="0"/>
+                </js:style>
+                        
+                <HomeView id="homeView" width="100%" height="550" includeIn="Home"
+                          />
+                <ProductsView id="pView" includeIn="Products" visible.ProductsPreBake="false"
+                              width="100%" height="550" initComplete="if (catalog.length) pView.catalog = catalog"
+                              />
+                <SupportView id="supportView" includeIn="Support"
+                             width="100%" height="550"
+                             />
+            </js:Container>
+        </js:View>        
+    </js:initialView>    
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml b/examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml
new file mode 100755
index 0000000..6e237d2
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/HomeView.mxml
@@ -0,0 +1,194 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<!--
+This component is primarily static and is only meant to show what other
+pages of the store could look like.
+
+Note that this page was put together in the Design view so you'll see more
+hard coded locations and sizes.
+
+Also note when working with a Canvas that using the constraint styles 
+(e.g., left, top, right, bottom) can provide better layout predictability than 
+using x and y, especially when percentage widths and heights are used.
+
+Width and height are hard-coded in the root tag to help the Design view.
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+         xmlns:js="library://ns.apache.org/flexjs/basic" 
+           xmlns="*" width="990" height="550"
+           initComplete="updateMapImage()">
+	<fx:Script>
+		<![CDATA[
+            import org.apache.flex.core.ValuesManager;
+			import org.apache.flex.html.SimpleAlert;
+
+			public function updateMapImage():void
+			{
+				mapImage.source = ValuesManager.valuesImpl.getValue(mapCanvas, 'dottedMap');
+			}
+		]]>
+	</fx:Script>
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+	<js:HContainer width="100%" height="100%" y="0" x="0" className="colorPanel">
+		<js:VContainer width="230" height="100%">
+			<js:Container width="100%" height="100%">
+			
+				<js:Container height="60" className="homeSection">
+                    <js:style>
+                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="10" right="10"/>
+                    </js:style>
+					<js:Label style="left:10;top:10" text="Search Developers" height="22" className="sectionHeader" />
+					<js:TextButton style="left:168;top:30" text="Go" width="27" height="20" className="glass" click="SimpleAlert.show('This feature is not implemented in this sample', 'Go')"/>
+					<js:TextInput style="left:10;top:30" height="20" width="150"/>
+				</js:Container>
+				
+				<js:Container height="280" className="homeSection">
+                    <js:style>
+                        <js:SimpleCSSStyles backgroundColor="#ffffff" left="10" top="78" right="10" />                        
+                    </js:style>
+					<js:VContainer width="100%" height="100%">
+                        <js:style>
+                            <js:SimpleCSSStyles left="10" top="10" />                        
+                        </js:style>
+						<js:Label text="Flex Experts That Can Help You" className="sectionHeader"/>
+						<js:HRule height="5" width="187" style="marginLeft:0"/>
+						<js:Label text="General" className="homeProgramHeader"/>
+						<js:Label text="BlazeDS Experts" style="fontSize:9"/>
+						<js:Spacer height="8" width="100%"/>
+						<js:Label text="Server-side" className="homeProgramHeader"/>
+						<js:Label text="Java, PHP Developers" style="fontSize:9"/>
+						<js:Spacer height="8" width="100%"/>
+						<js:Label text="Mobile" className="homeProgramHeader"/>
+						<js:Label text="Android, IOS and more" style="fontSize:9"/>
+						<js:Spacer height="8" width="100%"/>
+						<js:Label text="Students" className="homeProgramHeader"/>
+						<js:Label text="Free Assistance" style="fontSize:9"/>
+						<js:Spacer height="8" width="100%"/>
+					</js:VContainer>
+				</js:Container>
+				
+				<js:Container height="174" className="homeSection">
+                    <js:style>
+                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="366" right="10" />
+                    </js:style>
+					<js:VContainer width="100%" height="100%">
+                        <js:style>
+                            <js:SimpleCSSStyles left="10" top="10" />
+                        </js:style>
+						<js:Label text="Manage My Account" className="sectionHeader"/>
+						
+						<js:Label text="Phone Number"/>
+						
+						<js:HContainer width="100%" height="25" >
+                            <js:style>
+                                <js:SimpleCSSStyles verticalAlign="middle" />
+                            </js:style>
+							<js:TextInput height="20" width="40"/>
+							<js:HRule width="8" height="2"/>
+							<js:TextInput height="20" width="40"/>
+							<js:HRule width="8" height="2"/>
+							<js:TextInput height="20" width="40"/>
+						</js:HContainer>
+						
+						<js:Label text="Password"/>
+						<js:TextInput height="20"/>
+						<js:Spacer height="8" width="100%"/>
+						
+						<js:CheckBox text="Remember my phone number" selected="true"/>
+						<js:Spacer height="8" width="100%"/>
+						
+						<js:TextButton text="Login" className="glass" height="20" width="55" click="SimpleAlert.show('This feature is not implemented in this sample', 'Login')"/>
+						
+					</js:VContainer>
+				</js:Container>
+				
+			</js:Container>
+			
+		</js:VContainer>
+		
+		<js:VContainer width="750" height="100%">
+			<js:Container width="100%" height="100%">
+			
+			    <!-- can't use binding to set the mapImage source because the style isn't available early enough -->
+				<js:Container id="mapCanvas" height="35%" className="homeMap">
+                    <js:style>
+                        <js:SimpleCSSStyles left="0" right="10" top="10" />
+                    </js:style>
+					<js:Image id="mapImage" width="487" height="100%" alpha="1.0" style="left:10;top:10"/>
+					<js:Label y="110" text="US Developers . Flex . FlexJS" width="95%" height="40" style="margin:auto;fontWeight:'bold';fontSize:22;color:#ffffff;fontFamily:'Arial';textAlign:'center'"/>
+					<js:Label text="Learn More &gt;&gt;" width="95" style="fontSize:12;fontFamily:'Arial';bottom:10;right:10"/>
+					<js:Label text="$60/hr" style="color:#ffffff;fontWeight:'bold';fontFamily:'Arial';fontSize:20;right:10:top:10"/>
+					<js:Label text="Rates as low as" x="551" y="16" style="fontSize:12"/>
+				</js:Container>
+				
+				<js:Container height="330" >
+                    <js:style>
+                        <js:SimpleCSSStyles backgroundColor="#ffffff" borderStyle="solid" bottom="10" right="10" left="0" /> <!-- cornerRadius="4" -->
+                    </js:style>
+					
+					<js:Label style="left:10;top:10" text="Featured Developers" width="173" height="25" className="sectionHeader"/>
+					
+					<js:HContainer style="left:10;top:43" width="100%" height="100%">
+						<js:VContainer width="33%" height="100%">
+							<js:Container width="100%">
+								<js:Image id="image1" source="assets/akotter.jpg" style="margin:auto;verticalCenter:0"/>
+							</js:Container>
+							
+							<js:Container width="100%">
+								<js:Label text="Annette Kotter" id="feat_prod_1" style="margin:auto;fontWeight:'bold';fontSize:12"/>
+							</js:Container>
+							
+						</js:VContainer>
+						
+						<js:VContainer width="33%" height="100%">							
+							<js:Container width="100%">
+								<js:Image id="image2" style="margin:auto;verticalCenter:0" source="assets/bcrater.jpg"/>
+							</js:Container>
+							
+							<js:Container width="100%">
+								<js:Label text="Ben Crater" id="feat_prod_2" style="margin:auto;fontWeight:'bold';fontSize:12"/>
+							</js:Container>
+							
+						</js:VContainer>
+						
+						<js:VContainer width="33%" height="100%">
+							<js:Container width="100%">
+								<js:Image id="image3" style="margin:auto;verticalCenter:0" source="assets/jproctor.jpg"/>
+							</js:Container>
+							
+							<js:Container width="100%">
+								<js:Label text="Jane Proctor" id="feat_prod_3" style="margin:auto;fontWeight:'bold';fontSize:12"/>
+							</js:Container>
+							
+						</js:VContainer>
+						
+					</js:HContainer>
+					
+				</js:Container>
+				
+			</js:Container>
+		
+		</js:VContainer>
+		
+	</js:HContainer>
+	
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/ProductJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/ProductJSONItemConverter.as b/examples/flexjs/FlexJSStore/src/main/flex/ProductJSONItemConverter.as
new file mode 100755
index 0000000..cb27bde
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/ProductJSONItemConverter.as
@@ -0,0 +1,41 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package
+{
+    import org.apache.flex.collections.converters.JSONItemConverter;
+    
+    import samples.flexstore.Product;
+    
+    public class ProductJSONItemConverter extends JSONItemConverter
+    {
+        public function ProductJSONItemConverter()
+        {
+            super();
+        }
+        
+        override public function convertItem(data:String):Object
+        {
+            var obj:Object = super.convertItem(data);
+            var product:Product = new Product();
+            for (var p:String in obj)
+                product[p] = obj[p];
+			return product;
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/ProductsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/ProductsView.mxml b/examples/flexjs/FlexJSStore/src/main/flex/ProductsView.mxml
new file mode 100755
index 0000000..579de46
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/ProductsView.mxml
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<!-- width and height hard-coded in the root tag to better support the 
+     Design view in FlexBuilder since we know the width and height from the 
+     settings in flexstore.mxml -->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+         xmlns:js="library://ns.apache.org/flexjs/basic" 
+    xmlns:productsView="productsView.*"
+    width="990" height="550"
+    currentState="showFilter"
+    >
+
+    <fx:Script>
+        <![CDATA[
+        import org.apache.flex.events.Event;
+        import org.apache.flex.collections.LazyCollection;
+        import samples.flexstore.Product;
+                
+        private var _catalog:LazyCollection;
+        
+        [Bindable("catalogChange")]
+        public function get catalog():LazyCollection
+        {
+            return _catalog;
+        }
+        
+        public function set catalog(c:LazyCollection):void
+        {
+            _catalog = c;
+            if (filterPanel != null)
+            {
+                filterPanel.filter.count = c.length;
+            }
+            dispatchEvent(new org.apache.flex.events.Event("catalogChange"));
+        }
+        
+        public function addToCompare(product:Product):void
+        {
+            //setting the state before adding the product avoids jumpiness in the transition, not sure why
+            currentState = 'showFilter';
+            filterPanel.productList.addProduct(product);
+        }
+        
+        public function addToCart(product:Product):void
+        {
+            //setting the state before adding the product avoids jumpiness in the transition, not sure why
+            currentState = 'showCart'; 
+            cartPanel.productList.addProduct(product);
+        }
+        
+        
+        ]]>
+    </fx:Script>
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+    <js:Container 
+        className="colorPanel"
+        height="100%" width="100%" 
+        >
+        <js:beads>
+            <js:OneFlexibleChildHorizontalLayout flexibleChild="spacer" />
+        </js:beads>
+        <productsView:Grip id="filterGrip" gripIcon="assets/icon_magnifier.png" 
+            gripTip="Show filter panel" click="currentState = 'showFilter'"/>
+    
+        <productsView:ProductFilterPanel x="{filterGrip.width}" y="0" id="filterPanel" width="265" height="100%"
+            filter="catalogPanel.filter(event.filter, event.live)"
+            compare="catalogPanel.compare(filterPanel.productList.getProducts())"
+            initComplete="if (catalog) filterPanel.filter.count = catalog.length"/>
+    
+        <js:Spacer id="spacer" />
+        
+        <productsView:ProductCart id="cartPanel" width="265" height="100%" />
+
+        <productsView:Grip id="cartGrip" gripIcon="assets/icon_cart_empty.png"
+            gripTip="Show cart" click="currentState = 'showCart'" />
+    
+    </js:Container>
+        
+    <productsView:ProductCatalogPanel id="catalogPanel" y="4" width="685" height="540"
+                                      x.showFilter="288" x.showCart="0"
+        catalog="{catalog}"
+        compare="addToCompare(event.product)"
+        purchase="addToCart(event.product)"
+        cartCount="{cartPanel.numProducts}">
+    </productsView:ProductCatalogPanel>
+    
+    <js:states>
+       <js:State name="showFilter" />
+       <js:State name="showCart" />
+    </js:states>
+    
+    <!-- 
+      make sure to use transitions here instead of applying a Move effect
+      to the Panel itself which will result in odd behavior
+    -->
+    <js:transitions>
+       <js:Transition fromState="*" toState="*">
+          <js:Move target="catalogPanel" />
+       </js:Transition>
+    </js:transitions>
+        
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml b/examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml
new file mode 100755
index 0000000..3d30a9d
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/SupportView.mxml
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<!--
+This component is primarily static and is only meant to show what other
+pages of the store could look like.
+
+Note that this page was put together in the Design view so you'll see more
+hard coded locations and sizes.
+
+We did not have sizing issues here as much so you'll see more hardcoded 
+"y" values rather than "top."
+
+The width and height are hard-coded in the root tag to help the Design view.
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+                 xmlns:js="library://ns.apache.org/flexjs/basic" 
+                 xmlns="*" alpha="1.0"
+    width="990" height="550">
+	
+	<fx:Script>
+	    <![CDATA[
+	       import org.apache.flex.html.SimpleAlert;
+	    ]]>
+	</fx:Script>
+	
+    <fx:Declarations>
+        <fx:Array id="locations">
+            <fx:Object image="assets/support_mapmarker_a.png" name="601 Townsend St" /> 
+            <fx:Object image="assets/support_mapmarker_b.png" name="Location B" />
+            <fx:Object image="assets/support_mapmarker_c.png" name="Location C" />	   	   
+        </fx:Array>   
+        
+    </fx:Declarations>
+	
+	<js:HContainer x="0" y="0" width="100%" height="100%" className="colorPanel">
+	
+		<js:VContainer width="32%" height="100%">
+			<js:Container width="100%" height="420">
+			
+				<js:Label y="10" text="Check Location" className="sectionHeader" x="20"/>
+				
+				<js:Container height="150" y="64" style="margin:auto">
+                    <js:beads>
+                        <js:VerticalColumnLayout numColumns="2" />
+                    </js:beads>
+					<js:Label text="Address:"/>
+					<js:TextInput id="address"/>
+					
+					<js:Label text="City:" style="marginTop:20"/>
+					<js:TextInput id="city" style="marginTop:20"/>						
+					
+					<js:Label text="State:" style="marginTop:20"/>
+					<js:DropDownList id="state" style="marginTop:20">
+						<js:dataProvider>
+                            <fx:Array>
+                                <fx:String>California</fx:String>
+                                <fx:String>Nevada</fx:String>
+                                <fx:String>Oregon</fx:String>
+                                <fx:String>Washington</fx:String>
+                            </fx:Array>                                    
+            			</js:dataProvider>
+					</js:DropDownList>
+					
+					<js:Label text="ZIP Code:" style="marginTop:20"/>
+					<js:TextInput id="zip" style="marginTop:20"/>
+					
+				</js:Container>
+				
+				<js:Label y="38" text="Option1: Enter Address" style="margin:auto" className="instructions"/>
+				
+				<js:TextButton y="297" text="Locate" click="SimpleAlert.show('This feature is not implemented in this sample', 'Locate')" 
+                                  style="margin:auto"/>
+				
+				<js:HContainer y="327" height="20" >
+                    <js:style>
+                        <js:SimpleCSSStyles margin="auto" verticalAlign="middle" />
+                    </js:style>
+					<js:HRule width="60" />
+					<js:Label text="OR"/>
+                    <js:HRule width="60" />
+				</js:HContainer>
+				
+				<js:Label y="355" text="Option 2: Drag this marker into the map" style="margin:auto" className="instructions"/>
+				
+				<js:Image y="380" style="margin:auto" source="assets/support_mapmarker_plus.png"/>
+				
+				<js:HRule y="415" style="margin:auto" width="200" alpha="0.6"/>
+				
+			</js:Container>
+			
+			<js:Container width="100%" height="130">
+				<js:VContainer width="80%" height="90%" >
+                    <js:style>
+                        <js:SimpleCSSStyles margin="auto" top="0"/>
+                    </js:style>
+					<js:Label text="Location" className="instructions"/>
+					<js:List width="100%" dataProvider="{locations}">
+                        <js:itemRenderer>
+                            <fx:Component>
+                                <js:DataItemRenderer className="listItem" width="100%">
+                                    <fx:Script>
+                                        <![CDATA[
+                                            import samples.flexstore.Product;
+                                            [Bindable("__NoChangeEvent__")]
+                                            private function get product():Product
+                                            {
+                                                return data as Product;
+                                            }
+                                        ]]>
+                                    </fx:Script>
+                                    <js:Image width="21" height="25" source="{product.image}" />
+                                    <js:Label width="100%" text="{product.name}" />
+                                </js:DataItemRenderer>                                                            
+                            </fx:Component>
+                        </js:itemRenderer>
+					</js:List>
+				</js:VContainer>
+			</js:Container>
+			
+		</js:VContainer>
+		
+		<js:Container width="68%" height="100%">
+			<js:Image source="assets/427px-Bayarea_map.png">
+                <js:style>
+                    <js:SimpleCSSStyles left="12" top="12"/>
+                </js:style>
+            </js:Image>
+		</js:Container>
+		
+	</js:HContainer>
+	
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/427px-Bayarea_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/427px-Bayarea_map.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/427px-Bayarea_map.png
new file mode 100644
index 0000000..a183699
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/427px-Bayarea_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/akotter.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/akotter.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/akotter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/bcrater.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/bcrater.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/bcrater.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_background.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_background.jpg
new file mode 100755
index 0000000..8f034ba
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_background.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_dotted_map.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_dotted_map.png
new file mode 100755
index 0000000..e88d9ef
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/beige_dotted_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_background.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_background.jpg
new file mode 100755
index 0000000..361ce0e
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_background.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_dotted_map.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_dotted_map.png
new file mode 100755
index 0000000..5fa6714
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/blue_dotted_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_empty.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_empty.png
new file mode 100644
index 0000000..0e1a2b5
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_empty.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_full.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_full.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_full.png
new file mode 100644
index 0000000..9c9eea0
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_cart_full.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/button_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_compare.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_compare.png
new file mode 100644
index 0000000..c2ac969
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_compare.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/button_details.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_details.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_details.png
new file mode 100644
index 0000000..3e6238c
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_details.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/button_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/button_tiles.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_tiles.png
new file mode 100644
index 0000000..4266a22
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/button_tiles.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/grip.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/grip.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/grip.png
new file mode 100755
index 0000000..64ee835
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/grip.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_cart_empty.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_cart_empty.png
new file mode 100644
index 0000000..562064b
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_cart_empty.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_compare.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_compare.png
new file mode 100644
index 0000000..efc3ea1
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_compare.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_magnifier.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_magnifier.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_magnifier.png
new file mode 100755
index 0000000..939f814
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_magnifier.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_tiles.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_tiles.png
new file mode 100644
index 0000000..dbf75b6
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/icon_tiles.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/jproctor.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/jproctor.jpg
new file mode 100755
index 0000000..1111787
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/jproctor.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_blue.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_blue.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_blue.png
new file mode 100755
index 0000000..85bad70
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_blue.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_orange.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_orange.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_orange.png
new file mode 100755
index 0000000..0ce7dc4
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/logo_orange.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/abrilliam.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/abrilliam.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/abrilliam.jpg
new file mode 100755
index 0000000..6954858
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/abrilliam.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/akotter.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/akotter.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/akotter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bcrater.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bcrater.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bcrater.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bleporte.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bleporte.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bleporte.jpg
new file mode 100755
index 0000000..c4769e8
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bleporte.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bvanbrocklin.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bvanbrocklin.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bvanbrocklin.jpg
new file mode 100755
index 0000000..489fa2e
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/bvanbrocklin.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ccarpenter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ccarpenter.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ccarpenter.jpg
new file mode 100755
index 0000000..c1dc3d8
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ccarpenter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/clampberto.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/clampberto.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/clampberto.jpg
new file mode 100755
index 0000000..9deacd2
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/clampberto.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/davenon.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/davenon.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/davenon.jpg
new file mode 100755
index 0000000..6a2a142
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/davenon.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dmcgoyal.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dmcgoyal.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dmcgoyal.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dmcgoyal.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dwillhelm.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dwillhelm.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dwillhelm.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/dwillhelm.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/esunderland.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/esunderland.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/esunderland.jpg
new file mode 100755
index 0000000..c4769e8
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/esunderland.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/jproctor.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/jproctor.jpg
new file mode 100755
index 0000000..1111787
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/jproctor.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/mfields.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/mfields.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/mfields.jpg
new file mode 100755
index 0000000..489fa2e
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/mfields.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/pdempsey.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/pdempsey.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/pdempsey.jpg
new file mode 100755
index 0000000..9deacd2
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/pdempsey.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ptranep.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ptranep.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ptranep.jpg
new file mode 100755
index 0000000..4b9a03b
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/ptranep.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rcrawley.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rcrawley.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rcrawley.jpg
new file mode 100755
index 0000000..9b60320
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rcrawley.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rdreifus.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rdreifus.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rdreifus.jpg
new file mode 100755
index 0000000..6a2a142
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/rdreifus.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/twong.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/twong.jpg b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/twong.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/pic/twong.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_a.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_a.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_a.png
new file mode 100755
index 0000000..20c21e1
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_a.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_b.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_b.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_b.png
new file mode 100755
index 0000000..069ccd8
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_b.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_c.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_c.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_c.png
new file mode 100755
index 0000000..f6b587e
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_c.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_plus.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_plus.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_plus.png
new file mode 100755
index 0000000..4192088
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/support_mapmarker_plus.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/assets/trashcan.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/assets/trashcan.png b/examples/flexjs/FlexJSStore/src/main/flex/assets/trashcan.png
new file mode 100644
index 0000000..483a37c
Binary files /dev/null and b/examples/flexjs/FlexJSStore/src/main/flex/assets/trashcan.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/beige.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/beige.css b/examples/flexjs/FlexJSStore/src/main/flex/beige.css
new file mode 100755
index 0000000..ce8f5ae
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/beige.css
@@ -0,0 +1,171 @@
+/*
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+*/
+
+/* Style for color-specific state - Beige */
+
+@namespace "library://ns.apache.org/flexjs/basic";
+
+/*
+//----------------------------
+//  Global styles
+//----------------------------
+*/
+.global
+{
+    highlightAlphas:        .5, .25;
+    borderColor:            #939A9D;
+    headerColors:           #A65904, #E68701;
+    themeColor:             #75B1CE;
+    rollOverColor:          #D6E6EE;
+    selectionColor:         #B8D5E4;
+}
+
+/*
+//----------------------------
+// Type selectors
+//----------------------------
+*/
+Application
+{
+    backgroundColor:		#EAE6DD;
+    backgroundImage:        "assets/beige_background.jpg";
+}
+
+/*
+//----------------------------
+// Apply to Panels and Alerts by default
+//----------------------------
+*/
+.windowStatus {
+	color: #FFCC99;
+}
+
+.windowStyles {		/* catalog panel's title text */
+	color: #FFCC99;
+}
+
+/*
+//----------------------------
+// Named styles
+//----------------------------
+*/
+
+.colorPanel /* for the background of some surfaces */
+{
+    borderStyle:            "solid";
+    borderWidth:        0;
+    backgroundColor:		#BCB29F;
+    backgroundAlpha:		0.4;
+    color: 					#170505;
+    cornerRadius:           4;
+    dropShadowEnabled:      true;
+}
+
+.homeProgramHeader /* in HomeView */
+{
+    fontWeight:             "bold";
+    fontSize:               13;
+    color:                  #BE7E3F;
+}
+
+.homeMap
+{
+    borderStyle:            "solid";
+    cornerRadius:           4;
+    backgroundColor:        #BE7E3F;
+    alpha:                  1;
+    dottedMap:              "assets/beige_dotted_map.png";
+}
+
+.instructions
+{
+    alpha:                  .85;
+    color:                  #5C5857;
+}
+
+.storeControlBar
+{
+    fillAlphas: 			.60, .40;
+    fillColors: 			#8F8879, #BCB29F;
+    highlightAlphas:		.05, .25;
+    cornerRadius: 			3;
+	shadowDistance:         4;
+	paddingLeft:            0;
+	paddingRight:           0;
+	paddingTop:             0;
+	paddingBottom:          0;
+	horizontalGap:          0;
+    storeLogo:              "assets/logo_orange.png";
+}
+
+.storeButtonBar
+{
+    cornerRadius:           0;
+    buttonStyleName:        "storeButton";
+    themeColor:             #A65904;
+}
+
+.storeButton
+{
+    cornerRadius:           0;
+    fillColors:             #8F8879, #BCB29F, #A65904, #E68701;
+    fillAlphas:             1, 1;
+    highlightAlphas:        .5, .25;
+    fontWeight:             "normal";
+    /** need to port to ButtonView 
+    selectedOverSkin:       ClassReference("samples.flexstore.ButtonBarButtonSkin");
+    selectedUpSkin:         ClassReference("samples.flexstore.ButtonBarButtonSkin");
+    overSkin:               ClassReference("samples.flexstore.ButtonBarButtonSkin");
+    **/
+}
+
+.catalogTitleButtonSelected
+{
+    color:                  #FFFFFF;
+    fontWeight:             "bold";
+}
+
+.catalogTitleButtonDeselected
+{
+    color:                  #222222;
+    fontWeight:             "bold";
+}
+
+.catalogTitleButtonHighlighted
+{
+    color:                  #FFCC99;
+    fontWeight:             "bold";
+}
+
+.catalogPanel
+{
+    highlightAlphas:        .5, .25;
+    headerColors:           #A65904, #E68701;
+    borderAlpha:            1;
+    borderColor:            #FFFFFF;
+    border-width: 1px;
+    borderThicknessRight:   1;
+    borderThicknessBottom:  1;
+    paddingRight:           0;
+    paddingBottom:          0;
+}
+
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/blue.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/blue.css b/examples/flexjs/FlexJSStore/src/main/flex/blue.css
new file mode 100755
index 0000000..5f8629b
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/blue.css
@@ -0,0 +1,165 @@
+/*
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+*/
+
+/* Style for color-specific state - Beige */
+
+/*
+//----------------------------
+//  Global styles
+//----------------------------
+*/
+.global
+{
+    highlightAlphas:        .5, .25;
+    borderColor:            #939A9D;
+    headerColors:           #456F84, #9ABBC9;
+    themeColor:             #75B1CE;
+    rollOverColor:          #D6E6EE;
+    selectionColor:         #B8D5E4;
+}
+
+/*
+//----------------------------
+// Type selectors
+//----------------------------
+*/
+Application
+{
+    backgroundColor:		#AAB2B7;
+    backgroundImage:        Embed("assets/blue_background.jpg");
+}
+
+/*
+//----------------------------
+// Apply to Panels and Alerts by default
+//----------------------------
+*/
+.windowStatus {
+	color: #BDE9FA;
+}
+
+.windowStyles {		/* catalog panel's title text */
+	color: #BDE9FA;
+}
+
+/*
+//----------------------------
+// Named styles
+//----------------------------
+*/
+
+.colorPanel /* for the background of some surfaces */
+{
+    borderStyle:            "solid";
+    borderThickness:        0;
+    backgroundColor:		#BDD6E2;
+    backgroundAlpha:		0.4;
+    color: 					#170505;
+    cornerRadius:           4;
+    dropShadowEnabled:      true;
+}
+
+.homeProgramHeader /* in HomeView */
+{
+    fontWeight:             "bold";
+    fontSize:               13;
+    color:                  #7AA4B9;
+}
+
+.homeMap
+{
+    borderStyle:            "solid";
+    cornerRadius:           4;
+    backgroundColor:        #7AA4B9;
+    alpha:                  1;
+    dottedMap:              Embed("assets/blue_dotted_map.png");
+}
+
+.instructions
+{
+    alpha:                  .85;
+    color:                  #5C5857;
+}
+
+.storeControlBar
+{
+    fillAlphas: 			.60, .40;
+    fillColors: 			#4A6F81, #BDD6E2;
+    highlightAlphas:		.05, .25;
+    cornerRadius: 			3;
+	shadowDistance:         4;
+	paddingLeft:            0;
+	paddingRight:           0;
+	paddingTop:             0;
+	paddingBottom:          0;
+	horizontalGap:          0;
+    storeLogo:              Embed("assets/logo_blue.png");
+}
+
+.storeButtonBar
+{
+    cornerRadius:           0;
+    buttonStyleName:        "storeButton";
+    themeColor:             #456F84;
+}
+
+.storeButton
+{
+    cornerRadius:           0;
+    fillColors:             #4A6F81, #BDD6E2, #456F84, #9ABBC9;
+    fillAlphas:             1, 1;
+    highlightAlphas:        .5, .25;
+    fontWeight:             "normal";
+    selectedOverSkin:       ClassReference("samples.flexstore.ButtonBarButtonSkin");
+    selectedUpSkin:         ClassReference("samples.flexstore.ButtonBarButtonSkin");
+    overSkin:               ClassReference("samples.flexstore.ButtonBarButtonSkin");
+}
+
+.catalogTitleButtonSelected
+{
+    color:                  #FFFFFF;
+    fontWeight:             "bold";
+}
+
+.catalogTitleButtonDeselected
+{
+    color:                  #222222;
+    fontWeight:             "bold";
+}
+
+.catalogTitleButtonHighlighted
+{
+    color:                  #BDE9FA;
+    fontWeight:             "bold";
+}
+
+.catalogPanel
+{
+    highlightAlphas:        .5, .25;
+    headerColors:           #456F84, #9ABBC9;
+    borderAlpha:            1;
+    borderColor:            #FFFFFF;
+    borderThicknessRight:   1;
+    borderThicknessBottom:  1;
+    paddingRight:           0;
+    paddingBottom:          0;
+}
+


[12/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.json b/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.json
new file mode 100755
index 0000000..89bdd43
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.json
@@ -0,0 +1,236 @@
+{ catalog : [
+
+    { "productId" :"1",
+      "name" : "Andrew Brilliam",
+      "description" : "15 years experience. 8 years with Flex.  Specializing in Text Layout Framework",
+      "price" : 60.00,
+      "image" : "assets/pic/abrilliam.jpg",
+      "experience" : 15,
+      "blazeds" : false,
+      "mobile" : false,
+      "video" : false,
+      "highlight1" : "Text Layout Framework",
+	  "highlight2" : "Parsley"
+    },
+    
+    { "productId" : "2",
+        "name" : "Annette Kotter",
+        "description" : "Specializing in custom components.  PHP servers.",
+        "price" : 55,
+        "image" : "assets/pic/akotter.jpg",
+        "experience" : 3,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "Custom Components",
+		"highlight2" : "PHP"
+    },
+
+    { "productId" : "3",
+        "name" : "Ben Crater",
+        "description" : "Specializing in BlazeDS backends.",
+        "price" : 55,
+        "image" : "assets/pic/bcrater.jpg",
+        "experience" : 4,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Remote Object"
+    },
+
+    { "productId" : "4",
+        "name" : "Beth Leporte",
+        "description" : "BlazeDS or PHP servers.  Multimedia messagin.",
+        "price" : 70.00,
+        "image" : "assets/pic/bleporte.jpg",
+        "experience" : 6,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "Multimedia messaging",
+		"highlight2" : "BlazeDS"
+    },
+
+    { "productId" : "5",
+        "name" : "Brad Van Brocklin",
+        "description" : "Emphasis on mobile application development",
+        "price" : 80,
+        "image" : "assets/pic/bvanbrocklin.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : false,
+        "highlight1" : "Mobile",
+		"highlight2" : "Android"
+    },
+
+    { "productId" : "6",
+        "name" : "Carlos Carpenter",
+        "description" : "Built many mobile apps and video apps.",
+        "price" : 80,
+        "image" : "assets/pic/ccarpenter.jpg",
+        "experience" : 4,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Mobile",
+		"highlight2" : "Video"
+    },
+
+    { "productId" : "7",
+        "name" : "Christine Lampberto",
+        "description" : "7 years experience building mobile applications.",
+        "price" : 90,
+        "image" : "assets/pic/clampberto.jpg",
+        "experience" : 7,
+        "blazeds" : true,
+        "mobile" : true,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Mobile"
+    },
+
+    { "productId" : "8",
+        "name" : "Dee Dee Avenon",
+        "description" : "I've been making video apps for over 5 years and mobile apps for about 3 years.",
+        "price" : 100,
+        "image" : "assets/pic/davenon.jpg",
+        "experience" : 10,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "9",
+        "name" : "Denise McGoyal",
+        "description" : "Specializing in video sharing applicaions.  MObile apps too.",
+        "price" : 100,
+        "image" : "assets/pic/dmcgoyal.jpg",
+        "experience" : 5,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "10",
+        "name" : "Daniel Willhelm",
+        "description" : "I'm into mobile apps, video apps and social apps.",
+        "price" : 70,
+        "image" : "assets/pic/dwillhelm.jpg",
+        "experience" : 90,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "11",
+        "name" : "Eunice Sunderland",
+        "description" : "My recent focus is on mobile apps, but I have considerable experience in video apps as well.",
+        "price" : 150,
+        "image" : "assets/pic/esunderland.jpg",
+        "experience" : 30,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "12",
+        "name" : "Jane Proctor",
+        "description" : "I've been developing mobile companion apps for the past 3 years.",
+        "price" : 75,
+        "image" : "assets/pic/jproctor.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "13",
+        "name" : "Mark Fields",
+        "description" : "Video is my favorite thing.  Mobile is also a favorite.",
+        "price" : 60,
+        "image" : "assets/pic/mfields.jpg",
+        "experience" : 70,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "14",
+        "name" : "Patricia Dempsey",
+        "description" : "I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.",
+        "price" : 120,
+        "image" : "assets/pic/pdempsey.jpg",
+        "experience" : 7,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "15",
+        "name" : "Paul Trandep",
+        "description" : "I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'",
+        "price" : 50,
+        "image" : "assets/pic/ptranep.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "16",
+        "name" : "Roscoe Crawley",
+        "description" : "My main specialty is in BlazeDS connected to Flex.",
+        "price" : 59,
+        "image" : "assets/pic/rcrawley.jpg",
+        "experience" : 9,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Remote Object"
+    },
+
+    { "productId" : "17",
+        "name" : "Renee Dreifus",
+            "description" : "I can do it all: BlazeDS, Mobile, Video.",
+        "price" : 79,
+        "image" : "assets/pic/rdreifus.jpg",
+        "experience" : 90,
+        "blazeds" : true,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "18",
+        "name" : "Tina Wong",
+        "description" : "I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.",
+        "price" : 109,
+        "image" : "assets/pic/twong.jpg",
+        "experience" : 9,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    
+];

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.xml b/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.xml
new file mode 100755
index 0000000..423e177
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/data/catalog.xml
@@ -0,0 +1,256 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ 
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements.  See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+ 
+ -->
+<catalog>
+
+    <product productId="1">
+        <name>Andrew Brilliam</name>
+        <description>15 years experience. 8 years with Flex.  Specializing in Text Layout Framework</description>
+        <price>60.00</price>
+        <image>assets/pic/abrilliam.jpg</image>
+        <experience>15</experience>
+        <blazeds>false</blazeds>
+        <mobile>false</mobile>
+        <video>false</video>
+        <highlight1>Text Layout Framework</highlight1>
+		<highlight2>Parsley</highlight2>
+    </product>
+
+    <product productId="2">
+        <name>Annette Kotter</name>
+        <description>Specializing in custom components.  PHP servers.</description>
+        <price>55</price>
+        <image>assets/pic/akotter.jpg</image>
+        <experience>3</experience>
+        <blazeds>true</blazeds>
+        <mobile>false</mobile>
+        <video>false</video>
+        <highlight1>Custom Components</highlight1>
+		<highlight2>PHP</highlight2>
+    </product>
+
+    <product productId="3">
+        <name>Ben Crater</name>
+        <description>Specializing in BlazeDS backends.</description>
+        <price>55</price>
+        <image>assets/pic/bcrater.jpg</image>
+        <experience>4</experience>
+        <blazeds>true</blazeds>
+        <mobile>false</mobile>
+        <video>false</video>
+        <highlight1>BlazeDS</highlight1>
+		<highlight2>Remote Object</highlight2>
+    </product>
+
+    <product productId="4">
+        <name>Beth Leporte</name>
+        <description>BlazeDS or PHP servers.  Multimedia messagin.</description>
+        <price>70.00</price>
+        <image>assets/pic/bleporte.jpg</image>
+        <experience>6</experience>
+        <blazeds>true</blazeds>
+        <mobile>false</mobile>
+        <video>false</video>
+        <highlight1>Multimedia messaging</highlight1>
+		<highlight2>BlazeDS</highlight2>
+    </product>
+
+    <product productId="5">
+        <name>Brad Van Brocklin</name>
+        <description>Emphasis on mobile application development</description>
+        <price>80</price>
+        <image>assets/pic/bvanbrocklin.jpg</image>
+        <experience>6</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>false</video>
+        <highlight1>Mobile</highlight1>
+		<highlight2>Android</highlight2>
+    </product>
+
+    <product productId="6">
+        <name>Carlos Carpenter</name>
+        <description>Built many mobile apps and video apps.</description>
+        <price>80</price>
+        <image>assets/pic/ccarpenter.jpg</image>
+        <experience>4</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Mobile</highlight1>
+		<highlight2>Video</highlight2>
+    </product>
+
+    <product productId="7">
+        <name>Christine Lampberto</name>
+        <description>7 years experience building mobile applications.</description>
+        <price>90</price>
+        <image>assets/pic/clampberto.jpg</image>
+        <experience>7</experience>
+        <blazeds>true</blazeds>
+        <mobile>true</mobile>
+        <video>false</video>
+        <highlight1>BlazeDS</highlight1>
+		<highlight2>Mobile</highlight2>
+    </product>
+
+    <product productId="8">
+        <name>Dee Dee Avenon</name>
+        <description>I've been making video apps for over 5 years and mobile apps for about 3 years.</description>
+        <price>100</price>
+        <image>assets/pic/davenon.jpg</image>
+        <experience>10</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="9">
+        <name>Denise McGoyal</name>
+        <description>Specializing in video sharing applicaions.  MObile apps too.</description>
+        <price>100</price>
+        <image>assets/pic/dmcgoyal.jpg</image>
+        <experience>5</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="10">
+        <name>Daniel Willhelm</name>
+        <description>I'm into mobile apps, video apps and social apps.</description>
+        <price>70</price>
+        <image>assets/pic/dwillhelm.jpg</image>
+        <experience>90</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="11">
+        <name>Eunice Sunderland</name>
+        <description>My recent focus is on mobile apps, but I have considerable experience in video apps as well.</description>
+        <price>150</price>
+        <image>assets/pic/esunderland.jpg</image>
+        <experience>30</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="12">
+        <name>Jane Proctor</name>
+        <description>I've been developing mobile companion apps for the past 3 years.</description>
+        <price>75</price>
+        <image>assets/pic/jproctor.jpg</image>
+        <experience>6</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="13">
+        <name>Mark Fields</name>
+        <description>Video is my favorite thing.  Mobile is also a favorite.</description>
+        <price>60</price>
+        <image>assets/pic/mfields.jpg</image>
+        <experience>70</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="14">
+        <name>Patricia Dempsey</name>
+        <description>I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.</description>
+        <price>120</price>
+        <image>assets/pic/pdempsey.jpg</image>
+        <experience>7</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="15">
+        <name>Paul Trandep</name>
+        <description>I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'</description>
+        <price>50</price>
+        <image>assets/pic/ptranep.jpg</image>
+        <experience>6</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="16">
+        <name>Roscoe Crawley</name>
+        <description>My main specialty is in BlazeDS connected to Flex.</description>
+        <price>59</price>
+        <image>assets/pic/rcrawley.jpg</image>
+        <experience>9</experience>
+        <blazeds>true</blazeds>
+        <mobile>false</mobile>
+        <video>false</video>
+        <highlight1>BlazeDS</highlight1>
+		<highlight2>Remote Object</highlight2>
+    </product>
+
+    <product productId="17">
+        <name>Renee Dreifus</name>
+            <description>I can do it all: BlazeDS, Mobile, Video.</description>
+        <price>79</price>
+        <image>assets/pic/rdreifus.jpg</image>
+        <experience>90</experience>
+        <blazeds>true</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="18">
+        <name>Tina Wong</name>
+        <description>I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.</description>
+        <price>109</price>
+        <image>assets/pic/twong.jpg</image>
+        <experience>9</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+</catalog>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/main.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/main.css b/examples/flexjs/FlexJSStore/src/main/flex/main.css
new file mode 100755
index 0000000..f678354
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/main.css
@@ -0,0 +1,100 @@
+/*
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+*/
+
+@namespace basic "library://ns.apache.org/flexjs/basic";
+
+/*
+//----------------------------
+//  Global styles
+//----------------------------
+*/
+.global {
+    IStatesImpl:            ClassReference("org.apache.flex.core.StatesWithTransitionsImpl");
+    color:                  #170505;
+    fillAlphas:             1.00, 1.00; /* last pair are for OVER state */
+    fillColors: 		    #FFFFFF, #DDDDDD, #FFFFFF, #EEEEEE;
+}
+
+global {
+    IStatesImpl:            ClassReference("org.apache.flex.core.StatesWithTransitionsImpl");
+}
+
+/*
+//----------------------------
+// Type selectors
+//----------------------------
+
+HRule
+{
+    color:                  #666666;
+}
+*/
+
+/*
+//----------------------------
+// Named styles
+//----------------------------
+*/
+.glass {
+    borderColor:		    #767473;
+    fillAlphas: 		    .60, .60, .60, .60;
+    fillColors: 		    #888888, #F3F3F3, #9E9E9E, #FCFCFC;
+    highlightAlphas:	    .07, .45;
+}
+
+.glassSlider
+{
+    fillAlphas: 		    .80, .80, .80, .80;
+    fillColors: 		    #F3F3F3, #BBBBBB, #FCFCFC, #CCCCCC;
+}
+
+.listItem
+{
+    paddingLeft:            4;
+    paddingRight:           4;
+    horizontalGap:          5;
+    verticalAlign:          "middle";
+    backgroundColor:        #FFFFFF;
+    backgroundAlpha:        .5;
+    borderStyle:            "outset";
+}
+
+basic|Container
+{
+    IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
+}
+
+.sectionHeader
+{
+    fontWeight:             "bold";
+    fontSize:               11;
+}
+
+.homeSection
+{
+    cornerRadius:           4;
+    borderStyle:            "solid";
+}
+
+.hoverButton
+{
+    height: 20px;
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/productsView/CatalogTitleButtons.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/productsView/CatalogTitleButtons.mxml b/examples/flexjs/FlexJSStore/src/main/flex/productsView/CatalogTitleButtons.mxml
new file mode 100755
index 0000000..75830ef
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/CatalogTitleButtons.mxml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:HContainer xmlns:fx="http://ns.adobe.com/mxml/2009"
+                  xmlns:js="library://ns.apache.org/flexjs/basic" 
+                  currentState="showFilter">
+    <js:style>
+        <js:SimpleCSSStyles verticalAlign="middle" 
+                               paddingTop="0" 
+                               paddingBottom="0" />
+    </js:style>
+    <js:beads>
+        <js:ParentDocumentBead id="pdb" />
+        <js:ContainerDataBinding />
+        <js:LayoutChangeNotifier watchedProperty="{viewCart.text}" initialValue="#FFFFFF" />
+    </js:beads>
+    <fx:Script>
+        <![CDATA[
+            [Bindable]
+            public var cartCount:int;
+            
+            private function rollOverLabel(event:MouseEvent):void
+            {
+                try {
+                    Label(event.target).className = "catalogTitleButtonHighlighted";
+                } catch (e:Error) {}
+            }
+            
+            private function rollOutLabel(event:MouseEvent):void
+            {
+                Label(event.target).className = "catalogTitleButtonDeselected";
+            }
+        ]]>
+    </fx:Script>
+    <fx:Binding source="ProductCatalogPanel(pdb.parentDocument).cartCount" destination="cartCount" />
+    <!-- two-way binding between the states of panel title buttons and the product view state -->
+    <fx:Binding source="ProductsView(ProductCatalogPanel(pdb.parentDocument).pdb.parentDocument).currentState" destination="currentState" />
+    <fx:Binding destination="ProductsView(ProductCatalogPanel(pdb.parentDocument).pdb.parentDocument).currentState" source="currentState" />    
+
+    <js:Label id="findPhones" text="Find Developers" click="currentState = 'showFilter'"
+             className.showFilter="catalogTitleButtonSelected"
+             className.showCart="catalogTitleButtonDeselected"
+             rollOver.showCart="rollOverLabel(event)"
+             rollOut.showCart="rollOutLabel(event)"/>
+    <js:VRule height="{findPhones.height * .75}" alpha=".75" style="color:#333333" />
+    <js:Label id="viewCart" text="View Cart ({cartCount} items)" click="currentState = 'showCart'"
+             className.showFilter="catalogTitleButtonDeselected"
+             className.showCart="catalogTitleButtonSelected"
+             rollOver.showFilter="rollOverLabel(event)"
+             rollOut.showFilter="rollOutLabel(event)"/>
+    
+    <js:states>
+        <js:State name="showFilter" />
+        <js:State name="showCart" />
+    </js:states>
+</js:HContainer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml b/examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml
new file mode 100755
index 0000000..abd3ce5
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/Grip.mxml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+                  xmlns:js="library://ns.apache.org/flexjs/basic" 
+                  width="17" height="100%" >
+    <js:style>
+        <js:SimpleCSSStyles paddingTop="10" />
+    </js:style>
+
+    <fx:Script>
+        <![CDATA[
+           [Bindable]
+           public var gripTip:String; 
+           
+           [Bindable]
+           public var gripIcon:String;
+        ]]>
+    </fx:Script>
+    <js:beads>
+        <js:ContainerDataBinding />
+        <js:OneFlexibleChildVerticalLayout flexibleChild="grip" />
+    </js:beads>
+
+    <js:Image id="icon" source="{gripIcon}" />
+    <js:Image id="grip" source="assets/grip.png" >
+        <js:beads>
+            <js:ToolTipBead toolTip="{gripTip}" />
+        </js:beads>
+    </js:Image>
+    
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCart.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCart.mxml b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCart.mxml
new file mode 100755
index 0000000..3469806
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCart.mxml
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+          xmlns:js="library://ns.apache.org/flexjs/basic" 
+    xmlns:productsView="productsView.*"
+    >
+    <js:style>
+        <js:SimpleCSSStyles 
+                               paddingTop="8"
+                               paddingBottom="8"
+                               paddingRight="4"
+                               paddingLeft="4" />
+    </js:style>
+    <js:beads>
+        <js:ContainerDataBinding />
+        <js:OneFlexibleChildVerticalLayout id="flexLayout" flexibleChild="productList" />
+    </js:beads>
+    <fx:Script>
+        <![CDATA[
+        
+        import org.apache.flex.html.SimpleAlert;
+        
+        import samples.flexstore.Product;
+        import samples.flexstore.ProductListEvent;
+        
+        [Bindable]
+        public var numProducts:int=0;
+        
+        [Bindable]
+        private var total:Number = 0;
+
+        private const SHIPPING:Number = 1.99;
+        
+        private function productListEventHandler(event:ProductListEvent):void
+        {
+            switch (event.type)
+            {
+                case ProductListEvent.ADD_PRODUCT:
+                    event.product.qty = 0;  
+                    //fall through into the same logic as dup          
+                case ProductListEvent.DUPLICATE_PRODUCT:
+                    event.product.qty++;
+                    //total += event.product.price;
+                    total = total + event.product.price;
+                    numProducts++;
+                    break;            
+                case ProductListEvent.PRODUCT_QTY_CHANGE:
+                case ProductListEvent.REMOVE_PRODUCT:
+                    var items:Array = productList.items;
+                    total = 0; 
+                    numProducts = 0;
+                    for (var i:int=0; i < items.length; i++)
+                    {
+                        var product:Product = items[i].product;
+                        //total += product.qty * product.price;
+                        //numProducts += product.qty;
+                        total = total + product.qty * product.price;
+                        numProducts = numProducts + product.qty;
+                    }       
+                    break;
+                default:
+                    break;
+            }
+        }
+        
+        ]]>
+    </fx:Script>
+    <fx:Declarations>
+        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
+    </fx:Declarations>
+    
+    <js:Label width="100%" text="Your Shopping Cart" className="sectionHeader"/>
+        
+    <productsView:ProductList id="productList" width="100%"
+        newItemStartX="-100" newItemStartY="-100" 
+        addProduct="productListEventHandler(event)"
+        duplicateProduct="productListEventHandler(event)"
+        productQtyChange="productListEventHandler(event)"
+        removeProduct="productListEventHandler(event)"
+        showQuantity="true" />
+    
+    <js:Container style="right:0" id="totalContainer">
+        <js:beads>
+            <js:VerticalColumnLayout numColumns="2" />
+        </js:beads>
+        <js:Label text="Total:" />
+        <js:Label width="70" text="{cf.format(total)}" id="lblTotal" style="textAlign:'right'"/>
+
+        <js:Label text="Service Fee:" />
+        <js:Label width="70" text="{cf.format(numProducts * SHIPPING)}" id="lblFee" style="textAlign:'right'"/>
+
+        <js:Label text="Grand Total:" style="fontWeight:'bold'" />
+        <js:Label width="70" text="{cf.format(total + (numProducts * SHIPPING))}" id="lblGrandTotal" style="textAlign:'right'"/>
+
+    </js:Container>
+
+    <js:TextButton text="Submit Order" click="SimpleAlert.show('This feature is not implemented in this sample', 'Submit Order')"
+                   style="right:0"/>
+
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogPanel.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogPanel.mxml b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogPanel.mxml
new file mode 100755
index 0000000..3e04263
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogPanel.mxml
@@ -0,0 +1,546 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Panel xmlns:fx="http://ns.adobe.com/mxml/2009"
+         xmlns:js="library://ns.apache.org/flexjs/basic" 
+         implements="org.apache.flex.core.IDragInitiator"
+    xmlns:productsView="productsView.*"
+    currentState="browse"
+    title="SpaceHolder"
+    title.browse="Browse"
+    title.compare="Product Comparison"
+    title.details="Product Details"
+    className="catalogPanel"
+    >
+    
+    <fx:Metadata>
+        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="details", type="samples.flexstore.ProductThumbEvent")]
+    </fx:Metadata>
+    
+    <fx:Script>
+        <![CDATA[
+            import org.apache.flex.core.IUIBase;
+            import org.apache.flex.effects.Effect;
+            import org.apache.flex.effects.Fade;
+            import org.apache.flex.effects.Move;
+            import org.apache.flex.effects.Parallel;
+            import org.apache.flex.effects.Tween;
+            import org.apache.flex.events.DragEvent;
+            import org.apache.flex.events.Event;
+            import org.apache.flex.collections.LazyCollection;
+            
+            import samples.flexstore.Product;
+            import samples.flexstore.ProductFilter;
+            import samples.flexstore.ProductFilterEvent;
+            import samples.flexstore.ProductThumbEvent;
+       
+     
+        private var accepted:Object = new Object();
+        private var thumbnails:Array;
+        private var filterCount:int;
+        private var thumbnailState:String = 'browse'; //either 'browse' or 'compare'
+                
+        [Bindable]
+        public var cartCount:int;
+        
+        //-----------------------------
+        // catalog
+        //-----------------------------
+        
+        private var _catalog:LazyCollection;
+        
+        [Bindable]
+        public function set catalog(c:LazyCollection):void
+        {
+            _catalog = c;
+            createThumbnails();
+        }
+        
+        public function get catalog():LazyCollection
+        {
+            return _catalog;
+        }
+        
+        //----------------------------------------------------------------------
+        // methods
+        //----------------------------------------------------------------------
+       
+        private function createThumbnails():void
+        {
+            var i:int; //variables are hoisted up in scope so declare here to avoid warning
+            if (thumbnails != null)
+            {
+                for (i=0; i < thumbnails.length; i++)
+                {
+                    thumbContentGroup.removeElement(thumbnails[i]);
+                }
+            }
+            
+            var row:int = 0;
+            var col:int = -1;
+            var n:int = catalog.length;
+            thumbnails = new Array(n);
+            filterCount = n;
+            
+            for (i=0; i < n; i++)
+            {
+                var thumb:ProductCatalogThumbnail = new ProductCatalogThumbnail();
+                thumb.x = 0;
+                thumb.y = 0;
+                thumbnails[i] = thumb;
+                // thumbnails[i].showInAutomationHierarchy = true;
+                thumb.product = catalog.getItemAt(i) as Product;
+                accepted[thumb.product.productId.toString()] = true;
+                thumbContentGroup.addElement(thumb);
+                thumb.addEventListener(ProductThumbEvent.PURCHASE, productThumbEventHandler);
+                thumb.addEventListener(ProductThumbEvent.COMPARE, productThumbEventHandler);
+                thumb.addEventListener(ProductThumbEvent.DETAILS, productThumbEventHandler);
+                thumb.addEventListener(DragEvent.DRAG_START,thumbDragStartHandler);
+            }
+
+            var lastMove:Effect = layoutCatalog();
+            if (lastMove)
+            {
+                lastMove.addEventListener(Tween.TWEEN_UPDATE, updateLayout);
+                lastMove.addEventListener(Tween.TWEEN_END, updateLayout);
+            }
+        }
+        
+        private function updateLayout(event:org.apache.flex.events.Event):void
+        {
+            thumbContentGroup.dispatchEvent(new org.apache.flex.events.Event("layoutNeeded"));   
+        }
+            
+        private function thumbDragStartHandler(event:MouseEvent):void
+        {
+            if (DragMouseController.dragging == false)
+            {
+                var thumb:ProductCatalogThumbnail = event.target as ProductCatalogThumbnail;
+                DragEvent.dragSource = thumb.product;
+
+                var di:ProductCatalogThumbnail = new ProductCatalogThumbnail();
+                di.product = thumb.product;
+                di.currentState = thumb.currentState;
+                DragMouseController.dragImage = di;
+                
+                DragEvent.dragInitiator = this;
+            }    
+        }
+        
+        public function filter(productFilter:ProductFilter, live:Boolean):void
+        {
+            currentState = "browse";
+            thumbnailState = "browse";
+            var count:int=0;
+            var n:int = thumbnails.length;
+            var targets:Array = [];
+            for (var i:int = 0; i < n; i++)
+            {
+                var thumb:ProductCatalogThumbnail = thumbnails[i];
+                var product:Product = thumb.product;
+                if (productFilter.accept(product))
+                {
+                    accepted[product.productId.toString()] = true;
+                    thumb.alpha = 1;    
+                    count++;
+                }
+                else
+                {
+                    accepted[product.productId.toString()] = false;
+                    if (live)
+                    {
+                        thumb.alpha = .1;
+                    }
+                    else if (thumb.alpha == 1) //only fade if we hadn't started
+                    {
+                        targets.push(thumb);
+                    }
+                }
+            }
+            productFilter.count = count;
+            filterCount = count;
+
+            if (targets.length > 0)    
+            {
+                var p:Parallel = new Parallel();
+                n = targets.length;
+                for (i = 0; i < n; i++)
+                {
+                    var fadeOut:Fade = new Fade(targets[i] as IUIBase);
+                    fadeOut.alphaFrom = 1;
+                    fadeOut.alphaTo = .1;
+                    p.addChild(fadeOut);
+                }
+                p.play();
+                p.addEventListener(Effect.EFFECT_END,
+                    function(event:org.apache.flex.events.Event):void
+                    {
+                        layoutCatalog();
+                    });
+            }
+            else if (!live)
+            {
+                layoutCatalog();
+            }
+        }
+        
+        private function layoutCatalog():Effect
+        {
+            var tileWidth:Number;
+            var tileHeight:Number;
+            var numCols:int;
+
+            if (filterCount > 9 || currentState == "compare")
+            {
+                numCols = 4;
+                tileWidth = ProductCatalogThumbnail.COL_WIDTH_4;
+                tileWidth = currentState == "compare"
+                    ? ProductCatalogThumbnail.COMPARE_WIDTH
+                    : ProductCatalogThumbnail.COL_WIDTH_4
+                tileHeight = currentState == "compare"
+                    ? height - 4
+                    : ProductCatalogThumbnail.COL_HEIGHT_4;
+            }
+            else if (filterCount > 4)
+			{
+                numCols = 3;
+                tileWidth = ProductCatalogThumbnail.COL_WIDTH_3;
+                tileHeight = ProductCatalogThumbnail.COL_HEIGHT_3;
+            }
+			else if (filterCount <= 9)
+			{
+                numCols = 2;
+                tileWidth = ProductCatalogThumbnail.COL_WIDTH_2;
+                tileHeight = ProductCatalogThumbnail.COL_HEIGHT_2;
+            }
+			else
+			{
+            }
+            
+            var row:int = 0;
+            var col:int = -1;
+
+			var move:Move = null;
+
+            var n:int = catalog.length;
+			for (var i:int = 0 ; i < n ; i++)
+			{
+                var product:Product = catalog.getItemAt(i) as Product;
+                var thumb:ProductCatalogThumbnail = thumbnails[i];
+                if (accepted[product.productId.toString()])
+                {
+                    thumb.currentState = "x" + numCols + "cols";
+                    col++;
+                    if (col > numCols - 1)
+					{
+                        row++;
+                        col = 0;
+                    }
+
+                    var xTo:Number = col * (tileWidth + ProductCatalogThumbnail.HORIZONTAL_GAP);
+                    var yTo:Number = row * (tileHeight + ProductCatalogThumbnail.VERTICAL_GAP);
+
+                    // If the thumbnail is already visible
+					// animate it to its new position.
+                    if (thumb.visible)
+					{
+                        // Animate only if the position is different
+						// from its current position.
+                        if (thumb.x != xTo || thumb.y != yTo)
+						{
+                            move = new Move(thumb);
+                            move.xTo = xTo;
+                            move.yTo = yTo;
+                            move.play();
+                        }
+                    }
+
+                    // If the thumbnail was not previously visible, sets its
+					// x and y coordinates. We'll make it reappear after all
+                    // the visible thumbnails have reached their new position.
+					else
+					{
+                        thumb.x = xTo;
+                        thumb.y = yTo;
+//                        thumb.includeInLayout = true;
+                    }
+                }
+				else
+				{
+                    thumb.visible = false;
+//                    thumb.includeInLayout = false;
+                }
+            }
+
+            if (!move)
+			{
+                // No visible thumbnails were animated to a new position;
+				// fade in newly selected thumbnails right away.
+                fadeInThumbnails();
+            }
+			else
+			{
+			    //since movement is happening get the scrollbar back to the top
+				scv.verticalScrollPosition = 0;
+                // Fade in newly selected thumbnails after the last
+				// visible thumbnail has moved to its new position.
+                move.addEventListener(Effect.EFFECT_END,
+					function(event:org.apache.flex.events.Event):void
+					{
+						fadeInThumbnails();
+					});
+            }
+            thumbContentGroup.dispatchEvent(new org.apache.flex.events.Event("layoutNeeded"));
+            //return the last move to watch
+            return move;
+        }
+        
+        //return the last effect so we could add effectEnd handler if desired
+        private function fadeInThumbnails():void
+		{
+			var n:int = thumbnails.length;
+			var targets:Array = [];
+			for (var i:int = 0; i < n ; i++)
+			{
+			    var thumb:ProductCatalogThumbnail = thumbnails[i];
+			    if (accepted[thumb.product.productId.toString()] && !thumb.visible)
+				{
+                    thumb.alpha = 0;
+                    thumb.visible = true;
+                    targets.push(thumb);
+                }
+            }
+            if (targets.length > 0)
+            {
+                n = targets.length;
+                for (i = 0; i < n; i++)
+                {
+                    var effect:Fade = new Fade(targets[i] as IUIBase);
+                    effect.alphaTo = 1;
+                    effect.play();
+                }
+            }
+        }
+        
+        private function showDetails(product:Product):void
+        {
+            if (currentState == "details")
+			{
+                details.product = product;
+                return;
+            }
+
+            var row:int = -1;
+
+            //should be computed using border metrics instead of hard-coding the 20, but...
+			var xTo:Number = thumbContentGroup.width - ProductCatalogThumbnail.COL_WIDTH_4 - 20;
+            var yTo:Number;
+
+            var move:Move;
+            var first:Boolean = true;
+            var selectedThumb:ProductCatalogThumbnail;
+
+            var n:int = thumbnails.length;
+			for (var i:int = 0; i < n; i++)
+			{
+			    var thumb:ProductCatalogThumbnail = thumbnails[i];
+                if (thumb.visible)
+				{
+                    row++;
+                    yTo = row * (ProductCatalogThumbnail.COL_HEIGHT_4 + ProductCatalogThumbnail.VERTICAL_GAP);
+
+                    thumb.currentState = "x4cols";
+
+                    if (thumb.x != xTo || thumb.y != yTo)
+					{
+                        move = new Move(thumb);
+                        if (first)
+						{
+                            move.addEventListener(Effect.EFFECT_END,
+								function(event:org.apache.flex.events.Event):void
+								{
+									details.product = product;
+                                    currentState = "details";
+								});
+
+                            first = false;
+                        }
+                        move.xTo = xTo;
+                        move.yTo = yTo;
+                        move.play();
+                    }
+                    
+                    if (thumb.product == product)
+                    {
+                        selectedThumb = thumb;
+                    }
+                }
+            }
+            if (selectedThumb != null)
+            {
+                //make sure that the selected thumb is visible in the list on the right
+                move.addEventListener(Effect.EFFECT_END,
+					function(e:org.apache.flex.events.Event):void
+					{
+					    var curpos:int = scv.verticalScrollPosition;
+					    if (selectedThumb.y < curpos)
+					    {
+					        scv.verticalScrollPosition = y;
+					    }
+					    else if (selectedThumb.y + ProductCatalogThumbnail.COL_HEIGHT_4 > curpos + thumbContentGroup.height)
+					    {
+					        //this logic doesn't seem to be perfect but it will do
+					        var diff:int = selectedThumb.y - (curpos + thumbContentGroup.height)
+					        scv.verticalScrollPosition += diff + ProductCatalogThumbnail.COL_HEIGHT_4 + ProductCatalogThumbnail.VERTICAL_GAP;
+					    }
+					});
+            }
+            
+        }
+        
+        private function productThumbEventHandler(event:ProductThumbEvent):void
+        {
+            if (event.type == ProductThumbEvent.DETAILS)
+            {
+                showDetails(event.product);
+            }
+            else if (event.type == ProductThumbEvent.BROWSE)
+            {
+                if (thumbnailState == "browse")
+                {                
+                    currentState = "browse";
+                    layoutCatalog();
+                }
+                else
+                {
+                    compare();
+                }
+            }
+            else
+            {
+                dispatchEvent(event);
+            }
+        }
+        
+        public function compare(toCompare:Array=null):void
+        {
+            currentState = "compare";
+            thumbnailState = "compare";
+            if (toCompare != null)
+            {
+                var n:int = thumbnails.length;
+                for (var i:int = 0; i < n; i++)
+                {
+                    accepted[thumbnails[i].product.productId.toString()] = false;
+                }
+                for (i=0; i < toCompare.length; i++)
+                {
+                    accepted[toCompare[i].productId.toString()] = true;
+                }
+            }
+            var lastEffect:Effect = layoutCatalog();
+            if (lastEffect != null)
+            {
+                lastEffect.addEventListener(Effect.EFFECT_END,
+                    function (event:org.apache.flex.events.Event):void
+                    {
+                        setCompareState();
+                    });
+            }
+            else
+            {
+                setCompareState();
+            }
+        }
+        
+        private function setCompareState():void
+        {
+            //avoid an issue if the user clicks quickly where we move into
+            //compare state even though we're no longer in compare
+            if (currentState == "compare") 
+            {
+                var n:int = thumbnails.length;
+                for (var i:int = 0; i < n; i++)
+                {
+                    var thumb:ProductCatalogThumbnail = thumbnails[i];
+                    if (accepted[thumb.product.productId.toString()])
+                    {
+                        thumb.currentState = "compare";
+                    }
+                }
+                
+            }
+        }
+        
+        public function acceptingDrop(dropTarget:Object, type:String):void
+        {
+            
+        }
+            
+        public function acceptedDrop(dropTarget:Object, type:String):void
+        {
+            
+        }
+
+        ]]>
+    </fx:Script>
+    
+    <js:beads>
+        <js:ContainerDataBinding />
+        <js:VerticalLayout />
+        <js:DragMouseController id="dragger" />
+        <js:ParentDocumentBead id="pdb" />
+        <js:PanelView>
+            <js:titleBar>
+                <js:TitleBar height="20" >
+                    <js:style>
+                        <js:SimpleCSSStyles backgroundColor="0xA65904" />
+                    </js:style>
+                    <js:beads>
+                        <productsView:ProductCatalogPanelTitleBarView />
+                    </js:beads>
+                </js:TitleBar>
+            </js:titleBar>
+        </js:PanelView>
+    </js:beads>
+    <js:Container width="100%" height="100%">
+        <js:Container id="thumbContentGroup" width="100%" height="100%">
+            <js:beads>
+				<js:ScrollingViewport id="scv" />
+            </js:beads>
+        </js:Container>
+        <productsView:ProductDetails id="details" y="0"
+            width="{ProductCatalogThumbnail.COL_WIDTH_4 * 3}"
+            height="100%"
+            visible="false"
+            visible.details="true"
+            compare="productThumbEventHandler(event)"
+            purchase="productThumbEventHandler(event)"
+            browse="productThumbEventHandler(event)" />
+    </js:Container>
+    
+    <js:states>
+        <js:State name="browse" />
+        <js:State name="compare" />
+        <js:State name="details" />
+    </js:states>
+    
+</js:Panel>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogPanelTitleBarView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogPanelTitleBarView.mxml b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogPanelTitleBarView.mxml
new file mode 100755
index 0000000..f2cb397
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogPanelTitleBarView.mxml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:MXMLBeadView xmlns:fx="http://ns.adobe.com/mxml/2009"
+                        xmlns:js="library://ns.apache.org/flexjs/basic" 
+                        xmlns:productsView="productsView.*"
+                        >
+    <fx:Script>
+        <![CDATA[
+            import org.apache.flex.html.TitleBar;
+            import org.apache.flex.core.ITitleBarModel;
+            import org.apache.flex.core.UIBase;
+            import org.apache.flex.events.Event;
+            
+            private function clickHandler():void
+            {
+                var newEvent:org.apache.flex.events.Event = new org.apache.flex.events.Event('close',true);
+                UIBase(_strand).dispatchEvent(newEvent)   
+            }
+        ]]>
+    </fx:Script>
+    <js:beads>
+        <js:MXMLBeadViewDataBinding />
+        <js:ParentDocumentBead id="pdb" />
+        <js:LayoutChangeNotifier watchedProperty="{buttons.width}" />
+    </js:beads>
+    <js:Label id="titleLabel" text="{ITitleBarModel(model).title}" 
+                 />
+    <js:CloseButton id="closeButton" click="clickHandler()"
+                       visible="{ITitleBarModel(model).showCloseButton}";
+                       />
+    <productsView:CatalogTitleButtons id="buttons" />
+</js:MXMLBeadView>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml
new file mode 100755
index 0000000..1abc428
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductCatalogThumbnail.mxml
@@ -0,0 +1,220 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+                   xmlns:js="library://ns.apache.org/flexjs/basic" 
+    width="{COL_WIDTH_4}" height="{COL_HEIGHT_4}" height.compare="502"
+    width.x4cols="{COL_WIDTH_4}" height.x4cols="{COL_HEIGHT_4}"
+    width.x3cols="{COL_WIDTH_3}" height.x3cols="{COL_HEIGHT_3}"
+    width.x2cols="{COL_WIDTH_2}" height.x2cols="{COL_HEIGHT_2}"
+    rollOver="rollOverHandler(event)"
+    rollOut="rollOutHandler(event)"
+    mouseDown="mouseDownHandler(event)"
+    mouseMove="mouseMoveHandler(event)"
+    mouseUp="mouseUpHandler(event)"
+    click="clickHandler(event)"
+    currentState="x4cols"
+    >
+    <!-- automationName="{product.name}" -->
+    <js:beads>
+        <js:ContainerDataBinding />
+        <js:LayoutChangeNotifier watchedProperty="{borderStyles.borderColor}" initialValue="#FFFFFF" />
+    </js:beads>
+    <js:style>
+        <js:BindableCSSStyles id="borderStyles" borderStyle="solid" borderWidth="1"
+                               borderColor="#FFFFFF" backgroundColor="#FFFFFF"/>
+    </js:style>
+    <fx:Metadata>
+        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="details", type="samples.flexstore.ProductThumbEvent")]
+    </fx:Metadata>
+
+    <fx:Script>
+        <![CDATA[
+
+		import org.apache.flex.events.*;
+        import org.apache.flex.utils.PointUtils;
+            
+        import samples.flexstore.Product;
+        import samples.flexstore.ProductThumbEvent;
+        
+        public static const COL_WIDTH_4:int = 162;
+        public static const COL_HEIGHT_4:int = 122;
+        public static const COL_WIDTH_3:int = 217;
+        public static const COL_HEIGHT_3:int = 165;
+        public static const COL_WIDTH_2:int = 327;
+        public static const COL_HEIGHT_2:int = 250;
+        public static const COMPARE_WIDTH:int = 162;
+        public static const HORIZONTAL_GAP:int = 2;
+        public static const VERTICAL_GAP:int = 3;
+
+        [Bindable]
+        public var product:Product;
+
+        private function rollOverHandler(event:MouseEvent):void
+		{
+            borderStyles.borderColor = "#CCCCCC";
+            //style["dropShadowEnabled"] = true;
+            buttons.visible = true;
+        }
+
+        private function rollOutHandler(event:MouseEvent):void
+		{
+            borderStyles.borderColor = "#FFFFFF";
+            //style["dropShadowEnabled"] = false;
+			buttons.visible = false;
+        }
+
+        private var dragStartPoint:Point;
+
+        public function mouseDownHandler(event:MouseEvent):void
+        {
+            if (event.target != purchase &&
+                event.target != compare &&
+                event.target != details)
+            {
+                dragStartPoint = new Point(event.clientX, event.clientY);
+            }
+        }
+
+        public function mouseMoveHandler(event:MouseEvent):void
+        {
+            if (dragStartPoint != null)
+            {
+                var dragEvent:DragEvent = new DragEvent(DragEvent.DRAG_START, true);
+                dragEvent.clientX = dragStartPoint.x;
+                dragEvent.clientY = dragStartPoint.y;
+                dragEvent.buttonDown = true;
+                dispatchEvent(dragEvent);
+
+                rollOutHandler(event);
+
+                dragStartPoint = null;
+            }
+        }
+
+        public function mouseUpHandler(event:MouseEvent):void
+        {
+            if (dragStartPoint != null)
+            {
+                dragStartPoint = null;
+            }
+        }
+
+        public function clickHandler(event:org.apache.flex.events.MouseEvent):void
+        {
+            if (event.target != purchase &&
+                event.target != compare &&
+                event.target != details)
+            {
+                dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product));
+            }
+        }
+
+	]]>
+    </fx:Script>
+    <fx:Declarations>
+        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
+    </fx:Declarations>
+
+    <js:VContainer id="vb" width="100%" height="100%">
+        <js:style>
+            <js:SimpleCSSStyles paddingLeft="6" paddingTop="4" paddingRight="8" paddingBottom="4" />
+                                 <!--  gap="0">  -->
+        </js:style>
+        
+
+        <js:Label text="{product.name}" style="fontWeight:bold"/>
+
+        <js:HContainer width="100%" >
+            <js:style>
+                <js:SimpleCSSStyles paddingTop="0" /> <!-- gap="4 -->"
+            </js:style>
+
+            <js:Image id="img" height="45" width="45" 
+                     width.x3cols="60" height.x3cols="60"
+                     width.x2cols="60" height.x2cols="60"
+                     source="{product.image}" />
+
+            <js:VContainer id="descr" height="100%" >
+                <js:style>
+                    <js:SimpleCSSStyles paddingTop="0" right="0" /> <!--  gap="0"  -->
+                </js:style>
+                <js:Label text="{product.featureString}" width="60" height="48" />
+                <js:Label text="{cf.format(product.price)}" style="fontWeight:bold"/>
+				<js:Spacer height="4"/>
+                <js:Label text="{product.highlight1}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
+                <js:Label text="{product.highlight2}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
+            </js:VContainer>
+
+        </js:HContainer>
+
+        <js:Spacer height="8"/>
+
+        <js:Label id="compYears" text="Years: {product.experience}" includeIn="compare"/>
+        <js:Label id="compBlaze" text="BlazeDS: {product.blazeds}" includeIn="compare"/>
+        <js:Label id="compMobile" text="Mobile: {product.mobile}" includeIn="compare"/>
+        <js:Label id="compVideo" text="Video: {product.video}" includeIn="compare"/>
+        <js:Label id="compHigh1" text="Highlight: {product.highlight1}" includeIn="compare"/>
+        <js:Label id="compHigh2" text="Highlight: {product.highlight2}" includeIn="compare"/>
+        <js:Label text="Description:" includeIn="compare"/>
+        <js:MultilineLabel id="compDesc" text="{product.description}" width="100%" includeIn="compare"/>
+    </js:VContainer>
+
+
+    <js:VContainer id="buttons" visible="false" width="30">
+        <js:style>
+            <js:SimpleCSSStyles paddingRight="8" right="8" top="12" /> <!-- gap="4" -->
+        </js:style>
+        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" className="hoverButton"
+            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" 
+            width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Add to cart"/>
+            </js:beads>
+        </js:ImageButton>
+        <js:ImageButton id="compare" source="assets/button_compare.png" className="hoverButton"
+            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" 
+            width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Add to compare list"/>
+            </js:beads>
+        </js:ImageButton>
+        <js:ImageButton id="details" source="assets/button_details.png" className="hoverButton"
+            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product))" 
+            width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Show details"/>
+            </js:beads>
+        </js:ImageButton>
+    </js:VContainer>
+
+    <js:states>
+
+        <js:State name="compare" />
+
+        <js:State name="x4cols" />
+
+        <js:State name="x3cols" />
+
+        <js:State name="x2cols"/>
+    </js:states>
+
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml
new file mode 100755
index 0000000..309cb41
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductDetails.mxml
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
+                 xmlns:js="library://ns.apache.org/flexjs/basic" 
+    xmlns:productsView="productsView.*"
+    >
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+
+    <fx:Metadata>
+        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="browse", type="samples.flexstore.ProductThumbEvent")]
+    </fx:Metadata>
+
+    <fx:Script>
+        <![CDATA[
+
+		import samples.flexstore.Product;
+		import samples.flexstore.ProductThumbEvent;
+
+        private var _product:Product;
+        
+        [Bindable]
+        public function get product():Product
+        {
+            return _product;
+        }
+        
+        public function set product(p:Product):void
+        {
+            _product = p;
+            tn.selectedIndex = 0;
+        }
+        
+	]]>
+    </fx:Script>
+
+    <fx:Declarations>
+        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
+    </fx:Declarations>
+
+    <js:states>
+        <js:State name="Features" />
+        <js:State name="Support" />
+    </js:states>
+    
+    <js:transitions>
+        <js:Transition>
+            <js:Fade />
+        </js:Transition>
+    </js:transitions>
+    
+    <js:ButtonBar id="tn" width="100%" change="currentState = tn.selectedItem as String">
+        <js:dataProvider>
+            <fx:Array>
+                <fx:String>Features</fx:String>
+                <fx:String>Support</fx:String>
+            </fx:Array>
+        </js:dataProvider>
+    </js:ButtonBar>
+    <js:Container >
+        <js:style>
+            <js:SimpleCSSStyles left="4" right="8" top="34" bottom="4" />
+        </js:style>
+                    
+
+        <js:VContainer includeIn="Features" >
+            <js:style>
+                <!--<js:SimpleCSSStyles gap="8"-->
+                <js:SimpleCSSStyles
+                    left="8" top="8" right="8" bottom="8"/>
+            </js:style>
+            <js:Container style="left:0px;right:0px">
+
+                <js:Image id="img" width="101" height="101" source="{product.image}"/>
+
+                <js:VContainer id="descr" >
+                    <js:style>
+                        <js:SimpleCSSStyles top="0" left="105" right="0" bottom="20" />
+                        <!--<js:SimpleCSSStyles paddingTop="0" gap="4" />-->
+                    </js:style>
+                    
+                    <js:Label text="{product.name}" style="fontSize:11;fontWeight:'bold'"/>
+
+	                <js:Label text="{product.featureString}" width="80" height="48" />
+
+                    <js:Label text="{product.highlight1}" style="color:#EE8D0C"/>
+
+                    <js:Label text="{product.highlight2}" style="color:#EE8D0C"/>
+
+                    <js:Label text="{cf.format(product.price)}" style="fontWeight:'bold'"/>
+
+                </js:VContainer>
+            </js:Container>
+
+            <js:Label id="descriptionText" style="left:0px;right:0px;bottom:0px" text="{product.description}"/>
+
+        </js:VContainer>
+
+        <productsView:ProductSupport width="100%" height="100%" includeIn="Support" />
+
+    </js:Container>
+
+    <js:VContainer>
+        <js:style>
+            <js:SimpleCSSStyles marginTop="4" right="16" top="36" />
+        </js:style>
+        <js:Spacer width="100%"/>
+        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Add to cart"/>
+            </js:beads>
+        </js:ImageButton>
+        <js:ImageButton id="compare" source="assets/button_compare.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Add to compare list"/>
+            </js:beads>
+        </js:ImageButton>
+        <js:ImageButton id="tiles" source="assets/button_tiles.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.BROWSE, product));" width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Back to thumbnail view"/>
+            </js:beads>
+        </js:ImageButton>
+    </js:VContainer>
+
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductFilterPanel.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductFilterPanel.mxml b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductFilterPanel.mxml
new file mode 100755
index 0000000..fc2f535
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductFilterPanel.mxml
@@ -0,0 +1,215 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:VContainer xmlns:fx="http://ns.adobe.com/mxml/2009" 
+                  xmlns:js="library://ns.apache.org/flexjs/basic" 
+    xmlns:productsView="productsView.*"
+    xmlns:flexstore="samples.flexstore.*"
+    height="100%" 
+    currentState="showingThumbnails"
+    initComplete="series.selectedIndex = 0">
+    <js:style>
+        <js:SimpleCSSStyles paddingLeft="4" 
+                               paddingRight="12" 
+                               paddingTop="12" 
+                               paddingBottom="8" 
+                               />
+
+    </js:style>
+    
+    <fx:Metadata>
+       [Event(name="filter", type="samples.flexstore.ProductFilterEvent")] 
+       [Event("compare")]
+    </fx:Metadata>
+    
+    <fx:Script>
+        <![CDATA[
+        import org.apache.flex.html.Slider;
+        import org.apache.flex.html.SimpleAlert; 
+        import samples.flexstore.ProductFilterEvent;
+           
+        private var thumbBeingPressed:Boolean;
+           
+        private function dispatchFilter():void
+        {
+            var event:ProductFilterEvent = 
+                new ProductFilterEvent(filter, thumbBeingPressed);
+            dispatchEvent(event);
+            currentState = "showingThumbnails";
+        }
+        
+        private function sliderValue(values:Array, index:int):Number
+        {
+            return values[index];
+        }
+        
+        private function productRemoved():void
+        {
+            if (currentState == "showingComparison")
+            {
+                if (productList.items.length == 0)
+                {
+                    dispatchFilter();
+                }
+                else
+                {
+                    attemptCompare();
+                }
+            }
+        }
+        
+        private function attemptCompare():void
+        {
+            if (productList.items.length > 0)
+            {
+                dispatchEvent(new Event("compare"));
+                currentState = "showingComparison";
+            }
+            else
+            {
+                SimpleAlert.show("There are no items to compare.", "Compare");
+            }
+        }
+        
+        ]]>
+    </fx:Script>
+    <fx:Declarations>
+        <flexstore:ProductFilter id="filter">
+            <flexstore:experience>{series.selectedItem}</flexstore:experience>
+            <flexstore:minPrice>{loPrice.value}</flexstore:minPrice>
+            <flexstore:maxPrice>{hiPrice.value}</flexstore:maxPrice>
+            <flexstore:blazeds>{cbBlazeDS.selected}</flexstore:blazeds>
+            <flexstore:mobile>{cbMobile.selected}</flexstore:mobile>
+            <flexstore:video>{cbVideo.selected}</flexstore:video>
+        </flexstore:ProductFilter>
+        
+        <js:CurrencyFormatter currencySymbol="$" id="cf"/>    
+        
+    </fx:Declarations>
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+    
+    <js:Label text="Find" className="sectionHeader"/>
+    
+    <js:Container width="100%">
+        <js:beads>
+            <js:FlexibleFirstChildHorizontalLayout />
+        </js:beads>
+        <js:TextInput className="glass" width="100%"/>
+        <js:TextButton className="glass" text="Go" click="SimpleAlert.show('This feature is not implemented in this sample', 'Find')"/>
+    </js:Container>
+
+    <js:Spacer height="18"/>
+
+    <js:HRule width="100%"/>
+
+    <js:Spacer height="8"/>
+
+    <js:HContainer>
+        <js:style>
+            <js:SimpleCSSStyles paddingTop="0" paddingLeft="0" verticalAlign="bottom" />
+        </js:style>
+        <js:Label text="Filter" className="sectionHeader"/>
+        <js:Label text="({filter.count} items selected)" >
+            <js:style>
+                <js:SimpleCSSStyles fontWeight="bold" />
+                <!--<js:SimpleCSSStyles color="{getStyle('themeColor')}" fontWeight="bold" />-->
+            </js:style>
+        </js:Label>
+    </js:HContainer>
+
+    <js:Spacer height="8"/>
+
+    <js:Label text="Years of Experience"/>
+
+    <js:DropDownList id="series" className="glass" width="140" change="dispatchFilter();">
+        <js:dataProvider>
+            <fx:Array>
+                <fx:String>All</fx:String>
+                <fx:String>3</fx:String>
+                <fx:String>5</fx:String>
+                <fx:String>7</fx:String>
+                <fx:String>9</fx:String>
+            </fx:Array>                
+        </js:dataProvider>
+    </js:DropDownList>
+
+    <js:Spacer height="18"/>
+
+    <js:Label text="Price"/>
+
+    <!--<s:HSlider id="priceSlider" className="glassSlider" minimum="0" maximum="200" tickInterval="10" snapInterval="10"
+        width="100%" thumbCount="2" values="[0,200]" labels="[$0,$200]" liveDragging="true" dataTipFormatFunction="{cf.format}"
+        change="dispatchFilter()"
+        thumbPress="thumbBeingPressed=true"
+        thumbRelease="thumbBeingPressed=false;dispatchFilter()"
+        />-->
+    <js:HContainer id="nsholder" width="100%">
+        <js:NumericStepper width="48%" id="loPrice" minimum="0" maximum="{hiPrice.value}" value="0" valueChange="dispatchFilter()" />
+        <js:NumericStepper width="48%" id="hiPrice" minimum="{loPrice.value}" maximum="200" value="200" valueChange="dispatchFilter()" />
+    </js:HContainer>
+
+    <js:Spacer height="18"/>
+
+    <js:Label text="Required Features"/>
+
+    <js:Spacer height="4"/>
+
+    <js:CheckBox id="cbBlazeDS" className="glass" text="BlazeDS" click="dispatchFilter();"/>
+    <js:Spacer height="4"/>
+    <js:CheckBox id="cbMobile" className="glass" text="Mobile" click="dispatchFilter()"/>
+    <js:Spacer height="4"/>
+    <js:CheckBox id="cbVideo" className="glass" text="Video" click="dispatchFilter();"/>
+
+    <js:Spacer height="18"/>
+
+    <js:HRule width="100%"/>
+
+    <js:Spacer height="8"/>
+
+        <js:HContainer>
+            <js:Label text="Compare" className="sectionHeader"/>
+            <js:Label text="(Drag items here to compare)" className="instructions"/>
+        </js:HContainer>
+
+
+    <js:Spacer height="4"/>
+
+    <!-- height is maxItems * ProductListItem.HEIGHT + 2px border -->
+    <productsView:ProductList id="productList" height="{productList.maxItems * ProductListItem.HEIGHT + 2}" width="100%"
+        newItemStartX="300" newItemStartY="-100" maxItems="4" 
+        removeProduct="productRemoved()"/>
+
+    <js:Spacer height="8"/>
+    
+    <js:ImageAndTextButton id="compareButton" className="glass" 
+                  click.showingThumbnails="attemptCompare()"
+                  click.showingComparison="dispatchFilter()"            
+                  text.showingComparison="Back to thumbnail view"
+                  text.showingThumbnails="Compare Items"
+                  image.showingThumbnails="assets/icon_compare.png"
+                  image.showingComparison="assets/icon_tiles.png" />
+    
+    <js:states>
+       <js:State name="showingThumbnails" />
+       <js:State name="showingComparison" />
+    </js:states>
+
+</js:VContainer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductList.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductList.mxml b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductList.mxml
new file mode 100755
index 0000000..7351e06
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductList.mxml
@@ -0,0 +1,219 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
+                 xmlns:js="library://ns.apache.org/flexjs/basic" 
+    > 
+    <js:style>
+        <js:SimpleCSSStyles borderStyle="solid" borderWidth="1" backgroundColor="#BCB29F" />
+    </js:style>
+    <!-- need a background color for drag and drop but can set alpha to 0 -->
+    
+    <fx:Metadata>
+       [Event(name="addProduct", type="samples.flexstore.ProductListEvent")]
+       [Event(name="duplicateProduct", type="samples.flexstore.ProductListEvent")]
+       [Event(name="productQtyChange", type="samples.flexstore.ProductListEvent")]
+       [Event(name="removeProduct", type="samples.flexstore.ProductListEvent")]
+    </fx:Metadata>
+
+    <fx:Script>
+        <![CDATA[
+        import org.apache.flex.effects.Effect;
+        import org.apache.flex.effects.Move;
+        import org.apache.flex.effects.Sequence;
+        import org.apache.flex.core.DropType;
+        import org.apache.flex.core.IUIBase;
+        import org.apache.flex.events.DragEvent;
+        
+        import samples.flexstore.Product;
+        import samples.flexstore.ProductListEvent;
+        
+        public var items:Array;
+        
+        public var newItemStartX:int;
+        public var newItemStartY:int;
+        [Bindable]
+        public var maxItems:int = 0;
+        public var showQuantity:Boolean;
+        
+        private var playingEffects:Object = new Object();
+        
+        public function addProduct(product:Product):void
+		{
+            if (items == null)
+                items = [];
+            
+            var index:int = indexOf(product.productId);
+            var event:ProductListEvent;
+            var item:ProductListItem;
+            
+            if (index != -1)
+			{
+			    item = items[index] as ProductListItem;
+			    //if we don't keep track of what's playing a double-click can
+			    //cause the list item to keep rising
+			    if (playingEffects[item.uid] == null)
+			    {
+                    var jump:Sequence = new Sequence();
+                    var m1:Move = new Move(item)
+                    m1.yBy = -5;
+                    var m2:Move = new Move(item)
+                    m2.yBy = 5;
+                    jump.addChild(m1);
+                    jump.addChild(m2);
+                    jump.duration = 150;
+                    playingEffects[item.uid] = jump;
+                    jump.addEventListener(Effect.EFFECT_END, function(event:Event):void
+                    {
+                       delete playingEffects[item.uid];
+                    });
+                    jump.play();
+                }
+                event = new ProductListEvent(ProductListEvent.DUPLICATE_PRODUCT);
+                event.product = item.product;
+                dispatchEvent(event);
+            }
+			else
+			{
+                index = items.length;
+                if (maxItems <= 0 || index < maxItems)
+				{
+				    item = new ProductListItem();
+				    if (showQuantity)
+				    {
+				        item.currentState = 'showQuantity';
+				    }
+				    item.product = product;
+				    item.percentWidth = 100;
+				    item.addEventListener(ProductListEvent.REMOVE_PRODUCT, removeItemHandler);
+                    items[index] = item;
+                    viewport.addElement(item);
+                    layoutItems(index, true);
+                    event = new ProductListEvent(ProductListEvent.ADD_PRODUCT);
+                    event.product = product;
+                    dispatchEvent(event);
+                }
+            }
+        }
+        
+        public function getProducts():Array
+        {
+            var ret:Array = [];
+            for (var i:int = 0; i < items.length; i++)
+            {
+                ret[i] = ProductListItem(items[i]).product;
+            }
+            return ret;
+        }
+        
+        private function removeItemHandler(event:Event):void
+        {
+            var item:ProductListItem = event.target as ProductListItem;
+            var index:int = indexOf(item.product.productId);
+            items.splice(index, 1);
+            viewport.removeElement(item);
+            layoutItems(index);
+        }
+            
+        private function layoutItems(startIndex:int, scrollToBottom:Boolean=false):void
+		{
+            var n:int = items.length;
+            var e:Move;
+			for (var i:int = startIndex; i < n ; i++)
+			{
+			    var item:ProductListItem = items[i];
+                var yTo:Number = i * (item.height);
+                //still need to prevent items that are already in motion from getting
+                //jumpy
+			    if (playingEffects[item.uid] == null)
+			    {
+                    e = new Move(item);
+                    if (item.x == 0 && item.y == 0)
+    				{
+    					e.xFrom = newItemStartX;
+    					e.yFrom = newItemStartY;
+                    }
+    
+                    e.xTo = 0;
+                    e.yTo = yTo;
+                    playingEffects[item.uid] = e;
+                    e.addEventListener(Effect.EFFECT_END, function(event:Event):void
+                    {
+                       delete playingEffects[item.uid];
+                    });
+                    e.play();
+                }
+                else
+                {
+                    playingEffects[item.uid].pause();
+                    playingEffects[item.uid].yTo = yTo;
+                    playingEffects[item.uid].play();
+                }
+            }
+            //get the last event and if we should scroll make sure we can validate
+            //and scroll to maxVPosition
+            if (scrollToBottom)
+            {
+                e.addEventListener(Effect.EFFECT_END, function(event:Event):void
+                {
+  //TODO                  scrollingView.model.verticalScrollPosition = scrollingView.maxVerticalScrollPosition;    
+                });
+            }
+        }
+        
+        private function indexOf(productId:int):int
+		{
+            var index:int = -1;
+
+            var n:int = items.length;
+			for (var i:int = 0; i < items.length; i++)
+			{
+                if (ProductListItem(items[i]).product.productId == productId)
+				{
+                    index = i;
+                    break;
+                }
+            }
+
+            return index;
+        }     
+
+        private function doDragEnter(event:DragEvent):void
+        {
+            trace("doDragEnter");
+            dmc.acceptDragDrop(event.target as IUIBase, DropType.COPY);
+        }
+
+        private function doDragDrop(event:DragEvent):void
+        {
+            trace("doDragDrop");
+            var product:Product = DragEvent.dragSource as Product;
+            addProduct(product);
+        }  
+ 
+        ]]>
+    </fx:Script>
+    <js:beads>
+        <js:DropMouseController id="dmc" dragEnter="doDragEnter(event)" dragDrop="doDragDrop(event)" />
+        <js:VerticalLayout />
+		<js:ScrollingViewport id="scrollingView" />
+    </js:beads>
+    <js:Container id="viewport" width="100%" height="100%" >
+    </js:Container>
+</js:Container>


[33/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Merge branches 'develop' and 'feature-autobuild/example-maven-dirs' of https://git-wip-us.apache.org/repos/asf/flex-asjs into feature-autobuild/example-maven-dirs

Posted by ca...@apache.org.
Merge branches 'develop' and 'feature-autobuild/example-maven-dirs' of https://git-wip-us.apache.org/repos/asf/flex-asjs into feature-autobuild/example-maven-dirs


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/4bac096e
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/4bac096e
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/4bac096e

Branch: refs/heads/feature/mdl
Commit: 4bac096e4a59fa4715993c174314b8b77842b443
Parents: a07e0a2 f4caf2c
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Tue Nov 8 15:31:23 2016 +0100
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Tue Nov 8 15:31:23 2016 +0100

----------------------------------------------------------------------
 distribution/jars/compc/pom.xml                 | 60 ++++++++++++++++++
 distribution/jars/falcon-asc/pom.xml            | 60 ++++++++++++++++++
 distribution/jars/falcon-compc/pom.xml          | 60 ++++++++++++++++++
 distribution/jars/falcon-mxmlc/pom.xml          | 60 ++++++++++++++++++
 distribution/jars/falcon-optimizer/pom.xml      | 60 ++++++++++++++++++
 distribution/jars/falcon-swfdump/pom.xml        | 65 ++++++++++++++++++++
 distribution/jars/mxmlc/pom.xml                 | 60 ++++++++++++++++++
 distribution/pom.xml                            | 49 ++++++++++++++-
 distribution/src/main/assembly/component.xml    |  1 +
 examples/flexjs/DesktopMap/pom.xml              | 10 +++
 examples/flexjs/MapSearch/pom.xml               |  9 +++
 examples/flexjs/MobileMap/pom.xml               |  9 +++
 examples/flexjs/StyleExample/pom.xml            |  2 +-
 examples/flexjs/TeamPage/pom.xml                | 30 +++------
 .../flex/org/apache/flex/core/CSSTextField.as   | 19 ++++--
 .../flex/org/apache/flex/utils/PointUtils.as    |  5 ++
 .../flex/org/apache/flex/core/Application.as    | 53 ++++++++++------
 .../controllers/ScrollBarMouseControllerBase.as |  6 +-
 .../supportClasses/TextFieldItemRenderer.as     | 22 +++----
 19 files changed, 578 insertions(+), 62 deletions(-)
----------------------------------------------------------------------



[17/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
- Refactored the directory structure of the example projects to be maven-style


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/e75059f7
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/e75059f7
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/e75059f7

Branch: refs/heads/feature/mdl
Commit: e75059f7bce0ec1a3d70eef40233400dca409efe
Parents: 4c78873
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Thu Oct 27 17:14:54 2016 +0200
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Thu Oct 27 17:14:55 2016 +0200

----------------------------------------------------------------------
 .../flexjs/ChartExample/src/ChartExample.mxml   |  39 --
 .../flexjs/ChartExample/src/MyInitialView.mxml  | 312 -----------
 .../flexjs/ChartExample/src/SpeedTestView.mxml  | 187 -------
 .../src/main/flex/ChartExample.mxml             |  39 ++
 .../src/main/flex/MyInitialView.mxml            | 312 +++++++++++
 .../src/main/flex/SpeedTestView.mxml            | 187 +++++++
 .../src/main/flex/models/ProductsModel.as       |  79 +++
 .../src/main/flex/products/Product.as           |  45 ++
 .../ChartExample/src/models/ProductsModel.as    |  79 ---
 .../flexjs/ChartExample/src/products/Product.as |  45 --
 .../CordovaCameraExample/resources/config.xml   |  44 --
 .../src/CordovaCameraExample.mxml               |  39 --
 .../CordovaCameraExample/src/MyInitialView.mxml |  75 ---
 .../src/main/flex/CordovaCameraExample.mxml     |  39 ++
 .../src/main/flex/MyInitialView.mxml            |  75 +++
 .../src/main/resources/config.xml               |  44 ++
 .../CreateJSExample/src/CreateJSExample.mxml    |  69 ---
 .../src/main/flex/CreateJSExample.mxml          |  69 +++
 .../src/main/flex/models/MyModel.as             |  34 ++
 .../CreateJSExample/src/models/MyModel.as       |  34 --
 .../src/DataBindingExample.mxml                 |  53 --
 .../DataBindingExample/src/MyInitialView.mxml   | 144 -----
 .../src/StockDataJSONItemConverter.as           |  40 --
 .../src/controllers/MyController.as             |  92 ----
 .../src/main/flex/DataBindingExample.mxml       |  53 ++
 .../src/main/flex/MyInitialView.mxml            | 144 +++++
 .../src/main/flex/StockDataJSONItemConverter.as |  40 ++
 .../src/main/flex/controllers/MyController.as   |  92 ++++
 .../src/main/flex/models/MyModel.as             | 125 +++++
 .../DataBindingExample/src/models/MyModel.as    | 125 -----
 .../src/DataBindingExample.mxml                 |  53 --
 .../src/MyInitialView.mxml                      | 145 -----
 .../src/StockDataJSONItemConverter.as           |  40 --
 .../src/controllers/MyController.as             |  92 ----
 .../src/main/flex/DataBindingExample.mxml       |  53 ++
 .../src/main/flex/MyInitialView.mxml            | 145 +++++
 .../src/main/flex/StockDataJSONItemConverter.as |  40 ++
 .../src/main/flex/controllers/MyController.as   |  92 ++++
 .../src/main/flex/models/MyModel.as             | 125 +++++
 .../src/models/MyModel.as                       | 125 -----
 .../src/DataBindingExample.as                   | 290 ----------
 .../DataBindingExample_as/src/MyInitialView.as  | 282 ----------
 .../src/StockDataJSONItemConverter.as           |  40 --
 .../src/controllers/MyController.as             |  92 ----
 .../src/main/flex/DataBindingExample.as         | 290 ++++++++++
 .../src/main/flex/MyInitialView.as              | 282 ++++++++++
 .../src/main/flex/StockDataJSONItemConverter.as |  40 ++
 .../src/main/flex/controllers/MyController.as   |  92 ++++
 .../src/main/flex/models/MyModel.as             | 127 +++++
 .../DataBindingExample_as/src/models/MyModel.as | 127 -----
 .../DataGridExample/src/DataGridExample.mxml    |  36 --
 .../DataGridExample/src/MyInitialView.mxml      |  68 ---
 .../src/assets/smallbluerect.jpg                | Bin 13500 -> 0 bytes
 .../src/assets/smallgreenrect.jpg               | Bin 13542 -> 0 bytes
 .../src/assets/smallorangerect.gif              | Bin 821 -> 0 bytes
 .../src/assets/smallorangerect.jpg              | Bin 13571 -> 0 bytes
 .../src/assets/smallpurplerect.jpg              | Bin 13517 -> 0 bytes
 .../DataGridExample/src/assets/smallredrect.jpg | Bin 13477 -> 0 bytes
 .../src/assets/smallyellowrect.jpg              | Bin 13598 -> 0 bytes
 .../src/main/flex/DataGridExample.mxml          |  36 ++
 .../src/main/flex/MyInitialView.mxml            |  68 +++
 .../src/main/flex/assets/smallbluerect.jpg      | Bin 0 -> 13500 bytes
 .../src/main/flex/assets/smallgreenrect.jpg     | Bin 0 -> 13542 bytes
 .../src/main/flex/assets/smallorangerect.gif    | Bin 0 -> 821 bytes
 .../src/main/flex/assets/smallorangerect.jpg    | Bin 0 -> 13571 bytes
 .../src/main/flex/assets/smallpurplerect.jpg    | Bin 0 -> 13517 bytes
 .../src/main/flex/assets/smallredrect.jpg       | Bin 0 -> 13477 bytes
 .../src/main/flex/assets/smallyellowrect.jpg    | Bin 0 -> 13598 bytes
 .../src/main/flex/models/ProductsModel.as       |  55 ++
 .../src/main/flex/products/Product.as           |  43 ++
 .../main/flex/products/ProductItemRenderer.as   |  66 +++
 .../DataGridExample/src/models/ProductsModel.as |  55 --
 .../DataGridExample/src/products/Product.as     |  43 --
 .../src/products/ProductItemRenderer.as         |  66 ---
 examples/flexjs/DesktopMap/src/DesktopMap.mxml  |  46 --
 .../flexjs/DesktopMap/src/MyInitialView.mxml    | 147 -----
 .../DesktopMap/src/main/flex/DesktopMap.mxml    |  46 ++
 .../DesktopMap/src/main/flex/MyInitialView.mxml | 147 +++++
 .../DesktopMap/src/main/flex/models/MyModel.as  |  58 ++
 .../flexjs/DesktopMap/src/models/MyModel.as     |  58 --
 .../flexjs/FlexJSStore/src/FlexJSStore.mxml     | 268 ---------
 examples/flexjs/FlexJSStore/src/HomeView.mxml   | 194 -------
 .../FlexJSStore/src/ProductJSONItemConverter.as |  41 --
 .../flexjs/FlexJSStore/src/ProductsView.mxml    | 121 ----
 .../flexjs/FlexJSStore/src/SupportView.mxml     | 149 -----
 .../src/assets/427px-Bayarea_map.png            | Bin 122661 -> 0 bytes
 .../flexjs/FlexJSStore/src/assets/akotter.jpg   | Bin 19395 -> 0 bytes
 .../flexjs/FlexJSStore/src/assets/bcrater.jpg   | Bin 22670 -> 0 bytes
 .../FlexJSStore/src/assets/beige_background.jpg | Bin 12533 -> 0 bytes
 .../FlexJSStore/src/assets/beige_dotted_map.png | Bin 216598 -> 0 bytes
 .../FlexJSStore/src/assets/blue_background.jpg  | Bin 12868 -> 0 bytes
 .../FlexJSStore/src/assets/blue_dotted_map.png  | Bin 217088 -> 0 bytes
 .../src/assets/button_cart_empty.png            | Bin 289 -> 0 bytes
 .../FlexJSStore/src/assets/button_cart_full.png | Bin 308 -> 0 bytes
 .../FlexJSStore/src/assets/button_compare.png   | Bin 304 -> 0 bytes
 .../FlexJSStore/src/assets/button_details.png   | Bin 284 -> 0 bytes
 .../FlexJSStore/src/assets/button_tiles.png     | Bin 218 -> 0 bytes
 examples/flexjs/FlexJSStore/src/assets/grip.png | Bin 19836 -> 0 bytes
 .../FlexJSStore/src/assets/icon_cart_empty.png  | Bin 29594 -> 0 bytes
 .../FlexJSStore/src/assets/icon_compare.png     | Bin 30218 -> 0 bytes
 .../FlexJSStore/src/assets/icon_magnifier.png   | Bin 30454 -> 0 bytes
 .../FlexJSStore/src/assets/icon_tiles.png       | Bin 27988 -> 0 bytes
 .../flexjs/FlexJSStore/src/assets/jproctor.jpg  | Bin 21684 -> 0 bytes
 .../flexjs/FlexJSStore/src/assets/logo_blue.png | Bin 33677 -> 0 bytes
 .../FlexJSStore/src/assets/logo_orange.png      | Bin 34166 -> 0 bytes
 .../FlexJSStore/src/assets/pic/abrilliam.jpg    | Bin 18903 -> 0 bytes
 .../FlexJSStore/src/assets/pic/akotter.jpg      | Bin 19395 -> 0 bytes
 .../FlexJSStore/src/assets/pic/bcrater.jpg      | Bin 22670 -> 0 bytes
 .../FlexJSStore/src/assets/pic/bleporte.jpg     | Bin 23363 -> 0 bytes
 .../FlexJSStore/src/assets/pic/bvanbrocklin.jpg | Bin 18066 -> 0 bytes
 .../FlexJSStore/src/assets/pic/ccarpenter.jpg   | Bin 19219 -> 0 bytes
 .../FlexJSStore/src/assets/pic/clampberto.jpg   | Bin 18611 -> 0 bytes
 .../FlexJSStore/src/assets/pic/davenon.jpg      | Bin 20028 -> 0 bytes
 .../FlexJSStore/src/assets/pic/dmcgoyal.jpg     | Bin 19395 -> 0 bytes
 .../FlexJSStore/src/assets/pic/dwillhelm.jpg    | Bin 22670 -> 0 bytes
 .../FlexJSStore/src/assets/pic/esunderland.jpg  | Bin 23363 -> 0 bytes
 .../FlexJSStore/src/assets/pic/jproctor.jpg     | Bin 21684 -> 0 bytes
 .../FlexJSStore/src/assets/pic/mfields.jpg      | Bin 18066 -> 0 bytes
 .../FlexJSStore/src/assets/pic/pdempsey.jpg     | Bin 18611 -> 0 bytes
 .../FlexJSStore/src/assets/pic/ptranep.jpg      | Bin 19627 -> 0 bytes
 .../FlexJSStore/src/assets/pic/rcrawley.jpg     | Bin 23692 -> 0 bytes
 .../FlexJSStore/src/assets/pic/rdreifus.jpg     | Bin 20028 -> 0 bytes
 .../flexjs/FlexJSStore/src/assets/pic/twong.jpg | Bin 19395 -> 0 bytes
 .../src/assets/support_mapmarker_a.png          | Bin 834 -> 0 bytes
 .../src/assets/support_mapmarker_b.png          | Bin 822 -> 0 bytes
 .../src/assets/support_mapmarker_c.png          | Bin 817 -> 0 bytes
 .../src/assets/support_mapmarker_plus.png       | Bin 827 -> 0 bytes
 .../flexjs/FlexJSStore/src/assets/trashcan.png  | Bin 182 -> 0 bytes
 examples/flexjs/FlexJSStore/src/beige.css       | 171 ------
 examples/flexjs/FlexJSStore/src/blue.css        | 165 ------
 .../flexjs/FlexJSStore/src/data/catalog.json    | 236 --------
 .../flexjs/FlexJSStore/src/data/catalog.xml     | 256 ---------
 examples/flexjs/FlexJSStore/src/main.css        | 100 ----
 .../FlexJSStore/src/main/flex/FlexJSStore.mxml  | 268 +++++++++
 .../FlexJSStore/src/main/flex/HomeView.mxml     | 194 +++++++
 .../src/main/flex/ProductJSONItemConverter.as   |  41 ++
 .../FlexJSStore/src/main/flex/ProductsView.mxml | 121 ++++
 .../FlexJSStore/src/main/flex/SupportView.mxml  | 149 +++++
 .../src/main/flex/assets/427px-Bayarea_map.png  | Bin 0 -> 122661 bytes
 .../src/main/flex/assets/akotter.jpg            | Bin 0 -> 19395 bytes
 .../src/main/flex/assets/bcrater.jpg            | Bin 0 -> 22670 bytes
 .../src/main/flex/assets/beige_background.jpg   | Bin 0 -> 12533 bytes
 .../src/main/flex/assets/beige_dotted_map.png   | Bin 0 -> 216598 bytes
 .../src/main/flex/assets/blue_background.jpg    | Bin 0 -> 12868 bytes
 .../src/main/flex/assets/blue_dotted_map.png    | Bin 0 -> 217088 bytes
 .../src/main/flex/assets/button_cart_empty.png  | Bin 0 -> 289 bytes
 .../src/main/flex/assets/button_cart_full.png   | Bin 0 -> 308 bytes
 .../src/main/flex/assets/button_compare.png     | Bin 0 -> 304 bytes
 .../src/main/flex/assets/button_details.png     | Bin 0 -> 284 bytes
 .../src/main/flex/assets/button_tiles.png       | Bin 0 -> 218 bytes
 .../FlexJSStore/src/main/flex/assets/grip.png   | Bin 0 -> 19836 bytes
 .../src/main/flex/assets/icon_cart_empty.png    | Bin 0 -> 29594 bytes
 .../src/main/flex/assets/icon_compare.png       | Bin 0 -> 30218 bytes
 .../src/main/flex/assets/icon_magnifier.png     | Bin 0 -> 30454 bytes
 .../src/main/flex/assets/icon_tiles.png         | Bin 0 -> 27988 bytes
 .../src/main/flex/assets/jproctor.jpg           | Bin 0 -> 21684 bytes
 .../src/main/flex/assets/logo_blue.png          | Bin 0 -> 33677 bytes
 .../src/main/flex/assets/logo_orange.png        | Bin 0 -> 34166 bytes
 .../src/main/flex/assets/pic/abrilliam.jpg      | Bin 0 -> 18903 bytes
 .../src/main/flex/assets/pic/akotter.jpg        | Bin 0 -> 19395 bytes
 .../src/main/flex/assets/pic/bcrater.jpg        | Bin 0 -> 22670 bytes
 .../src/main/flex/assets/pic/bleporte.jpg       | Bin 0 -> 23363 bytes
 .../src/main/flex/assets/pic/bvanbrocklin.jpg   | Bin 0 -> 18066 bytes
 .../src/main/flex/assets/pic/ccarpenter.jpg     | Bin 0 -> 19219 bytes
 .../src/main/flex/assets/pic/clampberto.jpg     | Bin 0 -> 18611 bytes
 .../src/main/flex/assets/pic/davenon.jpg        | Bin 0 -> 20028 bytes
 .../src/main/flex/assets/pic/dmcgoyal.jpg       | Bin 0 -> 19395 bytes
 .../src/main/flex/assets/pic/dwillhelm.jpg      | Bin 0 -> 22670 bytes
 .../src/main/flex/assets/pic/esunderland.jpg    | Bin 0 -> 23363 bytes
 .../src/main/flex/assets/pic/jproctor.jpg       | Bin 0 -> 21684 bytes
 .../src/main/flex/assets/pic/mfields.jpg        | Bin 0 -> 18066 bytes
 .../src/main/flex/assets/pic/pdempsey.jpg       | Bin 0 -> 18611 bytes
 .../src/main/flex/assets/pic/ptranep.jpg        | Bin 0 -> 19627 bytes
 .../src/main/flex/assets/pic/rcrawley.jpg       | Bin 0 -> 23692 bytes
 .../src/main/flex/assets/pic/rdreifus.jpg       | Bin 0 -> 20028 bytes
 .../src/main/flex/assets/pic/twong.jpg          | Bin 0 -> 19395 bytes
 .../main/flex/assets/support_mapmarker_a.png    | Bin 0 -> 834 bytes
 .../main/flex/assets/support_mapmarker_b.png    | Bin 0 -> 822 bytes
 .../main/flex/assets/support_mapmarker_c.png    | Bin 0 -> 817 bytes
 .../main/flex/assets/support_mapmarker_plus.png | Bin 0 -> 827 bytes
 .../src/main/flex/assets/trashcan.png           | Bin 0 -> 182 bytes
 .../flexjs/FlexJSStore/src/main/flex/beige.css  | 171 ++++++
 .../flexjs/FlexJSStore/src/main/flex/blue.css   | 165 ++++++
 .../FlexJSStore/src/main/flex/data/catalog.json | 236 ++++++++
 .../FlexJSStore/src/main/flex/data/catalog.xml  | 256 +++++++++
 .../flexjs/FlexJSStore/src/main/flex/main.css   | 100 ++++
 .../flex/productsView/CatalogTitleButtons.mxml  |  72 +++
 .../src/main/flex/productsView/Grip.mxml        |  48 ++
 .../src/main/flex/productsView/ProductCart.mxml | 117 ++++
 .../flex/productsView/ProductCatalogPanel.mxml  | 546 +++++++++++++++++++
 .../ProductCatalogPanelTitleBarView.mxml        |  49 ++
 .../productsView/ProductCatalogThumbnail.mxml   | 220 ++++++++
 .../main/flex/productsView/ProductDetails.mxml  | 145 +++++
 .../flex/productsView/ProductFilterPanel.mxml   | 215 ++++++++
 .../src/main/flex/productsView/ProductList.mxml | 219 ++++++++
 .../main/flex/productsView/ProductListItem.mxml | 140 +++++
 .../main/flex/productsView/ProductSupport.mxml  |  90 +++
 .../samples/flexstore/ButtonBarButtonSkin.as    | 298 ++++++++++
 .../src/main/flex/samples/flexstore/Product.as  |  78 +++
 .../flex/samples/flexstore/ProductFilter.as     |  56 ++
 .../samples/flexstore/ProductFilterEvent.as     |  39 ++
 .../flex/samples/flexstore/ProductListEvent.as  |  42 ++
 .../flex/samples/flexstore/ProductThumbEvent.as |  45 ++
 .../src/productsView/CatalogTitleButtons.mxml   |  72 ---
 .../FlexJSStore/src/productsView/Grip.mxml      |  48 --
 .../src/productsView/ProductCart.mxml           | 117 ----
 .../src/productsView/ProductCatalogPanel.mxml   | 546 -------------------
 .../ProductCatalogPanelTitleBarView.mxml        |  49 --
 .../productsView/ProductCatalogThumbnail.mxml   | 220 --------
 .../src/productsView/ProductDetails.mxml        | 145 -----
 .../src/productsView/ProductFilterPanel.mxml    | 215 --------
 .../src/productsView/ProductList.mxml           | 219 --------
 .../src/productsView/ProductListItem.mxml       | 140 -----
 .../src/productsView/ProductSupport.mxml        |  90 ---
 .../samples/flexstore/ButtonBarButtonSkin.as    | 298 ----------
 .../src/samples/flexstore/Product.as            |  78 ---
 .../src/samples/flexstore/ProductFilter.as      |  56 --
 .../src/samples/flexstore/ProductFilterEvent.as |  39 --
 .../src/samples/flexstore/ProductListEvent.as   |  42 --
 .../src/samples/flexstore/ProductThumbEvent.as  |  45 --
 .../FlexJSStore_jquery/src/FlexJSStore.mxml     | 268 ---------
 .../flexjs/FlexJSStore_jquery/src/HomeView.mxml | 195 -------
 .../src/ProductJSONItemConverter.as             |  41 --
 .../FlexJSStore_jquery/src/ProductsView.mxml    | 121 ----
 .../FlexJSStore_jquery/src/SupportView.mxml     | 149 -----
 .../src/assets/427px-Bayarea_map.png            | Bin 122661 -> 0 bytes
 .../FlexJSStore_jquery/src/assets/akotter.jpg   | Bin 19395 -> 0 bytes
 .../FlexJSStore_jquery/src/assets/bcrater.jpg   | Bin 22670 -> 0 bytes
 .../src/assets/beige_background.jpg             | Bin 12533 -> 0 bytes
 .../src/assets/beige_dotted_map.png             | Bin 216598 -> 0 bytes
 .../src/assets/blue_background.jpg              | Bin 12868 -> 0 bytes
 .../src/assets/blue_dotted_map.png              | Bin 217088 -> 0 bytes
 .../src/assets/button_cart_empty.png            | Bin 289 -> 0 bytes
 .../src/assets/button_cart_full.png             | Bin 308 -> 0 bytes
 .../src/assets/button_compare.png               | Bin 304 -> 0 bytes
 .../src/assets/button_details.png               | Bin 284 -> 0 bytes
 .../src/assets/button_tiles.png                 | Bin 218 -> 0 bytes
 .../FlexJSStore_jquery/src/assets/grip.png      | Bin 19836 -> 0 bytes
 .../src/assets/icon_cart_empty.png              | Bin 29594 -> 0 bytes
 .../src/assets/icon_compare.png                 | Bin 30218 -> 0 bytes
 .../src/assets/icon_magnifier.png               | Bin 30454 -> 0 bytes
 .../src/assets/icon_tiles.png                   | Bin 27988 -> 0 bytes
 .../FlexJSStore_jquery/src/assets/jproctor.jpg  | Bin 21684 -> 0 bytes
 .../FlexJSStore_jquery/src/assets/logo_blue.png | Bin 33677 -> 0 bytes
 .../src/assets/logo_orange.png                  | Bin 34199 -> 0 bytes
 .../src/assets/pic/abrilliam.jpg                | Bin 18903 -> 0 bytes
 .../src/assets/pic/akotter.jpg                  | Bin 19395 -> 0 bytes
 .../src/assets/pic/bcrater.jpg                  | Bin 22670 -> 0 bytes
 .../src/assets/pic/bleporte.jpg                 | Bin 23363 -> 0 bytes
 .../src/assets/pic/bvanbrocklin.jpg             | Bin 18066 -> 0 bytes
 .../src/assets/pic/ccarpenter.jpg               | Bin 19219 -> 0 bytes
 .../src/assets/pic/clampberto.jpg               | Bin 18611 -> 0 bytes
 .../src/assets/pic/davenon.jpg                  | Bin 20028 -> 0 bytes
 .../src/assets/pic/dmcgoyal.jpg                 | Bin 19395 -> 0 bytes
 .../src/assets/pic/dwillhelm.jpg                | Bin 22670 -> 0 bytes
 .../src/assets/pic/esunderland.jpg              | Bin 23363 -> 0 bytes
 .../src/assets/pic/jproctor.jpg                 | Bin 21684 -> 0 bytes
 .../src/assets/pic/mfields.jpg                  | Bin 18066 -> 0 bytes
 .../src/assets/pic/pdempsey.jpg                 | Bin 18611 -> 0 bytes
 .../src/assets/pic/ptranep.jpg                  | Bin 19627 -> 0 bytes
 .../src/assets/pic/rcrawley.jpg                 | Bin 23692 -> 0 bytes
 .../src/assets/pic/rdreifus.jpg                 | Bin 20028 -> 0 bytes
 .../FlexJSStore_jquery/src/assets/pic/twong.jpg | Bin 19395 -> 0 bytes
 .../src/assets/support_mapmarker_a.png          | Bin 834 -> 0 bytes
 .../src/assets/support_mapmarker_b.png          | Bin 822 -> 0 bytes
 .../src/assets/support_mapmarker_c.png          | Bin 817 -> 0 bytes
 .../src/assets/support_mapmarker_plus.png       | Bin 827 -> 0 bytes
 .../FlexJSStore_jquery/src/assets/trashcan.png  | Bin 182 -> 0 bytes
 .../flexjs/FlexJSStore_jquery/src/beige.css     | 171 ------
 examples/flexjs/FlexJSStore_jquery/src/blue.css | 165 ------
 .../FlexJSStore_jquery/src/data/catalog.json    | 236 --------
 .../FlexJSStore_jquery/src/data/catalog.xml     | 256 ---------
 examples/flexjs/FlexJSStore_jquery/src/main.css | 100 ----
 .../src/main/flex/FlexJSStore.mxml              | 268 +++++++++
 .../src/main/flex/HomeView.mxml                 | 195 +++++++
 .../src/main/flex/ProductJSONItemConverter.as   |  41 ++
 .../src/main/flex/ProductsView.mxml             | 121 ++++
 .../src/main/flex/SupportView.mxml              | 149 +++++
 .../src/main/flex/assets/427px-Bayarea_map.png  | Bin 0 -> 122661 bytes
 .../src/main/flex/assets/akotter.jpg            | Bin 0 -> 19395 bytes
 .../src/main/flex/assets/bcrater.jpg            | Bin 0 -> 22670 bytes
 .../src/main/flex/assets/beige_background.jpg   | Bin 0 -> 12533 bytes
 .../src/main/flex/assets/beige_dotted_map.png   | Bin 0 -> 216598 bytes
 .../src/main/flex/assets/blue_background.jpg    | Bin 0 -> 12868 bytes
 .../src/main/flex/assets/blue_dotted_map.png    | Bin 0 -> 217088 bytes
 .../src/main/flex/assets/button_cart_empty.png  | Bin 0 -> 289 bytes
 .../src/main/flex/assets/button_cart_full.png   | Bin 0 -> 308 bytes
 .../src/main/flex/assets/button_compare.png     | Bin 0 -> 304 bytes
 .../src/main/flex/assets/button_details.png     | Bin 0 -> 284 bytes
 .../src/main/flex/assets/button_tiles.png       | Bin 0 -> 218 bytes
 .../src/main/flex/assets/grip.png               | Bin 0 -> 19836 bytes
 .../src/main/flex/assets/icon_cart_empty.png    | Bin 0 -> 29594 bytes
 .../src/main/flex/assets/icon_compare.png       | Bin 0 -> 30218 bytes
 .../src/main/flex/assets/icon_magnifier.png     | Bin 0 -> 30454 bytes
 .../src/main/flex/assets/icon_tiles.png         | Bin 0 -> 27988 bytes
 .../src/main/flex/assets/jproctor.jpg           | Bin 0 -> 21684 bytes
 .../src/main/flex/assets/logo_blue.png          | Bin 0 -> 33677 bytes
 .../src/main/flex/assets/logo_orange.png        | Bin 0 -> 34199 bytes
 .../src/main/flex/assets/pic/abrilliam.jpg      | Bin 0 -> 18903 bytes
 .../src/main/flex/assets/pic/akotter.jpg        | Bin 0 -> 19395 bytes
 .../src/main/flex/assets/pic/bcrater.jpg        | Bin 0 -> 22670 bytes
 .../src/main/flex/assets/pic/bleporte.jpg       | Bin 0 -> 23363 bytes
 .../src/main/flex/assets/pic/bvanbrocklin.jpg   | Bin 0 -> 18066 bytes
 .../src/main/flex/assets/pic/ccarpenter.jpg     | Bin 0 -> 19219 bytes
 .../src/main/flex/assets/pic/clampberto.jpg     | Bin 0 -> 18611 bytes
 .../src/main/flex/assets/pic/davenon.jpg        | Bin 0 -> 20028 bytes
 .../src/main/flex/assets/pic/dmcgoyal.jpg       | Bin 0 -> 19395 bytes
 .../src/main/flex/assets/pic/dwillhelm.jpg      | Bin 0 -> 22670 bytes
 .../src/main/flex/assets/pic/esunderland.jpg    | Bin 0 -> 23363 bytes
 .../src/main/flex/assets/pic/jproctor.jpg       | Bin 0 -> 21684 bytes
 .../src/main/flex/assets/pic/mfields.jpg        | Bin 0 -> 18066 bytes
 .../src/main/flex/assets/pic/pdempsey.jpg       | Bin 0 -> 18611 bytes
 .../src/main/flex/assets/pic/ptranep.jpg        | Bin 0 -> 19627 bytes
 .../src/main/flex/assets/pic/rcrawley.jpg       | Bin 0 -> 23692 bytes
 .../src/main/flex/assets/pic/rdreifus.jpg       | Bin 0 -> 20028 bytes
 .../src/main/flex/assets/pic/twong.jpg          | Bin 0 -> 19395 bytes
 .../main/flex/assets/support_mapmarker_a.png    | Bin 0 -> 834 bytes
 .../main/flex/assets/support_mapmarker_b.png    | Bin 0 -> 822 bytes
 .../main/flex/assets/support_mapmarker_c.png    | Bin 0 -> 817 bytes
 .../main/flex/assets/support_mapmarker_plus.png | Bin 0 -> 827 bytes
 .../src/main/flex/assets/trashcan.png           | Bin 0 -> 182 bytes
 .../FlexJSStore_jquery/src/main/flex/beige.css  | 171 ++++++
 .../FlexJSStore_jquery/src/main/flex/blue.css   | 165 ++++++
 .../src/main/flex/data/catalog.json             | 236 ++++++++
 .../src/main/flex/data/catalog.xml              | 256 +++++++++
 .../FlexJSStore_jquery/src/main/flex/main.css   | 100 ++++
 .../flex/productsView/CatalogTitleButtons.mxml  |  72 +++
 .../src/main/flex/productsView/Grip.mxml        |  48 ++
 .../src/main/flex/productsView/ProductCart.mxml | 117 ++++
 .../flex/productsView/ProductCatalogPanel.mxml  | 546 +++++++++++++++++++
 .../ProductCatalogPanelTitleBarView.mxml        |  49 ++
 .../productsView/ProductCatalogThumbnail.mxml   | 220 ++++++++
 .../main/flex/productsView/ProductDetails.mxml  | 145 +++++
 .../flex/productsView/ProductFilterPanel.mxml   | 215 ++++++++
 .../src/main/flex/productsView/ProductList.mxml | 219 ++++++++
 .../main/flex/productsView/ProductListItem.mxml | 140 +++++
 .../main/flex/productsView/ProductSupport.mxml  |  90 +++
 .../samples/flexstore/ButtonBarButtonSkin.as    | 298 ++++++++++
 .../src/main/flex/samples/flexstore/Product.as  |  78 +++
 .../flex/samples/flexstore/ProductFilter.as     |  56 ++
 .../samples/flexstore/ProductFilterEvent.as     |  39 ++
 .../flex/samples/flexstore/ProductListEvent.as  |  42 ++
 .../flex/samples/flexstore/ProductThumbEvent.as |  45 ++
 .../src/productsView/CatalogTitleButtons.mxml   |  72 ---
 .../src/productsView/Grip.mxml                  |  48 --
 .../src/productsView/ProductCart.mxml           | 117 ----
 .../src/productsView/ProductCatalogPanel.mxml   | 546 -------------------
 .../ProductCatalogPanelTitleBarView.mxml        |  49 --
 .../productsView/ProductCatalogThumbnail.mxml   | 220 --------
 .../src/productsView/ProductDetails.mxml        | 145 -----
 .../src/productsView/ProductFilterPanel.mxml    | 215 --------
 .../src/productsView/ProductList.mxml           | 219 --------
 .../src/productsView/ProductListItem.mxml       | 140 -----
 .../src/productsView/ProductSupport.mxml        |  90 ---
 .../samples/flexstore/ButtonBarButtonSkin.as    | 298 ----------
 .../src/samples/flexstore/Product.as            |  78 ---
 .../src/samples/flexstore/ProductFilter.as      |  56 --
 .../src/samples/flexstore/ProductFilterEvent.as |  39 --
 .../src/samples/flexstore/ProductListEvent.as   |  42 --
 .../src/samples/flexstore/ProductThumbEvent.as  |  45 --
 .../src/FlexWebsiteStatsViewer.mxml             |  55 --
 .../FlexWebsiteStatsViewer/src/StatsView.mxml   |  87 ---
 .../src/controllers/GAJSONInputParser.as        |  38 --
 .../controllers/GAStatsDataJSONItemConverter.as |  41 --
 .../src/controllers/StatsController.as          |  77 ---
 .../src/main/flex/FlexWebsiteStatsViewer.mxml   |  55 ++
 .../src/main/flex/StatsView.mxml                |  87 +++
 .../main/flex/controllers/GAJSONInputParser.as  |  38 ++
 .../controllers/GAStatsDataJSONItemConverter.as |  41 ++
 .../main/flex/controllers/StatsController.as    |  77 +++
 .../src/main/flex/models/StatsModel.as          |  55 ++
 .../src/models/StatsModel.as                    |  55 --
 examples/flexjs/HelloWorld/src/HelloWorld.mxml  |  30 -
 .../HelloWorld/src/main/flex/HelloWorld.mxml    |  30 +
 examples/flexjs/MapSearch/src/MapSearch.mxml    |  46 --
 .../flexjs/MapSearch/src/MyInitialView.mxml     | 211 -------
 .../MapSearch/src/main/flex/MapSearch.mxml      |  46 ++
 .../MapSearch/src/main/flex/MyInitialView.mxml  | 211 +++++++
 .../MapSearch/src/main/flex/models/MyModel.as   |  71 +++
 examples/flexjs/MapSearch/src/models/MyModel.as |  71 ---
 examples/flexjs/MobileMap/resources/config.xml  |  44 --
 examples/flexjs/MobileMap/src/MobileMap.mxml    |  71 ---
 .../MobileMap/src/main/flex/MobileMap.mxml      |  71 +++
 .../MobileMap/src/main/resources/config.xml     |  44 ++
 .../flexjs/MobileStocks/resources/config.xml    |  44 --
 .../flexjs/MobileStocks/src/MobileStocks.mxml   |  50 --
 .../flexjs/MobileStocks/src/MyInitialView.mxml  | 253 ---------
 .../src/StockDataJSONItemConverter.as           |  41 --
 .../src/VerticalLayoutTextView.mxml             |  68 ---
 .../MobileStocks/src/assets/arrow_left_24.png   | Bin 47785 -> 0 bytes
 .../MobileStocks/src/assets/background.png      | Bin 49376 -> 0 bytes
 .../flexjs/MobileStocks/src/assets/logo.png     | Bin 55223 -> 0 bytes
 .../src/controller/LaunchViewController.as      | 150 -----
 .../src/controller/WatchListController.as       | 139 -----
 .../src/main/flex/MobileStocks.mxml             |  50 ++
 .../src/main/flex/MyInitialView.mxml            | 253 +++++++++
 .../src/main/flex/StockDataJSONItemConverter.as |  41 ++
 .../src/main/flex/VerticalLayoutTextView.mxml   |  68 +++
 .../src/main/flex/assets/arrow_left_24.png      | Bin 0 -> 47785 bytes
 .../src/main/flex/assets/background.png         | Bin 0 -> 49376 bytes
 .../MobileStocks/src/main/flex/assets/logo.png  | Bin 0 -> 55223 bytes
 .../flex/controller/LaunchViewController.as     | 150 +++++
 .../main/flex/controller/WatchListController.as | 139 +++++
 .../src/main/flex/models/ProductsModel.as       | 271 +++++++++
 .../MobileStocks/src/main/flex/models/Stock.as  | 168 ++++++
 .../src/main/flex/renderers/AlertRenderer.as    |  44 ++
 .../main/flex/renderers/CompanyNameRenderer.as  |  37 ++
 .../main/flex/renderers/SharesTotalRenderer.as  |  37 ++
 .../src/main/flex/renderers/StockRenderer.as    |  47 ++
 .../src/main/flex/views/LaunchView.mxml         | 204 +++++++
 .../src/main/flex/views/StockView.mxml          | 102 ++++
 .../src/main/flex/views/WatchListView.mxml      | 135 +++++
 .../MobileStocks/src/main/resources/config.xml  |  44 ++
 .../MobileStocks/src/models/ProductsModel.as    | 271 ---------
 .../flexjs/MobileStocks/src/models/Stock.as     | 168 ------
 .../MobileStocks/src/renderers/AlertRenderer.as |  44 --
 .../src/renderers/CompanyNameRenderer.as        |  37 --
 .../src/renderers/SharesTotalRenderer.as        |  37 --
 .../MobileStocks/src/renderers/StockRenderer.as |  47 --
 .../MobileStocks/src/views/LaunchView.mxml      | 204 -------
 .../MobileStocks/src/views/StockView.mxml       | 102 ----
 .../MobileStocks/src/views/WatchListView.mxml   | 135 -----
 .../flexjs/MobileTrader/resources/config.xml    |  44 --
 .../flexjs/MobileTrader/src/MobileTrader.mxml   |  39 --
 .../flexjs/MobileTrader/src/MyInitialView.mxml  | 256 ---------
 .../src/StockDataJSONItemConverter.as           |  40 --
 .../MobileTrader/src/assets/arrow_left_24.png   | Bin 47785 -> 0 bytes
 .../MobileTrader/src/assets/background.png      | Bin 49376 -> 0 bytes
 .../flexjs/MobileTrader/src/assets/logo.png     | Bin 55223 -> 0 bytes
 .../src/controller/AlertsViewController.as      | 141 -----
 .../src/controller/WatchListController.as       | 138 -----
 .../src/main/flex/MobileTrader.mxml             |  39 ++
 .../src/main/flex/MyInitialView.mxml            | 256 +++++++++
 .../src/main/flex/StockDataJSONItemConverter.as |  40 ++
 .../src/main/flex/assets/arrow_left_24.png      | Bin 0 -> 47785 bytes
 .../src/main/flex/assets/background.png         | Bin 0 -> 49376 bytes
 .../MobileTrader/src/main/flex/assets/logo.png  | Bin 0 -> 55223 bytes
 .../flex/controller/AlertsViewController.as     | 141 +++++
 .../main/flex/controller/WatchListController.as | 138 +++++
 .../MobileTrader/src/main/flex/models/Alert.as  |  94 ++++
 .../MobileTrader/src/main/flex/models/Asset.as  |  77 +++
 .../src/main/flex/models/AssetsModel.as         |  57 ++
 .../src/main/flex/models/ProductsModel.as       | 165 ++++++
 .../MobileTrader/src/main/flex/models/Stock.as  | 148 +++++
 .../src/main/flex/renderers/AlertRenderer.as    |  44 ++
 .../src/main/flex/renderers/StockRenderer.as    |  47 ++
 .../src/main/flex/views/AlertsView.mxml         | 101 ++++
 .../src/main/flex/views/AssetsView.mxml         |  89 +++
 .../src/main/flex/views/SearchView.mxml         |  37 ++
 .../src/main/flex/views/StockView.mxml          |  98 ++++
 .../src/main/flex/views/WatchListView.mxml      | 151 +++++
 .../MobileTrader/src/main/resources/config.xml  |  44 ++
 .../flexjs/MobileTrader/src/models/Alert.as     |  94 ----
 .../flexjs/MobileTrader/src/models/Asset.as     |  77 ---
 .../MobileTrader/src/models/AssetsModel.as      |  57 --
 .../MobileTrader/src/models/ProductsModel.as    | 165 ------
 .../flexjs/MobileTrader/src/models/Stock.as     | 148 -----
 .../MobileTrader/src/renderers/AlertRenderer.as |  44 --
 .../MobileTrader/src/renderers/StockRenderer.as |  47 --
 .../MobileTrader/src/views/AlertsView.mxml      | 101 ----
 .../MobileTrader/src/views/AssetsView.mxml      |  89 ---
 .../MobileTrader/src/views/SearchView.mxml      |  37 --
 .../MobileTrader/src/views/StockView.mxml       |  98 ----
 .../MobileTrader/src/views/WatchListView.mxml   | 151 -----
 .../flexjs/StorageExample/resources/config.xml  |  44 --
 .../StorageExample/src/MyInitialView.mxml       | 245 ---------
 .../StorageExample/src/StorageExample.mxml      |  42 --
 .../src/main/flex/MyInitialView.mxml            | 245 +++++++++
 .../src/main/flex/StorageExample.mxml           |  42 ++
 .../src/main/flex/models/MyModel.as             |  58 ++
 .../src/main/resources/config.xml               |  44 ++
 .../flexjs/StorageExample/src/models/MyModel.as |  58 --
 .../flexjs/StyleExample/src/MyInitialView.mxml  | 427 ---------------
 .../flexjs/StyleExample/src/StyleExample.mxml   |  34 --
 .../src/main/flex/MyInitialView.mxml            | 427 +++++++++++++++
 .../src/main/flex/StyleExample.mxml             |  34 ++
 .../src/main/flex/models/MyModel.as             |  53 ++
 .../flexjs/StyleExample/src/models/MyModel.as   |  53 --
 .../src/TodoListSampleApp.mxml                  |  43 --
 .../src/main/flex/TodoListSampleApp.mxml        |  43 ++
 .../todo/controllers/TodoListController.as      |  77 +++
 .../flex/sample/todo/events/TodoListEvent.as    |  42 ++
 .../flex/sample/todo/models/TodoListModel.as    |  99 ++++
 .../sample/todo/renderers/TodoItemRenderer.as   |  90 +++
 .../flex/sample/todo/views/TodoListView.mxml    | 172 ++++++
 .../todo/controllers/TodoListController.as      |  77 ---
 .../src/sample/todo/events/TodoListEvent.as     |  42 --
 .../src/sample/todo/models/TodoListModel.as     |  99 ----
 .../sample/todo/renderers/TodoItemRenderer.as   |  90 ---
 .../src/sample/todo/views/TodoListView.mxml     | 172 ------
 .../flexjs/TreeExample/src/MyInitialView.mxml   |  37 --
 .../flexjs/TreeExample/src/TreeExample.mxml     |  36 --
 .../src/main/flex/MyInitialView.mxml            |  37 ++
 .../TreeExample/src/main/flex/TreeExample.mxml  |  36 ++
 .../TreeExample/src/main/flex/models/MyModel.as |  72 +++
 .../flexjs/TreeExample/src/models/MyModel.as    |  72 ---
 examples/pom.xml                                |   4 +-
 pom.xml                                         |  90 ++-
 src/site/site.xml                               |  46 +-
 499 files changed, 17503 insertions(+), 17389 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/ChartExample/src/ChartExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/ChartExample/src/ChartExample.mxml b/examples/flexjs/ChartExample/src/ChartExample.mxml
deleted file mode 100644
index 57bc2a4..0000000
--- a/examples/flexjs/ChartExample/src/ChartExample.mxml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!---
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-				   xmlns:local="*"
-				   xmlns:models="models.*"
-				   xmlns:js="library://ns.apache.org/flexjs/basic" 
-				   >
-	<js:beads>
-        <js:BrowserScroller />
-    </js:beads>
-	<js:valuesImpl>
-		<js:SimpleCSSValuesImpl />
-	</js:valuesImpl>
-	<js:model>
-		<models:ProductsModel />
-	</js:model>
-	<js:initialView>
-		<local:MyInitialView />
-	</js:initialView>
-</js:Application>
-

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/ChartExample/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/ChartExample/src/MyInitialView.mxml b/examples/flexjs/ChartExample/src/MyInitialView.mxml
deleted file mode 100644
index 17e2e09..0000000
--- a/examples/flexjs/ChartExample/src/MyInitialView.mxml
+++ /dev/null
@@ -1,312 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:js="library://ns.apache.org/flexjs/basic"
-				xmlns:local="*" 
-				xmlns:models="models.*"
-                initComplete="testit()"
-				>
-	<fx:Script>
-		<![CDATA[
-			
-			import models.ProductsModel;
-			
-			private function testit():void
-			{
-				var m:ProductsModel = applicationModel as ProductsModel;
-				m.generateWaves(50);
-				waveChart.dataProvider = m.wave1;
-			}
-			
-		]]>
-	</fx:Script>
-	
-	<fx:Style>
-		@namespace js "library://ns.apache.org/flexjs/basic";
-		.AllCharts {
-			border-width: 0px;
-			padding-left: 2px;
-			padding-top: 10px;
-			padding-bottom: 2px;
-			padding-right: 10px;
-		}
-	</fx:Style>
-	
-	<js:Label id="output" x="50" y="30" width="100" />
-	
-	<js:ColumnChart id="columnChart" x="20" y="20" width="400" height="200" className="AllCharts">
-		<js:beads>
-			<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="productList"
-				destinationPropertyName="dataProvider" />
-			<js:HorizontalCategoryAxisBead categoryField="title" />
-			<js:VerticalLinearAxisBead valueField="sales2013" />
-		</js:beads>
-		<js:series>
-			<js:ColumnSeries yField="sales2013">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#FF964D" alpha="1.0" />
-							</js:fill>
-						</js:BoxItemRenderer>                      
-					</fx:Component>
-				</js:itemRenderer>
-			</js:ColumnSeries>
-			<js:ColumnSeries yField="sales2014">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#964DFF" alpha="1.0" />
-							</js:fill>
-						</js:BoxItemRenderer>                        
-					</fx:Component>
-				</js:itemRenderer>
-			</js:ColumnSeries>
-		</js:series>
-	</js:ColumnChart>
-	
-	<js:BarChart id="barChart" x="500" y="20" width="400" height="300" className="AllCharts">
-		<js:beads>
-			<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="productList"
-				destinationPropertyName="dataProvider" />
-			<js:VerticalCategoryAxisBead categoryField="title" />
-			<js:HorizontalLinearAxisBead valueField="sales2013" />
-		</js:beads>
-		<js:series>
-			<js:BarSeries xField="sales2013">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#FF964D" alpha="1.0" />
-							</js:fill>
-						</js:BoxItemRenderer>                        
-					</fx:Component>
-				</js:itemRenderer>
-			</js:BarSeries>
-			<js:BarSeries xField="sales2014">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#964DFF" alpha="1.0" />
-							</js:fill>
-						</js:BoxItemRenderer>                        
-					</fx:Component>
-				</js:itemRenderer>
-			</js:BarSeries>
-		</js:series>
-	</js:BarChart>
-	
-	<js:StackedColumnChart id="stackedChart" x="20" y="300" width="400" height="200" className="AllCharts">
-		<js:beads>
-			<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="productList"
-				destinationPropertyName="dataProvider" />
-			<js:HorizontalCategoryAxisBead categoryField="title" />
-		</js:beads>
-		<js:series>
-			<js:ColumnSeries yField="sales2013">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#FF964D" alpha="0.5" />
-							</js:fill>
-							<js:stroke>
-								<js:SolidColorStroke color="#FF964D" weight="2" />
-							</js:stroke>
-						</js:BoxItemRenderer>                       
-					</fx:Component>
-				</js:itemRenderer>
-			</js:ColumnSeries>
-			<js:ColumnSeries yField="sales2014">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#964DFF" alpha="0.5" />
-							</js:fill>
-							<js:stroke>
-								<js:SolidColorStroke color="#964DFF" weight="2" />
-							</js:stroke>
-						</js:BoxItemRenderer>                        
-					</fx:Component>
-				</js:itemRenderer>
-			</js:ColumnSeries>
-		</js:series>
-	</js:StackedColumnChart>
-	
-	<js:StackedBarChart id="stackedBarChart" x="500" y="400" width="400" height="300" className="AllCharts">
-		<js:beads>
-			<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="productList"
-				destinationPropertyName="dataProvider" />
-			<js:VerticalCategoryAxisBead categoryField="title" />
-		</js:beads>
-		<js:series>
-			<js:BarSeries xField="sales2013">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#FF964D" alpha="0.5" />
-							</js:fill>
-							<js:stroke>
-								<js:SolidColorStroke color="#FF964D" weight="2" />
-							</js:stroke>
-						</js:BoxItemRenderer>                        
-					</fx:Component>
-				</js:itemRenderer>
-			</js:BarSeries>
-			<js:BarSeries xField="sales2014">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#964DFF" alpha="0.5" />
-							</js:fill>
-							<js:stroke>
-								<js:SolidColorStroke color="#964DFF" weight="2" />
-							</js:stroke>
-						</js:BoxItemRenderer>                        
-					</fx:Component>
-				</js:itemRenderer>
-			</js:BarSeries>
-		</js:series>
-	</js:StackedBarChart>
-	
-	<js:PieChart id="pieChart" x="20" y="550" width="200" height="200" className="AllCharts">
-		<js:beads>
-			<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="productList"
-				destinationPropertyName="dataProvider" />
-		</js:beads>
-		<js:series>
-			<js:PieSeries dataField="sales2013">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:WedgeItemRenderer />
-					</fx:Component>
-				</js:itemRenderer>
-			</js:PieSeries>
-		</js:series>
-	</js:PieChart>
-	
-	<js:LineChart id="lineChart" x="500" y="750" width="400" height="200" className="AllCharts">
-		<js:beads>
-			<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="productList"
-				destinationPropertyName="dataProvider" />
-			<js:HorizontalLinearAxisBead valueField="detail" />
-			<js:VerticalLinearAxisBead valueField="sales2013" />
-			<js:LineChartLinearVsLinearLayout />
-		</js:beads>
-		<js:series>
-			<js:LineSeries xField="detail" yField="sales2013">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#FF964D" alpha="1" />
-							</js:fill>  
-						</js:BoxItemRenderer>
-					</fx:Component>
-				</js:itemRenderer>
-				<js:lineSegmentRenderer>
-					<fx:Component>
-						<js:LineSegmentItemRenderer>
-							<js:stroke>
-								<js:SolidColorStroke color="#FF964D" weight="3" alpha="0.8" />
-							</js:stroke>
-						</js:LineSegmentItemRenderer>                      
-					</fx:Component>
-				</js:lineSegmentRenderer>
-			</js:LineSeries>
-			<js:LineSeries xField="detail" yField="sales2014">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#964DFF" alpha="1" />
-							</js:fill>  
-						</js:BoxItemRenderer>
-					</fx:Component>
-				</js:itemRenderer>
-				<js:lineSegmentRenderer>
-					<fx:Component>
-						<js:LineSegmentItemRenderer>
-							<js:stroke>
-								<js:SolidColorStroke color="#964DFF" weight="3" alpha="0.8" />
-							</js:stroke>
-						</js:LineSegmentItemRenderer>                      
-					</fx:Component>
-				</js:lineSegmentRenderer>
-			</js:LineSeries>
-		</js:series>
-	</js:LineChart>
-	
-	<js:LineChart id="waveChart" x="20" y="800" width="400" height="200" className="AllCharts">
-		<js:beads>
-			<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="wave1"
-				destinationPropertyName="dataProvider" />
-			<js:HorizontalLinearAxisBead valueField="x" />
-			<js:VerticalLinearAxisBead valueField="sin" minimum="-1" maximum="1" />
-			<js:LineChartLinearVsLinearLayout />
-		</js:beads>
-		<js:series>
-			<js:LineSeries xField="x" yField="sin">
-				<js:lineSegmentRenderer>
-					<fx:Component>
-						<js:LineSegmentItemRenderer>
-							<js:stroke>
-								<js:SolidColorStroke color="#964DFF" weight="5" alpha="1" />
-							</js:stroke>
-						</js:LineSegmentItemRenderer>                        
-					</fx:Component>
-				</js:lineSegmentRenderer>
-			</js:LineSeries>
-			<js:LineSeries xField="x" yField="cos">
-				<js:lineSegmentRenderer>
-					<fx:Component>
-						<js:LineSegmentItemRenderer>
-							<js:stroke>
-								<js:SolidColorStroke color="#FF964D" weight="5" alpha="1" />
-							</js:stroke>
-						</js:LineSegmentItemRenderer>                        
-					</fx:Component>
-				</js:lineSegmentRenderer>
-			</js:LineSeries>
-		</js:series>
-	</js:LineChart>
-	
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/ChartExample/src/SpeedTestView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/ChartExample/src/SpeedTestView.mxml b/examples/flexjs/ChartExample/src/SpeedTestView.mxml
deleted file mode 100644
index 4b8f77d..0000000
--- a/examples/flexjs/ChartExample/src/SpeedTestView.mxml
+++ /dev/null
@@ -1,187 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:js="library://ns.apache.org/flexjs/basic"
-				xmlns:local="*" 
-				xmlns:models="models.*"
-				>
-	<fx:Script>
-		<![CDATA[
-			import models.ProductsModel;
-			
-			import org.apache.flex.events.Event;
-			
-			private var startTime:Date;
-			private var endTime:Date;
-			
-			private function startTimingSVG():void
-			{
-				var n:Number = Number(numPoints.text);
-				
-				var m:ProductsModel = applicationModel as ProductsModel;
-				m.generateWaves(n);
-				
-				trace("Will start timing");
-				startTime = new Date();
-				svgChart.addEventListener("layoutComplete",wave1Complete);
-				svgChart.dataProvider = m.wave1;
-			}
-			
-			private function wave1Complete(event:org.apache.flex.events.Event):void
-			{
-				endTime = new Date();
-				var diff:Number = endTime.getTime() - startTime.getTime();
-				svgChartResults.text = diff+" msecs";
-			}
-			
-			private function startTimingReg():void
-			{
-				var n:Number = Number(numPoints.text);
-				
-				var m:ProductsModel = applicationModel as ProductsModel;
-				m.generateWaves(n);
-				
-				trace("Will start timing");
-				startTime = new Date();
-				regChart.addEventListener("layoutComplete",wave2Complete);
-				regChart.dataProvider = m.wave1;
-			}
-			
-			private function wave2Complete(event:org.apache.flex.events.Event):void
-			{
-				endTime = new Date();
-				var diff:Number = endTime.getTime() - startTime.getTime();
-				regChartResults.text = diff+" msecs";
-			}
-		]]>
-	</fx:Script>
-	
-	<fx:Style>
-		@namespace models "models.*";
-		@namespace basic "library://ns.apache.org/flexjs/basic";
-		
-		.hsline {
-			IDataGroup: ClassReference("org.apache.flex.charts.optimized.SVGChartDataGroup");
-			IHorizontalAxisGroup: ClassReference("org.apache.flex.charts.optimized.SVGChartAxisGroup");
-			IVerticalAxisGroup: ClassReference("org.apache.flex.charts.optimized.SVGChartAxisGroup");
-		}
-	</fx:Style>
-	
-	<js:Container x="20" y="20">
-		<js:beads>
-			<js:HorizontalLayout />
-		</js:beads>
-		<js:Label text="Points:" />
-		<js:TextInput id="numPoints" text="300" />
-	</js:Container>
-	
-	<!-- SVG Line Chart -->
-	
-	<js:Label text="SVG Chart" x="250" y="80" />
-	
-	<js:LineChart id="svgChart" x="21" y="100" width="400" height="200" className="hsline">
-		<js:beads>
-			<!--<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="wave"
-				destinationPropertyName="dataProvider" />-->
-			<js:HorizontalLinearAxisBead valueField="x" />
-			<js:VerticalLinearAxisBead valueField="sin" minimum="-1" maximum="1" />
-			<js:LineChartLinearVsLinearLayout />
-		</js:beads>
-		<js:series>
-			<js:LineSeries xField="x" yField="sin">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:SVGBoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#FF44FF" alpha="1" />
-							</js:fill>  
-						</js:SVGBoxItemRenderer>
-					</fx:Component>
-				</js:itemRenderer>
-				<js:lineSegmentRenderer>
-					<fx:Component>
-						<js:SVGLineSegmentItemRenderer>
-							<js:stroke>
-								<js:SolidColorStroke color="#964DFF" weight="2" alpha="1" />
-							</js:stroke>
-						</js:SVGLineSegmentItemRenderer>                        
-					</fx:Component>
-				</js:lineSegmentRenderer>
-			</js:LineSeries>
-		</js:series>
-	</js:LineChart>
-	
-	<!-- Regular Line Chart -->
-	
-	<js:Label text="Reg Chart" x="650" y="80" />
-	
-	<js:LineChart id="regChart" x="500" y="100" width="400" height="200">
-		<js:beads>
-			<!--<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="wave2"
-				destinationPropertyName="dataProvider" />-->
-			<js:HorizontalLinearAxisBead valueField="x" />
-			<js:VerticalLinearAxisBead valueField="sin" minimum="-1" maximum="1" />
-			<js:LineChartLinearVsLinearLayout />
-		</js:beads>
-		<js:series>
-			<js:LineSeries xField="x" yField="sin">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#99FF99" alpha="1" />
-							</js:fill>  
-						</js:BoxItemRenderer>
-					</fx:Component>
-				</js:itemRenderer>
-				<js:lineSegmentRenderer>
-					<fx:Component>
-						<js:LineSegmentItemRenderer>
-							<js:stroke>
-								<js:SolidColorStroke color="#33DD33" weight="2" alpha="1" />
-							</js:stroke>
-						</js:LineSegmentItemRenderer>                        
-					</fx:Component>
-				</js:lineSegmentRenderer>
-			</js:LineSeries>
-		</js:series>
-	</js:LineChart>
-	
-	<js:Container x="150" y="325">
-		<js:beads>
-			<js:HorizontalLayout />
-		</js:beads>
-		<js:TextButton text="SVG Go" click="startTimingSVG()" />
-		<js:Label text="  (results)" id="svgChartResults" />
-	</js:Container>
-	
-	<js:Container x="650" y="325">
-		<js:beads>
-			<js:HorizontalLayout />
-		</js:beads>
-		<js:TextButton text="Reg Go" click="startTimingReg()" />
-		<js:Label text="  (results)" id="regChartResults" />
-	</js:Container>
-	
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/ChartExample/src/main/flex/ChartExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/ChartExample/src/main/flex/ChartExample.mxml b/examples/flexjs/ChartExample/src/main/flex/ChartExample.mxml
new file mode 100644
index 0000000..57bc2a4
--- /dev/null
+++ b/examples/flexjs/ChartExample/src/main/flex/ChartExample.mxml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				   xmlns:local="*"
+				   xmlns:models="models.*"
+				   xmlns:js="library://ns.apache.org/flexjs/basic" 
+				   >
+	<js:beads>
+        <js:BrowserScroller />
+    </js:beads>
+	<js:valuesImpl>
+		<js:SimpleCSSValuesImpl />
+	</js:valuesImpl>
+	<js:model>
+		<models:ProductsModel />
+	</js:model>
+	<js:initialView>
+		<local:MyInitialView />
+	</js:initialView>
+</js:Application>
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/ChartExample/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/ChartExample/src/main/flex/MyInitialView.mxml b/examples/flexjs/ChartExample/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..17e2e09
--- /dev/null
+++ b/examples/flexjs/ChartExample/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,312 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:js="library://ns.apache.org/flexjs/basic"
+				xmlns:local="*" 
+				xmlns:models="models.*"
+                initComplete="testit()"
+				>
+	<fx:Script>
+		<![CDATA[
+			
+			import models.ProductsModel;
+			
+			private function testit():void
+			{
+				var m:ProductsModel = applicationModel as ProductsModel;
+				m.generateWaves(50);
+				waveChart.dataProvider = m.wave1;
+			}
+			
+		]]>
+	</fx:Script>
+	
+	<fx:Style>
+		@namespace js "library://ns.apache.org/flexjs/basic";
+		.AllCharts {
+			border-width: 0px;
+			padding-left: 2px;
+			padding-top: 10px;
+			padding-bottom: 2px;
+			padding-right: 10px;
+		}
+	</fx:Style>
+	
+	<js:Label id="output" x="50" y="30" width="100" />
+	
+	<js:ColumnChart id="columnChart" x="20" y="20" width="400" height="200" className="AllCharts">
+		<js:beads>
+			<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="productList"
+				destinationPropertyName="dataProvider" />
+			<js:HorizontalCategoryAxisBead categoryField="title" />
+			<js:VerticalLinearAxisBead valueField="sales2013" />
+		</js:beads>
+		<js:series>
+			<js:ColumnSeries yField="sales2013">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#FF964D" alpha="1.0" />
+							</js:fill>
+						</js:BoxItemRenderer>                      
+					</fx:Component>
+				</js:itemRenderer>
+			</js:ColumnSeries>
+			<js:ColumnSeries yField="sales2014">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#964DFF" alpha="1.0" />
+							</js:fill>
+						</js:BoxItemRenderer>                        
+					</fx:Component>
+				</js:itemRenderer>
+			</js:ColumnSeries>
+		</js:series>
+	</js:ColumnChart>
+	
+	<js:BarChart id="barChart" x="500" y="20" width="400" height="300" className="AllCharts">
+		<js:beads>
+			<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="productList"
+				destinationPropertyName="dataProvider" />
+			<js:VerticalCategoryAxisBead categoryField="title" />
+			<js:HorizontalLinearAxisBead valueField="sales2013" />
+		</js:beads>
+		<js:series>
+			<js:BarSeries xField="sales2013">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#FF964D" alpha="1.0" />
+							</js:fill>
+						</js:BoxItemRenderer>                        
+					</fx:Component>
+				</js:itemRenderer>
+			</js:BarSeries>
+			<js:BarSeries xField="sales2014">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#964DFF" alpha="1.0" />
+							</js:fill>
+						</js:BoxItemRenderer>                        
+					</fx:Component>
+				</js:itemRenderer>
+			</js:BarSeries>
+		</js:series>
+	</js:BarChart>
+	
+	<js:StackedColumnChart id="stackedChart" x="20" y="300" width="400" height="200" className="AllCharts">
+		<js:beads>
+			<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="productList"
+				destinationPropertyName="dataProvider" />
+			<js:HorizontalCategoryAxisBead categoryField="title" />
+		</js:beads>
+		<js:series>
+			<js:ColumnSeries yField="sales2013">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#FF964D" alpha="0.5" />
+							</js:fill>
+							<js:stroke>
+								<js:SolidColorStroke color="#FF964D" weight="2" />
+							</js:stroke>
+						</js:BoxItemRenderer>                       
+					</fx:Component>
+				</js:itemRenderer>
+			</js:ColumnSeries>
+			<js:ColumnSeries yField="sales2014">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#964DFF" alpha="0.5" />
+							</js:fill>
+							<js:stroke>
+								<js:SolidColorStroke color="#964DFF" weight="2" />
+							</js:stroke>
+						</js:BoxItemRenderer>                        
+					</fx:Component>
+				</js:itemRenderer>
+			</js:ColumnSeries>
+		</js:series>
+	</js:StackedColumnChart>
+	
+	<js:StackedBarChart id="stackedBarChart" x="500" y="400" width="400" height="300" className="AllCharts">
+		<js:beads>
+			<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="productList"
+				destinationPropertyName="dataProvider" />
+			<js:VerticalCategoryAxisBead categoryField="title" />
+		</js:beads>
+		<js:series>
+			<js:BarSeries xField="sales2013">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#FF964D" alpha="0.5" />
+							</js:fill>
+							<js:stroke>
+								<js:SolidColorStroke color="#FF964D" weight="2" />
+							</js:stroke>
+						</js:BoxItemRenderer>                        
+					</fx:Component>
+				</js:itemRenderer>
+			</js:BarSeries>
+			<js:BarSeries xField="sales2014">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#964DFF" alpha="0.5" />
+							</js:fill>
+							<js:stroke>
+								<js:SolidColorStroke color="#964DFF" weight="2" />
+							</js:stroke>
+						</js:BoxItemRenderer>                        
+					</fx:Component>
+				</js:itemRenderer>
+			</js:BarSeries>
+		</js:series>
+	</js:StackedBarChart>
+	
+	<js:PieChart id="pieChart" x="20" y="550" width="200" height="200" className="AllCharts">
+		<js:beads>
+			<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="productList"
+				destinationPropertyName="dataProvider" />
+		</js:beads>
+		<js:series>
+			<js:PieSeries dataField="sales2013">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:WedgeItemRenderer />
+					</fx:Component>
+				</js:itemRenderer>
+			</js:PieSeries>
+		</js:series>
+	</js:PieChart>
+	
+	<js:LineChart id="lineChart" x="500" y="750" width="400" height="200" className="AllCharts">
+		<js:beads>
+			<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="productList"
+				destinationPropertyName="dataProvider" />
+			<js:HorizontalLinearAxisBead valueField="detail" />
+			<js:VerticalLinearAxisBead valueField="sales2013" />
+			<js:LineChartLinearVsLinearLayout />
+		</js:beads>
+		<js:series>
+			<js:LineSeries xField="detail" yField="sales2013">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#FF964D" alpha="1" />
+							</js:fill>  
+						</js:BoxItemRenderer>
+					</fx:Component>
+				</js:itemRenderer>
+				<js:lineSegmentRenderer>
+					<fx:Component>
+						<js:LineSegmentItemRenderer>
+							<js:stroke>
+								<js:SolidColorStroke color="#FF964D" weight="3" alpha="0.8" />
+							</js:stroke>
+						</js:LineSegmentItemRenderer>                      
+					</fx:Component>
+				</js:lineSegmentRenderer>
+			</js:LineSeries>
+			<js:LineSeries xField="detail" yField="sales2014">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#964DFF" alpha="1" />
+							</js:fill>  
+						</js:BoxItemRenderer>
+					</fx:Component>
+				</js:itemRenderer>
+				<js:lineSegmentRenderer>
+					<fx:Component>
+						<js:LineSegmentItemRenderer>
+							<js:stroke>
+								<js:SolidColorStroke color="#964DFF" weight="3" alpha="0.8" />
+							</js:stroke>
+						</js:LineSegmentItemRenderer>                      
+					</fx:Component>
+				</js:lineSegmentRenderer>
+			</js:LineSeries>
+		</js:series>
+	</js:LineChart>
+	
+	<js:LineChart id="waveChart" x="20" y="800" width="400" height="200" className="AllCharts">
+		<js:beads>
+			<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="wave1"
+				destinationPropertyName="dataProvider" />
+			<js:HorizontalLinearAxisBead valueField="x" />
+			<js:VerticalLinearAxisBead valueField="sin" minimum="-1" maximum="1" />
+			<js:LineChartLinearVsLinearLayout />
+		</js:beads>
+		<js:series>
+			<js:LineSeries xField="x" yField="sin">
+				<js:lineSegmentRenderer>
+					<fx:Component>
+						<js:LineSegmentItemRenderer>
+							<js:stroke>
+								<js:SolidColorStroke color="#964DFF" weight="5" alpha="1" />
+							</js:stroke>
+						</js:LineSegmentItemRenderer>                        
+					</fx:Component>
+				</js:lineSegmentRenderer>
+			</js:LineSeries>
+			<js:LineSeries xField="x" yField="cos">
+				<js:lineSegmentRenderer>
+					<fx:Component>
+						<js:LineSegmentItemRenderer>
+							<js:stroke>
+								<js:SolidColorStroke color="#FF964D" weight="5" alpha="1" />
+							</js:stroke>
+						</js:LineSegmentItemRenderer>                        
+					</fx:Component>
+				</js:lineSegmentRenderer>
+			</js:LineSeries>
+		</js:series>
+	</js:LineChart>
+	
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/ChartExample/src/main/flex/SpeedTestView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/ChartExample/src/main/flex/SpeedTestView.mxml b/examples/flexjs/ChartExample/src/main/flex/SpeedTestView.mxml
new file mode 100644
index 0000000..4b8f77d
--- /dev/null
+++ b/examples/flexjs/ChartExample/src/main/flex/SpeedTestView.mxml
@@ -0,0 +1,187 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:js="library://ns.apache.org/flexjs/basic"
+				xmlns:local="*" 
+				xmlns:models="models.*"
+				>
+	<fx:Script>
+		<![CDATA[
+			import models.ProductsModel;
+			
+			import org.apache.flex.events.Event;
+			
+			private var startTime:Date;
+			private var endTime:Date;
+			
+			private function startTimingSVG():void
+			{
+				var n:Number = Number(numPoints.text);
+				
+				var m:ProductsModel = applicationModel as ProductsModel;
+				m.generateWaves(n);
+				
+				trace("Will start timing");
+				startTime = new Date();
+				svgChart.addEventListener("layoutComplete",wave1Complete);
+				svgChart.dataProvider = m.wave1;
+			}
+			
+			private function wave1Complete(event:org.apache.flex.events.Event):void
+			{
+				endTime = new Date();
+				var diff:Number = endTime.getTime() - startTime.getTime();
+				svgChartResults.text = diff+" msecs";
+			}
+			
+			private function startTimingReg():void
+			{
+				var n:Number = Number(numPoints.text);
+				
+				var m:ProductsModel = applicationModel as ProductsModel;
+				m.generateWaves(n);
+				
+				trace("Will start timing");
+				startTime = new Date();
+				regChart.addEventListener("layoutComplete",wave2Complete);
+				regChart.dataProvider = m.wave1;
+			}
+			
+			private function wave2Complete(event:org.apache.flex.events.Event):void
+			{
+				endTime = new Date();
+				var diff:Number = endTime.getTime() - startTime.getTime();
+				regChartResults.text = diff+" msecs";
+			}
+		]]>
+	</fx:Script>
+	
+	<fx:Style>
+		@namespace models "models.*";
+		@namespace basic "library://ns.apache.org/flexjs/basic";
+		
+		.hsline {
+			IDataGroup: ClassReference("org.apache.flex.charts.optimized.SVGChartDataGroup");
+			IHorizontalAxisGroup: ClassReference("org.apache.flex.charts.optimized.SVGChartAxisGroup");
+			IVerticalAxisGroup: ClassReference("org.apache.flex.charts.optimized.SVGChartAxisGroup");
+		}
+	</fx:Style>
+	
+	<js:Container x="20" y="20">
+		<js:beads>
+			<js:HorizontalLayout />
+		</js:beads>
+		<js:Label text="Points:" />
+		<js:TextInput id="numPoints" text="300" />
+	</js:Container>
+	
+	<!-- SVG Line Chart -->
+	
+	<js:Label text="SVG Chart" x="250" y="80" />
+	
+	<js:LineChart id="svgChart" x="21" y="100" width="400" height="200" className="hsline">
+		<js:beads>
+			<!--<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="wave"
+				destinationPropertyName="dataProvider" />-->
+			<js:HorizontalLinearAxisBead valueField="x" />
+			<js:VerticalLinearAxisBead valueField="sin" minimum="-1" maximum="1" />
+			<js:LineChartLinearVsLinearLayout />
+		</js:beads>
+		<js:series>
+			<js:LineSeries xField="x" yField="sin">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:SVGBoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#FF44FF" alpha="1" />
+							</js:fill>  
+						</js:SVGBoxItemRenderer>
+					</fx:Component>
+				</js:itemRenderer>
+				<js:lineSegmentRenderer>
+					<fx:Component>
+						<js:SVGLineSegmentItemRenderer>
+							<js:stroke>
+								<js:SolidColorStroke color="#964DFF" weight="2" alpha="1" />
+							</js:stroke>
+						</js:SVGLineSegmentItemRenderer>                        
+					</fx:Component>
+				</js:lineSegmentRenderer>
+			</js:LineSeries>
+		</js:series>
+	</js:LineChart>
+	
+	<!-- Regular Line Chart -->
+	
+	<js:Label text="Reg Chart" x="650" y="80" />
+	
+	<js:LineChart id="regChart" x="500" y="100" width="400" height="200">
+		<js:beads>
+			<!--<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="wave2"
+				destinationPropertyName="dataProvider" />-->
+			<js:HorizontalLinearAxisBead valueField="x" />
+			<js:VerticalLinearAxisBead valueField="sin" minimum="-1" maximum="1" />
+			<js:LineChartLinearVsLinearLayout />
+		</js:beads>
+		<js:series>
+			<js:LineSeries xField="x" yField="sin">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#99FF99" alpha="1" />
+							</js:fill>  
+						</js:BoxItemRenderer>
+					</fx:Component>
+				</js:itemRenderer>
+				<js:lineSegmentRenderer>
+					<fx:Component>
+						<js:LineSegmentItemRenderer>
+							<js:stroke>
+								<js:SolidColorStroke color="#33DD33" weight="2" alpha="1" />
+							</js:stroke>
+						</js:LineSegmentItemRenderer>                        
+					</fx:Component>
+				</js:lineSegmentRenderer>
+			</js:LineSeries>
+		</js:series>
+	</js:LineChart>
+	
+	<js:Container x="150" y="325">
+		<js:beads>
+			<js:HorizontalLayout />
+		</js:beads>
+		<js:TextButton text="SVG Go" click="startTimingSVG()" />
+		<js:Label text="  (results)" id="svgChartResults" />
+	</js:Container>
+	
+	<js:Container x="650" y="325">
+		<js:beads>
+			<js:HorizontalLayout />
+		</js:beads>
+		<js:TextButton text="Reg Go" click="startTimingReg()" />
+		<js:Label text="  (results)" id="regChartResults" />
+	</js:Container>
+	
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/ChartExample/src/main/flex/models/ProductsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/ChartExample/src/main/flex/models/ProductsModel.as b/examples/flexjs/ChartExample/src/main/flex/models/ProductsModel.as
new file mode 100644
index 0000000..c173c6e
--- /dev/null
+++ b/examples/flexjs/ChartExample/src/main/flex/models/ProductsModel.as
@@ -0,0 +1,79 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.EventDispatcher;
+	
+	import products.Product;
+	
+	public class ProductsModel extends EventDispatcher
+	{
+		public function ProductsModel()
+		{
+			generateWaves(20);
+		}
+
+		private var _productList:Array = [
+			new Product("tx200","Thingys",    5, 285,314,"smallgreenrect.jpg"),
+			new Product("dh440","Doohickies", 10,340,125,"smallredrect.jpg"),
+			new Product("ps220","Weejets",    35,190,240,"smallorangerect.jpg"),
+			new Product("ps100","Widgets",    44,200,82,"smallbluerect.jpg"),
+			new Product("rz300","Sprockets",  80,105,271,"smallyellowrect.jpg")
+			];
+		public function get productList():Array
+		{
+			return _productList;
+		}
+
+		private var _labelFields:Array = [ "id", "title", "sales2013", "sales2014", "detail" ];
+		public function get labelFields():Array
+		{
+			return _labelFields;
+		}
+		
+		private var _wave:Array;
+		
+		public function generateWaves(numPoints:int):void
+		{
+			_wave = [];
+			
+			var angleIncr:Number = 360/numPoints;
+			var angle:Number = 0;
+			
+			for (var i:int=0; i < numPoints; i++)
+			{
+				var p:Object = {x:i, 
+					sin:Math.sin(Math.PI/180*angle),
+						cos:Math.cos(Math.PI/180*angle)};
+				angle += angleIncr;
+				_wave.push(p);
+			}
+		}
+		
+		public function get wave1():Array
+		{
+			return _wave;
+		}
+		
+		public function get wave2():Array
+		{
+			return _wave;
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/ChartExample/src/main/flex/products/Product.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/ChartExample/src/main/flex/products/Product.as b/examples/flexjs/ChartExample/src/main/flex/products/Product.as
new file mode 100644
index 0000000..2205e69
--- /dev/null
+++ b/examples/flexjs/ChartExample/src/main/flex/products/Product.as
@@ -0,0 +1,45 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package products
+{
+	public class Product
+	{
+		public function Product(id:String, title:String, detail:Number,sales2013:Number, sales2014:Number ,image:String)
+		{
+			this.id = id;
+			this.title = title;
+			this.detail = detail;
+			this.sales2013 = sales2013;
+			this.sales2014 = sales2014;
+			this.image = image;
+		}
+		
+		public var id:String;
+		public var title:String;
+		public var detail:Number;
+		public var image:String;
+		public var sales2013:Number;
+		public var sales2014:Number;
+		
+		public function toString():String
+		{
+			return title;
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/ChartExample/src/models/ProductsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/ChartExample/src/models/ProductsModel.as b/examples/flexjs/ChartExample/src/models/ProductsModel.as
deleted file mode 100644
index c173c6e..0000000
--- a/examples/flexjs/ChartExample/src/models/ProductsModel.as
+++ /dev/null
@@ -1,79 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.EventDispatcher;
-	
-	import products.Product;
-	
-	public class ProductsModel extends EventDispatcher
-	{
-		public function ProductsModel()
-		{
-			generateWaves(20);
-		}
-
-		private var _productList:Array = [
-			new Product("tx200","Thingys",    5, 285,314,"smallgreenrect.jpg"),
-			new Product("dh440","Doohickies", 10,340,125,"smallredrect.jpg"),
-			new Product("ps220","Weejets",    35,190,240,"smallorangerect.jpg"),
-			new Product("ps100","Widgets",    44,200,82,"smallbluerect.jpg"),
-			new Product("rz300","Sprockets",  80,105,271,"smallyellowrect.jpg")
-			];
-		public function get productList():Array
-		{
-			return _productList;
-		}
-
-		private var _labelFields:Array = [ "id", "title", "sales2013", "sales2014", "detail" ];
-		public function get labelFields():Array
-		{
-			return _labelFields;
-		}
-		
-		private var _wave:Array;
-		
-		public function generateWaves(numPoints:int):void
-		{
-			_wave = [];
-			
-			var angleIncr:Number = 360/numPoints;
-			var angle:Number = 0;
-			
-			for (var i:int=0; i < numPoints; i++)
-			{
-				var p:Object = {x:i, 
-					sin:Math.sin(Math.PI/180*angle),
-						cos:Math.cos(Math.PI/180*angle)};
-				angle += angleIncr;
-				_wave.push(p);
-			}
-		}
-		
-		public function get wave1():Array
-		{
-			return _wave;
-		}
-		
-		public function get wave2():Array
-		{
-			return _wave;
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/ChartExample/src/products/Product.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/ChartExample/src/products/Product.as b/examples/flexjs/ChartExample/src/products/Product.as
deleted file mode 100644
index 2205e69..0000000
--- a/examples/flexjs/ChartExample/src/products/Product.as
+++ /dev/null
@@ -1,45 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package products
-{
-	public class Product
-	{
-		public function Product(id:String, title:String, detail:Number,sales2013:Number, sales2014:Number ,image:String)
-		{
-			this.id = id;
-			this.title = title;
-			this.detail = detail;
-			this.sales2013 = sales2013;
-			this.sales2014 = sales2014;
-			this.image = image;
-		}
-		
-		public var id:String;
-		public var title:String;
-		public var detail:Number;
-		public var image:String;
-		public var sales2013:Number;
-		public var sales2014:Number;
-		
-		public function toString():String
-		{
-			return title;
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/CordovaCameraExample/resources/config.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/CordovaCameraExample/resources/config.xml b/examples/flexjs/CordovaCameraExample/resources/config.xml
deleted file mode 100644
index 00b9f64..0000000
--- a/examples/flexjs/CordovaCameraExample/resources/config.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version='1.0' encoding='utf-8'?>
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You 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.
-
--->
-<widget id="${groupId}.${artifactId}" version="${version}" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
-    <name>${artifactId}</name>
-    <description>
-        ${description}
-    </description>
-    <author email="dev@flex.apache.org" href="http://flex.apache.org">
-        Apache Flex Team
-    </author>
-    <content src="index.html" />
-    <plugin name="cordova-plugin-whitelist" version="1" />
-    <access origin="*" />
-    <allow-intent href="http://*/*" />
-    <allow-intent href="https://*/*" />
-    <allow-intent href="tel:*" />
-    <allow-intent href="sms:*" />
-    <allow-intent href="mailto:*" />
-    <allow-intent href="geo:*" />
-    <platform name="android">
-        <allow-intent href="market:*" />
-    </platform>
-    <platform name="ios">
-        <allow-intent href="itms:*" />
-        <allow-intent href="itms-apps:*" />
-    </platform>
-</widget>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/CordovaCameraExample/src/CordovaCameraExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/CordovaCameraExample/src/CordovaCameraExample.mxml b/examples/flexjs/CordovaCameraExample/src/CordovaCameraExample.mxml
deleted file mode 100644
index a745202..0000000
--- a/examples/flexjs/CordovaCameraExample/src/CordovaCameraExample.mxml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!---
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<cordova:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-				   xmlns:local="*"
-				   xmlns:models="models.*"
-				   xmlns:js="library://ns.apache.org/flexjs/basic" 
-				   xmlns:cordova="library://ns.apache.org/flexjs/cordova"
-				   isDeviceReady="MyInitialView(initialView).ready = true"
-				   >
-	
-	<cordova:valuesImpl>
-		<js:SimpleCSSValuesImpl />
-	</cordova:valuesImpl>
-	<cordova:initialView>
-		<local:MyInitialView />
-	</cordova:initialView>
-	<cordova:beads>
-		<js:MixinManager />
-		<cordova:Weinre guid="aharui" />
-	</cordova:beads>
-</cordova:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/CordovaCameraExample/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/CordovaCameraExample/src/MyInitialView.mxml b/examples/flexjs/CordovaCameraExample/src/MyInitialView.mxml
deleted file mode 100644
index 7472d95..0000000
--- a/examples/flexjs/CordovaCameraExample/src/MyInitialView.mxml
+++ /dev/null
@@ -1,75 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:js="library://ns.apache.org/flexjs/basic"
-				xmlns:local="*" >
-    <fx:Script>
-        <![CDATA[
-			
-			import org.apache.cordova.camera.Camera;
-			
-			private var cam:org.apache.cordova.camera.Camera = new org.apache.cordova.camera.Camera();
-			
-			public function set ready(value:Boolean):void
-			{
-				status.text = "ready";
-			}
-			
-			public function snapPicture() : void
-			{
-				trace("snapping");
-				cam.getPicture(success,failure,{quality:100, destinationType:org.apache.cordova.camera.Camera.DestinationType.FILE_URI});
-			}
-			
-			private function success(data:Object):void
-			{
-				output.text = "Success: "+String(data);
-				image.source = String(data);
-			}
-			
-			private function failure(message:Object):void
-			{
-				output.text = "Failed: "+String(message);
-			}
-			
-			private function onFromPhotoLibrary() : void
-			{
-				cam.getPicture(success,failure,{ quality: 50,
-					destinationType: org.apache.cordova.camera.Camera.DestinationType.FILE_URI,
-					sourceType: org.apache.cordova.camera.Camera.PictureSourceType.PHOTOLIBRARY });
-			}
-			
-		]]>
-    </fx:Script>
-	
-	<fx:Style>
-	
-	</fx:Style>
-	
-	<js:Label id="status" x="20" y="140" width="400" text="loading..."/>
-	
-	<js:TextButton text="From Photo Library" x="20" y="20" click="onFromPhotoLibrary()" />
-	<js:TextButton text="Snap Picture" x="20" y="55" click="snapPicture()" />
-	
-	<js:Label id="output" x="20" y="110" width="400"/>
-	
-	<js:Image id="image" x="20" y="200" width="200" height="200" />
-
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/CordovaCameraExample/src/main/flex/CordovaCameraExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/CordovaCameraExample/src/main/flex/CordovaCameraExample.mxml b/examples/flexjs/CordovaCameraExample/src/main/flex/CordovaCameraExample.mxml
new file mode 100644
index 0000000..a745202
--- /dev/null
+++ b/examples/flexjs/CordovaCameraExample/src/main/flex/CordovaCameraExample.mxml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<cordova:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				   xmlns:local="*"
+				   xmlns:models="models.*"
+				   xmlns:js="library://ns.apache.org/flexjs/basic" 
+				   xmlns:cordova="library://ns.apache.org/flexjs/cordova"
+				   isDeviceReady="MyInitialView(initialView).ready = true"
+				   >
+	
+	<cordova:valuesImpl>
+		<js:SimpleCSSValuesImpl />
+	</cordova:valuesImpl>
+	<cordova:initialView>
+		<local:MyInitialView />
+	</cordova:initialView>
+	<cordova:beads>
+		<js:MixinManager />
+		<cordova:Weinre guid="aharui" />
+	</cordova:beads>
+</cordova:Application>


[51/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - need typedefs for this app

Posted by ca...@apache.org.
need typedefs for this app


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/8e29ae46
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/8e29ae46
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/8e29ae46

Branch: refs/heads/feature/mdl
Commit: 8e29ae46c2265b9f51086eb98ddc40a1441cd17c
Parents: 9e6e093
Author: Alex Harui <ah...@apache.org>
Authored: Sun Nov 6 21:00:25 2016 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Wed Nov 9 21:52:32 2016 -0800

----------------------------------------------------------------------
 examples/flexjs/DesktopMap/build.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8e29ae46/examples/flexjs/DesktopMap/build.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DesktopMap/build.xml b/examples/flexjs/DesktopMap/build.xml
index 647d496..7430444 100644
--- a/examples/flexjs/DesktopMap/build.xml
+++ b/examples/flexjs/DesktopMap/build.xml
@@ -51,7 +51,7 @@
 
     <include file="${basedir}/../../build_example.xml" />
 
-    <!--property name="extlib_arg" value="-external-library-path=${FALCONJX_HOME}/../externs/google_maps/out/bin/google_maps.swc"/-->
+    <property name="extlib_arg" value="-external-library-path=${FLEXJS_HOME}/js/libs/google_maps.swc"/>
     <property name="opt1_arg" value="-remove-circulars" />
 
     <target name="main" depends="clean,build_example.compileair,build_example.compilejsair" description="Clean build of ${example}">


[29/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Fix scrolling runtime error on combobox.

Posted by ca...@apache.org.
Fix scrolling runtime error on combobox.


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/2a06fe6e
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/2a06fe6e
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/2a06fe6e

Branch: refs/heads/feature/mdl
Commit: 2a06fe6ef55a9749a609bc449b9fb53c1b9414b3
Parents: ec60f6a
Author: yishayw <yi...@hotmail.com>
Authored: Mon Nov 7 13:02:11 2016 +0200
Committer: yishayw <yi...@hotmail.com>
Committed: Mon Nov 7 13:02:11 2016 +0200

----------------------------------------------------------------------
 .../flex/org/apache/flex/core/CSSTextField.as    | 19 +++++++++++++------
 .../flex/org/apache/flex/utils/PointUtils.as     |  5 +++++
 .../controllers/ScrollBarMouseControllerBase.as  |  6 +++---
 .../html/supportClasses/TextFieldItemRenderer.as |  6 ------
 4 files changed, 21 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/2a06fe6e/frameworks/projects/Core/src/main/flex/org/apache/flex/core/CSSTextField.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/CSSTextField.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/CSSTextField.as
index 6ec8158..68a8bf3 100644
--- a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/CSSTextField.as
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/CSSTextField.as
@@ -20,10 +20,11 @@ package org.apache.flex.core
 {
 	COMPILE::SWF {
         import flash.display.DisplayObject;
-		import flash.text.TextField;
-		import flash.text.TextFieldAutoSize;
-		import flash.text.TextFormat;
-        import org.apache.flex.events.Event;        
+        import flash.text.TextField;
+        import flash.text.TextFieldAutoSize;
+        import flash.text.TextFormat;
+        
+        import org.apache.flex.events.Event;
         import org.apache.flex.events.EventDispatcher;
 	}
 
@@ -41,7 +42,7 @@ package org.apache.flex.core
      *  @productversion FlexJS 0.0
      */
     COMPILE::SWF
-	public class CSSTextField extends TextField
+	public class CSSTextField extends TextField implements IRenderedObject
 	{
         /**
          *  Constructor.
@@ -157,7 +158,13 @@ package org.apache.flex.core
             // force styles to be re-calculated
             this.text = text;
         }
-
+		
+		COMPILE::SWF
+		public function get $displayObject():DisplayObject
+		{
+			return this;
+		}
+		
 	}
 
 	COMPILE::JS

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/2a06fe6e/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/PointUtils.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/PointUtils.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/PointUtils.as
index c00bfa7..8b7b9e2 100644
--- a/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/PointUtils.as
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/PointUtils.as
@@ -26,6 +26,7 @@ package org.apache.flex.utils
     
     import org.apache.flex.core.IUIBase;
     import org.apache.flex.geom.Point;
+    import flash.display.Stage;
 
 	/**
 	 *  The PointUtils class is a collection of static functions that convert
@@ -103,6 +104,10 @@ package org.apache.flex.utils
         {
             COMPILE::SWF
             {
+				if (local is Stage)
+				{
+					return pt;
+				}
                 var fpt:flash.geom.Point = DisplayObject(local.$displayObject).localToGlobal(new flash.geom.Point(pt.x,pt.y));
                 return new org.apache.flex.geom.Point(fpt.x, fpt.y);
             }

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/2a06fe6e/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/controllers/ScrollBarMouseControllerBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/controllers/ScrollBarMouseControllerBase.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/controllers/ScrollBarMouseControllerBase.as
index 8d9d27b..eea9234 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/controllers/ScrollBarMouseControllerBase.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/controllers/ScrollBarMouseControllerBase.as
@@ -23,7 +23,7 @@ package org.apache.flex.html.beads.controllers
 	import org.apache.flex.core.IStrand;
 	import org.apache.flex.events.Event;
 	import org.apache.flex.events.IEventDispatcher;
-    import org.apache.flex.events.MouseEvent;
+	import org.apache.flex.events.MouseEvent;
 	import org.apache.flex.html.beads.IScrollBarView;
 
     /**
@@ -135,7 +135,7 @@ package org.apache.flex.html.beads.controllers
          *  @playerversion AIR 2.6
          *  @productversion FlexJS 0.0
          */	
-		protected function decrementClickHandler(event:Event):void
+		protected function decrementClickHandler(event:Object):void
 		{
 			sbModel.value = snap(Math.max(sbModel.minimum, sbModel.value - sbModel.stepSize));
 			IEventDispatcher(_strand).dispatchEvent(new Event("scroll"));
@@ -149,7 +149,7 @@ package org.apache.flex.html.beads.controllers
          *  @playerversion AIR 2.6
          *  @productversion FlexJS 0.0
          */	
-		protected function incrementClickHandler(event:Event):void
+		protected function incrementClickHandler(event:Object):void
 		{
 			sbModel.value = snap(Math.min(sbModel.maximum - sbModel.pageSize, sbModel.value + sbModel.stepSize));	
 			IEventDispatcher(_strand).dispatchEvent(new Event("scroll"));

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/2a06fe6e/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextFieldItemRenderer.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextFieldItemRenderer.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextFieldItemRenderer.as
index 1b2bb6f..5965a17 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextFieldItemRenderer.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextFieldItemRenderer.as
@@ -550,12 +550,6 @@ package org.apache.flex.html.supportClasses
                 return null;
             return IUIBase(parent).topMostEventDispatcher;
         }
-
-		COMPILE::SWF
-        public function get $displayObject():DisplayObject
-        {
-            return this;
-        }
         
     }
 }


[35/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Merge branches 'feature-autobuild/example-maven-dirs' and 'feature/mdl' of https://git-wip-us.apache.org/repos/asf/flex-asjs into feature-autobuild/example-maven-dirs

Posted by ca...@apache.org.
Merge branches 'feature-autobuild/example-maven-dirs' and 'feature/mdl' of https://git-wip-us.apache.org/repos/asf/flex-asjs into feature-autobuild/example-maven-dirs


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/a54a76e2
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/a54a76e2
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/a54a76e2

Branch: refs/heads/feature/mdl
Commit: a54a76e2130384b01bab17152374e2c3c4f2f446
Parents: 52d4f35 dd64210
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Tue Nov 8 16:13:28 2016 +0100
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Tue Nov 8 16:13:28 2016 +0100

----------------------------------------------------------------------
 distribution/pom.xml                            |   6 +
 examples/flexjs/MDLExample/.vscode/launch.json  |  21 ++
 examples/flexjs/MDLExample/.vscode/tasks.json   |  10 +
 examples/flexjs/MDLExample/asconfig.json        |  14 +
 examples/flexjs/MDLExample/pom.xml              | 118 ++++++++
 .../flexjs/MDLExample/src/main/flex/App.mxml    | 140 ++++++++++
 .../MDLExample/src/main/resources/Unknown.jpg   | Bin 0 -> 50531 bytes
 .../main/resources/mdl-js-index-template.html   |  33 +++
 .../src/main/resources/mdl-styles.css           |  43 +++
 examples/flexjs/pom.xml                         |   1 +
 examples/pom.xml                                |   6 +-
 .../MaterialDesignLite/.vscode/tasks.json       |  10 +
 .../projects/MaterialDesignLite/build.xml       | 116 ++++++++
 frameworks/projects/MaterialDesignLite/pom.xml  | 117 ++++++++
 .../src/main/config/compile-as-config.xml       |  87 ++++++
 .../src/main/flex/MDLClasses.as                 |  37 +++
 .../src/main/flex/org/apache/flex/mdl/Button.as | 230 ++++++++++++++++
 .../src/main/flex/org/apache/flex/mdl/Card.as   | 105 ++++++++
 .../flex/org/apache/flex/mdl/CardActions.as     |  80 ++++++
 .../main/flex/org/apache/flex/mdl/CardMedia.as  |  80 ++++++
 .../main/flex/org/apache/flex/mdl/CardMenu.as   |  80 ++++++
 .../org/apache/flex/mdl/CardSupportingText.as   |  80 ++++++
 .../main/flex/org/apache/flex/mdl/CardTitle.as  |  80 ++++++
 .../main/flex/org/apache/flex/mdl/CheckBox.as   | 161 +++++++++++
 .../flex/org/apache/flex/mdl/RadioButton.as     | 266 +++++++++++++++++++
 .../src/main/flex/org/apache/flex/mdl/Slider.as | 262 ++++++++++++++++++
 .../src/main/flex/org/apache/flex/mdl/Spacer.as |  65 +++++
 .../main/flex/org/apache/flex/mdl/TextInput.as  | 156 +++++++++++
 .../flex/org/apache/flex/mdl/beads/Badge.as     | 157 +++++++++++
 .../flex/org/apache/flex/mdl/beads/Disabled.as  |  98 +++++++
 .../org/apache/flex/mdl/beads/TextPrompt.as     | 151 +++++++++++
 .../apache/flex/mdl/supportClasses/CardInner.as | 102 +++++++
 .../src/main/resources/defaults.css             |  33 +++
 .../src/main/resources/mdl-as-manifest.xml      |  26 ++
 .../src/main/resources/mdl-manifest.xml         |  41 +++
 frameworks/projects/pom.xml                     |   1 +
 36 files changed, 3010 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a54a76e2/examples/pom.xml
----------------------------------------------------------------------
diff --cc examples/pom.xml
index 3c5398a,e0c8976..8d8751a
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@@ -97,13 -97,13 +97,13 @@@
              </execution>
            </executions>
            <configuration>
-             <warSourceDirectory>${basedir}/target/javascript/bin/js-debug</warSourceDirectory>
+             <warSourceDirectory>${compiler.output-dir}</warSourceDirectory>
              <failOnMissingWebXml>false</failOnMissingWebXml>
-             <webResources>
+             <!--webResources>
                <resource>
 -                <directory>${build.outputDirectory}</directory>
 +                <directory>${compiler.output-dir}</directory>
                </resource>
-             </webResources>
+             </webResources-->
            </configuration>
          </plugin>
          <plugin>


[22/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Adjusted the directory structure of the TeamPage example

Posted by ca...@apache.org.
- Adjusted the directory structure of the TeamPage example


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/8d495540
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/8d495540
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/8d495540

Branch: refs/heads/feature/mdl
Commit: 8d495540ece359731c66c136626a6e0a561a02e9
Parents: 962a81c
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Sat Nov 5 16:21:35 2016 +0100
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Sat Nov 5 16:21:35 2016 +0100

----------------------------------------------------------------------
 examples/flexjs/TeamPage/pom.xml                |   1 -
 .../TeamPage/src/MemberDataJSONItemConverter.as |  55 --
 .../flexjs/TeamPage/src/MemberItemRenderer.mxml |  87 ----
 examples/flexjs/TeamPage/src/MyInitialView.mxml |  76 ---
 .../TeamPage/src/NoSelectionController.as       |  38 --
 examples/flexjs/TeamPage/src/TeamPage.mxml      |  52 --
 .../main/flex/MemberDataJSONItemConverter.as    |  55 ++
 .../src/main/flex/MemberItemRenderer.mxml       |  87 ++++
 .../TeamPage/src/main/flex/MyInitialView.mxml   |  76 +++
 .../src/main/flex/NoSelectionController.as      |  38 ++
 .../flexjs/TeamPage/src/main/flex/TeamPage.mxml |  52 ++
 .../TeamPage/src/main/flex/models/MemberList.as |  82 +++
 .../TeamPage/src/main/flex/models/Person.as     | 128 +++++
 .../flexjs/TeamPage/src/main/flex/team.json     | 504 +++++++++++++++++++
 .../flexjs/TeamPage/src/models/MemberList.as    |  82 ---
 examples/flexjs/TeamPage/src/models/Person.as   | 128 -----
 examples/flexjs/TeamPage/src/team.json          | 504 -------------------
 17 files changed, 1022 insertions(+), 1023 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/pom.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/pom.xml b/examples/flexjs/TeamPage/pom.xml
index b407b02..e652e3e 100644
--- a/examples/flexjs/TeamPage/pom.xml
+++ b/examples/flexjs/TeamPage/pom.xml
@@ -35,7 +35,6 @@
   <name>Apache Flex - FlexJS: Examples: FlexJS: TeamPage</name>
 
   <build>
-    <sourceDirectory>src</sourceDirectory>
     <plugins>
       <plugin>
         <groupId>org.apache.flex.flexjs.compiler</groupId>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/MemberDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/MemberDataJSONItemConverter.as b/examples/flexjs/TeamPage/src/MemberDataJSONItemConverter.as
deleted file mode 100644
index cafb4a9..0000000
--- a/examples/flexjs/TeamPage/src/MemberDataJSONItemConverter.as
+++ /dev/null
@@ -1,55 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package
-{
-    import models.Person;
-    
-    import org.apache.flex.collections.converters.JSONItemConverter;
-
-    public class MemberDataJSONItemConverter extends JSONItemConverter
-    {
-        public function MemberDataJSONItemConverter()
-        {
-            super();
-        }
-
-        override public function convertItem(data:String):Object
-        {
-            var obj:Object = super.convertItem(data);
-			var person:Person = new Person();
-			person.name = obj["name"];
-			person.title = obj["title"];
-			person.apacheID = obj["apacheID"];
-			person.bio = obj["bio"];
-			person.photoURL = "http://flex.apache.org/"+obj["photoURL"];
-			person.url = obj["url"];
-			
-			var social:Array = ["twitter","facebook","googleplus","linkedIn","github","wordpress","skype","rss","rss2","deviantart","blog"];
-			for (var i:int=0; i < social.length; i++) {
-				if (obj.hasOwnProperty(social[i])) {
-					var url:String = obj[social[i]];
-					if (url.length > 0) {
-						person.addToSocial(social[i], obj[social[i]]);
-					}
-				}
-			}
-			return person;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/MemberItemRenderer.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/MemberItemRenderer.mxml b/examples/flexjs/TeamPage/src/MemberItemRenderer.mxml
deleted file mode 100644
index a3ab4a0..0000000
--- a/examples/flexjs/TeamPage/src/MemberItemRenderer.mxml
+++ /dev/null
@@ -1,87 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:MXMLItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:local="*"
-				xmlns:js="library://ns.apache.org/flexjs/basic">
-	
-	<fx:Script>
-		<![CDATA[
-			import models.Person;
-			
-			import org.apache.flex.events.MouseEvent;
-			import org.apache.flex.html.TextButton;
-			import org.apache.flex.utils.BrowserUtils;
-			
-			private var _member:Person;
-			
-			override public function set data(value:Object):void
-			{
-				super.data = value;
-				
-				_member = value as Person;
-				memberPhoto.url = _member.photoURL;
-				memberName.text = _member.name;
-				memberBio.text = _member.bio;
-				memberID.text = _member.apacheID;
-				
-				if (_member.title != null && _member.title.length > 0) {
-					memberName.text = _member.name+", "+_member.title;
-				}
-				
-				for (var type:String in _member.social) {
-					var button:TextButton = new TextButton();
-					button.text = type;
-					button.className = type;
-					button.addEventListener("click", gotoSocialMedia);
-					socialMedia.addElement(button);
-				}
-			}
-			
-			private function gotoSocialMedia(event:org.apache.flex.events.MouseEvent):void
-			{
-				var button:TextButton = event.target as TextButton;
-				var url:String = _member.social[button.text];
-				BrowserUtils.executeJS("window.open('"+url+"')");
-			}
-			
-		]]>
-	</fx:Script>
-	
-	<js:beads>
-		<js:OneFlexibleChildHorizontalLayout id="mylayout" flexibleChild="contentArea" />
-	</js:beads>
-	
-	<js:Image id="memberPhoto" width="128" height="128" />
-	<js:Spacer width="10" />
-	
-	<js:VContainer id="contentArea" height="100%" >
-		<js:style>
-			<js:SimpleCSSStyles verticalAlign="top" />
-		</js:style>
-		
-		<js:Label id="memberName" width="100%" className="MemberName" />
-		<js:Label id="memberID" width="100%" className="ApacheID" />
-		<js:Spacer height="10" />
-		<js:HContainer id="socialMedia" />
-		<js:Spacer height="10"/>
-		<js:MultilineLabel id="memberBio" width="100%"/>
-	</js:VContainer>
-	
-</js:MXMLItemRenderer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/MyInitialView.mxml b/examples/flexjs/TeamPage/src/MyInitialView.mxml
deleted file mode 100644
index 47ac02b..0000000
--- a/examples/flexjs/TeamPage/src/MyInitialView.mxml
+++ /dev/null
@@ -1,76 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:local="*"
-				xmlns:js="library://ns.apache.org/flexjs/basic" 
-				>
-	
-	
-	
-	<fx:Style>
-		@namespace js  "library://ns.apache.org/flexjs/basic";
-		
-		.Repeater {
-			IViewport: ClassReference("org.apache.flex.html.supportClasses.Viewport");
-			border: none;
-			border-width: 0px;
-		}
-		
-		.Heading1 {
-			font-size: 18pt;
-			font-weight: bold;
-			margin-bottom: 20px;
-		}
-		
-		.ApacheID {
-			font-size: 10pt;
-			color: #999999;
-		}
-		
-		.MemberName {
-			font-size: 14pt;
-			font-weight: bold;
-			color: #333333;
-		}
-	</fx:Style>
-	
-	<js:beads>
-		<js:ViewDataBinding />
-	</js:beads>
-	
-	
-	<js:VContainer id="output" width="800" height="100%">
-		<js:Label text="FlexJS Team Page" className="Heading1" />
-		<js:Spacer height="20" />
-		
-		<!-- This list does not use selections, so it has a special controller. -->
-		<js:List width="800" height="500" itemRenderer="MemberItemRenderer" rowHeight="250" className="Repeater">
-			<js:beads>
-				<local:NoSelectionController />
-				<js:SimpleBinding destinationPropertyName="dataProvider" 
-								  sourceID="applicationModel" 
-								  sourcePropertyName="members" 
-								  eventName="membersChanged" />
-			</js:beads>
-		</js:List>
-	</js:VContainer>
-	
-	
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/NoSelectionController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/NoSelectionController.as b/examples/flexjs/TeamPage/src/NoSelectionController.as
deleted file mode 100644
index 0a8af0a..0000000
--- a/examples/flexjs/TeamPage/src/NoSelectionController.as
+++ /dev/null
@@ -1,38 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package
-{
-	import org.apache.flex.core.IBeadController;
-	import org.apache.flex.core.IStrand;
-
-	/**
-	 * This controller replaces the List's normal mouse controllers because this example
-	 * does not need to track the mouse and handle selections or roll-overs.
-	 */
-	public class NoSelectionController implements IBeadController
-	{
-		public function NoSelectionController()
-		{
-		}
-
-		public function set strand(value:IStrand):void
-		{
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/TeamPage.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/TeamPage.mxml b/examples/flexjs/TeamPage/src/TeamPage.mxml
deleted file mode 100644
index 5d8f861..0000000
--- a/examples/flexjs/TeamPage/src/TeamPage.mxml
+++ /dev/null
@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!---
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:local="*"
-				xmlns:models="models.*"
-				xmlns:js="library://ns.apache.org/flexjs/basic" 
-				xmlns:controller="controller.*">
-	
-	<js:valuesImpl>
-		<js:SimpleCSSValuesImpl />
-	</js:valuesImpl>
-	
-	<js:model>
-		<models:MemberList />
-	</js:model>
-	
-	<js:initialView>
-		<local:MyInitialView width="100%" height="100%" />
-	</js:initialView>
-	
-	<js:beads>
-		<js:HTTPService id="service" url="team.json">
-			<js:LazyCollection id="collection">
-				<js:inputParser>
-					<js:JSONInputParser />
-				</js:inputParser>
-				<js:itemConverter>
-					<local:MemberDataJSONItemConverter />
-				</js:itemConverter> 
-			</js:LazyCollection>
-		</js:HTTPService>
-	</js:beads>
-	
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/main/flex/MemberDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/MemberDataJSONItemConverter.as b/examples/flexjs/TeamPage/src/main/flex/MemberDataJSONItemConverter.as
new file mode 100644
index 0000000..6f1e77b
--- /dev/null
+++ b/examples/flexjs/TeamPage/src/main/flex/MemberDataJSONItemConverter.as
@@ -0,0 +1,55 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package main.flex
+{
+    import models.Person;
+    
+    import org.apache.flex.collections.converters.JSONItemConverter;
+
+    public class MemberDataJSONItemConverter extends JSONItemConverter
+    {
+        public function MemberDataJSONItemConverter()
+        {
+            super();
+        }
+
+        override public function convertItem(data:String):Object
+        {
+            var obj:Object = super.convertItem(data);
+			var person:Person = new Person();
+			person.name = obj["name"];
+			person.title = obj["title"];
+			person.apacheID = obj["apacheID"];
+			person.bio = obj["bio"];
+			person.photoURL = "http://flex.apache.org/"+obj["photoURL"];
+			person.url = obj["url"];
+			
+			var social:Array = ["twitter","facebook","googleplus","linkedIn","github","wordpress","skype","rss","rss2","deviantart","blog"];
+			for (var i:int=0; i < social.length; i++) {
+				if (obj.hasOwnProperty(social[i])) {
+					var url:String = obj[social[i]];
+					if (url.length > 0) {
+						person.addToSocial(social[i], obj[social[i]]);
+					}
+				}
+			}
+			return person;
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/main/flex/MemberItemRenderer.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/MemberItemRenderer.mxml b/examples/flexjs/TeamPage/src/main/flex/MemberItemRenderer.mxml
new file mode 100644
index 0000000..a3ab4a0
--- /dev/null
+++ b/examples/flexjs/TeamPage/src/main/flex/MemberItemRenderer.mxml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:MXMLItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:local="*"
+				xmlns:js="library://ns.apache.org/flexjs/basic">
+	
+	<fx:Script>
+		<![CDATA[
+			import models.Person;
+			
+			import org.apache.flex.events.MouseEvent;
+			import org.apache.flex.html.TextButton;
+			import org.apache.flex.utils.BrowserUtils;
+			
+			private var _member:Person;
+			
+			override public function set data(value:Object):void
+			{
+				super.data = value;
+				
+				_member = value as Person;
+				memberPhoto.url = _member.photoURL;
+				memberName.text = _member.name;
+				memberBio.text = _member.bio;
+				memberID.text = _member.apacheID;
+				
+				if (_member.title != null && _member.title.length > 0) {
+					memberName.text = _member.name+", "+_member.title;
+				}
+				
+				for (var type:String in _member.social) {
+					var button:TextButton = new TextButton();
+					button.text = type;
+					button.className = type;
+					button.addEventListener("click", gotoSocialMedia);
+					socialMedia.addElement(button);
+				}
+			}
+			
+			private function gotoSocialMedia(event:org.apache.flex.events.MouseEvent):void
+			{
+				var button:TextButton = event.target as TextButton;
+				var url:String = _member.social[button.text];
+				BrowserUtils.executeJS("window.open('"+url+"')");
+			}
+			
+		]]>
+	</fx:Script>
+	
+	<js:beads>
+		<js:OneFlexibleChildHorizontalLayout id="mylayout" flexibleChild="contentArea" />
+	</js:beads>
+	
+	<js:Image id="memberPhoto" width="128" height="128" />
+	<js:Spacer width="10" />
+	
+	<js:VContainer id="contentArea" height="100%" >
+		<js:style>
+			<js:SimpleCSSStyles verticalAlign="top" />
+		</js:style>
+		
+		<js:Label id="memberName" width="100%" className="MemberName" />
+		<js:Label id="memberID" width="100%" className="ApacheID" />
+		<js:Spacer height="10" />
+		<js:HContainer id="socialMedia" />
+		<js:Spacer height="10"/>
+		<js:MultilineLabel id="memberBio" width="100%"/>
+	</js:VContainer>
+	
+</js:MXMLItemRenderer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/MyInitialView.mxml b/examples/flexjs/TeamPage/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..47ac02b
--- /dev/null
+++ b/examples/flexjs/TeamPage/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:local="*"
+				xmlns:js="library://ns.apache.org/flexjs/basic" 
+				>
+	
+	
+	
+	<fx:Style>
+		@namespace js  "library://ns.apache.org/flexjs/basic";
+		
+		.Repeater {
+			IViewport: ClassReference("org.apache.flex.html.supportClasses.Viewport");
+			border: none;
+			border-width: 0px;
+		}
+		
+		.Heading1 {
+			font-size: 18pt;
+			font-weight: bold;
+			margin-bottom: 20px;
+		}
+		
+		.ApacheID {
+			font-size: 10pt;
+			color: #999999;
+		}
+		
+		.MemberName {
+			font-size: 14pt;
+			font-weight: bold;
+			color: #333333;
+		}
+	</fx:Style>
+	
+	<js:beads>
+		<js:ViewDataBinding />
+	</js:beads>
+	
+	
+	<js:VContainer id="output" width="800" height="100%">
+		<js:Label text="FlexJS Team Page" className="Heading1" />
+		<js:Spacer height="20" />
+		
+		<!-- This list does not use selections, so it has a special controller. -->
+		<js:List width="800" height="500" itemRenderer="MemberItemRenderer" rowHeight="250" className="Repeater">
+			<js:beads>
+				<local:NoSelectionController />
+				<js:SimpleBinding destinationPropertyName="dataProvider" 
+								  sourceID="applicationModel" 
+								  sourcePropertyName="members" 
+								  eventName="membersChanged" />
+			</js:beads>
+		</js:List>
+	</js:VContainer>
+	
+	
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/main/flex/NoSelectionController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/NoSelectionController.as b/examples/flexjs/TeamPage/src/main/flex/NoSelectionController.as
new file mode 100644
index 0000000..380668d
--- /dev/null
+++ b/examples/flexjs/TeamPage/src/main/flex/NoSelectionController.as
@@ -0,0 +1,38 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package main.flex
+{
+	import org.apache.flex.core.IBeadController;
+	import org.apache.flex.core.IStrand;
+
+	/**
+	 * This controller replaces the List's normal mouse controllers because this example
+	 * does not need to track the mouse and handle selections or roll-overs.
+	 */
+	public class NoSelectionController implements IBeadController
+	{
+		public function NoSelectionController()
+		{
+		}
+
+		public function set strand(value:IStrand):void
+		{
+		}
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/main/flex/TeamPage.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/TeamPage.mxml b/examples/flexjs/TeamPage/src/main/flex/TeamPage.mxml
new file mode 100644
index 0000000..5d8f861
--- /dev/null
+++ b/examples/flexjs/TeamPage/src/main/flex/TeamPage.mxml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:local="*"
+				xmlns:models="models.*"
+				xmlns:js="library://ns.apache.org/flexjs/basic" 
+				xmlns:controller="controller.*">
+	
+	<js:valuesImpl>
+		<js:SimpleCSSValuesImpl />
+	</js:valuesImpl>
+	
+	<js:model>
+		<models:MemberList />
+	</js:model>
+	
+	<js:initialView>
+		<local:MyInitialView width="100%" height="100%" />
+	</js:initialView>
+	
+	<js:beads>
+		<js:HTTPService id="service" url="team.json">
+			<js:LazyCollection id="collection">
+				<js:inputParser>
+					<js:JSONInputParser />
+				</js:inputParser>
+				<js:itemConverter>
+					<local:MemberDataJSONItemConverter />
+				</js:itemConverter> 
+			</js:LazyCollection>
+		</js:HTTPService>
+	</js:beads>
+	
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as b/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as
new file mode 100644
index 0000000..8fa77dc
--- /dev/null
+++ b/examples/flexjs/TeamPage/src/main/flex/models/MemberList.as
@@ -0,0 +1,82 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package main.flex.models
+{
+	import org.apache.flex.collections.LazyCollection;
+	import org.apache.flex.core.Application;
+	import org.apache.flex.core.IBeadModel;
+	import org.apache.flex.core.IStrand;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	import org.apache.flex.events.IEventDispatcher;
+	import org.apache.flex.net.HTTPService;
+
+	[Event(name="membersChanged", type="org.apache.flex.events.Event")]
+	public class MemberList extends EventDispatcher implements IBeadModel
+	{
+		public function MemberList(target:IEventDispatcher=null)
+		{
+			super(target);
+		}
+
+		public var members:Array = null;
+
+		private var app:Application;
+		private var service:HTTPService;
+		private var collection:LazyCollection;
+
+		private var _strand:IStrand;
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+
+			app = value as Application;
+			if (app) {
+				app.addEventListener("viewChanged", viewChangeHandler);
+			}
+		}
+
+		private function viewChangeHandler(event:Event):void
+		{
+			service = app["service"] as HTTPService;
+			collection = app["collection"] as LazyCollection;
+
+			loadMembers();
+		}
+
+		public function loadMembers():void
+		{
+			service.url = "team.json";
+			service.send();
+			service.addEventListener("complete", handleLoadComplete);
+		}
+
+		public function handleLoadComplete(event:org.apache.flex.events.Event):void
+		{
+			members = [];
+			trace("We got something back");
+			trace("Collection: "+collection.length+" items");
+			for (var i:int=0; i < collection.length; i++) {
+				var item:Object = collection.getItemAt(i);
+				members.push(item);
+			}
+			dispatchEvent( new Event("membersChanged") );
+		}
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/main/flex/models/Person.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/models/Person.as b/examples/flexjs/TeamPage/src/main/flex/models/Person.as
new file mode 100644
index 0000000..c513157
--- /dev/null
+++ b/examples/flexjs/TeamPage/src/main/flex/models/Person.as
@@ -0,0 +1,128 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package main.flex.models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+
+	public class Person extends EventDispatcher
+	{
+		private var _name:String;
+		private var _apacheID:String;
+		private var _title:String;
+		private var _bio:String;
+		private var _photoURL:String;
+		private var _url:String;
+		private var _social:Object;
+
+		public function Person()
+		{
+			super();
+			_social = {};
+		}
+
+		[Bindable("nameChanged")]
+		public function get name():String
+		{
+			return _name;
+		}
+		public function set name(value:String):void
+		{
+			if (value != _name) {
+				_name = value;
+				dispatchEvent(new Event("nameChanged"));
+			}
+		}
+
+		[Bindable("titleChanged")]
+		public function get title():String
+		{
+			return _title;
+		}
+		public function set title(value:String):void
+		{
+			if (value != _title) {
+				_title = value;
+				dispatchEvent(new Event("titleChanged"));
+			}
+		}
+
+		[Bindable("apacheIDChanged")]
+		public function get apacheID():String
+		{
+			return _apacheID;
+		}
+		public function set apacheID(value:String):void
+		{
+			if (value != _apacheID) {
+				_apacheID = value;
+				dispatchEvent(new Event("apacheIDChanged"));
+			}
+		}
+
+		[Bindable("bioChanged")]
+		public function get bio():String
+		{
+			return _bio;
+		}
+		public function set bio(value:String):void
+		{
+			if (_bio != value) {
+				_bio = value;
+				dispatchEvent(new Event("bioChanged"));
+			}
+		}
+
+		[Bindable("photoURLChanged")]
+		public function get photoURL():String
+		{
+			return _photoURL;
+		}
+		public function set photoURL(value:String):void
+		{
+			if (_photoURL != value) {
+				_photoURL = value;
+				dispatchEvent(new Event("photoURLChanged"));
+			}
+		}
+
+		[Bindable("urlChanged")]
+		public function get url():String
+		{
+			return _url;
+		}
+		public function set url(value:String):void
+		{
+			if (_url != value) {
+				_url = value;
+				dispatchEvent(new Event("urlChanged"));
+			}
+		}
+		
+		public function addToSocial(type:String, url:String):void
+		{
+			_social[type] = url;
+		}
+		
+		public function get social():Object
+		{
+			return _social;
+		}
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/main/flex/team.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/main/flex/team.json b/examples/flexjs/TeamPage/src/main/flex/team.json
new file mode 100644
index 0000000..b082f40
--- /dev/null
+++ b/examples/flexjs/TeamPage/src/main/flex/team.json
@@ -0,0 +1,504 @@
+/*
+ *
+ *  Licensed to the Apache Software Foundation (ASF) under one or more
+ *  contributor license agreements.  See the NOTICE file distributed with
+ *  this work for additional information regarding copyright ownership.
+ *  The ASF licenses this file to You 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.
+ *
+ */
+ 
+ { "template": {
+	"name": "put here name here",
+	"title": "put your apache.org title here or leave blank",
+	"photoURL": "put the url to your uploaded photo here",
+	"url": "not used at the moment but should point to a personal site",
+	"bio": "put your official Apache Flex bio here. If you use HTML, be sure to use single quote (apostrophes)",
+	"twitter": "put your URL here or leave blank",
+	"facebook": "put your URL here or leave blank",
+	"github": "put your URL here or leave blank",
+	"googleplus": "put your URL here or leave blank",
+	"rss": "put your URL here or leave blank",
+	"wordpress": "put your URL here or leave blank"
+  },
+
+  "members": [
+	{"name": "Alex Harui",
+     "title": "PMC Chair of Apache Flex",
+     "apacheID": "aharui (C+P)",
+	 "photoURL": "images/headshots/aharui.jpg",
+     "url": "http://www.apache.org/alex",
+     "bio": "Alex Harui has been working on the Flex SDK since he joined Macromedia in 2002. He is now spending most of his time on a next-generation of Flex called FlexJS that cross-compiles MXML and ActionScript into JavaScript so your Flex apps can run without Flash and AIR",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+	{"name": "Carlos Rovira",
+     "title": "",
+     "apacheID": "carlosrovira",
+	 "photoURL": "images/headshots/carlosrovira.jpg",
+     "url": "http://www.apache.org/carlos",
+     "bio": "Carlos Rovira is a technologist, entrepreneur and businessman. He is passionate about advanced web interfaces and rich multi-device business applications. He is extremely happy when their applications are useful for people, combining functionality and usability. He's founder of various companies including carlosrovira.com in 2007 and Codeoscopic in 2009. He's the technical leader behind the Riality Flex/JEE Platform and other successful insurance software products like Direct Writer and Avant 2",
+     "twitter":"http://www.twitter.com/carlosrovira",
+     "linkedIn":"http://es.linkedin.com/in/carlosrovira/",
+     "facebook":"",
+     "github":"http://www.github.com/carlosrovira",
+     "googleplus":"https://plus.google.com/115670167046758349523",
+     "rss":"http://www.carlosrovira.com/blog/feed/"
+    },
+    
+    {"name": "Carol Frampton",
+     "title": "",
+     "apacheID": "cframpton (C+P)",
+     "photoURL": "images/headshots/cframpton.jpg",
+     "bio": "Carol is a software engineer at Adobe, based outside of Boston.  She worked on Adobe Flex for about five years - FTE and TLF text with Gordon, Spark DataGrid, mirroring and the top bug fixer for the last couple of years - then transitioned with Flex to Apache. Release manager for Apache Flex 4.8.0.  Being a generalist, she's worked on a wide variety of software, including ColdFusion and JRun, kernel-level networking code and distributed networking software. ",
+     "twitter":"",
+     "linkedIn":"http://www.linkedin.com/in/carolframpton",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Chema Balsas",
+     "title": "",
+     "apacheID": "jbalsas (C)",
+     "photoURL": "images/headshots/jbalsas.jpg",
+     "bio": "Web application developer. Focusing on JS right now and trying to help with Falcon and FalconJS as an Apache Flex Commiter.",
+     "twitter":"http://www.twitter.com/jbalsas",
+     "linkedIn":"http://www.linkedin.com/in/jbalsas",
+     "facebook":"",
+     "github":"http://www.github.com/jbalsas",
+     "googleplus":"https://plus.google.com/109872083963647761639",
+     "rss":""
+    },
+    
+    {"name": "Christofer Dutz",
+     "title": "",
+     "apacheID": "cdutz (C+P)",
+     "photoURL": "images/headshots/cdutz.jpg",
+     "bio": "Christofer is a software engineer secialized on Flex, Java, Spring and Maven. He is the lead developer of the <a href='https://flexmojos.atlassian.net/wiki/display/FLEXMOJOS/Home' target='_blank'>Flexmojos</a> project (Maven plugin for building Flex applications) after taking over from Velo in 2012. His main areas of contribution to the Apache Flex project is creating a tool for creating Mavenized versions of Flex SDKs, continuing to advance Flex' Maven support.",
+     "twitter":"http://de.twitter.com/ChristoferDutz",
+     "linkedIn":"http://www.linkedin.com/pub/christofer-dutz/49/9b6/424",
+     "facebook":"",
+     "github":"http://github.com/chrisdutz",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Chris Martin",
+     "title": "",
+     "apacheID": "chrsmrtn (C+P)",
+     "photoURL": "images/headshots/chrsmrtn.jpg",
+     "bio": "Chris has been doing Flex UI development since Flex 2 and is very excited to be apart of the Apache Flex Team. With the Apache Flex Team, he feels that the Flex SDK has a bright future. He looks to help with the flex sdk bug verification and patching.",
+     "twitter":"http://www.twitter.com/chrsmrtn",
+     "linkedIn":"http://es.linkedin.com/in/chrsmrtn/",
+     "facebook":"",
+     "github":"http://www.github.com/chrsmrtn-",
+     "googleplus":"https://plus.google.com/+chrismartinplus",
+     "wordpress":"http://chrsmrtn.azurewebsites.net",
+     "rss":""
+    },
+    
+    {"name": "DarkStone (\u5468\u6208)",
+     "title": "",
+     "apacheID": "darkstone (C)",
+     "photoURL": "images/headshots/darkstone.png",
+     "bio": "DarkStone has been doing Flash since 2002, doing Flex since 2006, doing PHP since 2007, he is both a designer and a developer.<br/><br/>He had several jobs, last job he was a product manager for 3 years, had done several RIA  products. <p>Since 2013 he quit his job and started his own studio, forging his own path.<br/><br/>Now he's goal is to develop mobile and desktop platform apps (using Flex and PHP etc.) and sell them to the AppStore.<br/><br/>Basically, make the money first, and try to change the world later ; )</p><p>He is now living in Wuhan city of China.",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Douglas Arthur",
+     "title": "",
+     "apacheID": "dougarthur (C+P)",
+     "photoURL": "images/headshots/dougarthur.jpg",
+     "bio": "Douglas passed away in May, 2012.  He is deeply missed within our community.",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Erik de Bruin",
+     "title": "",
+     "apacheID": "erikdebruin (C+P)",
+     "photoURL": "images/headshots/erikdebruin.jpg",
+     "bio": "Erik is a software engineer (Flex/Flash, PHP, Delphi, Authorware, to name a few), e-learning consultant and occassional project manager. For the Apache Flex project he is a committer and part of the PMC. He has contributed the SDK Installer Badge, was contributor and co-release manager on the first release of the SDK Installer and is currently busy getting the FalconJx and FlexJS projects off the ground.",
+     "twitter":"",
+     "linkedIn":"http://www.linkedin.com/pub/erik-de-bruin/1/281/176",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Espen Skogen",
+     "title": "",
+     "apacheID": "espenskogen (C+P)",
+     "photoURL": "images/headshots/espenskogen.jpg",
+     "bio": "Espen is a Vice President at JP Morgan, where he is leading the development of client facing trading technology. Espen was one of the initial committers and PMC members of Apache Flex. ",
+     "twitter":"",
+     "linkedIn":"http://uk.linkedin.com/in/espenskogen",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Fr�d�ric Thomas",
+     "title": "",
+     "apacheID": "fthomas (C+P)",
+     "photoURL": "images/headshots/fthomas.jpg",
+     "bio": "Freelancer, software architect, Apache Flex PMC Member, trying to make the Flex world better.<br>(French)",
+     "twitter":"http://www.twitter.com/webdoublefx",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"https://plus.google.com/116545614452242070442/posts",
+     "rss":""
+    },
+    
+    {"name": "Gordon Smith",
+     "title": "",
+     "apacheID": "gordonsmith (C+P)",
+     "photoURL": "images/headshots/gordonsmith.png",
+     "bio": "Gordon is currently working on completing MXML support in the new Falcon compiler. He lives in San Francisco and works for Adobe.</p><p>Gordon was one of the original four engineers on a 2002 Macromedia project that became Flex, and worked on the Flex framework for eight years:<ul><li>Developed components for Flex 1.0.</li><li>Built a customer application with Flex 1.5.</li><li>Led the port to AS3 for Flex 2.</li><li>Designed and implemented the ResourceManager for Flex 3.</li><li>Integrated the FTE and TLF text technologies into Flex 4.</li></ul></p><p>Since 2010 he has been part of the compiler team at Adobe.</p>",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Harbs",
+     "title": "",
+     "apacheID": "harbs (C+P)",
+     "photoURL": "images/headshots/harbs.jpg",
+     "bio": "Harbs comes from a print background and his primary interest is in publishing. He keeps himself busy with his multiple technology businesses: <a href='http://in-tools.com'>In-Tools</a>, <a href='http://printui.com'>PrintUI</a> and <a href='http://unhurdle.com/'>UnHurdle</a>.  All three businesses rely heavily on Flex as one of the active technologies, so Harbs has a strong interest in Flex.<br/><br/>Harbs also spends his time studying Talmud, and with his wife and kids. If there's any time left, he gets a bit of sleep.",
+     "twitter":"http://www.twitter.com/intools",
+     "linkedIn":"http://www.linkedin.com/profile/view?id=46698545",
+     "facebook":"http://www.facebook.com/gharbs",
+     "github":"https://github.com/Harbs",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Jeffry Houser",
+     "title": "",
+     "apacheID": "jhouser (C+P)",
+     "photoURL": "images/headshots/jhouser.jpg",
+     "bio": "<a href='http://www.jeffryhouser.com'>Jeffry Houser</a> is a technical entrepreneur that likes to share cool stuff with other people. Jeffry is the Brains behind <a href='http://www.flextras.com'>Flextras</a>, a library of Open Source Flex Components including a Calendar, AutoComplete, and a Mobile DropDownList.<br/><br/> Jeffry is one of the initial contributors to Apache Flex and his primary interest lies in expanding the component library, especially for use in mobile applications.<br/><br/>In his spare time, Jeffry runs <a href='http://www.dot-com-it.com.'>DotComIt</a>, a consulting firm developing Rich Internet Applications. He has spoken all over the US, is author of three books, over 30 articles, and hundreds of podcasts.",
+     "twitter":"http://www.twitter.com/reboog711",
+     "linkedIn":"http://www.linkedin.com/in/jeffryhouser",
+     "facebook":"http://www.facebook.com/reboog711",
+     "github":"https://github.com/Flextras/FlextrasComponents/",
+     "googleplus":"",
+     "rss":"http://www.jeffryhouser.com/rss.cfm?mode=full",
+     "rss2":"https://www.flextras.com/blog/rss.cfm?mode=full"
+    },
+    
+    {"name": "Jeremy Tellier",
+     "title": "",
+     "apacheID": "jtellier (C+P)",
+     "photoURL": "images/headshots/jtellier.jpg",
+     "bio": "Macromedia/Adobe Technology evangelist, architect, engineer, Jeremy has implemented a slew of Flash, Flex, & AIR based solutions for startups to fortune 100 companies over the past 15 years.<br/><br/>Jeremy works as a consultant at <a href='http://www.actieve.com' target='_blank'>Actieve</a> for Rich Mobile, Desktop & Web Based projects in which Flex is at the top of his preferred technology stack.<br/><br/>On a more personal note.... Jeremy feels awkward writing about himself in the third person.",
+     "twitter":"http://www.twitter.com/jtellier",
+     "linkedIn":"http://www.linkedin.com/in/jeremytellier/",
+     "facebook":"http://www.facebook.com/JeremyTellier",
+     "github":"",
+     "googleplus":"https://plus.google.com/115560858703396246574",
+     "rss":"",
+     "skype":"skype:JeremyTellier?chat"
+    },
+    
+    {"name": "Jose Barragan",
+     "title": "",
+     "apacheID": "josebarragan (C)",
+     "photoURL": "images/headshots/josebarragan.jpg",
+     "bio": "Jose Barragan is a Software Architect, with over 10 years experience in the enterprise sector. Has a big experience in design, development and implementation of high performance software in corporate environments. Has an extensive knowledge of Flex, Java, Spring, Hibernate, Maven, Git, being the technical co-leader behind the <a href='http://www.codeoscopic.com/tecnologia/riality/'>Riality</a> Flex/JEE Platform and other successful insurance software products like <a href='http://www.directwriter.es'>Direct Writer</a> and <a href='http://www.avant2.es'>Avant 2</a>. Restless mind and enthusiast of new technologies. Always learning from everything and everyone.",
+     "twitter":"http://www.twitter.com/morphx",
+     "linkedIn":"http://es.linkedin.com/in/pepebarragan/",
+     "facebook":"",
+     "github":"http://github.com/pepebarragan",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Joseph Labrecque",
+     "title": "",
+     "apacheID": "josephlabrecque (C)",
+     "photoURL": "images/headshots/josephlabrecque.jpg",
+     "bio": "Joseph Labrecque is primarily employed by the University of Denver as a senior interactive software engineer specializing in the creation of expressive desktop, web, and mobile solutions. He is also the proprietor of Fractured Vision Media, LLC. Joseph is an Adobe Education Leader and Adobe Community Professional.",
+     "twitter":"http://twitter.com/josephlabrecque",
+     "linkedIn":"http://www.linkedin.com/in/josephlabrecque",
+     "facebook":"https://www.facebook.com/joseph.labrecque",
+     "github":"https://github.com/josephlabrecque/",
+     "googleplus":"https://google.com/+JosephLabrecque/",
+     "rss":"http://www.lynda.com/JosephLabrecque",
+     "rss2":"http://inflagrantedelicto.memoryspiral.com/feed/",
+     "amazon":"http://www.amazon.com/-/e/B0057R7UO0",
+     "behance":"https://www.behance.net/JosephLabrecque",
+     "youtube":"https://www.youtube.com/channel/UCOznZ0dg3BwfhxwO2p90ejQ"
+    },
+    
+    {"name": "Josh Tynjala",
+     "title": "",
+     "apacheID": "joshtynjala (C+P)",
+     "photoURL": "images/headshots/joshtynjala.jpg",
+     "bio": "Josh Tynjala is the author of the open source <a href='http://feathersui.com/'>Feathers</a> user interface components for Starling Framework. In addition to improving the Apache FlexJS compilers, Josh teaches developers how to transpile ActionScript on his website, <a href='http://nextgenactionscript.com/'>NextGen ActionScript</a>",
+     "twitter":"https://twitter.com/joshtynjala",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"https://github.com/joshtynjala",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Jun Heider",
+     "title": "",
+     "apacheID": "junheider (C+P)",
+     "photoURL": "images/headshots/junheider.jpg",
+     "bio": "Helping Apache Flex grow through mentoring and community awareness. An officer of the Open Spoon Foundation. Cross-platform Flex mobile developer at RealEyes Media with a focus in video and multiuser applications. Adjunct Faculty at University of Denver, University College teaching students how to build native applications with Adobe AIR.",
+     "twitter":"http://twitter.com/coderjun",
+     "linkedIn":"http://www.linkedin.com/in/junheider",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Justin Mclean",
+     "title": "",
+     "apacheID": "jmclean (C+P)",
+     "photoURL": "images/headshots/jmclean.jpg",
+     "bio": "Experienced web application developer, certified trainer, international conference speaker and Arduino tinkerer. Interesting in making Apache Flex more international and work on a wider range of platforms. Added international postcode support and locales to Apache Flex 4.9.0. Release manager for Apache Flex 4.9.0.",
+     "twitter":"http://twitter.com/JustinMclean",
+     "linkedIn":"http://www.linkedin.com/in/justinmclean",
+     "facebook":"",
+     "github":"http://www.github.com/justinmclean",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Mahmoud Ali",
+     "title": "",
+     "apacheID": "akamud (C)",
+     "photoURL": "images/headshots/akamud.jpg",
+     "bio": ".NET and Apache Flex developer, working on Web and mobile applications. One of the creators of the <a href='https://github.com/akamud/FlatSpark'>FlatSpark</a> skin, a project to bring a more clean and modern look to Apache Flex applications, recently donated to Apache Software Foundation. His goal as a committer is to continue improving and creating new Skins and components for Flex.</p <p>Always interested in learning and sharing about new technologies. In his spare time wanders around the internet looking for open source projects that need help.<br/><br/>Also feels weird describing himself in the third person.</p>",
+     "twitter":"http://twitter.com/akamud",
+     "linkedIn":"http://www.linkedin.com/in/akamud/en",
+     "facebook":"",
+     "github":"https://github.com/akamud",
+     "googleplus":"",
+     "rss":"http://www.akamud.com.br/feed",
+     "wordpress":"http://www.akamud.com.br/"
+    },
+    
+    {"name": "Maurice Amsellem",
+     "title": "",
+     "apacheID": "mamsellem (C+P)",
+     "photoURL": "images/headshots/mamsellem.jpg",
+     "bio": "<p>Maurice has been working for <a href='http://www.systar.com'>Systar</a> since 1996 in various positions, and since 2009 as a software engineer on a Flex-based BAM application development framework.</p><p>Maurice is professionally interested in GUI design in general, and personally in clay modeling.<br/>He is based in Paris area, France.</p>",
+     "twitter":"",
+     "linkedIn":"http://www.linkedin.com/pub/maurice-amsellem/1/50a/b64",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Michael Schmalle",
+     "title": "",
+     "apacheID": "mschmalle (C+P)",
+     "photoURL": "images/headshots/mschmalle.jpg",
+     "bio": "<p>Past; ActionScript since 2001 and ui component developer. Created a read/write DOM for ActionScript in AS3 and Java, familiar with parsers and compilers.<br/><br/>Future; Working creating a framework to make synths and sequencers for techno music in Android and also Unity3D, WebAudio and JavaScript.<br/><br/>Leading the development of FalconJx to finally put the last nail in the Flash Player for myself. I don't claim to be anything I'm not, the third person scares me.</p>",
+     "twitter":"http://www.twitter.com/teotigraphix",
+     "linkedIn":"http://www.linkedin.com/pub/michael-schmalle/4/409/980",
+     "facebook":"",
+     "github":"https://github.com/teotigraphix",
+     "googleplus":"",
+     "rss":"http://blog.teotigraphix.com/feed"
+    },
+    
+    {"name": "Nicholas Kwiatkowski",
+     "title": "",
+     "apacheID": "quetwo (C+P)",
+     "photoURL": "images/headshots/quetwo.jpg",
+     "bio": "Working on components, website, marketing.",
+     "twitter":"http://www.twitter.com/quetwo",
+     "linkedIn":"",
+     "facebook":"http://www.facebook.com/quetwo",
+     "github":"",
+     "googleplus":"https://plus.google.com/106376488955804514674/",
+     "rss":"",
+     "blog":"http://www.quetwo.com",
+     "deviantart":"http://quetwo.deviantart.com"
+    },
+    
+    {"name": "Omar Gonzalez",
+     "title": "",
+     "apacheID": "s9tpepper (C+P)",
+     "photoURL": "images/headshots/s9tpepper.jpg",
+     "bio": "<p>Apache Flex committer and PMC member. Test driven development enthusiast. Wrestles code all day. Developing Flash since 2000, Flex since version 2 beta. Senior Architect for <a href='http://almerblank.com' target='_blank'>almer/blank</a> developing front-ends and back-ends in HTML5, JavaScript, Flash, Flex, Node.js, PHP, MySQL and MongoDB, just to name a few. Interested in expanding Apache Flex beyond the Flash Player plugin as well as other random experiments.</p>",
+     "twitter":"http://www.twitter.com/s9tpepper",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"https://github.com/s9tpepper",
+     "googleplus":"https://plus.google.com/109288512951904372418",
+     "rss":"http://omar.gy/rss"
+    },
+    
+    {"name": "OmPrakash Muppirala",
+     "title": "",
+     "apacheID": " bigosmallm (C + P)",
+     "photoURL": "images/headshots/bigosmallm.jpg",
+     "bio": "<p>Om 'bigosmallm' Muppirala is a UI architect with years of experience building Flex and Flash based applications. He has been working on various tools and utilities aimed at making life easier for Apache Flex developers and users(SDK Installer, OneClick Mustella, etc.)  Also interested in contributing more web and mobile Flex components.</p>",
+     "twitter":"http://twitter.com/bigosmallm",
+     "linkedIn":"http://www.linkedin.com/in/omprakashm/",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Peter Elst",
+     "title": "",
+     "apacheID": "peterelst (C + P)",
+     "photoURL": "images/headshots/peterelst.jpg",
+     "bio": "<p>Peter is a Web Solutions Engineer at Google, an author of multiple ActionScript books, speaker at various industry events and longtime supporter of Flex as a platform.</p><p>In his spare time, you can find him blogging at <a href='http://www.peterelst.com'>www.peterelst.com</a>.</p>",
+     "twitter":"http://www.twitter.com/peterelst",
+     "linkedIn":"http://www.linkedin.com/in/peterelst",
+     "facebook":"",
+     "github":"",
+     "googleplus":"https://www.google.com/+peterelst",
+     "rss":""
+    },
+    
+    {"name": "Piotr Zarzycki",
+     "title": "",
+     "apacheID": "piotrz (C + P)",
+     "photoURL": "images/headshots/piotrz.jpg",
+     "bio": "<p>Piotr has been working with Flex since 2008 in various project. He always stays open for self-development opportunity.</p><p>He currently lives in Cracow, Poland.</p>",
+     "twitter":"",
+     "linkedIn":"http://pl.linkedin.com/pub/piotr-zarzycki/52/535/92a/",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":"",
+     "skype":"skype:zarzycki10?call"
+    },
+    
+    {"name": "Stephan Plath",
+     "title": "",
+     "apacheID": "splath (C)",
+     "photoURL": "images/headshots/splath.jpg",
+     "bio": "",
+     "twitter":"http://www.twitter.com/xplath",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Tom Chiverton",
+     "title": "",
+     "apacheID": "tomc (P+C)",
+     "photoURL": "images/headshots/tomc.jpg",
+     "bio": "<p>Tom has been building internet applications since before the term RIA, and was part of the community contributing to Flex while it was looked after by Adobe.</p><p>Within Apache Flex his focus is on making sure the experience on Linux is on par with the other supported platforms, as well as pitching in keeping the Jenkins servers running.</p><p>He currently lives in Manchester, UK.</p>",
+     "twitter":"http://www.twitter.com/thefalken",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Maxim Solodovnik",
+     "title": "",
+     "apacheID": "solomax (C)",
+     "photoURL": "images/headshots/solomax.jpg",
+     "bio": "<p>Maxim developing desktop and mobile applications working with video components.</p><p>The main contribution so far was Russian translation of various Flex components</p><p>He currently lives in Novosibirsk, Russia.</p>",
+     "twitter":"http://www.twitter.com/solomax666",
+     "linkedIn":"https://www.linkedin.com/in/maximsolodovnik",
+     "facebook":"",
+     "github":"https://github.com/solomax",
+     "googleplus":"https://www.google.com/+MaximSolodovnik",
+     "rss":""
+    },
+    
+    {"name": "Olaf Krueger",
+     "title": "",
+     "apacheID": "okrueger (C)",
+     "photoURL": "images/headshots/okrueger.png",
+     "bio": "<p>Olaf believes in the power and beauty of simplicity in all respects.</p><p>Employed at a leading automotive supplier for hinge systems he creates software for internal use. For many years and still with great passion.</p><p>Olaf would like to help to bring the Material Design to Flex/FlexJS</p>",
+     "twitter":"http://www.twitter.com/openoli",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Bertrand Delacretaz",
+     "title": "Project Mentor",
+     "apacheID": "bdelacretaz (C+P)",
+     "photoURL": "images/headshots/bdelacretaz.jpg",
+     "bio": "<p>I'm happy to have been able to help Flex incubate at Apache, the team did a great job in creating a successful Apache project. I left the PMC on graduation to free some time for other podlings, wishing Flex a bright future!</p>",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Dave Fisher ",
+     "title": "Project Mentor",
+     "apacheID": "wave (C+P)",
+     "photoURL": "images/headshots/davefisher.jpg",
+     "bio": "<p>I'm fascinated by the communities that develop around projects at Apache I really enjoy the spirit here in the Apache Flex project. I am particularly interested in documents and am on the Apache POI and OpenOffice PMCs. Apache Flex for office documents anyone?</p><p>I live in San Francisco where the weather is mild.</p>",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    },
+    
+    {"name": "Greg Reddin",
+     "title": "Project Mentor",
+     "apacheID": "greddin (C+P)",
+     "photoURL": "images/staff-1.jpg",
+     "bio": "",
+     "twitter":"",
+     "linkedIn":"",
+     "facebook":"",
+     "github":"",
+     "googleplus":"",
+     "rss":""
+    }
+]
+  
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/models/MemberList.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/models/MemberList.as b/examples/flexjs/TeamPage/src/models/MemberList.as
deleted file mode 100644
index 1b5c3e7..0000000
--- a/examples/flexjs/TeamPage/src/models/MemberList.as
+++ /dev/null
@@ -1,82 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.collections.LazyCollection;
-	import org.apache.flex.core.Application;
-	import org.apache.flex.core.IBeadModel;
-	import org.apache.flex.core.IStrand;
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	import org.apache.flex.events.IEventDispatcher;
-	import org.apache.flex.net.HTTPService;
-
-	[Event(name="membersChanged", type="org.apache.flex.events.Event")]
-	public class MemberList extends EventDispatcher implements IBeadModel
-	{
-		public function MemberList(target:IEventDispatcher=null)
-		{
-			super(target);
-		}
-
-		public var members:Array = null;
-
-		private var app:Application;
-		private var service:HTTPService;
-		private var collection:LazyCollection;
-
-		private var _strand:IStrand;
-		public function set strand(value:IStrand):void
-		{
-			_strand = value;
-
-			app = value as Application;
-			if (app) {
-				app.addEventListener("viewChanged", viewChangeHandler);
-			}
-		}
-
-		private function viewChangeHandler(event:Event):void
-		{
-			service = app["service"] as HTTPService;
-			collection = app["collection"] as LazyCollection;
-
-			loadMembers();
-		}
-
-		public function loadMembers():void
-		{
-			service.url = "team.json";
-			service.send();
-			service.addEventListener("complete", handleLoadComplete);
-		}
-
-		public function handleLoadComplete(event:org.apache.flex.events.Event):void
-		{
-			members = [];
-			trace("We got something back");
-			trace("Collection: "+collection.length+" items");
-			for (var i:int=0; i < collection.length; i++) {
-				var item:Object = collection.getItemAt(i);
-				members.push(item);
-			}
-			dispatchEvent( new Event("membersChanged") );
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/models/Person.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/models/Person.as b/examples/flexjs/TeamPage/src/models/Person.as
deleted file mode 100644
index 36ed24a..0000000
--- a/examples/flexjs/TeamPage/src/models/Person.as
+++ /dev/null
@@ -1,128 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-
-	public class Person extends EventDispatcher
-	{
-		private var _name:String;
-		private var _apacheID:String;
-		private var _title:String;
-		private var _bio:String;
-		private var _photoURL:String;
-		private var _url:String;
-		private var _social:Object;
-
-		public function Person()
-		{
-			super();
-			_social = {};
-		}
-
-		[Bindable("nameChanged")]
-		public function get name():String
-		{
-			return _name;
-		}
-		public function set name(value:String):void
-		{
-			if (value != _name) {
-				_name = value;
-				dispatchEvent(new Event("nameChanged"));
-			}
-		}
-
-		[Bindable("titleChanged")]
-		public function get title():String
-		{
-			return _title;
-		}
-		public function set title(value:String):void
-		{
-			if (value != _title) {
-				_title = value;
-				dispatchEvent(new Event("titleChanged"));
-			}
-		}
-
-		[Bindable("apacheIDChanged")]
-		public function get apacheID():String
-		{
-			return _apacheID;
-		}
-		public function set apacheID(value:String):void
-		{
-			if (value != _apacheID) {
-				_apacheID = value;
-				dispatchEvent(new Event("apacheIDChanged"));
-			}
-		}
-
-		[Bindable("bioChanged")]
-		public function get bio():String
-		{
-			return _bio;
-		}
-		public function set bio(value:String):void
-		{
-			if (_bio != value) {
-				_bio = value;
-				dispatchEvent(new Event("bioChanged"));
-			}
-		}
-
-		[Bindable("photoURLChanged")]
-		public function get photoURL():String
-		{
-			return _photoURL;
-		}
-		public function set photoURL(value:String):void
-		{
-			if (_photoURL != value) {
-				_photoURL = value;
-				dispatchEvent(new Event("photoURLChanged"));
-			}
-		}
-
-		[Bindable("urlChanged")]
-		public function get url():String
-		{
-			return _url;
-		}
-		public function set url(value:String):void
-		{
-			if (_url != value) {
-				_url = value;
-				dispatchEvent(new Event("urlChanged"));
-			}
-		}
-		
-		public function addToSocial(type:String, url:String):void
-		{
-			_social[type] = url;
-		}
-		
-		public function get social():Object
-		{
-			return _social;
-		}
-	}
-}


[53/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Merge branches 'develop' and 'feature-autobuild/example-maven-dirs' of https://git-wip-us.apache.org/repos/asf/flex-asjs into feature-autobuild/example-maven-dirs

Posted by ca...@apache.org.
Merge branches 'develop' and 'feature-autobuild/example-maven-dirs' of https://git-wip-us.apache.org/repos/asf/flex-asjs into feature-autobuild/example-maven-dirs


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/1cb8e192
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/1cb8e192
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/1cb8e192

Branch: refs/heads/feature/mdl
Commit: 1cb8e192b8b93d687dd0191a5f4674668142a28a
Parents: ef3aaae a7d484d
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Thu Nov 10 09:09:42 2016 +0100
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Thu Nov 10 09:09:42 2016 +0100

----------------------------------------------------------------------
 build.xml                                       | 39 ++++++++++++++++++++
 examples/flexjs/DesktopMap/build.xml            |  2 +-
 .../main/flex/org/apache/flex/core/UIBase.as    |  3 +-
 3 files changed, 42 insertions(+), 2 deletions(-)
----------------------------------------------------------------------



[40/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Missing some pom configs

Posted by ca...@apache.org.
Missing some pom configs


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/70acec97
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/70acec97
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/70acec97

Branch: refs/heads/feature/mdl
Commit: 70acec978142bf0b77234ddfa0e298e51fef1f8f
Parents: 138a7b5
Author: Carlos Rovira <ca...@apache.org>
Authored: Tue Nov 8 23:21:01 2016 +0100
Committer: Carlos Rovira <ca...@apache.org>
Committed: Tue Nov 8 23:21:01 2016 +0100

----------------------------------------------------------------------
 examples/flexjs/MDLExample/pom.xml | 2 ++
 1 file changed, 2 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/70acec97/examples/flexjs/MDLExample/pom.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLExample/pom.xml b/examples/flexjs/MDLExample/pom.xml
index 2dd229e..a64aeaa 100644
--- a/examples/flexjs/MDLExample/pom.xml
+++ b/examples/flexjs/MDLExample/pom.xml
@@ -48,6 +48,8 @@
         <extensions>true</extensions>
         <configuration>
           <mainClass>App.mxml</mainClass>
+          <htmlTemplate>${basedir}/src/main/resources/mdl-js-index-template.html</htmlTemplate>
+          <additionalCompilerOptions>-compiler.exclude-defaults-css-files=HTML-0.8.0-SNAPSHOT.swc:defaults.css</additionalCompilerOptions>
         </configuration>
       </plugin>
       <plugin>


[08/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_a.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_a.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_a.png
new file mode 100755
index 0000000..20c21e1
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_a.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_b.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_b.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_b.png
new file mode 100755
index 0000000..069ccd8
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_b.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_c.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_c.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_c.png
new file mode 100755
index 0000000..f6b587e
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_c.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_plus.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_plus.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_plus.png
new file mode 100755
index 0000000..4192088
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/support_mapmarker_plus.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/trashcan.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/trashcan.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/trashcan.png
new file mode 100644
index 0000000..483a37c
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/trashcan.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/beige.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/beige.css b/examples/flexjs/FlexJSStore_jquery/src/main/flex/beige.css
new file mode 100755
index 0000000..ce8f5ae
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/beige.css
@@ -0,0 +1,171 @@
+/*
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+*/
+
+/* Style for color-specific state - Beige */
+
+@namespace "library://ns.apache.org/flexjs/basic";
+
+/*
+//----------------------------
+//  Global styles
+//----------------------------
+*/
+.global
+{
+    highlightAlphas:        .5, .25;
+    borderColor:            #939A9D;
+    headerColors:           #A65904, #E68701;
+    themeColor:             #75B1CE;
+    rollOverColor:          #D6E6EE;
+    selectionColor:         #B8D5E4;
+}
+
+/*
+//----------------------------
+// Type selectors
+//----------------------------
+*/
+Application
+{
+    backgroundColor:		#EAE6DD;
+    backgroundImage:        "assets/beige_background.jpg";
+}
+
+/*
+//----------------------------
+// Apply to Panels and Alerts by default
+//----------------------------
+*/
+.windowStatus {
+	color: #FFCC99;
+}
+
+.windowStyles {		/* catalog panel's title text */
+	color: #FFCC99;
+}
+
+/*
+//----------------------------
+// Named styles
+//----------------------------
+*/
+
+.colorPanel /* for the background of some surfaces */
+{
+    borderStyle:            "solid";
+    borderWidth:        0;
+    backgroundColor:		#BCB29F;
+    backgroundAlpha:		0.4;
+    color: 					#170505;
+    cornerRadius:           4;
+    dropShadowEnabled:      true;
+}
+
+.homeProgramHeader /* in HomeView */
+{
+    fontWeight:             "bold";
+    fontSize:               13;
+    color:                  #BE7E3F;
+}
+
+.homeMap
+{
+    borderStyle:            "solid";
+    cornerRadius:           4;
+    backgroundColor:        #BE7E3F;
+    alpha:                  1;
+    dottedMap:              "assets/beige_dotted_map.png";
+}
+
+.instructions
+{
+    alpha:                  .85;
+    color:                  #5C5857;
+}
+
+.storeControlBar
+{
+    fillAlphas: 			.60, .40;
+    fillColors: 			#8F8879, #BCB29F;
+    highlightAlphas:		.05, .25;
+    cornerRadius: 			3;
+	shadowDistance:         4;
+	paddingLeft:            0;
+	paddingRight:           0;
+	paddingTop:             0;
+	paddingBottom:          0;
+	horizontalGap:          0;
+    storeLogo:              "assets/logo_orange.png";
+}
+
+.storeButtonBar
+{
+    cornerRadius:           0;
+    buttonStyleName:        "storeButton";
+    themeColor:             #A65904;
+}
+
+.storeButton
+{
+    cornerRadius:           0;
+    fillColors:             #8F8879, #BCB29F, #A65904, #E68701;
+    fillAlphas:             1, 1;
+    highlightAlphas:        .5, .25;
+    fontWeight:             "normal";
+    /** need to port to ButtonView 
+    selectedOverSkin:       ClassReference("samples.flexstore.ButtonBarButtonSkin");
+    selectedUpSkin:         ClassReference("samples.flexstore.ButtonBarButtonSkin");
+    overSkin:               ClassReference("samples.flexstore.ButtonBarButtonSkin");
+    **/
+}
+
+.catalogTitleButtonSelected
+{
+    color:                  #FFFFFF;
+    fontWeight:             "bold";
+}
+
+.catalogTitleButtonDeselected
+{
+    color:                  #222222;
+    fontWeight:             "bold";
+}
+
+.catalogTitleButtonHighlighted
+{
+    color:                  #FFCC99;
+    fontWeight:             "bold";
+}
+
+.catalogPanel
+{
+    highlightAlphas:        .5, .25;
+    headerColors:           #A65904, #E68701;
+    borderAlpha:            1;
+    borderColor:            #FFFFFF;
+    border-width: 1px;
+    borderThicknessRight:   1;
+    borderThicknessBottom:  1;
+    paddingRight:           0;
+    paddingBottom:          0;
+}
+
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/blue.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/blue.css b/examples/flexjs/FlexJSStore_jquery/src/main/flex/blue.css
new file mode 100755
index 0000000..5f8629b
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/blue.css
@@ -0,0 +1,165 @@
+/*
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+*/
+
+/* Style for color-specific state - Beige */
+
+/*
+//----------------------------
+//  Global styles
+//----------------------------
+*/
+.global
+{
+    highlightAlphas:        .5, .25;
+    borderColor:            #939A9D;
+    headerColors:           #456F84, #9ABBC9;
+    themeColor:             #75B1CE;
+    rollOverColor:          #D6E6EE;
+    selectionColor:         #B8D5E4;
+}
+
+/*
+//----------------------------
+// Type selectors
+//----------------------------
+*/
+Application
+{
+    backgroundColor:		#AAB2B7;
+    backgroundImage:        Embed("assets/blue_background.jpg");
+}
+
+/*
+//----------------------------
+// Apply to Panels and Alerts by default
+//----------------------------
+*/
+.windowStatus {
+	color: #BDE9FA;
+}
+
+.windowStyles {		/* catalog panel's title text */
+	color: #BDE9FA;
+}
+
+/*
+//----------------------------
+// Named styles
+//----------------------------
+*/
+
+.colorPanel /* for the background of some surfaces */
+{
+    borderStyle:            "solid";
+    borderThickness:        0;
+    backgroundColor:		#BDD6E2;
+    backgroundAlpha:		0.4;
+    color: 					#170505;
+    cornerRadius:           4;
+    dropShadowEnabled:      true;
+}
+
+.homeProgramHeader /* in HomeView */
+{
+    fontWeight:             "bold";
+    fontSize:               13;
+    color:                  #7AA4B9;
+}
+
+.homeMap
+{
+    borderStyle:            "solid";
+    cornerRadius:           4;
+    backgroundColor:        #7AA4B9;
+    alpha:                  1;
+    dottedMap:              Embed("assets/blue_dotted_map.png");
+}
+
+.instructions
+{
+    alpha:                  .85;
+    color:                  #5C5857;
+}
+
+.storeControlBar
+{
+    fillAlphas: 			.60, .40;
+    fillColors: 			#4A6F81, #BDD6E2;
+    highlightAlphas:		.05, .25;
+    cornerRadius: 			3;
+	shadowDistance:         4;
+	paddingLeft:            0;
+	paddingRight:           0;
+	paddingTop:             0;
+	paddingBottom:          0;
+	horizontalGap:          0;
+    storeLogo:              Embed("assets/logo_blue.png");
+}
+
+.storeButtonBar
+{
+    cornerRadius:           0;
+    buttonStyleName:        "storeButton";
+    themeColor:             #456F84;
+}
+
+.storeButton
+{
+    cornerRadius:           0;
+    fillColors:             #4A6F81, #BDD6E2, #456F84, #9ABBC9;
+    fillAlphas:             1, 1;
+    highlightAlphas:        .5, .25;
+    fontWeight:             "normal";
+    selectedOverSkin:       ClassReference("samples.flexstore.ButtonBarButtonSkin");
+    selectedUpSkin:         ClassReference("samples.flexstore.ButtonBarButtonSkin");
+    overSkin:               ClassReference("samples.flexstore.ButtonBarButtonSkin");
+}
+
+.catalogTitleButtonSelected
+{
+    color:                  #FFFFFF;
+    fontWeight:             "bold";
+}
+
+.catalogTitleButtonDeselected
+{
+    color:                  #222222;
+    fontWeight:             "bold";
+}
+
+.catalogTitleButtonHighlighted
+{
+    color:                  #BDE9FA;
+    fontWeight:             "bold";
+}
+
+.catalogPanel
+{
+    highlightAlphas:        .5, .25;
+    headerColors:           #456F84, #9ABBC9;
+    borderAlpha:            1;
+    borderColor:            #FFFFFF;
+    borderThicknessRight:   1;
+    borderThicknessBottom:  1;
+    paddingRight:           0;
+    paddingBottom:          0;
+}
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.json b/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.json
new file mode 100755
index 0000000..89bdd43
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.json
@@ -0,0 +1,236 @@
+{ catalog : [
+
+    { "productId" :"1",
+      "name" : "Andrew Brilliam",
+      "description" : "15 years experience. 8 years with Flex.  Specializing in Text Layout Framework",
+      "price" : 60.00,
+      "image" : "assets/pic/abrilliam.jpg",
+      "experience" : 15,
+      "blazeds" : false,
+      "mobile" : false,
+      "video" : false,
+      "highlight1" : "Text Layout Framework",
+	  "highlight2" : "Parsley"
+    },
+    
+    { "productId" : "2",
+        "name" : "Annette Kotter",
+        "description" : "Specializing in custom components.  PHP servers.",
+        "price" : 55,
+        "image" : "assets/pic/akotter.jpg",
+        "experience" : 3,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "Custom Components",
+		"highlight2" : "PHP"
+    },
+
+    { "productId" : "3",
+        "name" : "Ben Crater",
+        "description" : "Specializing in BlazeDS backends.",
+        "price" : 55,
+        "image" : "assets/pic/bcrater.jpg",
+        "experience" : 4,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Remote Object"
+    },
+
+    { "productId" : "4",
+        "name" : "Beth Leporte",
+        "description" : "BlazeDS or PHP servers.  Multimedia messagin.",
+        "price" : 70.00,
+        "image" : "assets/pic/bleporte.jpg",
+        "experience" : 6,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "Multimedia messaging",
+		"highlight2" : "BlazeDS"
+    },
+
+    { "productId" : "5",
+        "name" : "Brad Van Brocklin",
+        "description" : "Emphasis on mobile application development",
+        "price" : 80,
+        "image" : "assets/pic/bvanbrocklin.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : false,
+        "highlight1" : "Mobile",
+		"highlight2" : "Android"
+    },
+
+    { "productId" : "6",
+        "name" : "Carlos Carpenter",
+        "description" : "Built many mobile apps and video apps.",
+        "price" : 80,
+        "image" : "assets/pic/ccarpenter.jpg",
+        "experience" : 4,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Mobile",
+		"highlight2" : "Video"
+    },
+
+    { "productId" : "7",
+        "name" : "Christine Lampberto",
+        "description" : "7 years experience building mobile applications.",
+        "price" : 90,
+        "image" : "assets/pic/clampberto.jpg",
+        "experience" : 7,
+        "blazeds" : true,
+        "mobile" : true,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Mobile"
+    },
+
+    { "productId" : "8",
+        "name" : "Dee Dee Avenon",
+        "description" : "I've been making video apps for over 5 years and mobile apps for about 3 years.",
+        "price" : 100,
+        "image" : "assets/pic/davenon.jpg",
+        "experience" : 10,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "9",
+        "name" : "Denise McGoyal",
+        "description" : "Specializing in video sharing applicaions.  MObile apps too.",
+        "price" : 100,
+        "image" : "assets/pic/dmcgoyal.jpg",
+        "experience" : 5,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "10",
+        "name" : "Daniel Willhelm",
+        "description" : "I'm into mobile apps, video apps and social apps.",
+        "price" : 70,
+        "image" : "assets/pic/dwillhelm.jpg",
+        "experience" : 90,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "11",
+        "name" : "Eunice Sunderland",
+        "description" : "My recent focus is on mobile apps, but I have considerable experience in video apps as well.",
+        "price" : 150,
+        "image" : "assets/pic/esunderland.jpg",
+        "experience" : 30,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "12",
+        "name" : "Jane Proctor",
+        "description" : "I've been developing mobile companion apps for the past 3 years.",
+        "price" : 75,
+        "image" : "assets/pic/jproctor.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "13",
+        "name" : "Mark Fields",
+        "description" : "Video is my favorite thing.  Mobile is also a favorite.",
+        "price" : 60,
+        "image" : "assets/pic/mfields.jpg",
+        "experience" : 70,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "14",
+        "name" : "Patricia Dempsey",
+        "description" : "I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.",
+        "price" : 120,
+        "image" : "assets/pic/pdempsey.jpg",
+        "experience" : 7,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "15",
+        "name" : "Paul Trandep",
+        "description" : "I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'",
+        "price" : 50,
+        "image" : "assets/pic/ptranep.jpg",
+        "experience" : 6,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "16",
+        "name" : "Roscoe Crawley",
+        "description" : "My main specialty is in BlazeDS connected to Flex.",
+        "price" : 59,
+        "image" : "assets/pic/rcrawley.jpg",
+        "experience" : 9,
+        "blazeds" : true,
+        "mobile" : false,
+        "video" : false,
+        "highlight1" : "BlazeDS",
+		"highlight2" : "Remote Object"
+    },
+
+    { "productId" : "17",
+        "name" : "Renee Dreifus",
+            "description" : "I can do it all: BlazeDS, Mobile, Video.",
+        "price" : 79,
+        "image" : "assets/pic/rdreifus.jpg",
+        "experience" : 90,
+        "blazeds" : true,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    },
+
+    { "productId" : "18",
+        "name" : "Tina Wong",
+        "description" : "I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.",
+        "price" : 109,
+        "image" : "assets/pic/twong.jpg",
+        "experience" : 9,
+        "blazeds" : false,
+        "mobile" : true,
+        "video" : true,
+        "highlight1" : "Video Applications",
+		"highlight2" : "Mobile Applications"
+    
+];

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.xml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.xml
new file mode 100755
index 0000000..423e177
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/data/catalog.xml
@@ -0,0 +1,256 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ 
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements.  See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You 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.
+ 
+ -->
+<catalog>
+
+    <product productId="1">
+        <name>Andrew Brilliam</name>
+        <description>15 years experience. 8 years with Flex.  Specializing in Text Layout Framework</description>
+        <price>60.00</price>
+        <image>assets/pic/abrilliam.jpg</image>
+        <experience>15</experience>
+        <blazeds>false</blazeds>
+        <mobile>false</mobile>
+        <video>false</video>
+        <highlight1>Text Layout Framework</highlight1>
+		<highlight2>Parsley</highlight2>
+    </product>
+
+    <product productId="2">
+        <name>Annette Kotter</name>
+        <description>Specializing in custom components.  PHP servers.</description>
+        <price>55</price>
+        <image>assets/pic/akotter.jpg</image>
+        <experience>3</experience>
+        <blazeds>true</blazeds>
+        <mobile>false</mobile>
+        <video>false</video>
+        <highlight1>Custom Components</highlight1>
+		<highlight2>PHP</highlight2>
+    </product>
+
+    <product productId="3">
+        <name>Ben Crater</name>
+        <description>Specializing in BlazeDS backends.</description>
+        <price>55</price>
+        <image>assets/pic/bcrater.jpg</image>
+        <experience>4</experience>
+        <blazeds>true</blazeds>
+        <mobile>false</mobile>
+        <video>false</video>
+        <highlight1>BlazeDS</highlight1>
+		<highlight2>Remote Object</highlight2>
+    </product>
+
+    <product productId="4">
+        <name>Beth Leporte</name>
+        <description>BlazeDS or PHP servers.  Multimedia messagin.</description>
+        <price>70.00</price>
+        <image>assets/pic/bleporte.jpg</image>
+        <experience>6</experience>
+        <blazeds>true</blazeds>
+        <mobile>false</mobile>
+        <video>false</video>
+        <highlight1>Multimedia messaging</highlight1>
+		<highlight2>BlazeDS</highlight2>
+    </product>
+
+    <product productId="5">
+        <name>Brad Van Brocklin</name>
+        <description>Emphasis on mobile application development</description>
+        <price>80</price>
+        <image>assets/pic/bvanbrocklin.jpg</image>
+        <experience>6</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>false</video>
+        <highlight1>Mobile</highlight1>
+		<highlight2>Android</highlight2>
+    </product>
+
+    <product productId="6">
+        <name>Carlos Carpenter</name>
+        <description>Built many mobile apps and video apps.</description>
+        <price>80</price>
+        <image>assets/pic/ccarpenter.jpg</image>
+        <experience>4</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Mobile</highlight1>
+		<highlight2>Video</highlight2>
+    </product>
+
+    <product productId="7">
+        <name>Christine Lampberto</name>
+        <description>7 years experience building mobile applications.</description>
+        <price>90</price>
+        <image>assets/pic/clampberto.jpg</image>
+        <experience>7</experience>
+        <blazeds>true</blazeds>
+        <mobile>true</mobile>
+        <video>false</video>
+        <highlight1>BlazeDS</highlight1>
+		<highlight2>Mobile</highlight2>
+    </product>
+
+    <product productId="8">
+        <name>Dee Dee Avenon</name>
+        <description>I've been making video apps for over 5 years and mobile apps for about 3 years.</description>
+        <price>100</price>
+        <image>assets/pic/davenon.jpg</image>
+        <experience>10</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="9">
+        <name>Denise McGoyal</name>
+        <description>Specializing in video sharing applicaions.  MObile apps too.</description>
+        <price>100</price>
+        <image>assets/pic/dmcgoyal.jpg</image>
+        <experience>5</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="10">
+        <name>Daniel Willhelm</name>
+        <description>I'm into mobile apps, video apps and social apps.</description>
+        <price>70</price>
+        <image>assets/pic/dwillhelm.jpg</image>
+        <experience>90</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="11">
+        <name>Eunice Sunderland</name>
+        <description>My recent focus is on mobile apps, but I have considerable experience in video apps as well.</description>
+        <price>150</price>
+        <image>assets/pic/esunderland.jpg</image>
+        <experience>30</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="12">
+        <name>Jane Proctor</name>
+        <description>I've been developing mobile companion apps for the past 3 years.</description>
+        <price>75</price>
+        <image>assets/pic/jproctor.jpg</image>
+        <experience>6</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="13">
+        <name>Mark Fields</name>
+        <description>Video is my favorite thing.  Mobile is also a favorite.</description>
+        <price>60</price>
+        <image>assets/pic/mfields.jpg</image>
+        <experience>70</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="14">
+        <name>Patricia Dempsey</name>
+        <description>I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.</description>
+        <price>120</price>
+        <image>assets/pic/pdempsey.jpg</image>
+        <experience>7</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="15">
+        <name>Paul Trandep</name>
+        <description>I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'</description>
+        <price>50</price>
+        <image>assets/pic/ptranep.jpg</image>
+        <experience>6</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="16">
+        <name>Roscoe Crawley</name>
+        <description>My main specialty is in BlazeDS connected to Flex.</description>
+        <price>59</price>
+        <image>assets/pic/rcrawley.jpg</image>
+        <experience>9</experience>
+        <blazeds>true</blazeds>
+        <mobile>false</mobile>
+        <video>false</video>
+        <highlight1>BlazeDS</highlight1>
+		<highlight2>Remote Object</highlight2>
+    </product>
+
+    <product productId="17">
+        <name>Renee Dreifus</name>
+            <description>I can do it all: BlazeDS, Mobile, Video.</description>
+        <price>79</price>
+        <image>assets/pic/rdreifus.jpg</image>
+        <experience>90</experience>
+        <blazeds>true</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+    <product productId="18">
+        <name>Tina Wong</name>
+        <description>I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.</description>
+        <price>109</price>
+        <image>assets/pic/twong.jpg</image>
+        <experience>9</experience>
+        <blazeds>false</blazeds>
+        <mobile>true</mobile>
+        <video>true</video>
+        <highlight1>Video Applications</highlight1>
+		<highlight2>Mobile Applications</highlight2>
+    </product>
+
+</catalog>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/main.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/main.css b/examples/flexjs/FlexJSStore_jquery/src/main/flex/main.css
new file mode 100755
index 0000000..f678354
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/main.css
@@ -0,0 +1,100 @@
+/*
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+*/
+
+@namespace basic "library://ns.apache.org/flexjs/basic";
+
+/*
+//----------------------------
+//  Global styles
+//----------------------------
+*/
+.global {
+    IStatesImpl:            ClassReference("org.apache.flex.core.StatesWithTransitionsImpl");
+    color:                  #170505;
+    fillAlphas:             1.00, 1.00; /* last pair are for OVER state */
+    fillColors: 		    #FFFFFF, #DDDDDD, #FFFFFF, #EEEEEE;
+}
+
+global {
+    IStatesImpl:            ClassReference("org.apache.flex.core.StatesWithTransitionsImpl");
+}
+
+/*
+//----------------------------
+// Type selectors
+//----------------------------
+
+HRule
+{
+    color:                  #666666;
+}
+*/
+
+/*
+//----------------------------
+// Named styles
+//----------------------------
+*/
+.glass {
+    borderColor:		    #767473;
+    fillAlphas: 		    .60, .60, .60, .60;
+    fillColors: 		    #888888, #F3F3F3, #9E9E9E, #FCFCFC;
+    highlightAlphas:	    .07, .45;
+}
+
+.glassSlider
+{
+    fillAlphas: 		    .80, .80, .80, .80;
+    fillColors: 		    #F3F3F3, #BBBBBB, #FCFCFC, #CCCCCC;
+}
+
+.listItem
+{
+    paddingLeft:            4;
+    paddingRight:           4;
+    horizontalGap:          5;
+    verticalAlign:          "middle";
+    backgroundColor:        #FFFFFF;
+    backgroundAlpha:        .5;
+    borderStyle:            "outset";
+}
+
+basic|Container
+{
+    IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
+}
+
+.sectionHeader
+{
+    fontWeight:             "bold";
+    fontSize:               11;
+}
+
+.homeSection
+{
+    cornerRadius:           4;
+    borderStyle:            "solid";
+}
+
+.hoverButton
+{
+    height: 20px;
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/CatalogTitleButtons.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/CatalogTitleButtons.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/CatalogTitleButtons.mxml
new file mode 100755
index 0000000..75830ef
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/CatalogTitleButtons.mxml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:HContainer xmlns:fx="http://ns.adobe.com/mxml/2009"
+                  xmlns:js="library://ns.apache.org/flexjs/basic" 
+                  currentState="showFilter">
+    <js:style>
+        <js:SimpleCSSStyles verticalAlign="middle" 
+                               paddingTop="0" 
+                               paddingBottom="0" />
+    </js:style>
+    <js:beads>
+        <js:ParentDocumentBead id="pdb" />
+        <js:ContainerDataBinding />
+        <js:LayoutChangeNotifier watchedProperty="{viewCart.text}" initialValue="#FFFFFF" />
+    </js:beads>
+    <fx:Script>
+        <![CDATA[
+            [Bindable]
+            public var cartCount:int;
+            
+            private function rollOverLabel(event:MouseEvent):void
+            {
+                try {
+                    Label(event.target).className = "catalogTitleButtonHighlighted";
+                } catch (e:Error) {}
+            }
+            
+            private function rollOutLabel(event:MouseEvent):void
+            {
+                Label(event.target).className = "catalogTitleButtonDeselected";
+            }
+        ]]>
+    </fx:Script>
+    <fx:Binding source="ProductCatalogPanel(pdb.parentDocument).cartCount" destination="cartCount" />
+    <!-- two-way binding between the states of panel title buttons and the product view state -->
+    <fx:Binding source="ProductsView(ProductCatalogPanel(pdb.parentDocument).pdb.parentDocument).currentState" destination="currentState" />
+    <fx:Binding destination="ProductsView(ProductCatalogPanel(pdb.parentDocument).pdb.parentDocument).currentState" source="currentState" />    
+
+    <js:Label id="findPhones" text="Find Developers" click="currentState = 'showFilter'"
+             className.showFilter="catalogTitleButtonSelected"
+             className.showCart="catalogTitleButtonDeselected"
+             rollOver.showCart="rollOverLabel(event)"
+             rollOut.showCart="rollOutLabel(event)"/>
+    <js:VRule height="{findPhones.height * .75}" alpha=".75" style="color:#333333" />
+    <js:Label id="viewCart" text="View Cart ({cartCount} items)" click="currentState = 'showCart'"
+             className.showFilter="catalogTitleButtonDeselected"
+             className.showCart="catalogTitleButtonSelected"
+             rollOver.showFilter="rollOverLabel(event)"
+             rollOut.showFilter="rollOutLabel(event)"/>
+    
+    <js:states>
+        <js:State name="showFilter" />
+        <js:State name="showCart" />
+    </js:states>
+</js:HContainer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/Grip.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/Grip.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/Grip.mxml
new file mode 100755
index 0000000..abd3ce5
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/Grip.mxml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+                  xmlns:js="library://ns.apache.org/flexjs/basic" 
+                  width="17" height="100%" >
+    <js:style>
+        <js:SimpleCSSStyles paddingTop="10" />
+    </js:style>
+
+    <fx:Script>
+        <![CDATA[
+           [Bindable]
+           public var gripTip:String; 
+           
+           [Bindable]
+           public var gripIcon:String;
+        ]]>
+    </fx:Script>
+    <js:beads>
+        <js:ContainerDataBinding />
+        <js:OneFlexibleChildVerticalLayout flexibleChild="grip" />
+    </js:beads>
+
+    <js:Image id="icon" source="{gripIcon}" />
+    <js:Image id="grip" source="assets/grip.png" >
+        <js:beads>
+            <js:ToolTipBead toolTip="{gripTip}" />
+        </js:beads>
+    </js:Image>
+    
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCart.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCart.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCart.mxml
new file mode 100755
index 0000000..3469806
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCart.mxml
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+          xmlns:js="library://ns.apache.org/flexjs/basic" 
+    xmlns:productsView="productsView.*"
+    >
+    <js:style>
+        <js:SimpleCSSStyles 
+                               paddingTop="8"
+                               paddingBottom="8"
+                               paddingRight="4"
+                               paddingLeft="4" />
+    </js:style>
+    <js:beads>
+        <js:ContainerDataBinding />
+        <js:OneFlexibleChildVerticalLayout id="flexLayout" flexibleChild="productList" />
+    </js:beads>
+    <fx:Script>
+        <![CDATA[
+        
+        import org.apache.flex.html.SimpleAlert;
+        
+        import samples.flexstore.Product;
+        import samples.flexstore.ProductListEvent;
+        
+        [Bindable]
+        public var numProducts:int=0;
+        
+        [Bindable]
+        private var total:Number = 0;
+
+        private const SHIPPING:Number = 1.99;
+        
+        private function productListEventHandler(event:ProductListEvent):void
+        {
+            switch (event.type)
+            {
+                case ProductListEvent.ADD_PRODUCT:
+                    event.product.qty = 0;  
+                    //fall through into the same logic as dup          
+                case ProductListEvent.DUPLICATE_PRODUCT:
+                    event.product.qty++;
+                    //total += event.product.price;
+                    total = total + event.product.price;
+                    numProducts++;
+                    break;            
+                case ProductListEvent.PRODUCT_QTY_CHANGE:
+                case ProductListEvent.REMOVE_PRODUCT:
+                    var items:Array = productList.items;
+                    total = 0; 
+                    numProducts = 0;
+                    for (var i:int=0; i < items.length; i++)
+                    {
+                        var product:Product = items[i].product;
+                        //total += product.qty * product.price;
+                        //numProducts += product.qty;
+                        total = total + product.qty * product.price;
+                        numProducts = numProducts + product.qty;
+                    }       
+                    break;
+                default:
+                    break;
+            }
+        }
+        
+        ]]>
+    </fx:Script>
+    <fx:Declarations>
+        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
+    </fx:Declarations>
+    
+    <js:Label width="100%" text="Your Shopping Cart" className="sectionHeader"/>
+        
+    <productsView:ProductList id="productList" width="100%"
+        newItemStartX="-100" newItemStartY="-100" 
+        addProduct="productListEventHandler(event)"
+        duplicateProduct="productListEventHandler(event)"
+        productQtyChange="productListEventHandler(event)"
+        removeProduct="productListEventHandler(event)"
+        showQuantity="true" />
+    
+    <js:Container style="right:0" id="totalContainer">
+        <js:beads>
+            <js:VerticalColumnLayout numColumns="2" />
+        </js:beads>
+        <js:Label text="Total:" />
+        <js:Label width="70" text="{cf.format(total)}" id="lblTotal" style="textAlign:'right'"/>
+
+        <js:Label text="Service Fee:" />
+        <js:Label width="70" text="{cf.format(numProducts * SHIPPING)}" id="lblFee" style="textAlign:'right'"/>
+
+        <js:Label text="Grand Total:" style="fontWeight:'bold'" />
+        <js:Label width="70" text="{cf.format(total + (numProducts * SHIPPING))}" id="lblGrandTotal" style="textAlign:'right'"/>
+
+    </js:Container>
+
+    <js:TextButton text="Submit Order" click="SimpleAlert.show('This feature is not implemented in this sample', 'Submit Order')"
+                   style="right:0"/>
+
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogPanel.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogPanel.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogPanel.mxml
new file mode 100755
index 0000000..3e04263
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogPanel.mxml
@@ -0,0 +1,546 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Panel xmlns:fx="http://ns.adobe.com/mxml/2009"
+         xmlns:js="library://ns.apache.org/flexjs/basic" 
+         implements="org.apache.flex.core.IDragInitiator"
+    xmlns:productsView="productsView.*"
+    currentState="browse"
+    title="SpaceHolder"
+    title.browse="Browse"
+    title.compare="Product Comparison"
+    title.details="Product Details"
+    className="catalogPanel"
+    >
+    
+    <fx:Metadata>
+        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="details", type="samples.flexstore.ProductThumbEvent")]
+    </fx:Metadata>
+    
+    <fx:Script>
+        <![CDATA[
+            import org.apache.flex.core.IUIBase;
+            import org.apache.flex.effects.Effect;
+            import org.apache.flex.effects.Fade;
+            import org.apache.flex.effects.Move;
+            import org.apache.flex.effects.Parallel;
+            import org.apache.flex.effects.Tween;
+            import org.apache.flex.events.DragEvent;
+            import org.apache.flex.events.Event;
+            import org.apache.flex.collections.LazyCollection;
+            
+            import samples.flexstore.Product;
+            import samples.flexstore.ProductFilter;
+            import samples.flexstore.ProductFilterEvent;
+            import samples.flexstore.ProductThumbEvent;
+       
+     
+        private var accepted:Object = new Object();
+        private var thumbnails:Array;
+        private var filterCount:int;
+        private var thumbnailState:String = 'browse'; //either 'browse' or 'compare'
+                
+        [Bindable]
+        public var cartCount:int;
+        
+        //-----------------------------
+        // catalog
+        //-----------------------------
+        
+        private var _catalog:LazyCollection;
+        
+        [Bindable]
+        public function set catalog(c:LazyCollection):void
+        {
+            _catalog = c;
+            createThumbnails();
+        }
+        
+        public function get catalog():LazyCollection
+        {
+            return _catalog;
+        }
+        
+        //----------------------------------------------------------------------
+        // methods
+        //----------------------------------------------------------------------
+       
+        private function createThumbnails():void
+        {
+            var i:int; //variables are hoisted up in scope so declare here to avoid warning
+            if (thumbnails != null)
+            {
+                for (i=0; i < thumbnails.length; i++)
+                {
+                    thumbContentGroup.removeElement(thumbnails[i]);
+                }
+            }
+            
+            var row:int = 0;
+            var col:int = -1;
+            var n:int = catalog.length;
+            thumbnails = new Array(n);
+            filterCount = n;
+            
+            for (i=0; i < n; i++)
+            {
+                var thumb:ProductCatalogThumbnail = new ProductCatalogThumbnail();
+                thumb.x = 0;
+                thumb.y = 0;
+                thumbnails[i] = thumb;
+                // thumbnails[i].showInAutomationHierarchy = true;
+                thumb.product = catalog.getItemAt(i) as Product;
+                accepted[thumb.product.productId.toString()] = true;
+                thumbContentGroup.addElement(thumb);
+                thumb.addEventListener(ProductThumbEvent.PURCHASE, productThumbEventHandler);
+                thumb.addEventListener(ProductThumbEvent.COMPARE, productThumbEventHandler);
+                thumb.addEventListener(ProductThumbEvent.DETAILS, productThumbEventHandler);
+                thumb.addEventListener(DragEvent.DRAG_START,thumbDragStartHandler);
+            }
+
+            var lastMove:Effect = layoutCatalog();
+            if (lastMove)
+            {
+                lastMove.addEventListener(Tween.TWEEN_UPDATE, updateLayout);
+                lastMove.addEventListener(Tween.TWEEN_END, updateLayout);
+            }
+        }
+        
+        private function updateLayout(event:org.apache.flex.events.Event):void
+        {
+            thumbContentGroup.dispatchEvent(new org.apache.flex.events.Event("layoutNeeded"));   
+        }
+            
+        private function thumbDragStartHandler(event:MouseEvent):void
+        {
+            if (DragMouseController.dragging == false)
+            {
+                var thumb:ProductCatalogThumbnail = event.target as ProductCatalogThumbnail;
+                DragEvent.dragSource = thumb.product;
+
+                var di:ProductCatalogThumbnail = new ProductCatalogThumbnail();
+                di.product = thumb.product;
+                di.currentState = thumb.currentState;
+                DragMouseController.dragImage = di;
+                
+                DragEvent.dragInitiator = this;
+            }    
+        }
+        
+        public function filter(productFilter:ProductFilter, live:Boolean):void
+        {
+            currentState = "browse";
+            thumbnailState = "browse";
+            var count:int=0;
+            var n:int = thumbnails.length;
+            var targets:Array = [];
+            for (var i:int = 0; i < n; i++)
+            {
+                var thumb:ProductCatalogThumbnail = thumbnails[i];
+                var product:Product = thumb.product;
+                if (productFilter.accept(product))
+                {
+                    accepted[product.productId.toString()] = true;
+                    thumb.alpha = 1;    
+                    count++;
+                }
+                else
+                {
+                    accepted[product.productId.toString()] = false;
+                    if (live)
+                    {
+                        thumb.alpha = .1;
+                    }
+                    else if (thumb.alpha == 1) //only fade if we hadn't started
+                    {
+                        targets.push(thumb);
+                    }
+                }
+            }
+            productFilter.count = count;
+            filterCount = count;
+
+            if (targets.length > 0)    
+            {
+                var p:Parallel = new Parallel();
+                n = targets.length;
+                for (i = 0; i < n; i++)
+                {
+                    var fadeOut:Fade = new Fade(targets[i] as IUIBase);
+                    fadeOut.alphaFrom = 1;
+                    fadeOut.alphaTo = .1;
+                    p.addChild(fadeOut);
+                }
+                p.play();
+                p.addEventListener(Effect.EFFECT_END,
+                    function(event:org.apache.flex.events.Event):void
+                    {
+                        layoutCatalog();
+                    });
+            }
+            else if (!live)
+            {
+                layoutCatalog();
+            }
+        }
+        
+        private function layoutCatalog():Effect
+        {
+            var tileWidth:Number;
+            var tileHeight:Number;
+            var numCols:int;
+
+            if (filterCount > 9 || currentState == "compare")
+            {
+                numCols = 4;
+                tileWidth = ProductCatalogThumbnail.COL_WIDTH_4;
+                tileWidth = currentState == "compare"
+                    ? ProductCatalogThumbnail.COMPARE_WIDTH
+                    : ProductCatalogThumbnail.COL_WIDTH_4
+                tileHeight = currentState == "compare"
+                    ? height - 4
+                    : ProductCatalogThumbnail.COL_HEIGHT_4;
+            }
+            else if (filterCount > 4)
+			{
+                numCols = 3;
+                tileWidth = ProductCatalogThumbnail.COL_WIDTH_3;
+                tileHeight = ProductCatalogThumbnail.COL_HEIGHT_3;
+            }
+			else if (filterCount <= 9)
+			{
+                numCols = 2;
+                tileWidth = ProductCatalogThumbnail.COL_WIDTH_2;
+                tileHeight = ProductCatalogThumbnail.COL_HEIGHT_2;
+            }
+			else
+			{
+            }
+            
+            var row:int = 0;
+            var col:int = -1;
+
+			var move:Move = null;
+
+            var n:int = catalog.length;
+			for (var i:int = 0 ; i < n ; i++)
+			{
+                var product:Product = catalog.getItemAt(i) as Product;
+                var thumb:ProductCatalogThumbnail = thumbnails[i];
+                if (accepted[product.productId.toString()])
+                {
+                    thumb.currentState = "x" + numCols + "cols";
+                    col++;
+                    if (col > numCols - 1)
+					{
+                        row++;
+                        col = 0;
+                    }
+
+                    var xTo:Number = col * (tileWidth + ProductCatalogThumbnail.HORIZONTAL_GAP);
+                    var yTo:Number = row * (tileHeight + ProductCatalogThumbnail.VERTICAL_GAP);
+
+                    // If the thumbnail is already visible
+					// animate it to its new position.
+                    if (thumb.visible)
+					{
+                        // Animate only if the position is different
+						// from its current position.
+                        if (thumb.x != xTo || thumb.y != yTo)
+						{
+                            move = new Move(thumb);
+                            move.xTo = xTo;
+                            move.yTo = yTo;
+                            move.play();
+                        }
+                    }
+
+                    // If the thumbnail was not previously visible, sets its
+					// x and y coordinates. We'll make it reappear after all
+                    // the visible thumbnails have reached their new position.
+					else
+					{
+                        thumb.x = xTo;
+                        thumb.y = yTo;
+//                        thumb.includeInLayout = true;
+                    }
+                }
+				else
+				{
+                    thumb.visible = false;
+//                    thumb.includeInLayout = false;
+                }
+            }
+
+            if (!move)
+			{
+                // No visible thumbnails were animated to a new position;
+				// fade in newly selected thumbnails right away.
+                fadeInThumbnails();
+            }
+			else
+			{
+			    //since movement is happening get the scrollbar back to the top
+				scv.verticalScrollPosition = 0;
+                // Fade in newly selected thumbnails after the last
+				// visible thumbnail has moved to its new position.
+                move.addEventListener(Effect.EFFECT_END,
+					function(event:org.apache.flex.events.Event):void
+					{
+						fadeInThumbnails();
+					});
+            }
+            thumbContentGroup.dispatchEvent(new org.apache.flex.events.Event("layoutNeeded"));
+            //return the last move to watch
+            return move;
+        }
+        
+        //return the last effect so we could add effectEnd handler if desired
+        private function fadeInThumbnails():void
+		{
+			var n:int = thumbnails.length;
+			var targets:Array = [];
+			for (var i:int = 0; i < n ; i++)
+			{
+			    var thumb:ProductCatalogThumbnail = thumbnails[i];
+			    if (accepted[thumb.product.productId.toString()] && !thumb.visible)
+				{
+                    thumb.alpha = 0;
+                    thumb.visible = true;
+                    targets.push(thumb);
+                }
+            }
+            if (targets.length > 0)
+            {
+                n = targets.length;
+                for (i = 0; i < n; i++)
+                {
+                    var effect:Fade = new Fade(targets[i] as IUIBase);
+                    effect.alphaTo = 1;
+                    effect.play();
+                }
+            }
+        }
+        
+        private function showDetails(product:Product):void
+        {
+            if (currentState == "details")
+			{
+                details.product = product;
+                return;
+            }
+
+            var row:int = -1;
+
+            //should be computed using border metrics instead of hard-coding the 20, but...
+			var xTo:Number = thumbContentGroup.width - ProductCatalogThumbnail.COL_WIDTH_4 - 20;
+            var yTo:Number;
+
+            var move:Move;
+            var first:Boolean = true;
+            var selectedThumb:ProductCatalogThumbnail;
+
+            var n:int = thumbnails.length;
+			for (var i:int = 0; i < n; i++)
+			{
+			    var thumb:ProductCatalogThumbnail = thumbnails[i];
+                if (thumb.visible)
+				{
+                    row++;
+                    yTo = row * (ProductCatalogThumbnail.COL_HEIGHT_4 + ProductCatalogThumbnail.VERTICAL_GAP);
+
+                    thumb.currentState = "x4cols";
+
+                    if (thumb.x != xTo || thumb.y != yTo)
+					{
+                        move = new Move(thumb);
+                        if (first)
+						{
+                            move.addEventListener(Effect.EFFECT_END,
+								function(event:org.apache.flex.events.Event):void
+								{
+									details.product = product;
+                                    currentState = "details";
+								});
+
+                            first = false;
+                        }
+                        move.xTo = xTo;
+                        move.yTo = yTo;
+                        move.play();
+                    }
+                    
+                    if (thumb.product == product)
+                    {
+                        selectedThumb = thumb;
+                    }
+                }
+            }
+            if (selectedThumb != null)
+            {
+                //make sure that the selected thumb is visible in the list on the right
+                move.addEventListener(Effect.EFFECT_END,
+					function(e:org.apache.flex.events.Event):void
+					{
+					    var curpos:int = scv.verticalScrollPosition;
+					    if (selectedThumb.y < curpos)
+					    {
+					        scv.verticalScrollPosition = y;
+					    }
+					    else if (selectedThumb.y + ProductCatalogThumbnail.COL_HEIGHT_4 > curpos + thumbContentGroup.height)
+					    {
+					        //this logic doesn't seem to be perfect but it will do
+					        var diff:int = selectedThumb.y - (curpos + thumbContentGroup.height)
+					        scv.verticalScrollPosition += diff + ProductCatalogThumbnail.COL_HEIGHT_4 + ProductCatalogThumbnail.VERTICAL_GAP;
+					    }
+					});
+            }
+            
+        }
+        
+        private function productThumbEventHandler(event:ProductThumbEvent):void
+        {
+            if (event.type == ProductThumbEvent.DETAILS)
+            {
+                showDetails(event.product);
+            }
+            else if (event.type == ProductThumbEvent.BROWSE)
+            {
+                if (thumbnailState == "browse")
+                {                
+                    currentState = "browse";
+                    layoutCatalog();
+                }
+                else
+                {
+                    compare();
+                }
+            }
+            else
+            {
+                dispatchEvent(event);
+            }
+        }
+        
+        public function compare(toCompare:Array=null):void
+        {
+            currentState = "compare";
+            thumbnailState = "compare";
+            if (toCompare != null)
+            {
+                var n:int = thumbnails.length;
+                for (var i:int = 0; i < n; i++)
+                {
+                    accepted[thumbnails[i].product.productId.toString()] = false;
+                }
+                for (i=0; i < toCompare.length; i++)
+                {
+                    accepted[toCompare[i].productId.toString()] = true;
+                }
+            }
+            var lastEffect:Effect = layoutCatalog();
+            if (lastEffect != null)
+            {
+                lastEffect.addEventListener(Effect.EFFECT_END,
+                    function (event:org.apache.flex.events.Event):void
+                    {
+                        setCompareState();
+                    });
+            }
+            else
+            {
+                setCompareState();
+            }
+        }
+        
+        private function setCompareState():void
+        {
+            //avoid an issue if the user clicks quickly where we move into
+            //compare state even though we're no longer in compare
+            if (currentState == "compare") 
+            {
+                var n:int = thumbnails.length;
+                for (var i:int = 0; i < n; i++)
+                {
+                    var thumb:ProductCatalogThumbnail = thumbnails[i];
+                    if (accepted[thumb.product.productId.toString()])
+                    {
+                        thumb.currentState = "compare";
+                    }
+                }
+                
+            }
+        }
+        
+        public function acceptingDrop(dropTarget:Object, type:String):void
+        {
+            
+        }
+            
+        public function acceptedDrop(dropTarget:Object, type:String):void
+        {
+            
+        }
+
+        ]]>
+    </fx:Script>
+    
+    <js:beads>
+        <js:ContainerDataBinding />
+        <js:VerticalLayout />
+        <js:DragMouseController id="dragger" />
+        <js:ParentDocumentBead id="pdb" />
+        <js:PanelView>
+            <js:titleBar>
+                <js:TitleBar height="20" >
+                    <js:style>
+                        <js:SimpleCSSStyles backgroundColor="0xA65904" />
+                    </js:style>
+                    <js:beads>
+                        <productsView:ProductCatalogPanelTitleBarView />
+                    </js:beads>
+                </js:TitleBar>
+            </js:titleBar>
+        </js:PanelView>
+    </js:beads>
+    <js:Container width="100%" height="100%">
+        <js:Container id="thumbContentGroup" width="100%" height="100%">
+            <js:beads>
+				<js:ScrollingViewport id="scv" />
+            </js:beads>
+        </js:Container>
+        <productsView:ProductDetails id="details" y="0"
+            width="{ProductCatalogThumbnail.COL_WIDTH_4 * 3}"
+            height="100%"
+            visible="false"
+            visible.details="true"
+            compare="productThumbEventHandler(event)"
+            purchase="productThumbEventHandler(event)"
+            browse="productThumbEventHandler(event)" />
+    </js:Container>
+    
+    <js:states>
+        <js:State name="browse" />
+        <js:State name="compare" />
+        <js:State name="details" />
+    </js:states>
+    
+</js:Panel>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogPanelTitleBarView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogPanelTitleBarView.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogPanelTitleBarView.mxml
new file mode 100755
index 0000000..f2cb397
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogPanelTitleBarView.mxml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:MXMLBeadView xmlns:fx="http://ns.adobe.com/mxml/2009"
+                        xmlns:js="library://ns.apache.org/flexjs/basic" 
+                        xmlns:productsView="productsView.*"
+                        >
+    <fx:Script>
+        <![CDATA[
+            import org.apache.flex.html.TitleBar;
+            import org.apache.flex.core.ITitleBarModel;
+            import org.apache.flex.core.UIBase;
+            import org.apache.flex.events.Event;
+            
+            private function clickHandler():void
+            {
+                var newEvent:org.apache.flex.events.Event = new org.apache.flex.events.Event('close',true);
+                UIBase(_strand).dispatchEvent(newEvent)   
+            }
+        ]]>
+    </fx:Script>
+    <js:beads>
+        <js:MXMLBeadViewDataBinding />
+        <js:ParentDocumentBead id="pdb" />
+        <js:LayoutChangeNotifier watchedProperty="{buttons.width}" />
+    </js:beads>
+    <js:Label id="titleLabel" text="{ITitleBarModel(model).title}" 
+                 />
+    <js:CloseButton id="closeButton" click="clickHandler()"
+                       visible="{ITitleBarModel(model).showCloseButton}";
+                       />
+    <productsView:CatalogTitleButtons id="buttons" />
+</js:MXMLBeadView>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogThumbnail.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogThumbnail.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogThumbnail.mxml
new file mode 100755
index 0000000..1abc428
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductCatalogThumbnail.mxml
@@ -0,0 +1,220 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+                   xmlns:js="library://ns.apache.org/flexjs/basic" 
+    width="{COL_WIDTH_4}" height="{COL_HEIGHT_4}" height.compare="502"
+    width.x4cols="{COL_WIDTH_4}" height.x4cols="{COL_HEIGHT_4}"
+    width.x3cols="{COL_WIDTH_3}" height.x3cols="{COL_HEIGHT_3}"
+    width.x2cols="{COL_WIDTH_2}" height.x2cols="{COL_HEIGHT_2}"
+    rollOver="rollOverHandler(event)"
+    rollOut="rollOutHandler(event)"
+    mouseDown="mouseDownHandler(event)"
+    mouseMove="mouseMoveHandler(event)"
+    mouseUp="mouseUpHandler(event)"
+    click="clickHandler(event)"
+    currentState="x4cols"
+    >
+    <!-- automationName="{product.name}" -->
+    <js:beads>
+        <js:ContainerDataBinding />
+        <js:LayoutChangeNotifier watchedProperty="{borderStyles.borderColor}" initialValue="#FFFFFF" />
+    </js:beads>
+    <js:style>
+        <js:BindableCSSStyles id="borderStyles" borderStyle="solid" borderWidth="1"
+                               borderColor="#FFFFFF" backgroundColor="#FFFFFF"/>
+    </js:style>
+    <fx:Metadata>
+        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="details", type="samples.flexstore.ProductThumbEvent")]
+    </fx:Metadata>
+
+    <fx:Script>
+        <![CDATA[
+
+		import org.apache.flex.events.*;
+        import org.apache.flex.utils.PointUtils;
+            
+        import samples.flexstore.Product;
+        import samples.flexstore.ProductThumbEvent;
+        
+        public static const COL_WIDTH_4:int = 162;
+        public static const COL_HEIGHT_4:int = 122;
+        public static const COL_WIDTH_3:int = 217;
+        public static const COL_HEIGHT_3:int = 165;
+        public static const COL_WIDTH_2:int = 327;
+        public static const COL_HEIGHT_2:int = 250;
+        public static const COMPARE_WIDTH:int = 162;
+        public static const HORIZONTAL_GAP:int = 2;
+        public static const VERTICAL_GAP:int = 3;
+
+        [Bindable]
+        public var product:Product;
+
+        private function rollOverHandler(event:MouseEvent):void
+		{
+            borderStyles.borderColor = "#CCCCCC";
+            //style["dropShadowEnabled"] = true;
+            buttons.visible = true;
+        }
+
+        private function rollOutHandler(event:MouseEvent):void
+		{
+            borderStyles.borderColor = "#FFFFFF";
+            //style["dropShadowEnabled"] = false;
+			buttons.visible = false;
+        }
+
+        private var dragStartPoint:Point;
+
+        public function mouseDownHandler(event:MouseEvent):void
+        {
+            if (event.target != purchase &&
+                event.target != compare &&
+                event.target != details)
+            {
+                dragStartPoint = new Point(event.clientX, event.clientY);
+            }
+        }
+
+        public function mouseMoveHandler(event:MouseEvent):void
+        {
+            if (dragStartPoint != null)
+            {
+                var dragEvent:DragEvent = new DragEvent(DragEvent.DRAG_START, true);
+                dragEvent.clientX = dragStartPoint.x;
+                dragEvent.clientY = dragStartPoint.y;
+                dragEvent.buttonDown = true;
+                dispatchEvent(dragEvent);
+
+                rollOutHandler(event);
+
+                dragStartPoint = null;
+            }
+        }
+
+        public function mouseUpHandler(event:MouseEvent):void
+        {
+            if (dragStartPoint != null)
+            {
+                dragStartPoint = null;
+            }
+        }
+
+        public function clickHandler(event:org.apache.flex.events.MouseEvent):void
+        {
+            if (event.target != purchase &&
+                event.target != compare &&
+                event.target != details)
+            {
+                dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product));
+            }
+        }
+
+	]]>
+    </fx:Script>
+    <fx:Declarations>
+        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
+    </fx:Declarations>
+
+    <js:VContainer id="vb" width="100%" height="100%">
+        <js:style>
+            <js:SimpleCSSStyles paddingLeft="6" paddingTop="4" paddingRight="8" paddingBottom="4" />
+                                 <!--  gap="0">  -->
+        </js:style>
+        
+
+        <js:Label text="{product.name}" style="fontWeight:bold"/>
+
+        <js:HContainer width="100%" >
+            <js:style>
+                <js:SimpleCSSStyles paddingTop="0" /> <!-- gap="4 -->"
+            </js:style>
+
+            <js:Image id="img" height="45" width="45" 
+                     width.x3cols="60" height.x3cols="60"
+                     width.x2cols="60" height.x2cols="60"
+                     source="{product.image}" />
+
+            <js:VContainer id="descr" height="100%" >
+                <js:style>
+                    <js:SimpleCSSStyles paddingTop="0" right="0" /> <!--  gap="0"  -->
+                </js:style>
+                <js:Label text="{product.featureString}" width="60" height="48" />
+                <js:Label text="{cf.format(product.price)}" style="fontWeight:bold"/>
+				<js:Spacer height="4"/>
+                <js:Label text="{product.highlight1}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
+                <js:Label text="{product.highlight2}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
+            </js:VContainer>
+
+        </js:HContainer>
+
+        <js:Spacer height="8"/>
+
+        <js:Label id="compYears" text="Years: {product.experience}" includeIn="compare"/>
+        <js:Label id="compBlaze" text="BlazeDS: {product.blazeds}" includeIn="compare"/>
+        <js:Label id="compMobile" text="Mobile: {product.mobile}" includeIn="compare"/>
+        <js:Label id="compVideo" text="Video: {product.video}" includeIn="compare"/>
+        <js:Label id="compHigh1" text="Highlight: {product.highlight1}" includeIn="compare"/>
+        <js:Label id="compHigh2" text="Highlight: {product.highlight2}" includeIn="compare"/>
+        <js:Label text="Description:" includeIn="compare"/>
+        <js:MultilineLabel id="compDesc" text="{product.description}" width="100%" includeIn="compare"/>
+    </js:VContainer>
+
+
+    <js:VContainer id="buttons" visible="false" width="30">
+        <js:style>
+            <js:SimpleCSSStyles paddingRight="8" right="8" top="12" /> <!-- gap="4" -->
+        </js:style>
+        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" className="hoverButton"
+            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" 
+            width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Add to cart"/>
+            </js:beads>
+        </js:ImageButton>
+        <js:ImageButton id="compare" source="assets/button_compare.png" className="hoverButton"
+            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" 
+            width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Add to compare list"/>
+            </js:beads>
+        </js:ImageButton>
+        <js:ImageButton id="details" source="assets/button_details.png" className="hoverButton"
+            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product))" 
+            width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Show details"/>
+            </js:beads>
+        </js:ImageButton>
+    </js:VContainer>
+
+    <js:states>
+
+        <js:State name="compare" />
+
+        <js:State name="x4cols" />
+
+        <js:State name="x3cols" />
+
+        <js:State name="x2cols"/>
+    </js:states>
+
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductDetails.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductDetails.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductDetails.mxml
new file mode 100755
index 0000000..309cb41
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/productsView/ProductDetails.mxml
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
+                 xmlns:js="library://ns.apache.org/flexjs/basic" 
+    xmlns:productsView="productsView.*"
+    >
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+
+    <fx:Metadata>
+        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
+        [Event(name="browse", type="samples.flexstore.ProductThumbEvent")]
+    </fx:Metadata>
+
+    <fx:Script>
+        <![CDATA[
+
+		import samples.flexstore.Product;
+		import samples.flexstore.ProductThumbEvent;
+
+        private var _product:Product;
+        
+        [Bindable]
+        public function get product():Product
+        {
+            return _product;
+        }
+        
+        public function set product(p:Product):void
+        {
+            _product = p;
+            tn.selectedIndex = 0;
+        }
+        
+	]]>
+    </fx:Script>
+
+    <fx:Declarations>
+        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
+    </fx:Declarations>
+
+    <js:states>
+        <js:State name="Features" />
+        <js:State name="Support" />
+    </js:states>
+    
+    <js:transitions>
+        <js:Transition>
+            <js:Fade />
+        </js:Transition>
+    </js:transitions>
+    
+    <js:ButtonBar id="tn" width="100%" change="currentState = tn.selectedItem as String">
+        <js:dataProvider>
+            <fx:Array>
+                <fx:String>Features</fx:String>
+                <fx:String>Support</fx:String>
+            </fx:Array>
+        </js:dataProvider>
+    </js:ButtonBar>
+    <js:Container >
+        <js:style>
+            <js:SimpleCSSStyles left="4" right="8" top="34" bottom="4" />
+        </js:style>
+                    
+
+        <js:VContainer includeIn="Features" >
+            <js:style>
+                <!--<js:SimpleCSSStyles gap="8"-->
+                <js:SimpleCSSStyles
+                    left="8" top="8" right="8" bottom="8"/>
+            </js:style>
+            <js:Container style="left:0px;right:0px">
+
+                <js:Image id="img" width="101" height="101" source="{product.image}"/>
+
+                <js:VContainer id="descr" >
+                    <js:style>
+                        <js:SimpleCSSStyles top="0" left="105" right="0" bottom="20" />
+                        <!--<js:SimpleCSSStyles paddingTop="0" gap="4" />-->
+                    </js:style>
+                    
+                    <js:Label text="{product.name}" style="fontSize:11;fontWeight:'bold'"/>
+
+	                <js:Label text="{product.featureString}" width="80" height="48" />
+
+                    <js:Label text="{product.highlight1}" style="color:#EE8D0C"/>
+
+                    <js:Label text="{product.highlight2}" style="color:#EE8D0C"/>
+
+                    <js:Label text="{cf.format(product.price)}" style="fontWeight:'bold'"/>
+
+                </js:VContainer>
+            </js:Container>
+
+            <js:Label id="descriptionText" style="left:0px;right:0px;bottom:0px" text="{product.description}"/>
+
+        </js:VContainer>
+
+        <productsView:ProductSupport width="100%" height="100%" includeIn="Support" />
+
+    </js:Container>
+
+    <js:VContainer>
+        <js:style>
+            <js:SimpleCSSStyles marginTop="4" right="16" top="36" />
+        </js:style>
+        <js:Spacer width="100%"/>
+        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Add to cart"/>
+            </js:beads>
+        </js:ImageButton>
+        <js:ImageButton id="compare" source="assets/button_compare.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Add to compare list"/>
+            </js:beads>
+        </js:ImageButton>
+        <js:ImageButton id="tiles" source="assets/button_tiles.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.BROWSE, product));" width="30">
+            <js:beads>
+                <js:ToolTipBead toolTip="Back to thumbnail view"/>
+            </js:beads>
+        </js:ImageButton>
+    </js:VContainer>
+
+</js:Container>


[46/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - get Ant build to work with Maven folder structure

Posted by ca...@apache.org.
get Ant build to work with Maven folder structure


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/bc828bbd
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/bc828bbd
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/bc828bbd

Branch: refs/heads/feature/mdl
Commit: bc828bbd4cf54835204b4bd871b77d4350360337
Parents: 3acf070
Author: Alex Harui <ah...@apache.org>
Authored: Wed Nov 9 11:40:45 2016 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Wed Nov 9 11:44:39 2016 -0800

----------------------------------------------------------------------
 examples/build.xml                           |  2 ++
 examples/build_example.xml                   | 12 ++++++------
 examples/flexjs/FlexJSStore/build.xml        | 10 +++++-----
 examples/flexjs/FlexJSStore_jquery/build.xml | 10 +++++-----
 examples/flexjs/MobileMap/build.xml          | 15 +++++++++------
 5 files changed, 27 insertions(+), 22 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/bc828bbd/examples/build.xml
----------------------------------------------------------------------
diff --git a/examples/build.xml b/examples/build.xml
index 8cb1387..75aead4 100644
--- a/examples/build.xml
+++ b/examples/build.xml
@@ -87,6 +87,7 @@
         <ant dir="${basedir}/flexjs/HelloWorld"/>
         <ant dir="${basedir}/flexjs/MapSearch"/>
         <ant dir="${basedir}/flexjs/MobileMap"/>
+        <ant dir="${basedir}/flexjs/MobileStocks"/>
         <ant dir="${basedir}/flexjs/MobileTrader"/>
         <ant dir="${basedir}/flexjs/ChartExample"/>
         <ant dir="${basedir}/flexjs/StorageExample"/>
@@ -121,6 +122,7 @@
         <ant dir="${basedir}/flexjs/HelloWorld" target="clean"/>
         <ant dir="${basedir}/flexjs/MapSearch" target="clean"/>
         <ant dir="${basedir}/flexjs/MobileTrader" target="clean"/>
+        <ant dir="${basedir}/flexjs/MobileStocks" target="clean"/>
         <ant dir="${basedir}/flexjs/MobileMap" target="clean"/>
         <ant dir="${basedir}/flexjs/ChartExample" target="clean"/>
         <ant dir="${basedir}/flexjs/StorageExample" target="clean"/>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/bc828bbd/examples/build_example.xml
----------------------------------------------------------------------
diff --git a/examples/build_example.xml b/examples/build_example.xml
index 87657ad..bdecb12 100644
--- a/examples/build_example.xml
+++ b/examples/build_example.xml
@@ -107,7 +107,7 @@
             then they would set theme_arg=-theme=<path to theme> -->
         <property name="theme_arg" value="-define=CONFIG::theme,false" />
         <mxmlc fork="true"
-               file="${basedir}/src/${example}.mxml"
+               file="${basedir}/src/main/flex/${example}.mxml"
                output="${basedir}/bin-debug/${example}.swf">
             <jvmarg line="${mxmlc.jvm.args}"/>
             <arg value="+flexlib=${basedir}/frameworks" />
@@ -157,7 +157,7 @@
         <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
         <property name="theme_arg" value="-define=CONFIG::theme,false" />
         <mxmlc fork="true"
-            file="${basedir}/src/${example}.mxml"
+            file="${basedir}/src/main/flex/${example}.mxml"
             output="${basedir}/bin-debug/${example}.swf">
             <jvmarg line="${mxmlc.jvm.args}"/>
             <arg value="+flexlib=${basedir}/frameworks" />
@@ -199,7 +199,7 @@
         <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
         <property name="theme_arg" value="-define=CONFIG::theme,false" />
         <mxmlc fork="true"
-               file="${basedir}/src/${example}.as"
+               file="${basedir}/src/main/flex/${example}.as"
                output="${basedir}/bin-debug/${example}.swf">
             <jvmarg line="${mxmlc.jvm.args}"/>
             <arg value="+flexlib=${basedir}/frameworks" />
@@ -262,7 +262,7 @@
             <arg value="-js-output-type=FLEXJS" />
             <arg value="-closure-lib=${GOOG_HOME}" />
             <arg value="-sdk-js-lib=${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources" />
-            <arg value="${basedir}/src/${example}.mxml" />
+            <arg value="${basedir}/src/main/flex/${example}.mxml" />
         </java>
         <fail>
 			<condition>
@@ -309,7 +309,7 @@
             <arg value="-js-output-type=FLEXJS" />
             <arg value="-closure-lib=${GOOG_HOME}" />
             <arg value="-sdk-js-lib=${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources" />
-            <arg value="${basedir}/src/${example}.mxml" />
+            <arg value="${basedir}/src/main/flex/${example}.mxml" />
         </java>
         <fail>
             <condition>
@@ -357,7 +357,7 @@
             <arg value="-js-output-type=FLEXJS" />
             <arg value="-closure-lib=${GOOG_HOME}" />
             <arg value="-sdk-js-lib=${FLEXJS_HOME}/frameworks/js/FlexJS/generated-sources" />
-            <arg value="${basedir}/src/${example}.as" />
+            <arg value="${basedir}/src/main/flex/${example}.as" />
         </java>
         <fail>
 			<condition>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/bc828bbd/examples/flexjs/FlexJSStore/build.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/build.xml b/examples/flexjs/FlexJSStore/build.xml
index 16f0aec..81cd3cb 100644
--- a/examples/flexjs/FlexJSStore/build.xml
+++ b/examples/flexjs/FlexJSStore/build.xml
@@ -33,20 +33,20 @@
     
     <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
         <mkdir dir="${basedir}/bin-debug/data" />
-        <copy file="${basedir}/src/data/catalog.json" tofile="${basedir}/bin-debug/data/catalog.json" />
+        <copy file="${basedir}/src/main/resources/data/catalog.json" tofile="${basedir}/bin-debug/data/catalog.json" />
         <mkdir dir="${basedir}/bin/js-debug/data" />
-        <copy file="${basedir}/src/data/catalog.json" tofile="${basedir}/bin/js-debug/data/catalog.json" />
+        <copy file="${basedir}/src/main/resources/data/catalog.json" tofile="${basedir}/bin/js-debug/data/catalog.json" />
         <mkdir dir="${basedir}/bin/js-release/data" />
-        <copy file="${basedir}/src/data/catalog.json" tofile="${basedir}/bin/js-release/data/catalog.json" />
+        <copy file="${basedir}/src/main/resources/data/catalog.json" tofile="${basedir}/bin/js-release/data/catalog.json" />
         <mkdir dir="${basedir}/bin/js-debug/assets" />
         <copy todir="${basedir}/bin/js-debug/assets" >
-            <fileset dir="${basedir}/src/assets">
+            <fileset dir="${basedir}/src/main/resources/assets">
                 <include name="**" />
             </fileset>
         </copy>
         <mkdir dir="${basedir}/bin/js-release/assets" />
         <copy todir="${basedir}/bin/js-release/assets" >
-            <fileset dir="${basedir}/src/assets">
+            <fileset dir="${basedir}/src/main/resources/assets">
                 <include name="**" />
             </fileset>
         </copy>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/bc828bbd/examples/flexjs/FlexJSStore_jquery/build.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/build.xml b/examples/flexjs/FlexJSStore_jquery/build.xml
index 080b6bb..ac61b45 100644
--- a/examples/flexjs/FlexJSStore_jquery/build.xml
+++ b/examples/flexjs/FlexJSStore_jquery/build.xml
@@ -51,20 +51,20 @@
     
     <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
         <mkdir dir="${basedir}/bin-debug/data" />
-        <copy file="${basedir}/src/data/catalog.json" tofile="${basedir}/bin-debug/data/catalog.json" />
+        <copy file="${basedir}/src/main/resources/data/catalog.json" tofile="${basedir}/bin-debug/data/catalog.json" />
         <mkdir dir="${basedir}/bin/js-debug/data" />
-        <copy file="${basedir}/src/data/catalog.json" tofile="${basedir}/bin/js-debug/data/catalog.json" />
+        <copy file="${basedir}/src/main/resources/data/catalog.json" tofile="${basedir}/bin/js-debug/data/catalog.json" />
         <mkdir dir="${basedir}/bin/js-release/data" />
-        <copy file="${basedir}/src/data/catalog.json" tofile="${basedir}/bin/js-release/data/catalog.json" />
+        <copy file="${basedir}/src/main/resources/data/catalog.json" tofile="${basedir}/bin/js-release/data/catalog.json" />
         <mkdir dir="${basedir}/bin/js-debug/assets" />
         <copy todir="${basedir}/bin/js-debug/assets" >
-            <fileset dir="${basedir}/src/assets">
+            <fileset dir="${basedir}/src/main/resources/assets">
                 <include name="**" />
             </fileset>
         </copy>
         <mkdir dir="${basedir}/bin/js-release/assets" />
         <copy todir="${basedir}/bin/js-release/assets" >
-            <fileset dir="${basedir}/src/assets">
+            <fileset dir="${basedir}/src/main/resources/assets">
                 <include name="**" />
             </fileset>
         </copy>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/bc828bbd/examples/flexjs/MobileMap/build.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileMap/build.xml b/examples/flexjs/MobileMap/build.xml
index 68403b6..ce2e376 100644
--- a/examples/flexjs/MobileMap/build.xml
+++ b/examples/flexjs/MobileMap/build.xml
@@ -23,6 +23,9 @@
     <property name="FLEXJS_HOME" location="../../.."/>
     <property name="example" value="MobileMap" />
     
+    <property name="swf.version" value="17" />
+    <property name="playerglobal.version" value="11.4" />
+    
     <property environment="env"/>
     <property file="${FLEXJS_HOME}/build.properties"/>
     <property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
@@ -30,25 +33,25 @@
     
     <include file="${basedir}/../../build_example.xml" />
 
-    <condition property="extlib_arg" value="-external-library-path=${FLEXJS_HOME}/js/libs/js.swc" >
+    <condition property="extlib_arg" value="-external-library-path=${FLEXJS_HOME}/js/libs/google_maps.swc" >
         <and>
             <not>
                 <isset property="extlib_arg" />
             </not>
-            <available file="${FLEXJS_HOME}/js/libs/js.swc" type="file" />
+            <available file="${FLEXJS_HOME}/js/libs/google_maps.swc" type="file" />
         </and>
     </condition>
-    <condition property="extlib_arg" value="-external-library-path=${FALCONJX_HOME}/../js/libs/js.swc" >
+    <condition property="extlib_arg" value="-external-library-path=${FALCONJX_HOME}/../js/libs/google_maps.swc" >
         <and>
             <not>
                 <isset property="extlib_arg" />
             </not>
-            <available file="${FALCONJX_HOME}/../js/libs/js.swc" type="file" />
+            <available file="${FALCONJX_HOME}/../js/libs/google_maps.swc" type="file" />
         </and>
     </condition>
-    <property name="extlib_arg" value="-external-library-path=${FALCONJX_HOME}/../externs/js/out/bin/js.swc"/>
+    <property name="extlib_arg" value="-external-library-path=${FALCONJX_HOME}/../externs/js/out/bin/google_maps.swc"/>
 
-    <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">
+    <target name="main" depends="clean,build_example.compileair,build_example.compilejsair" description="Clean build of ${example}">
     </target>
     
     <target name="cordova" description="Executes the Cordova build script to create Cordova app">


[44/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Merge branches 'develop' and 'feature-autobuild/example-maven-dirs' of https://git-wip-us.apache.org/repos/asf/flex-asjs into feature-autobuild/example-maven-dirs

Posted by ca...@apache.org.
Merge branches 'develop' and 'feature-autobuild/example-maven-dirs' of https://git-wip-us.apache.org/repos/asf/flex-asjs into feature-autobuild/example-maven-dirs


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/9b6e60cb
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/9b6e60cb
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/9b6e60cb

Branch: refs/heads/feature/mdl
Commit: 9b6e60cbb95bd47649256c8fe4240d8d4a87d662
Parents: 35e7acc 9e6e093
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Wed Nov 9 20:16:12 2016 +0100
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Wed Nov 9 20:16:12 2016 +0100

----------------------------------------------------------------------
 .../html/supportClasses/ClippingViewport.as     | 137 +++++++++++++++++++
 .../HTML/src/main/resources/basic-manifest.xml  |   1 +
 2 files changed, 138 insertions(+)
----------------------------------------------------------------------



[11/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductListItem.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductListItem.mxml b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductListItem.mxml
new file mode 100755
index 0000000..edf3516
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductListItem.mxml
@@ -0,0 +1,140 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
+                    xmlns:js="library://ns.apache.org/flexjs/basic" 
+    className="listItem" 
+    height="{HEIGHT}" implements="org.apache.flex.core.IItemRenderer">
+    <!--automationName="{product.name}">-->
+
+    <fx:Metadata>
+       [Event(name="productQtyChange", type="samples.flexstore.ProductListEvent")]
+       [Event(name="removeProduct", type="samples.flexstore.ProductListEvent")]
+    </fx:Metadata>
+    
+    <fx:Script>
+    <![CDATA[
+    
+        import samples.flexstore.Product;
+        import samples.flexstore.ProductListEvent;
+        
+        private static var idCounter:int = 0;
+        public var uid:String = (idCounter++).toString();
+        
+        public static const HEIGHT:int = 30;
+        
+        [Bindable("__NoChangeEvent__")]
+        public function get product():Product
+        {
+            return _data as Product;
+        }
+        public function set product(value:Product):void
+        {
+            _data = value;
+        }
+        
+        private var _data:Object;
+        
+        public function get data():Object
+        {
+            return _data;
+        }
+        
+        public function set data(value:Object):void
+        {
+            _data = value;
+        }
+        
+        public function get listData():Object
+        {
+        	return null;
+        }
+        
+        public function set listData(value:Object):void
+        {
+        	// not used
+        }
+
+        private var _itemRendererParent:Object;
+        
+        public function get itemRendererParent():Object
+        {
+            return _itemRendererParent;
+        }
+        
+        public function set itemRendererParent(value:Object):void
+        {
+            _itemRendererParent = value;
+        }
+        
+        private function qtyChange():void
+    	{
+            product.qty = int(qty.text);
+            var event:ProductListEvent = new ProductListEvent(ProductListEvent.PRODUCT_QTY_CHANGE);
+            event.product = product;
+    		dispatchEvent(event);
+        }
+        
+        private function removeItem():void
+        {
+            var event:ProductListEvent = new ProductListEvent(ProductListEvent.REMOVE_PRODUCT);
+            event.product = product;
+    		dispatchEvent(event);
+        }
+        
+    ]]>
+    </fx:Script>
+    
+    <fx:Declarations>
+        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>
+    </fx:Declarations>
+    
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+        
+    <js:ImageButton id="removeButton" source="assets/trashcan.png"
+        width="14" height="14" y="5"
+        click="removeItem()">
+        <js:beads>
+            <js:ToolTipBead toolTip="Remove from cart" />
+        </js:beads>
+    </js:ImageButton>
+    
+    <js:Image id="productImage" x="16" y="6" width="12" height="12" source="{product.image}"/>
+
+    <js:Label id="productName" x="30" width="100" y="4" text="{product.name}"/>
+
+    <js:Label id="productPrice" width="60" y="4"
+        text="{cf.format(product.price)}" style="textAlign:right;right:0"
+                                style.showQuantity="textAlign:right;right:25"/>
+        
+    <js:TextInput id="qty" width="25" y="3" text="{product.qty}" includeIn="showQuantity"
+                  style="textAlign:right;right:0;marginTop:0" change="qtyChange()" >
+        <js:beads>
+            <js:NumericOnlyTextInputBead maxChars="3" />
+        </js:beads>
+    </js:TextInput>
+    
+    <js:states>
+        <js:State name="compare" />
+        <js:State name="showQuantity" />
+    </js:states>
+    
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductSupport.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductSupport.mxml b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductSupport.mxml
new file mode 100755
index 0000000..5b2bd32
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/productsView/ProductSupport.mxml
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:HContainer xmlns:fx="http://ns.adobe.com/mxml/2009" 
+          xmlns:js="library://ns.apache.org/flexjs/basic" 
+		 >
+    <js:style>
+        <js:SimpleCSSStyles paddingLeft="4" paddingRight="8" paddingBottom="4" />
+    </js:style>
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+
+    <fx:Script>
+	<![CDATA[
+
+        private function toggle():void
+		{
+			/*
+            if (vd.playing)
+			{
+                vd.stop();
+                list.visible = true;
+            }
+			else
+			{
+                list.visible = false;
+                vd.play();
+            }
+			*/
+        }
+
+	]]>
+    </fx:Script>
+
+    <fx:Declarations>
+        <js:Parallel id="hideList">
+            <js:children>
+                <fx:Array>
+                    <js:Resize target="{list}" widthTo="0"/>
+                    <!--<mx:Resize target="{vd}" widthTo="400" heightTo="314"/>-->
+                </fx:Array>
+            </js:children>
+        </js:Parallel>
+        
+        <js:Parallel id="showList">
+            <js:children>
+                <fx:Array>
+                    <js:Resize target="{list}" widthTo="130"/>
+                    <!--<mx:Resize target="{vd}" widthTo="270" heightTo="217"/>-->
+                </fx:Array>
+            </js:children>
+        </js:Parallel>        
+    </fx:Declarations>
+    <js:List id="list" width="130" height="100%" selectedIndex="0">
+        <js:dataProvider>
+            <fx:Array>
+                <fx:Object label="Install SIM Card"/>
+            </fx:Array>
+        </js:dataProvider>
+    </js:List>
+
+    <js:Container width="100%">
+
+		<!--<mx:VideoDisplay id="vd" width="270" height="217" source="assets/phone.flv"
+						 autoPlay="false" complete="list.visible=true"/>
+
+		<mx:Button label="{vd.playing ? 'Stop' : 'Play'}" click="toggle()" left="8" bottom="8" includeInLayout="false">
+		</mx:Button>
+		-->
+	</js:Container>
+
+
+</js:HContainer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ButtonBarButtonSkin.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ButtonBarButtonSkin.as b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ButtonBarButtonSkin.as
new file mode 100755
index 0000000..0c36aad
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ButtonBarButtonSkin.as
@@ -0,0 +1,298 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package samples.flexstore
+{
+
+import flash.display.GradientType;
+import mx.containers.BoxDirection;
+import mx.controls.Button;
+import mx.controls.ButtonBar;
+import mx.skins.Border;
+import mx.skins.halo.*;
+import mx.styles.StyleManager;
+import mx.utils.ColorUtil;
+
+/**
+ *  Adapted from mx.skins.halo.ButtonBarButtonSkin.
+ *  This version of the ButtonBarButtonSkin is applied for the
+ *  selectedOver, selectedUp, and over states to use the 2nd two
+ *  values of the fillColors for the selected state of the
+ *  button.  The over state then uses a computed value from
+ *  the themeColor to show emphasis.  The border of the selected
+ *  button also uses a computed value from the themeColor, but
+ *  is partially transparent.
+ */
+public class ButtonBarButtonSkin extends Border
+{
+	//--------------------------------------------------------------------------
+	//
+	//  Class variables
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	private static var cache:Object = {};
+
+	//--------------------------------------------------------------------------
+	//
+	//  Class methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 *  Several colors used for drawing are calculated from the base colors
+	 *  of the component (themeColor, borderColor and fillColors).
+	 *  Since these calculations can be a bit expensive,
+	 *  we calculate once per color set and cache the results.
+	 */
+	private static function calcDerivedStyles(themeColor:uint,
+											  fillColor0:uint,
+											  fillColor1:uint):Object
+	{
+		var key:String = HaloColors.getCacheKey(themeColor,
+												fillColor0, fillColor1);
+
+		if (!cache[key])
+		{
+			var o:Object = cache[key] = {};
+
+			// Cross-component styles.
+			HaloColors.addHaloColors(o, themeColor, fillColor0, fillColor1);
+
+			// Button-specific styles.
+			o.innerEdgeColor1 = ColorUtil.adjustBrightness2(fillColor0, -10);
+			o.innerEdgeColor2 = ColorUtil.adjustBrightness2(fillColor1, -25);
+		}
+
+		return cache[key];
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Constructor
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 *  Constructor.
+	 */
+	public function ButtonBarButtonSkin()
+	{
+		super();
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden properties
+	//
+	//--------------------------------------------------------------------------
+
+	//----------------------------------
+	//  measuredWidth
+	//----------------------------------
+
+	/**
+	 *  @private
+	 */
+	override public function get measuredWidth():Number
+	{
+		return 50;
+	}
+
+	//----------------------------------
+	//  measuredHeight
+	//----------------------------------
+
+	/**
+	 *  @private
+	 */
+	override public function get measuredHeight():Number
+	{
+		return 22;
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	override protected function updateDisplayList(w:Number, h:Number):void
+	{
+		super.updateDisplayList(w, h);
+
+		// User-defined styles.
+		var borderColor:uint = getStyle("borderColor");
+		var cornerRadius:Number = getStyle("cornerRadius");
+		var fillAlphas:Array = getStyle("fillAlphas");
+		var fillColors:Array = getStyle("fillColors");
+		styleManager.getColorNames(fillColors);
+		var highlightAlphas:Array = getStyle("highlightAlphas");
+		var themeColor:uint = getStyle("themeColor");
+
+		// Derivative styles.
+		var derStyles:Object = calcDerivedStyles(themeColor, fillColors[0],
+												 fillColors[1]);
+
+		var borderColorDrk1:Number =
+			ColorUtil.adjustBrightness2(borderColor, -50);
+
+		var themeColorDrk1:Number =
+			ColorUtil.adjustBrightness2(themeColor, -25);
+
+		var emph:Boolean = false;
+
+		if (parent is Button)
+			emph = (parent as Button).emphasized;
+
+		var tmp:Number;
+
+		var bar:ButtonBar = parent ? ButtonBar(parent.parent) : null;
+		var horizontal:Boolean = true;
+		var pos:int = 0;
+
+		if (bar)
+		{
+			if (bar.direction == BoxDirection.VERTICAL)
+				horizontal = false;
+
+			// first: -1, middle: 0, last: 1
+			var index:int = bar.getChildIndex(parent);
+			pos = (index == 0 ? -1 : (index == bar.numChildren - 1 ? 1 : 0));
+		}
+
+		var radius:Object = getCornerRadius(pos, horizontal, cornerRadius);
+		var cr:Object = getCornerRadius(pos, horizontal, cornerRadius);
+		var cr1:Object = getCornerRadius(pos, horizontal, cornerRadius - 1);
+		var cr2:Object = getCornerRadius(pos, horizontal, cornerRadius - 2);
+		var cr3:Object = getCornerRadius(pos, horizontal, cornerRadius - 3);
+
+		graphics.clear();
+
+		switch (name)
+		{
+			case "selectedUpSkin":
+			case "selectedOverSkin":
+			{
+				var overFillColors:Array;
+				if (fillColors.length > 2)
+					overFillColors = [ fillColors[2], fillColors[3] ];
+				else
+					overFillColors = [ fillColors[0], fillColors[1] ];
+
+				var overFillAlphas:Array;
+				if (fillAlphas.length > 2)
+					overFillAlphas = [ fillAlphas[2], fillAlphas[3] ];
+  				else
+					overFillAlphas = [ fillAlphas[0], fillAlphas[1] ];
+
+				// button border/edge
+				drawRoundRect(
+					0, 0, w, h, cr,
+					[ themeColor, derStyles.themeColDrk1 ], 0.5,
+					verticalGradientMatrix(0, 0, w , h),
+					GradientType.LINEAR, null,
+					{ x: 1, y: 1, w: w - 2, h: h - 2, r: cr1 });
+
+				// button fill
+				drawRoundRect(
+					1, 1, w - 2, h - 2, cr1,
+					overFillColors, overFillAlphas,
+					verticalGradientMatrix(0, 0, w - 2, h - 2));
+
+				// top highlight
+				if (!(radius is Number))
+					{ radius.bl = radius.br = 0;}
+				drawRoundRect(
+					1, 1, w - 2, (h - 2) / 2, radius,
+					[ 0xFFFFFF, 0xFFFFFF ], highlightAlphas,
+					verticalGradientMatrix(1, 1, w - 2, (h - 2) / 2));
+				break;
+			}
+
+			case "overSkin":
+			{
+				// button border/edge
+				drawRoundRect(
+					0, 0, w, h, cr,
+					[ themeColor, derStyles.themeColDrk1 ], 0.5,
+					verticalGradientMatrix(0, 0, w, h));
+
+				// button fill
+				drawRoundRect(
+					1, 1, w - 2, h - 2, cr1,
+					[ derStyles.fillColorPress1, derStyles.fillColorPress2 ], 1,
+					verticalGradientMatrix(0, 0, w - 2, h - 2));
+
+				// top highlight
+				if (!(radius is Number))
+					{ radius.bl = radius.br = 0;}
+				drawRoundRect(
+					1, 1, w - 2, (h - 2) / 2, radius,
+					[ 0xFFFFFF, 0xFFFFFF ], highlightAlphas,
+					verticalGradientMatrix(1, 1, w - 2, (h - 2) / 2));
+
+				break;
+			}
+		}
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	private function getCornerRadius(pos:int, horizontal:Boolean,
+									 radius:Number):Object
+	{
+		if (pos == 0)
+			return 0;
+
+		radius = Math.max(0, radius);
+
+		if (horizontal)
+		{
+			if (pos == -1)
+				return { tl: radius, tr: 0, bl: radius, br: 0 };
+			else // pos == 1
+				return { tl: 0, tr: radius, bl: 0, br: radius };
+		}
+		else
+		{
+			if (pos == -1)
+				return { tl: radius, tr: radius, bl: 0, br: 0 };
+			else // pos == 1
+				return { tl: 0, tr: 0, bl: radius, br: radius };
+		}
+	}
+}
+
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/Product.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/Product.as b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/Product.as
new file mode 100755
index 0000000..707fbf6
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/Product.as
@@ -0,0 +1,78 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package samples.flexstore
+{
+
+[Bindable]
+public class Product
+{
+
+    public var productId:int;
+    public var name:String;
+    public var description:String;
+    public var price:Number;
+    public var image:String;
+    public var experience:String;
+    public var blazeds:Boolean;
+    public var mobile:Boolean;
+    public var video:Boolean;
+    public var highlight1:String;
+    public var highlight2:String;
+    public var qty:int;
+
+    public function Product()
+    {
+
+    }
+
+    public function fill(obj:Object):void
+    {
+        for (var i:String in obj)
+        {
+            this[i] = obj[i];
+        }
+    }
+
+    [Bindable(event="propertyChange")]
+    public function get featureString():String
+    {
+    	var str:String = "";
+    	if (blazeds)
+    		str += "BlazeDS";
+
+		if (mobile)
+		{
+			if (str.length > 0)
+				str += "\n";
+			str += "Mobile";
+		}
+
+		if (video)
+		{
+			if (str.length > 0)
+				str += "\n";
+			str += "Video";
+		}
+
+		return str;
+    }
+
+}
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductFilter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductFilter.as b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductFilter.as
new file mode 100755
index 0000000..b31f367
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductFilter.as
@@ -0,0 +1,56 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package samples.flexstore
+{
+
+[Bindable]
+public class ProductFilter
+{
+    public var count:int;
+    public var experience:String;
+    public var minPrice:Number;
+    public var maxPrice:Number;
+    public var blazeds:Boolean;
+    public var mobile:Boolean;
+    public var video:Boolean;
+    
+    public function ProductFilter()
+    {
+        super();
+    }
+    
+    public function accept(product:Product):Boolean
+    {
+        //price is often the first test so let's fail fast if possible
+        if (minPrice > product.price || maxPrice < product.price)
+            return false;
+        if (experience != "All" && experience > product.experience)
+            return false;
+        if (blazeds && !product.blazeds)
+            return false;
+        if (mobile && !product.mobile)
+            return false;
+        if (video && !product.video)
+            return false;
+        
+        return true;
+    }
+}
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductFilterEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductFilterEvent.as b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductFilterEvent.as
new file mode 100755
index 0000000..0160f50
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductFilterEvent.as
@@ -0,0 +1,39 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package samples.flexstore
+{
+
+import org.apache.flex.events.Event;
+
+public class ProductFilterEvent extends Event
+{
+    public static const FILTER:String = "filter";
+    
+    public var live:Boolean;
+    public var filter:ProductFilter;
+    
+    public function ProductFilterEvent(filter:ProductFilter, live:Boolean)
+    {
+        super(FILTER);
+        this.filter = filter;
+        this.live = live;
+    }
+}
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductListEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductListEvent.as b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductListEvent.as
new file mode 100755
index 0000000..0356795
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductListEvent.as
@@ -0,0 +1,42 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package samples.flexstore
+{
+
+import org.apache.flex.events.Event;
+
+public class ProductListEvent extends Event
+{
+    public static const ADD_PRODUCT:String = "addProduct";
+    public static const DUPLICATE_PRODUCT:String = "duplicateProduct";
+    public static const REMOVE_PRODUCT:String = "removeProduct";
+    public static const PRODUCT_QTY_CHANGE:String = "productQtyChange";
+    
+    public var product:Product;
+    
+    //making the default bubbles behavior of the event to true since we want
+    //it to bubble out of the ProductListItem and beyond
+    public function ProductListEvent(type:String, bubbles:Boolean=true, cancelable:Boolean=false)
+    {
+        super(type, bubbles, cancelable);
+    }
+    
+}
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductThumbEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductThumbEvent.as b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductThumbEvent.as
new file mode 100755
index 0000000..ce1cab7
--- /dev/null
+++ b/examples/flexjs/FlexJSStore/src/main/flex/samples/flexstore/ProductThumbEvent.as
@@ -0,0 +1,45 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package samples.flexstore
+{
+    
+import org.apache.flex.events.Event;
+
+public class ProductThumbEvent extends Event
+{
+    public static const PURCHASE:String = "purchase";
+    public static const COMPARE:String = "compare";
+    public static const DETAILS:String = "details";
+    public static const BROWSE:String = "browse";
+    
+    public var product:Product;
+    
+    public function ProductThumbEvent(type:String, product:Product)
+    {
+        super(type);
+        this.product = product;
+    }
+    
+    override public function cloneEvent():Event
+    {
+        return new ProductThumbEvent(type, product);
+    }
+}
+
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/productsView/CatalogTitleButtons.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/productsView/CatalogTitleButtons.mxml b/examples/flexjs/FlexJSStore/src/productsView/CatalogTitleButtons.mxml
deleted file mode 100755
index af9cfd1..0000000
--- a/examples/flexjs/FlexJSStore/src/productsView/CatalogTitleButtons.mxml
+++ /dev/null
@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:HContainer xmlns:fx="http://ns.adobe.com/mxml/2009"
-                  xmlns:js="library://ns.apache.org/flexjs/basic" 
-                  currentState="showFilter">
-    <js:style>
-        <js:SimpleCSSStyles verticalAlign="middle" 
-                               paddingTop="0" 
-                               paddingBottom="0" />
-    </js:style>
-    <js:beads>
-        <js:ParentDocumentBead id="pdb" />
-        <js:ContainerDataBinding />
-        <js:LayoutChangeNotifier watchedProperty="{viewCart.text}" initialValue="#FFFFFF" />
-    </js:beads>
-    <fx:Script>
-        <![CDATA[
-            [Bindable]
-            public var cartCount:int;
-            
-            private function rollOverLabel(event:MouseEvent):void
-            {
-                try {
-                    Label(event.target).className = "catalogTitleButtonHighlighted";
-                } catch (e:Error) {}
-            }
-            
-            private function rollOutLabel(event:MouseEvent):void
-            {
-                Label(event.target).className = "catalogTitleButtonDeselected";
-            }
-        ]]>
-    </fx:Script>
-    <fx:Binding source="ProductCatalogPanel(pdb.parentDocument).cartCount" destination="cartCount" />
-    <!-- two-way binding between the states of panel title buttons and the product view state -->
-    <fx:Binding source="ProductsView(ProductCatalogPanel(pdb.parentDocument).pdb.parentDocument).currentState" destination="currentState" />
-    <fx:Binding destination="ProductsView(ProductCatalogPanel(pdb.parentDocument).pdb.parentDocument).currentState" source="currentState" />    
-
-    <js:Label id="findPhones" text="Find Developers" click="currentState = 'showFilter'"
-             className.showFilter="catalogTitleButtonSelected"
-             className.showCart="catalogTitleButtonDeselected"
-             rollOver.showCart="rollOverLabel(event)"
-             rollOut.showCart="rollOutLabel(event)"/>
-    <js:VRule height="{findPhones.height * .75}" alpha=".75" style="color:#333333" />
-    <js:Label id="viewCart" text="View Cart ({cartCount} items)" click="currentState = 'showCart'"
-             className.showFilter="catalogTitleButtonDeselected"
-             className.showCart="catalogTitleButtonSelected"
-             rollOver.showFilter="rollOverLabel(event)"
-             rollOut.showFilter="rollOutLabel(event)"/>
-    
-    <js:states>
-        <js:State name="showFilter" />
-        <js:State name="showCart" />
-    </js:states>
-</js:HContainer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/productsView/Grip.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/productsView/Grip.mxml b/examples/flexjs/FlexJSStore/src/productsView/Grip.mxml
deleted file mode 100755
index 281c572..0000000
--- a/examples/flexjs/FlexJSStore/src/productsView/Grip.mxml
+++ /dev/null
@@ -1,48 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-                  xmlns:js="library://ns.apache.org/flexjs/basic" 
-                  width="17" height="100%" >
-    <js:style>
-        <js:SimpleCSSStyles paddingTop="10" />
-    </js:style>
-
-    <fx:Script>
-        <![CDATA[
-           [Bindable]
-           public var gripTip:String; 
-           
-           [Bindable]
-           public var gripIcon:String;
-        ]]>
-    </fx:Script>
-    <js:beads>
-        <js:ContainerDataBinding />
-        <js:OneFlexibleChildVerticalLayout flexibleChild="grip" />
-    </js:beads>
-
-    <js:Image id="icon" source="{gripIcon}" />
-    <js:Image id="grip" source="assets/grip.png" >
-        <js:beads>
-            <js:ToolTipBead toolTip="{gripTip}" />
-        </js:beads>
-    </js:Image>
-    
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/productsView/ProductCart.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/productsView/ProductCart.mxml b/examples/flexjs/FlexJSStore/src/productsView/ProductCart.mxml
deleted file mode 100755
index 830bf21..0000000
--- a/examples/flexjs/FlexJSStore/src/productsView/ProductCart.mxml
+++ /dev/null
@@ -1,117 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-          xmlns:js="library://ns.apache.org/flexjs/basic" 
-    xmlns:productsView="productsView.*"
-    >
-    <js:style>
-        <js:SimpleCSSStyles 
-                               paddingTop="8"
-                               paddingBottom="8"
-                               paddingRight="4"
-                               paddingLeft="4" />
-    </js:style>
-    <js:beads>
-        <js:ContainerDataBinding />
-        <js:OneFlexibleChildVerticalLayout id="flexLayout" flexibleChild="productList" />
-    </js:beads>
-    <fx:Script>
-        <![CDATA[
-        
-        import org.apache.flex.html.SimpleAlert;
-        
-        import samples.flexstore.Product;
-        import samples.flexstore.ProductListEvent;
-        
-        [Bindable]
-        public var numProducts:int=0;
-        
-        [Bindable]
-        private var total:Number = 0;
-
-        private const SHIPPING:Number = 1.99;
-        
-        private function productListEventHandler(event:ProductListEvent):void
-        {
-            switch (event.type)
-            {
-                case ProductListEvent.ADD_PRODUCT:
-                    event.product.qty = 0;  
-                    //fall through into the same logic as dup          
-                case ProductListEvent.DUPLICATE_PRODUCT:
-                    event.product.qty++;
-                    //total += event.product.price;
-                    total = total + event.product.price;
-                    numProducts++;
-                    break;            
-                case ProductListEvent.PRODUCT_QTY_CHANGE:
-                case ProductListEvent.REMOVE_PRODUCT:
-                    var items:Array = productList.items;
-                    total = 0; 
-                    numProducts = 0;
-                    for (var i:int=0; i < items.length; i++)
-                    {
-                        var product:Product = items[i].product;
-                        //total += product.qty * product.price;
-                        //numProducts += product.qty;
-                        total = total + product.qty * product.price;
-                        numProducts = numProducts + product.qty;
-                    }       
-                    break;
-                default:
-                    break;
-            }
-        }
-        
-        ]]>
-    </fx:Script>
-    <fx:Declarations>
-        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
-    </fx:Declarations>
-    
-    <js:Label width="100%" text="Your Shopping Cart" className="sectionHeader"/>
-        
-    <productsView:ProductList id="productList" width="100%"
-        newItemStartX="-100" newItemStartY="-100" 
-        addProduct="productListEventHandler(event)"
-        duplicateProduct="productListEventHandler(event)"
-        productQtyChange="productListEventHandler(event)"
-        removeProduct="productListEventHandler(event)"
-        showQuantity="true" />
-    
-    <js:Container style="right:0" id="totalContainer">
-        <js:beads>
-            <js:VerticalColumnLayout numColumns="2" />
-        </js:beads>
-        <js:Label text="Total:" />
-        <js:Label width="70" text="{cf.format(total)}" id="lblTotal" style="textAlign:'right'"/>
-
-        <js:Label text="Service Fee:" />
-        <js:Label width="70" text="{cf.format(numProducts * SHIPPING)}" id="lblFee" style="textAlign:'right'"/>
-
-        <js:Label text="Grand Total:" style="fontWeight:'bold'" />
-        <js:Label width="70" text="{cf.format(total + (numProducts * SHIPPING))}" id="lblGrandTotal" style="textAlign:'right'"/>
-
-    </js:Container>
-
-    <js:TextButton text="Submit Order" click="SimpleAlert.show('This feature is not implemented in this sample', 'Submit Order')"
-                   style="right:0"/>
-
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogPanel.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogPanel.mxml b/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogPanel.mxml
deleted file mode 100755
index 48fa69a..0000000
--- a/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogPanel.mxml
+++ /dev/null
@@ -1,546 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Panel xmlns:fx="http://ns.adobe.com/mxml/2009"
-         xmlns:js="library://ns.apache.org/flexjs/basic" 
-         implements="org.apache.flex.core.IDragInitiator"
-    xmlns:productsView="productsView.*"
-    currentState="browse"
-    title="SpaceHolder"
-    title.browse="Browse"
-    title.compare="Product Comparison"
-    title.details="Product Details"
-    className="catalogPanel"
-    >
-    
-    <fx:Metadata>
-        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="details", type="samples.flexstore.ProductThumbEvent")]
-    </fx:Metadata>
-    
-    <fx:Script>
-        <![CDATA[
-            import org.apache.flex.core.IUIBase;
-            import org.apache.flex.effects.Effect;
-            import org.apache.flex.effects.Fade;
-            import org.apache.flex.effects.Move;
-            import org.apache.flex.effects.Parallel;
-            import org.apache.flex.effects.Tween;
-            import org.apache.flex.events.DragEvent;
-            import org.apache.flex.events.Event;
-            import org.apache.flex.collections.LazyCollection;
-            
-            import samples.flexstore.Product;
-            import samples.flexstore.ProductFilter;
-            import samples.flexstore.ProductFilterEvent;
-            import samples.flexstore.ProductThumbEvent;
-       
-     
-        private var accepted:Object = new Object();
-        private var thumbnails:Array;
-        private var filterCount:int;
-        private var thumbnailState:String = 'browse'; //either 'browse' or 'compare'
-                
-        [Bindable]
-        public var cartCount:int;
-        
-        //-----------------------------
-        // catalog
-        //-----------------------------
-        
-        private var _catalog:LazyCollection;
-        
-        [Bindable]
-        public function set catalog(c:LazyCollection):void
-        {
-            _catalog = c;
-            createThumbnails();
-        }
-        
-        public function get catalog():LazyCollection
-        {
-            return _catalog;
-        }
-        
-        //----------------------------------------------------------------------
-        // methods
-        //----------------------------------------------------------------------
-       
-        private function createThumbnails():void
-        {
-            var i:int; //variables are hoisted up in scope so declare here to avoid warning
-            if (thumbnails != null)
-            {
-                for (i=0; i < thumbnails.length; i++)
-                {
-                    thumbContentGroup.removeElement(thumbnails[i]);
-                }
-            }
-            
-            var row:int = 0;
-            var col:int = -1;
-            var n:int = catalog.length;
-            thumbnails = new Array(n);
-            filterCount = n;
-            
-            for (i=0; i < n; i++)
-            {
-                var thumb:ProductCatalogThumbnail = new ProductCatalogThumbnail();
-                thumb.x = 0;
-                thumb.y = 0;
-                thumbnails[i] = thumb;
-                // thumbnails[i].showInAutomationHierarchy = true;
-                thumb.product = catalog.getItemAt(i) as Product;
-                accepted[thumb.product.productId.toString()] = true;
-                thumbContentGroup.addElement(thumb);
-                thumb.addEventListener(ProductThumbEvent.PURCHASE, productThumbEventHandler);
-                thumb.addEventListener(ProductThumbEvent.COMPARE, productThumbEventHandler);
-                thumb.addEventListener(ProductThumbEvent.DETAILS, productThumbEventHandler);
-                thumb.addEventListener(DragEvent.DRAG_START,thumbDragStartHandler);
-            }
-
-            var lastMove:Effect = layoutCatalog();
-            if (lastMove)
-            {
-                lastMove.addEventListener(Tween.TWEEN_UPDATE, updateLayout);
-                lastMove.addEventListener(Tween.TWEEN_END, updateLayout);
-            }
-        }
-        
-        private function updateLayout(event:org.apache.flex.events.Event):void
-        {
-            thumbContentGroup.dispatchEvent(new org.apache.flex.events.Event("layoutNeeded"));   
-        }
-            
-        private function thumbDragStartHandler(event:MouseEvent):void
-        {
-            if (DragMouseController.dragging == false)
-            {
-                var thumb:ProductCatalogThumbnail = event.target as ProductCatalogThumbnail;
-                DragEvent.dragSource = thumb.product;
-
-                var di:ProductCatalogThumbnail = new ProductCatalogThumbnail();
-                di.product = thumb.product;
-                di.currentState = thumb.currentState;
-                DragMouseController.dragImage = di;
-                
-                DragEvent.dragInitiator = this;
-            }    
-        }
-        
-        public function filter(productFilter:ProductFilter, live:Boolean):void
-        {
-            currentState = "browse";
-            thumbnailState = "browse";
-            var count:int=0;
-            var n:int = thumbnails.length;
-            var targets:Array = [];
-            for (var i:int = 0; i < n; i++)
-            {
-                var thumb:ProductCatalogThumbnail = thumbnails[i];
-                var product:Product = thumb.product;
-                if (productFilter.accept(product))
-                {
-                    accepted[product.productId.toString()] = true;
-                    thumb.alpha = 1;    
-                    count++;
-                }
-                else
-                {
-                    accepted[product.productId.toString()] = false;
-                    if (live)
-                    {
-                        thumb.alpha = .1;
-                    }
-                    else if (thumb.alpha == 1) //only fade if we hadn't started
-                    {
-                        targets.push(thumb);
-                    }
-                }
-            }
-            productFilter.count = count;
-            filterCount = count;
-
-            if (targets.length > 0)    
-            {
-                var p:Parallel = new Parallel();
-                n = targets.length;
-                for (i = 0; i < n; i++)
-                {
-                    var fadeOut:Fade = new Fade(targets[i] as IUIBase);
-                    fadeOut.alphaFrom = 1;
-                    fadeOut.alphaTo = .1;
-                    p.addChild(fadeOut);
-                }
-                p.play();
-                p.addEventListener(Effect.EFFECT_END,
-                    function(event:org.apache.flex.events.Event):void
-                    {
-                        layoutCatalog();
-                    });
-            }
-            else if (!live)
-            {
-                layoutCatalog();
-            }
-        }
-        
-        private function layoutCatalog():Effect
-        {
-            var tileWidth:Number;
-            var tileHeight:Number;
-            var numCols:int;
-
-            if (filterCount > 9 || currentState == "compare")
-            {
-                numCols = 4;
-                tileWidth = ProductCatalogThumbnail.COL_WIDTH_4;
-                tileWidth = currentState == "compare"
-                    ? ProductCatalogThumbnail.COMPARE_WIDTH
-                    : ProductCatalogThumbnail.COL_WIDTH_4
-                tileHeight = currentState == "compare"
-                    ? height - 4
-                    : ProductCatalogThumbnail.COL_HEIGHT_4;
-            }
-            else if (filterCount > 4)
-			{
-                numCols = 3;
-                tileWidth = ProductCatalogThumbnail.COL_WIDTH_3;
-                tileHeight = ProductCatalogThumbnail.COL_HEIGHT_3;
-            }
-			else if (filterCount <= 9)
-			{
-                numCols = 2;
-                tileWidth = ProductCatalogThumbnail.COL_WIDTH_2;
-                tileHeight = ProductCatalogThumbnail.COL_HEIGHT_2;
-            }
-			else
-			{
-            }
-            
-            var row:int = 0;
-            var col:int = -1;
-
-			var move:Move = null;
-
-            var n:int = catalog.length;
-			for (var i:int = 0 ; i < n ; i++)
-			{
-                var product:Product = catalog.getItemAt(i) as Product;
-                var thumb:ProductCatalogThumbnail = thumbnails[i];
-                if (accepted[product.productId.toString()])
-                {
-                    thumb.currentState = "x" + numCols + "cols";
-                    col++;
-                    if (col > numCols - 1)
-					{
-                        row++;
-                        col = 0;
-                    }
-
-                    var xTo:Number = col * (tileWidth + ProductCatalogThumbnail.HORIZONTAL_GAP);
-                    var yTo:Number = row * (tileHeight + ProductCatalogThumbnail.VERTICAL_GAP);
-
-                    // If the thumbnail is already visible
-					// animate it to its new position.
-                    if (thumb.visible)
-					{
-                        // Animate only if the position is different
-						// from its current position.
-                        if (thumb.x != xTo || thumb.y != yTo)
-						{
-                            move = new Move(thumb);
-                            move.xTo = xTo;
-                            move.yTo = yTo;
-                            move.play();
-                        }
-                    }
-
-                    // If the thumbnail was not previously visible, sets its
-					// x and y coordinates. We'll make it reappear after all
-                    // the visible thumbnails have reached their new position.
-					else
-					{
-                        thumb.x = xTo;
-                        thumb.y = yTo;
-//                        thumb.includeInLayout = true;
-                    }
-                }
-				else
-				{
-                    thumb.visible = false;
-//                    thumb.includeInLayout = false;
-                }
-            }
-
-            if (!move)
-			{
-                // No visible thumbnails were animated to a new position;
-				// fade in newly selected thumbnails right away.
-                fadeInThumbnails();
-            }
-			else
-			{
-			    //since movement is happening get the scrollbar back to the top
-				scv.verticalScrollPosition = 0;
-                // Fade in newly selected thumbnails after the last
-				// visible thumbnail has moved to its new position.
-                move.addEventListener(Effect.EFFECT_END,
-					function(event:org.apache.flex.events.Event):void
-					{
-						fadeInThumbnails();
-					});
-            }
-            thumbContentGroup.dispatchEvent(new org.apache.flex.events.Event("layoutNeeded"));
-            //return the last move to watch
-            return move;
-        }
-        
-        //return the last effect so we could add effectEnd handler if desired
-        private function fadeInThumbnails():void
-		{
-			var n:int = thumbnails.length;
-			var targets:Array = [];
-			for (var i:int = 0; i < n ; i++)
-			{
-			    var thumb:ProductCatalogThumbnail = thumbnails[i];
-			    if (accepted[thumb.product.productId.toString()] && !thumb.visible)
-				{
-                    thumb.alpha = 0;
-                    thumb.visible = true;
-                    targets.push(thumb);
-                }
-            }
-            if (targets.length > 0)
-            {
-                n = targets.length;
-                for (i = 0; i < n; i++)
-                {
-                    var effect:Fade = new Fade(targets[i] as IUIBase);
-                    effect.alphaTo = 1;
-                    effect.play();
-                }
-            }
-        }
-        
-        private function showDetails(product:Product):void
-        {
-            if (currentState == "details")
-			{
-                details.product = product;
-                return;
-            }
-
-            var row:int = -1;
-
-            //should be computed using border metrics instead of hard-coding the 20, but...
-			var xTo:Number = thumbContentGroup.width - ProductCatalogThumbnail.COL_WIDTH_4 - 20;
-            var yTo:Number;
-
-            var move:Move;
-            var first:Boolean = true;
-            var selectedThumb:ProductCatalogThumbnail;
-
-            var n:int = thumbnails.length;
-			for (var i:int = 0; i < n; i++)
-			{
-			    var thumb:ProductCatalogThumbnail = thumbnails[i];
-                if (thumb.visible)
-				{
-                    row++;
-                    yTo = row * (ProductCatalogThumbnail.COL_HEIGHT_4 + ProductCatalogThumbnail.VERTICAL_GAP);
-
-                    thumb.currentState = "x4cols";
-
-                    if (thumb.x != xTo || thumb.y != yTo)
-					{
-                        move = new Move(thumb);
-                        if (first)
-						{
-                            move.addEventListener(Effect.EFFECT_END,
-								function(event:org.apache.flex.events.Event):void
-								{
-									details.product = product;
-                                    currentState = "details";
-								});
-
-                            first = false;
-                        }
-                        move.xTo = xTo;
-                        move.yTo = yTo;
-                        move.play();
-                    }
-                    
-                    if (thumb.product == product)
-                    {
-                        selectedThumb = thumb;
-                    }
-                }
-            }
-            if (selectedThumb != null)
-            {
-                //make sure that the selected thumb is visible in the list on the right
-                move.addEventListener(Effect.EFFECT_END,
-					function(e:org.apache.flex.events.Event):void
-					{
-					    var curpos:int = scv.verticalScrollPosition;
-					    if (selectedThumb.y < curpos)
-					    {
-					        scv.verticalScrollPosition = y;
-					    }
-					    else if (selectedThumb.y + ProductCatalogThumbnail.COL_HEIGHT_4 > curpos + thumbContentGroup.height)
-					    {
-					        //this logic doesn't seem to be perfect but it will do
-					        var diff:int = selectedThumb.y - (curpos + thumbContentGroup.height)
-					        scv.verticalScrollPosition += diff + ProductCatalogThumbnail.COL_HEIGHT_4 + ProductCatalogThumbnail.VERTICAL_GAP;
-					    }
-					});
-            }
-            
-        }
-        
-        private function productThumbEventHandler(event:ProductThumbEvent):void
-        {
-            if (event.type == ProductThumbEvent.DETAILS)
-            {
-                showDetails(event.product);
-            }
-            else if (event.type == ProductThumbEvent.BROWSE)
-            {
-                if (thumbnailState == "browse")
-                {                
-                    currentState = "browse";
-                    layoutCatalog();
-                }
-                else
-                {
-                    compare();
-                }
-            }
-            else
-            {
-                dispatchEvent(event);
-            }
-        }
-        
-        public function compare(toCompare:Array=null):void
-        {
-            currentState = "compare";
-            thumbnailState = "compare";
-            if (toCompare != null)
-            {
-                var n:int = thumbnails.length;
-                for (var i:int = 0; i < n; i++)
-                {
-                    accepted[thumbnails[i].product.productId.toString()] = false;
-                }
-                for (i=0; i < toCompare.length; i++)
-                {
-                    accepted[toCompare[i].productId.toString()] = true;
-                }
-            }
-            var lastEffect:Effect = layoutCatalog();
-            if (lastEffect != null)
-            {
-                lastEffect.addEventListener(Effect.EFFECT_END,
-                    function (event:org.apache.flex.events.Event):void
-                    {
-                        setCompareState();
-                    });
-            }
-            else
-            {
-                setCompareState();
-            }
-        }
-        
-        private function setCompareState():void
-        {
-            //avoid an issue if the user clicks quickly where we move into
-            //compare state even though we're no longer in compare
-            if (currentState == "compare") 
-            {
-                var n:int = thumbnails.length;
-                for (var i:int = 0; i < n; i++)
-                {
-                    var thumb:ProductCatalogThumbnail = thumbnails[i];
-                    if (accepted[thumb.product.productId.toString()])
-                    {
-                        thumb.currentState = "compare";
-                    }
-                }
-                
-            }
-        }
-        
-        public function acceptingDrop(dropTarget:Object, type:String):void
-        {
-            
-        }
-            
-        public function acceptedDrop(dropTarget:Object, type:String):void
-        {
-            
-        }
-
-        ]]>
-    </fx:Script>
-    
-    <js:beads>
-        <js:ContainerDataBinding />
-        <js:VerticalLayout />
-        <js:DragMouseController id="dragger" />
-        <js:ParentDocumentBead id="pdb" />
-        <js:PanelView>
-            <js:titleBar>
-                <js:TitleBar height="20" >
-                    <js:style>
-                        <js:SimpleCSSStyles backgroundColor="0xA65904" />
-                    </js:style>
-                    <js:beads>
-                        <productsView:ProductCatalogPanelTitleBarView />
-                    </js:beads>
-                </js:TitleBar>
-            </js:titleBar>
-        </js:PanelView>
-    </js:beads>
-    <js:Container width="100%" height="100%">
-        <js:Container id="thumbContentGroup" width="100%" height="100%">
-            <js:beads>
-				<js:ScrollingViewport id="scv" />
-            </js:beads>
-        </js:Container>
-        <productsView:ProductDetails id="details" y="0"
-            width="{ProductCatalogThumbnail.COL_WIDTH_4 * 3}"
-            height="100%"
-            visible="false"
-            visible.details="true"
-            compare="productThumbEventHandler(event)"
-            purchase="productThumbEventHandler(event)"
-            browse="productThumbEventHandler(event)" />
-    </js:Container>
-    
-    <js:states>
-        <js:State name="browse" />
-        <js:State name="compare" />
-        <js:State name="details" />
-    </js:states>
-    
-</js:Panel>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogPanelTitleBarView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogPanelTitleBarView.mxml b/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogPanelTitleBarView.mxml
deleted file mode 100755
index f2cb397..0000000
--- a/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogPanelTitleBarView.mxml
+++ /dev/null
@@ -1,49 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:MXMLBeadView xmlns:fx="http://ns.adobe.com/mxml/2009"
-                        xmlns:js="library://ns.apache.org/flexjs/basic" 
-                        xmlns:productsView="productsView.*"
-                        >
-    <fx:Script>
-        <![CDATA[
-            import org.apache.flex.html.TitleBar;
-            import org.apache.flex.core.ITitleBarModel;
-            import org.apache.flex.core.UIBase;
-            import org.apache.flex.events.Event;
-            
-            private function clickHandler():void
-            {
-                var newEvent:org.apache.flex.events.Event = new org.apache.flex.events.Event('close',true);
-                UIBase(_strand).dispatchEvent(newEvent)   
-            }
-        ]]>
-    </fx:Script>
-    <js:beads>
-        <js:MXMLBeadViewDataBinding />
-        <js:ParentDocumentBead id="pdb" />
-        <js:LayoutChangeNotifier watchedProperty="{buttons.width}" />
-    </js:beads>
-    <js:Label id="titleLabel" text="{ITitleBarModel(model).title}" 
-                 />
-    <js:CloseButton id="closeButton" click="clickHandler()"
-                       visible="{ITitleBarModel(model).showCloseButton}";
-                       />
-    <productsView:CatalogTitleButtons id="buttons" />
-</js:MXMLBeadView>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogThumbnail.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogThumbnail.mxml b/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogThumbnail.mxml
deleted file mode 100755
index 7b415da..0000000
--- a/examples/flexjs/FlexJSStore/src/productsView/ProductCatalogThumbnail.mxml
+++ /dev/null
@@ -1,220 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-                   xmlns:js="library://ns.apache.org/flexjs/basic" 
-    width="{COL_WIDTH_4}" height="{COL_HEIGHT_4}" height.compare="502"
-    width.x4cols="{COL_WIDTH_4}" height.x4cols="{COL_HEIGHT_4}"
-    width.x3cols="{COL_WIDTH_3}" height.x3cols="{COL_HEIGHT_3}"
-    width.x2cols="{COL_WIDTH_2}" height.x2cols="{COL_HEIGHT_2}"
-    rollOver="rollOverHandler(event)"
-    rollOut="rollOutHandler(event)"
-    mouseDown="mouseDownHandler(event)"
-    mouseMove="mouseMoveHandler(event)"
-    mouseUp="mouseUpHandler(event)"
-    click="clickHandler(event)"
-    currentState="x4cols"
-    >
-    <!-- automationName="{product.name}" -->
-    <js:beads>
-        <js:ContainerDataBinding />
-        <js:LayoutChangeNotifier watchedProperty="{borderStyles.borderColor}" initialValue="#FFFFFF" />
-    </js:beads>
-    <js:style>
-        <js:BindableCSSStyles id="borderStyles" borderStyle="solid" borderWidth="1"
-                               borderColor="#FFFFFF" backgroundColor="#FFFFFF"/>
-    </js:style>
-    <fx:Metadata>
-        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="details", type="samples.flexstore.ProductThumbEvent")]
-    </fx:Metadata>
-
-    <fx:Script>
-        <![CDATA[
-
-		import org.apache.flex.events.*;
-        import org.apache.flex.utils.PointUtils;
-            
-        import samples.flexstore.Product;
-        import samples.flexstore.ProductThumbEvent;
-        
-        public static const COL_WIDTH_4:int = 162;
-        public static const COL_HEIGHT_4:int = 122;
-        public static const COL_WIDTH_3:int = 217;
-        public static const COL_HEIGHT_3:int = 165;
-        public static const COL_WIDTH_2:int = 327;
-        public static const COL_HEIGHT_2:int = 250;
-        public static const COMPARE_WIDTH:int = 162;
-        public static const HORIZONTAL_GAP:int = 2;
-        public static const VERTICAL_GAP:int = 3;
-
-        [Bindable]
-        public var product:Product;
-
-        private function rollOverHandler(event:MouseEvent):void
-		{
-            borderStyles.borderColor = "#CCCCCC";
-            //style["dropShadowEnabled"] = true;
-            buttons.visible = true;
-        }
-
-        private function rollOutHandler(event:MouseEvent):void
-		{
-            borderStyles.borderColor = "#FFFFFF";
-            //style["dropShadowEnabled"] = false;
-			buttons.visible = false;
-        }
-
-        private var dragStartPoint:Point;
-
-        public function mouseDownHandler(event:MouseEvent):void
-        {
-            if (event.target != purchase &&
-                event.target != compare &&
-                event.target != details)
-            {
-                dragStartPoint = new Point(event.clientX, event.clientY);
-            }
-        }
-
-        public function mouseMoveHandler(event:MouseEvent):void
-        {
-            if (dragStartPoint != null)
-            {
-                var dragEvent:DragEvent = new DragEvent(DragEvent.DRAG_START, true);
-                dragEvent.clientX = dragStartPoint.x;
-                dragEvent.clientY = dragStartPoint.y;
-                dragEvent.buttonDown = true;
-                dispatchEvent(dragEvent);
-
-                rollOutHandler(event);
-
-                dragStartPoint = null;
-            }
-        }
-
-        public function mouseUpHandler(event:MouseEvent):void
-        {
-            if (dragStartPoint != null)
-            {
-                dragStartPoint = null;
-            }
-        }
-
-        public function clickHandler(event:org.apache.flex.events.MouseEvent):void
-        {
-            if (event.target != purchase &&
-                event.target != compare &&
-                event.target != details)
-            {
-                dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product));
-            }
-        }
-
-	]]>
-    </fx:Script>
-    <fx:Declarations>
-        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
-    </fx:Declarations>
-
-    <js:VContainer id="vb" width="100%" height="100%">
-        <js:style>
-            <js:SimpleCSSStyles paddingLeft="6" paddingTop="4" paddingRight="8" paddingBottom="4" />
-                                 <!--  gap="0">  -->
-        </js:style>
-        
-
-        <js:Label text="{product.name}" style="fontWeight:bold"/>
-
-        <js:HContainer width="100%" >
-            <js:style>
-                <js:SimpleCSSStyles paddingTop="0" /> <!-- gap="4 -->"
-            </js:style>
-
-            <js:Image id="img" height="45" width="45" 
-                     width.x3cols="60" height.x3cols="60"
-                     width.x2cols="60" height.x2cols="60"
-                     source="{product.image}" />
-
-            <js:VContainer id="descr" height="100%" >
-                <js:style>
-                    <js:SimpleCSSStyles paddingTop="0" right="0" /> <!--  gap="0"  -->
-                </js:style>
-                <js:Label text="{product.featureString}" width="60" height="48" />
-                <js:Label text="{cf.format(product.price)}" style="fontWeight:bold"/>
-				<js:Spacer height="4"/>
-                <js:Label text="{product.highlight1}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
-                <js:Label text="{product.highlight2}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
-            </js:VContainer>
-
-        </js:HContainer>
-
-        <js:Spacer height="8"/>
-
-        <js:Label id="compYears" text="Years: {product.experience}" includeIn="compare"/>
-        <js:Label id="compBlaze" text="BlazeDS: {product.blazeds}" includeIn="compare"/>
-        <js:Label id="compMobile" text="Mobile: {product.mobile}" includeIn="compare"/>
-        <js:Label id="compVideo" text="Video: {product.video}" includeIn="compare"/>
-        <js:Label id="compHigh1" text="Highlight: {product.highlight1}" includeIn="compare"/>
-        <js:Label id="compHigh2" text="Highlight: {product.highlight2}" includeIn="compare"/>
-        <js:Label text="Description:" includeIn="compare"/>
-        <js:MultilineLabel id="compDesc" text="{product.description}" width="100%" includeIn="compare"/>
-    </js:VContainer>
-
-
-    <js:VContainer id="buttons" visible="false" width="30">
-        <js:style>
-            <js:SimpleCSSStyles paddingRight="8" right="8" top="12" /> <!-- gap="4" -->
-        </js:style>
-        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" className="hoverButton"
-            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" 
-            width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Add to cart"/>
-            </js:beads>
-        </js:ImageButton>
-        <js:ImageButton id="compare" source="assets/button_compare.png" className="hoverButton"
-            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" 
-            width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Add to compare list"/>
-            </js:beads>
-        </js:ImageButton>
-        <js:ImageButton id="details" source="assets/button_details.png" className="hoverButton"
-            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product))" 
-            width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Show details"/>
-            </js:beads>
-        </js:ImageButton>
-    </js:VContainer>
-
-    <js:states>
-
-        <js:State name="compare" />
-
-        <js:State name="x4cols" />
-
-        <js:State name="x3cols" />
-
-        <js:State name="x2cols"/>
-    </js:states>
-
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/productsView/ProductDetails.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/productsView/ProductDetails.mxml b/examples/flexjs/FlexJSStore/src/productsView/ProductDetails.mxml
deleted file mode 100755
index fa32497..0000000
--- a/examples/flexjs/FlexJSStore/src/productsView/ProductDetails.mxml
+++ /dev/null
@@ -1,145 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
-                 xmlns:js="library://ns.apache.org/flexjs/basic" 
-    xmlns:productsView="productsView.*"
-    >
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-
-    <fx:Metadata>
-        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="browse", type="samples.flexstore.ProductThumbEvent")]
-    </fx:Metadata>
-
-    <fx:Script>
-        <![CDATA[
-
-		import samples.flexstore.Product;
-		import samples.flexstore.ProductThumbEvent;
-
-        private var _product:Product;
-        
-        [Bindable]
-        public function get product():Product
-        {
-            return _product;
-        }
-        
-        public function set product(p:Product):void
-        {
-            _product = p;
-            tn.selectedIndex = 0;
-        }
-        
-	]]>
-    </fx:Script>
-
-    <fx:Declarations>
-        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
-    </fx:Declarations>
-
-    <js:states>
-        <js:State name="Features" />
-        <js:State name="Support" />
-    </js:states>
-    
-    <js:transitions>
-        <js:Transition>
-            <js:Fade />
-        </js:Transition>
-    </js:transitions>
-    
-    <js:ButtonBar id="tn" width="100%" change="currentState = tn.selectedItem as String">
-        <js:dataProvider>
-            <fx:Array>
-                <fx:String>Features</fx:String>
-                <fx:String>Support</fx:String>
-            </fx:Array>
-        </js:dataProvider>
-    </js:ButtonBar>
-    <js:Container >
-        <js:style>
-            <js:SimpleCSSStyles left="4" right="8" top="34" bottom="4" />
-        </js:style>
-                    
-
-        <js:VContainer includeIn="Features" >
-            <js:style>
-                <!--<js:SimpleCSSStyles gap="8"-->
-                <js:SimpleCSSStyles
-                    left="8" top="8" right="8" bottom="8"/>
-            </js:style>
-            <js:Container style="left:0px;right:0px">
-
-                <js:Image id="img" width="101" height="101" source="{product.image}"/>
-
-                <js:VContainer id="descr" >
-                    <js:style>
-                        <js:SimpleCSSStyles top="0" left="105" right="0" bottom="20" />
-                        <!--<js:SimpleCSSStyles paddingTop="0" gap="4" />-->
-                    </js:style>
-                    
-                    <js:Label text="{product.name}" style="fontSize:11;fontWeight:'bold'"/>
-
-	                <js:Label text="{product.featureString}" width="80" height="48" />
-
-                    <js:Label text="{product.highlight1}" style="color:#EE8D0C"/>
-
-                    <js:Label text="{product.highlight2}" style="color:#EE8D0C"/>
-
-                    <js:Label text="{cf.format(product.price)}" style="fontWeight:'bold'"/>
-
-                </js:VContainer>
-            </js:Container>
-
-            <js:Label id="descriptionText" style="left:0px;right:0px;bottom:0px" text="{product.description}"/>
-
-        </js:VContainer>
-
-        <productsView:ProductSupport width="100%" height="100%" includeIn="Support" />
-
-    </js:Container>
-
-    <js:VContainer>
-        <js:style>
-            <js:SimpleCSSStyles marginTop="4" right="16" top="36" />
-        </js:style>
-        <js:Spacer width="100%"/>
-        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Add to cart"/>
-            </js:beads>
-        </js:ImageButton>
-        <js:ImageButton id="compare" source="assets/button_compare.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Add to compare list"/>
-            </js:beads>
-        </js:ImageButton>
-        <js:ImageButton id="tiles" source="assets/button_tiles.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.BROWSE, product));" width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Back to thumbnail view"/>
-            </js:beads>
-        </js:ImageButton>
-    </js:VContainer>
-
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore/src/productsView/ProductFilterPanel.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore/src/productsView/ProductFilterPanel.mxml b/examples/flexjs/FlexJSStore/src/productsView/ProductFilterPanel.mxml
deleted file mode 100755
index 26deaa9..0000000
--- a/examples/flexjs/FlexJSStore/src/productsView/ProductFilterPanel.mxml
+++ /dev/null
@@ -1,215 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:VContainer xmlns:fx="http://ns.adobe.com/mxml/2009" 
-                  xmlns:js="library://ns.apache.org/flexjs/basic" 
-    xmlns:productsView="productsView.*"
-    xmlns:flexstore="samples.flexstore.*"
-    height="100%" 
-    currentState="showingThumbnails"
-    initComplete="series.selectedIndex = 0">
-    <js:style>
-        <js:SimpleCSSStyles paddingLeft="4" 
-                               paddingRight="12" 
-                               paddingTop="12" 
-                               paddingBottom="8" 
-                               />
-
-    </js:style>
-    
-    <fx:Metadata>
-       [Event(name="filter", type="samples.flexstore.ProductFilterEvent")] 
-       [Event("compare")]
-    </fx:Metadata>
-    
-    <fx:Script>
-        <![CDATA[
-        import org.apache.flex.html.Slider;
-        import org.apache.flex.html.SimpleAlert; 
-        import samples.flexstore.ProductFilterEvent;
-           
-        private var thumbBeingPressed:Boolean;
-           
-        private function dispatchFilter():void
-        {
-            var event:ProductFilterEvent = 
-                new ProductFilterEvent(filter, thumbBeingPressed);
-            dispatchEvent(event);
-            currentState = "showingThumbnails";
-        }
-        
-        private function sliderValue(values:Array, index:int):Number
-        {
-            return values[index];
-        }
-        
-        private function productRemoved():void
-        {
-            if (currentState == "showingComparison")
-            {
-                if (productList.items.length == 0)
-                {
-                    dispatchFilter();
-                }
-                else
-                {
-                    attemptCompare();
-                }
-            }
-        }
-        
-        private function attemptCompare():void
-        {
-            if (productList.items.length > 0)
-            {
-                dispatchEvent(new Event("compare"));
-                currentState = "showingComparison";
-            }
-            else
-            {
-                SimpleAlert.show("There are no items to compare.", "Compare");
-            }
-        }
-        
-        ]]>
-    </fx:Script>
-    <fx:Declarations>
-        <flexstore:ProductFilter id="filter">
-            <flexstore:experience>{series.selectedItem}</flexstore:experience>
-            <flexstore:minPrice>{loPrice.value}</flexstore:minPrice>
-            <flexstore:maxPrice>{hiPrice.value}</flexstore:maxPrice>
-            <flexstore:blazeds>{cbBlazeDS.selected}</flexstore:blazeds>
-            <flexstore:mobile>{cbMobile.selected}</flexstore:mobile>
-            <flexstore:video>{cbVideo.selected}</flexstore:video>
-        </flexstore:ProductFilter>
-        
-        <js:CurrencyFormatter currencySymbol="$" id="cf"/>    
-        
-    </fx:Declarations>
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-    
-    <js:Label text="Find" className="sectionHeader"/>
-    
-    <js:Container width="100%">
-        <js:beads>
-            <js:FlexibleFirstChildHorizontalLayout />
-        </js:beads>
-        <js:TextInput className="glass" width="100%"/>
-        <js:TextButton className="glass" text="Go" click="SimpleAlert.show('This feature is not implemented in this sample', 'Find')"/>
-    </js:Container>
-
-    <js:Spacer height="18"/>
-
-    <js:HRule width="100%"/>
-
-    <js:Spacer height="8"/>
-
-    <js:HContainer>
-        <js:style>
-            <js:SimpleCSSStyles paddingTop="0" paddingLeft="0" verticalAlign="bottom" />
-        </js:style>
-        <js:Label text="Filter" className="sectionHeader"/>
-        <js:Label text="({filter.count} items selected)" >
-            <js:style>
-                <js:SimpleCSSStyles fontWeight="bold" />
-                <!--<js:SimpleCSSStyles color="{getStyle('themeColor')}" fontWeight="bold" />-->
-            </js:style>
-        </js:Label>
-    </js:HContainer>
-
-    <js:Spacer height="8"/>
-
-    <js:Label text="Years of Experience"/>
-
-    <js:DropDownList id="series" className="glass" width="140" change="dispatchFilter();">
-        <js:dataProvider>
-            <fx:Array>
-                <fx:String>All</fx:String>
-                <fx:String>3</fx:String>
-                <fx:String>5</fx:String>
-                <fx:String>7</fx:String>
-                <fx:String>9</fx:String>
-            </fx:Array>                
-        </js:dataProvider>
-    </js:DropDownList>
-
-    <js:Spacer height="18"/>
-
-    <js:Label text="Price"/>
-
-    <!--<s:HSlider id="priceSlider" className="glassSlider" minimum="0" maximum="200" tickInterval="10" snapInterval="10"
-        width="100%" thumbCount="2" values="[0,200]" labels="[$0,$200]" liveDragging="true" dataTipFormatFunction="{cf.format}"
-        change="dispatchFilter()"
-        thumbPress="thumbBeingPressed=true"
-        thumbRelease="thumbBeingPressed=false;dispatchFilter()"
-        />-->
-    <js:HContainer id="nsholder" width="100%">
-        <js:NumericStepper width="48%" id="loPrice" minimum="0" maximum="{hiPrice.value}" value="0" valueChange="dispatchFilter()" />
-        <js:NumericStepper width="48%" id="hiPrice" minimum="{loPrice.value}" maximum="200" value="200" valueChange="dispatchFilter()" />
-    </js:HContainer>
-
-    <js:Spacer height="18"/>
-
-    <js:Label text="Required Features"/>
-
-    <js:Spacer height="4"/>
-
-    <js:CheckBox id="cbBlazeDS" className="glass" text="BlazeDS" click="dispatchFilter();"/>
-    <js:Spacer height="4"/>
-    <js:CheckBox id="cbMobile" className="glass" text="Mobile" click="dispatchFilter()"/>
-    <js:Spacer height="4"/>
-    <js:CheckBox id="cbVideo" className="glass" text="Video" click="dispatchFilter();"/>
-
-    <js:Spacer height="18"/>
-
-    <js:HRule width="100%"/>
-
-    <js:Spacer height="8"/>
-
-        <js:HContainer>
-            <js:Label text="Compare" className="sectionHeader"/>
-            <js:Label text="(Drag items here to compare)" className="instructions"/>
-        </js:HContainer>
-
-
-    <js:Spacer height="4"/>
-
-    <!-- height is maxItems * ProductListItem.HEIGHT + 2px border -->
-    <productsView:ProductList id="productList" height="{productList.maxItems * ProductListItem.HEIGHT + 2}" width="100%"
-        newItemStartX="300" newItemStartY="-100" maxItems="4" 
-        removeProduct="productRemoved()"/>
-
-    <js:Spacer height="8"/>
-    
-    <js:ImageAndTextButton id="compareButton" className="glass" 
-                  click.showingThumbnails="attemptCompare()"
-                  click.showingComparison="dispatchFilter()"            
-                  text.showingComparison="Back to thumbnail view"
-                  text.showingThumbnails="Compare Items"
-                  image.showingThumbnails="assets/icon_compare.png"
-                  image.showingComparison="assets/icon_tiles.png" />
-    
-    <js:states>
-       <js:State name="showingThumbnails" />
-       <js:State name="showingComparison" />
-    </js:states>
-
-</js:VContainer>


[52/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - FLEX-35144 fix panel. Also requires flex-falcon d889f1182104be4f69b3564c6feeb4ffacf5e213

Posted by ca...@apache.org.
FLEX-35144 fix panel.  Also requires flex-falcon d889f1182104be4f69b3564c6feeb4ffacf5e213


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/a7d484d3
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/a7d484d3
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/a7d484d3

Branch: refs/heads/feature/mdl
Commit: a7d484d373620fcb3fcdc88aa833bf2329dd37c5
Parents: 8af90ac
Author: Alex Harui <ah...@apache.org>
Authored: Wed Nov 9 21:52:21 2016 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Wed Nov 9 21:52:32 2016 -0800

----------------------------------------------------------------------
 .../projects/HTML/src/main/flex/org/apache/flex/core/UIBase.as    | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a7d484d3/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/UIBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/UIBase.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/UIBase.as
index 5dbea38..0b0dbb5 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/UIBase.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/core/UIBase.as
@@ -981,9 +981,10 @@ package org.apache.flex.core
          */        
 		override public function addBead(bead:IBead):void
 		{
-            super.addBead(bead);
             if (bead is IBeadView)
                 _view = bead as IBeadView;
+            
+            super.addBead(bead);
 			
 			if (bead is IBeadView) {
 				IEventDispatcher(this).dispatchEvent(new Event("viewChanged"));


[32/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - fix pom for MobileMap

Posted by ca...@apache.org.
fix pom for MobileMap


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/f4caf2c4
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/f4caf2c4
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/f4caf2c4

Branch: refs/heads/feature/mdl
Commit: f4caf2c4931cbcaa0746d0bdbb231c516e15dbe2
Parents: fa4df42
Author: Alex Harui <ah...@apache.org>
Authored: Mon Nov 7 15:21:19 2016 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Nov 7 15:21:19 2016 -0800

----------------------------------------------------------------------
 examples/flexjs/MobileMap/pom.xml | 9 +++++++++
 1 file changed, 9 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f4caf2c4/examples/flexjs/MobileMap/pom.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileMap/pom.xml b/examples/flexjs/MobileMap/pom.xml
index e5570c6..a58585c 100644
--- a/examples/flexjs/MobileMap/pom.xml
+++ b/examples/flexjs/MobileMap/pom.xml
@@ -85,6 +85,15 @@
       <version>0.8.0-SNAPSHOT</version>
       <type>swc</type>
     </dependency>
+    <dependency>
+        <groupId>org.apache.flex.flexjs.typedefs</groupId>
+        <artifactId>flexjs-typedefs-googlemaps</artifactId>
+        <version>${flexjs.typedefs.version}</version>
+        <type>swc</type>
+        <classifier>typedefs</classifier>
+        <scope>runtime</scope>
+    </dependency>
+
   </dependencies>
 
 </project>


[27/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Had to remove IUIBase interface because of get parent() inconsistencies.

Posted by ca...@apache.org.
Had to remove IUIBase interface because of get parent() inconsistencies.


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/ec60f6a3
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/ec60f6a3
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/ec60f6a3

Branch: refs/heads/feature/mdl
Commit: ec60f6a3cb281c53d0b1450989e8a8ac9914a99f
Parents: 3c703fe
Author: yishayw <yi...@hotmail.com>
Authored: Mon Nov 7 10:41:50 2016 +0200
Committer: yishayw <yi...@hotmail.com>
Committed: Mon Nov 7 10:41:50 2016 +0200

----------------------------------------------------------------------
 .../html/supportClasses/TextFieldItemRenderer.as  | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ec60f6a3/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextFieldItemRenderer.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextFieldItemRenderer.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextFieldItemRenderer.as
index 05f93cb..1b2bb6f 100644
--- a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextFieldItemRenderer.as
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/TextFieldItemRenderer.as
@@ -18,23 +18,24 @@
 ////////////////////////////////////////////////////////////////////////////////
 package org.apache.flex.html.supportClasses
 {
-    import flash.text.TextFieldType;
+	COMPILE::SWF
+	{
+		import flash.display.DisplayObject;
+	    import flash.text.TextFieldType;
+	}
     
     import org.apache.flex.core.CSSTextField;
     import org.apache.flex.core.IBead;
     import org.apache.flex.core.IBeadController;
-    import org.apache.flex.core.IFlexJSElement;
     import org.apache.flex.core.IStrand;
     import org.apache.flex.core.IUIBase;
-    import org.apache.flex.core.UIBase;
     import org.apache.flex.core.ValuesManager;
     import org.apache.flex.events.Event;
     import org.apache.flex.events.IEventDispatcher;
-    import org.apache.flex.events.MouseEvent;
     import org.apache.flex.events.utils.MouseEventConverter;
     import org.apache.flex.geom.Rectangle;
     import org.apache.flex.html.beads.ITextItemRenderer;
-	import org.apache.flex.utils.CSSContainerUtils;
+    import org.apache.flex.utils.CSSContainerUtils;
 	
 	/**
 	 *  The TextFieldItemRenderer class provides a org.apache.flex.html.TextField as an itemRenderer.
@@ -44,7 +45,7 @@ package org.apache.flex.html.supportClasses
 	 *  @playerversion AIR 2.6
 	 *  @productversion FlexJS 0.0
 	 */
-	public class TextFieldItemRenderer extends CSSTextField implements ITextItemRenderer, IStrand, IUIBase
+	public class TextFieldItemRenderer extends CSSTextField implements /*ITextItemRenderer, */IStrand/*, IUIBase*/
 	{
 		/**
 		 *  constructor.
@@ -57,7 +58,9 @@ package org.apache.flex.html.supportClasses
 		public function TextFieldItemRenderer()
 		{
 			super();
-            type = TextFieldType.DYNAMIC;
+			COMPILE::SWF {
+            	type = TextFieldType.DYNAMIC;
+			}
             selectable = false;
             
             MouseEventConverter.setupInstanceConverters(this);
@@ -548,6 +551,7 @@ package org.apache.flex.html.supportClasses
             return IUIBase(parent).topMostEventDispatcher;
         }
 
+		COMPILE::SWF
         public function get $displayObject():DisplayObject
         {
             return this;


[49/53] flex-asjs git commit: Fix SimpleCSSValuesImpl to support values. Problem was spaces in property ‘background’ , so we need to trim it

Posted by ca...@apache.org.
Fix SimpleCSSValuesImpl to support values. Problem was spaces in property \u2018background\u2019 , so we need to trim it


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/ef3aaaec
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/ef3aaaec
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/ef3aaaec

Branch: refs/heads/feature/mdl
Commit: ef3aaaec82ea6a39dceeccee6f5d0c181883d04d
Parents: 9633ef5
Author: Carlos Rovira <ca...@apache.org>
Authored: Thu Nov 10 00:31:33 2016 +0100
Committer: Carlos Rovira <ca...@apache.org>
Committed: Thu Nov 10 00:31:33 2016 +0100

----------------------------------------------------------------------
 .../src/main/flex/org/apache/flex/core/SimpleCSSValuesImpl.as     | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ef3aaaec/frameworks/projects/Core/src/main/flex/org/apache/flex/core/SimpleCSSValuesImpl.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/SimpleCSSValuesImpl.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/SimpleCSSValuesImpl.as
index 7957070..1aa6661 100644
--- a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/SimpleCSSValuesImpl.as
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/SimpleCSSValuesImpl.as
@@ -30,6 +30,7 @@ package org.apache.flex.core
 	import org.apache.flex.events.ValueChangeEvent;
 	import org.apache.flex.events.ValueEvent;
 	import org.apache.flex.utils.CSSUtils;
+    import org.apache.flex.utils.StringUtil;
     
     /**
      *  The SimpleCSSValuesImpl class implements a minimal set of
@@ -590,7 +591,7 @@ package org.apache.flex.core
             var parts:Array = styles.split(";");
             for each (var part:String in parts)
             {
-                var pieces:Array = part.split(":");
+                var pieces:Array = StringUtil.splitAndTrim(part, ":");
                 var value:String = pieces[1];
                 if (value == "null")
                     obj[pieces[0]] = null;


[36/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Adjusted the configuration of the MDLExample to build correctly with maven.

Posted by ca...@apache.org.
- Adjusted the configuration of the MDLExample to build correctly with maven.


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/9321215b
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/9321215b
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/9321215b

Branch: refs/heads/feature/mdl
Commit: 9321215b9c2cdff1f114b28115f365d51774c669
Parents: a54a76e
Author: Christofer Dutz <ch...@codecentric.de>
Authored: Tue Nov 8 16:25:06 2016 +0100
Committer: Christofer Dutz <ch...@codecentric.de>
Committed: Tue Nov 8 16:25:06 2016 +0100

----------------------------------------------------------------------
 examples/flexjs/MDLExample/pom.xml | 52 +++++----------------------------
 1 file changed, 8 insertions(+), 44 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9321215b/examples/flexjs/MDLExample/pom.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MDLExample/pom.xml b/examples/flexjs/MDLExample/pom.xml
index 464adca..2dd229e 100644
--- a/examples/flexjs/MDLExample/pom.xml
+++ b/examples/flexjs/MDLExample/pom.xml
@@ -47,43 +47,21 @@
         <artifactId>flexjs-maven-plugin</artifactId>
         <extensions>true</extensions>
         <configuration>
-          <!--flashVersion>20.0</flashVersion-->
           <mainClass>App.mxml</mainClass>
         </configuration>
-        <executions>
-          <!-- Add a second execution with output set to JavaScript (Flash is the default) -->
-          <execution>
-            <id>compile-javascript</id>
-            <phase>compile</phase>
-            <goals>
-              <goal>compile-app</goal>
-            </goals>
-            <configuration>
-              <outputJavaScript>true</outputJavaScript>
-              <htmlTemplate>${basedir}/src/main/resources/mdl-js-index-template.html</htmlTemplate>
-              <additionalCompilerOptions>-compiler.exclude-defaults-css-files=HTML-0.8.0-SNAPSHOT.swc:defaults.css</additionalCompilerOptions>
-            </configuration>
-          </execution>
-        </executions>
-        <dependencies>
-          <dependency>
-            <groupId>org.apache.flex.flexjs.compiler</groupId>
-            <artifactId>compiler-jx</artifactId>
-            <version>0.8.0-SNAPSHOT</version>
-          </dependency>
-        </dependencies>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-war-plugin</artifactId>
+      </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>build-helper-maven-plugin</artifactId>
       </plugin>
     </plugins>
   </build>
 
   <dependencies>
-    <!--dependency>
-      <groupId>org.apache.flex.flexjs.framework</groupId>
-      <artifactId>Core</artifactId>
-      <version>0.8.0-SNAPSHOT</version>
-      <type>swc</type>
-    </dependency-->
-    
     <dependency>
       <groupId>org.apache.flex.flexjs.framework</groupId>
       <artifactId>MaterialDesignLite</artifactId>
@@ -99,20 +77,6 @@
       <type>swc</type>
       <scope>provided</scope>
     </dependency>
-
-    <!-- Needed for JavaScript compilation -->
-    <!--dependency>
-      <groupId>org.apache.flex.flexjs.framework</groupId>
-      <artifactId>HTML</artifactId>
-      <version>0.8.0-SNAPSHOT</version>
-      <type>swc</type>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.flex.flexjs.framework</groupId>
-      <artifactId>Language</artifactId>
-      <version>0.8.0-SNAPSHOT</version>
-      <type>swc</type>
-    </dependency-->
   </dependencies>
 
 </project>
\ No newline at end of file


[21/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Adjusted the directory structure of the TeamPage example

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/8d495540/examples/flexjs/TeamPage/src/team.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/TeamPage/src/team.json b/examples/flexjs/TeamPage/src/team.json
deleted file mode 100644
index b082f40..0000000
--- a/examples/flexjs/TeamPage/src/team.json
+++ /dev/null
@@ -1,504 +0,0 @@
-/*
- *
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You 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.
- *
- */
- 
- { "template": {
-	"name": "put here name here",
-	"title": "put your apache.org title here or leave blank",
-	"photoURL": "put the url to your uploaded photo here",
-	"url": "not used at the moment but should point to a personal site",
-	"bio": "put your official Apache Flex bio here. If you use HTML, be sure to use single quote (apostrophes)",
-	"twitter": "put your URL here or leave blank",
-	"facebook": "put your URL here or leave blank",
-	"github": "put your URL here or leave blank",
-	"googleplus": "put your URL here or leave blank",
-	"rss": "put your URL here or leave blank",
-	"wordpress": "put your URL here or leave blank"
-  },
-
-  "members": [
-	{"name": "Alex Harui",
-     "title": "PMC Chair of Apache Flex",
-     "apacheID": "aharui (C+P)",
-	 "photoURL": "images/headshots/aharui.jpg",
-     "url": "http://www.apache.org/alex",
-     "bio": "Alex Harui has been working on the Flex SDK since he joined Macromedia in 2002. He is now spending most of his time on a next-generation of Flex called FlexJS that cross-compiles MXML and ActionScript into JavaScript so your Flex apps can run without Flash and AIR",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-	{"name": "Carlos Rovira",
-     "title": "",
-     "apacheID": "carlosrovira",
-	 "photoURL": "images/headshots/carlosrovira.jpg",
-     "url": "http://www.apache.org/carlos",
-     "bio": "Carlos Rovira is a technologist, entrepreneur and businessman. He is passionate about advanced web interfaces and rich multi-device business applications. He is extremely happy when their applications are useful for people, combining functionality and usability. He's founder of various companies including carlosrovira.com in 2007 and Codeoscopic in 2009. He's the technical leader behind the Riality Flex/JEE Platform and other successful insurance software products like Direct Writer and Avant 2",
-     "twitter":"http://www.twitter.com/carlosrovira",
-     "linkedIn":"http://es.linkedin.com/in/carlosrovira/",
-     "facebook":"",
-     "github":"http://www.github.com/carlosrovira",
-     "googleplus":"https://plus.google.com/115670167046758349523",
-     "rss":"http://www.carlosrovira.com/blog/feed/"
-    },
-    
-    {"name": "Carol Frampton",
-     "title": "",
-     "apacheID": "cframpton (C+P)",
-     "photoURL": "images/headshots/cframpton.jpg",
-     "bio": "Carol is a software engineer at Adobe, based outside of Boston.  She worked on Adobe Flex for about five years - FTE and TLF text with Gordon, Spark DataGrid, mirroring and the top bug fixer for the last couple of years - then transitioned with Flex to Apache. Release manager for Apache Flex 4.8.0.  Being a generalist, she's worked on a wide variety of software, including ColdFusion and JRun, kernel-level networking code and distributed networking software. ",
-     "twitter":"",
-     "linkedIn":"http://www.linkedin.com/in/carolframpton",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Chema Balsas",
-     "title": "",
-     "apacheID": "jbalsas (C)",
-     "photoURL": "images/headshots/jbalsas.jpg",
-     "bio": "Web application developer. Focusing on JS right now and trying to help with Falcon and FalconJS as an Apache Flex Commiter.",
-     "twitter":"http://www.twitter.com/jbalsas",
-     "linkedIn":"http://www.linkedin.com/in/jbalsas",
-     "facebook":"",
-     "github":"http://www.github.com/jbalsas",
-     "googleplus":"https://plus.google.com/109872083963647761639",
-     "rss":""
-    },
-    
-    {"name": "Christofer Dutz",
-     "title": "",
-     "apacheID": "cdutz (C+P)",
-     "photoURL": "images/headshots/cdutz.jpg",
-     "bio": "Christofer is a software engineer secialized on Flex, Java, Spring and Maven. He is the lead developer of the <a href='https://flexmojos.atlassian.net/wiki/display/FLEXMOJOS/Home' target='_blank'>Flexmojos</a> project (Maven plugin for building Flex applications) after taking over from Velo in 2012. His main areas of contribution to the Apache Flex project is creating a tool for creating Mavenized versions of Flex SDKs, continuing to advance Flex' Maven support.",
-     "twitter":"http://de.twitter.com/ChristoferDutz",
-     "linkedIn":"http://www.linkedin.com/pub/christofer-dutz/49/9b6/424",
-     "facebook":"",
-     "github":"http://github.com/chrisdutz",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Chris Martin",
-     "title": "",
-     "apacheID": "chrsmrtn (C+P)",
-     "photoURL": "images/headshots/chrsmrtn.jpg",
-     "bio": "Chris has been doing Flex UI development since Flex 2 and is very excited to be apart of the Apache Flex Team. With the Apache Flex Team, he feels that the Flex SDK has a bright future. He looks to help with the flex sdk bug verification and patching.",
-     "twitter":"http://www.twitter.com/chrsmrtn",
-     "linkedIn":"http://es.linkedin.com/in/chrsmrtn/",
-     "facebook":"",
-     "github":"http://www.github.com/chrsmrtn-",
-     "googleplus":"https://plus.google.com/+chrismartinplus",
-     "wordpress":"http://chrsmrtn.azurewebsites.net",
-     "rss":""
-    },
-    
-    {"name": "DarkStone (\u5468\u6208)",
-     "title": "",
-     "apacheID": "darkstone (C)",
-     "photoURL": "images/headshots/darkstone.png",
-     "bio": "DarkStone has been doing Flash since 2002, doing Flex since 2006, doing PHP since 2007, he is both a designer and a developer.<br/><br/>He had several jobs, last job he was a product manager for 3 years, had done several RIA  products. <p>Since 2013 he quit his job and started his own studio, forging his own path.<br/><br/>Now he's goal is to develop mobile and desktop platform apps (using Flex and PHP etc.) and sell them to the AppStore.<br/><br/>Basically, make the money first, and try to change the world later ; )</p><p>He is now living in Wuhan city of China.",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Douglas Arthur",
-     "title": "",
-     "apacheID": "dougarthur (C+P)",
-     "photoURL": "images/headshots/dougarthur.jpg",
-     "bio": "Douglas passed away in May, 2012.  He is deeply missed within our community.",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Erik de Bruin",
-     "title": "",
-     "apacheID": "erikdebruin (C+P)",
-     "photoURL": "images/headshots/erikdebruin.jpg",
-     "bio": "Erik is a software engineer (Flex/Flash, PHP, Delphi, Authorware, to name a few), e-learning consultant and occassional project manager. For the Apache Flex project he is a committer and part of the PMC. He has contributed the SDK Installer Badge, was contributor and co-release manager on the first release of the SDK Installer and is currently busy getting the FalconJx and FlexJS projects off the ground.",
-     "twitter":"",
-     "linkedIn":"http://www.linkedin.com/pub/erik-de-bruin/1/281/176",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Espen Skogen",
-     "title": "",
-     "apacheID": "espenskogen (C+P)",
-     "photoURL": "images/headshots/espenskogen.jpg",
-     "bio": "Espen is a Vice President at JP Morgan, where he is leading the development of client facing trading technology. Espen was one of the initial committers and PMC members of Apache Flex. ",
-     "twitter":"",
-     "linkedIn":"http://uk.linkedin.com/in/espenskogen",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Fr�d�ric Thomas",
-     "title": "",
-     "apacheID": "fthomas (C+P)",
-     "photoURL": "images/headshots/fthomas.jpg",
-     "bio": "Freelancer, software architect, Apache Flex PMC Member, trying to make the Flex world better.<br>(French)",
-     "twitter":"http://www.twitter.com/webdoublefx",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"https://plus.google.com/116545614452242070442/posts",
-     "rss":""
-    },
-    
-    {"name": "Gordon Smith",
-     "title": "",
-     "apacheID": "gordonsmith (C+P)",
-     "photoURL": "images/headshots/gordonsmith.png",
-     "bio": "Gordon is currently working on completing MXML support in the new Falcon compiler. He lives in San Francisco and works for Adobe.</p><p>Gordon was one of the original four engineers on a 2002 Macromedia project that became Flex, and worked on the Flex framework for eight years:<ul><li>Developed components for Flex 1.0.</li><li>Built a customer application with Flex 1.5.</li><li>Led the port to AS3 for Flex 2.</li><li>Designed and implemented the ResourceManager for Flex 3.</li><li>Integrated the FTE and TLF text technologies into Flex 4.</li></ul></p><p>Since 2010 he has been part of the compiler team at Adobe.</p>",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Harbs",
-     "title": "",
-     "apacheID": "harbs (C+P)",
-     "photoURL": "images/headshots/harbs.jpg",
-     "bio": "Harbs comes from a print background and his primary interest is in publishing. He keeps himself busy with his multiple technology businesses: <a href='http://in-tools.com'>In-Tools</a>, <a href='http://printui.com'>PrintUI</a> and <a href='http://unhurdle.com/'>UnHurdle</a>.  All three businesses rely heavily on Flex as one of the active technologies, so Harbs has a strong interest in Flex.<br/><br/>Harbs also spends his time studying Talmud, and with his wife and kids. If there's any time left, he gets a bit of sleep.",
-     "twitter":"http://www.twitter.com/intools",
-     "linkedIn":"http://www.linkedin.com/profile/view?id=46698545",
-     "facebook":"http://www.facebook.com/gharbs",
-     "github":"https://github.com/Harbs",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Jeffry Houser",
-     "title": "",
-     "apacheID": "jhouser (C+P)",
-     "photoURL": "images/headshots/jhouser.jpg",
-     "bio": "<a href='http://www.jeffryhouser.com'>Jeffry Houser</a> is a technical entrepreneur that likes to share cool stuff with other people. Jeffry is the Brains behind <a href='http://www.flextras.com'>Flextras</a>, a library of Open Source Flex Components including a Calendar, AutoComplete, and a Mobile DropDownList.<br/><br/> Jeffry is one of the initial contributors to Apache Flex and his primary interest lies in expanding the component library, especially for use in mobile applications.<br/><br/>In his spare time, Jeffry runs <a href='http://www.dot-com-it.com.'>DotComIt</a>, a consulting firm developing Rich Internet Applications. He has spoken all over the US, is author of three books, over 30 articles, and hundreds of podcasts.",
-     "twitter":"http://www.twitter.com/reboog711",
-     "linkedIn":"http://www.linkedin.com/in/jeffryhouser",
-     "facebook":"http://www.facebook.com/reboog711",
-     "github":"https://github.com/Flextras/FlextrasComponents/",
-     "googleplus":"",
-     "rss":"http://www.jeffryhouser.com/rss.cfm?mode=full",
-     "rss2":"https://www.flextras.com/blog/rss.cfm?mode=full"
-    },
-    
-    {"name": "Jeremy Tellier",
-     "title": "",
-     "apacheID": "jtellier (C+P)",
-     "photoURL": "images/headshots/jtellier.jpg",
-     "bio": "Macromedia/Adobe Technology evangelist, architect, engineer, Jeremy has implemented a slew of Flash, Flex, & AIR based solutions for startups to fortune 100 companies over the past 15 years.<br/><br/>Jeremy works as a consultant at <a href='http://www.actieve.com' target='_blank'>Actieve</a> for Rich Mobile, Desktop & Web Based projects in which Flex is at the top of his preferred technology stack.<br/><br/>On a more personal note.... Jeremy feels awkward writing about himself in the third person.",
-     "twitter":"http://www.twitter.com/jtellier",
-     "linkedIn":"http://www.linkedin.com/in/jeremytellier/",
-     "facebook":"http://www.facebook.com/JeremyTellier",
-     "github":"",
-     "googleplus":"https://plus.google.com/115560858703396246574",
-     "rss":"",
-     "skype":"skype:JeremyTellier?chat"
-    },
-    
-    {"name": "Jose Barragan",
-     "title": "",
-     "apacheID": "josebarragan (C)",
-     "photoURL": "images/headshots/josebarragan.jpg",
-     "bio": "Jose Barragan is a Software Architect, with over 10 years experience in the enterprise sector. Has a big experience in design, development and implementation of high performance software in corporate environments. Has an extensive knowledge of Flex, Java, Spring, Hibernate, Maven, Git, being the technical co-leader behind the <a href='http://www.codeoscopic.com/tecnologia/riality/'>Riality</a> Flex/JEE Platform and other successful insurance software products like <a href='http://www.directwriter.es'>Direct Writer</a> and <a href='http://www.avant2.es'>Avant 2</a>. Restless mind and enthusiast of new technologies. Always learning from everything and everyone.",
-     "twitter":"http://www.twitter.com/morphx",
-     "linkedIn":"http://es.linkedin.com/in/pepebarragan/",
-     "facebook":"",
-     "github":"http://github.com/pepebarragan",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Joseph Labrecque",
-     "title": "",
-     "apacheID": "josephlabrecque (C)",
-     "photoURL": "images/headshots/josephlabrecque.jpg",
-     "bio": "Joseph Labrecque is primarily employed by the University of Denver as a senior interactive software engineer specializing in the creation of expressive desktop, web, and mobile solutions. He is also the proprietor of Fractured Vision Media, LLC. Joseph is an Adobe Education Leader and Adobe Community Professional.",
-     "twitter":"http://twitter.com/josephlabrecque",
-     "linkedIn":"http://www.linkedin.com/in/josephlabrecque",
-     "facebook":"https://www.facebook.com/joseph.labrecque",
-     "github":"https://github.com/josephlabrecque/",
-     "googleplus":"https://google.com/+JosephLabrecque/",
-     "rss":"http://www.lynda.com/JosephLabrecque",
-     "rss2":"http://inflagrantedelicto.memoryspiral.com/feed/",
-     "amazon":"http://www.amazon.com/-/e/B0057R7UO0",
-     "behance":"https://www.behance.net/JosephLabrecque",
-     "youtube":"https://www.youtube.com/channel/UCOznZ0dg3BwfhxwO2p90ejQ"
-    },
-    
-    {"name": "Josh Tynjala",
-     "title": "",
-     "apacheID": "joshtynjala (C+P)",
-     "photoURL": "images/headshots/joshtynjala.jpg",
-     "bio": "Josh Tynjala is the author of the open source <a href='http://feathersui.com/'>Feathers</a> user interface components for Starling Framework. In addition to improving the Apache FlexJS compilers, Josh teaches developers how to transpile ActionScript on his website, <a href='http://nextgenactionscript.com/'>NextGen ActionScript</a>",
-     "twitter":"https://twitter.com/joshtynjala",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"https://github.com/joshtynjala",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Jun Heider",
-     "title": "",
-     "apacheID": "junheider (C+P)",
-     "photoURL": "images/headshots/junheider.jpg",
-     "bio": "Helping Apache Flex grow through mentoring and community awareness. An officer of the Open Spoon Foundation. Cross-platform Flex mobile developer at RealEyes Media with a focus in video and multiuser applications. Adjunct Faculty at University of Denver, University College teaching students how to build native applications with Adobe AIR.",
-     "twitter":"http://twitter.com/coderjun",
-     "linkedIn":"http://www.linkedin.com/in/junheider",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Justin Mclean",
-     "title": "",
-     "apacheID": "jmclean (C+P)",
-     "photoURL": "images/headshots/jmclean.jpg",
-     "bio": "Experienced web application developer, certified trainer, international conference speaker and Arduino tinkerer. Interesting in making Apache Flex more international and work on a wider range of platforms. Added international postcode support and locales to Apache Flex 4.9.0. Release manager for Apache Flex 4.9.0.",
-     "twitter":"http://twitter.com/JustinMclean",
-     "linkedIn":"http://www.linkedin.com/in/justinmclean",
-     "facebook":"",
-     "github":"http://www.github.com/justinmclean",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Mahmoud Ali",
-     "title": "",
-     "apacheID": "akamud (C)",
-     "photoURL": "images/headshots/akamud.jpg",
-     "bio": ".NET and Apache Flex developer, working on Web and mobile applications. One of the creators of the <a href='https://github.com/akamud/FlatSpark'>FlatSpark</a> skin, a project to bring a more clean and modern look to Apache Flex applications, recently donated to Apache Software Foundation. His goal as a committer is to continue improving and creating new Skins and components for Flex.</p <p>Always interested in learning and sharing about new technologies. In his spare time wanders around the internet looking for open source projects that need help.<br/><br/>Also feels weird describing himself in the third person.</p>",
-     "twitter":"http://twitter.com/akamud",
-     "linkedIn":"http://www.linkedin.com/in/akamud/en",
-     "facebook":"",
-     "github":"https://github.com/akamud",
-     "googleplus":"",
-     "rss":"http://www.akamud.com.br/feed",
-     "wordpress":"http://www.akamud.com.br/"
-    },
-    
-    {"name": "Maurice Amsellem",
-     "title": "",
-     "apacheID": "mamsellem (C+P)",
-     "photoURL": "images/headshots/mamsellem.jpg",
-     "bio": "<p>Maurice has been working for <a href='http://www.systar.com'>Systar</a> since 1996 in various positions, and since 2009 as a software engineer on a Flex-based BAM application development framework.</p><p>Maurice is professionally interested in GUI design in general, and personally in clay modeling.<br/>He is based in Paris area, France.</p>",
-     "twitter":"",
-     "linkedIn":"http://www.linkedin.com/pub/maurice-amsellem/1/50a/b64",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Michael Schmalle",
-     "title": "",
-     "apacheID": "mschmalle (C+P)",
-     "photoURL": "images/headshots/mschmalle.jpg",
-     "bio": "<p>Past; ActionScript since 2001 and ui component developer. Created a read/write DOM for ActionScript in AS3 and Java, familiar with parsers and compilers.<br/><br/>Future; Working creating a framework to make synths and sequencers for techno music in Android and also Unity3D, WebAudio and JavaScript.<br/><br/>Leading the development of FalconJx to finally put the last nail in the Flash Player for myself. I don't claim to be anything I'm not, the third person scares me.</p>",
-     "twitter":"http://www.twitter.com/teotigraphix",
-     "linkedIn":"http://www.linkedin.com/pub/michael-schmalle/4/409/980",
-     "facebook":"",
-     "github":"https://github.com/teotigraphix",
-     "googleplus":"",
-     "rss":"http://blog.teotigraphix.com/feed"
-    },
-    
-    {"name": "Nicholas Kwiatkowski",
-     "title": "",
-     "apacheID": "quetwo (C+P)",
-     "photoURL": "images/headshots/quetwo.jpg",
-     "bio": "Working on components, website, marketing.",
-     "twitter":"http://www.twitter.com/quetwo",
-     "linkedIn":"",
-     "facebook":"http://www.facebook.com/quetwo",
-     "github":"",
-     "googleplus":"https://plus.google.com/106376488955804514674/",
-     "rss":"",
-     "blog":"http://www.quetwo.com",
-     "deviantart":"http://quetwo.deviantart.com"
-    },
-    
-    {"name": "Omar Gonzalez",
-     "title": "",
-     "apacheID": "s9tpepper (C+P)",
-     "photoURL": "images/headshots/s9tpepper.jpg",
-     "bio": "<p>Apache Flex committer and PMC member. Test driven development enthusiast. Wrestles code all day. Developing Flash since 2000, Flex since version 2 beta. Senior Architect for <a href='http://almerblank.com' target='_blank'>almer/blank</a> developing front-ends and back-ends in HTML5, JavaScript, Flash, Flex, Node.js, PHP, MySQL and MongoDB, just to name a few. Interested in expanding Apache Flex beyond the Flash Player plugin as well as other random experiments.</p>",
-     "twitter":"http://www.twitter.com/s9tpepper",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"https://github.com/s9tpepper",
-     "googleplus":"https://plus.google.com/109288512951904372418",
-     "rss":"http://omar.gy/rss"
-    },
-    
-    {"name": "OmPrakash Muppirala",
-     "title": "",
-     "apacheID": " bigosmallm (C + P)",
-     "photoURL": "images/headshots/bigosmallm.jpg",
-     "bio": "<p>Om 'bigosmallm' Muppirala is a UI architect with years of experience building Flex and Flash based applications. He has been working on various tools and utilities aimed at making life easier for Apache Flex developers and users(SDK Installer, OneClick Mustella, etc.)  Also interested in contributing more web and mobile Flex components.</p>",
-     "twitter":"http://twitter.com/bigosmallm",
-     "linkedIn":"http://www.linkedin.com/in/omprakashm/",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Peter Elst",
-     "title": "",
-     "apacheID": "peterelst (C + P)",
-     "photoURL": "images/headshots/peterelst.jpg",
-     "bio": "<p>Peter is a Web Solutions Engineer at Google, an author of multiple ActionScript books, speaker at various industry events and longtime supporter of Flex as a platform.</p><p>In his spare time, you can find him blogging at <a href='http://www.peterelst.com'>www.peterelst.com</a>.</p>",
-     "twitter":"http://www.twitter.com/peterelst",
-     "linkedIn":"http://www.linkedin.com/in/peterelst",
-     "facebook":"",
-     "github":"",
-     "googleplus":"https://www.google.com/+peterelst",
-     "rss":""
-    },
-    
-    {"name": "Piotr Zarzycki",
-     "title": "",
-     "apacheID": "piotrz (C + P)",
-     "photoURL": "images/headshots/piotrz.jpg",
-     "bio": "<p>Piotr has been working with Flex since 2008 in various project. He always stays open for self-development opportunity.</p><p>He currently lives in Cracow, Poland.</p>",
-     "twitter":"",
-     "linkedIn":"http://pl.linkedin.com/pub/piotr-zarzycki/52/535/92a/",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":"",
-     "skype":"skype:zarzycki10?call"
-    },
-    
-    {"name": "Stephan Plath",
-     "title": "",
-     "apacheID": "splath (C)",
-     "photoURL": "images/headshots/splath.jpg",
-     "bio": "",
-     "twitter":"http://www.twitter.com/xplath",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Tom Chiverton",
-     "title": "",
-     "apacheID": "tomc (P+C)",
-     "photoURL": "images/headshots/tomc.jpg",
-     "bio": "<p>Tom has been building internet applications since before the term RIA, and was part of the community contributing to Flex while it was looked after by Adobe.</p><p>Within Apache Flex his focus is on making sure the experience on Linux is on par with the other supported platforms, as well as pitching in keeping the Jenkins servers running.</p><p>He currently lives in Manchester, UK.</p>",
-     "twitter":"http://www.twitter.com/thefalken",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Maxim Solodovnik",
-     "title": "",
-     "apacheID": "solomax (C)",
-     "photoURL": "images/headshots/solomax.jpg",
-     "bio": "<p>Maxim developing desktop and mobile applications working with video components.</p><p>The main contribution so far was Russian translation of various Flex components</p><p>He currently lives in Novosibirsk, Russia.</p>",
-     "twitter":"http://www.twitter.com/solomax666",
-     "linkedIn":"https://www.linkedin.com/in/maximsolodovnik",
-     "facebook":"",
-     "github":"https://github.com/solomax",
-     "googleplus":"https://www.google.com/+MaximSolodovnik",
-     "rss":""
-    },
-    
-    {"name": "Olaf Krueger",
-     "title": "",
-     "apacheID": "okrueger (C)",
-     "photoURL": "images/headshots/okrueger.png",
-     "bio": "<p>Olaf believes in the power and beauty of simplicity in all respects.</p><p>Employed at a leading automotive supplier for hinge systems he creates software for internal use. For many years and still with great passion.</p><p>Olaf would like to help to bring the Material Design to Flex/FlexJS</p>",
-     "twitter":"http://www.twitter.com/openoli",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Bertrand Delacretaz",
-     "title": "Project Mentor",
-     "apacheID": "bdelacretaz (C+P)",
-     "photoURL": "images/headshots/bdelacretaz.jpg",
-     "bio": "<p>I'm happy to have been able to help Flex incubate at Apache, the team did a great job in creating a successful Apache project. I left the PMC on graduation to free some time for other podlings, wishing Flex a bright future!</p>",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Dave Fisher ",
-     "title": "Project Mentor",
-     "apacheID": "wave (C+P)",
-     "photoURL": "images/headshots/davefisher.jpg",
-     "bio": "<p>I'm fascinated by the communities that develop around projects at Apache I really enjoy the spirit here in the Apache Flex project. I am particularly interested in documents and am on the Apache POI and OpenOffice PMCs. Apache Flex for office documents anyone?</p><p>I live in San Francisco where the weather is mild.</p>",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    },
-    
-    {"name": "Greg Reddin",
-     "title": "Project Mentor",
-     "apacheID": "greddin (C+P)",
-     "photoURL": "images/staff-1.jpg",
-     "bio": "",
-     "twitter":"",
-     "linkedIn":"",
-     "facebook":"",
-     "github":"",
-     "googleplus":"",
-     "rss":""
-    }
-]
-  
-}
\ No newline at end of file


[02/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/models/AssetsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/models/AssetsModel.as b/examples/flexjs/MobileTrader/src/models/AssetsModel.as
deleted file mode 100755
index 3d72137..0000000
--- a/examples/flexjs/MobileTrader/src/models/AssetsModel.as
+++ /dev/null
@@ -1,57 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.core.IBeadModel;
-	import org.apache.flex.core.IStrand;
-	import org.apache.flex.events.EventDispatcher;
-	import org.apache.flex.collections.ArrayList;
-
-	public class AssetsModel extends EventDispatcher implements IBeadModel
-	{
-		public function AssetsModel()
-		{
-			super();
-			_assetsData = new ArrayList();
-			_assetsData.source = source;
-		}
-		private var source:Array = [
-			new Asset("NetWorth:", 161984, 2.36),
-			new Asset("Last Month:", 165915, 10.98),
-			new Asset("6 Months Ago:", 145962, 16.56),
-			new Asset("Last Year:", 138972, 8.36)
-		];
-		private var _assetsData:ArrayList;
-
-		public function get assetsData():ArrayList
-		{
-			return _assetsData;
-		}
-
-		public function get assetsDataAsArray():Array
-		{
-		    return source;
-		}
-
-		public function set strand(value:IStrand):void
-		{
-			// not used
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/models/ProductsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/models/ProductsModel.as b/examples/flexjs/MobileTrader/src/models/ProductsModel.as
deleted file mode 100755
index f4b2008..0000000
--- a/examples/flexjs/MobileTrader/src/models/ProductsModel.as
+++ /dev/null
@@ -1,165 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.core.IBeadModel;
-	import org.apache.flex.core.IStrand;
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	import org.apache.flex.net.HTTPService;
-	import org.apache.flex.collections.parsers.JSONInputParser;
-	import org.apache.flex.collections.LazyCollection;
-	import org.apache.flex.collections.ArrayList;
-		
-	public class ProductsModel extends EventDispatcher implements IBeadModel
-	{
-		public function ProductsModel()
-		{
-			super();
-			
-			service = new HTTPService();
-			collection = new LazyCollection;
-			collection.inputParser = new JSONInputParser();
-			collection.itemConverter = new StockDataJSONItemConverter();
-			
-			_watchList = new ArrayList();
-			_alerts = new ArrayList();
-		}
-		
-		private var service:HTTPService;
-		private var collection:LazyCollection;
-		private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
-		private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
-		
-		private var _strand:IStrand;
-		public function set strand(value:IStrand):void
-		{
-			_strand = value;
-			
-			service.addBead(collection);
-			_strand.addBead(service);
-		}
-
-		private var _tabList:Array = ["Assets", "Watch", "Alerts"];
-		public function get tabList():Array
-		{
-			return _tabList;
-		}
-
-		private var _labelFields:Array = [ "id", "title", "detail" ];
-		public function get labelFields():Array
-		{
-			return _labelFields;
-		}
-		
-		private var _watchList:ArrayList;
-		
-		public function get watchList():ArrayList
-		{
-			return _watchList;
-		}
-		
-		private var _alerts:ArrayList;
-		
-		public function get alerts():ArrayList
-		{
-			return _alerts;
-		}
-		
-		public function addAlert(value:Alert):void
-		{
-			for (var i:int =0; i < _alerts.length; i++)
-			{
-				var alert:Alert = _alerts.getItemAt(i) as Alert;
-				if (alert.symbol == value.symbol) {
-				    _alerts.setItemAt(value, i);
-					return;
-				}
-			}
-			
-			_alerts.addItem(value);
-			dispatchEvent(new Event("alertsUpdate"));
-		}
-		
-		public function addStock(symbol:String):Stock
-		{
-			for (var i:int=0; i < _watchList.length; i++)
-			{
-				var stock:Stock = _watchList.getItemAt(i) as Stock;
-				if (stock.symbol == symbol) return stock;
-			}
-			
-			stock = new Stock(symbol);
-			
-			_watchList.addItem(stock);
-	//		dispatchEvent(new Event("update"));
-			
-			updateStockData(stock);
-			return stock;
-		}
-		
-		public function updateStockData(value:Stock):void
-		{
-			var sym:String = value.symbol;
-			service.url = queryBegin + sym + queryEnd;
-			service.send();
-			service.addEventListener("complete", completeHandler);
-		}
-		
-		public function removeStock(stock:Stock):void
-		{
-			for (var i:int=0; i < alerts.length; i++)
-			{
-				var alert:Alert = alerts.getItemAt(i) as Alert;
-				if (stock.symbol == alert.symbol) {
-					alerts.removeItemAt(i);
-					break;
-				}
-			}
-			
-			for (i=0; i < _watchList.length; i++)
-			{
-				var s:Stock = _watchList.getItemAt(i) as Stock;
-				if (stock.symbol == s.symbol) {
-					_watchList.removeItemAt(i);
-					break;
-				}
-			}
-			
-			dispatchEvent(new Event("alertsUpdate"));
-			dispatchEvent(new Event("update"));
-		}
-		
-		private function completeHandler(event:Event):void
-		{
-			var responseData:Object = collection.getItemAt(0);
-			
-			var sym:String = responseData["Symbol"];
-			for (var i:int=0; i < _watchList.length; i++)
-			{
-				var stock:Stock = _watchList.getItemAt(i) as Stock;
-				if (stock.symbol == sym) {
-					stock.updateFromData(responseData);
-					_watchList.itemUpdatedAt(i);
-					break;
-				}
-			}
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/models/Stock.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/models/Stock.as b/examples/flexjs/MobileTrader/src/models/Stock.as
deleted file mode 100755
index 9e53f47..0000000
--- a/examples/flexjs/MobileTrader/src/models/Stock.as
+++ /dev/null
@@ -1,148 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	
-	public class Stock extends EventDispatcher
-	{	    		
-		public var history:Array;
-		
-		public function Stock(symbol:String=null, last:Number=0)
-		{
-			this.symbol = symbol;
-			this.last = last;
-			this.low = last;
-			this.high = last;
-			this.open = last;
-			this.change = 0;
-			this.name = "";
-		}
-		
-		public function updateFromData(obj:Object):void
-		{
-			name = obj["Name"];
-			low = obj["DaysLow"];
-			high = obj["DaysHigh"];
-			open = obj["Open"];
-			change = obj["Change"];
-			symbol = obj["Symbol"];
-			last = obj["LastTradePriceOnly"];
-		}
-		
-		private var _symbol:String;
-		private var _name:String;
-		private var _low:Number;
-		private var _high:Number;
-		private var _open:Number;
-		private var _last:Number;
-		private var _change:Number;
-		private var _date:Date;
-		
-		[Bindable("symbolChanged")]
-		public function get symbol():String
-		{
-			return _symbol;
-		}
-		public function set symbol(value:String):void
-		{
-			_symbol = value;
-			dispatchEvent(new Event("symbolChanged"));
-		}
-		
-		[Bindable("nameChanged")]
-		public function get name():String
-		{
-			return _name;
-		}
-		public function set name(value:String):void
-		{
-			_name = value;
-			dispatchEvent(new Event("nameChanged"));
-		}
-		
-		[Bindable("lowChanged")]
-		public function get low():Number
-		{
-			return _low;
-		}
-		public function set low(value:Number):void
-		{
-			_low = value;
-			dispatchEvent(new Event("lowChanged"));
-		}
-		
-		[Bindable("highChanged")]
-		public function get high():Number
-		{
-			return _high;
-		}
-		public function set high(value:Number):void
-		{
-			_high = value;
-			dispatchEvent(new Event("highChanged"));
-		}
-		
-		[Bindable("openChanged")]
-		public function get open():Number
-		{
-			return _open;
-		}
-		public function set open(value:Number):void
-		{
-			_open = value;
-			dispatchEvent(new Event("openChanged"));
-		}
-		
-		[Bindable("lastChanged")]
-		public function get last():Number
-		{
-			return _last;
-		}
-		public function set last(value:Number):void
-		{
-			_last = value;
-			dispatchEvent(new Event("lastChanged"));
-		}
-		
-		[Bindable("changeChanged")]
-		public function get change():Number
-		{
-			return _change;
-		}
-		public function set change(value:Number):void
-		{
-			_change = value;
-			dispatchEvent(new Event("changeChanged"));
-		}
-		
-		[Bindable("dateChanged")]
-		public function get date():Date
-		{
-			return _date;
-		}
-		public function set date(value:Date):void
-		{
-			_date = value;
-			dispatchEvent(new Event("dateChanged"));
-		}
-	}
-	
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/renderers/AlertRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/renderers/AlertRenderer.as b/examples/flexjs/MobileTrader/src/renderers/AlertRenderer.as
deleted file mode 100644
index e683020..0000000
--- a/examples/flexjs/MobileTrader/src/renderers/AlertRenderer.as
+++ /dev/null
@@ -1,44 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package renderers
-{
-	import org.apache.flex.html.supportClasses.StringItemRenderer;
-	
-	public class AlertRenderer extends StringItemRenderer
-	{
-		public function AlertRenderer()
-		{
-			super();
-		}
-		
-		override public function set data(value:Object):void
-		{
-			super.data = value;
-			
-			if (labelField == "greaterThan") {
-				if (Boolean(value[labelField])) {
-					text = "when over "+value["value"];
-				}
-				else {
-					text = "when under "+value["value"];
-				}
-			}
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/renderers/StockRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/renderers/StockRenderer.as b/examples/flexjs/MobileTrader/src/renderers/StockRenderer.as
deleted file mode 100755
index afba26f..0000000
--- a/examples/flexjs/MobileTrader/src/renderers/StockRenderer.as
+++ /dev/null
@@ -1,47 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package renderers
-{
-	import org.apache.flex.html.supportClasses.StringItemRenderer;
-	
-	public class StockRenderer extends StringItemRenderer
-	{
-		public function StockRenderer()
-		{
-			super();
-		}
-		
-		override public function set data(value:Object):void
-		{
-			super.data = value;
-			
-			var n1:Number = Number(value[labelField]);
-			if (!isNaN(n1)) {
-				n1 = Math.round(n1*100)/100.0;
-				
-				// something to keep in mind when using FlexJS for cross-platform
-				// use: make sure that public properties are used versus protected
-				// functions or properties. in most cases, internal vars and functions
-				// will be platform-specific whereas public properties and function
-				// should be cross-platform. 
-				text = String(n1);
-			}
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/views/AlertsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/views/AlertsView.mxml b/examples/flexjs/MobileTrader/src/views/AlertsView.mxml
deleted file mode 100755
index f06dd65..0000000
--- a/examples/flexjs/MobileTrader/src/views/AlertsView.mxml
+++ /dev/null
@@ -1,101 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
-			 title="Alerts"
-				       xmlns:js="library://ns.apache.org/flexjs/basic"
-				       xmlns:local="*"
-				       className="AlertsView" xmlns:renderers="renderers.*">
-	
-	<fx:Metadata>
-		[Event("next")]
-	</fx:Metadata>
-	
-	<fx:Script>
-		<![CDATA[			
-			import org.apache.flex.core.IBeadModel;
-			import org.apache.flex.core.IBeadController;
-			import org.apache.flex.events.Event;
-			import controller.AlertsViewController;
-			
-			public function set dataModel(value:IBeadModel):void
-			{
-				var cm:IBeadController = controller;
-				(cm as AlertsViewController).model = value;
-			}
-			public function get dataModel():IBeadModel
-			{
-				var cm:IBeadController = controller;
-				return (cm as AlertsViewController).model;
-			}
-
-			private function onAlertSet():void
-			{
-				dispatchEvent(new org.apache.flex.events.Event("alertSet"));
-			}
-		]]>
-	</fx:Script>
-		
-	<js:Container x="4" y="10" >
-		<js:beads>
-			<js:HorizontalLayout />
-		</js:beads>
-		<js:Label text="Symbol:" />
-		<js:TextInput id="symbolField" width="50" />
-		<js:Label text="Value:" />
-		<js:TextInput id="valueField" width="50" />
-		<js:CheckBox text="Higher?" id="higherCheck" />
-		<js:TextButton text="Set" click="onAlertSet()" />
-	</js:Container>
-	
-	<js:DataGrid id="dataGrid" x="0" y="40" width="100%" height="200">
-		<js:beads>
-			<js:DataProviderChangeNotifier sourceID="dataModel" propertyName="alerts" />
-			<js:SimpleBinding
-				eventName="alertsUpdate"
-				sourceID="dataModel"
-				sourcePropertyName="alerts"
-				destinationPropertyName="dataProvider" />
-		</js:beads>
-		<js:columns>
-			<js:DataGridColumn label="Symbol" dataField="symbol">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:StringItemRenderer />
-					</fx:Component>
-				</js:itemRenderer>
-			</js:DataGridColumn>
-			<js:DataGridColumn label="Alert" dataField="greaterThan">
-				<js:itemRenderer>
-					<fx:Component>
-						<renderers:AlertRenderer />
-					</fx:Component>
-				</js:itemRenderer>
-			</js:DataGridColumn>
-			<js:DataGridColumn label="Message" dataField="message">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:StringItemRenderer />
-					</fx:Component>
-				</js:itemRenderer>
-			</js:DataGridColumn>
-		</js:columns>
-	</js:DataGrid>
-	
-</js:TitleView>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/views/AssetsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/views/AssetsView.mxml b/examples/flexjs/MobileTrader/src/views/AssetsView.mxml
deleted file mode 100755
index 2929a3e..0000000
--- a/examples/flexjs/MobileTrader/src/views/AssetsView.mxml
+++ /dev/null
@@ -1,89 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
-			title="Assets"
-			xmlns:js="library://ns.apache.org/flexjs/basic"
-			xmlns:models="models.*"
-			xmlns:local="*"
-			className="AssetsView">
-	<fx:Script>
-		<![CDATA[
-
-		]]>
-	</fx:Script>
-	
-	<fx:Metadata>
-		[Event("next")]
-	</fx:Metadata>
-	
-	<js:beads>
-		<js:VerticalLayout />
-	</js:beads>
-	
-	<js:model>
-		<models:AssetsModel />
-	</js:model>
-
-	<js:Label text="Summary" height="10%" />
-	
-	<js:DataGrid height="150" width="100%">
-		<js:style>
-			<js:SimpleCSSStyles top="0" left="0" right="0" />
-		</js:style>
-		<js:beads>
-			<js:ConstantBinding
-				sourceID="model"
-				sourcePropertyName="assetsData"
-				destinationPropertyName="dataProvider" />
-		</js:beads>
-		<js:columns>
-			<js:DataGridColumn label="Type" dataField="label" />
-			<js:DataGridColumn label="Value" dataField="value" />
-			<js:DataGridColumn label="Change" dataField="netChange" />
-		</js:columns>
-	</js:DataGrid>
-		
-	<js:Label text="Performance History" height="10%" />
-		
-	<js:BarChart id="barChart" width="100%" height="40%">
-		<js:beads>
-			<js:ConstantBinding
-				sourceID="model"
-				sourcePropertyName="assetsDataAsArray"
-				destinationPropertyName="dataProvider" />
-			<js:VerticalCategoryAxisBead categoryField="label" />
-			<js:HorizontalLinearAxisBead valueField="netChange" />
-		</js:beads>
-		<js:series>
-			<js:BarSeries xField="netChange"> 
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#FF964D" alpha="1.0" />
-							</js:fill>
-						</js:BoxItemRenderer>                      
-					</fx:Component>
-				</js:itemRenderer>
-			</js:BarSeries>
-		</js:series>
-	</js:BarChart>
-
-</js:TitleView>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/views/SearchView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/views/SearchView.mxml b/examples/flexjs/MobileTrader/src/views/SearchView.mxml
deleted file mode 100755
index 0348fba..0000000
--- a/examples/flexjs/MobileTrader/src/views/SearchView.mxml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
-					   xmlns:js="library://ns.apache.org/flexjs/basic"
-					   xmlns:apache="org.apache.flex.html.beads.*"
-					   xmlns:local="*"
-					   className="StockView">
-	
-	<fx:Script>
-		<![CDATA[			
-			import org.apache.flex.mobile.StackedViewManager;
-			private function onBackClick() : void
-			{
-				(viewManager as StackedViewManager).pop();
-			}
-		]]>
-	</fx:Script>
-		
-	<js:Label text="Search View" x="20" y="100" />
-</js:TitleView>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/views/StockView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/views/StockView.mxml b/examples/flexjs/MobileTrader/src/views/StockView.mxml
deleted file mode 100755
index 95b8992..0000000
--- a/examples/flexjs/MobileTrader/src/views/StockView.mxml
+++ /dev/null
@@ -1,98 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
-					   xmlns:js="library://ns.apache.org/flexjs/basic"
-					   xmlns:apache="org.apache.flex.html.beads.*"
-					   xmlns:local="*"
-					   className="StockView">
-	
-	<fx:Script>
-		<![CDATA[			
-			import models.Stock;
-			
-			import org.apache.flex.events.Event;
-			import org.apache.flex.mobile.StackedViewManager;
-			
-			private var _stock:Stock;
-			
-			[Bindable("stockChanged")]
-			public function get stock():Stock
-			{
-				return _stock;
-			}
-			public function set stock(value:Stock):void
-			{
-				_stock = value;
-				dispatchEvent(new org.apache.flex.events.Event("stockChanged"));
-			}
-			
-			private function onBackClick() : void
-			{
-				(viewManager as StackedViewManager).pop();
-			}
-			
-			override public function addedToParent():void
-			{
-				super.addedToParent();
-				
-				stockSymbol.text = stock.symbol;
-				stockName.text = stock.name;
-				lastPrice.text = String(stock.last);
-				openPrice.text = String(stock.open);
-				lowPrice.text = String(stock.low);
-				highPrice.text = String(stock.high);
-				changeAmount.text = String(stock.change);
-			}
-			
-			private function removeFromList():void
-			{
-				dispatchEvent(new org.apache.flex.events.Event("removeFromList"));
-			}
-		]]>
-	</fx:Script>
-	
-	<js:Container>
-		<js:beads>
-			<js:VerticalLayout />
-		</js:beads>
-		<js:style>
-			<js:SimpleCSSStyles top="10px" left="10px" />
-		</js:style>
-		
-		<js:Label id="stockSymbol" text="{stock.symbol}" className="ViewTitle" />
-		<js:Label id="stockName" text="{stock.name}" className="StockName"  />
-		
-		<js:Container className="StockDetailArea">
-			<js:beads>
-				<js:VerticalColumnLayout numColumns="2" />
-			</js:beads>
-			
-			<js:Label text="Last Price:" className="StockLabel" /> <js:Label id="lastPrice" className="StockValue" />
-			<js:Label text="Open Price:" className="StockLabel" /> <js:Label id="openPrice" className="StockValue" />
-			<js:Label text="Low  Price:" className="StockLabel" /> <js:Label id="lowPrice" className="StockValue" />
-			<js:Label text="High Price:" className="StockLabel" /> <js:Label id="highPrice" className="StockValue" />
-			<js:Label text="Change:    " className="StockLabel" /> <js:Label id="changeAmount" className="StockValue" />
-		</js:Container>
-		
-		<js:Container className="StockDetailArea">
-			<js:TextButton text="Remove From List" width="200" className="StockRemoveButton" click="removeFromList()" />
-		</js:Container>
-	</js:Container>
-</js:TitleView>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/MobileTrader/src/views/WatchListView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MobileTrader/src/views/WatchListView.mxml b/examples/flexjs/MobileTrader/src/views/WatchListView.mxml
deleted file mode 100755
index aa9da04..0000000
--- a/examples/flexjs/MobileTrader/src/views/WatchListView.mxml
+++ /dev/null
@@ -1,151 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:TitleView xmlns:fx="http://ns.adobe.com/mxml/2009"
-		 title="Watch List"
-		 xmlns:js="library://ns.apache.org/flexjs/basic"
-		 xmlns:controller="controller.*"
-		 xmlns:local="*"
-		 className="WatchListView"
-		 xmlns:renderers="renderers.*">
-	
-	<fx:Script>
-		<![CDATA[						
-			import controller.WatchListController;
-			
-			import models.ProductsModel;
-			import models.Stock;
-			
-			import org.apache.flex.binding.SimpleBinding;
-			import org.apache.flex.core.IBeadController;
-			import org.apache.flex.core.IBeadModel;
-			import org.apache.flex.events.Event;
-			import org.apache.flex.mobile.IViewManager;
-			import org.apache.flex.mobile.StackedViewManager;
-			
-			public function set dataModel(value:IBeadModel):void
-			{
-				var cm:IBeadController = controller;
-				(cm as WatchListController).model = value;
-			}
-			public function get dataModel():IBeadModel
-			{
-				var cm:IBeadController = controller;
-				return (cm as WatchListController).model;
-			}
-			
-			private function onSelectStock():void
-			{
-				var stockView:StockView = new StockView();
-				var svm:IViewManager = viewManager;
-				(viewManager as StackedViewManager).push(stockView);
-			}
-			
-			private function addSymbol():void
-			{
-				dispatchEvent(new org.apache.flex.events.Event("addSymbol"));
-			}
-			
-			public var selectedStockIndex:Number;
-			
-			private function selectRow():void
-			{
-				selectedStockIndex = dataGrid.selectedIndex;
-				dispatchEvent(new org.apache.flex.events.Event("stockSelected"));
-			}
-			
-			public function showStockDetails(stock:Stock):StockView
-			{
-				var stockView:StockView = new StockView();
-				stockView.stock = stock;
-				(viewManager as StackedViewManager).push(stockView);
-				
-				var cm:IBeadController = controller;
-				
-				return stockView;
-			}
-			
-			public function popView():void
-			{
-				(viewManager as StackedViewManager).pop();
-			}
-		]]>
-	</fx:Script>
-	
-	<js:beads>
-		<js:VerticalLayout />
-	</js:beads>
-	
-	<js:HContainer className="WatchListInputArea" width="100%" height="10%">
-		<js:Label text="Symbol:" />
-		<js:TextInput id="symbolName" />
-		<js:TextButton text="Add" click="addSymbol()" />
-	</js:HContainer>
-	
-	<js:Spacer height="10" />
-		
-	<js:DataGrid id="dataGrid" width="100%" height="85%" change="selectRow()" className="WatchListDataGrid">
-		<js:beads>
-			<js:DataProviderChangeNotifier sourceID="dataModel" propertyName="watchList" />
-			<js:SimpleBinding
-				eventName="update"
-				sourceID="dataModel"
-				sourcePropertyName="watchList"
-				destinationPropertyName="dataProvider" />
-		</js:beads>
-		<js:columns>
-			<js:DataGridColumn label="Symbol" dataField="symbol">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:StringItemRenderer />
-					</fx:Component>
-				</js:itemRenderer>
-			</js:DataGridColumn>
-			<js:DataGridColumn label="Open" dataField="open">
-				<js:itemRenderer>
-					<fx:Component>
-						<renderers:StockRenderer />
-					</fx:Component>
-				</js:itemRenderer>
-			</js:DataGridColumn>
-			<js:DataGridColumn label="Last" dataField="last" >
-				<js:itemRenderer>
-					<fx:Component>
-						<renderers:StockRenderer />
-					</fx:Component>
-				</js:itemRenderer>
-			</js:DataGridColumn>
-			<js:DataGridColumn label="High" dataField="high" >
-				<js:itemRenderer>
-					<fx:Component>
-						<renderers:StockRenderer />
-					</fx:Component>
-				</js:itemRenderer>
-			</js:DataGridColumn>
-			<js:DataGridColumn label="Low" dataField="low" >
-				<js:itemRenderer>
-					<fx:Component>
-						<renderers:StockRenderer />
-					</fx:Component>
-				</js:itemRenderer>
-			</js:DataGridColumn>
-		</js:columns>
-	</js:DataGrid>
-	
-</js:TitleView>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StorageExample/resources/config.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/StorageExample/resources/config.xml b/examples/flexjs/StorageExample/resources/config.xml
deleted file mode 100644
index 00b9f64..0000000
--- a/examples/flexjs/StorageExample/resources/config.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-<?xml version='1.0' encoding='utf-8'?>
-<!--
-
-  Licensed to the Apache Software Foundation (ASF) under one or more
-  contributor license agreements.  See the NOTICE file distributed with
-  this work for additional information regarding copyright ownership.
-  The ASF licenses this file to You 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.
-
--->
-<widget id="${groupId}.${artifactId}" version="${version}" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
-    <name>${artifactId}</name>
-    <description>
-        ${description}
-    </description>
-    <author email="dev@flex.apache.org" href="http://flex.apache.org">
-        Apache Flex Team
-    </author>
-    <content src="index.html" />
-    <plugin name="cordova-plugin-whitelist" version="1" />
-    <access origin="*" />
-    <allow-intent href="http://*/*" />
-    <allow-intent href="https://*/*" />
-    <allow-intent href="tel:*" />
-    <allow-intent href="sms:*" />
-    <allow-intent href="mailto:*" />
-    <allow-intent href="geo:*" />
-    <platform name="android">
-        <allow-intent href="market:*" />
-    </platform>
-    <platform name="ios">
-        <allow-intent href="itms:*" />
-        <allow-intent href="itms-apps:*" />
-    </platform>
-</widget>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StorageExample/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/StorageExample/src/MyInitialView.mxml b/examples/flexjs/StorageExample/src/MyInitialView.mxml
deleted file mode 100644
index 370d0af..0000000
--- a/examples/flexjs/StorageExample/src/MyInitialView.mxml
+++ /dev/null
@@ -1,245 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:js="library://ns.apache.org/flexjs/basic"
-				xmlns:local="*"
-				initComplete="startup()">
-    <fx:Script>
-        <![CDATA[			
-			import org.apache.flex.storage.PermanentStorage;
-			import org.apache.flex.storage.events.FileEvent;
-			import org.apache.flex.storage.events.FileErrorEvent;
-			import org.apache.flex.storage.file.IDataInput;
-			import org.apache.flex.storage.file.IDataOutput;
-			
-			private function startup():void
-			{
-				trace("Starting up");
-			}
-			
-			// READING - PLAIN
-			
-			private function onRead():void
-			{
-				var storage:PermanentStorage = new PermanentStorage();
-				
-				var useFile:String = readFileNameField.text;
-				
-				storage.addEventListener("READ", handleRead);
-				storage.addEventListener("ERROR", handleRead);
-				storage.readTextFromDataFile( useFile );
-			}
-			
-			private function handleRead(event:FileEvent):void
-			{
-				trace(event.data);
-				status.text = "Read Success!";
-				readContent.text = String(event.data);
-			}
-			
-			private function handleReadError(event:FileErrorEvent):void
-			{
-				status.text = "Error: "+event.errorMessage;
-				readContent.text = "";
-			}
-			
-			// READING - STREAM
-			
-			private function onReadStream():void
-			{
-				var storage:PermanentStorage = new PermanentStorage();
-				var useFile:String = readFileNameField.text;
-				
-				storage.addEventListener("READY", handleReadStreamReady);
-				storage.addEventListener("READ", handleReadStreamData);
-				storage.addEventListener("COMPLETE", handleReadStreamComplete);
-				storage.addEventListener("ERROR", handleReadStreamError);
-				storage.openInputDataStream(useFile);
-			}
-			
-			private function handleReadStreamReady(event:FileEvent):void
-			{
-				trace("INPUT STREAM READY");
-				
-				status.text = "Input stream ready";
-				
-				var stream:IDataInput = event.stream as IDataInput;
-				stream.readText();
-			}
-			
-			private function handleReadStreamData(event:FileEvent):void
-			{
-				trace("INPUT STREAM DATA.");
-				var stream:IDataInput = event.stream as IDataInput;
-				
-				status.text = "Input stream reading";
-				readContent.text = String(event.data);
-			}
-			
-			private function handleReadStreamComplete(event:FileEvent):void
-			{
-				trace("INPUT STREAM CLOSED");
-				status.text = "Input stream closed";
-			}
-			
-			private function handleReadStreamError(event:FileErrorEvent):void
-			{
-				status.text = event.errorMessage;
-			}
-			
-			// SAVING - PLAIN
-			
-			private function onSave():void
-			{
-				var storage:PermanentStorage = new PermanentStorage();
-				var today:Date = new Date();
-				
-				var useFile:String = writeFileNameField.text;
-				var useContent:String = today.toString() + " " + contentField.text;
-				
-				storage.addEventListener("WRITE", handleSave);
-				storage.writeTextToDataFile(useFile, useContent);
-			}
-			
-			private function handleSave(event:FileEvent):void
-			{
-				status.text = "Write Success!";
-			}
-			
-			private function handleSaveError(event:FileErrorEvent):void
-			{
-				status.text = "Error: "+event.errorMessage;
-			}
-			
-			// SAVING - STREAM
-						
-			private var writeCount:Number = 0;
-			
-			private function onSaveStream():void
-			{
-				var storage:PermanentStorage = new PermanentStorage();
-				var useFile:String = writeFileNameField.text;
-				
-				storage.addEventListener("READY", handleSaveStreamReady);
-				storage.addEventListener("WRITE", handleSaveStreamData);
-				storage.addEventListener("COMPLETE", handleSaveStreamComplete);
-				storage.addEventListener("ERROR", handleSaveStreamError);
-				storage.openOutputDataStream(useFile);
-			}
-			
-			private function handleSaveStreamReady(event:FileEvent):void
-			{
-				writeCount = 3;
-				trace("OUTPUT STREAM READY");
-				
-				status.text = "Output stream ready";
-				var today:Date = new Date();
-				var useContent:String = "("+String(writeCount)+") "+today.toString() + " " + contentField.text + "\n";
-				
-				var stream:IDataOutput = event.stream as IDataOutput;
-				stream.writeText(useContent);
-			}
-			
-			private function handleSaveStreamData(event:FileEvent):void
-			{
-				trace("OUTPUT STREAM DATA. Count = "+writeCount);
-				var stream:IDataOutput = event.stream as IDataOutput;
-				
-				if (--writeCount == 0) {
-					stream.close();
-				}
-				else {
-					status.text = "Output stream writing";
-					var today:Date = new Date();
-					var useContent:String = "("+String(writeCount)+") "+today.toString() + " " + contentField.text + "\n";
-					stream.writeText(useContent);
-				}
-			}
-			
-			private function handleSaveStreamComplete(event:FileEvent):void
-			{
-				trace("OUTPUT STREAM CLOSED");
-				status.text = "Output stream closed";
-			}
-			
-			private function handleSaveStreamError(event:FileErrorEvent):void
-			{
-				status.text = event.errorMessage;
-			}
-		]]>
-    </fx:Script>
-	
-	<fx:Style>
-	
-	.labelStyle {
-		color: #9999FF;
-	}
-	
-	.contentStyle {
-		font-size: 18pt;
-	}
-	
-	</fx:Style>
-	
-	<js:beads>
-		<js:ViewDataBinding />
-	</js:beads>
-	
-	<js:VContainer width="100%" height="100%">
-		<js:Label text="Storage Example" width="100%" />
-		<js:Spacer height="20" />
-		
-		<js:HContainer>
-			<js:Label text="Write File Name:" className="labelStyle" />
-			<js:TextInput id="writeFileNameField" text="testfile.txt" />
-		</js:HContainer>
-		<js:HContainer>
-			<js:Label text="Content:" className="labelStyle" />
-			<js:TextInput id="contentField" />
-		</js:HContainer>
-		<js:HContainer>
-			<js:TextButton text="SAVE" click="onSave()" />
-			<js:Spacer width="10" />
-			<js:TextButton text="SAVE STREAM" click="onSaveStream()" />
-		</js:HContainer>
-		<js:Spacer height="20" />
-		
-		<js:Label id="status" />
-		<js:Spacer height="20" />
-		
-		<js:HContainer>
-			<js:Label text="Read File Name:" className="labelStyle" />
-			<js:TextInput id="readFileNameField" text="testfile.txt" />
-		</js:HContainer>
-		<js:HContainer>
-			<js:TextButton text="READ" click="onRead()" />
-			<js:Spacer width="10" />
-			<js:TextButton text="READ STREAM" click="onReadStream()" />
-		</js:HContainer>
-		<js:HContainer>
-			<js:Label text="Content:" className="labelStyle" />
-		</js:HContainer>
-		<js:HContainer>
-			<js:Label id="readContent" className="contentStyle" />
-		</js:HContainer>
-	</js:VContainer>
-		
-
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StorageExample/src/StorageExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/StorageExample/src/StorageExample.mxml b/examples/flexjs/StorageExample/src/StorageExample.mxml
deleted file mode 100644
index 1b9842a..0000000
--- a/examples/flexjs/StorageExample/src/StorageExample.mxml
+++ /dev/null
@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!---
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-				   xmlns:local="*"
-				   xmlns:js="library://ns.apache.org/flexjs/basic" 
-				   >
-	
-	<!-- This application demonstrates how to use the Google MAP API
-	     on both the AIR and JavaScript/browser platform. After cross-
-	     compiling this application for JavaScript, edit the index.html
-	     file and include your Google developer API token.
-	-->
-	
-	<js:valuesImpl>
-		<js:SimpleCSSValuesImpl />
-	</js:valuesImpl>
-	<js:initialView>
-		<local:MyInitialView />
-	</js:initialView>
-	<js:beads>
-		<js:MixinManager />
-	</js:beads>
-	
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StorageExample/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/StorageExample/src/main/flex/MyInitialView.mxml b/examples/flexjs/StorageExample/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..370d0af
--- /dev/null
+++ b/examples/flexjs/StorageExample/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,245 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:js="library://ns.apache.org/flexjs/basic"
+				xmlns:local="*"
+				initComplete="startup()">
+    <fx:Script>
+        <![CDATA[			
+			import org.apache.flex.storage.PermanentStorage;
+			import org.apache.flex.storage.events.FileEvent;
+			import org.apache.flex.storage.events.FileErrorEvent;
+			import org.apache.flex.storage.file.IDataInput;
+			import org.apache.flex.storage.file.IDataOutput;
+			
+			private function startup():void
+			{
+				trace("Starting up");
+			}
+			
+			// READING - PLAIN
+			
+			private function onRead():void
+			{
+				var storage:PermanentStorage = new PermanentStorage();
+				
+				var useFile:String = readFileNameField.text;
+				
+				storage.addEventListener("READ", handleRead);
+				storage.addEventListener("ERROR", handleRead);
+				storage.readTextFromDataFile( useFile );
+			}
+			
+			private function handleRead(event:FileEvent):void
+			{
+				trace(event.data);
+				status.text = "Read Success!";
+				readContent.text = String(event.data);
+			}
+			
+			private function handleReadError(event:FileErrorEvent):void
+			{
+				status.text = "Error: "+event.errorMessage;
+				readContent.text = "";
+			}
+			
+			// READING - STREAM
+			
+			private function onReadStream():void
+			{
+				var storage:PermanentStorage = new PermanentStorage();
+				var useFile:String = readFileNameField.text;
+				
+				storage.addEventListener("READY", handleReadStreamReady);
+				storage.addEventListener("READ", handleReadStreamData);
+				storage.addEventListener("COMPLETE", handleReadStreamComplete);
+				storage.addEventListener("ERROR", handleReadStreamError);
+				storage.openInputDataStream(useFile);
+			}
+			
+			private function handleReadStreamReady(event:FileEvent):void
+			{
+				trace("INPUT STREAM READY");
+				
+				status.text = "Input stream ready";
+				
+				var stream:IDataInput = event.stream as IDataInput;
+				stream.readText();
+			}
+			
+			private function handleReadStreamData(event:FileEvent):void
+			{
+				trace("INPUT STREAM DATA.");
+				var stream:IDataInput = event.stream as IDataInput;
+				
+				status.text = "Input stream reading";
+				readContent.text = String(event.data);
+			}
+			
+			private function handleReadStreamComplete(event:FileEvent):void
+			{
+				trace("INPUT STREAM CLOSED");
+				status.text = "Input stream closed";
+			}
+			
+			private function handleReadStreamError(event:FileErrorEvent):void
+			{
+				status.text = event.errorMessage;
+			}
+			
+			// SAVING - PLAIN
+			
+			private function onSave():void
+			{
+				var storage:PermanentStorage = new PermanentStorage();
+				var today:Date = new Date();
+				
+				var useFile:String = writeFileNameField.text;
+				var useContent:String = today.toString() + " " + contentField.text;
+				
+				storage.addEventListener("WRITE", handleSave);
+				storage.writeTextToDataFile(useFile, useContent);
+			}
+			
+			private function handleSave(event:FileEvent):void
+			{
+				status.text = "Write Success!";
+			}
+			
+			private function handleSaveError(event:FileErrorEvent):void
+			{
+				status.text = "Error: "+event.errorMessage;
+			}
+			
+			// SAVING - STREAM
+						
+			private var writeCount:Number = 0;
+			
+			private function onSaveStream():void
+			{
+				var storage:PermanentStorage = new PermanentStorage();
+				var useFile:String = writeFileNameField.text;
+				
+				storage.addEventListener("READY", handleSaveStreamReady);
+				storage.addEventListener("WRITE", handleSaveStreamData);
+				storage.addEventListener("COMPLETE", handleSaveStreamComplete);
+				storage.addEventListener("ERROR", handleSaveStreamError);
+				storage.openOutputDataStream(useFile);
+			}
+			
+			private function handleSaveStreamReady(event:FileEvent):void
+			{
+				writeCount = 3;
+				trace("OUTPUT STREAM READY");
+				
+				status.text = "Output stream ready";
+				var today:Date = new Date();
+				var useContent:String = "("+String(writeCount)+") "+today.toString() + " " + contentField.text + "\n";
+				
+				var stream:IDataOutput = event.stream as IDataOutput;
+				stream.writeText(useContent);
+			}
+			
+			private function handleSaveStreamData(event:FileEvent):void
+			{
+				trace("OUTPUT STREAM DATA. Count = "+writeCount);
+				var stream:IDataOutput = event.stream as IDataOutput;
+				
+				if (--writeCount == 0) {
+					stream.close();
+				}
+				else {
+					status.text = "Output stream writing";
+					var today:Date = new Date();
+					var useContent:String = "("+String(writeCount)+") "+today.toString() + " " + contentField.text + "\n";
+					stream.writeText(useContent);
+				}
+			}
+			
+			private function handleSaveStreamComplete(event:FileEvent):void
+			{
+				trace("OUTPUT STREAM CLOSED");
+				status.text = "Output stream closed";
+			}
+			
+			private function handleSaveStreamError(event:FileErrorEvent):void
+			{
+				status.text = event.errorMessage;
+			}
+		]]>
+    </fx:Script>
+	
+	<fx:Style>
+	
+	.labelStyle {
+		color: #9999FF;
+	}
+	
+	.contentStyle {
+		font-size: 18pt;
+	}
+	
+	</fx:Style>
+	
+	<js:beads>
+		<js:ViewDataBinding />
+	</js:beads>
+	
+	<js:VContainer width="100%" height="100%">
+		<js:Label text="Storage Example" width="100%" />
+		<js:Spacer height="20" />
+		
+		<js:HContainer>
+			<js:Label text="Write File Name:" className="labelStyle" />
+			<js:TextInput id="writeFileNameField" text="testfile.txt" />
+		</js:HContainer>
+		<js:HContainer>
+			<js:Label text="Content:" className="labelStyle" />
+			<js:TextInput id="contentField" />
+		</js:HContainer>
+		<js:HContainer>
+			<js:TextButton text="SAVE" click="onSave()" />
+			<js:Spacer width="10" />
+			<js:TextButton text="SAVE STREAM" click="onSaveStream()" />
+		</js:HContainer>
+		<js:Spacer height="20" />
+		
+		<js:Label id="status" />
+		<js:Spacer height="20" />
+		
+		<js:HContainer>
+			<js:Label text="Read File Name:" className="labelStyle" />
+			<js:TextInput id="readFileNameField" text="testfile.txt" />
+		</js:HContainer>
+		<js:HContainer>
+			<js:TextButton text="READ" click="onRead()" />
+			<js:Spacer width="10" />
+			<js:TextButton text="READ STREAM" click="onReadStream()" />
+		</js:HContainer>
+		<js:HContainer>
+			<js:Label text="Content:" className="labelStyle" />
+		</js:HContainer>
+		<js:HContainer>
+			<js:Label id="readContent" className="contentStyle" />
+		</js:HContainer>
+	</js:VContainer>
+		
+
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StorageExample/src/main/flex/StorageExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/StorageExample/src/main/flex/StorageExample.mxml b/examples/flexjs/StorageExample/src/main/flex/StorageExample.mxml
new file mode 100644
index 0000000..1b9842a
--- /dev/null
+++ b/examples/flexjs/StorageExample/src/main/flex/StorageExample.mxml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				   xmlns:local="*"
+				   xmlns:js="library://ns.apache.org/flexjs/basic" 
+				   >
+	
+	<!-- This application demonstrates how to use the Google MAP API
+	     on both the AIR and JavaScript/browser platform. After cross-
+	     compiling this application for JavaScript, edit the index.html
+	     file and include your Google developer API token.
+	-->
+	
+	<js:valuesImpl>
+		<js:SimpleCSSValuesImpl />
+	</js:valuesImpl>
+	<js:initialView>
+		<local:MyInitialView />
+	</js:initialView>
+	<js:beads>
+		<js:MixinManager />
+	</js:beads>
+	
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StorageExample/src/main/flex/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/StorageExample/src/main/flex/models/MyModel.as b/examples/flexjs/StorageExample/src/main/flex/models/MyModel.as
new file mode 100644
index 0000000..e0dab68
--- /dev/null
+++ b/examples/flexjs/StorageExample/src/main/flex/models/MyModel.as
@@ -0,0 +1,58 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.core.IBeadModel;
+	import org.apache.flex.core.IStrand;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	
+	public class MyModel extends EventDispatcher implements IBeadModel
+	{
+		public function MyModel()
+		{
+			super();
+		}
+		
+		private var _strand:IStrand;
+		
+		public function set strand(value:IStrand):void
+		{
+			_strand = value;
+		}
+		
+		private var _cities:Array = ["Sydney", "NYC", "Mexico City", "London", "Rio de Janeiro"];
+		
+		[Bindable]
+		public function get cities():Array
+		{
+			return _cities;
+		}
+		
+		private var _coordinates:Array = [{lat:-33.86, lng:151.211},
+			{lat:40.712, lng:-74.0059},
+			{lat:19.26, lng:-99.03},
+			{lat:51.4, lng:-0.1},
+			{lat:-22.95, lng:-43.12}];
+		public function get coordinates():Array
+		{
+			return _coordinates;
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StorageExample/src/main/resources/config.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/StorageExample/src/main/resources/config.xml b/examples/flexjs/StorageExample/src/main/resources/config.xml
new file mode 100644
index 0000000..00b9f64
--- /dev/null
+++ b/examples/flexjs/StorageExample/src/main/resources/config.xml
@@ -0,0 +1,44 @@
+<?xml version='1.0' encoding='utf-8'?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You 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.
+
+-->
+<widget id="${groupId}.${artifactId}" version="${version}" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+    <name>${artifactId}</name>
+    <description>
+        ${description}
+    </description>
+    <author email="dev@flex.apache.org" href="http://flex.apache.org">
+        Apache Flex Team
+    </author>
+    <content src="index.html" />
+    <plugin name="cordova-plugin-whitelist" version="1" />
+    <access origin="*" />
+    <allow-intent href="http://*/*" />
+    <allow-intent href="https://*/*" />
+    <allow-intent href="tel:*" />
+    <allow-intent href="sms:*" />
+    <allow-intent href="mailto:*" />
+    <allow-intent href="geo:*" />
+    <platform name="android">
+        <allow-intent href="market:*" />
+    </platform>
+    <platform name="ios">
+        <allow-intent href="itms:*" />
+        <allow-intent href="itms-apps:*" />
+    </platform>
+</widget>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StorageExample/src/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/StorageExample/src/models/MyModel.as b/examples/flexjs/StorageExample/src/models/MyModel.as
deleted file mode 100644
index e0dab68..0000000
--- a/examples/flexjs/StorageExample/src/models/MyModel.as
+++ /dev/null
@@ -1,58 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.core.IBeadModel;
-	import org.apache.flex.core.IStrand;
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	
-	public class MyModel extends EventDispatcher implements IBeadModel
-	{
-		public function MyModel()
-		{
-			super();
-		}
-		
-		private var _strand:IStrand;
-		
-		public function set strand(value:IStrand):void
-		{
-			_strand = value;
-		}
-		
-		private var _cities:Array = ["Sydney", "NYC", "Mexico City", "London", "Rio de Janeiro"];
-		
-		[Bindable]
-		public function get cities():Array
-		{
-			return _cities;
-		}
-		
-		private var _coordinates:Array = [{lat:-33.86, lng:151.211},
-			{lat:40.712, lng:-74.0059},
-			{lat:19.26, lng:-99.03},
-			{lat:51.4, lng:-0.1},
-			{lat:-22.95, lng:-43.12}];
-		public function get coordinates():Array
-		{
-			return _coordinates;
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StyleExample/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/StyleExample/src/MyInitialView.mxml b/examples/flexjs/StyleExample/src/MyInitialView.mxml
deleted file mode 100644
index 944d9ea..0000000
--- a/examples/flexjs/StyleExample/src/MyInitialView.mxml
+++ /dev/null
@@ -1,427 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-		 xmlns:js="library://ns.apache.org/flexjs/basic"
-		 xmlns:local="org.apache.flex.html.*"
-		 initComplete="onComplete()">
-	<fx:Script>
-		<![CDATA[
-			import models.MyModel;
-			
-			private function onComplete() : void {
-				dropDown.dataProvider = MyModel(applicationModel).strings;
-				list.dataProvider = MyModel(applicationModel).strings;
-				dataGrid.dataProvider = MyModel(applicationModel).gridData;
-			}
-			
-			private function listChanged():void {
-				var index:Number = list.selectedIndex;
-				listOutput.text = "Selected: "+index;
-			}
-		]]>
-	</fx:Script>
-	
-		<fx:Style>
-		@namespace js "library://ns.apache.org/flexjs/basic";
-		@namespace internal "org.apache.flex.html.supportClasses.*"; 
-		
-		/*
-		* TextButton
-		*/
-		
-		js|TextButton {
-			border-radius : 6px ;
-			font-weight : normal ;
-			line-height : 1.4 ;
-			color : #00A3EE ;
-			background-color : transparent ;
-			border : none ;
-			font-size : 15px ;
-			padding : 5px ;
-		}
-		
-		js|TextButton:hover {
-			background-color: #CFCFCF;
-			vertical-align: middle;
-			border: none;
-			border-radius: 6px;
-		}
-		
-		js|TextButton:active {
-			background-color: #77CEFF;
-			color: #FFFFFF;
-		}
-		
-		/*
-		* TextInput
-		*/
-		
-		js|TextInput {
-			padding: 5px;
-			border: solid 1px #666666;
-			border-radius: 6px;
-			color: #333333;
-		}
-		
-		js|TextInput:hover {
-			padding: 5px;
-			background-color: #DFDFDF;
-		}
-		
-		/*
-		* CheckBox
-		*/
-		
-		js|CheckBox {
-			position : relative ;
-			vertical-align : middle ;
-			color : #333333 ;
-			font-size : 14px ;
-		}
-		
-		internal|CheckBoxIcon {
-			margin-right: 8px;
-		}
-		
-		js|CheckBox:hover {
-			position : relative ;
-			vertical-align : middle ;
-			color : #666666 ;
-			font-size : 14px ;
-		}
-		
-		/*
-		* RadioButton
-		*/
-		
-		js|RadioButton {
-			position: relative;
-			vertical-align: middle;
-			color: #333333;
-			font-size: 14px;
-		}
-		
-		internal|RadioButtonIcon {
-			margin-right: 8px;
-		}
-		
-		js|RadioButton:hover {
-			position: relative;
-			vertical-align: middle;
-			color: #666666;
-			font-size: 14px;
-		}
-		
-		/*
-		* Label
-		*/
-		
-		js|Label {
-			font-size: 14pt;
-			font-weight: regular;
-			color: #333333;
-			position: relative;
-		}
-		
-		/*
-		* DateChooser
-		*/
-		
-		.dc {
-			box-shadow: 1px 4px 8px gray;
-			padding: 10px;
-		}
-		
-		js|DateChooser {
-			background-color: #FFFFFF;
-			padding: 8px;
-			border: solid 1px #EEEEEE;
-			border-radius: 8px;
-			overflow: hidden;
-			box-shadow: 1px 4px 8px gray;
-		}
-			
-@media -flex-flash
-{
-	js|DateChooser {
-		iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
-		iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
-		border-style: solid;
-		border-color: #000000;
-		border-width: 1px;
-		background-color: #FFFFFF;
-	}
-}
-		
-		
-		internal|DateChooserButton {
-			border-radius : 0px ;
-			background-color : #FFFFFF ;
-			color: #333333;
-			border : none ;
-			font-size : 10px ;
-			padding : 1px ;
-		}
-		
-		
-		internal|DateChooserButton:hover {
-			border-radius : 0px ;
-			background-color : #CFCFCF ;
-			color: #333333;
-			border : none ;
-			padding : 1px ;
-		}
-		
-		internal|DateChooserButton:active {
-			background-color: #77CEFF;
-			color: #FFFFFF;
-		}
-		
-		#todayDateChooserButton {
-			background-color: #FFFFFF;
-			color: #333333;
-			border: solid 1px #77CEFF;
-		}
-		
-		#todayDateChooserButton:hover {
-			background-color : #CFCFCF ;
-			color: #333333;
-		}
-		
-		#todayDateChooserButton:active {
-			background-color: #77CEFF;
-			color: #FFFFFF;
-		}
-		
-		
-		internal|DateHeaderButton {
-			border-radius : 0px ;
-			font-weight : bold ;
-			background-color : #FFFFFF ;
-			color: #333333;
-			border : none ;
-			padding : 1px ;
-			font-size : 12px ;
-		}
-		
-		
-		internal|DateHeaderButton:hover {
-			border-radius : 0px ;
-			background-color : #CFCFCF ;
-			color: #333333;
-			border : none ;
-			padding : 1px ;
-		}
-		
-		internal|DateHeaderButton:active {
-			background-color: #77CEFF;
-			color: #FFFFFF;
-		}
-		
-		/*
-		* NumberStepper and Spinner
-		*/
-		
-		internal|NumericStepperInput {
-			padding: 5px;
-			background-color: #FFFFFF;
-			color: #333333;
-			margin-right: 8px;
-		}
-		
-		internal|NumericStepperInput:hover {
-			background-color: #DFDFDF;
-		}
-		
-		internal|SpinnerButton {
-			background-color: transparent;
-			font-size: 7pt;
-			display: block;
-			padding: 0px;
-		}
-		
-		internal|SpinnerButton:hover {
-			background-color: #DFDFDF;
-			font-size: 7pt;
-			display: block;
-			padding: 0px;
-		}
-			
-		/*
-		* List
-		*/
-		
-		js|List {
-			background-color: #FFFFFF;
-			padding: 0px;
-			border: solid 1px #EEEEEE;
-			border-radius: 8px;
-			overflow: hidden;
-			box-shadow: 1px 4px 8px gray;
-		}
-		
-@media -flex-flash
-{
-	js|List {
-		iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
-		iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
-		border-style: solid;
-		border-color: #000000;
-		border-width: 1px;
-		background-color: #FFFFFF;
-		padding: 8px;
-	}
-}
-	.ListDataGroup {
-		padding: 8px;
-	}
-
-	js|StringItemRenderer {
-		padding: 2px;
-		font-size: 10pt;
-		color: #333333;
-	}
-			
-	js|StringItemRenderer:hover {
-		background-color: #CFCFCF;
-		color: #333333;
-	}
-	
-	js|StringItemRenderer:active {
-		background-color: #77CEFF;
-		color: #FFFFFF;
-	}
-	
-	js|StringItemRenderer.selected {
-		background-color: #77CEFF;
-		color: #FFFFFF;
-	}
-	
-@media -flex-flash
-{
-	js|StringItemRenderer:selected {
-		background-color: #77CEFF;
-		color: #FFFFFF;
-	}
-}
-	
-	/*
-	 * DataGrid
-	 */
-	
-	js|DataGrid {
-		background-color: white;
-		border: solid 1px #EEEEEE;
-		border-radius: 8px;
-		box-shadow : 1px 4px 8px gray ;
-	}
-	
-@media -flex-flash
-{
-    js|DataGrid {
-    	iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
-		iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
-		border-style: solid;
-		border-color: #000000;
-		border-width: 1px;
-		background-color: #FFCC00;
-		padding: 8px;
-	}
-}
-
-	.DataGridListArea {
-		background-color: transparent;
-		border: none;
-		overflow: hidden;
-	}
-	
-	js|DataGridButtonBarTextButton {
-		border-style: none;
-		background-color: transparent;
-		text-align: center;
-		font-size: 14pt;
-		color: #77CEFF;
-	}
-	
-	js|DataGridButtonBarTextButton:hover {
-		border-style: none;
-		background-color: transparent;
-		color: #77CEFF;
-	}
-	
-	.yellow {
-		background-color: #FFFF00;
-		vertical-align: middle;
-	}
-	
-	.centeredLabel {
-		line-height: 100px;
-	}
-	</fx:Style>
-	
-	<js:beads>
-		<js:ViewDataBinding />
-	</js:beads>
-	
-	<js:VContainer x="50" y="50" width="400" height="400" className="foo">
-		
-		<js:TextInput text="Input here" width="200" />
-		<js:Spacer height="20" />
-		
-		<js:HContainer>
-			<js:TextButton text="Default Button" width="120" height="40"/>
-			<js:Spacer width="10" />
-			<js:DropDownList id="dropDown" width="100" />
-			<js:Spacer width="10" />
-			<js:NumericStepper id="nstep" />
-		</js:HContainer>
-		<js:Spacer height="20" />
-		
-		<js:CheckBox text="Check Me, please!" />
-		<js:Spacer height="20" />
-		<js:RadioButton text="Apples" groupName="fruits" value="1" selected="true" />
-		<js:RadioButton text="Oranges" groupName="fruits" value="2" />
-		<js:RadioButton text="Grapes" groupName="fruits" value="3" />
-		<js:RadioButton text="Bananas" groupName="fruits" value="4" />
-	
-		<js:Spacer height="10" />
-		<js:Label id="output" text="An Example of a Label" />
-		
-		<js:Spacer height="20" />
-		<js:DateChooser />
-		
-		<js:Spacer height="20" />
-		<js:HContainer width="400">
-			<js:List id="list" width="100" height="100" change="listChanged()" />
-			<js:Spacer width="10" />
-			<js:Label id="listOutput" width="90" height="100" className="centeredLabel" />
-		</js:HContainer>
-		
-		<js:Spacer height="20" />
-		<js:DataGrid id="dataGrid" width="300" height="300">
-			<js:columns>
-				<js:DataGridColumn dataField="month" label="Month" />
-				<js:DataGridColumn dataField="days" label="# Days" />
-			</js:columns>
-		</js:DataGrid>
-		
-	</js:VContainer>
-	
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StyleExample/src/StyleExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/StyleExample/src/StyleExample.mxml b/examples/flexjs/StyleExample/src/StyleExample.mxml
deleted file mode 100644
index f7c5584..0000000
--- a/examples/flexjs/StyleExample/src/StyleExample.mxml
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-                   xmlns:local="*"
-                   xmlns:js="library://ns.apache.org/flexjs/basic" 
-                   xmlns:models="models.*" 
-                   >
-    <js:valuesImpl>
-        <js:SimpleCSSValuesImpl />
-    </js:valuesImpl>
-    <js:initialView>
-        <local:MyInitialView />
-    </js:initialView>
-    <js:model>
-        <models:MyModel />
-    </js:model>
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StyleExample/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/StyleExample/src/main/flex/MyInitialView.mxml b/examples/flexjs/StyleExample/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..944d9ea
--- /dev/null
+++ b/examples/flexjs/StyleExample/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,427 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+		 xmlns:js="library://ns.apache.org/flexjs/basic"
+		 xmlns:local="org.apache.flex.html.*"
+		 initComplete="onComplete()">
+	<fx:Script>
+		<![CDATA[
+			import models.MyModel;
+			
+			private function onComplete() : void {
+				dropDown.dataProvider = MyModel(applicationModel).strings;
+				list.dataProvider = MyModel(applicationModel).strings;
+				dataGrid.dataProvider = MyModel(applicationModel).gridData;
+			}
+			
+			private function listChanged():void {
+				var index:Number = list.selectedIndex;
+				listOutput.text = "Selected: "+index;
+			}
+		]]>
+	</fx:Script>
+	
+		<fx:Style>
+		@namespace js "library://ns.apache.org/flexjs/basic";
+		@namespace internal "org.apache.flex.html.supportClasses.*"; 
+		
+		/*
+		* TextButton
+		*/
+		
+		js|TextButton {
+			border-radius : 6px ;
+			font-weight : normal ;
+			line-height : 1.4 ;
+			color : #00A3EE ;
+			background-color : transparent ;
+			border : none ;
+			font-size : 15px ;
+			padding : 5px ;
+		}
+		
+		js|TextButton:hover {
+			background-color: #CFCFCF;
+			vertical-align: middle;
+			border: none;
+			border-radius: 6px;
+		}
+		
+		js|TextButton:active {
+			background-color: #77CEFF;
+			color: #FFFFFF;
+		}
+		
+		/*
+		* TextInput
+		*/
+		
+		js|TextInput {
+			padding: 5px;
+			border: solid 1px #666666;
+			border-radius: 6px;
+			color: #333333;
+		}
+		
+		js|TextInput:hover {
+			padding: 5px;
+			background-color: #DFDFDF;
+		}
+		
+		/*
+		* CheckBox
+		*/
+		
+		js|CheckBox {
+			position : relative ;
+			vertical-align : middle ;
+			color : #333333 ;
+			font-size : 14px ;
+		}
+		
+		internal|CheckBoxIcon {
+			margin-right: 8px;
+		}
+		
+		js|CheckBox:hover {
+			position : relative ;
+			vertical-align : middle ;
+			color : #666666 ;
+			font-size : 14px ;
+		}
+		
+		/*
+		* RadioButton
+		*/
+		
+		js|RadioButton {
+			position: relative;
+			vertical-align: middle;
+			color: #333333;
+			font-size: 14px;
+		}
+		
+		internal|RadioButtonIcon {
+			margin-right: 8px;
+		}
+		
+		js|RadioButton:hover {
+			position: relative;
+			vertical-align: middle;
+			color: #666666;
+			font-size: 14px;
+		}
+		
+		/*
+		* Label
+		*/
+		
+		js|Label {
+			font-size: 14pt;
+			font-weight: regular;
+			color: #333333;
+			position: relative;
+		}
+		
+		/*
+		* DateChooser
+		*/
+		
+		.dc {
+			box-shadow: 1px 4px 8px gray;
+			padding: 10px;
+		}
+		
+		js|DateChooser {
+			background-color: #FFFFFF;
+			padding: 8px;
+			border: solid 1px #EEEEEE;
+			border-radius: 8px;
+			overflow: hidden;
+			box-shadow: 1px 4px 8px gray;
+		}
+			
+@media -flex-flash
+{
+	js|DateChooser {
+		iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
+		iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
+		border-style: solid;
+		border-color: #000000;
+		border-width: 1px;
+		background-color: #FFFFFF;
+	}
+}
+		
+		
+		internal|DateChooserButton {
+			border-radius : 0px ;
+			background-color : #FFFFFF ;
+			color: #333333;
+			border : none ;
+			font-size : 10px ;
+			padding : 1px ;
+		}
+		
+		
+		internal|DateChooserButton:hover {
+			border-radius : 0px ;
+			background-color : #CFCFCF ;
+			color: #333333;
+			border : none ;
+			padding : 1px ;
+		}
+		
+		internal|DateChooserButton:active {
+			background-color: #77CEFF;
+			color: #FFFFFF;
+		}
+		
+		#todayDateChooserButton {
+			background-color: #FFFFFF;
+			color: #333333;
+			border: solid 1px #77CEFF;
+		}
+		
+		#todayDateChooserButton:hover {
+			background-color : #CFCFCF ;
+			color: #333333;
+		}
+		
+		#todayDateChooserButton:active {
+			background-color: #77CEFF;
+			color: #FFFFFF;
+		}
+		
+		
+		internal|DateHeaderButton {
+			border-radius : 0px ;
+			font-weight : bold ;
+			background-color : #FFFFFF ;
+			color: #333333;
+			border : none ;
+			padding : 1px ;
+			font-size : 12px ;
+		}
+		
+		
+		internal|DateHeaderButton:hover {
+			border-radius : 0px ;
+			background-color : #CFCFCF ;
+			color: #333333;
+			border : none ;
+			padding : 1px ;
+		}
+		
+		internal|DateHeaderButton:active {
+			background-color: #77CEFF;
+			color: #FFFFFF;
+		}
+		
+		/*
+		* NumberStepper and Spinner
+		*/
+		
+		internal|NumericStepperInput {
+			padding: 5px;
+			background-color: #FFFFFF;
+			color: #333333;
+			margin-right: 8px;
+		}
+		
+		internal|NumericStepperInput:hover {
+			background-color: #DFDFDF;
+		}
+		
+		internal|SpinnerButton {
+			background-color: transparent;
+			font-size: 7pt;
+			display: block;
+			padding: 0px;
+		}
+		
+		internal|SpinnerButton:hover {
+			background-color: #DFDFDF;
+			font-size: 7pt;
+			display: block;
+			padding: 0px;
+		}
+			
+		/*
+		* List
+		*/
+		
+		js|List {
+			background-color: #FFFFFF;
+			padding: 0px;
+			border: solid 1px #EEEEEE;
+			border-radius: 8px;
+			overflow: hidden;
+			box-shadow: 1px 4px 8px gray;
+		}
+		
+@media -flex-flash
+{
+	js|List {
+		iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
+		iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
+		border-style: solid;
+		border-color: #000000;
+		border-width: 1px;
+		background-color: #FFFFFF;
+		padding: 8px;
+	}
+}
+	.ListDataGroup {
+		padding: 8px;
+	}
+
+	js|StringItemRenderer {
+		padding: 2px;
+		font-size: 10pt;
+		color: #333333;
+	}
+			
+	js|StringItemRenderer:hover {
+		background-color: #CFCFCF;
+		color: #333333;
+	}
+	
+	js|StringItemRenderer:active {
+		background-color: #77CEFF;
+		color: #FFFFFF;
+	}
+	
+	js|StringItemRenderer.selected {
+		background-color: #77CEFF;
+		color: #FFFFFF;
+	}
+	
+@media -flex-flash
+{
+	js|StringItemRenderer:selected {
+		background-color: #77CEFF;
+		color: #FFFFFF;
+	}
+}
+	
+	/*
+	 * DataGrid
+	 */
+	
+	js|DataGrid {
+		background-color: white;
+		border: solid 1px #EEEEEE;
+		border-radius: 8px;
+		box-shadow : 1px 4px 8px gray ;
+	}
+	
+@media -flex-flash
+{
+    js|DataGrid {
+    	iBorderBead: ClassReference('org.apache.flex.html.beads.SingleLineBorderBead');
+		iBackgroundBead: ClassReference('org.apache.flex.html.beads.SolidBackgroundBead');
+		border-style: solid;
+		border-color: #000000;
+		border-width: 1px;
+		background-color: #FFCC00;
+		padding: 8px;
+	}
+}
+
+	.DataGridListArea {
+		background-color: transparent;
+		border: none;
+		overflow: hidden;
+	}
+	
+	js|DataGridButtonBarTextButton {
+		border-style: none;
+		background-color: transparent;
+		text-align: center;
+		font-size: 14pt;
+		color: #77CEFF;
+	}
+	
+	js|DataGridButtonBarTextButton:hover {
+		border-style: none;
+		background-color: transparent;
+		color: #77CEFF;
+	}
+	
+	.yellow {
+		background-color: #FFFF00;
+		vertical-align: middle;
+	}
+	
+	.centeredLabel {
+		line-height: 100px;
+	}
+	</fx:Style>
+	
+	<js:beads>
+		<js:ViewDataBinding />
+	</js:beads>
+	
+	<js:VContainer x="50" y="50" width="400" height="400" className="foo">
+		
+		<js:TextInput text="Input here" width="200" />
+		<js:Spacer height="20" />
+		
+		<js:HContainer>
+			<js:TextButton text="Default Button" width="120" height="40"/>
+			<js:Spacer width="10" />
+			<js:DropDownList id="dropDown" width="100" />
+			<js:Spacer width="10" />
+			<js:NumericStepper id="nstep" />
+		</js:HContainer>
+		<js:Spacer height="20" />
+		
+		<js:CheckBox text="Check Me, please!" />
+		<js:Spacer height="20" />
+		<js:RadioButton text="Apples" groupName="fruits" value="1" selected="true" />
+		<js:RadioButton text="Oranges" groupName="fruits" value="2" />
+		<js:RadioButton text="Grapes" groupName="fruits" value="3" />
+		<js:RadioButton text="Bananas" groupName="fruits" value="4" />
+	
+		<js:Spacer height="10" />
+		<js:Label id="output" text="An Example of a Label" />
+		
+		<js:Spacer height="20" />
+		<js:DateChooser />
+		
+		<js:Spacer height="20" />
+		<js:HContainer width="400">
+			<js:List id="list" width="100" height="100" change="listChanged()" />
+			<js:Spacer width="10" />
+			<js:Label id="listOutput" width="90" height="100" className="centeredLabel" />
+		</js:HContainer>
+		
+		<js:Spacer height="20" />
+		<js:DataGrid id="dataGrid" width="300" height="300">
+			<js:columns>
+				<js:DataGridColumn dataField="month" label="Month" />
+				<js:DataGridColumn dataField="days" label="# Days" />
+			</js:columns>
+		</js:DataGrid>
+		
+	</js:VContainer>
+	
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StyleExample/src/main/flex/StyleExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/StyleExample/src/main/flex/StyleExample.mxml b/examples/flexjs/StyleExample/src/main/flex/StyleExample.mxml
new file mode 100644
index 0000000..f7c5584
--- /dev/null
+++ b/examples/flexjs/StyleExample/src/main/flex/StyleExample.mxml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+                   xmlns:local="*"
+                   xmlns:js="library://ns.apache.org/flexjs/basic" 
+                   xmlns:models="models.*" 
+                   >
+    <js:valuesImpl>
+        <js:SimpleCSSValuesImpl />
+    </js:valuesImpl>
+    <js:initialView>
+        <local:MyInitialView />
+    </js:initialView>
+    <js:model>
+        <models:MyModel />
+    </js:model>
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/StyleExample/src/main/flex/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/StyleExample/src/main/flex/models/MyModel.as b/examples/flexjs/StyleExample/src/main/flex/models/MyModel.as
new file mode 100644
index 0000000..20ab016
--- /dev/null
+++ b/examples/flexjs/StyleExample/src/main/flex/models/MyModel.as
@@ -0,0 +1,53 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.collections.ArrayList;
+	import org.apache.flex.collections.IArrayList;
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+
+	public class MyModel extends EventDispatcher
+	{
+		public function MyModel()
+		{
+		}
+
+        private var _strings:Array = ["AAPL", "ADBE", "FX", "GOOG", "MSFT", "NYSE", "YHOO"];
+        [Bindable("__NoChangeEvent__")]
+        public function get strings():Array
+        {
+            return _strings;
+        }
+
+        private var _gridData:ArrayList = new ArrayList([
+			{month:"January", days:31}, {month:"February", days:28},
+			{month:"March", days:31}, {month:"April", days:30},
+			{month:"May", days:31}, {month:"June", days:30},
+			{month:"July", days:31}, {month:"August", days:31},
+			{month:"September", days:30}, {month:"October", days:31},
+			{month:"November", days:30}, {month:"December", days:31}]);
+		[Bindable("__NoChangeEvent__")]
+		public function get gridData():IArrayList
+		{
+			return _gridData;
+		}
+
+	}
+}


[45/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - move import into conditional code

Posted by ca...@apache.org.
move import into conditional code


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/3acf0704
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/3acf0704
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/3acf0704

Branch: refs/heads/feature/mdl
Commit: 3acf07042913995f01121386be61d2898ca37685
Parents: 9b6e60c
Author: Alex Harui <ah...@apache.org>
Authored: Wed Nov 9 11:40:16 2016 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Wed Nov 9 11:44:39 2016 -0800

----------------------------------------------------------------------
 .../Core/src/main/flex/org/apache/flex/utils/PointUtils.as         | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3acf0704/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/PointUtils.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/PointUtils.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/PointUtils.as
index 8b7b9e2..96d590e 100644
--- a/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/PointUtils.as
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/PointUtils.as
@@ -22,11 +22,11 @@ package org.apache.flex.utils
     {
         import flash.display.DisplayObject;
         import flash.geom.Point;
+	    import flash.display.Stage;
     }
     
     import org.apache.flex.core.IUIBase;
     import org.apache.flex.geom.Point;
-    import flash.display.Stage;
 
 	/**
 	 *  The PointUtils class is a collection of static functions that convert


[06/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogThumbnail.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogThumbnail.mxml b/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogThumbnail.mxml
deleted file mode 100755
index 7b415da..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductCatalogThumbnail.mxml
+++ /dev/null
@@ -1,220 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
-                   xmlns:js="library://ns.apache.org/flexjs/basic" 
-    width="{COL_WIDTH_4}" height="{COL_HEIGHT_4}" height.compare="502"
-    width.x4cols="{COL_WIDTH_4}" height.x4cols="{COL_HEIGHT_4}"
-    width.x3cols="{COL_WIDTH_3}" height.x3cols="{COL_HEIGHT_3}"
-    width.x2cols="{COL_WIDTH_2}" height.x2cols="{COL_HEIGHT_2}"
-    rollOver="rollOverHandler(event)"
-    rollOut="rollOutHandler(event)"
-    mouseDown="mouseDownHandler(event)"
-    mouseMove="mouseMoveHandler(event)"
-    mouseUp="mouseUpHandler(event)"
-    click="clickHandler(event)"
-    currentState="x4cols"
-    >
-    <!-- automationName="{product.name}" -->
-    <js:beads>
-        <js:ContainerDataBinding />
-        <js:LayoutChangeNotifier watchedProperty="{borderStyles.borderColor}" initialValue="#FFFFFF" />
-    </js:beads>
-    <js:style>
-        <js:BindableCSSStyles id="borderStyles" borderStyle="solid" borderWidth="1"
-                               borderColor="#FFFFFF" backgroundColor="#FFFFFF"/>
-    </js:style>
-    <fx:Metadata>
-        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="details", type="samples.flexstore.ProductThumbEvent")]
-    </fx:Metadata>
-
-    <fx:Script>
-        <![CDATA[
-
-		import org.apache.flex.events.*;
-        import org.apache.flex.utils.PointUtils;
-            
-        import samples.flexstore.Product;
-        import samples.flexstore.ProductThumbEvent;
-        
-        public static const COL_WIDTH_4:int = 162;
-        public static const COL_HEIGHT_4:int = 122;
-        public static const COL_WIDTH_3:int = 217;
-        public static const COL_HEIGHT_3:int = 165;
-        public static const COL_WIDTH_2:int = 327;
-        public static const COL_HEIGHT_2:int = 250;
-        public static const COMPARE_WIDTH:int = 162;
-        public static const HORIZONTAL_GAP:int = 2;
-        public static const VERTICAL_GAP:int = 3;
-
-        [Bindable]
-        public var product:Product;
-
-        private function rollOverHandler(event:MouseEvent):void
-		{
-            borderStyles.borderColor = "#CCCCCC";
-            //style["dropShadowEnabled"] = true;
-            buttons.visible = true;
-        }
-
-        private function rollOutHandler(event:MouseEvent):void
-		{
-            borderStyles.borderColor = "#FFFFFF";
-            //style["dropShadowEnabled"] = false;
-			buttons.visible = false;
-        }
-
-        private var dragStartPoint:Point;
-
-        public function mouseDownHandler(event:MouseEvent):void
-        {
-            if (event.target != purchase &&
-                event.target != compare &&
-                event.target != details)
-            {
-                dragStartPoint = new Point(event.clientX, event.clientY);
-            }
-        }
-
-        public function mouseMoveHandler(event:MouseEvent):void
-        {
-            if (dragStartPoint != null)
-            {
-                var dragEvent:DragEvent = new DragEvent(DragEvent.DRAG_START, true);
-                dragEvent.clientX = dragStartPoint.x;
-                dragEvent.clientY = dragStartPoint.y;
-                dragEvent.buttonDown = true;
-                dispatchEvent(dragEvent);
-
-                rollOutHandler(event);
-
-                dragStartPoint = null;
-            }
-        }
-
-        public function mouseUpHandler(event:MouseEvent):void
-        {
-            if (dragStartPoint != null)
-            {
-                dragStartPoint = null;
-            }
-        }
-
-        public function clickHandler(event:org.apache.flex.events.MouseEvent):void
-        {
-            if (event.target != purchase &&
-                event.target != compare &&
-                event.target != details)
-            {
-                dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product));
-            }
-        }
-
-	]]>
-    </fx:Script>
-    <fx:Declarations>
-        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
-    </fx:Declarations>
-
-    <js:VContainer id="vb" width="100%" height="100%">
-        <js:style>
-            <js:SimpleCSSStyles paddingLeft="6" paddingTop="4" paddingRight="8" paddingBottom="4" />
-                                 <!--  gap="0">  -->
-        </js:style>
-        
-
-        <js:Label text="{product.name}" style="fontWeight:bold"/>
-
-        <js:HContainer width="100%" >
-            <js:style>
-                <js:SimpleCSSStyles paddingTop="0" /> <!-- gap="4 -->"
-            </js:style>
-
-            <js:Image id="img" height="45" width="45" 
-                     width.x3cols="60" height.x3cols="60"
-                     width.x2cols="60" height.x2cols="60"
-                     source="{product.image}" />
-
-            <js:VContainer id="descr" height="100%" >
-                <js:style>
-                    <js:SimpleCSSStyles paddingTop="0" right="0" /> <!--  gap="0"  -->
-                </js:style>
-                <js:Label text="{product.featureString}" width="60" height="48" />
-                <js:Label text="{cf.format(product.price)}" style="fontWeight:bold"/>
-				<js:Spacer height="4"/>
-                <js:Label text="{product.highlight1}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
-                <js:Label text="{product.highlight2}" style="color:#EE8D0C" includeIn="x3cols, x2cols"/>
-            </js:VContainer>
-
-        </js:HContainer>
-
-        <js:Spacer height="8"/>
-
-        <js:Label id="compYears" text="Years: {product.experience}" includeIn="compare"/>
-        <js:Label id="compBlaze" text="BlazeDS: {product.blazeds}" includeIn="compare"/>
-        <js:Label id="compMobile" text="Mobile: {product.mobile}" includeIn="compare"/>
-        <js:Label id="compVideo" text="Video: {product.video}" includeIn="compare"/>
-        <js:Label id="compHigh1" text="Highlight: {product.highlight1}" includeIn="compare"/>
-        <js:Label id="compHigh2" text="Highlight: {product.highlight2}" includeIn="compare"/>
-        <js:Label text="Description:" includeIn="compare"/>
-        <js:MultilineLabel id="compDesc" text="{product.description}" width="100%" includeIn="compare"/>
-    </js:VContainer>
-
-
-    <js:VContainer id="buttons" visible="false" width="30">
-        <js:style>
-            <js:SimpleCSSStyles paddingRight="8" right="8" top="12" /> <!-- gap="4" -->
-        </js:style>
-        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" className="hoverButton"
-            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" 
-            width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Add to cart"/>
-            </js:beads>
-        </js:ImageButton>
-        <js:ImageButton id="compare" source="assets/button_compare.png" className="hoverButton"
-            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" 
-            width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Add to compare list"/>
-            </js:beads>
-        </js:ImageButton>
-        <js:ImageButton id="details" source="assets/button_details.png" className="hoverButton"
-            click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.DETAILS, product))" 
-            width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Show details"/>
-            </js:beads>
-        </js:ImageButton>
-    </js:VContainer>
-
-    <js:states>
-
-        <js:State name="compare" />
-
-        <js:State name="x4cols" />
-
-        <js:State name="x3cols" />
-
-        <js:State name="x2cols"/>
-    </js:states>
-
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductDetails.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductDetails.mxml b/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductDetails.mxml
deleted file mode 100755
index fa32497..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductDetails.mxml
+++ /dev/null
@@ -1,145 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
-                 xmlns:js="library://ns.apache.org/flexjs/basic" 
-    xmlns:productsView="productsView.*"
-    >
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-
-    <fx:Metadata>
-        [Event(name="purchase", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="compare", type="samples.flexstore.ProductThumbEvent")]
-        [Event(name="browse", type="samples.flexstore.ProductThumbEvent")]
-    </fx:Metadata>
-
-    <fx:Script>
-        <![CDATA[
-
-		import samples.flexstore.Product;
-		import samples.flexstore.ProductThumbEvent;
-
-        private var _product:Product;
-        
-        [Bindable]
-        public function get product():Product
-        {
-            return _product;
-        }
-        
-        public function set product(p:Product):void
-        {
-            _product = p;
-            tn.selectedIndex = 0;
-        }
-        
-	]]>
-    </fx:Script>
-
-    <fx:Declarations>
-        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>        
-    </fx:Declarations>
-
-    <js:states>
-        <js:State name="Features" />
-        <js:State name="Support" />
-    </js:states>
-    
-    <js:transitions>
-        <js:Transition>
-            <js:Fade />
-        </js:Transition>
-    </js:transitions>
-    
-    <js:ButtonBar id="tn" width="100%" change="currentState = tn.selectedItem as String">
-        <js:dataProvider>
-            <fx:Array>
-                <fx:String>Features</fx:String>
-                <fx:String>Support</fx:String>
-            </fx:Array>
-        </js:dataProvider>
-    </js:ButtonBar>
-    <js:Container >
-        <js:style>
-            <js:SimpleCSSStyles left="4" right="8" top="34" bottom="4" />
-        </js:style>
-                    
-
-        <js:VContainer includeIn="Features" >
-            <js:style>
-                <!--<js:SimpleCSSStyles gap="8"-->
-                <js:SimpleCSSStyles
-                    left="8" top="8" right="8" bottom="8"/>
-            </js:style>
-            <js:Container style="left:0px;right:0px">
-
-                <js:Image id="img" width="101" height="101" source="{product.image}"/>
-
-                <js:VContainer id="descr" >
-                    <js:style>
-                        <js:SimpleCSSStyles top="0" left="105" right="0" bottom="20" />
-                        <!--<js:SimpleCSSStyles paddingTop="0" gap="4" />-->
-                    </js:style>
-                    
-                    <js:Label text="{product.name}" style="fontSize:11;fontWeight:'bold'"/>
-
-	                <js:Label text="{product.featureString}" width="80" height="48" />
-
-                    <js:Label text="{product.highlight1}" style="color:#EE8D0C"/>
-
-                    <js:Label text="{product.highlight2}" style="color:#EE8D0C"/>
-
-                    <js:Label text="{cf.format(product.price)}" style="fontWeight:'bold'"/>
-
-                </js:VContainer>
-            </js:Container>
-
-            <js:Label id="descriptionText" style="left:0px;right:0px;bottom:0px" text="{product.description}"/>
-
-        </js:VContainer>
-
-        <productsView:ProductSupport width="100%" height="100%" includeIn="Support" />
-
-    </js:Container>
-
-    <js:VContainer>
-        <js:style>
-            <js:SimpleCSSStyles marginTop="4" right="16" top="36" />
-        </js:style>
-        <js:Spacer width="100%"/>
-        <js:ImageButton id="purchase" source="assets/button_cart_empty.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.PURCHASE, product))" width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Add to cart"/>
-            </js:beads>
-        </js:ImageButton>
-        <js:ImageButton id="compare" source="assets/button_compare.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.COMPARE, product))" width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Add to compare list"/>
-            </js:beads>
-        </js:ImageButton>
-        <js:ImageButton id="tiles" source="assets/button_tiles.png" click="dispatchEvent(new ProductThumbEvent(ProductThumbEvent.BROWSE, product));" width="30">
-            <js:beads>
-                <js:ToolTipBead toolTip="Back to thumbnail view"/>
-            </js:beads>
-        </js:ImageButton>
-    </js:VContainer>
-
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductFilterPanel.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductFilterPanel.mxml b/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductFilterPanel.mxml
deleted file mode 100755
index 26deaa9..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductFilterPanel.mxml
+++ /dev/null
@@ -1,215 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:VContainer xmlns:fx="http://ns.adobe.com/mxml/2009" 
-                  xmlns:js="library://ns.apache.org/flexjs/basic" 
-    xmlns:productsView="productsView.*"
-    xmlns:flexstore="samples.flexstore.*"
-    height="100%" 
-    currentState="showingThumbnails"
-    initComplete="series.selectedIndex = 0">
-    <js:style>
-        <js:SimpleCSSStyles paddingLeft="4" 
-                               paddingRight="12" 
-                               paddingTop="12" 
-                               paddingBottom="8" 
-                               />
-
-    </js:style>
-    
-    <fx:Metadata>
-       [Event(name="filter", type="samples.flexstore.ProductFilterEvent")] 
-       [Event("compare")]
-    </fx:Metadata>
-    
-    <fx:Script>
-        <![CDATA[
-        import org.apache.flex.html.Slider;
-        import org.apache.flex.html.SimpleAlert; 
-        import samples.flexstore.ProductFilterEvent;
-           
-        private var thumbBeingPressed:Boolean;
-           
-        private function dispatchFilter():void
-        {
-            var event:ProductFilterEvent = 
-                new ProductFilterEvent(filter, thumbBeingPressed);
-            dispatchEvent(event);
-            currentState = "showingThumbnails";
-        }
-        
-        private function sliderValue(values:Array, index:int):Number
-        {
-            return values[index];
-        }
-        
-        private function productRemoved():void
-        {
-            if (currentState == "showingComparison")
-            {
-                if (productList.items.length == 0)
-                {
-                    dispatchFilter();
-                }
-                else
-                {
-                    attemptCompare();
-                }
-            }
-        }
-        
-        private function attemptCompare():void
-        {
-            if (productList.items.length > 0)
-            {
-                dispatchEvent(new Event("compare"));
-                currentState = "showingComparison";
-            }
-            else
-            {
-                SimpleAlert.show("There are no items to compare.", "Compare");
-            }
-        }
-        
-        ]]>
-    </fx:Script>
-    <fx:Declarations>
-        <flexstore:ProductFilter id="filter">
-            <flexstore:experience>{series.selectedItem}</flexstore:experience>
-            <flexstore:minPrice>{loPrice.value}</flexstore:minPrice>
-            <flexstore:maxPrice>{hiPrice.value}</flexstore:maxPrice>
-            <flexstore:blazeds>{cbBlazeDS.selected}</flexstore:blazeds>
-            <flexstore:mobile>{cbMobile.selected}</flexstore:mobile>
-            <flexstore:video>{cbVideo.selected}</flexstore:video>
-        </flexstore:ProductFilter>
-        
-        <js:CurrencyFormatter currencySymbol="$" id="cf"/>    
-        
-    </fx:Declarations>
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-    
-    <js:Label text="Find" className="sectionHeader"/>
-    
-    <js:Container width="100%">
-        <js:beads>
-            <js:FlexibleFirstChildHorizontalLayout />
-        </js:beads>
-        <js:TextInput className="glass" width="100%"/>
-        <js:TextButton className="glass" text="Go" click="SimpleAlert.show('This feature is not implemented in this sample', 'Find')"/>
-    </js:Container>
-
-    <js:Spacer height="18"/>
-
-    <js:HRule width="100%"/>
-
-    <js:Spacer height="8"/>
-
-    <js:HContainer>
-        <js:style>
-            <js:SimpleCSSStyles paddingTop="0" paddingLeft="0" verticalAlign="bottom" />
-        </js:style>
-        <js:Label text="Filter" className="sectionHeader"/>
-        <js:Label text="({filter.count} items selected)" >
-            <js:style>
-                <js:SimpleCSSStyles fontWeight="bold" />
-                <!--<js:SimpleCSSStyles color="{getStyle('themeColor')}" fontWeight="bold" />-->
-            </js:style>
-        </js:Label>
-    </js:HContainer>
-
-    <js:Spacer height="8"/>
-
-    <js:Label text="Years of Experience"/>
-
-    <js:DropDownList id="series" className="glass" width="140" change="dispatchFilter();">
-        <js:dataProvider>
-            <fx:Array>
-                <fx:String>All</fx:String>
-                <fx:String>3</fx:String>
-                <fx:String>5</fx:String>
-                <fx:String>7</fx:String>
-                <fx:String>9</fx:String>
-            </fx:Array>                
-        </js:dataProvider>
-    </js:DropDownList>
-
-    <js:Spacer height="18"/>
-
-    <js:Label text="Price"/>
-
-    <!--<s:HSlider id="priceSlider" className="glassSlider" minimum="0" maximum="200" tickInterval="10" snapInterval="10"
-        width="100%" thumbCount="2" values="[0,200]" labels="[$0,$200]" liveDragging="true" dataTipFormatFunction="{cf.format}"
-        change="dispatchFilter()"
-        thumbPress="thumbBeingPressed=true"
-        thumbRelease="thumbBeingPressed=false;dispatchFilter()"
-        />-->
-    <js:HContainer id="nsholder" width="100%">
-        <js:NumericStepper width="48%" id="loPrice" minimum="0" maximum="{hiPrice.value}" value="0" valueChange="dispatchFilter()" />
-        <js:NumericStepper width="48%" id="hiPrice" minimum="{loPrice.value}" maximum="200" value="200" valueChange="dispatchFilter()" />
-    </js:HContainer>
-
-    <js:Spacer height="18"/>
-
-    <js:Label text="Required Features"/>
-
-    <js:Spacer height="4"/>
-
-    <js:CheckBox id="cbBlazeDS" className="glass" text="BlazeDS" click="dispatchFilter();"/>
-    <js:Spacer height="4"/>
-    <js:CheckBox id="cbMobile" className="glass" text="Mobile" click="dispatchFilter()"/>
-    <js:Spacer height="4"/>
-    <js:CheckBox id="cbVideo" className="glass" text="Video" click="dispatchFilter();"/>
-
-    <js:Spacer height="18"/>
-
-    <js:HRule width="100%"/>
-
-    <js:Spacer height="8"/>
-
-        <js:HContainer>
-            <js:Label text="Compare" className="sectionHeader"/>
-            <js:Label text="(Drag items here to compare)" className="instructions"/>
-        </js:HContainer>
-
-
-    <js:Spacer height="4"/>
-
-    <!-- height is maxItems * ProductListItem.HEIGHT + 2px border -->
-    <productsView:ProductList id="productList" height="{productList.maxItems * ProductListItem.HEIGHT + 2}" width="100%"
-        newItemStartX="300" newItemStartY="-100" maxItems="4" 
-        removeProduct="productRemoved()"/>
-
-    <js:Spacer height="8"/>
-    
-    <js:ImageAndTextButton id="compareButton" className="glass" 
-                  click.showingThumbnails="attemptCompare()"
-                  click.showingComparison="dispatchFilter()"            
-                  text.showingComparison="Back to thumbnail view"
-                  text.showingThumbnails="Compare Items"
-                  image.showingThumbnails="assets/icon_compare.png"
-                  image.showingComparison="assets/icon_tiles.png" />
-    
-    <js:states>
-       <js:State name="showingThumbnails" />
-       <js:State name="showingComparison" />
-    </js:states>
-
-</js:VContainer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductList.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductList.mxml b/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductList.mxml
deleted file mode 100755
index 951b1fa..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductList.mxml
+++ /dev/null
@@ -1,219 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
-                 xmlns:js="library://ns.apache.org/flexjs/basic" 
-    > 
-    <js:style>
-        <js:SimpleCSSStyles borderStyle="solid" borderWidth="1" backgroundColor="#BCB29F" />
-    </js:style>
-    <!-- need a background color for drag and drop but can set alpha to 0 -->
-    
-    <fx:Metadata>
-       [Event(name="addProduct", type="samples.flexstore.ProductListEvent")]
-       [Event(name="duplicateProduct", type="samples.flexstore.ProductListEvent")]
-       [Event(name="productQtyChange", type="samples.flexstore.ProductListEvent")]
-       [Event(name="removeProduct", type="samples.flexstore.ProductListEvent")]
-    </fx:Metadata>
-
-    <fx:Script>
-        <![CDATA[
-        import org.apache.flex.effects.Effect;
-        import org.apache.flex.effects.Move;
-        import org.apache.flex.effects.Sequence;
-        import org.apache.flex.core.DropType;
-        import org.apache.flex.core.IUIBase;
-        import org.apache.flex.events.DragEvent;
-        
-        import samples.flexstore.Product;
-        import samples.flexstore.ProductListEvent;
-        
-        public var items:Array;
-        
-        public var newItemStartX:int;
-        public var newItemStartY:int;
-        [Bindable]
-        public var maxItems:int = 0;
-        public var showQuantity:Boolean;
-        
-        private var playingEffects:Object = new Object();
-        
-        public function addProduct(product:Product):void
-		{
-            if (items == null)
-                items = [];
-            
-            var index:int = indexOf(product.productId);
-            var event:ProductListEvent;
-            var item:ProductListItem;
-            
-            if (index != -1)
-			{
-			    item = items[index] as ProductListItem;
-			    //if we don't keep track of what's playing a double-click can
-			    //cause the list item to keep rising
-			    if (playingEffects[item.uid] == null)
-			    {
-                    var jump:Sequence = new Sequence();
-                    var m1:Move = new Move(item)
-                    m1.yBy = -5;
-                    var m2:Move = new Move(item)
-                    m2.yBy = 5;
-                    jump.addChild(m1);
-                    jump.addChild(m2);
-                    jump.duration = 150;
-                    playingEffects[item.uid] = jump;
-                    jump.addEventListener(Effect.EFFECT_END, function(event:Event):void
-                    {
-                       delete playingEffects[item.uid];
-                    });
-                    jump.play();
-                }
-                event = new ProductListEvent(ProductListEvent.DUPLICATE_PRODUCT);
-                event.product = item.product;
-                dispatchEvent(event);
-            }
-			else
-			{
-                index = items.length;
-                if (maxItems <= 0 || index < maxItems)
-				{
-				    item = new ProductListItem();
-				    if (showQuantity)
-				    {
-				        item.currentState = 'showQuantity';
-				    }
-				    item.product = product;
-				    item.percentWidth = 100;
-				    item.addEventListener(ProductListEvent.REMOVE_PRODUCT, removeItemHandler);
-                    items[index] = item;
-                    viewport.addElement(item);
-                    layoutItems(index, true);
-                    event = new ProductListEvent(ProductListEvent.ADD_PRODUCT);
-                    event.product = product;
-                    dispatchEvent(event);
-                }
-            }
-        }
-        
-        public function getProducts():Array
-        {
-            var ret:Array = [];
-            for (var i:int = 0; i < items.length; i++)
-            {
-                ret[i] = ProductListItem(items[i]).product;
-            }
-            return ret;
-        }
-        
-        private function removeItemHandler(event:Event):void
-        {
-            var item:ProductListItem = event.target as ProductListItem;
-            var index:int = indexOf(item.product.productId);
-            items.splice(index, 1);
-            viewport.removeElement(item);
-            layoutItems(index);
-        }
-            
-        private function layoutItems(startIndex:int, scrollToBottom:Boolean=false):void
-		{
-            var n:int = items.length;
-            var e:Move;
-			for (var i:int = startIndex; i < n ; i++)
-			{
-			    var item:ProductListItem = items[i];
-                var yTo:Number = i * (item.height);
-                //still need to prevent items that are already in motion from getting
-                //jumpy
-			    if (playingEffects[item.uid] == null)
-			    {
-                    e = new Move(item);
-                    if (item.x == 0 && item.y == 0)
-    				{
-    					e.xFrom = newItemStartX;
-    					e.yFrom = newItemStartY;
-                    }
-    
-                    e.xTo = 0;
-                    e.yTo = yTo;
-                    playingEffects[item.uid] = e;
-                    e.addEventListener(Effect.EFFECT_END, function(event:Event):void
-                    {
-                       delete playingEffects[item.uid];
-                    });
-                    e.play();
-                }
-                else
-                {
-                    playingEffects[item.uid].pause();
-                    playingEffects[item.uid].yTo = yTo;
-                    playingEffects[item.uid].play();
-                }
-            }
-            //get the last event and if we should scroll make sure we can validate
-            //and scroll to maxVPosition
-            if (scrollToBottom)
-            {
-                e.addEventListener(Effect.EFFECT_END, function(event:Event):void
-                {
-  //TODO                  scrollingView.model.verticalScrollPosition = scrollingView.maxVerticalScrollPosition;    
-                });
-            }
-        }
-        
-        private function indexOf(productId:int):int
-		{
-            var index:int = -1;
-
-            var n:int = items.length;
-			for (var i:int = 0; i < items.length; i++)
-			{
-                if (ProductListItem(items[i]).product.productId == productId)
-				{
-                    index = i;
-                    break;
-                }
-            }
-
-            return index;
-        }     
-
-        private function doDragEnter(event:DragEvent):void
-        {
-            trace("doDragEnter");
-            dmc.acceptDragDrop(event.target as IUIBase, DropType.COPY);
-        }
-
-        private function doDragDrop(event:DragEvent):void
-        {
-            trace("doDragDrop");
-            var product:Product = DragEvent.dragSource as Product;
-            addProduct(product);
-        }  
- 
-        ]]>
-    </fx:Script>
-    <js:beads>
-        <js:DropMouseController id="dmc" dragEnter="doDragEnter(event)" dragDrop="doDragDrop(event)" />
-        <js:VerticalLayout />
-		<js:ScrollingViewport id="scrollingView" />
-    </js:beads>
-    <js:Container id="viewport" width="100%" height="100%" >
-    </js:Container>
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductListItem.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductListItem.mxml b/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductListItem.mxml
deleted file mode 100755
index 8e98c3b..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductListItem.mxml
+++ /dev/null
@@ -1,140 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009" 
-                    xmlns:js="library://ns.apache.org/flexjs/basic" 
-    className="listItem" 
-    height="{HEIGHT}" implements="org.apache.flex.core.IItemRenderer">
-    <!--automationName="{product.name}">-->
-
-    <fx:Metadata>
-       [Event(name="productQtyChange", type="samples.flexstore.ProductListEvent")]
-       [Event(name="removeProduct", type="samples.flexstore.ProductListEvent")]
-    </fx:Metadata>
-    
-    <fx:Script>
-    <![CDATA[
-    
-        import samples.flexstore.Product;
-        import samples.flexstore.ProductListEvent;
-        
-        private static var idCounter:int = 0;
-        public var uid:String = (idCounter++).toString();
-        
-        public static const HEIGHT:int = 30;
-        
-        [Bindable("__NoChangeEvent__")]
-        public function get product():Product
-        {
-            return _data as Product;
-        }
-        public function set product(value:Product):void
-        {
-            _data = value;
-        }
-        
-        private var _data:Object;
-        
-        public function get data():Object
-        {
-            return _data;
-        }
-        
-        public function set data(value:Object):void
-        {
-            _data = value;
-        }
-        
-        public function get listData():Object
-        {
-        	return null;
-        }
-        
-        public function set listData(value:Object):void
-        {
-        	// not used
-        }
-
-        private var _itemRendererParent:Object;
-        
-        public function get itemRendererParent():Object
-        {
-            return _itemRendererParent;
-        }
-        
-        public function set itemRendererParent(value:Object):void
-        {
-            _itemRendererParent = value;
-        }
-        
-        private function qtyChange():void
-    	{
-            product.qty = int(qty.text);
-            var event:ProductListEvent = new ProductListEvent(ProductListEvent.PRODUCT_QTY_CHANGE);
-            event.product = product;
-    		dispatchEvent(event);
-        }
-        
-        private function removeItem():void
-        {
-            var event:ProductListEvent = new ProductListEvent(ProductListEvent.REMOVE_PRODUCT);
-            event.product = product;
-    		dispatchEvent(event);
-        }
-        
-    ]]>
-    </fx:Script>
-    
-    <fx:Declarations>
-        <js:CurrencyFormatter currencySymbol="$" id="cf" fractionalDigits="2"/>
-    </fx:Declarations>
-    
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-        
-    <js:ImageButton id="removeButton" source="assets/trashcan.png"
-        width="14" height="14" y="5"
-        click="removeItem()">
-        <js:beads>
-            <js:ToolTipBead toolTip="Remove from cart" />
-        </js:beads>
-    </js:ImageButton>
-    
-    <js:Image id="productImage" x="16" y="6" width="12" height="12" source="{product.image}"/>
-
-    <js:Label id="productName" x="30" width="100" y="4" text="{product.name}"/>
-
-    <js:Label id="productPrice" width="60" y="4"
-        text="{cf.format(product.price)}" style="textAlign:right;right:0"
-                                style.showQuantity="textAlign:right;right:25"/>
-        
-    <js:TextInput id="qty" width="25" y="3" text="{product.qty}" includeIn="showQuantity"
-                  style="textAlign:right;right:0;marginTop:0" change="qtyChange()" >
-        <js:beads>
-            <js:NumericOnlyTextInputBead maxChars="3" />
-        </js:beads>
-    </js:TextInput>
-    
-    <js:states>
-        <js:State name="compare" />
-        <js:State name="showQuantity" />
-    </js:states>
-    
-</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductSupport.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductSupport.mxml b/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductSupport.mxml
deleted file mode 100755
index b3c8429..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/productsView/ProductSupport.mxml
+++ /dev/null
@@ -1,90 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:HContainer xmlns:fx="http://ns.adobe.com/mxml/2009" 
-          xmlns:js="library://ns.apache.org/flexjs/basic" 
-		 >
-    <js:style>
-        <js:SimpleCSSStyles paddingLeft="4" paddingRight="8" paddingBottom="4" />
-    </js:style>
-    <js:beads>
-        <js:ContainerDataBinding />
-    </js:beads>
-
-    <fx:Script>
-	<![CDATA[
-
-        private function toggle():void
-		{
-			/*
-            if (vd.playing)
-			{
-                vd.stop();
-                list.visible = true;
-            }
-			else
-			{
-                list.visible = false;
-                vd.play();
-            }
-			*/
-        }
-
-	]]>
-    </fx:Script>
-
-    <fx:Declarations>
-        <js:Parallel id="hideList">
-            <js:children>
-                <fx:Array>
-                    <js:Resize target="{list}" widthTo="0"/>
-                    <!--<mx:Resize target="{vd}" widthTo="400" heightTo="314"/>-->
-                </fx:Array>
-            </js:children>
-        </js:Parallel>
-        
-        <js:Parallel id="showList">
-            <js:children>
-                <fx:Array>
-                    <js:Resize target="{list}" widthTo="130"/>
-                    <!--<mx:Resize target="{vd}" widthTo="270" heightTo="217"/>-->
-                </fx:Array>
-            </js:children>
-        </js:Parallel>        
-    </fx:Declarations>
-    <js:List id="list" width="130" height="100%" selectedIndex="0">
-        <js:dataProvider>
-            <fx:Array>
-                <fx:Object label="Install SIM Card"/>
-            </fx:Array>
-        </js:dataProvider>
-    </js:List>
-
-    <js:Container width="100%">
-
-		<!--<mx:VideoDisplay id="vd" width="270" height="217" source="assets/phone.flv"
-						 autoPlay="false" complete="list.visible=true"/>
-
-		<mx:Button label="{vd.playing ? 'Stop' : 'Play'}" click="toggle()" left="8" bottom="8" includeInLayout="false">
-		</mx:Button>
-		-->
-	</js:Container>
-
-
-</js:HContainer>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ButtonBarButtonSkin.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ButtonBarButtonSkin.as b/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ButtonBarButtonSkin.as
deleted file mode 100755
index 5e94b58..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ButtonBarButtonSkin.as
+++ /dev/null
@@ -1,298 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-
-package samples.flexstore
-{
-
-import flash.display.GradientType;
-import mx.containers.BoxDirection;
-import mx.controls.Button;
-import mx.controls.ButtonBar;
-import mx.skins.Border;
-import mx.skins.halo.*;
-import mx.styles.StyleManager;
-import mx.utils.ColorUtil;
-
-/**
- *  Adapted from mx.skins.halo.ButtonBarButtonSkin.
- *  This version of the ButtonBarButtonSkin is applied for the
- *  selectedOver, selectedUp, and over states to use the 2nd two
- *  values of the fillColors for the selected state of the
- *  button.  The over state then uses a computed value from
- *  the themeColor to show emphasis.  The border of the selected
- *  button also uses a computed value from the themeColor, but
- *  is partially transparent.
- */
-public class ButtonBarButtonSkin extends Border
-{
-	//--------------------------------------------------------------------------
-	//
-	//  Class variables
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  @private
-	 */
-	private static var cache:Object = {};
-
-	//--------------------------------------------------------------------------
-	//
-	//  Class methods
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  @private
-	 *  Several colors used for drawing are calculated from the base colors
-	 *  of the component (themeColor, borderColor and fillColors).
-	 *  Since these calculations can be a bit expensive,
-	 *  we calculate once per color set and cache the results.
-	 */
-	private static function calcDerivedStyles(themeColor:uint,
-											  fillColor0:uint,
-											  fillColor1:uint):Object
-	{
-		var key:String = HaloColors.getCacheKey(themeColor,
-												fillColor0, fillColor1);
-
-		if (!cache[key])
-		{
-			var o:Object = cache[key] = {};
-
-			// Cross-component styles.
-			HaloColors.addHaloColors(o, themeColor, fillColor0, fillColor1);
-
-			// Button-specific styles.
-			o.innerEdgeColor1 = ColorUtil.adjustBrightness2(fillColor0, -10);
-			o.innerEdgeColor2 = ColorUtil.adjustBrightness2(fillColor1, -25);
-		}
-
-		return cache[key];
-	}
-
-	//--------------------------------------------------------------------------
-	//
-	//  Constructor
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  @private
-	 *  Constructor.
-	 */
-	public function ButtonBarButtonSkin()
-	{
-		super();
-	}
-
-	//--------------------------------------------------------------------------
-	//
-	//  Overridden properties
-	//
-	//--------------------------------------------------------------------------
-
-	//----------------------------------
-	//  measuredWidth
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	override public function get measuredWidth():Number
-	{
-		return 50;
-	}
-
-	//----------------------------------
-	//  measuredHeight
-	//----------------------------------
-
-	/**
-	 *  @private
-	 */
-	override public function get measuredHeight():Number
-	{
-		return 22;
-	}
-
-	//--------------------------------------------------------------------------
-	//
-	//  Overridden methods
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  @private
-	 */
-	override protected function updateDisplayList(w:Number, h:Number):void
-	{
-		super.updateDisplayList(w, h);
-
-		// User-defined styles.
-		var borderColor:uint = getStyle("borderColor");
-		var cornerRadius:Number = getStyle("cornerRadius");
-		var fillAlphas:Array = getStyle("fillAlphas");
-		var fillColors:Array = getStyle("fillColors");
-		styleManager.getColorNames(fillColors);
-		var highlightAlphas:Array = getStyle("highlightAlphas");
-		var themeColor:uint = getStyle("themeColor");
-
-		// Derivative styles.
-		var derStyles:Object = calcDerivedStyles(themeColor, fillColors[0],
-												 fillColors[1]);
-
-		var borderColorDrk1:Number =
-			ColorUtil.adjustBrightness2(borderColor, -50);
-
-		var themeColorDrk1:Number =
-			ColorUtil.adjustBrightness2(themeColor, -25);
-
-		var emph:Boolean = false;
-
-		if (parent is Button)
-			emph = (parent as Button).emphasized;
-
-		var tmp:Number;
-
-		var bar:ButtonBar = parent ? ButtonBar(parent.parent) : null;
-		var horizontal:Boolean = true;
-		var pos:int = 0;
-
-		if (bar)
-		{
-			if (bar.direction == BoxDirection.VERTICAL)
-				horizontal = false;
-
-			// first: -1, middle: 0, last: 1
-			var index:int = bar.getChildIndex(parent);
-			pos = (index == 0 ? -1 : (index == bar.numChildren - 1 ? 1 : 0));
-		}
-
-		var radius:Object = getCornerRadius(pos, horizontal, cornerRadius);
-		var cr:Object = getCornerRadius(pos, horizontal, cornerRadius);
-		var cr1:Object = getCornerRadius(pos, horizontal, cornerRadius - 1);
-		var cr2:Object = getCornerRadius(pos, horizontal, cornerRadius - 2);
-		var cr3:Object = getCornerRadius(pos, horizontal, cornerRadius - 3);
-
-		graphics.clear();
-
-		switch (name)
-		{
-			case "selectedUpSkin":
-			case "selectedOverSkin":
-			{
-				var overFillColors:Array;
-				if (fillColors.length > 2)
-					overFillColors = [ fillColors[2], fillColors[3] ];
-				else
-					overFillColors = [ fillColors[0], fillColors[1] ];
-
-				var overFillAlphas:Array;
-				if (fillAlphas.length > 2)
-					overFillAlphas = [ fillAlphas[2], fillAlphas[3] ];
-  				else
-					overFillAlphas = [ fillAlphas[0], fillAlphas[1] ];
-
-				// button border/edge
-				drawRoundRect(
-					0, 0, w, h, cr,
-					[ themeColor, derStyles.themeColDrk1 ], 0.5,
-					verticalGradientMatrix(0, 0, w , h),
-					GradientType.LINEAR, null,
-					{ x: 1, y: 1, w: w - 2, h: h - 2, r: cr1 });
-
-				// button fill
-				drawRoundRect(
-					1, 1, w - 2, h - 2, cr1,
-					overFillColors, overFillAlphas,
-					verticalGradientMatrix(0, 0, w - 2, h - 2));
-
-				// top highlight
-				if (!(radius is Number))
-					{ radius.bl = radius.br = 0;}
-				drawRoundRect(
-					1, 1, w - 2, (h - 2) / 2, radius,
-					[ 0xFFFFFF, 0xFFFFFF ], highlightAlphas,
-					verticalGradientMatrix(1, 1, w - 2, (h - 2) / 2));
-				break;
-			}
-
-			case "overSkin":
-			{
-				// button border/edge
-				drawRoundRect(
-					0, 0, w, h, cr,
-					[ themeColor, derStyles.themeColDrk1 ], 0.5,
-					verticalGradientMatrix(0, 0, w, h));
-
-				// button fill
-				drawRoundRect(
-					1, 1, w - 2, h - 2, cr1,
-					[ derStyles.fillColorPress1, derStyles.fillColorPress2 ], 1,
-					verticalGradientMatrix(0, 0, w - 2, h - 2));
-
-				// top highlight
-				if (!(radius is Number))
-					{ radius.bl = radius.br = 0;}
-				drawRoundRect(
-					1, 1, w - 2, (h - 2) / 2, radius,
-					[ 0xFFFFFF, 0xFFFFFF ], highlightAlphas,
-					verticalGradientMatrix(1, 1, w - 2, (h - 2) / 2));
-
-				break;
-			}
-		}
-	}
-
-	//--------------------------------------------------------------------------
-	//
-	//  Methods
-	//
-	//--------------------------------------------------------------------------
-
-	/**
-	 *  @private
-	 */
-	private function getCornerRadius(pos:int, horizontal:Boolean,
-									 radius:Number):Object
-	{
-		if (pos == 0)
-			return 0;
-
-		radius = Math.max(0, radius);
-
-		if (horizontal)
-		{
-			if (pos == -1)
-				return { tl: radius, tr: 0, bl: radius, br: 0 };
-			else // pos == 1
-				return { tl: 0, tr: radius, bl: 0, br: radius };
-		}
-		else
-		{
-			if (pos == -1)
-				return { tl: radius, tr: radius, bl: 0, br: 0 };
-			else // pos == 1
-				return { tl: 0, tr: 0, bl: radius, br: radius };
-		}
-	}
-}
-
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/Product.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/Product.as b/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/Product.as
deleted file mode 100755
index 040fb8f..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/Product.as
+++ /dev/null
@@ -1,78 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package samples.flexstore
-{
-
-[Bindable]
-public class Product
-{
-
-    public var productId:int;
-    public var name:String;
-    public var description:String;
-    public var price:Number;
-    public var image:String;
-    public var experience:String;
-    public var blazeds:Boolean;
-    public var mobile:Boolean;
-    public var video:Boolean;
-    public var highlight1:String;
-    public var highlight2:String;
-    public var qty:int;
-
-    public function Product()
-    {
-
-    }
-
-    public function fill(obj:Object):void
-    {
-        for (var i:String in obj)
-        {
-            this[i] = obj[i];
-        }
-    }
-
-    [Bindable(event="propertyChange")]
-    public function get featureString():String
-    {
-    	var str:String = "";
-    	if (blazeds)
-    		str += "BlazeDS";
-
-		if (mobile)
-		{
-			if (str.length > 0)
-				str += "\n";
-			str += "Mobile";
-		}
-
-		if (video)
-		{
-			if (str.length > 0)
-				str += "\n";
-			str += "Video";
-		}
-
-		return str;
-    }
-
-}
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductFilter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductFilter.as b/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductFilter.as
deleted file mode 100755
index d182371..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductFilter.as
+++ /dev/null
@@ -1,56 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package samples.flexstore
-{
-
-[Bindable]
-public class ProductFilter
-{
-    public var count:int;
-    public var experience:String;
-    public var minPrice:Number;
-    public var maxPrice:Number;
-    public var blazeds:Boolean;
-    public var mobile:Boolean;
-    public var video:Boolean;
-    
-    public function ProductFilter()
-    {
-        super();
-    }
-    
-    public function accept(product:Product):Boolean
-    {
-        //price is often the first test so let's fail fast if possible
-        if (minPrice > product.price || maxPrice < product.price)
-            return false;
-        if (experience != "All" && experience > product.experience)
-            return false;
-        if (blazeds && !product.blazeds)
-            return false;
-        if (mobile && !product.mobile)
-            return false;
-        if (video && !product.video)
-            return false;
-        
-        return true;
-    }
-}
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductFilterEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductFilterEvent.as b/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductFilterEvent.as
deleted file mode 100755
index 28129e7..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductFilterEvent.as
+++ /dev/null
@@ -1,39 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package samples.flexstore
-{
-
-import org.apache.flex.events.Event;
-
-public class ProductFilterEvent extends Event
-{
-    public static const FILTER:String = "filter";
-    
-    public var live:Boolean;
-    public var filter:ProductFilter;
-    
-    public function ProductFilterEvent(filter:ProductFilter, live:Boolean)
-    {
-        super(FILTER);
-        this.filter = filter;
-        this.live = live;
-    }
-}
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductListEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductListEvent.as b/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductListEvent.as
deleted file mode 100755
index b6b9371..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductListEvent.as
+++ /dev/null
@@ -1,42 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package samples.flexstore
-{
-
-import org.apache.flex.events.Event;
-
-public class ProductListEvent extends Event
-{
-    public static const ADD_PRODUCT:String = "addProduct";
-    public static const DUPLICATE_PRODUCT:String = "duplicateProduct";
-    public static const REMOVE_PRODUCT:String = "removeProduct";
-    public static const PRODUCT_QTY_CHANGE:String = "productQtyChange";
-    
-    public var product:Product;
-    
-    //making the default bubbles behavior of the event to true since we want
-    //it to bubble out of the ProductListItem and beyond
-    public function ProductListEvent(type:String, bubbles:Boolean=true, cancelable:Boolean=false)
-    {
-        super(type, bubbles, cancelable);
-    }
-    
-}
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductThumbEvent.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductThumbEvent.as b/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductThumbEvent.as
deleted file mode 100755
index f92dc7f..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/samples/flexstore/ProductThumbEvent.as
+++ /dev/null
@@ -1,45 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package samples.flexstore
-{
-    
-import org.apache.flex.events.Event;
-
-public class ProductThumbEvent extends Event
-{
-    public static const PURCHASE:String = "purchase";
-    public static const COMPARE:String = "compare";
-    public static const DETAILS:String = "details";
-    public static const BROWSE:String = "browse";
-    
-    public var product:Product;
-    
-    public function ProductThumbEvent(type:String, product:Product)
-    {
-        super(type);
-        this.product = product;
-    }
-    
-    override public function cloneEvent():Event
-    {
-        return new ProductThumbEvent(type, product);
-    }
-}
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/FlexWebsiteStatsViewer.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/FlexWebsiteStatsViewer.mxml b/examples/flexjs/FlexWebsiteStatsViewer/src/FlexWebsiteStatsViewer.mxml
deleted file mode 100644
index 9aafac9..0000000
--- a/examples/flexjs/FlexWebsiteStatsViewer/src/FlexWebsiteStatsViewer.mxml
+++ /dev/null
@@ -1,55 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!---
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-				   xmlns:local="*"
-				   xmlns:models="models.*"
-				   xmlns:controllers="controllers.*"
-				   xmlns:js="library://ns.apache.org/flexjs/basic" 
-				   initialize="trace('app initialized')"
-				   >
-	<js:valuesImpl>
-		<js:SimpleCSSValuesImpl />
-	</js:valuesImpl>
-	<js:initialView>
-		<local:StatsView />
-	</js:initialView>
-	<js:model>
-		<models:StatsModel />
-	</js:model>
-	<js:controller>
-		<controllers:StatsController />
-	</js:controller>
-	<js:beads>
-        <js:BrowserScroller />
-		<js:HTTPService id="service">
-			<js:LazyCollection id="collection">
-				<js:inputParser>
-					<controllers:GAJSONInputParser />
-				</js:inputParser>
-				<js:itemConverter>
-					<controllers:GAStatsDataJSONItemConverter />
-				</js:itemConverter> 
-			</js:LazyCollection>
-		</js:HTTPService>
-		<js:CSSFontFaceBead />
-    </js:beads>
-</js:Application>
-

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/StatsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/StatsView.mxml b/examples/flexjs/FlexWebsiteStatsViewer/src/StatsView.mxml
deleted file mode 100644
index 0636dda..0000000
--- a/examples/flexjs/FlexWebsiteStatsViewer/src/StatsView.mxml
+++ /dev/null
@@ -1,87 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:js="library://ns.apache.org/flexjs/basic"
-                initComplete="testit()"
-				>
-	<fx:Script>
-		<![CDATA[
-		import org.apache.flex.events.MouseEvent;
-
-		private function testit():void {
-			trace();
-		}
-
-		private function onRefreshBtnClick(event:MouseEvent):void {
-			var e:Event = new Event("refresh", true);
-			dispatchEvent(e);
-		}
-		]]>
-	</fx:Script>
-	
-	<fx:Style>
-		@namespace js "library://ns.apache.org/flexjs/basic";
-		.AllCharts {
-			border-width: 0px;
-			padding-left: 2px;
-			padding-top: 10px;
-			padding-bottom: 2px;
-			padding-right: 10px;
-		}
-	</fx:Style>
-	
-	
-	<js:Label text="Number of users on flex.apache.org for last 30 days" x="10" y="10" />
-	<js:TextButton id="refreshButton" text="Refresh" x="300" y="10" click="onRefreshBtnClick(event)"/>
-	
-	<js:ColumnChart id="columnChart" x="40" y="40" width="2000" height="768" className="AllCharts">
-		<js:beads>
-			<js:SimpleBinding
-				sourceID="applicationModel"
-				sourcePropertyName="lastThirtyDaysUsers"
-				destinationPropertyName="dataProvider" 
-				eventName="lastThirtyDaysDataChanged"
-				/>
-			<js:HorizontalCategoryAxisBead categoryField="date" />
-			<js:VerticalLinearAxisBead valueField="users" />
-		</js:beads>
-		<js:series>
-			<js:ColumnSeries yField="users">
-				<js:itemRenderer>
-					<fx:Component>
-						<js:BoxItemRenderer>
-							<js:fill>
-								<js:SolidColor color="#7CB5EC" alpha="1.0" />
-							</js:fill>
-							<!--<js:fill>
-								<js:LinearGradient rotation="90">
-									<js:entries>
-										<js:GradientEntry color="#7CB5EC" ratio="0" />
-										<js:GradientEntry color="#EFF7FF" ratio="0.5" />
-									</js:entries>
-								</js:LinearGradient>
-							</js:fill>-->
-						</js:BoxItemRenderer>                      
-					</fx:Component>
-				</js:itemRenderer>
-			</js:ColumnSeries>
-		</js:series>
-	</js:ColumnChart>	
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/GAJSONInputParser.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/GAJSONInputParser.as b/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/GAJSONInputParser.as
deleted file mode 100644
index c443de5..0000000
--- a/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/GAJSONInputParser.as
+++ /dev/null
@@ -1,38 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package controllers
-{
-	import org.apache.flex.collections.parsers.JSONInputParser;
-	
-	public class GAJSONInputParser extends JSONInputParser
-	{
-		public function GAJSONInputParser()
-		{
-		}
-		
-		override public function parseItems(s:String):Array
-		{
-			var rowsArrayStartIndex:int = s.indexOf('"rows": [', 0);
-			var rowsArrayEndIndex:int = s.indexOf("]]", rowsArrayStartIndex);
-			var rowsArrayString:String = s.slice(rowsArrayStartIndex + 9,rowsArrayEndIndex);
-			var rowsArray:Array = rowsArrayString.split("],");
-			return rowsArray;
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/GAStatsDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/GAStatsDataJSONItemConverter.as b/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/GAStatsDataJSONItemConverter.as
deleted file mode 100644
index 608db8f..0000000
--- a/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/GAStatsDataJSONItemConverter.as
+++ /dev/null
@@ -1,41 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package controllers
-{
-    import org.apache.flex.collections.converters.JSONItemConverter;
-    
-    public class GAStatsDataJSONItemConverter extends JSONItemConverter
-    {
-        public function GAStatsDataJSONItemConverter()
-        {
-            super();
-        }
-        
-        override public function convertItem(data:String):Object
-        {
-			var obj:Object = {};
-			var a:Array = data.split(",");
-			var dateStr:String = a[0];
-			var usersStr:String = a[1];
-			obj.date = dateStr.substring(dateStr.indexOf("[") + 2 , dateStr.lastIndexOf('"'));
-			obj.users = parseInt(usersStr.substring(usersStr.indexOf(' "') + 2, usersStr.lastIndexOf('"')));
-			return obj;
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/StatsController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/StatsController.as b/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/StatsController.as
deleted file mode 100644
index b4a054c..0000000
--- a/examples/flexjs/FlexWebsiteStatsViewer/src/controllers/StatsController.as
+++ /dev/null
@@ -1,77 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package controllers
-{
-	
-	import models.StatsModel;
-	
-	import org.apache.flex.core.Application;
-	import org.apache.flex.core.IDocument;
-	import org.apache.flex.events.Event;
-    	
-	public class StatsController implements IDocument
-	{
-		public function StatsController(a:Application = null)
-		{
-			if (a)
-			{
-				this.app = a as FlexWebsiteStatsViewer;
-				this.app.addEventListener("viewChanged", viewChangeHandler);
-			}
-		}
-		
-        private var lastThirtyDaysUsers:String = 'https://apache-flex-dashboard.appspot.com/query?id=ahdzfmFwYWNoZS1mbGV4LWRhc2hib2FyZHIVCxIIQXBpUXVlcnkYgICAgICAgAoM&format=json'
-		
-		private var app:FlexWebsiteStatsViewer;
-		
-		private function viewChangeHandler(event:Event):void
-		{
-			app.initialView.addEventListener("refresh", buttonClickHandler);
-		}
-		
-        private function buttonClickHandler(event:Event):void
-        {
-            app.service.url = lastThirtyDaysUsers;
-            app.service.send();
-            app.service.addEventListener("complete", completeHandler);
-        }
-		
-        private function completeHandler(event:Event):void
-        {
-			var lastThirtyDaysUsers:Array = [];
-			if(app.collection)
-			{
-				for (var i:int = 0; i < app.collection.length; i++) 
-				{
-					lastThirtyDaysUsers.push(app.collection.getItemAt(i))	
-				}
-				
-			}
-			
-			StatsModel(app.model).lastThirtyDaysUsers = lastThirtyDaysUsers;
-        }
-        
-		public function setDocument(document:Object, id:String = null):void
-		{
-			this.app = document as FlexWebsiteStatsViewer;
-			app.addEventListener("viewChanged", viewChangeHandler);
-		}
-
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/FlexWebsiteStatsViewer.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/FlexWebsiteStatsViewer.mxml b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/FlexWebsiteStatsViewer.mxml
new file mode 100644
index 0000000..9aafac9
--- /dev/null
+++ b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/FlexWebsiteStatsViewer.mxml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				   xmlns:local="*"
+				   xmlns:models="models.*"
+				   xmlns:controllers="controllers.*"
+				   xmlns:js="library://ns.apache.org/flexjs/basic" 
+				   initialize="trace('app initialized')"
+				   >
+	<js:valuesImpl>
+		<js:SimpleCSSValuesImpl />
+	</js:valuesImpl>
+	<js:initialView>
+		<local:StatsView />
+	</js:initialView>
+	<js:model>
+		<models:StatsModel />
+	</js:model>
+	<js:controller>
+		<controllers:StatsController />
+	</js:controller>
+	<js:beads>
+        <js:BrowserScroller />
+		<js:HTTPService id="service">
+			<js:LazyCollection id="collection">
+				<js:inputParser>
+					<controllers:GAJSONInputParser />
+				</js:inputParser>
+				<js:itemConverter>
+					<controllers:GAStatsDataJSONItemConverter />
+				</js:itemConverter> 
+			</js:LazyCollection>
+		</js:HTTPService>
+		<js:CSSFontFaceBead />
+    </js:beads>
+</js:Application>
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/StatsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/StatsView.mxml b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/StatsView.mxml
new file mode 100644
index 0000000..0636dda
--- /dev/null
+++ b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/StatsView.mxml
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:js="library://ns.apache.org/flexjs/basic"
+                initComplete="testit()"
+				>
+	<fx:Script>
+		<![CDATA[
+		import org.apache.flex.events.MouseEvent;
+
+		private function testit():void {
+			trace();
+		}
+
+		private function onRefreshBtnClick(event:MouseEvent):void {
+			var e:Event = new Event("refresh", true);
+			dispatchEvent(e);
+		}
+		]]>
+	</fx:Script>
+	
+	<fx:Style>
+		@namespace js "library://ns.apache.org/flexjs/basic";
+		.AllCharts {
+			border-width: 0px;
+			padding-left: 2px;
+			padding-top: 10px;
+			padding-bottom: 2px;
+			padding-right: 10px;
+		}
+	</fx:Style>
+	
+	
+	<js:Label text="Number of users on flex.apache.org for last 30 days" x="10" y="10" />
+	<js:TextButton id="refreshButton" text="Refresh" x="300" y="10" click="onRefreshBtnClick(event)"/>
+	
+	<js:ColumnChart id="columnChart" x="40" y="40" width="2000" height="768" className="AllCharts">
+		<js:beads>
+			<js:SimpleBinding
+				sourceID="applicationModel"
+				sourcePropertyName="lastThirtyDaysUsers"
+				destinationPropertyName="dataProvider" 
+				eventName="lastThirtyDaysDataChanged"
+				/>
+			<js:HorizontalCategoryAxisBead categoryField="date" />
+			<js:VerticalLinearAxisBead valueField="users" />
+		</js:beads>
+		<js:series>
+			<js:ColumnSeries yField="users">
+				<js:itemRenderer>
+					<fx:Component>
+						<js:BoxItemRenderer>
+							<js:fill>
+								<js:SolidColor color="#7CB5EC" alpha="1.0" />
+							</js:fill>
+							<!--<js:fill>
+								<js:LinearGradient rotation="90">
+									<js:entries>
+										<js:GradientEntry color="#7CB5EC" ratio="0" />
+										<js:GradientEntry color="#EFF7FF" ratio="0.5" />
+									</js:entries>
+								</js:LinearGradient>
+							</js:fill>-->
+						</js:BoxItemRenderer>                      
+					</fx:Component>
+				</js:itemRenderer>
+			</js:ColumnSeries>
+		</js:series>
+	</js:ColumnChart>	
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/GAJSONInputParser.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/GAJSONInputParser.as b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/GAJSONInputParser.as
new file mode 100644
index 0000000..c443de5
--- /dev/null
+++ b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/GAJSONInputParser.as
@@ -0,0 +1,38 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package controllers
+{
+	import org.apache.flex.collections.parsers.JSONInputParser;
+	
+	public class GAJSONInputParser extends JSONInputParser
+	{
+		public function GAJSONInputParser()
+		{
+		}
+		
+		override public function parseItems(s:String):Array
+		{
+			var rowsArrayStartIndex:int = s.indexOf('"rows": [', 0);
+			var rowsArrayEndIndex:int = s.indexOf("]]", rowsArrayStartIndex);
+			var rowsArrayString:String = s.slice(rowsArrayStartIndex + 9,rowsArrayEndIndex);
+			var rowsArray:Array = rowsArrayString.split("],");
+			return rowsArray;
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/GAStatsDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/GAStatsDataJSONItemConverter.as b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/GAStatsDataJSONItemConverter.as
new file mode 100644
index 0000000..608db8f
--- /dev/null
+++ b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/GAStatsDataJSONItemConverter.as
@@ -0,0 +1,41 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package controllers
+{
+    import org.apache.flex.collections.converters.JSONItemConverter;
+    
+    public class GAStatsDataJSONItemConverter extends JSONItemConverter
+    {
+        public function GAStatsDataJSONItemConverter()
+        {
+            super();
+        }
+        
+        override public function convertItem(data:String):Object
+        {
+			var obj:Object = {};
+			var a:Array = data.split(",");
+			var dateStr:String = a[0];
+			var usersStr:String = a[1];
+			obj.date = dateStr.substring(dateStr.indexOf("[") + 2 , dateStr.lastIndexOf('"'));
+			obj.users = parseInt(usersStr.substring(usersStr.indexOf(' "') + 2, usersStr.lastIndexOf('"')));
+			return obj;
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/StatsController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/StatsController.as b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/StatsController.as
new file mode 100644
index 0000000..b4a054c
--- /dev/null
+++ b/examples/flexjs/FlexWebsiteStatsViewer/src/main/flex/controllers/StatsController.as
@@ -0,0 +1,77 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package controllers
+{
+	
+	import models.StatsModel;
+	
+	import org.apache.flex.core.Application;
+	import org.apache.flex.core.IDocument;
+	import org.apache.flex.events.Event;
+    	
+	public class StatsController implements IDocument
+	{
+		public function StatsController(a:Application = null)
+		{
+			if (a)
+			{
+				this.app = a as FlexWebsiteStatsViewer;
+				this.app.addEventListener("viewChanged", viewChangeHandler);
+			}
+		}
+		
+        private var lastThirtyDaysUsers:String = 'https://apache-flex-dashboard.appspot.com/query?id=ahdzfmFwYWNoZS1mbGV4LWRhc2hib2FyZHIVCxIIQXBpUXVlcnkYgICAgICAgAoM&format=json'
+		
+		private var app:FlexWebsiteStatsViewer;
+		
+		private function viewChangeHandler(event:Event):void
+		{
+			app.initialView.addEventListener("refresh", buttonClickHandler);
+		}
+		
+        private function buttonClickHandler(event:Event):void
+        {
+            app.service.url = lastThirtyDaysUsers;
+            app.service.send();
+            app.service.addEventListener("complete", completeHandler);
+        }
+		
+        private function completeHandler(event:Event):void
+        {
+			var lastThirtyDaysUsers:Array = [];
+			if(app.collection)
+			{
+				for (var i:int = 0; i < app.collection.length; i++) 
+				{
+					lastThirtyDaysUsers.push(app.collection.getItemAt(i))	
+				}
+				
+			}
+			
+			StatsModel(app.model).lastThirtyDaysUsers = lastThirtyDaysUsers;
+        }
+        
+		public function setDocument(document:Object, id:String = null):void
+		{
+			this.app = document as FlexWebsiteStatsViewer;
+			app.addEventListener("viewChanged", viewChangeHandler);
+		}
+
+	}
+}
\ No newline at end of file


[31/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - fix MapSearch for Maven

Posted by ca...@apache.org.
fix MapSearch for Maven


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/fa4df42d
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/fa4df42d
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/fa4df42d

Branch: refs/heads/feature/mdl
Commit: fa4df42dce4c27e56ce3f74cec5b858cc3fb072c
Parents: d99854c
Author: Alex Harui <ah...@apache.org>
Authored: Mon Nov 7 15:08:27 2016 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Nov 7 15:08:27 2016 -0800

----------------------------------------------------------------------
 examples/flexjs/MapSearch/pom.xml | 9 +++++++++
 1 file changed, 9 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/fa4df42d/examples/flexjs/MapSearch/pom.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/MapSearch/pom.xml b/examples/flexjs/MapSearch/pom.xml
index a191d3e..bad5543 100644
--- a/examples/flexjs/MapSearch/pom.xml
+++ b/examples/flexjs/MapSearch/pom.xml
@@ -81,6 +81,15 @@
       <version>0.8.0-SNAPSHOT</version>
       <type>swc</type>
     </dependency>
+    
+    <dependency>
+        <groupId>org.apache.flex.flexjs.typedefs</groupId>
+        <artifactId>flexjs-typedefs-googlemaps</artifactId>
+        <version>${flexjs.typedefs.version}</version>
+        <type>swc</type>
+        <classifier>typedefs</classifier>
+        <scope>runtime</scope>
+    </dependency>
   </dependencies>
 
 </project>


[15/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_as/src/DataBindingExample.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_as/src/DataBindingExample.as b/examples/flexjs/DataBindingExample_as/src/DataBindingExample.as
deleted file mode 100644
index 95609cd..0000000
--- a/examples/flexjs/DataBindingExample_as/src/DataBindingExample.as
+++ /dev/null
@@ -1,290 +0,0 @@
-/**
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
-*/
-package
-{
-
-import org.apache.flex.core.Application;
-import org.apache.flex.core.ItemRendererClassFactory;
-import org.apache.flex.core.SimpleCSSValuesImpl;
-import org.apache.flex.events.Event;
-import org.apache.flex.html.beads.CSSButtonView;
-import org.apache.flex.html.beads.CSSTextButtonView;
-import org.apache.flex.html.beads.CSSTextToggleButtonView;
-import org.apache.flex.html.beads.CheckBoxView;
-import org.apache.flex.html.beads.ContainerView;
-import org.apache.flex.html.beads.DataItemRendererFactoryForArrayData;
-import org.apache.flex.html.beads.DropDownListView;
-import org.apache.flex.html.beads.ListView;
-import org.apache.flex.html.beads.RadioButtonView;
-import org.apache.flex.html.beads.SingleLineBorderBead;
-import org.apache.flex.html.beads.SolidBackgroundBead;
-import org.apache.flex.html.beads.TextAreaView;
-import org.apache.flex.html.beads.TextButtonMeasurementBead;
-import org.apache.flex.html.beads.TextFieldLabelMeasurementBead;
-import org.apache.flex.html.beads.TextFieldView;
-import org.apache.flex.html.beads.TextInputWithBorderView;
-import org.apache.flex.html.beads.TextItemRendererFactoryForArrayData;
-import org.apache.flex.html.beads.controllers.DropDownListController;
-import org.apache.flex.html.beads.controllers.ItemRendererMouseController;
-import org.apache.flex.html.beads.controllers.EditableTextKeyboardController;
-import org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController;
-import org.apache.flex.html.beads.layouts.BasicLayout;
-import org.apache.flex.html.beads.layouts.VerticalLayout;
-import org.apache.flex.html.beads.models.ArraySelectionModel;
-import org.apache.flex.html.beads.models.SingleLineBorderModel;
-import org.apache.flex.html.beads.models.TextModel;
-import org.apache.flex.html.beads.models.ToggleButtonModel;
-import org.apache.flex.html.beads.models.ValueToggleButtonModel;
-import org.apache.flex.html.beads.models.ViewportModel;
-import org.apache.flex.html.supportClasses.ContainerContentArea;
-import org.apache.flex.html.supportClasses.DropDownListList;
-import org.apache.flex.html.supportClasses.DataGroup;
-import org.apache.flex.html.supportClasses.ScrollingViewport;
-import org.apache.flex.html.supportClasses.Viewport;
-import org.apache.flex.html.supportClasses.StringItemRenderer;
-import org.apache.flex.net.HTTPService;
-import org.apache.flex.collections.parsers.JSONInputParser;
-import org.apache.flex.collections.LazyCollection;
-import org.apache.flex.utils.ViewSourceContextMenuOption;
-
-import models.MyModel;
-import controllers.MyController;
-
-public class DataBindingExample extends Application
-{
-    
-    public function DataBindingExample()
-    {
-        addEventListener("initialize", initializeHandler);
-        var vi:SimpleCSSValuesImpl = new SimpleCSSValuesImpl();
-        setupStyles(vi);
-        valuesImpl = vi;
-        initialView = new MyInitialView();
-        model = new MyModel();
-        controller = new MyController(this);
-        service = new HTTPService();
-        collection = new LazyCollection();
-        collection.inputParser = new JSONInputParser();
-        collection.itemConverter = new StockDataJSONItemConverter();
-        service.addBead(collection);
-        addBead(service);
-        addBead(new ViewSourceContextMenuOption());
-    }
-        
-    public var service:HTTPService;
-    public var collection:LazyCollection;
-    
-    private function initializeHandler(event:Event):void
-    {
-        MyModel(model).stockSymbol="ADBE";
-    }
-
-    private function setupStyles(vi:SimpleCSSValuesImpl):void
-    {
-        var viv:Object = vi.values = {};
-        viv["global"] = 
-        {
-            fontFamily: "Arial",
-            fontSize: 12        
-        };
-        
-        var o:Object;
-        
-        o = viv[makeDefinitionName("org.apache.flex.html::Container")] =
-        {
-            
-            iBeadView: ContainerView,
-    		iBeadLayout: BasicLayout,
-    		iContentView: ContainerContentArea,
-			iViewport: Viewport,
-			iViewportModel: ViewportModel
-        };
-        
-        o = viv[makeDefinitionName("org.apache.flex.core::View")] =
-        {
-            
-            iBeadView: ContainerView,
-    		iBeadLayout: BasicLayout,
-    		iContentView: ContainerContentArea,
-			iViewport: Viewport,
-			iViewportModel: ViewportModel
-        };
-		
-        CONFIG::as_only {
-            o.iBackgroundBead = SolidBackgroundBead;
-            o.iBorderBead = SingleLineBorderBead;
-        }
-            
-        viv[makeDefinitionName("org.apache.flex.html::List")] = 
-        {
-            iBeadModel: ArraySelectionModel,
-            iBeadView:  ListView,		
-            iBeadController: ListSingleSelectionMouseController,
-            iBeadLayout: VerticalLayout,
-            iContentView: DataGroup,
-            iDataProviderItemRendererMapper: DataItemRendererFactoryForArrayData,
-			iViewport: ScrollingViewport,
-			iViewportModel: ViewportModel,
-            iItemRendererClassFactory: ItemRendererClassFactory,
-            iItemRenderer: StringItemRenderer
-        };
-        
-        o = viv[makeDefinitionName("org.apache.flex.html::Button")] =
-        {
-            backgroundColor: 0xd8d8d8,
-            border: [1, "solid", 0x000000],
-            padding: 4
-        };
-        CONFIG::as_only {
-            o.iBeadView = CSSButtonView;
-        }
-            
-        viv[makeDefinitionName("org.apache.flex.html::Button:hover")] =
-        {
-            backgroundColor: 0x9fa0a1,
-            border: [1, "solid", 0x000000],
-            padding: 4
-        };
-        
-        viv[makeDefinitionName("org.apache.flex.html::Button:active")] =
-        {
-            backgroundColor: 0x929496,
-            border: [1, "solid", 0x000000],
-            padding: 4
-        };
-        
-        CONFIG::as_only {
-            viv["org.apache.flex.html::CheckBox"] =
-            {
-                iBeadModel: ToggleButtonModel,
-                iBeadView:  CheckBoxView
-            };
-            
-            viv["org.apache.flex.html::DropDownList"] =
-            {
-                iBeadModel: ArraySelectionModel,
-                iBeadView: DropDownListView,
-                iBeadController: DropDownListController,
-                iPopUp: DropDownListList
-            };
-            
-            viv["org.apache.flex.html.supportClasses::DropDownListList"] =
-            {
-                iBeadModel: ArraySelectionModel,
-                iDataProviderItemRendererMapper: TextItemRendererFactoryForArrayData,
-                iItemRendererClassFactory: ItemRendererClassFactory,
-                iItemRenderer: StringItemRenderer,
-			    iBackgroundBead: SolidBackgroundBead,
-				borderStyle: "solid",
-    			borderRadius: 4,
-			    borderColor: 0,
-			    borderWidth: 1,
-			    backgroundColor: 0xFFFFFF
-            };
-            
-            viv["org.apache.flex.html::Label"] =
-            {
-                iBeadModel: TextModel,
-                iBeadView: TextFieldView,
-                iMeasurementBead: TextFieldLabelMeasurementBead
-            };
-    
-            viv["org.apache.flex.html::List"] =
-            {
-                iBorderBead: SingleLineBorderBead,
-                iBorderModel: SingleLineBorderModel
-            };
-    
-            viv["org.apache.flex.html::RadioButton"] =
-            {
-                iBeadModel: ValueToggleButtonModel,
-                iBeadView:  RadioButtonView
-            };
-            
-            viv["org.apache.flex.html::TextArea"] =
-            {
-                iBeadModel: TextModel,
-                iBeadView: TextAreaView,
-                iBeadController: EditableTextKeyboardController,
-                iBorderBead: SingleLineBorderBead,
-                iBorderModel: SingleLineBorderModel,
-			    borderStyle: "solid",
-    			borderColor: 0,
-    			borderWidth: 1,
-    			backgroundColor: 0xFFFFFF
-            };
-            
-            viv["org.apache.flex.html::TextButton"] =
-            {
-                iBeadModel: TextModel,
-                iBeadView: CSSTextButtonView,
-                iMeasurementBead: TextButtonMeasurementBead
-            };
-    
-            viv["org.apache.flex.html::TextInput"] =
-            {
-                iBeadModel: TextModel,
-                iBeadView: TextInputWithBorderView,
-                iBeadController: EditableTextKeyboardController,
-                iBorderBead: SingleLineBorderBead,
-			    iBackgroundBead: SolidBackgroundBead,
-			    borderStyle: "solid",
-    			borderColor: 0,
-    			borderWidth: 1,
-    			backgroundColor: 0xFFFFFF
-            };
-            
-            viv["org.apache.flex.html::ToggleTextButton"] =
-            {
-                iBeadModel: ToggleButtonModel,
-                iBeadView:  CSSTextToggleButtonView
-            };
-    
-            viv["org.apache.flex.html::SimpleList"] =
-            {
-                iBeadModel: ArraySelectionModel,
-                iBeadView:  ListView,
-                iBeadController: ListSingleSelectionMouseController,
-                iBeadLayout: VerticalLayout,
-                iContentView: DataGroup,
-                iDataProviderItemRendererMapper: TextItemRendererFactoryForArrayData,
-	    		iViewport: ScrollingViewport,
-	    		iViewportModel: ViewportModel,
-                iItemRendererClassFactory: ItemRendererClassFactory,
-                iItemRenderer: StringItemRenderer
-            }
-            
-            viv["org.apache.flex.html.supportClasses::StringItemRenderer"] =
-            {
-                iBeadController: ItemRendererMouseController,
-                height: 16
-            }
-        }
-    }
-    
-    private function makeDefinitionName(s:String):String
-    {
-        CONFIG::js_only {
-            s = s.replace("::", ".");
-        }
-        return s;
-    }
-}
-
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_as/src/MyInitialView.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_as/src/MyInitialView.as b/examples/flexjs/DataBindingExample_as/src/MyInitialView.as
deleted file mode 100644
index 135cb61..0000000
--- a/examples/flexjs/DataBindingExample_as/src/MyInitialView.as
+++ /dev/null
@@ -1,282 +0,0 @@
-/**
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
-*/
-package 
-{    
-
-//import mx.states.State;
-
-import models.MyModel;
-
-import org.apache.flex.binding.ConstantBinding;
-import org.apache.flex.binding.SimpleBinding;
-import org.apache.flex.core.SimpleCSSValuesImpl;
-import org.apache.flex.core.ValuesManager;
-import org.apache.flex.core.ViewBase;
-import org.apache.flex.events.CustomEvent;
-import org.apache.flex.events.Event;
-import org.apache.flex.html.CheckBox;
-import org.apache.flex.html.Container;
-import org.apache.flex.html.DropDownList;
-import org.apache.flex.html.Label;
-import org.apache.flex.html.RadioButton;
-import org.apache.flex.html.TextArea;
-import org.apache.flex.html.TextButton;
-import org.apache.flex.html.TextInput;
-import org.apache.flex.html.beads.layouts.HorizontalLayout;
-import org.apache.flex.html.beads.layouts.VerticalLayout;
-
-public class MyInitialView extends ViewBase
-{
-
-    public function MyInitialView()
-    {
-        addEventListener("initComplete", initCompleteHandler);
-        /*
-        var statesArray = [];
-        var state:State = new mx.states.State();
-        state.name = "hideAll";
-        statesArray.push(state);
-        state = new mx.states.State();
-        state.name = "showAll";
-        statesArray.push(state);
-        states = statesArray;
-        */
-        var vi:SimpleCSSValuesImpl = ValuesManager.valuesImpl as SimpleCSSValuesImpl;
-        vi.addRule(".output", {
-            "font-size": 20
-        });
-        
-        vi.addRule(".topContainer", {
-            "padding": 10
-        });
-        
-        vi.addRule(".leftSide", {
-            "vertical-align": "top",
-            "margin-right": 10
-        });
-        
-        vi.addRule(".rightSide", {
-            "vertical-align": "top",
-            "margin-left": 10,
-            "padding-left": 10
-        });
-        
-        vi.addRule(".quoteButton", {
-            "margin-top": 10,
-            "margin-bottom": 10
-        });
-        
-    }
-    
-    private function initCompleteHandler(event:Event):void
-    {
-        initControls();
-    }
-			
-	private var _symbol:String;
-	
-    public function get symbol():String
-    {
-        return _symbol;
-    }
-	
-	public function get requestedField():String
-	{
-		return radio1.selectedValue as String;
-	}
-	
-    [Bindable]
-    public var fieldText:String;
-    
-	private function radioChanged(e:org.apache.flex.events.Event):void
-	{
-		dispatchEvent(new CustomEvent("radioClicked"));
-		fieldText = RadioButton(e.target).text;
-	}
-	
-	private function initControls():void
-	{
-		list.selectedItem = MyModel(applicationModel).stockSymbol;
-		radio1.selectedValue = MyModel(applicationModel).requestedField;
-		if (radio1.selected)
-			fieldText = radio1.text;
-		else if (radio2.selected)
-			fieldText = radio2.text;
-		else if (radio3.selected)
-			fieldText = radio3.text;
-		else if (radio4.selected)
-			fieldText = radio4.text;
-		
-	}
-    
-    private function setState():void
-    {
-        currentState = showAllData.selected ? "showAll" : "hideAll";    
-    }
-    
-    override public function get MXMLDescriptor():Array
-    {
-        var c:Container = new Container();
-        c.x = 0;
-        c.y = 0;
-        c.className = "topContainer";
-        c.addBead(new VerticalLayout());
-        addElement(c);
-        var l:Label = new Label();
-        l.width = 300;
-        l.text = "Enter Stock Symbol or choose from list:";
-        c.addElement(l);
-        var c2:Container = new Container();
-        c2.addBead(new HorizontalLayout());
-        c.addElement(c2);
-        var c3:Container = new Container();
-        c3.className = "leftSide";
-        c3.addBead(new VerticalLayout());
-        c2.addElement(c3);
-        symbolTI = new TextInput();
-        var sb:SimpleBinding = new SimpleBinding();
-        sb.sourceID = "applicationModel";
-        sb.sourcePropertyName = "stockSymbol";
-        sb.eventName = "stockSymbolChanged";
-        sb.destination = symbolTI;
-        sb.destinationPropertyName = "text";
-        sb.setDocument(this);
-        addBead(sb);
-        c3.addElement(symbolTI);
-        var tb:TextButton = new TextButton();
-        tb.text = "Get Quote";
-        tb.className = "quoteButton";
-        tb.addEventListener("click", tb_clickHandler);
-        c3.addElement(tb);
-        field = new Label();
-        sb = new SimpleBinding();
-        sb.sourcePropertyName = "fieldText";
-        sb.eventName = "valueChange";
-        sb.destination = field;
-        sb.destinationPropertyName = "text";
-        sb.setDocument(this);
-        addBead(sb);
-        c3.addElement(field);
-        output = new Label();
-        output.className = "output";
-        output.height=24;
-        sb = new SimpleBinding();
-        sb.sourceID = "applicationModel";
-        sb.sourcePropertyName = "responseText";
-        sb.eventName = "responseTextChanged";
-        sb.destination = output;
-        sb.destinationPropertyName = "text";
-        sb.setDocument(this);
-        addBead(sb);
-        c3.addElement(output);
-        c3.childrenAdded();
-        
-        c3 = new Container();
-        c3.className="rightSide";
-        c3.addBead(new VerticalLayout());
-        c2.addElement(c3);
-        list = new DropDownList();
-        list.width=100;
-        list.height=17;
-        var cb:ConstantBinding = new ConstantBinding();
-        cb.sourceID = "applicationModel";
-        cb.sourcePropertyName = "strings";
-        cb.destination = list;
-        cb.destinationPropertyName = "dataProvider";
-        cb.setDocument(this);
-        addBead(cb);
-        list.addEventListener("change", list_changeHandler);
-        c3.addElement(list);
-        radio1 = new RadioButton();
-        radio1.text = "Price";
-        radio1.value = "Ask";
-        radio1.groupName = "group1";
-        radio1.addEventListener("change", radioChanged);
-        c3.addElement(radio1);
-        radio2 = new RadioButton();
-        radio2.text = "Change";
-        radio2.value = "Change";
-        radio2.groupName = "group1";
-        radio2.addEventListener("change", radioChanged);
-        c3.addElement(radio2);
-        radio3 = new RadioButton();
-        radio3.text = "Day's High";
-        radio3.value = "DaysHight";
-        radio3.groupName = "group1";
-        radio3.addEventListener("change", radioChanged);
-        c3.addElement(radio3);
-        radio4 = new RadioButton();
-        radio4.text = "Day's Low";
-        radio4.value = "DaysLow";
-        radio4.groupName = "group1";
-        radio4.addEventListener("change", radioChanged);
-        c3.addElement(radio4);
-        showAllData = new CheckBox();
-        showAllData.text = "Show All Data";
-        showAllData.addEventListener("change", showAllData_changeHandler);
-        c3.addElement(showAllData);
-        c3.childrenAdded();
-        ta = new TextArea();
-        ta.width = 300;
-        ta.height = 100;
-        sb = new SimpleBinding();
-        sb.sourceID = "applicationModel";
-        sb.sourcePropertyName = "allData";
-        sb.eventName = "responseDataChanged";
-        sb.destination = ta;
-        sb.destinationPropertyName = "text";
-        sb.setDocument(this);
-        addBead(sb);
-        c.addElement(ta);
-        c2.childrenAdded();
-        c.childrenAdded();
-        
-        return super.MXMLDescriptor;
-
-    }
-    
-    public var symbolTI:TextInput;
-    public var output:Label;
-    public var field:Label;
-    public var list:DropDownList;
-    public var radio1:RadioButton;
-    public var radio2:RadioButton;
-    public var radio3:RadioButton;
-    public var radio4:RadioButton;
-    public var showAllData:CheckBox;
-    public var ta:TextArea;
-    
-    private function tb_clickHandler(event:Event):void
-    {
-        _symbol = symbolTI.text;
-        dispatchEvent(new CustomEvent('buttonClicked'));
-    }
-    
-    private function list_changeHandler(event:Event):void
-    {
-        _symbol = list.selectedItem as String;
-        dispatchEvent(new CustomEvent('listChanged'));
-    }
-    
-    private function showAllData_changeHandler(event:Event):void
-    {
-        setState();
-    }
-}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_as/src/StockDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_as/src/StockDataJSONItemConverter.as b/examples/flexjs/DataBindingExample_as/src/StockDataJSONItemConverter.as
deleted file mode 100644
index a39606b..0000000
--- a/examples/flexjs/DataBindingExample_as/src/StockDataJSONItemConverter.as
+++ /dev/null
@@ -1,40 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package
-{
-    import org.apache.flex.collections.converters.JSONItemConverter;
-    
-    public class StockDataJSONItemConverter extends JSONItemConverter
-    {
-        public function StockDataJSONItemConverter()
-        {
-            super();
-        }
-        
-        override public function convertItem(data:String):Object
-        {
-            var obj:Object = super.convertItem(data);
-			if (obj["query"]["count"] == 0)
-				return "No Data";
-			
-			obj = obj["query"]["results"]["quote"];
-			return obj;
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_as/src/controllers/MyController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_as/src/controllers/MyController.as b/examples/flexjs/DataBindingExample_as/src/controllers/MyController.as
deleted file mode 100644
index b7d52bd..0000000
--- a/examples/flexjs/DataBindingExample_as/src/controllers/MyController.as
+++ /dev/null
@@ -1,92 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package controllers
-{
-	import org.apache.flex.events.Event;
-
-	import org.apache.flex.core.Application;
-	import org.apache.flex.core.IDocument;
-	import org.apache.flex.net.HTTPService;
-	import org.apache.flex.collections.LazyCollection;
-
-    import models.MyModel;
-
-	public class MyController implements IDocument
-	{
-		public function MyController(app:Application = null)
-		{
-			if (app)
-			{
-				app.addEventListener("viewChanged", viewChangeHandler);
-			}
-		}
-
-		private var model:MyModel;
-		private var initialView:Object;
-		private var service:HTTPService;
-		private var collection:LazyCollection;
-
-        private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
-        private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
-
-		private function viewChangeHandler(event:Event):void
-		{
-			var app:Application = event.target as Application;
-			app.initialView.addEventListener("buttonClicked", buttonClickHandler);
-			app.initialView.addEventListener("radioClicked", radioClickHandler);
-            app.initialView.addEventListener("listChanged", listChangedHandler);
-
-            initialView = app.initialView;
-			model = app.model as MyModel;
-			service = app["service"] as HTTPService;
-			collection = app["collection"] as LazyCollection;
-		}
-
-        private function buttonClickHandler(event:Event):void
-        {
-            var sym:String = MyInitialView(initialView).symbol;
-            service.url = queryBegin + sym + queryEnd;
-            service.send();
-            service.addEventListener("complete", completeHandler);
-        }
-
-		private function radioClickHandler(event:Event):void
-		{
-			var field:String = MyInitialView(initialView).requestedField;
-			model.requestedField = field;
-		}
-
-        private function completeHandler(event:Event):void
-        {
-			model.responseData = collection.getItemAt(0);
-        }
-
-        private function listChangedHandler(event:Event):void
-        {
-            model.stockSymbol = MyInitialView(initialView).symbol;
-        }
-
-		public function setDocument(document:Object, id:String = null):void
-		{
-			var app:Application = document as Application;
-			app.addEventListener("viewChanged", viewChangeHandler);
-		}
-
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_as/src/main/flex/DataBindingExample.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_as/src/main/flex/DataBindingExample.as b/examples/flexjs/DataBindingExample_as/src/main/flex/DataBindingExample.as
new file mode 100644
index 0000000..95609cd
--- /dev/null
+++ b/examples/flexjs/DataBindingExample_as/src/main/flex/DataBindingExample.as
@@ -0,0 +1,290 @@
+/**
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+*/
+package
+{
+
+import org.apache.flex.core.Application;
+import org.apache.flex.core.ItemRendererClassFactory;
+import org.apache.flex.core.SimpleCSSValuesImpl;
+import org.apache.flex.events.Event;
+import org.apache.flex.html.beads.CSSButtonView;
+import org.apache.flex.html.beads.CSSTextButtonView;
+import org.apache.flex.html.beads.CSSTextToggleButtonView;
+import org.apache.flex.html.beads.CheckBoxView;
+import org.apache.flex.html.beads.ContainerView;
+import org.apache.flex.html.beads.DataItemRendererFactoryForArrayData;
+import org.apache.flex.html.beads.DropDownListView;
+import org.apache.flex.html.beads.ListView;
+import org.apache.flex.html.beads.RadioButtonView;
+import org.apache.flex.html.beads.SingleLineBorderBead;
+import org.apache.flex.html.beads.SolidBackgroundBead;
+import org.apache.flex.html.beads.TextAreaView;
+import org.apache.flex.html.beads.TextButtonMeasurementBead;
+import org.apache.flex.html.beads.TextFieldLabelMeasurementBead;
+import org.apache.flex.html.beads.TextFieldView;
+import org.apache.flex.html.beads.TextInputWithBorderView;
+import org.apache.flex.html.beads.TextItemRendererFactoryForArrayData;
+import org.apache.flex.html.beads.controllers.DropDownListController;
+import org.apache.flex.html.beads.controllers.ItemRendererMouseController;
+import org.apache.flex.html.beads.controllers.EditableTextKeyboardController;
+import org.apache.flex.html.beads.controllers.ListSingleSelectionMouseController;
+import org.apache.flex.html.beads.layouts.BasicLayout;
+import org.apache.flex.html.beads.layouts.VerticalLayout;
+import org.apache.flex.html.beads.models.ArraySelectionModel;
+import org.apache.flex.html.beads.models.SingleLineBorderModel;
+import org.apache.flex.html.beads.models.TextModel;
+import org.apache.flex.html.beads.models.ToggleButtonModel;
+import org.apache.flex.html.beads.models.ValueToggleButtonModel;
+import org.apache.flex.html.beads.models.ViewportModel;
+import org.apache.flex.html.supportClasses.ContainerContentArea;
+import org.apache.flex.html.supportClasses.DropDownListList;
+import org.apache.flex.html.supportClasses.DataGroup;
+import org.apache.flex.html.supportClasses.ScrollingViewport;
+import org.apache.flex.html.supportClasses.Viewport;
+import org.apache.flex.html.supportClasses.StringItemRenderer;
+import org.apache.flex.net.HTTPService;
+import org.apache.flex.collections.parsers.JSONInputParser;
+import org.apache.flex.collections.LazyCollection;
+import org.apache.flex.utils.ViewSourceContextMenuOption;
+
+import models.MyModel;
+import controllers.MyController;
+
+public class DataBindingExample extends Application
+{
+    
+    public function DataBindingExample()
+    {
+        addEventListener("initialize", initializeHandler);
+        var vi:SimpleCSSValuesImpl = new SimpleCSSValuesImpl();
+        setupStyles(vi);
+        valuesImpl = vi;
+        initialView = new MyInitialView();
+        model = new MyModel();
+        controller = new MyController(this);
+        service = new HTTPService();
+        collection = new LazyCollection();
+        collection.inputParser = new JSONInputParser();
+        collection.itemConverter = new StockDataJSONItemConverter();
+        service.addBead(collection);
+        addBead(service);
+        addBead(new ViewSourceContextMenuOption());
+    }
+        
+    public var service:HTTPService;
+    public var collection:LazyCollection;
+    
+    private function initializeHandler(event:Event):void
+    {
+        MyModel(model).stockSymbol="ADBE";
+    }
+
+    private function setupStyles(vi:SimpleCSSValuesImpl):void
+    {
+        var viv:Object = vi.values = {};
+        viv["global"] = 
+        {
+            fontFamily: "Arial",
+            fontSize: 12        
+        };
+        
+        var o:Object;
+        
+        o = viv[makeDefinitionName("org.apache.flex.html::Container")] =
+        {
+            
+            iBeadView: ContainerView,
+    		iBeadLayout: BasicLayout,
+    		iContentView: ContainerContentArea,
+			iViewport: Viewport,
+			iViewportModel: ViewportModel
+        };
+        
+        o = viv[makeDefinitionName("org.apache.flex.core::View")] =
+        {
+            
+            iBeadView: ContainerView,
+    		iBeadLayout: BasicLayout,
+    		iContentView: ContainerContentArea,
+			iViewport: Viewport,
+			iViewportModel: ViewportModel
+        };
+		
+        CONFIG::as_only {
+            o.iBackgroundBead = SolidBackgroundBead;
+            o.iBorderBead = SingleLineBorderBead;
+        }
+            
+        viv[makeDefinitionName("org.apache.flex.html::List")] = 
+        {
+            iBeadModel: ArraySelectionModel,
+            iBeadView:  ListView,		
+            iBeadController: ListSingleSelectionMouseController,
+            iBeadLayout: VerticalLayout,
+            iContentView: DataGroup,
+            iDataProviderItemRendererMapper: DataItemRendererFactoryForArrayData,
+			iViewport: ScrollingViewport,
+			iViewportModel: ViewportModel,
+            iItemRendererClassFactory: ItemRendererClassFactory,
+            iItemRenderer: StringItemRenderer
+        };
+        
+        o = viv[makeDefinitionName("org.apache.flex.html::Button")] =
+        {
+            backgroundColor: 0xd8d8d8,
+            border: [1, "solid", 0x000000],
+            padding: 4
+        };
+        CONFIG::as_only {
+            o.iBeadView = CSSButtonView;
+        }
+            
+        viv[makeDefinitionName("org.apache.flex.html::Button:hover")] =
+        {
+            backgroundColor: 0x9fa0a1,
+            border: [1, "solid", 0x000000],
+            padding: 4
+        };
+        
+        viv[makeDefinitionName("org.apache.flex.html::Button:active")] =
+        {
+            backgroundColor: 0x929496,
+            border: [1, "solid", 0x000000],
+            padding: 4
+        };
+        
+        CONFIG::as_only {
+            viv["org.apache.flex.html::CheckBox"] =
+            {
+                iBeadModel: ToggleButtonModel,
+                iBeadView:  CheckBoxView
+            };
+            
+            viv["org.apache.flex.html::DropDownList"] =
+            {
+                iBeadModel: ArraySelectionModel,
+                iBeadView: DropDownListView,
+                iBeadController: DropDownListController,
+                iPopUp: DropDownListList
+            };
+            
+            viv["org.apache.flex.html.supportClasses::DropDownListList"] =
+            {
+                iBeadModel: ArraySelectionModel,
+                iDataProviderItemRendererMapper: TextItemRendererFactoryForArrayData,
+                iItemRendererClassFactory: ItemRendererClassFactory,
+                iItemRenderer: StringItemRenderer,
+			    iBackgroundBead: SolidBackgroundBead,
+				borderStyle: "solid",
+    			borderRadius: 4,
+			    borderColor: 0,
+			    borderWidth: 1,
+			    backgroundColor: 0xFFFFFF
+            };
+            
+            viv["org.apache.flex.html::Label"] =
+            {
+                iBeadModel: TextModel,
+                iBeadView: TextFieldView,
+                iMeasurementBead: TextFieldLabelMeasurementBead
+            };
+    
+            viv["org.apache.flex.html::List"] =
+            {
+                iBorderBead: SingleLineBorderBead,
+                iBorderModel: SingleLineBorderModel
+            };
+    
+            viv["org.apache.flex.html::RadioButton"] =
+            {
+                iBeadModel: ValueToggleButtonModel,
+                iBeadView:  RadioButtonView
+            };
+            
+            viv["org.apache.flex.html::TextArea"] =
+            {
+                iBeadModel: TextModel,
+                iBeadView: TextAreaView,
+                iBeadController: EditableTextKeyboardController,
+                iBorderBead: SingleLineBorderBead,
+                iBorderModel: SingleLineBorderModel,
+			    borderStyle: "solid",
+    			borderColor: 0,
+    			borderWidth: 1,
+    			backgroundColor: 0xFFFFFF
+            };
+            
+            viv["org.apache.flex.html::TextButton"] =
+            {
+                iBeadModel: TextModel,
+                iBeadView: CSSTextButtonView,
+                iMeasurementBead: TextButtonMeasurementBead
+            };
+    
+            viv["org.apache.flex.html::TextInput"] =
+            {
+                iBeadModel: TextModel,
+                iBeadView: TextInputWithBorderView,
+                iBeadController: EditableTextKeyboardController,
+                iBorderBead: SingleLineBorderBead,
+			    iBackgroundBead: SolidBackgroundBead,
+			    borderStyle: "solid",
+    			borderColor: 0,
+    			borderWidth: 1,
+    			backgroundColor: 0xFFFFFF
+            };
+            
+            viv["org.apache.flex.html::ToggleTextButton"] =
+            {
+                iBeadModel: ToggleButtonModel,
+                iBeadView:  CSSTextToggleButtonView
+            };
+    
+            viv["org.apache.flex.html::SimpleList"] =
+            {
+                iBeadModel: ArraySelectionModel,
+                iBeadView:  ListView,
+                iBeadController: ListSingleSelectionMouseController,
+                iBeadLayout: VerticalLayout,
+                iContentView: DataGroup,
+                iDataProviderItemRendererMapper: TextItemRendererFactoryForArrayData,
+	    		iViewport: ScrollingViewport,
+	    		iViewportModel: ViewportModel,
+                iItemRendererClassFactory: ItemRendererClassFactory,
+                iItemRenderer: StringItemRenderer
+            }
+            
+            viv["org.apache.flex.html.supportClasses::StringItemRenderer"] =
+            {
+                iBeadController: ItemRendererMouseController,
+                height: 16
+            }
+        }
+    }
+    
+    private function makeDefinitionName(s:String):String
+    {
+        CONFIG::js_only {
+            s = s.replace("::", ".");
+        }
+        return s;
+    }
+}
+
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_as/src/main/flex/MyInitialView.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_as/src/main/flex/MyInitialView.as b/examples/flexjs/DataBindingExample_as/src/main/flex/MyInitialView.as
new file mode 100644
index 0000000..135cb61
--- /dev/null
+++ b/examples/flexjs/DataBindingExample_as/src/main/flex/MyInitialView.as
@@ -0,0 +1,282 @@
+/**
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+*/
+package 
+{    
+
+//import mx.states.State;
+
+import models.MyModel;
+
+import org.apache.flex.binding.ConstantBinding;
+import org.apache.flex.binding.SimpleBinding;
+import org.apache.flex.core.SimpleCSSValuesImpl;
+import org.apache.flex.core.ValuesManager;
+import org.apache.flex.core.ViewBase;
+import org.apache.flex.events.CustomEvent;
+import org.apache.flex.events.Event;
+import org.apache.flex.html.CheckBox;
+import org.apache.flex.html.Container;
+import org.apache.flex.html.DropDownList;
+import org.apache.flex.html.Label;
+import org.apache.flex.html.RadioButton;
+import org.apache.flex.html.TextArea;
+import org.apache.flex.html.TextButton;
+import org.apache.flex.html.TextInput;
+import org.apache.flex.html.beads.layouts.HorizontalLayout;
+import org.apache.flex.html.beads.layouts.VerticalLayout;
+
+public class MyInitialView extends ViewBase
+{
+
+    public function MyInitialView()
+    {
+        addEventListener("initComplete", initCompleteHandler);
+        /*
+        var statesArray = [];
+        var state:State = new mx.states.State();
+        state.name = "hideAll";
+        statesArray.push(state);
+        state = new mx.states.State();
+        state.name = "showAll";
+        statesArray.push(state);
+        states = statesArray;
+        */
+        var vi:SimpleCSSValuesImpl = ValuesManager.valuesImpl as SimpleCSSValuesImpl;
+        vi.addRule(".output", {
+            "font-size": 20
+        });
+        
+        vi.addRule(".topContainer", {
+            "padding": 10
+        });
+        
+        vi.addRule(".leftSide", {
+            "vertical-align": "top",
+            "margin-right": 10
+        });
+        
+        vi.addRule(".rightSide", {
+            "vertical-align": "top",
+            "margin-left": 10,
+            "padding-left": 10
+        });
+        
+        vi.addRule(".quoteButton", {
+            "margin-top": 10,
+            "margin-bottom": 10
+        });
+        
+    }
+    
+    private function initCompleteHandler(event:Event):void
+    {
+        initControls();
+    }
+			
+	private var _symbol:String;
+	
+    public function get symbol():String
+    {
+        return _symbol;
+    }
+	
+	public function get requestedField():String
+	{
+		return radio1.selectedValue as String;
+	}
+	
+    [Bindable]
+    public var fieldText:String;
+    
+	private function radioChanged(e:org.apache.flex.events.Event):void
+	{
+		dispatchEvent(new CustomEvent("radioClicked"));
+		fieldText = RadioButton(e.target).text;
+	}
+	
+	private function initControls():void
+	{
+		list.selectedItem = MyModel(applicationModel).stockSymbol;
+		radio1.selectedValue = MyModel(applicationModel).requestedField;
+		if (radio1.selected)
+			fieldText = radio1.text;
+		else if (radio2.selected)
+			fieldText = radio2.text;
+		else if (radio3.selected)
+			fieldText = radio3.text;
+		else if (radio4.selected)
+			fieldText = radio4.text;
+		
+	}
+    
+    private function setState():void
+    {
+        currentState = showAllData.selected ? "showAll" : "hideAll";    
+    }
+    
+    override public function get MXMLDescriptor():Array
+    {
+        var c:Container = new Container();
+        c.x = 0;
+        c.y = 0;
+        c.className = "topContainer";
+        c.addBead(new VerticalLayout());
+        addElement(c);
+        var l:Label = new Label();
+        l.width = 300;
+        l.text = "Enter Stock Symbol or choose from list:";
+        c.addElement(l);
+        var c2:Container = new Container();
+        c2.addBead(new HorizontalLayout());
+        c.addElement(c2);
+        var c3:Container = new Container();
+        c3.className = "leftSide";
+        c3.addBead(new VerticalLayout());
+        c2.addElement(c3);
+        symbolTI = new TextInput();
+        var sb:SimpleBinding = new SimpleBinding();
+        sb.sourceID = "applicationModel";
+        sb.sourcePropertyName = "stockSymbol";
+        sb.eventName = "stockSymbolChanged";
+        sb.destination = symbolTI;
+        sb.destinationPropertyName = "text";
+        sb.setDocument(this);
+        addBead(sb);
+        c3.addElement(symbolTI);
+        var tb:TextButton = new TextButton();
+        tb.text = "Get Quote";
+        tb.className = "quoteButton";
+        tb.addEventListener("click", tb_clickHandler);
+        c3.addElement(tb);
+        field = new Label();
+        sb = new SimpleBinding();
+        sb.sourcePropertyName = "fieldText";
+        sb.eventName = "valueChange";
+        sb.destination = field;
+        sb.destinationPropertyName = "text";
+        sb.setDocument(this);
+        addBead(sb);
+        c3.addElement(field);
+        output = new Label();
+        output.className = "output";
+        output.height=24;
+        sb = new SimpleBinding();
+        sb.sourceID = "applicationModel";
+        sb.sourcePropertyName = "responseText";
+        sb.eventName = "responseTextChanged";
+        sb.destination = output;
+        sb.destinationPropertyName = "text";
+        sb.setDocument(this);
+        addBead(sb);
+        c3.addElement(output);
+        c3.childrenAdded();
+        
+        c3 = new Container();
+        c3.className="rightSide";
+        c3.addBead(new VerticalLayout());
+        c2.addElement(c3);
+        list = new DropDownList();
+        list.width=100;
+        list.height=17;
+        var cb:ConstantBinding = new ConstantBinding();
+        cb.sourceID = "applicationModel";
+        cb.sourcePropertyName = "strings";
+        cb.destination = list;
+        cb.destinationPropertyName = "dataProvider";
+        cb.setDocument(this);
+        addBead(cb);
+        list.addEventListener("change", list_changeHandler);
+        c3.addElement(list);
+        radio1 = new RadioButton();
+        radio1.text = "Price";
+        radio1.value = "Ask";
+        radio1.groupName = "group1";
+        radio1.addEventListener("change", radioChanged);
+        c3.addElement(radio1);
+        radio2 = new RadioButton();
+        radio2.text = "Change";
+        radio2.value = "Change";
+        radio2.groupName = "group1";
+        radio2.addEventListener("change", radioChanged);
+        c3.addElement(radio2);
+        radio3 = new RadioButton();
+        radio3.text = "Day's High";
+        radio3.value = "DaysHight";
+        radio3.groupName = "group1";
+        radio3.addEventListener("change", radioChanged);
+        c3.addElement(radio3);
+        radio4 = new RadioButton();
+        radio4.text = "Day's Low";
+        radio4.value = "DaysLow";
+        radio4.groupName = "group1";
+        radio4.addEventListener("change", radioChanged);
+        c3.addElement(radio4);
+        showAllData = new CheckBox();
+        showAllData.text = "Show All Data";
+        showAllData.addEventListener("change", showAllData_changeHandler);
+        c3.addElement(showAllData);
+        c3.childrenAdded();
+        ta = new TextArea();
+        ta.width = 300;
+        ta.height = 100;
+        sb = new SimpleBinding();
+        sb.sourceID = "applicationModel";
+        sb.sourcePropertyName = "allData";
+        sb.eventName = "responseDataChanged";
+        sb.destination = ta;
+        sb.destinationPropertyName = "text";
+        sb.setDocument(this);
+        addBead(sb);
+        c.addElement(ta);
+        c2.childrenAdded();
+        c.childrenAdded();
+        
+        return super.MXMLDescriptor;
+
+    }
+    
+    public var symbolTI:TextInput;
+    public var output:Label;
+    public var field:Label;
+    public var list:DropDownList;
+    public var radio1:RadioButton;
+    public var radio2:RadioButton;
+    public var radio3:RadioButton;
+    public var radio4:RadioButton;
+    public var showAllData:CheckBox;
+    public var ta:TextArea;
+    
+    private function tb_clickHandler(event:Event):void
+    {
+        _symbol = symbolTI.text;
+        dispatchEvent(new CustomEvent('buttonClicked'));
+    }
+    
+    private function list_changeHandler(event:Event):void
+    {
+        _symbol = list.selectedItem as String;
+        dispatchEvent(new CustomEvent('listChanged'));
+    }
+    
+    private function showAllData_changeHandler(event:Event):void
+    {
+        setState();
+    }
+}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_as/src/main/flex/StockDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_as/src/main/flex/StockDataJSONItemConverter.as b/examples/flexjs/DataBindingExample_as/src/main/flex/StockDataJSONItemConverter.as
new file mode 100644
index 0000000..a39606b
--- /dev/null
+++ b/examples/flexjs/DataBindingExample_as/src/main/flex/StockDataJSONItemConverter.as
@@ -0,0 +1,40 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package
+{
+    import org.apache.flex.collections.converters.JSONItemConverter;
+    
+    public class StockDataJSONItemConverter extends JSONItemConverter
+    {
+        public function StockDataJSONItemConverter()
+        {
+            super();
+        }
+        
+        override public function convertItem(data:String):Object
+        {
+            var obj:Object = super.convertItem(data);
+			if (obj["query"]["count"] == 0)
+				return "No Data";
+			
+			obj = obj["query"]["results"]["quote"];
+			return obj;
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_as/src/main/flex/controllers/MyController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_as/src/main/flex/controllers/MyController.as b/examples/flexjs/DataBindingExample_as/src/main/flex/controllers/MyController.as
new file mode 100644
index 0000000..b7d52bd
--- /dev/null
+++ b/examples/flexjs/DataBindingExample_as/src/main/flex/controllers/MyController.as
@@ -0,0 +1,92 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package controllers
+{
+	import org.apache.flex.events.Event;
+
+	import org.apache.flex.core.Application;
+	import org.apache.flex.core.IDocument;
+	import org.apache.flex.net.HTTPService;
+	import org.apache.flex.collections.LazyCollection;
+
+    import models.MyModel;
+
+	public class MyController implements IDocument
+	{
+		public function MyController(app:Application = null)
+		{
+			if (app)
+			{
+				app.addEventListener("viewChanged", viewChangeHandler);
+			}
+		}
+
+		private var model:MyModel;
+		private var initialView:Object;
+		private var service:HTTPService;
+		private var collection:LazyCollection;
+
+        private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
+        private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
+
+		private function viewChangeHandler(event:Event):void
+		{
+			var app:Application = event.target as Application;
+			app.initialView.addEventListener("buttonClicked", buttonClickHandler);
+			app.initialView.addEventListener("radioClicked", radioClickHandler);
+            app.initialView.addEventListener("listChanged", listChangedHandler);
+
+            initialView = app.initialView;
+			model = app.model as MyModel;
+			service = app["service"] as HTTPService;
+			collection = app["collection"] as LazyCollection;
+		}
+
+        private function buttonClickHandler(event:Event):void
+        {
+            var sym:String = MyInitialView(initialView).symbol;
+            service.url = queryBegin + sym + queryEnd;
+            service.send();
+            service.addEventListener("complete", completeHandler);
+        }
+
+		private function radioClickHandler(event:Event):void
+		{
+			var field:String = MyInitialView(initialView).requestedField;
+			model.requestedField = field;
+		}
+
+        private function completeHandler(event:Event):void
+        {
+			model.responseData = collection.getItemAt(0);
+        }
+
+        private function listChangedHandler(event:Event):void
+        {
+            model.stockSymbol = MyInitialView(initialView).symbol;
+        }
+
+		public function setDocument(document:Object, id:String = null):void
+		{
+			var app:Application = document as Application;
+			app.addEventListener("viewChanged", viewChangeHandler);
+		}
+
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_as/src/main/flex/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_as/src/main/flex/models/MyModel.as b/examples/flexjs/DataBindingExample_as/src/main/flex/models/MyModel.as
new file mode 100644
index 0000000..4a17f22
--- /dev/null
+++ b/examples/flexjs/DataBindingExample_as/src/main/flex/models/MyModel.as
@@ -0,0 +1,127 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	
+	public class MyModel extends EventDispatcher
+	{
+		public function MyModel()
+		{
+		}
+		
+		private var _requestedField:String = "Ask";
+		
+		[Bindable("requestedFieldChanged")]
+		public function get requestedField():String
+		{
+			return _requestedField;
+		}
+		
+		public function set requestedField(value:String):void
+		{
+			if (value != _requestedField)
+			{
+				_requestedField = value;
+				dispatchEvent(new Event("requestedFieldChanged"));
+				if (_responseData)
+					dispatchEvent(new Event("responseTextChanged"));
+			}
+		}
+		
+		private var _responseText:String;
+		
+		[Bindable("responseTextChanged")]
+		public function get responseText():String
+		{
+			if (_responseData == null)
+				return "";
+			if (_responseData == "No Data")
+				return _responseData as String;
+			var s:String = _responseData[_requestedField];
+			if (s == null)
+			{
+				if (_requestedField == "Ask")
+					s = _responseData["Bid"];
+			}
+			return s;
+		}
+		
+		private var _responseData:Object;
+		
+		[Bindable("responseDataChanged")]
+		public function get responseData():Object
+		{
+			return _responseData;
+		}
+		
+		public function set responseData(value:Object):void
+		{
+			if (value != _responseData)
+			{
+				_responseData = value;
+				_allData = "";
+				dispatchEvent(new Event("responseDataChanged"));
+				dispatchEvent(new Event("responseTextChanged"));
+			}
+		}
+		
+		private var _allData:String = "";
+		
+		[Bindable("responseDataChanged")]
+		public function get allData():String
+		{
+			if (_allData == "" && _responseData != null)
+			{
+				for (var p:String in _responseData)
+				{
+					_allData += p + ": " + _responseData[p] + "\n";
+				}
+			}
+			return _allData;
+		}
+		
+		
+		private var _stockSymbol:String;
+		
+		[Bindable("stockSymbolChanged")]
+		public function get stockSymbol():String
+		{
+			return _stockSymbol;
+		}
+		
+		public function set stockSymbol(value:String):void
+		{
+			if (value != _stockSymbol)
+			{
+				_stockSymbol = value;
+				dispatchEvent(new Event("stockSymbolChanged"));
+			}
+		}
+
+        private var _strings:Array = ["AAPL", "ADBE", "GOOG", "MSFT", "YHOO"];
+        [Bindable("__NoChangeEvent__")]
+        public function get strings():Array
+        {
+            return _strings;
+        }
+
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_as/src/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_as/src/models/MyModel.as b/examples/flexjs/DataBindingExample_as/src/models/MyModel.as
deleted file mode 100644
index 4a17f22..0000000
--- a/examples/flexjs/DataBindingExample_as/src/models/MyModel.as
+++ /dev/null
@@ -1,127 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	
-	public class MyModel extends EventDispatcher
-	{
-		public function MyModel()
-		{
-		}
-		
-		private var _requestedField:String = "Ask";
-		
-		[Bindable("requestedFieldChanged")]
-		public function get requestedField():String
-		{
-			return _requestedField;
-		}
-		
-		public function set requestedField(value:String):void
-		{
-			if (value != _requestedField)
-			{
-				_requestedField = value;
-				dispatchEvent(new Event("requestedFieldChanged"));
-				if (_responseData)
-					dispatchEvent(new Event("responseTextChanged"));
-			}
-		}
-		
-		private var _responseText:String;
-		
-		[Bindable("responseTextChanged")]
-		public function get responseText():String
-		{
-			if (_responseData == null)
-				return "";
-			if (_responseData == "No Data")
-				return _responseData as String;
-			var s:String = _responseData[_requestedField];
-			if (s == null)
-			{
-				if (_requestedField == "Ask")
-					s = _responseData["Bid"];
-			}
-			return s;
-		}
-		
-		private var _responseData:Object;
-		
-		[Bindable("responseDataChanged")]
-		public function get responseData():Object
-		{
-			return _responseData;
-		}
-		
-		public function set responseData(value:Object):void
-		{
-			if (value != _responseData)
-			{
-				_responseData = value;
-				_allData = "";
-				dispatchEvent(new Event("responseDataChanged"));
-				dispatchEvent(new Event("responseTextChanged"));
-			}
-		}
-		
-		private var _allData:String = "";
-		
-		[Bindable("responseDataChanged")]
-		public function get allData():String
-		{
-			if (_allData == "" && _responseData != null)
-			{
-				for (var p:String in _responseData)
-				{
-					_allData += p + ": " + _responseData[p] + "\n";
-				}
-			}
-			return _allData;
-		}
-		
-		
-		private var _stockSymbol:String;
-		
-		[Bindable("stockSymbolChanged")]
-		public function get stockSymbol():String
-		{
-			return _stockSymbol;
-		}
-		
-		public function set stockSymbol(value:String):void
-		{
-			if (value != _stockSymbol)
-			{
-				_stockSymbol = value;
-				dispatchEvent(new Event("stockSymbolChanged"));
-			}
-		}
-
-        private var _strings:Array = ["AAPL", "ADBE", "GOOG", "MSFT", "YHOO"];
-        [Bindable("__NoChangeEvent__")]
-        public function get strings():Array
-        {
-            return _strings;
-        }
-
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/DataGridExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/DataGridExample.mxml b/examples/flexjs/DataGridExample/src/DataGridExample.mxml
deleted file mode 100644
index 41989f8..0000000
--- a/examples/flexjs/DataGridExample/src/DataGridExample.mxml
+++ /dev/null
@@ -1,36 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!---
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-				   xmlns:local="*"
-				   xmlns:models="models.*"
-				   xmlns:js="library://ns.apache.org/flexjs/basic" 
-				   >
-	
-	<js:valuesImpl>
-		<js:SimpleCSSValuesImpl />
-	</js:valuesImpl>
-	<js:model>
-		<models:ProductsModel />
-	</js:model>
-	<js:initialView>
-		<local:MyInitialView />
-	</js:initialView>
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/MyInitialView.mxml b/examples/flexjs/DataGridExample/src/MyInitialView.mxml
deleted file mode 100644
index 2f543e5..0000000
--- a/examples/flexjs/DataGridExample/src/MyInitialView.mxml
+++ /dev/null
@@ -1,68 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:js="library://ns.apache.org/flexjs/basic">
-    <fx:Script>
-        <![CDATA[
-		 private function dataGridChange() : void
-		 {
-			 output.text = "Clicked on row "+dataGrid.selectedIndex;
-			 trace("Click on row "+dataGrid.selectedIndex);
-		 }
-		]]>
-    </fx:Script>
-	
-	<js:Label id="output" x="450" y="30" width="100" />
-		
-	<js:DataGrid id="dataGrid" x="20" y="30" width="400" height="300" change="dataGridChange()" rowHeight="30">
-		<js:beads>
-			<js:DataGridPercentageLayout />
-			<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="productList"
-				destinationPropertyName="dataProvider" />
-		</js:beads>
-		<js:columns>
-			<js:DataGridColumn label="Image" dataField="image" columnWidth="25" itemRenderer="products.ProductItemRenderer" />
-			<js:DataGridColumn label="Title" dataField="title" columnWidth="50" />
-			<js:DataGridColumn label="Sales" dataField="sales" columnWidth="25" />
-		</js:columns>
-	</js:DataGrid>
-		
-	<js:DataGrid id="dataGrid2" x="20" y="400" width="400" height="300" change="dataGridChange()" rowHeight="40">
-		<js:beads>
-		    <js:DataGridLinesBead>
-		       <js:stroke>
-		           <js:SolidColorStroke color="#FF8800" weight="2" />
-		       </js:stroke>
-		    </js:DataGridLinesBead>
-			<js:ConstantBinding
-				sourceID="applicationModel"
-				sourcePropertyName="productList"
-				destinationPropertyName="dataProvider" />
-		</js:beads>
-		<js:columns>
-			<js:DataGridColumn label="Image" dataField="image" columnWidth="100" itemRenderer="products.ProductItemRenderer" />
-			<js:DataGridColumn label="Title" dataField="title" columnWidth="200" />
-			<js:DataGridColumn label="Sales" dataField="sales" columnWidth="100" />
-		</js:columns>
-	</js:DataGrid>
-
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/assets/smallbluerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/assets/smallbluerect.jpg b/examples/flexjs/DataGridExample/src/assets/smallbluerect.jpg
deleted file mode 100644
index 80ed275..0000000
Binary files a/examples/flexjs/DataGridExample/src/assets/smallbluerect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/assets/smallgreenrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/assets/smallgreenrect.jpg b/examples/flexjs/DataGridExample/src/assets/smallgreenrect.jpg
deleted file mode 100644
index c5f9ce6..0000000
Binary files a/examples/flexjs/DataGridExample/src/assets/smallgreenrect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/assets/smallorangerect.gif
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/assets/smallorangerect.gif b/examples/flexjs/DataGridExample/src/assets/smallorangerect.gif
deleted file mode 100644
index 603f810..0000000
Binary files a/examples/flexjs/DataGridExample/src/assets/smallorangerect.gif and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/assets/smallorangerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/assets/smallorangerect.jpg b/examples/flexjs/DataGridExample/src/assets/smallorangerect.jpg
deleted file mode 100644
index 4982d87..0000000
Binary files a/examples/flexjs/DataGridExample/src/assets/smallorangerect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/assets/smallpurplerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/assets/smallpurplerect.jpg b/examples/flexjs/DataGridExample/src/assets/smallpurplerect.jpg
deleted file mode 100644
index 201f625..0000000
Binary files a/examples/flexjs/DataGridExample/src/assets/smallpurplerect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/assets/smallredrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/assets/smallredrect.jpg b/examples/flexjs/DataGridExample/src/assets/smallredrect.jpg
deleted file mode 100644
index d2cfa31..0000000
Binary files a/examples/flexjs/DataGridExample/src/assets/smallredrect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/assets/smallyellowrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/assets/smallyellowrect.jpg b/examples/flexjs/DataGridExample/src/assets/smallyellowrect.jpg
deleted file mode 100644
index b17b62d..0000000
Binary files a/examples/flexjs/DataGridExample/src/assets/smallyellowrect.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/DataGridExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/DataGridExample.mxml b/examples/flexjs/DataGridExample/src/main/flex/DataGridExample.mxml
new file mode 100644
index 0000000..41989f8
--- /dev/null
+++ b/examples/flexjs/DataGridExample/src/main/flex/DataGridExample.mxml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!---
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+				   xmlns:local="*"
+				   xmlns:models="models.*"
+				   xmlns:js="library://ns.apache.org/flexjs/basic" 
+				   >
+	
+	<js:valuesImpl>
+		<js:SimpleCSSValuesImpl />
+	</js:valuesImpl>
+	<js:model>
+		<models:ProductsModel />
+	</js:model>
+	<js:initialView>
+		<local:MyInitialView />
+	</js:initialView>
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/MyInitialView.mxml b/examples/flexjs/DataGridExample/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..2f543e5
--- /dev/null
+++ b/examples/flexjs/DataGridExample/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:js="library://ns.apache.org/flexjs/basic">
+    <fx:Script>
+        <![CDATA[
+		 private function dataGridChange() : void
+		 {
+			 output.text = "Clicked on row "+dataGrid.selectedIndex;
+			 trace("Click on row "+dataGrid.selectedIndex);
+		 }
+		]]>
+    </fx:Script>
+	
+	<js:Label id="output" x="450" y="30" width="100" />
+		
+	<js:DataGrid id="dataGrid" x="20" y="30" width="400" height="300" change="dataGridChange()" rowHeight="30">
+		<js:beads>
+			<js:DataGridPercentageLayout />
+			<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="productList"
+				destinationPropertyName="dataProvider" />
+		</js:beads>
+		<js:columns>
+			<js:DataGridColumn label="Image" dataField="image" columnWidth="25" itemRenderer="products.ProductItemRenderer" />
+			<js:DataGridColumn label="Title" dataField="title" columnWidth="50" />
+			<js:DataGridColumn label="Sales" dataField="sales" columnWidth="25" />
+		</js:columns>
+	</js:DataGrid>
+		
+	<js:DataGrid id="dataGrid2" x="20" y="400" width="400" height="300" change="dataGridChange()" rowHeight="40">
+		<js:beads>
+		    <js:DataGridLinesBead>
+		       <js:stroke>
+		           <js:SolidColorStroke color="#FF8800" weight="2" />
+		       </js:stroke>
+		    </js:DataGridLinesBead>
+			<js:ConstantBinding
+				sourceID="applicationModel"
+				sourcePropertyName="productList"
+				destinationPropertyName="dataProvider" />
+		</js:beads>
+		<js:columns>
+			<js:DataGridColumn label="Image" dataField="image" columnWidth="100" itemRenderer="products.ProductItemRenderer" />
+			<js:DataGridColumn label="Title" dataField="title" columnWidth="200" />
+			<js:DataGridColumn label="Sales" dataField="sales" columnWidth="100" />
+		</js:columns>
+	</js:DataGrid>
+
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/assets/smallbluerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallbluerect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallbluerect.jpg
new file mode 100644
index 0000000..80ed275
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/flex/assets/smallbluerect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/assets/smallgreenrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallgreenrect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallgreenrect.jpg
new file mode 100644
index 0000000..c5f9ce6
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/flex/assets/smallgreenrect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.gif
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.gif b/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.gif
new file mode 100644
index 0000000..603f810
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.gif differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.jpg
new file mode 100644
index 0000000..4982d87
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/flex/assets/smallorangerect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/assets/smallpurplerect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallpurplerect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallpurplerect.jpg
new file mode 100644
index 0000000..201f625
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/flex/assets/smallpurplerect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/assets/smallredrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallredrect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallredrect.jpg
new file mode 100644
index 0000000..d2cfa31
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/flex/assets/smallredrect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/assets/smallyellowrect.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/assets/smallyellowrect.jpg b/examples/flexjs/DataGridExample/src/main/flex/assets/smallyellowrect.jpg
new file mode 100644
index 0000000..b17b62d
Binary files /dev/null and b/examples/flexjs/DataGridExample/src/main/flex/assets/smallyellowrect.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as b/examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as
new file mode 100644
index 0000000..8eab2fe
--- /dev/null
+++ b/examples/flexjs/DataGridExample/src/main/flex/models/ProductsModel.as
@@ -0,0 +1,55 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.EventDispatcher;
+	import org.apache.flex.collections.ArrayList;
+	
+	import products.Product;
+	
+	public class ProductsModel extends EventDispatcher
+	{
+		public function ProductsModel()
+		{
+			_productList = new ArrayList();
+			_productList.source = source;
+		}
+
+		private var source:Array = [
+			new Product("ps100","Widgets",44,200,"assets/smallbluerect.jpg"),
+			new Product("tx200","Thingys",5,285,"assets/smallgreenrect.jpg"),
+			new Product("rz300","Sprockets",80,105,"assets/smallyellowrect.jpg"),
+			new Product("dh440","Doohickies",10,340,"assets/smallredrect.jpg"),
+			new Product("ps220","Weejets",35,190,"assets/smallorangerect.jpg")
+			];
+			
+		private var _productList:ArrayList;
+		
+		public function get productList():ArrayList
+		{
+			return _productList;
+		}
+
+		private var _labelFields:Array = [ "id", "title", "sales", "detail" ];
+		public function get labelFields():Array
+		{
+			return _labelFields;
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/products/Product.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/products/Product.as b/examples/flexjs/DataGridExample/src/main/flex/products/Product.as
new file mode 100644
index 0000000..fd4b31e
--- /dev/null
+++ b/examples/flexjs/DataGridExample/src/main/flex/products/Product.as
@@ -0,0 +1,43 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package products
+{
+	public class Product
+	{
+		public function Product(id:String,title:String,detail:Number,sales:Number,image:String)
+		{
+			this.id = id;
+			this.title = title;
+			this.detail = detail;
+			this.sales = sales;
+			this.image = image;
+		}
+		
+		public var id:String;
+		public var title:String;
+		public var detail:Number;
+		public var image:String;
+		public var sales:Number;
+		
+		public function toString():String
+		{
+			return title;
+		}
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as b/examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as
new file mode 100644
index 0000000..4edc5b7
--- /dev/null
+++ b/examples/flexjs/DataGridExample/src/main/flex/products/ProductItemRenderer.as
@@ -0,0 +1,66 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package products
+{
+	import org.apache.flex.html.Image;
+	import org.apache.flex.html.supportClasses.DataItemRenderer;
+	
+	public class ProductItemRenderer extends DataItemRenderer
+	{
+		public function ProductItemRenderer()
+		{
+			super();
+		}
+		
+		private var image:Image;
+		
+		override public function addedToParent():void
+		{
+			super.addedToParent();
+			
+			// add an image and two labels
+			image = new Image();
+			addElement(image);
+		}
+		
+		override public function get data():Object
+		{
+			return super.data;
+		}
+		
+		override public function set data(value:Object):void
+		{
+			super.data = value;
+			
+			image.source = value.image;
+		}
+		
+		override public function adjustSize():void
+		{
+			var cy:Number = this.height/2;
+			
+			image.x = 4;
+			image.y = cy - 16;
+			image.width = 32;
+			image.height = 32;
+			
+			updateRenderer();
+		}
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/models/ProductsModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/models/ProductsModel.as b/examples/flexjs/DataGridExample/src/models/ProductsModel.as
deleted file mode 100644
index 8eab2fe..0000000
--- a/examples/flexjs/DataGridExample/src/models/ProductsModel.as
+++ /dev/null
@@ -1,55 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.EventDispatcher;
-	import org.apache.flex.collections.ArrayList;
-	
-	import products.Product;
-	
-	public class ProductsModel extends EventDispatcher
-	{
-		public function ProductsModel()
-		{
-			_productList = new ArrayList();
-			_productList.source = source;
-		}
-
-		private var source:Array = [
-			new Product("ps100","Widgets",44,200,"assets/smallbluerect.jpg"),
-			new Product("tx200","Thingys",5,285,"assets/smallgreenrect.jpg"),
-			new Product("rz300","Sprockets",80,105,"assets/smallyellowrect.jpg"),
-			new Product("dh440","Doohickies",10,340,"assets/smallredrect.jpg"),
-			new Product("ps220","Weejets",35,190,"assets/smallorangerect.jpg")
-			];
-			
-		private var _productList:ArrayList;
-		
-		public function get productList():ArrayList
-		{
-			return _productList;
-		}
-
-		private var _labelFields:Array = [ "id", "title", "sales", "detail" ];
-		public function get labelFields():Array
-		{
-			return _labelFields;
-		}
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataGridExample/src/products/Product.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataGridExample/src/products/Product.as b/examples/flexjs/DataGridExample/src/products/Product.as
deleted file mode 100644
index fd4b31e..0000000
--- a/examples/flexjs/DataGridExample/src/products/Product.as
+++ /dev/null
@@ -1,43 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package products
-{
-	public class Product
-	{
-		public function Product(id:String,title:String,detail:Number,sales:Number,image:String)
-		{
-			this.id = id;
-			this.title = title;
-			this.detail = detail;
-			this.sales = sales;
-			this.image = image;
-		}
-		
-		public var id:String;
-		public var title:String;
-		public var detail:Number;
-		public var image:String;
-		public var sales:Number;
-		
-		public function toString():String
-		{
-			return title;
-		}
-	}
-}
\ No newline at end of file


[09/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/rcrawley.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/rcrawley.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/rcrawley.jpg
deleted file mode 100755
index 9b60320..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/rcrawley.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/rdreifus.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/rdreifus.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/rdreifus.jpg
deleted file mode 100755
index 6a2a142..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/rdreifus.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/pic/twong.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/twong.jpg b/examples/flexjs/FlexJSStore_jquery/src/assets/pic/twong.jpg
deleted file mode 100755
index 1124b71..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/pic/twong.jpg and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_a.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_a.png b/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_a.png
deleted file mode 100755
index 20c21e1..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_a.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_b.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_b.png b/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_b.png
deleted file mode 100755
index 069ccd8..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_b.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_c.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_c.png b/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_c.png
deleted file mode 100755
index f6b587e..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_c.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_plus.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_plus.png b/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_plus.png
deleted file mode 100755
index 4192088..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/support_mapmarker_plus.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/assets/trashcan.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/assets/trashcan.png b/examples/flexjs/FlexJSStore_jquery/src/assets/trashcan.png
deleted file mode 100644
index 483a37c..0000000
Binary files a/examples/flexjs/FlexJSStore_jquery/src/assets/trashcan.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/beige.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/beige.css b/examples/flexjs/FlexJSStore_jquery/src/beige.css
deleted file mode 100755
index 764b49c..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/beige.css
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-*/
-
-/* Style for color-specific state - Beige */
-
-@namespace "library://ns.apache.org/flexjs/basic";
-
-/*
-//----------------------------
-//  Global styles
-//----------------------------
-*/
-.global
-{
-    highlightAlphas:        .5, .25;
-    borderColor:            #939A9D;
-    headerColors:           #A65904, #E68701;
-    themeColor:             #75B1CE;
-    rollOverColor:          #D6E6EE;
-    selectionColor:         #B8D5E4;
-}
-
-/*
-//----------------------------
-// Type selectors
-//----------------------------
-*/
-Application
-{
-    backgroundColor:		#EAE6DD;
-    backgroundImage:        "assets/beige_background.jpg";
-}
-
-/*
-//----------------------------
-// Apply to Panels and Alerts by default
-//----------------------------
-*/
-.windowStatus {
-	color: #FFCC99;
-}
-
-.windowStyles {		/* catalog panel's title text */
-	color: #FFCC99;
-}
-
-/*
-//----------------------------
-// Named styles
-//----------------------------
-*/
-
-.colorPanel /* for the background of some surfaces */
-{
-    borderStyle:            "solid";
-    borderWidth:        0;
-    backgroundColor:		#BCB29F;
-    backgroundAlpha:		0.4;
-    color: 					#170505;
-    cornerRadius:           4;
-    dropShadowEnabled:      true;
-}
-
-.homeProgramHeader /* in HomeView */
-{
-    fontWeight:             "bold";
-    fontSize:               13;
-    color:                  #BE7E3F;
-}
-
-.homeMap
-{
-    borderStyle:            "solid";
-    cornerRadius:           4;
-    backgroundColor:        #BE7E3F;
-    alpha:                  1;
-    dottedMap:              "assets/beige_dotted_map.png";
-}
-
-.instructions
-{
-    alpha:                  .85;
-    color:                  #5C5857;
-}
-
-.storeControlBar
-{
-    fillAlphas: 			.60, .40;
-    fillColors: 			#8F8879, #BCB29F;
-    highlightAlphas:		.05, .25;
-    cornerRadius: 			3;
-	shadowDistance:         4;
-	paddingLeft:            0;
-	paddingRight:           0;
-	paddingTop:             0;
-	paddingBottom:          0;
-	horizontalGap:          0;
-    storeLogo:              "assets/logo_orange.png";
-}
-
-.storeButtonBar
-{
-    cornerRadius:           0;
-    buttonStyleName:        "storeButton";
-    themeColor:             #A65904;
-}
-
-.storeButton
-{
-    cornerRadius:           0;
-    fillColors:             #8F8879, #BCB29F, #A65904, #E68701;
-    fillAlphas:             1, 1;
-    highlightAlphas:        .5, .25;
-    fontWeight:             "normal";
-    /** need to port to ButtonView 
-    selectedOverSkin:       ClassReference("samples.flexstore.ButtonBarButtonSkin");
-    selectedUpSkin:         ClassReference("samples.flexstore.ButtonBarButtonSkin");
-    overSkin:               ClassReference("samples.flexstore.ButtonBarButtonSkin");
-    **/
-}
-
-.catalogTitleButtonSelected
-{
-    color:                  #FFFFFF;
-    fontWeight:             "bold";
-}
-
-.catalogTitleButtonDeselected
-{
-    color:                  #222222;
-    fontWeight:             "bold";
-}
-
-.catalogTitleButtonHighlighted
-{
-    color:                  #FFCC99;
-    fontWeight:             "bold";
-}
-
-.catalogPanel
-{
-    highlightAlphas:        .5, .25;
-    headerColors:           #A65904, #E68701;
-    borderAlpha:            1;
-    borderColor:            #FFFFFF;
-    border-width: 1px;
-    borderThicknessRight:   1;
-    borderThicknessBottom:  1;
-    paddingRight:           0;
-    paddingBottom:          0;
-}
-
-

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/blue.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/blue.css b/examples/flexjs/FlexJSStore_jquery/src/blue.css
deleted file mode 100755
index 58e98cd..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/blue.css
+++ /dev/null
@@ -1,165 +0,0 @@
-/*
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-*/
-
-/* Style for color-specific state - Beige */
-
-/*
-//----------------------------
-//  Global styles
-//----------------------------
-*/
-.global
-{
-    highlightAlphas:        .5, .25;
-    borderColor:            #939A9D;
-    headerColors:           #456F84, #9ABBC9;
-    themeColor:             #75B1CE;
-    rollOverColor:          #D6E6EE;
-    selectionColor:         #B8D5E4;
-}
-
-/*
-//----------------------------
-// Type selectors
-//----------------------------
-*/
-Application
-{
-    backgroundColor:		#AAB2B7;
-    backgroundImage:        Embed("assets/blue_background.jpg");
-}
-
-/*
-//----------------------------
-// Apply to Panels and Alerts by default
-//----------------------------
-*/
-.windowStatus {
-	color: #BDE9FA;
-}
-
-.windowStyles {		/* catalog panel's title text */
-	color: #BDE9FA;
-}
-
-/*
-//----------------------------
-// Named styles
-//----------------------------
-*/
-
-.colorPanel /* for the background of some surfaces */
-{
-    borderStyle:            "solid";
-    borderThickness:        0;
-    backgroundColor:		#BDD6E2;
-    backgroundAlpha:		0.4;
-    color: 					#170505;
-    cornerRadius:           4;
-    dropShadowEnabled:      true;
-}
-
-.homeProgramHeader /* in HomeView */
-{
-    fontWeight:             "bold";
-    fontSize:               13;
-    color:                  #7AA4B9;
-}
-
-.homeMap
-{
-    borderStyle:            "solid";
-    cornerRadius:           4;
-    backgroundColor:        #7AA4B9;
-    alpha:                  1;
-    dottedMap:              Embed("assets/blue_dotted_map.png");
-}
-
-.instructions
-{
-    alpha:                  .85;
-    color:                  #5C5857;
-}
-
-.storeControlBar
-{
-    fillAlphas: 			.60, .40;
-    fillColors: 			#4A6F81, #BDD6E2;
-    highlightAlphas:		.05, .25;
-    cornerRadius: 			3;
-	shadowDistance:         4;
-	paddingLeft:            0;
-	paddingRight:           0;
-	paddingTop:             0;
-	paddingBottom:          0;
-	horizontalGap:          0;
-    storeLogo:              Embed("assets/logo_blue.png");
-}
-
-.storeButtonBar
-{
-    cornerRadius:           0;
-    buttonStyleName:        "storeButton";
-    themeColor:             #456F84;
-}
-
-.storeButton
-{
-    cornerRadius:           0;
-    fillColors:             #4A6F81, #BDD6E2, #456F84, #9ABBC9;
-    fillAlphas:             1, 1;
-    highlightAlphas:        .5, .25;
-    fontWeight:             "normal";
-    selectedOverSkin:       ClassReference("samples.flexstore.ButtonBarButtonSkin");
-    selectedUpSkin:         ClassReference("samples.flexstore.ButtonBarButtonSkin");
-    overSkin:               ClassReference("samples.flexstore.ButtonBarButtonSkin");
-}
-
-.catalogTitleButtonSelected
-{
-    color:                  #FFFFFF;
-    fontWeight:             "bold";
-}
-
-.catalogTitleButtonDeselected
-{
-    color:                  #222222;
-    fontWeight:             "bold";
-}
-
-.catalogTitleButtonHighlighted
-{
-    color:                  #BDE9FA;
-    fontWeight:             "bold";
-}
-
-.catalogPanel
-{
-    highlightAlphas:        .5, .25;
-    headerColors:           #456F84, #9ABBC9;
-    borderAlpha:            1;
-    borderColor:            #FFFFFF;
-    borderThicknessRight:   1;
-    borderThicknessBottom:  1;
-    paddingRight:           0;
-    paddingBottom:          0;
-}
-

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/data/catalog.json
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/data/catalog.json b/examples/flexjs/FlexJSStore_jquery/src/data/catalog.json
deleted file mode 100755
index 89bdd43..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/data/catalog.json
+++ /dev/null
@@ -1,236 +0,0 @@
-{ catalog : [
-
-    { "productId" :"1",
-      "name" : "Andrew Brilliam",
-      "description" : "15 years experience. 8 years with Flex.  Specializing in Text Layout Framework",
-      "price" : 60.00,
-      "image" : "assets/pic/abrilliam.jpg",
-      "experience" : 15,
-      "blazeds" : false,
-      "mobile" : false,
-      "video" : false,
-      "highlight1" : "Text Layout Framework",
-	  "highlight2" : "Parsley"
-    },
-    
-    { "productId" : "2",
-        "name" : "Annette Kotter",
-        "description" : "Specializing in custom components.  PHP servers.",
-        "price" : 55,
-        "image" : "assets/pic/akotter.jpg",
-        "experience" : 3,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "Custom Components",
-		"highlight2" : "PHP"
-    },
-
-    { "productId" : "3",
-        "name" : "Ben Crater",
-        "description" : "Specializing in BlazeDS backends.",
-        "price" : 55,
-        "image" : "assets/pic/bcrater.jpg",
-        "experience" : 4,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Remote Object"
-    },
-
-    { "productId" : "4",
-        "name" : "Beth Leporte",
-        "description" : "BlazeDS or PHP servers.  Multimedia messagin.",
-        "price" : 70.00,
-        "image" : "assets/pic/bleporte.jpg",
-        "experience" : 6,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "Multimedia messaging",
-		"highlight2" : "BlazeDS"
-    },
-
-    { "productId" : "5",
-        "name" : "Brad Van Brocklin",
-        "description" : "Emphasis on mobile application development",
-        "price" : 80,
-        "image" : "assets/pic/bvanbrocklin.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : false,
-        "highlight1" : "Mobile",
-		"highlight2" : "Android"
-    },
-
-    { "productId" : "6",
-        "name" : "Carlos Carpenter",
-        "description" : "Built many mobile apps and video apps.",
-        "price" : 80,
-        "image" : "assets/pic/ccarpenter.jpg",
-        "experience" : 4,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Mobile",
-		"highlight2" : "Video"
-    },
-
-    { "productId" : "7",
-        "name" : "Christine Lampberto",
-        "description" : "7 years experience building mobile applications.",
-        "price" : 90,
-        "image" : "assets/pic/clampberto.jpg",
-        "experience" : 7,
-        "blazeds" : true,
-        "mobile" : true,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Mobile"
-    },
-
-    { "productId" : "8",
-        "name" : "Dee Dee Avenon",
-        "description" : "I've been making video apps for over 5 years and mobile apps for about 3 years.",
-        "price" : 100,
-        "image" : "assets/pic/davenon.jpg",
-        "experience" : 10,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "9",
-        "name" : "Denise McGoyal",
-        "description" : "Specializing in video sharing applicaions.  MObile apps too.",
-        "price" : 100,
-        "image" : "assets/pic/dmcgoyal.jpg",
-        "experience" : 5,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "10",
-        "name" : "Daniel Willhelm",
-        "description" : "I'm into mobile apps, video apps and social apps.",
-        "price" : 70,
-        "image" : "assets/pic/dwillhelm.jpg",
-        "experience" : 90,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "11",
-        "name" : "Eunice Sunderland",
-        "description" : "My recent focus is on mobile apps, but I have considerable experience in video apps as well.",
-        "price" : 150,
-        "image" : "assets/pic/esunderland.jpg",
-        "experience" : 30,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "12",
-        "name" : "Jane Proctor",
-        "description" : "I've been developing mobile companion apps for the past 3 years.",
-        "price" : 75,
-        "image" : "assets/pic/jproctor.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "13",
-        "name" : "Mark Fields",
-        "description" : "Video is my favorite thing.  Mobile is also a favorite.",
-        "price" : 60,
-        "image" : "assets/pic/mfields.jpg",
-        "experience" : 70,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "14",
-        "name" : "Patricia Dempsey",
-        "description" : "I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.",
-        "price" : 120,
-        "image" : "assets/pic/pdempsey.jpg",
-        "experience" : 7,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "15",
-        "name" : "Paul Trandep",
-        "description" : "I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'",
-        "price" : 50,
-        "image" : "assets/pic/ptranep.jpg",
-        "experience" : 6,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "16",
-        "name" : "Roscoe Crawley",
-        "description" : "My main specialty is in BlazeDS connected to Flex.",
-        "price" : 59,
-        "image" : "assets/pic/rcrawley.jpg",
-        "experience" : 9,
-        "blazeds" : true,
-        "mobile" : false,
-        "video" : false,
-        "highlight1" : "BlazeDS",
-		"highlight2" : "Remote Object"
-    },
-
-    { "productId" : "17",
-        "name" : "Renee Dreifus",
-            "description" : "I can do it all: BlazeDS, Mobile, Video.",
-        "price" : 79,
-        "image" : "assets/pic/rdreifus.jpg",
-        "experience" : 90,
-        "blazeds" : true,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    },
-
-    { "productId" : "18",
-        "name" : "Tina Wong",
-        "description" : "I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.",
-        "price" : 109,
-        "image" : "assets/pic/twong.jpg",
-        "experience" : 9,
-        "blazeds" : false,
-        "mobile" : true,
-        "video" : true,
-        "highlight1" : "Video Applications",
-		"highlight2" : "Mobile Applications"
-    
-];

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/data/catalog.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/data/catalog.xml b/examples/flexjs/FlexJSStore_jquery/src/data/catalog.xml
deleted file mode 100755
index 423e177..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/data/catalog.xml
+++ /dev/null
@@ -1,256 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
- 
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements.  See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You 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.
- 
- -->
-<catalog>
-
-    <product productId="1">
-        <name>Andrew Brilliam</name>
-        <description>15 years experience. 8 years with Flex.  Specializing in Text Layout Framework</description>
-        <price>60.00</price>
-        <image>assets/pic/abrilliam.jpg</image>
-        <experience>15</experience>
-        <blazeds>false</blazeds>
-        <mobile>false</mobile>
-        <video>false</video>
-        <highlight1>Text Layout Framework</highlight1>
-		<highlight2>Parsley</highlight2>
-    </product>
-
-    <product productId="2">
-        <name>Annette Kotter</name>
-        <description>Specializing in custom components.  PHP servers.</description>
-        <price>55</price>
-        <image>assets/pic/akotter.jpg</image>
-        <experience>3</experience>
-        <blazeds>true</blazeds>
-        <mobile>false</mobile>
-        <video>false</video>
-        <highlight1>Custom Components</highlight1>
-		<highlight2>PHP</highlight2>
-    </product>
-
-    <product productId="3">
-        <name>Ben Crater</name>
-        <description>Specializing in BlazeDS backends.</description>
-        <price>55</price>
-        <image>assets/pic/bcrater.jpg</image>
-        <experience>4</experience>
-        <blazeds>true</blazeds>
-        <mobile>false</mobile>
-        <video>false</video>
-        <highlight1>BlazeDS</highlight1>
-		<highlight2>Remote Object</highlight2>
-    </product>
-
-    <product productId="4">
-        <name>Beth Leporte</name>
-        <description>BlazeDS or PHP servers.  Multimedia messagin.</description>
-        <price>70.00</price>
-        <image>assets/pic/bleporte.jpg</image>
-        <experience>6</experience>
-        <blazeds>true</blazeds>
-        <mobile>false</mobile>
-        <video>false</video>
-        <highlight1>Multimedia messaging</highlight1>
-		<highlight2>BlazeDS</highlight2>
-    </product>
-
-    <product productId="5">
-        <name>Brad Van Brocklin</name>
-        <description>Emphasis on mobile application development</description>
-        <price>80</price>
-        <image>assets/pic/bvanbrocklin.jpg</image>
-        <experience>6</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>false</video>
-        <highlight1>Mobile</highlight1>
-		<highlight2>Android</highlight2>
-    </product>
-
-    <product productId="6">
-        <name>Carlos Carpenter</name>
-        <description>Built many mobile apps and video apps.</description>
-        <price>80</price>
-        <image>assets/pic/ccarpenter.jpg</image>
-        <experience>4</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Mobile</highlight1>
-		<highlight2>Video</highlight2>
-    </product>
-
-    <product productId="7">
-        <name>Christine Lampberto</name>
-        <description>7 years experience building mobile applications.</description>
-        <price>90</price>
-        <image>assets/pic/clampberto.jpg</image>
-        <experience>7</experience>
-        <blazeds>true</blazeds>
-        <mobile>true</mobile>
-        <video>false</video>
-        <highlight1>BlazeDS</highlight1>
-		<highlight2>Mobile</highlight2>
-    </product>
-
-    <product productId="8">
-        <name>Dee Dee Avenon</name>
-        <description>I've been making video apps for over 5 years and mobile apps for about 3 years.</description>
-        <price>100</price>
-        <image>assets/pic/davenon.jpg</image>
-        <experience>10</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="9">
-        <name>Denise McGoyal</name>
-        <description>Specializing in video sharing applicaions.  MObile apps too.</description>
-        <price>100</price>
-        <image>assets/pic/dmcgoyal.jpg</image>
-        <experience>5</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="10">
-        <name>Daniel Willhelm</name>
-        <description>I'm into mobile apps, video apps and social apps.</description>
-        <price>70</price>
-        <image>assets/pic/dwillhelm.jpg</image>
-        <experience>90</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="11">
-        <name>Eunice Sunderland</name>
-        <description>My recent focus is on mobile apps, but I have considerable experience in video apps as well.</description>
-        <price>150</price>
-        <image>assets/pic/esunderland.jpg</image>
-        <experience>30</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="12">
-        <name>Jane Proctor</name>
-        <description>I've been developing mobile companion apps for the past 3 years.</description>
-        <price>75</price>
-        <image>assets/pic/jproctor.jpg</image>
-        <experience>6</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="13">
-        <name>Mark Fields</name>
-        <description>Video is my favorite thing.  Mobile is also a favorite.</description>
-        <price>60</price>
-        <image>assets/pic/mfields.jpg</image>
-        <experience>70</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="14">
-        <name>Patricia Dempsey</name>
-        <description>I've been cranking out mobile apps for the past 6 years.  A few have involved video as well.</description>
-        <price>120</price>
-        <image>assets/pic/pdempsey.jpg</image>
-        <experience>7</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="15">
-        <name>Paul Trandep</name>
-        <description>I've been working on a mobile app that incorporates music.  It just shipped so now I'm looking for the next fun thing to work on.'</description>
-        <price>50</price>
-        <image>assets/pic/ptranep.jpg</image>
-        <experience>6</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="16">
-        <name>Roscoe Crawley</name>
-        <description>My main specialty is in BlazeDS connected to Flex.</description>
-        <price>59</price>
-        <image>assets/pic/rcrawley.jpg</image>
-        <experience>9</experience>
-        <blazeds>true</blazeds>
-        <mobile>false</mobile>
-        <video>false</video>
-        <highlight1>BlazeDS</highlight1>
-		<highlight2>Remote Object</highlight2>
-    </product>
-
-    <product productId="17">
-        <name>Renee Dreifus</name>
-            <description>I can do it all: BlazeDS, Mobile, Video.</description>
-        <price>79</price>
-        <image>assets/pic/rdreifus.jpg</image>
-        <experience>90</experience>
-        <blazeds>true</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-    <product productId="18">
-        <name>Tina Wong</name>
-        <description>I've been developing Flex apps since 1.5.  Most of my recent work has been on mobile apps.</description>
-        <price>109</price>
-        <image>assets/pic/twong.jpg</image>
-        <experience>9</experience>
-        <blazeds>false</blazeds>
-        <mobile>true</mobile>
-        <video>true</video>
-        <highlight1>Video Applications</highlight1>
-		<highlight2>Mobile Applications</highlight2>
-    </product>
-
-</catalog>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main.css
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main.css b/examples/flexjs/FlexJSStore_jquery/src/main.css
deleted file mode 100755
index 0787a24..0000000
--- a/examples/flexjs/FlexJSStore_jquery/src/main.css
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-*/
-
-@namespace basic "library://ns.apache.org/flexjs/basic";
-
-/*
-//----------------------------
-//  Global styles
-//----------------------------
-*/
-.global {
-    IStatesImpl:            ClassReference("org.apache.flex.core.StatesWithTransitionsImpl");
-    color:                  #170505;
-    fillAlphas:             1.00, 1.00; /* last pair are for OVER state */
-    fillColors: 		    #FFFFFF, #DDDDDD, #FFFFFF, #EEEEEE;
-}
-
-global {
-    IStatesImpl:            ClassReference("org.apache.flex.core.StatesWithTransitionsImpl");
-}
-
-/*
-//----------------------------
-// Type selectors
-//----------------------------
-
-HRule
-{
-    color:                  #666666;
-}
-*/
-
-/*
-//----------------------------
-// Named styles
-//----------------------------
-*/
-.glass {
-    borderColor:		    #767473;
-    fillAlphas: 		    .60, .60, .60, .60;
-    fillColors: 		    #888888, #F3F3F3, #9E9E9E, #FCFCFC;
-    highlightAlphas:	    .07, .45;
-}
-
-.glassSlider
-{
-    fillAlphas: 		    .80, .80, .80, .80;
-    fillColors: 		    #F3F3F3, #BBBBBB, #FCFCFC, #CCCCCC;
-}
-
-.listItem
-{
-    paddingLeft:            4;
-    paddingRight:           4;
-    horizontalGap:          5;
-    verticalAlign:          "middle";
-    backgroundColor:        #FFFFFF;
-    backgroundAlpha:        .5;
-    borderStyle:            "outset";
-}
-
-basic|Container
-{
-    IBeadLayout: ClassReference("org.apache.flex.html.beads.layouts.BasicLayout");
-}
-
-.sectionHeader
-{
-    fontWeight:             "bold";
-    fontSize:               11;
-}
-
-.homeSection
-{
-    cornerRadius:           4;
-    borderStyle:            "solid";
-}
-
-.hoverButton
-{
-    height: 20px;
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/FlexJSStore.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/FlexJSStore.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/FlexJSStore.mxml
new file mode 100755
index 0000000..e5621c0
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/FlexJSStore.mxml
@@ -0,0 +1,268 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<jquery:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+                xmlns:js="library://ns.apache.org/flexjs/basic" 
+                xmlns:jquery="library://ns.apache.org/flexjs/jquery"
+                xmlns="*"
+                initialize="startService()"
+			    pageTitle="FlexStore">
+	
+	<fx:Script>
+		<![CDATA[	
+            import org.apache.flex.core.ValuesManager;
+            
+            /*
+			private var currentTheme:String = "beige";
+			
+			private function toggleTheme():void
+			{
+				if (currentTheme == "beige")
+				{
+					currentTheme = "blue";
+				}
+				else
+				{
+					currentTheme = "beige";
+				}
+				
+				loadStyle();
+			}
+			*/
+            
+			private function startService():void
+			{
+				productService.send();
+			}
+			
+			private function loadStyle():void
+			{
+                /* load css not implemented yet
+				var eventDispatcher:IEventDispatcher =
+					styleManager.loadStyleDeclarations(currentTheme + ".swf");
+				eventDispatcher.addEventListener(StyleEvent.COMPLETE, completeHandler);
+                */
+			}
+			
+			private function completeHandler(event:Event):void
+			{
+				image.source = ValuesManager.valuesImpl.getValue(acb, "storeLogo");
+                /*
+				super.initialized = true;
+                */
+                callLater.callLater(prebake);
+			}
+			
+            /*
+			override public function set initialized(value:Boolean):void
+			{
+				// Hold off until the Runtime CSS SWF is done loading.
+			}
+            */
+            
+            private var stateChain:Array;
+            
+            private function headHome():void
+            {
+                homeButton.selected = true;
+                if (initialView.currentState == "ProductsState")
+                {
+                    productsButton.selected = false;
+                    stateChain = ["ProductsWipeUp", "HomeWipeDown", "HomeState"];
+                    initialView.currentState = "ProductsWipeUp";
+                }
+                else if (initialView.currentState == "SupportState")
+                {
+                    supportButton.selected = false;
+                    stateChain = ["SupportWipeUp", "HomeWipeDown", "HomeState"];
+                    initialView.currentState = "SupportWipeUp";                    
+                }
+            }
+            
+            private function headToProducts():void
+            {
+                productsButton.selected = true;
+                if (initialView.currentState == "SupportState")
+                {
+                    supportButton.selected = false;
+                    stateChain = ["SupportWipeUp", "ProductsWipeDown", "ProductsState"];
+                    initialView.currentState = "SupportWipeUp";                    
+                }
+                if (initialView.currentState == "HomeState")
+                {
+                    homeButton.selected = false;
+                    stateChain = ["HomeWipeUp", "ProductsWipeDown", "ProductsState"];
+                    initialView.currentState = "HomeWipeUp";                    
+                }
+            }
+            
+            private function headToSupport():void
+            {
+                supportButton.selected = true;
+                if (initialView.currentState == "ProductsState")
+                {
+                    productsButton.selected = false;
+                    stateChain = ["ProductsWipeUp", "SupportWipeDown", "SupportState"];
+                    initialView.currentState = "ProductsWipeUp";                    
+                }
+                if (initialView.currentState == "HomeState")
+                {
+                    homeButton.selected = false;
+                    stateChain = ["HomeWipeUp", "SupportWipeDown", "SupportState"];
+                    initialView.currentState = "HomeWipeUp";                    
+                }
+            }
+            
+            private function prebake():void
+            {
+                callLater.callLater(prebake2);
+            }
+            
+            private function prebake2():void
+            {
+                trace("prebake2");
+                stateChain = ["ProductsPreBake", "HomeState"];
+                initialView.currentState = "ProductsPreBake";
+            }
+                
+            private function chainStatesIfNeeded():void
+            {
+                if (stateChain != null)
+                {
+                    if (initialView.currentState == stateChain[0])
+                    {
+                        callLater.callLater(nextState);
+                    }
+                }
+            }
+            
+            private function nextState():void
+            {
+                stateChain.shift();
+                if (stateChain.length)
+                    initialView.currentState = stateChain[0];
+                else
+                    stateChain = null;
+            }
+		]]>
+	</fx:Script>
+	
+	<fx:Style source="main.css"/>
+    <fx:Style source="beige.css"/>
+	
+    <fx:Declarations>
+        <js:HTTPService id="productService" url="data/catalog.json">
+            <js:LazyCollection id="catalog" complete="if (pView) pView.catalog = catalog">
+                <js:inputParser>
+                    <js:JSONInputParser />
+                </js:inputParser>
+                <js:itemConverter>
+                    <ProductJSONItemConverter />
+                </js:itemConverter> 
+            </js:LazyCollection>
+        </js:HTTPService>        
+    </fx:Declarations>
+    <jquery:valuesImpl>
+        <js:SimpleCSSValuesImpl />
+    </jquery:valuesImpl>
+	<jquery:beads>
+        <js:CallLaterBead id="callLater" />
+        <js:ApplicationDataBinding />
+    </jquery:beads>
+    <jquery:initialView>
+        <js:View	width="990" height="585"
+                        initComplete="completeHandler(null)"
+                        stateChangeComplete="chainStatesIfNeeded()">
+            <js:states>
+                <js:State name="HomeState" stateGroups="['Home']" />
+                <js:State name="HomeWipeUp" stateGroups="['Home']" />
+                <js:State name="HomeWipeDown" stateGroups="['Home']" />
+                <js:State name="ProductsPreBake" stateGroups="['Home', 'Products']" />
+                <js:State name="ProductsState" stateGroups="['Products']" />
+                <js:State name="ProductsWipeUp" stateGroups="['Products']" />
+                <js:State name="ProductsWipeDown" stateGroups="['Products']" />
+                <js:State name="SupportState" stateGroups="['Support']" />
+                <js:State name="SupportWipeUp" stateGroups="['Support']" />
+                <js:State name="SupportWipeDown" stateGroups="['Support']" />
+            </js:states>
+            
+            <js:transitions>
+                <js:Transition fromState="HomeState" toState="HomeWipeUp">
+                    <js:Wipe direction="up" target="homeView" />
+                </js:Transition>
+                <js:Transition fromState="HomeWipeDown" toState="HomeState">
+                    <js:Wipe direction="down" target="homeView" />
+                </js:Transition>
+                <js:Transition fromState="ProductsState" toState="ProductsWipeUp">
+                    <js:Wipe direction="up" target="pView" />
+                </js:Transition>
+                <js:Transition fromState="ProductsWipeDown" toState="ProductsState">
+                    <js:Wipe direction="down" target="pView" />
+                </js:Transition>
+                <js:Transition fromState="SupportState" toState="SupportWipeUp">
+                    <js:Wipe direction="up" target="supportView" />
+                </js:Transition>
+                <js:Transition fromState="SupportWipeDown" toState="SupportState">
+                    <js:Wipe direction="down" target="supportView" />
+                </js:Transition>
+            </js:transitions>
+            <js:beads>
+                <js:VerticalLayout />
+            </js:beads>
+            <js:ControlBar id="acb" width="100%" className="storeControlBar" >
+                <js:beads>
+                    <js:HorizontalLayout />
+                </js:beads>
+                <js:Image id="image" />
+                         <!-- click="toggleTheme()" -->
+                         <!-- toolTip="Change Theme"/ -->
+                <jquery:ToggleTextButton id="homeButton"
+                                text="Home"
+                                height="100%"
+                                selected="true"
+                                className="storeButtonBar"
+                                click="headHome()" />
+                <jquery:ToggleTextButton id="productsButton"
+                                text="Products"
+                                height="100%"
+                                className="storeButtonBar"
+                                click="headToProducts()"/>
+                <jquery:ToggleTextButton id="supportButton"
+                                text="Support"
+                                height="100%"
+                                className="storeButtonBar"
+                                click="headToSupport()"/>            
+            </js:ControlBar>
+            <js:Container width="990" >
+                <js:style>
+                    <js:SimpleCSSStyles paddingLeft="0" paddingRight="0"/>
+                </js:style>
+                        
+                <HomeView id="homeView" width="100%" height="550" includeIn="Home"
+                          />
+                <ProductsView id="pView" includeIn="Products" visible.ProductsPreBake="false"
+                              width="100%" height="550" initComplete="if (catalog.length) pView.catalog = catalog"
+                              />
+                <SupportView id="supportView" includeIn="Support"
+                             width="100%" height="550"
+                             />
+            </js:Container>
+        </js:View>        
+    </jquery:initialView>    
+</jquery:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/HomeView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/HomeView.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/HomeView.mxml
new file mode 100755
index 0000000..90049b5
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/HomeView.mxml
@@ -0,0 +1,195 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<!--
+This component is primarily static and is only meant to show what other
+pages of the store could look like.
+
+Note that this page was put together in the Design view so you'll see more
+hard coded locations and sizes.
+
+Also note when working with a Canvas that using the constraint styles 
+(e.g., left, top, right, bottom) can provide better layout predictability than 
+using x and y, especially when percentage widths and heights are used.
+
+Width and height are hard-coded in the root tag to help the Design view.
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+         xmlns:js="library://ns.apache.org/flexjs/basic" 
+         xmlns:jquery="library://ns.apache.org/flexjs/jquery"
+           xmlns="*" width="990" height="550"
+           initComplete="updateMapImage()">
+	<fx:Script>
+		<![CDATA[
+            import org.apache.flex.core.ValuesManager;
+			import org.apache.flex.html.SimpleAlert;
+
+			public function updateMapImage():void
+			{
+				mapImage.source = ValuesManager.valuesImpl.getValue(mapCanvas, 'dottedMap');
+			}
+		]]>
+	</fx:Script>
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+	<js:HContainer width="100%" height="100%" y="0" x="0" className="colorPanel">
+		<js:VContainer width="230" height="100%">
+			<js:Container width="100%" height="100%">
+			
+				<js:Container height="60" className="homeSection">
+                    <js:style>
+                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="10" right="10"/>
+                    </js:style>
+					<js:Label style="left:10;top:10" text="Search Developers" height="22" className="sectionHeader" />
+					<jquery:TextButton style="left:168;top:30" text="Go" width="27" height="20" className="glass" click="SimpleAlert.show('This feature is not implemented in this sample', 'Go')"/>
+					<js:TextInput style="left:10;top:30" height="20" width="150"/>
+				</js:Container>
+				
+				<js:Container height="280" className="homeSection">
+                    <js:style>
+                        <js:SimpleCSSStyles backgroundColor="#ffffff" left="10" top="78" right="10" />                        
+                    </js:style>
+					<js:VContainer width="100%" height="100%">
+                        <js:style>
+                            <js:SimpleCSSStyles left="10" top="10" />                        
+                        </js:style>
+						<js:Label text="Flex Experts That Can Help You" className="sectionHeader"/>
+						<js:HRule height="5" width="187" style="marginLeft:0"/>
+						<js:Label text="General" className="homeProgramHeader"/>
+						<js:Label text="BlazeDS Experts" style="fontSize:9"/>
+						<js:Spacer height="8" width="100%"/>
+						<js:Label text="Server-side" className="homeProgramHeader"/>
+						<js:Label text="Java, PHP Developers" style="fontSize:9"/>
+						<js:Spacer height="8" width="100%"/>
+						<js:Label text="Mobile" className="homeProgramHeader"/>
+						<js:Label text="Android, IOS and more" style="fontSize:9"/>
+						<js:Spacer height="8" width="100%"/>
+						<js:Label text="Students" className="homeProgramHeader"/>
+						<js:Label text="Free Assistance" style="fontSize:9"/>
+						<js:Spacer height="8" width="100%"/>
+					</js:VContainer>
+				</js:Container>
+				
+				<js:Container height="174" className="homeSection">
+                    <js:style>
+                        <js:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="366" right="10" />
+                    </js:style>
+					<js:VContainer width="100%" height="100%">
+                        <js:style>
+                            <js:SimpleCSSStyles left="10" top="10" />
+                        </js:style>
+						<js:Label text="Manage My Account" className="sectionHeader"/>
+						
+						<js:Label text="Phone Number"/>
+						
+						<js:HContainer width="100%" height="25" >
+                            <js:style>
+                                <js:SimpleCSSStyles verticalAlign="middle" />
+                            </js:style>
+							<js:TextInput height="20" width="40"/>
+							<js:HRule width="8" height="2"/>
+							<js:TextInput height="20" width="40"/>
+							<js:HRule width="8" height="2"/>
+							<js:TextInput height="20" width="40"/>
+						</js:HContainer>
+						
+						<js:Label text="Password"/>
+						<js:TextInput height="20"/>
+						<js:Spacer height="8" width="100%"/>
+						
+						<jquery:CheckBox text="Remember my phone number" selected="true"/>
+						<js:Spacer height="8" width="100%"/>
+						
+						<jquery:TextButton text="Login" className="glass" height="20" width="55" click="SimpleAlert.show('This feature is not implemented in this sample', 'Login')"/>
+						
+					</js:VContainer>
+				</js:Container>
+				
+			</js:Container>
+			
+		</js:VContainer>
+		
+		<js:VContainer width="750" height="100%">
+			<js:Container width="100%" height="100%">
+			
+			    <!-- can't use binding to set the mapImage source because the style isn't available early enough -->
+				<js:Container id="mapCanvas" height="35%" className="homeMap">
+                    <js:style>
+                        <js:SimpleCSSStyles left="0" right="10" top="10" />
+                    </js:style>
+					<js:Image id="mapImage" width="487" height="100%" alpha="1.0" style="left:10;top:10"/>
+					<js:Label y="110" text="US Developers . Flex . FlexJS" width="95%" height="40" style="margin:auto;fontWeight:'bold';fontSize:22;color:#ffffff;fontFamily:'Arial';textAlign:'center'"/>
+					<js:Label text="Learn More &gt;&gt;" width="95" style="fontSize:12;fontFamily:'Arial';bottom:10;right:10"/>
+					<js:Label text="$60/hr" style="color:#ffffff;fontWeight:'bold';fontFamily:'Arial';fontSize:20;right:10:top:10"/>
+					<js:Label text="Rates as low as" x="551" y="16" style="fontSize:12"/>
+				</js:Container>
+				
+				<js:Container height="330" >
+                    <js:style>
+                        <js:SimpleCSSStyles backgroundColor="#ffffff" borderStyle="solid" bottom="10" right="10" left="0" /> <!-- cornerRadius="4" -->
+                    </js:style>
+					
+					<js:Label style="left:10;top:10" text="Featured Developers" width="173" height="25" className="sectionHeader"/>
+					
+					<js:HContainer style="left:10;top:43" width="100%" height="100%">
+						<js:VContainer width="33%" height="100%">
+							<js:Container width="100%">
+								<js:Image id="image1" source="assets/akotter.jpg" style="margin:auto;verticalCenter:0"/>
+							</js:Container>
+							
+							<js:Container width="100%">
+								<js:Label text="Annette Kotter" id="feat_prod_1" style="margin:auto;fontWeight:'bold';fontSize:12"/>
+							</js:Container>
+							
+						</js:VContainer>
+						
+						<js:VContainer width="33%" height="100%">
+							<js:Container width="100%">
+								<js:Image id="image2" style="margin:auto;verticalCenter:0" source="assets/bcrater.jpg"/>
+							</js:Container>
+							
+							<js:Container width="100%">
+								<js:Label text="Ben Crater" id="feat_prod_2" style="margin:auto;fontWeight:'bold';fontSize:12"/>
+							</js:Container>
+							
+						</js:VContainer>
+						
+						<js:VContainer width="33%" height="100%">
+							<js:Container width="100%">
+								<js:Image id="image3" style="margin:auto;verticalCenter:0" source="assets/jproctor.jpg"/>
+							</js:Container>
+							
+							<js:Container width="100%">
+								<js:Label text="Jane Proctor" id="feat_prod_3" style="margin:auto;fontWeight:'bold';fontSize:12"/>
+							</js:Container>
+							
+						</js:VContainer>
+						
+					</js:HContainer>
+					
+				</js:Container>
+				
+			</js:Container>
+		
+		</js:VContainer>
+		
+	</js:HContainer>
+	
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/ProductJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/ProductJSONItemConverter.as b/examples/flexjs/FlexJSStore_jquery/src/main/flex/ProductJSONItemConverter.as
new file mode 100755
index 0000000..cb27bde
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/ProductJSONItemConverter.as
@@ -0,0 +1,41 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package
+{
+    import org.apache.flex.collections.converters.JSONItemConverter;
+    
+    import samples.flexstore.Product;
+    
+    public class ProductJSONItemConverter extends JSONItemConverter
+    {
+        public function ProductJSONItemConverter()
+        {
+            super();
+        }
+        
+        override public function convertItem(data:String):Object
+        {
+            var obj:Object = super.convertItem(data);
+            var product:Product = new Product();
+            for (var p:String in obj)
+                product[p] = obj[p];
+			return product;
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/ProductsView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/ProductsView.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/ProductsView.mxml
new file mode 100755
index 0000000..579de46
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/ProductsView.mxml
@@ -0,0 +1,121 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<!-- width and height hard-coded in the root tag to better support the 
+     Design view in FlexBuilder since we know the width and height from the 
+     settings in flexstore.mxml -->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+         xmlns:js="library://ns.apache.org/flexjs/basic" 
+    xmlns:productsView="productsView.*"
+    width="990" height="550"
+    currentState="showFilter"
+    >
+
+    <fx:Script>
+        <![CDATA[
+        import org.apache.flex.events.Event;
+        import org.apache.flex.collections.LazyCollection;
+        import samples.flexstore.Product;
+                
+        private var _catalog:LazyCollection;
+        
+        [Bindable("catalogChange")]
+        public function get catalog():LazyCollection
+        {
+            return _catalog;
+        }
+        
+        public function set catalog(c:LazyCollection):void
+        {
+            _catalog = c;
+            if (filterPanel != null)
+            {
+                filterPanel.filter.count = c.length;
+            }
+            dispatchEvent(new org.apache.flex.events.Event("catalogChange"));
+        }
+        
+        public function addToCompare(product:Product):void
+        {
+            //setting the state before adding the product avoids jumpiness in the transition, not sure why
+            currentState = 'showFilter';
+            filterPanel.productList.addProduct(product);
+        }
+        
+        public function addToCart(product:Product):void
+        {
+            //setting the state before adding the product avoids jumpiness in the transition, not sure why
+            currentState = 'showCart'; 
+            cartPanel.productList.addProduct(product);
+        }
+        
+        
+        ]]>
+    </fx:Script>
+    <js:beads>
+        <js:ContainerDataBinding />
+    </js:beads>
+    <js:Container 
+        className="colorPanel"
+        height="100%" width="100%" 
+        >
+        <js:beads>
+            <js:OneFlexibleChildHorizontalLayout flexibleChild="spacer" />
+        </js:beads>
+        <productsView:Grip id="filterGrip" gripIcon="assets/icon_magnifier.png" 
+            gripTip="Show filter panel" click="currentState = 'showFilter'"/>
+    
+        <productsView:ProductFilterPanel x="{filterGrip.width}" y="0" id="filterPanel" width="265" height="100%"
+            filter="catalogPanel.filter(event.filter, event.live)"
+            compare="catalogPanel.compare(filterPanel.productList.getProducts())"
+            initComplete="if (catalog) filterPanel.filter.count = catalog.length"/>
+    
+        <js:Spacer id="spacer" />
+        
+        <productsView:ProductCart id="cartPanel" width="265" height="100%" />
+
+        <productsView:Grip id="cartGrip" gripIcon="assets/icon_cart_empty.png"
+            gripTip="Show cart" click="currentState = 'showCart'" />
+    
+    </js:Container>
+        
+    <productsView:ProductCatalogPanel id="catalogPanel" y="4" width="685" height="540"
+                                      x.showFilter="288" x.showCart="0"
+        catalog="{catalog}"
+        compare="addToCompare(event.product)"
+        purchase="addToCart(event.product)"
+        cartCount="{cartPanel.numProducts}">
+    </productsView:ProductCatalogPanel>
+    
+    <js:states>
+       <js:State name="showFilter" />
+       <js:State name="showCart" />
+    </js:states>
+    
+    <!-- 
+      make sure to use transitions here instead of applying a Move effect
+      to the Panel itself which will result in odd behavior
+    -->
+    <js:transitions>
+       <js:Transition fromState="*" toState="*">
+          <js:Move target="catalogPanel" />
+       </js:Transition>
+    </js:transitions>
+        
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/SupportView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/SupportView.mxml b/examples/flexjs/FlexJSStore_jquery/src/main/flex/SupportView.mxml
new file mode 100755
index 0000000..3d30a9d
--- /dev/null
+++ b/examples/flexjs/FlexJSStore_jquery/src/main/flex/SupportView.mxml
@@ -0,0 +1,149 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<!--
+This component is primarily static and is only meant to show what other
+pages of the store could look like.
+
+Note that this page was put together in the Design view so you'll see more
+hard coded locations and sizes.
+
+We did not have sizing issues here as much so you'll see more hardcoded 
+"y" values rather than "top."
+
+The width and height are hard-coded in the root tag to help the Design view.
+-->
+<js:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+                 xmlns:js="library://ns.apache.org/flexjs/basic" 
+                 xmlns="*" alpha="1.0"
+    width="990" height="550">
+	
+	<fx:Script>
+	    <![CDATA[
+	       import org.apache.flex.html.SimpleAlert;
+	    ]]>
+	</fx:Script>
+	
+    <fx:Declarations>
+        <fx:Array id="locations">
+            <fx:Object image="assets/support_mapmarker_a.png" name="601 Townsend St" /> 
+            <fx:Object image="assets/support_mapmarker_b.png" name="Location B" />
+            <fx:Object image="assets/support_mapmarker_c.png" name="Location C" />	   	   
+        </fx:Array>   
+        
+    </fx:Declarations>
+	
+	<js:HContainer x="0" y="0" width="100%" height="100%" className="colorPanel">
+	
+		<js:VContainer width="32%" height="100%">
+			<js:Container width="100%" height="420">
+			
+				<js:Label y="10" text="Check Location" className="sectionHeader" x="20"/>
+				
+				<js:Container height="150" y="64" style="margin:auto">
+                    <js:beads>
+                        <js:VerticalColumnLayout numColumns="2" />
+                    </js:beads>
+					<js:Label text="Address:"/>
+					<js:TextInput id="address"/>
+					
+					<js:Label text="City:" style="marginTop:20"/>
+					<js:TextInput id="city" style="marginTop:20"/>						
+					
+					<js:Label text="State:" style="marginTop:20"/>
+					<js:DropDownList id="state" style="marginTop:20">
+						<js:dataProvider>
+                            <fx:Array>
+                                <fx:String>California</fx:String>
+                                <fx:String>Nevada</fx:String>
+                                <fx:String>Oregon</fx:String>
+                                <fx:String>Washington</fx:String>
+                            </fx:Array>                                    
+            			</js:dataProvider>
+					</js:DropDownList>
+					
+					<js:Label text="ZIP Code:" style="marginTop:20"/>
+					<js:TextInput id="zip" style="marginTop:20"/>
+					
+				</js:Container>
+				
+				<js:Label y="38" text="Option1: Enter Address" style="margin:auto" className="instructions"/>
+				
+				<js:TextButton y="297" text="Locate" click="SimpleAlert.show('This feature is not implemented in this sample', 'Locate')" 
+                                  style="margin:auto"/>
+				
+				<js:HContainer y="327" height="20" >
+                    <js:style>
+                        <js:SimpleCSSStyles margin="auto" verticalAlign="middle" />
+                    </js:style>
+					<js:HRule width="60" />
+					<js:Label text="OR"/>
+                    <js:HRule width="60" />
+				</js:HContainer>
+				
+				<js:Label y="355" text="Option 2: Drag this marker into the map" style="margin:auto" className="instructions"/>
+				
+				<js:Image y="380" style="margin:auto" source="assets/support_mapmarker_plus.png"/>
+				
+				<js:HRule y="415" style="margin:auto" width="200" alpha="0.6"/>
+				
+			</js:Container>
+			
+			<js:Container width="100%" height="130">
+				<js:VContainer width="80%" height="90%" >
+                    <js:style>
+                        <js:SimpleCSSStyles margin="auto" top="0"/>
+                    </js:style>
+					<js:Label text="Location" className="instructions"/>
+					<js:List width="100%" dataProvider="{locations}">
+                        <js:itemRenderer>
+                            <fx:Component>
+                                <js:DataItemRenderer className="listItem" width="100%">
+                                    <fx:Script>
+                                        <![CDATA[
+                                            import samples.flexstore.Product;
+                                            [Bindable("__NoChangeEvent__")]
+                                            private function get product():Product
+                                            {
+                                                return data as Product;
+                                            }
+                                        ]]>
+                                    </fx:Script>
+                                    <js:Image width="21" height="25" source="{product.image}" />
+                                    <js:Label width="100%" text="{product.name}" />
+                                </js:DataItemRenderer>                                                            
+                            </fx:Component>
+                        </js:itemRenderer>
+					</js:List>
+				</js:VContainer>
+			</js:Container>
+			
+		</js:VContainer>
+		
+		<js:Container width="68%" height="100%">
+			<js:Image source="assets/427px-Bayarea_map.png">
+                <js:style>
+                    <js:SimpleCSSStyles left="12" top="12"/>
+                </js:style>
+            </js:Image>
+		</js:Container>
+		
+	</js:HContainer>
+	
+</js:Container>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/427px-Bayarea_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/427px-Bayarea_map.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/427px-Bayarea_map.png
new file mode 100644
index 0000000..a183699
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/427px-Bayarea_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/akotter.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/akotter.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/akotter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/bcrater.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/bcrater.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/bcrater.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_background.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_background.jpg
new file mode 100755
index 0000000..8f034ba
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_background.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_dotted_map.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_dotted_map.png
new file mode 100755
index 0000000..e88d9ef
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/beige_dotted_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_background.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_background.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_background.jpg
new file mode 100755
index 0000000..361ce0e
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_background.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_dotted_map.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_dotted_map.png
new file mode 100755
index 0000000..5fa6714
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/blue_dotted_map.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_empty.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_empty.png
new file mode 100644
index 0000000..0e1a2b5
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_empty.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_full.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_full.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_full.png
new file mode 100644
index 0000000..9c9eea0
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_cart_full.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_compare.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_compare.png
new file mode 100644
index 0000000..c2ac969
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_compare.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_details.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_details.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_details.png
new file mode 100644
index 0000000..3e6238c
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_details.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_tiles.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_tiles.png
new file mode 100644
index 0000000..4266a22
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/button_tiles.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/grip.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/grip.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/grip.png
new file mode 100755
index 0000000..64ee835
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/grip.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_cart_empty.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_cart_empty.png
new file mode 100644
index 0000000..562064b
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_cart_empty.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_compare.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_compare.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_compare.png
new file mode 100644
index 0000000..efc3ea1
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_compare.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_magnifier.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_magnifier.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_magnifier.png
new file mode 100755
index 0000000..939f814
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_magnifier.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_tiles.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_tiles.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_tiles.png
new file mode 100644
index 0000000..dbf75b6
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/icon_tiles.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/jproctor.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/jproctor.jpg
new file mode 100755
index 0000000..1111787
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/jproctor.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_blue.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_blue.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_blue.png
new file mode 100755
index 0000000..85bad70
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_blue.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_orange.png
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_orange.png b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_orange.png
new file mode 100755
index 0000000..e3ff7a6
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/logo_orange.png differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/abrilliam.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/abrilliam.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/abrilliam.jpg
new file mode 100755
index 0000000..6954858
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/abrilliam.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/akotter.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/akotter.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/akotter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bcrater.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bcrater.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bcrater.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bleporte.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bleporte.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bleporte.jpg
new file mode 100755
index 0000000..c4769e8
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bleporte.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bvanbrocklin.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bvanbrocklin.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bvanbrocklin.jpg
new file mode 100755
index 0000000..489fa2e
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/bvanbrocklin.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ccarpenter.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ccarpenter.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ccarpenter.jpg
new file mode 100755
index 0000000..c1dc3d8
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ccarpenter.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/clampberto.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/clampberto.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/clampberto.jpg
new file mode 100755
index 0000000..9deacd2
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/clampberto.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/davenon.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/davenon.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/davenon.jpg
new file mode 100755
index 0000000..6a2a142
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/davenon.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dmcgoyal.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dmcgoyal.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dmcgoyal.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dmcgoyal.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dwillhelm.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dwillhelm.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dwillhelm.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/dwillhelm.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/esunderland.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/esunderland.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/esunderland.jpg
new file mode 100755
index 0000000..c4769e8
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/esunderland.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/jproctor.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/jproctor.jpg
new file mode 100755
index 0000000..1111787
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/jproctor.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/mfields.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/mfields.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/mfields.jpg
new file mode 100755
index 0000000..489fa2e
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/mfields.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/pdempsey.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/pdempsey.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/pdempsey.jpg
new file mode 100755
index 0000000..9deacd2
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/pdempsey.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ptranep.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ptranep.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ptranep.jpg
new file mode 100755
index 0000000..4b9a03b
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/ptranep.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rcrawley.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rcrawley.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rcrawley.jpg
new file mode 100755
index 0000000..9b60320
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rcrawley.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rdreifus.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rdreifus.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rdreifus.jpg
new file mode 100755
index 0000000..6a2a142
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/rdreifus.jpg differ

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/twong.jpg
----------------------------------------------------------------------
diff --git a/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/twong.jpg b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/twong.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/flexjs/FlexJSStore_jquery/src/main/flex/assets/pic/twong.jpg differ


[16/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - - Refactored the directory structure of the example projects to be maven-style

Posted by ca...@apache.org.
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml b/examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..7472d95
--- /dev/null
+++ b/examples/flexjs/CordovaCameraExample/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:js="library://ns.apache.org/flexjs/basic"
+				xmlns:local="*" >
+    <fx:Script>
+        <![CDATA[
+			
+			import org.apache.cordova.camera.Camera;
+			
+			private var cam:org.apache.cordova.camera.Camera = new org.apache.cordova.camera.Camera();
+			
+			public function set ready(value:Boolean):void
+			{
+				status.text = "ready";
+			}
+			
+			public function snapPicture() : void
+			{
+				trace("snapping");
+				cam.getPicture(success,failure,{quality:100, destinationType:org.apache.cordova.camera.Camera.DestinationType.FILE_URI});
+			}
+			
+			private function success(data:Object):void
+			{
+				output.text = "Success: "+String(data);
+				image.source = String(data);
+			}
+			
+			private function failure(message:Object):void
+			{
+				output.text = "Failed: "+String(message);
+			}
+			
+			private function onFromPhotoLibrary() : void
+			{
+				cam.getPicture(success,failure,{ quality: 50,
+					destinationType: org.apache.cordova.camera.Camera.DestinationType.FILE_URI,
+					sourceType: org.apache.cordova.camera.Camera.PictureSourceType.PHOTOLIBRARY });
+			}
+			
+		]]>
+    </fx:Script>
+	
+	<fx:Style>
+	
+	</fx:Style>
+	
+	<js:Label id="status" x="20" y="140" width="400" text="loading..."/>
+	
+	<js:TextButton text="From Photo Library" x="20" y="20" click="onFromPhotoLibrary()" />
+	<js:TextButton text="Snap Picture" x="20" y="55" click="snapPicture()" />
+	
+	<js:Label id="output" x="20" y="110" width="400"/>
+	
+	<js:Image id="image" x="20" y="200" width="200" height="200" />
+
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/CordovaCameraExample/src/main/resources/config.xml
----------------------------------------------------------------------
diff --git a/examples/flexjs/CordovaCameraExample/src/main/resources/config.xml b/examples/flexjs/CordovaCameraExample/src/main/resources/config.xml
new file mode 100644
index 0000000..00b9f64
--- /dev/null
+++ b/examples/flexjs/CordovaCameraExample/src/main/resources/config.xml
@@ -0,0 +1,44 @@
+<?xml version='1.0' encoding='utf-8'?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You 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.
+
+-->
+<widget id="${groupId}.${artifactId}" version="${version}" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+    <name>${artifactId}</name>
+    <description>
+        ${description}
+    </description>
+    <author email="dev@flex.apache.org" href="http://flex.apache.org">
+        Apache Flex Team
+    </author>
+    <content src="index.html" />
+    <plugin name="cordova-plugin-whitelist" version="1" />
+    <access origin="*" />
+    <allow-intent href="http://*/*" />
+    <allow-intent href="https://*/*" />
+    <allow-intent href="tel:*" />
+    <allow-intent href="sms:*" />
+    <allow-intent href="mailto:*" />
+    <allow-intent href="geo:*" />
+    <platform name="android">
+        <allow-intent href="market:*" />
+    </platform>
+    <platform name="ios">
+        <allow-intent href="itms:*" />
+        <allow-intent href="itms-apps:*" />
+    </platform>
+</widget>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/CreateJSExample/src/CreateJSExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/CreateJSExample/src/CreateJSExample.mxml b/examples/flexjs/CreateJSExample/src/CreateJSExample.mxml
deleted file mode 100644
index 6709560..0000000
--- a/examples/flexjs/CreateJSExample/src/CreateJSExample.mxml
+++ /dev/null
@@ -1,69 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<cjs:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-                   xmlns:local="*"
-                   xmlns:js="library://ns.apache.org/flexjs/basic" 
-                   xmlns:cjs="library://ns.apache.org/flexjs/createjs"
-                   applicationComplete="seq.play()"
-                   >
-
-    <js:valuesImpl>
-        <js:SimpleCSSValuesImpl />
-    </js:valuesImpl>
-    
-    <js:beads>
-        <js:ApplicationDataBinding />
-    </js:beads>
-    
-    <fx:Declarations>
-    	<cjs:Sequence id="seq" target="circle" loop="true">
-			<cjs:Tween id="tween1" target="circle" xTo="400" 
-					duration="1000" easing="{Ease.getPowInOut(4)}" /> 
-			<cjs:Tween id="tween2" target="circle" alphaTo="0" yTo="175" 
-					duration="500" easing="{Ease.getPowInOut(2)}" />
-			<cjs:Tween id="tween3" target="circle" alphaTo="0" yTo="225" 
-					duration="100" />
-			<cjs:Tween id="tween4" target="circle" alphaTo="1" yTo="200" 
-					duration="500" easing="{Ease.getPowInOut(2)}" />
-			<cjs:Tween id="tween5" target="circle" xTo="100" 
-					duration="800" easing="{Ease.getPowInOut(2)}" />
-    	</cjs:Sequence>
-    </fx:Declarations>
-    
-    <fx:Script>
-    	<![CDATA[
-    		// import required for Ease functions in data binding.
-    		import org.apache.flex.createjs.tween.Ease;
-    	]]>
-    </fx:Script>
-    
-    <js:initialView>
-        <cjs:View>
-
-			<cjs:Circle id="circle" x="100" y="100" radius="50">
-				<js:fill>
-					<js:SolidColor color="#26C9FF" />
-				</js:fill>
-			</cjs:Circle>
-   		    
-        </cjs:View>
-    </js:initialView>
-
-</cjs:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/CreateJSExample/src/main/flex/CreateJSExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/CreateJSExample/src/main/flex/CreateJSExample.mxml b/examples/flexjs/CreateJSExample/src/main/flex/CreateJSExample.mxml
new file mode 100644
index 0000000..6709560
--- /dev/null
+++ b/examples/flexjs/CreateJSExample/src/main/flex/CreateJSExample.mxml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<cjs:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+                   xmlns:local="*"
+                   xmlns:js="library://ns.apache.org/flexjs/basic" 
+                   xmlns:cjs="library://ns.apache.org/flexjs/createjs"
+                   applicationComplete="seq.play()"
+                   >
+
+    <js:valuesImpl>
+        <js:SimpleCSSValuesImpl />
+    </js:valuesImpl>
+    
+    <js:beads>
+        <js:ApplicationDataBinding />
+    </js:beads>
+    
+    <fx:Declarations>
+    	<cjs:Sequence id="seq" target="circle" loop="true">
+			<cjs:Tween id="tween1" target="circle" xTo="400" 
+					duration="1000" easing="{Ease.getPowInOut(4)}" /> 
+			<cjs:Tween id="tween2" target="circle" alphaTo="0" yTo="175" 
+					duration="500" easing="{Ease.getPowInOut(2)}" />
+			<cjs:Tween id="tween3" target="circle" alphaTo="0" yTo="225" 
+					duration="100" />
+			<cjs:Tween id="tween4" target="circle" alphaTo="1" yTo="200" 
+					duration="500" easing="{Ease.getPowInOut(2)}" />
+			<cjs:Tween id="tween5" target="circle" xTo="100" 
+					duration="800" easing="{Ease.getPowInOut(2)}" />
+    	</cjs:Sequence>
+    </fx:Declarations>
+    
+    <fx:Script>
+    	<![CDATA[
+    		// import required for Ease functions in data binding.
+    		import org.apache.flex.createjs.tween.Ease;
+    	]]>
+    </fx:Script>
+    
+    <js:initialView>
+        <cjs:View>
+
+			<cjs:Circle id="circle" x="100" y="100" radius="50">
+				<js:fill>
+					<js:SolidColor color="#26C9FF" />
+				</js:fill>
+			</cjs:Circle>
+   		    
+        </cjs:View>
+    </js:initialView>
+
+</cjs:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/CreateJSExample/src/main/flex/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/CreateJSExample/src/main/flex/models/MyModel.as b/examples/flexjs/CreateJSExample/src/main/flex/models/MyModel.as
new file mode 100644
index 0000000..9092424
--- /dev/null
+++ b/examples/flexjs/CreateJSExample/src/main/flex/models/MyModel.as
@@ -0,0 +1,34 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+
+	/**
+	 * This model exists to satisfy the requirement that FlexJS apps have
+	 * models.
+	 */
+	public class MyModel extends EventDispatcher
+	{
+		public function MyModel()
+		{
+		}
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/CreateJSExample/src/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/CreateJSExample/src/models/MyModel.as b/examples/flexjs/CreateJSExample/src/models/MyModel.as
deleted file mode 100644
index 9092424..0000000
--- a/examples/flexjs/CreateJSExample/src/models/MyModel.as
+++ /dev/null
@@ -1,34 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-
-	/**
-	 * This model exists to satisfy the requirement that FlexJS apps have
-	 * models.
-	 */
-	public class MyModel extends EventDispatcher
-	{
-		public function MyModel()
-		{
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample/src/DataBindingExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample/src/DataBindingExample.mxml b/examples/flexjs/DataBindingExample/src/DataBindingExample.mxml
deleted file mode 100644
index 751e427..0000000
--- a/examples/flexjs/DataBindingExample/src/DataBindingExample.mxml
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-                   xmlns:local="*"
-                   xmlns:js="library://ns.apache.org/flexjs/basic" 
-                   xmlns:models="models.*" 
-                   xmlns:controllers="controllers.*"
-                   initialize="MyModel(model).stockSymbol='ADBE'"
-                   >
-    <js:valuesImpl>
-        <js:SimpleCSSValuesImpl />
-    </js:valuesImpl>
-    <js:initialView>
-        <local:MyInitialView />
-    </js:initialView>
-    <js:model>
-        <models:MyModel />
-    </js:model>
-    <js:controller>
-        <controllers:MyController />
-    </js:controller>
-    <js:beads>
-        <js:HTTPService id="service">
-            <js:LazyCollection id="collection">
-                <js:inputParser>
-                    <js:JSONInputParser />
-                </js:inputParser>
-                <js:itemConverter>
-                    <local:StockDataJSONItemConverter />
-                </js:itemConverter> 
-            </js:LazyCollection>
-        </js:HTTPService>
-        <js:CSSFontFaceBead />
-        <js:ViewSourceContextMenuOption />
-    </js:beads>
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample/src/MyInitialView.mxml b/examples/flexjs/DataBindingExample/src/MyInitialView.mxml
deleted file mode 100644
index 8345213..0000000
--- a/examples/flexjs/DataBindingExample/src/MyInitialView.mxml
+++ /dev/null
@@ -1,144 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-				xmlns:js="library://ns.apache.org/flexjs/basic"
-			    initComplete="initControls()">
-    <fx:Script>
-        <![CDATA[
-			import models.MyModel;
-			
-			import org.apache.flex.events.CustomEvent;
-			
-			private var _symbol:String;
-			
-            public function get symbol():String
-            {
-                return _symbol;
-            }
-			
-			public function get requestedField():String
-			{
-				return radio1.selectedValue as String;
-			}
-			
-            [Bindable]
-            public var fieldText:String;
-            
-			private function radioChanged(e:org.apache.flex.events.Event):void
-			{
-				dispatchEvent(new CustomEvent("radioClicked"));
-				fieldText = RadioButton(e.target).text;
-			}
-			
-			private function initControls():void
-			{
-				list.selectedItem = MyModel(applicationModel).stockSymbol;
-				radio1.selectedValue = MyModel(applicationModel).requestedField;
-				if (radio1.selected)
-					fieldText = radio1.text;
-				else if (radio2.selected)
-					fieldText = radio2.text;
-				else if (radio3.selected)
-					fieldText = radio3.text;
-				else if (radio4.selected)
-					fieldText = radio4.text;
-				
-			}
-            
-            private function setState():void
-            {
-                currentState = showAllData.selected ? "showAll" : "hideAll";    
-            }
-		]]>
-    </fx:Script>
-	<fx:Style>
-		@namespace basic "library://ns.apache.org/flexjs/basic";
-		
-		.output {
-			font-size: 20px;
-		}
-
-        .topContainer {
-            padding: 10px;
-            
-        }
-        .leftSide {
-            vertical-align: top;
-            margin-right: 10px;
-        }
-        
-        .rightSide {
-            vertical-align: top;
-            margin-left: 10px;
-            padding-left: 10px;
-        }
-        
-        .quoteButton {
-            margin-top: 10px;
-            margin-bottom: 10px;
-        }
-	</fx:Style>
-    <js:states>
-        <js:State name="hideAll" />        
-        <js:State name="showAll" />        
-    </js:states>
-    <js:beads>
-        <js:ViewDataBinding />
-    </js:beads>
-    <js:Container x="0" y="0" className="topContainer" >
-        <js:beads>
-            <js:VerticalLayout />
-        </js:beads>
-        <js:Label width="300" text="Enter Stock Symbol or choose from list:" />
-        <js:Container>
-            <js:beads>
-                <js:HorizontalLayout />
-            </js:beads>
-            <js:Container className="leftSide">
-                <js:beads>
-                    <js:VerticalLayout />
-                </js:beads>
-                <js:TextInput id="symbolTI" text="{MyModel(applicationModel).stockSymbol}" />
-                <js:TextButton text="Get Quote" className="quoteButton" 
-                                  click="_symbol = symbolTI.text; dispatchEvent(new CustomEvent('buttonClicked'))" />
-                <js:Label id="field" text="{fieldText}"/>
-                <js:Label className="output" height="24" text="{MyModel(applicationModel).responseText}" />
-            </js:Container>
-            <js:Container className="rightSide">
-                <js:beads>
-                    <js:VerticalLayout />
-                </js:beads>
-                <js:DropDownList id="list" width="100"
-                                    change="_symbol = list.selectedItem as String; dispatchEvent(new CustomEvent('listChanged'))"
-                                    dataProvider="{MyModel(applicationModel).strings}" />
-                <js:RadioButton id="radio1" text="Price" value="Ask" groupName="group1" change="radioChanged(event)"/>
-                <js:RadioButton id="radio2" text="Change" value="Change" groupName="group1" change="radioChanged(event)"/>
-                <js:RadioButton id="radio3" text="Day's High" value="DaysHigh" groupName="group1" change="radioChanged(event)"/>
-                <js:RadioButton id="radio4" text="Day's Low" value="DaysLow" groupName="group1" change="radioChanged(event)"/>
-                <js:CheckBox id="showAllData" text="Show All Data" change="setState()" />
-            </js:Container>
-        </js:Container>
-        <js:Label id="bindtest" text="{fieldText + ' expression binding'}" />
-        <js:Label width="300" text.showAll="110" includeIn="showAll" />
-        <js:TextArea id="ta" width="300" height="100" height.showAll="110" 
-                        includeIn="showAll"
-                        text="{MyModel(applicationModel).allData}" />
-    </js:Container>	
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample/src/StockDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample/src/StockDataJSONItemConverter.as b/examples/flexjs/DataBindingExample/src/StockDataJSONItemConverter.as
deleted file mode 100644
index a39606b..0000000
--- a/examples/flexjs/DataBindingExample/src/StockDataJSONItemConverter.as
+++ /dev/null
@@ -1,40 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package
-{
-    import org.apache.flex.collections.converters.JSONItemConverter;
-    
-    public class StockDataJSONItemConverter extends JSONItemConverter
-    {
-        public function StockDataJSONItemConverter()
-        {
-            super();
-        }
-        
-        override public function convertItem(data:String):Object
-        {
-            var obj:Object = super.convertItem(data);
-			if (obj["query"]["count"] == 0)
-				return "No Data";
-			
-			obj = obj["query"]["results"]["quote"];
-			return obj;
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample/src/controllers/MyController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample/src/controllers/MyController.as b/examples/flexjs/DataBindingExample/src/controllers/MyController.as
deleted file mode 100644
index b7d52bd..0000000
--- a/examples/flexjs/DataBindingExample/src/controllers/MyController.as
+++ /dev/null
@@ -1,92 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package controllers
-{
-	import org.apache.flex.events.Event;
-
-	import org.apache.flex.core.Application;
-	import org.apache.flex.core.IDocument;
-	import org.apache.flex.net.HTTPService;
-	import org.apache.flex.collections.LazyCollection;
-
-    import models.MyModel;
-
-	public class MyController implements IDocument
-	{
-		public function MyController(app:Application = null)
-		{
-			if (app)
-			{
-				app.addEventListener("viewChanged", viewChangeHandler);
-			}
-		}
-
-		private var model:MyModel;
-		private var initialView:Object;
-		private var service:HTTPService;
-		private var collection:LazyCollection;
-
-        private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
-        private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
-
-		private function viewChangeHandler(event:Event):void
-		{
-			var app:Application = event.target as Application;
-			app.initialView.addEventListener("buttonClicked", buttonClickHandler);
-			app.initialView.addEventListener("radioClicked", radioClickHandler);
-            app.initialView.addEventListener("listChanged", listChangedHandler);
-
-            initialView = app.initialView;
-			model = app.model as MyModel;
-			service = app["service"] as HTTPService;
-			collection = app["collection"] as LazyCollection;
-		}
-
-        private function buttonClickHandler(event:Event):void
-        {
-            var sym:String = MyInitialView(initialView).symbol;
-            service.url = queryBegin + sym + queryEnd;
-            service.send();
-            service.addEventListener("complete", completeHandler);
-        }
-
-		private function radioClickHandler(event:Event):void
-		{
-			var field:String = MyInitialView(initialView).requestedField;
-			model.requestedField = field;
-		}
-
-        private function completeHandler(event:Event):void
-        {
-			model.responseData = collection.getItemAt(0);
-        }
-
-        private function listChangedHandler(event:Event):void
-        {
-            model.stockSymbol = MyInitialView(initialView).symbol;
-        }
-
-		public function setDocument(document:Object, id:String = null):void
-		{
-			var app:Application = document as Application;
-			app.addEventListener("viewChanged", viewChangeHandler);
-		}
-
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample/src/main/flex/DataBindingExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample/src/main/flex/DataBindingExample.mxml b/examples/flexjs/DataBindingExample/src/main/flex/DataBindingExample.mxml
new file mode 100644
index 0000000..751e427
--- /dev/null
+++ b/examples/flexjs/DataBindingExample/src/main/flex/DataBindingExample.mxml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+                   xmlns:local="*"
+                   xmlns:js="library://ns.apache.org/flexjs/basic" 
+                   xmlns:models="models.*" 
+                   xmlns:controllers="controllers.*"
+                   initialize="MyModel(model).stockSymbol='ADBE'"
+                   >
+    <js:valuesImpl>
+        <js:SimpleCSSValuesImpl />
+    </js:valuesImpl>
+    <js:initialView>
+        <local:MyInitialView />
+    </js:initialView>
+    <js:model>
+        <models:MyModel />
+    </js:model>
+    <js:controller>
+        <controllers:MyController />
+    </js:controller>
+    <js:beads>
+        <js:HTTPService id="service">
+            <js:LazyCollection id="collection">
+                <js:inputParser>
+                    <js:JSONInputParser />
+                </js:inputParser>
+                <js:itemConverter>
+                    <local:StockDataJSONItemConverter />
+                </js:itemConverter> 
+            </js:LazyCollection>
+        </js:HTTPService>
+        <js:CSSFontFaceBead />
+        <js:ViewSourceContextMenuOption />
+    </js:beads>
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample/src/main/flex/MyInitialView.mxml b/examples/flexjs/DataBindingExample/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..8345213
--- /dev/null
+++ b/examples/flexjs/DataBindingExample/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,144 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+				xmlns:js="library://ns.apache.org/flexjs/basic"
+			    initComplete="initControls()">
+    <fx:Script>
+        <![CDATA[
+			import models.MyModel;
+			
+			import org.apache.flex.events.CustomEvent;
+			
+			private var _symbol:String;
+			
+            public function get symbol():String
+            {
+                return _symbol;
+            }
+			
+			public function get requestedField():String
+			{
+				return radio1.selectedValue as String;
+			}
+			
+            [Bindable]
+            public var fieldText:String;
+            
+			private function radioChanged(e:org.apache.flex.events.Event):void
+			{
+				dispatchEvent(new CustomEvent("radioClicked"));
+				fieldText = RadioButton(e.target).text;
+			}
+			
+			private function initControls():void
+			{
+				list.selectedItem = MyModel(applicationModel).stockSymbol;
+				radio1.selectedValue = MyModel(applicationModel).requestedField;
+				if (radio1.selected)
+					fieldText = radio1.text;
+				else if (radio2.selected)
+					fieldText = radio2.text;
+				else if (radio3.selected)
+					fieldText = radio3.text;
+				else if (radio4.selected)
+					fieldText = radio4.text;
+				
+			}
+            
+            private function setState():void
+            {
+                currentState = showAllData.selected ? "showAll" : "hideAll";    
+            }
+		]]>
+    </fx:Script>
+	<fx:Style>
+		@namespace basic "library://ns.apache.org/flexjs/basic";
+		
+		.output {
+			font-size: 20px;
+		}
+
+        .topContainer {
+            padding: 10px;
+            
+        }
+        .leftSide {
+            vertical-align: top;
+            margin-right: 10px;
+        }
+        
+        .rightSide {
+            vertical-align: top;
+            margin-left: 10px;
+            padding-left: 10px;
+        }
+        
+        .quoteButton {
+            margin-top: 10px;
+            margin-bottom: 10px;
+        }
+	</fx:Style>
+    <js:states>
+        <js:State name="hideAll" />        
+        <js:State name="showAll" />        
+    </js:states>
+    <js:beads>
+        <js:ViewDataBinding />
+    </js:beads>
+    <js:Container x="0" y="0" className="topContainer" >
+        <js:beads>
+            <js:VerticalLayout />
+        </js:beads>
+        <js:Label width="300" text="Enter Stock Symbol or choose from list:" />
+        <js:Container>
+            <js:beads>
+                <js:HorizontalLayout />
+            </js:beads>
+            <js:Container className="leftSide">
+                <js:beads>
+                    <js:VerticalLayout />
+                </js:beads>
+                <js:TextInput id="symbolTI" text="{MyModel(applicationModel).stockSymbol}" />
+                <js:TextButton text="Get Quote" className="quoteButton" 
+                                  click="_symbol = symbolTI.text; dispatchEvent(new CustomEvent('buttonClicked'))" />
+                <js:Label id="field" text="{fieldText}"/>
+                <js:Label className="output" height="24" text="{MyModel(applicationModel).responseText}" />
+            </js:Container>
+            <js:Container className="rightSide">
+                <js:beads>
+                    <js:VerticalLayout />
+                </js:beads>
+                <js:DropDownList id="list" width="100"
+                                    change="_symbol = list.selectedItem as String; dispatchEvent(new CustomEvent('listChanged'))"
+                                    dataProvider="{MyModel(applicationModel).strings}" />
+                <js:RadioButton id="radio1" text="Price" value="Ask" groupName="group1" change="radioChanged(event)"/>
+                <js:RadioButton id="radio2" text="Change" value="Change" groupName="group1" change="radioChanged(event)"/>
+                <js:RadioButton id="radio3" text="Day's High" value="DaysHigh" groupName="group1" change="radioChanged(event)"/>
+                <js:RadioButton id="radio4" text="Day's Low" value="DaysLow" groupName="group1" change="radioChanged(event)"/>
+                <js:CheckBox id="showAllData" text="Show All Data" change="setState()" />
+            </js:Container>
+        </js:Container>
+        <js:Label id="bindtest" text="{fieldText + ' expression binding'}" />
+        <js:Label width="300" text.showAll="110" includeIn="showAll" />
+        <js:TextArea id="ta" width="300" height="100" height.showAll="110" 
+                        includeIn="showAll"
+                        text="{MyModel(applicationModel).allData}" />
+    </js:Container>	
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample/src/main/flex/StockDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample/src/main/flex/StockDataJSONItemConverter.as b/examples/flexjs/DataBindingExample/src/main/flex/StockDataJSONItemConverter.as
new file mode 100644
index 0000000..a39606b
--- /dev/null
+++ b/examples/flexjs/DataBindingExample/src/main/flex/StockDataJSONItemConverter.as
@@ -0,0 +1,40 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package
+{
+    import org.apache.flex.collections.converters.JSONItemConverter;
+    
+    public class StockDataJSONItemConverter extends JSONItemConverter
+    {
+        public function StockDataJSONItemConverter()
+        {
+            super();
+        }
+        
+        override public function convertItem(data:String):Object
+        {
+            var obj:Object = super.convertItem(data);
+			if (obj["query"]["count"] == 0)
+				return "No Data";
+			
+			obj = obj["query"]["results"]["quote"];
+			return obj;
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample/src/main/flex/controllers/MyController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample/src/main/flex/controllers/MyController.as b/examples/flexjs/DataBindingExample/src/main/flex/controllers/MyController.as
new file mode 100644
index 0000000..b7d52bd
--- /dev/null
+++ b/examples/flexjs/DataBindingExample/src/main/flex/controllers/MyController.as
@@ -0,0 +1,92 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package controllers
+{
+	import org.apache.flex.events.Event;
+
+	import org.apache.flex.core.Application;
+	import org.apache.flex.core.IDocument;
+	import org.apache.flex.net.HTTPService;
+	import org.apache.flex.collections.LazyCollection;
+
+    import models.MyModel;
+
+	public class MyController implements IDocument
+	{
+		public function MyController(app:Application = null)
+		{
+			if (app)
+			{
+				app.addEventListener("viewChanged", viewChangeHandler);
+			}
+		}
+
+		private var model:MyModel;
+		private var initialView:Object;
+		private var service:HTTPService;
+		private var collection:LazyCollection;
+
+        private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
+        private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
+
+		private function viewChangeHandler(event:Event):void
+		{
+			var app:Application = event.target as Application;
+			app.initialView.addEventListener("buttonClicked", buttonClickHandler);
+			app.initialView.addEventListener("radioClicked", radioClickHandler);
+            app.initialView.addEventListener("listChanged", listChangedHandler);
+
+            initialView = app.initialView;
+			model = app.model as MyModel;
+			service = app["service"] as HTTPService;
+			collection = app["collection"] as LazyCollection;
+		}
+
+        private function buttonClickHandler(event:Event):void
+        {
+            var sym:String = MyInitialView(initialView).symbol;
+            service.url = queryBegin + sym + queryEnd;
+            service.send();
+            service.addEventListener("complete", completeHandler);
+        }
+
+		private function radioClickHandler(event:Event):void
+		{
+			var field:String = MyInitialView(initialView).requestedField;
+			model.requestedField = field;
+		}
+
+        private function completeHandler(event:Event):void
+        {
+			model.responseData = collection.getItemAt(0);
+        }
+
+        private function listChangedHandler(event:Event):void
+        {
+            model.stockSymbol = MyInitialView(initialView).symbol;
+        }
+
+		public function setDocument(document:Object, id:String = null):void
+		{
+			var app:Application = document as Application;
+			app.addEventListener("viewChanged", viewChangeHandler);
+		}
+
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample/src/main/flex/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample/src/main/flex/models/MyModel.as b/examples/flexjs/DataBindingExample/src/main/flex/models/MyModel.as
new file mode 100644
index 0000000..5a16d02
--- /dev/null
+++ b/examples/flexjs/DataBindingExample/src/main/flex/models/MyModel.as
@@ -0,0 +1,125 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	
+	public class MyModel extends EventDispatcher
+	{
+		public function MyModel()
+		{
+		}
+		
+		private var _requestedField:String = "Ask";
+		
+		[Bindable("requestedFieldChanged")]
+		public function get requestedField():String
+		{
+			return _requestedField;
+		}
+		
+		public function set requestedField(value:String):void
+		{
+			if (value != _requestedField)
+			{
+				_requestedField = value;
+				dispatchEvent(new Event("requestedFieldChanged"));
+				if (_responseData)
+					dispatchEvent(new Event("responseTextChanged"));
+			}
+		}
+		
+		[Bindable("responseTextChanged")]
+		public function get responseText():String
+		{
+			if (_responseData == null)
+				return "";
+			if (_responseData == "No Data")
+				return _responseData as String;
+			var s:String = _responseData[_requestedField];
+			if (s == null)
+			{
+				if (_requestedField == "Ask")
+					s = _responseData["Bid"];
+			}
+			return s;
+		}
+		
+		private var _responseData:Object;
+		
+		[Bindable("responseDataChanged")]
+		public function get responseData():Object
+		{
+			return _responseData;
+		}
+		
+		public function set responseData(value:Object):void
+		{
+			if (value != _responseData)
+			{
+				_responseData = value;
+				_allData = "";
+				dispatchEvent(new Event("responseDataChanged"));
+				dispatchEvent(new Event("responseTextChanged"));
+			}
+		}
+		
+		private var _allData:String = "";
+		
+		[Bindable("responseDataChanged")]
+		public function get allData():String
+		{
+			if (_allData == "" && _responseData != null)
+			{
+				for (var p:String in _responseData)
+				{
+					_allData += p + ": " + _responseData[p] + "\n";
+				}
+			}
+			return _allData;
+		}
+		
+		
+		private var _stockSymbol:String;
+		
+		[Bindable("stockSymbolChanged")]
+		public function get stockSymbol():String
+		{
+			return _stockSymbol;
+		}
+		
+		public function set stockSymbol(value:String):void
+		{
+			if (value != _stockSymbol)
+			{
+				_stockSymbol = value;
+				dispatchEvent(new Event("stockSymbolChanged"));
+			}
+		}
+
+        private var _strings:Array = ["AAPL", "ADBE", "GOOG", "MSFT", "YHOO"];
+        [Bindable("__NoChangeEvent__")]
+        public function get strings():Array
+        {
+            return _strings;
+        }
+
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample/src/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample/src/models/MyModel.as b/examples/flexjs/DataBindingExample/src/models/MyModel.as
deleted file mode 100644
index 5a16d02..0000000
--- a/examples/flexjs/DataBindingExample/src/models/MyModel.as
+++ /dev/null
@@ -1,125 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	
-	public class MyModel extends EventDispatcher
-	{
-		public function MyModel()
-		{
-		}
-		
-		private var _requestedField:String = "Ask";
-		
-		[Bindable("requestedFieldChanged")]
-		public function get requestedField():String
-		{
-			return _requestedField;
-		}
-		
-		public function set requestedField(value:String):void
-		{
-			if (value != _requestedField)
-			{
-				_requestedField = value;
-				dispatchEvent(new Event("requestedFieldChanged"));
-				if (_responseData)
-					dispatchEvent(new Event("responseTextChanged"));
-			}
-		}
-		
-		[Bindable("responseTextChanged")]
-		public function get responseText():String
-		{
-			if (_responseData == null)
-				return "";
-			if (_responseData == "No Data")
-				return _responseData as String;
-			var s:String = _responseData[_requestedField];
-			if (s == null)
-			{
-				if (_requestedField == "Ask")
-					s = _responseData["Bid"];
-			}
-			return s;
-		}
-		
-		private var _responseData:Object;
-		
-		[Bindable("responseDataChanged")]
-		public function get responseData():Object
-		{
-			return _responseData;
-		}
-		
-		public function set responseData(value:Object):void
-		{
-			if (value != _responseData)
-			{
-				_responseData = value;
-				_allData = "";
-				dispatchEvent(new Event("responseDataChanged"));
-				dispatchEvent(new Event("responseTextChanged"));
-			}
-		}
-		
-		private var _allData:String = "";
-		
-		[Bindable("responseDataChanged")]
-		public function get allData():String
-		{
-			if (_allData == "" && _responseData != null)
-			{
-				for (var p:String in _responseData)
-				{
-					_allData += p + ": " + _responseData[p] + "\n";
-				}
-			}
-			return _allData;
-		}
-		
-		
-		private var _stockSymbol:String;
-		
-		[Bindable("stockSymbolChanged")]
-		public function get stockSymbol():String
-		{
-			return _stockSymbol;
-		}
-		
-		public function set stockSymbol(value:String):void
-		{
-			if (value != _stockSymbol)
-			{
-				_stockSymbol = value;
-				dispatchEvent(new Event("stockSymbolChanged"));
-			}
-		}
-
-        private var _strings:Array = ["AAPL", "ADBE", "GOOG", "MSFT", "YHOO"];
-        [Bindable("__NoChangeEvent__")]
-        public function get strings():Array
-        {
-            return _strings;
-        }
-
-	}
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_Flat/src/DataBindingExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_Flat/src/DataBindingExample.mxml b/examples/flexjs/DataBindingExample_Flat/src/DataBindingExample.mxml
deleted file mode 100644
index 751e427..0000000
--- a/examples/flexjs/DataBindingExample_Flat/src/DataBindingExample.mxml
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
-                   xmlns:local="*"
-                   xmlns:js="library://ns.apache.org/flexjs/basic" 
-                   xmlns:models="models.*" 
-                   xmlns:controllers="controllers.*"
-                   initialize="MyModel(model).stockSymbol='ADBE'"
-                   >
-    <js:valuesImpl>
-        <js:SimpleCSSValuesImpl />
-    </js:valuesImpl>
-    <js:initialView>
-        <local:MyInitialView />
-    </js:initialView>
-    <js:model>
-        <models:MyModel />
-    </js:model>
-    <js:controller>
-        <controllers:MyController />
-    </js:controller>
-    <js:beads>
-        <js:HTTPService id="service">
-            <js:LazyCollection id="collection">
-                <js:inputParser>
-                    <js:JSONInputParser />
-                </js:inputParser>
-                <js:itemConverter>
-                    <local:StockDataJSONItemConverter />
-                </js:itemConverter> 
-            </js:LazyCollection>
-        </js:HTTPService>
-        <js:CSSFontFaceBead />
-        <js:ViewSourceContextMenuOption />
-    </js:beads>
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_Flat/src/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_Flat/src/MyInitialView.mxml b/examples/flexjs/DataBindingExample_Flat/src/MyInitialView.mxml
deleted file mode 100644
index 26ca9b0..0000000
--- a/examples/flexjs/DataBindingExample_Flat/src/MyInitialView.mxml
+++ /dev/null
@@ -1,145 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to You 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.
-
--->
-<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
-             xmlns:js="library://ns.apache.org/flexjs/basic"
-             xmlns:flat="library://ns.apache.org/flexjs/flat"
-			    initComplete="initControls()">
-    <fx:Script>
-        <![CDATA[
-			import models.MyModel;
-			
-			import org.apache.flex.events.CustomEvent;
-			
-			private var _symbol:String;
-			
-            public function get symbol():String
-            {
-                return _symbol;
-            }
-			
-			public function get requestedField():String
-			{
-				return radio1.selectedValue as String;
-			}
-			
-            [Bindable]
-            public var fieldText:String;
-            
-			private function radioChanged(e:org.apache.flex.events.Event):void
-			{
-				dispatchEvent(new CustomEvent("radioClicked"));
-				fieldText = RadioButton(e.target).text;
-			}
-			
-			private function initControls():void
-			{
-				list.selectedItem = MyModel(applicationModel).stockSymbol;
-				radio1.selectedValue = MyModel(applicationModel).requestedField;
-				if (radio1.selected)
-					fieldText = radio1.text;
-				else if (radio2.selected)
-					fieldText = radio2.text;
-				else if (radio3.selected)
-					fieldText = radio3.text;
-				else if (radio4.selected)
-					fieldText = radio4.text;
-				
-			}
-            
-            private function setState():void
-            {
-                currentState = showAllData.selected ? "showAll" : "hideAll";    
-            }
-		]]>
-    </fx:Script>
-	<fx:Style>
-		@namespace basic "library://ns.apache.org/flexjs/basic";
-		
-		.output {
-			font-size: 20px;
-		}
-
-        .topContainer {
-            padding: 10px;
-            
-        }
-        .leftSide {
-            vertical-align: top;
-            margin-right: 10px;
-        }
-        
-        .rightSide {
-            vertical-align: top;
-            margin-left: 10px;
-            padding-left: 10px;
-        }
-        
-        .quoteButton {
-            margin-top: 10px;
-            margin-bottom: 10px;
-        }
-	</fx:Style>
-    <js:states>
-        <js:State name="hideAll" />        
-        <js:State name="showAll" />        
-    </js:states>
-    <js:beads>
-        <js:ViewDataBinding />
-    </js:beads>
-    <js:Container x="0" y="0" className="topContainer" >
-        <js:beads>
-            <js:VerticalLayout />
-        </js:beads>
-        <js:Label width="300" text="Enter Stock Symbol or choose from list:" />
-        <js:Container>
-            <js:beads>
-                <js:HorizontalLayout />
-            </js:beads>
-            <js:Container className="leftSide">
-                <js:beads>
-                    <js:VerticalLayout />
-                </js:beads>
-                <js:TextInput id="symbolTI" text="{MyModel(applicationModel).stockSymbol}" />
-                <js:TextButton text="Get Quote" className="quoteButton" 
-                                  click="_symbol = symbolTI.text; dispatchEvent(new CustomEvent('buttonClicked'))" />
-                <js:Label id="field" text="{fieldText}"/>
-                <js:Label className="output" height="24" text="{MyModel(applicationModel).responseText}" />
-            </js:Container>
-            <js:Container className="rightSide">
-                <js:beads>
-                    <js:VerticalLayout />
-                </js:beads>
-                <flat:DropDownList id="list" width="100"
-                                    change="_symbol = list.selectedItem as String; dispatchEvent(new CustomEvent('listChanged'))"
-                                    dataProvider="{MyModel(applicationModel).strings}" />
-                <flat:RadioButton id="radio1" text="Price" value="Ask" groupName="group1" change="radioChanged(event)"/>
-                <flat:RadioButton id="radio2" text="Change" value="Change" groupName="group1" change="radioChanged(event)"/>
-                <flat:RadioButton id="radio3" text="Day's High" value="DaysHigh" groupName="group1" change="radioChanged(event)"/>
-                <flat:RadioButton id="radio4" text="Day's Low" value="DaysLow" groupName="group1" change="radioChanged(event)"/>
-                <flat:CheckBox id="showAllData" text="Show All Data" change="setState()" />
-            </js:Container>
-        </js:Container>
-        <js:Label id="bindtest" text="{fieldText + ' expression binding'}" />
-        <js:Label width="300" text.showAll="110" includeIn="showAll" />
-        <js:TextArea id="ta" width="300" height="100" height.showAll="110" 
-                        includeIn="showAll"
-                        text="{MyModel(applicationModel).allData}" />
-    </js:Container>	
-</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_Flat/src/StockDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_Flat/src/StockDataJSONItemConverter.as b/examples/flexjs/DataBindingExample_Flat/src/StockDataJSONItemConverter.as
deleted file mode 100644
index a39606b..0000000
--- a/examples/flexjs/DataBindingExample_Flat/src/StockDataJSONItemConverter.as
+++ /dev/null
@@ -1,40 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package
-{
-    import org.apache.flex.collections.converters.JSONItemConverter;
-    
-    public class StockDataJSONItemConverter extends JSONItemConverter
-    {
-        public function StockDataJSONItemConverter()
-        {
-            super();
-        }
-        
-        override public function convertItem(data:String):Object
-        {
-            var obj:Object = super.convertItem(data);
-			if (obj["query"]["count"] == 0)
-				return "No Data";
-			
-			obj = obj["query"]["results"]["quote"];
-			return obj;
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_Flat/src/controllers/MyController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_Flat/src/controllers/MyController.as b/examples/flexjs/DataBindingExample_Flat/src/controllers/MyController.as
deleted file mode 100644
index b7d52bd..0000000
--- a/examples/flexjs/DataBindingExample_Flat/src/controllers/MyController.as
+++ /dev/null
@@ -1,92 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package controllers
-{
-	import org.apache.flex.events.Event;
-
-	import org.apache.flex.core.Application;
-	import org.apache.flex.core.IDocument;
-	import org.apache.flex.net.HTTPService;
-	import org.apache.flex.collections.LazyCollection;
-
-    import models.MyModel;
-
-	public class MyController implements IDocument
-	{
-		public function MyController(app:Application = null)
-		{
-			if (app)
-			{
-				app.addEventListener("viewChanged", viewChangeHandler);
-			}
-		}
-
-		private var model:MyModel;
-		private var initialView:Object;
-		private var service:HTTPService;
-		private var collection:LazyCollection;
-
-        private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
-        private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
-
-		private function viewChangeHandler(event:Event):void
-		{
-			var app:Application = event.target as Application;
-			app.initialView.addEventListener("buttonClicked", buttonClickHandler);
-			app.initialView.addEventListener("radioClicked", radioClickHandler);
-            app.initialView.addEventListener("listChanged", listChangedHandler);
-
-            initialView = app.initialView;
-			model = app.model as MyModel;
-			service = app["service"] as HTTPService;
-			collection = app["collection"] as LazyCollection;
-		}
-
-        private function buttonClickHandler(event:Event):void
-        {
-            var sym:String = MyInitialView(initialView).symbol;
-            service.url = queryBegin + sym + queryEnd;
-            service.send();
-            service.addEventListener("complete", completeHandler);
-        }
-
-		private function radioClickHandler(event:Event):void
-		{
-			var field:String = MyInitialView(initialView).requestedField;
-			model.requestedField = field;
-		}
-
-        private function completeHandler(event:Event):void
-        {
-			model.responseData = collection.getItemAt(0);
-        }
-
-        private function listChangedHandler(event:Event):void
-        {
-            model.stockSymbol = MyInitialView(initialView).symbol;
-        }
-
-		public function setDocument(document:Object, id:String = null):void
-		{
-			var app:Application = document as Application;
-			app.addEventListener("viewChanged", viewChangeHandler);
-		}
-
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_Flat/src/main/flex/DataBindingExample.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_Flat/src/main/flex/DataBindingExample.mxml b/examples/flexjs/DataBindingExample_Flat/src/main/flex/DataBindingExample.mxml
new file mode 100644
index 0000000..751e427
--- /dev/null
+++ b/examples/flexjs/DataBindingExample_Flat/src/main/flex/DataBindingExample.mxml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+                   xmlns:local="*"
+                   xmlns:js="library://ns.apache.org/flexjs/basic" 
+                   xmlns:models="models.*" 
+                   xmlns:controllers="controllers.*"
+                   initialize="MyModel(model).stockSymbol='ADBE'"
+                   >
+    <js:valuesImpl>
+        <js:SimpleCSSValuesImpl />
+    </js:valuesImpl>
+    <js:initialView>
+        <local:MyInitialView />
+    </js:initialView>
+    <js:model>
+        <models:MyModel />
+    </js:model>
+    <js:controller>
+        <controllers:MyController />
+    </js:controller>
+    <js:beads>
+        <js:HTTPService id="service">
+            <js:LazyCollection id="collection">
+                <js:inputParser>
+                    <js:JSONInputParser />
+                </js:inputParser>
+                <js:itemConverter>
+                    <local:StockDataJSONItemConverter />
+                </js:itemConverter> 
+            </js:LazyCollection>
+        </js:HTTPService>
+        <js:CSSFontFaceBead />
+        <js:ViewSourceContextMenuOption />
+    </js:beads>
+</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_Flat/src/main/flex/MyInitialView.mxml
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_Flat/src/main/flex/MyInitialView.mxml b/examples/flexjs/DataBindingExample_Flat/src/main/flex/MyInitialView.mxml
new file mode 100644
index 0000000..26ca9b0
--- /dev/null
+++ b/examples/flexjs/DataBindingExample_Flat/src/main/flex/MyInitialView.mxml
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You 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.
+
+-->
+<js:View xmlns:fx="http://ns.adobe.com/mxml/2009"
+             xmlns:js="library://ns.apache.org/flexjs/basic"
+             xmlns:flat="library://ns.apache.org/flexjs/flat"
+			    initComplete="initControls()">
+    <fx:Script>
+        <![CDATA[
+			import models.MyModel;
+			
+			import org.apache.flex.events.CustomEvent;
+			
+			private var _symbol:String;
+			
+            public function get symbol():String
+            {
+                return _symbol;
+            }
+			
+			public function get requestedField():String
+			{
+				return radio1.selectedValue as String;
+			}
+			
+            [Bindable]
+            public var fieldText:String;
+            
+			private function radioChanged(e:org.apache.flex.events.Event):void
+			{
+				dispatchEvent(new CustomEvent("radioClicked"));
+				fieldText = RadioButton(e.target).text;
+			}
+			
+			private function initControls():void
+			{
+				list.selectedItem = MyModel(applicationModel).stockSymbol;
+				radio1.selectedValue = MyModel(applicationModel).requestedField;
+				if (radio1.selected)
+					fieldText = radio1.text;
+				else if (radio2.selected)
+					fieldText = radio2.text;
+				else if (radio3.selected)
+					fieldText = radio3.text;
+				else if (radio4.selected)
+					fieldText = radio4.text;
+				
+			}
+            
+            private function setState():void
+            {
+                currentState = showAllData.selected ? "showAll" : "hideAll";    
+            }
+		]]>
+    </fx:Script>
+	<fx:Style>
+		@namespace basic "library://ns.apache.org/flexjs/basic";
+		
+		.output {
+			font-size: 20px;
+		}
+
+        .topContainer {
+            padding: 10px;
+            
+        }
+        .leftSide {
+            vertical-align: top;
+            margin-right: 10px;
+        }
+        
+        .rightSide {
+            vertical-align: top;
+            margin-left: 10px;
+            padding-left: 10px;
+        }
+        
+        .quoteButton {
+            margin-top: 10px;
+            margin-bottom: 10px;
+        }
+	</fx:Style>
+    <js:states>
+        <js:State name="hideAll" />        
+        <js:State name="showAll" />        
+    </js:states>
+    <js:beads>
+        <js:ViewDataBinding />
+    </js:beads>
+    <js:Container x="0" y="0" className="topContainer" >
+        <js:beads>
+            <js:VerticalLayout />
+        </js:beads>
+        <js:Label width="300" text="Enter Stock Symbol or choose from list:" />
+        <js:Container>
+            <js:beads>
+                <js:HorizontalLayout />
+            </js:beads>
+            <js:Container className="leftSide">
+                <js:beads>
+                    <js:VerticalLayout />
+                </js:beads>
+                <js:TextInput id="symbolTI" text="{MyModel(applicationModel).stockSymbol}" />
+                <js:TextButton text="Get Quote" className="quoteButton" 
+                                  click="_symbol = symbolTI.text; dispatchEvent(new CustomEvent('buttonClicked'))" />
+                <js:Label id="field" text="{fieldText}"/>
+                <js:Label className="output" height="24" text="{MyModel(applicationModel).responseText}" />
+            </js:Container>
+            <js:Container className="rightSide">
+                <js:beads>
+                    <js:VerticalLayout />
+                </js:beads>
+                <flat:DropDownList id="list" width="100"
+                                    change="_symbol = list.selectedItem as String; dispatchEvent(new CustomEvent('listChanged'))"
+                                    dataProvider="{MyModel(applicationModel).strings}" />
+                <flat:RadioButton id="radio1" text="Price" value="Ask" groupName="group1" change="radioChanged(event)"/>
+                <flat:RadioButton id="radio2" text="Change" value="Change" groupName="group1" change="radioChanged(event)"/>
+                <flat:RadioButton id="radio3" text="Day's High" value="DaysHigh" groupName="group1" change="radioChanged(event)"/>
+                <flat:RadioButton id="radio4" text="Day's Low" value="DaysLow" groupName="group1" change="radioChanged(event)"/>
+                <flat:CheckBox id="showAllData" text="Show All Data" change="setState()" />
+            </js:Container>
+        </js:Container>
+        <js:Label id="bindtest" text="{fieldText + ' expression binding'}" />
+        <js:Label width="300" text.showAll="110" includeIn="showAll" />
+        <js:TextArea id="ta" width="300" height="100" height.showAll="110" 
+                        includeIn="showAll"
+                        text="{MyModel(applicationModel).allData}" />
+    </js:Container>	
+</js:View>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_Flat/src/main/flex/StockDataJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_Flat/src/main/flex/StockDataJSONItemConverter.as b/examples/flexjs/DataBindingExample_Flat/src/main/flex/StockDataJSONItemConverter.as
new file mode 100644
index 0000000..a39606b
--- /dev/null
+++ b/examples/flexjs/DataBindingExample_Flat/src/main/flex/StockDataJSONItemConverter.as
@@ -0,0 +1,40 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package
+{
+    import org.apache.flex.collections.converters.JSONItemConverter;
+    
+    public class StockDataJSONItemConverter extends JSONItemConverter
+    {
+        public function StockDataJSONItemConverter()
+        {
+            super();
+        }
+        
+        override public function convertItem(data:String):Object
+        {
+            var obj:Object = super.convertItem(data);
+			if (obj["query"]["count"] == 0)
+				return "No Data";
+			
+			obj = obj["query"]["results"]["quote"];
+			return obj;
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_Flat/src/main/flex/controllers/MyController.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_Flat/src/main/flex/controllers/MyController.as b/examples/flexjs/DataBindingExample_Flat/src/main/flex/controllers/MyController.as
new file mode 100644
index 0000000..b7d52bd
--- /dev/null
+++ b/examples/flexjs/DataBindingExample_Flat/src/main/flex/controllers/MyController.as
@@ -0,0 +1,92 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package controllers
+{
+	import org.apache.flex.events.Event;
+
+	import org.apache.flex.core.Application;
+	import org.apache.flex.core.IDocument;
+	import org.apache.flex.net.HTTPService;
+	import org.apache.flex.collections.LazyCollection;
+
+    import models.MyModel;
+
+	public class MyController implements IDocument
+	{
+		public function MyController(app:Application = null)
+		{
+			if (app)
+			{
+				app.addEventListener("viewChanged", viewChangeHandler);
+			}
+		}
+
+		private var model:MyModel;
+		private var initialView:Object;
+		private var service:HTTPService;
+		private var collection:LazyCollection;
+
+        private var queryBegin:String = "http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%20in%20(%22";
+        private var queryEnd:String = "%22)%0A%09%09&env=http%3A%2F%2Fdatatables.org%2Falltables.env&format=json";
+
+		private function viewChangeHandler(event:Event):void
+		{
+			var app:Application = event.target as Application;
+			app.initialView.addEventListener("buttonClicked", buttonClickHandler);
+			app.initialView.addEventListener("radioClicked", radioClickHandler);
+            app.initialView.addEventListener("listChanged", listChangedHandler);
+
+            initialView = app.initialView;
+			model = app.model as MyModel;
+			service = app["service"] as HTTPService;
+			collection = app["collection"] as LazyCollection;
+		}
+
+        private function buttonClickHandler(event:Event):void
+        {
+            var sym:String = MyInitialView(initialView).symbol;
+            service.url = queryBegin + sym + queryEnd;
+            service.send();
+            service.addEventListener("complete", completeHandler);
+        }
+
+		private function radioClickHandler(event:Event):void
+		{
+			var field:String = MyInitialView(initialView).requestedField;
+			model.requestedField = field;
+		}
+
+        private function completeHandler(event:Event):void
+        {
+			model.responseData = collection.getItemAt(0);
+        }
+
+        private function listChangedHandler(event:Event):void
+        {
+            model.stockSymbol = MyInitialView(initialView).symbol;
+        }
+
+		public function setDocument(document:Object, id:String = null):void
+		{
+			var app:Application = document as Application;
+			app.addEventListener("viewChanged", viewChangeHandler);
+		}
+
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_Flat/src/main/flex/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_Flat/src/main/flex/models/MyModel.as b/examples/flexjs/DataBindingExample_Flat/src/main/flex/models/MyModel.as
new file mode 100644
index 0000000..5a16d02
--- /dev/null
+++ b/examples/flexjs/DataBindingExample_Flat/src/main/flex/models/MyModel.as
@@ -0,0 +1,125 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package models
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+	
+	public class MyModel extends EventDispatcher
+	{
+		public function MyModel()
+		{
+		}
+		
+		private var _requestedField:String = "Ask";
+		
+		[Bindable("requestedFieldChanged")]
+		public function get requestedField():String
+		{
+			return _requestedField;
+		}
+		
+		public function set requestedField(value:String):void
+		{
+			if (value != _requestedField)
+			{
+				_requestedField = value;
+				dispatchEvent(new Event("requestedFieldChanged"));
+				if (_responseData)
+					dispatchEvent(new Event("responseTextChanged"));
+			}
+		}
+		
+		[Bindable("responseTextChanged")]
+		public function get responseText():String
+		{
+			if (_responseData == null)
+				return "";
+			if (_responseData == "No Data")
+				return _responseData as String;
+			var s:String = _responseData[_requestedField];
+			if (s == null)
+			{
+				if (_requestedField == "Ask")
+					s = _responseData["Bid"];
+			}
+			return s;
+		}
+		
+		private var _responseData:Object;
+		
+		[Bindable("responseDataChanged")]
+		public function get responseData():Object
+		{
+			return _responseData;
+		}
+		
+		public function set responseData(value:Object):void
+		{
+			if (value != _responseData)
+			{
+				_responseData = value;
+				_allData = "";
+				dispatchEvent(new Event("responseDataChanged"));
+				dispatchEvent(new Event("responseTextChanged"));
+			}
+		}
+		
+		private var _allData:String = "";
+		
+		[Bindable("responseDataChanged")]
+		public function get allData():String
+		{
+			if (_allData == "" && _responseData != null)
+			{
+				for (var p:String in _responseData)
+				{
+					_allData += p + ": " + _responseData[p] + "\n";
+				}
+			}
+			return _allData;
+		}
+		
+		
+		private var _stockSymbol:String;
+		
+		[Bindable("stockSymbolChanged")]
+		public function get stockSymbol():String
+		{
+			return _stockSymbol;
+		}
+		
+		public function set stockSymbol(value:String):void
+		{
+			if (value != _stockSymbol)
+			{
+				_stockSymbol = value;
+				dispatchEvent(new Event("stockSymbolChanged"));
+			}
+		}
+
+        private var _strings:Array = ["AAPL", "ADBE", "GOOG", "MSFT", "YHOO"];
+        [Bindable("__NoChangeEvent__")]
+        public function get strings():Array
+        {
+            return _strings;
+        }
+
+	}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/e75059f7/examples/flexjs/DataBindingExample_Flat/src/models/MyModel.as
----------------------------------------------------------------------
diff --git a/examples/flexjs/DataBindingExample_Flat/src/models/MyModel.as b/examples/flexjs/DataBindingExample_Flat/src/models/MyModel.as
deleted file mode 100644
index 5a16d02..0000000
--- a/examples/flexjs/DataBindingExample_Flat/src/models/MyModel.as
+++ /dev/null
@@ -1,125 +0,0 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  Licensed to the Apache Software Foundation (ASF) under one or more
-//  contributor license agreements.  See the NOTICE file distributed with
-//  this work for additional information regarding copyright ownership.
-//  The ASF licenses this file to You 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.
-//
-////////////////////////////////////////////////////////////////////////////////
-package models
-{
-	import org.apache.flex.events.Event;
-	import org.apache.flex.events.EventDispatcher;
-	
-	public class MyModel extends EventDispatcher
-	{
-		public function MyModel()
-		{
-		}
-		
-		private var _requestedField:String = "Ask";
-		
-		[Bindable("requestedFieldChanged")]
-		public function get requestedField():String
-		{
-			return _requestedField;
-		}
-		
-		public function set requestedField(value:String):void
-		{
-			if (value != _requestedField)
-			{
-				_requestedField = value;
-				dispatchEvent(new Event("requestedFieldChanged"));
-				if (_responseData)
-					dispatchEvent(new Event("responseTextChanged"));
-			}
-		}
-		
-		[Bindable("responseTextChanged")]
-		public function get responseText():String
-		{
-			if (_responseData == null)
-				return "";
-			if (_responseData == "No Data")
-				return _responseData as String;
-			var s:String = _responseData[_requestedField];
-			if (s == null)
-			{
-				if (_requestedField == "Ask")
-					s = _responseData["Bid"];
-			}
-			return s;
-		}
-		
-		private var _responseData:Object;
-		
-		[Bindable("responseDataChanged")]
-		public function get responseData():Object
-		{
-			return _responseData;
-		}
-		
-		public function set responseData(value:Object):void
-		{
-			if (value != _responseData)
-			{
-				_responseData = value;
-				_allData = "";
-				dispatchEvent(new Event("responseDataChanged"));
-				dispatchEvent(new Event("responseTextChanged"));
-			}
-		}
-		
-		private var _allData:String = "";
-		
-		[Bindable("responseDataChanged")]
-		public function get allData():String
-		{
-			if (_allData == "" && _responseData != null)
-			{
-				for (var p:String in _responseData)
-				{
-					_allData += p + ": " + _responseData[p] + "\n";
-				}
-			}
-			return _allData;
-		}
-		
-		
-		private var _stockSymbol:String;
-		
-		[Bindable("stockSymbolChanged")]
-		public function get stockSymbol():String
-		{
-			return _stockSymbol;
-		}
-		
-		public function set stockSymbol(value:String):void
-		{
-			if (value != _stockSymbol)
-			{
-				_stockSymbol = value;
-				dispatchEvent(new Event("stockSymbolChanged"));
-			}
-		}
-
-        private var _strings:Array = ["AAPL", "ADBE", "GOOG", "MSFT", "YHOO"];
-        [Bindable("__NoChangeEvent__")]
-        public function get strings():Array
-        {
-            return _strings;
-        }
-
-	}
-}
\ No newline at end of file


[42/53] git commit: [flex-asjs] [refs/heads/feature/mdl] - Added ClippingViewport

Posted by ca...@apache.org.
Added ClippingViewport


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/043b092d
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/043b092d
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/043b092d

Branch: refs/heads/feature/mdl
Commit: 043b092d146e7fece8b9024b8705790e316256a2
Parents: f4caf2c
Author: yishayw <yi...@hotmail.com>
Authored: Wed Nov 9 09:38:10 2016 +0200
Committer: yishayw <yi...@hotmail.com>
Committed: Wed Nov 9 09:38:10 2016 +0200

----------------------------------------------------------------------
 .../html/supportClasses/ClippingViewport.as     | 137 +++++++++++++++++++
 .../HTML/src/main/resources/basic-manifest.xml  |   1 +
 2 files changed, 138 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/043b092d/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ClippingViewport.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ClippingViewport.as b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ClippingViewport.as
new file mode 100644
index 0000000..00b88c1
--- /dev/null
+++ b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ClippingViewport.as
@@ -0,0 +1,137 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You 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.
+//
+////////////////////////////////////////////////////////////////////////////////
+package org.apache.flex.html.supportClasses
+{
+	import org.apache.flex.core.IBead;
+	import org.apache.flex.core.IBeadLayout;
+	import org.apache.flex.core.IViewport;
+	import org.apache.flex.core.UIBase;
+	import org.apache.flex.geom.Size;
+
+	COMPILE::JS
+	{
+		import org.apache.flex.core.IStrand;
+	}
+    COMPILE::SWF
+    {
+        import flash.geom.Rectangle;
+    }
+
+	/**
+	 * The ClippingViewport extends the Viewport class and makes 
+	 * sure that items extending outside the Container are hidden.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10.2
+	 *  @playerversion AIR 2.6
+	 *  @productversion FlexJS 0.0
+	 */
+	public class ClippingViewport extends Viewport implements IBead, IViewport
+	{
+		/**
+		 * Constructor
+	     *
+	     *  @langversion 3.0
+	     *  @playerversion Flash 10.2
+	     *  @playerversion AIR 2.6
+	     *  @productversion FlexJS 0.0
+		 */
+		public function ClippingViewport()
+		{
+		}
+
+        /**
+         * @flexjsignorecoercion HTMLElement 
+         */
+        COMPILE::JS
+        override public function set strand(value:IStrand):void
+        {
+            super.strand = value;
+            (contentView.element as HTMLElement).style.overflow = 'hidden';
+        }
+
+        private var viewportWidth:Number;
+        private var viewportHeight:Number;
+
+        /**
+         * @copy org.apache.flex.core.IViewport
+         */
+        override public function layoutViewportBeforeContentLayout(width:Number, height:Number):void
+        {
+           super.layoutViewportBeforeContentLayout(width, height);
+           viewportWidth = width;
+           viewportHeight = height;
+        }
+
+        /**
+         * @copy org.apache.flex.core.IViewport
+         */
+		override public function layoutViewportAfterContentLayout():Size
+		{
+            COMPILE::SWF
+            {
+	             var contentSize:Size;
+                do
+                {
+                    contentSize = super.layoutViewportAfterContentLayout();
+                    if (isNaN(viewportHeight))
+                        viewportHeight = contentSize.height;
+                    if (isNaN(viewportWidth))
+                        viewportWidth = contentSize.width;
+
+                    var host:UIBase = UIBase(_strand);
+                    var visibleWidth:Number;
+                    var visibleHeight:Number;
+
+                    var needsLayout:Boolean = false;
+                    // resize content area
+                    if (!isNaN(visibleWidth) || !isNaN(visibleHeight))
+                    {
+                        if (!isNaN(visibleWidth))
+                            needsLayout = visibleWidth != contentView.width;
+                        if (!isNaN(visibleHeight))
+                            needsLayout = visibleHeight != contentView.height;
+                        if (!isNaN(visibleWidth) && !isNaN(visibleHeight))
+                            contentArea.setWidthAndHeight(visibleWidth, visibleHeight, false);
+                        else if (!isNaN(visibleWidth))
+                            contentArea.setWidth(visibleWidth, false);
+                        else if (!isNaN(visibleHeight))
+                            contentArea.setHeight(visibleHeight, false);
+                    }
+                    if (needsLayout)
+                    {
+                        var layout:IBeadLayout = host.getBeadByType(IBeadLayout) as IBeadLayout;
+                        layout.layout();
+                    }
+                } while (needsLayout);
+
+                var rect:Rectangle = new Rectangle(0, 0, viewportWidth,viewportHeight);
+                contentArea.$sprite.scrollRect = rect;
+                return contentSize;
+
+            }
+            COMPILE::JS
+            {
+                return new Size(contentView.width, contentView.height);
+            }
+
+		}
+
+	}
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/043b092d/frameworks/projects/HTML/src/main/resources/basic-manifest.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/HTML/src/main/resources/basic-manifest.xml b/frameworks/projects/HTML/src/main/resources/basic-manifest.xml
index cf67089..7919e14 100644
--- a/frameworks/projects/HTML/src/main/resources/basic-manifest.xml
+++ b/frameworks/projects/HTML/src/main/resources/basic-manifest.xml
@@ -92,6 +92,7 @@
     <component id="ImageAndTextButtonView" class="org.apache.flex.html.beads.ImageAndTextButtonView" />
      -->
     <component id="ScrollingViewport" class="org.apache.flex.html.supportClasses.ScrollingViewport" />
+    <component id="ClippingViewport" class="org.apache.flex.html.supportClasses.ClippingViewport" />
     
     <component id="ArraySelectionModel" class="org.apache.flex.html.beads.models.ArraySelectionModel" />
     <component id="ArrayListSelectionModel" class="org.apache.flex.html.beads.models.ArrayListSelectionModel" />