You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2014/10/31 23:08:49 UTC
[14/14] git commit: [flex-asjs] [refs/heads/develop] - FlexJSStore
works well enough to try to make it work on JS. Drag/Drop, ToolTips,
States with Transitions are functional
FlexJSStore works well enough to try to make it work on JS. Drag/Drop, ToolTips, States with Transitions are functional
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/f2a370c6
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/f2a370c6
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/f2a370c6
Branch: refs/heads/develop
Commit: f2a370c669de2a62292a65ff58cae96cb90e3c31
Parents: 0cce95a
Author: Alex Harui <ah...@apache.org>
Authored: Fri Oct 31 15:07:34 2014 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Oct 31 15:08:16 2014 -0700
----------------------------------------------------------------------
examples/FlexJSStore/build.xml | 51 ++
examples/FlexJSStore/src/FlexJSStore.mxml | 269 +++++++++
examples/FlexJSStore/src/HomeView.mxml | 206 +++++++
.../FlexJSStore/src/ProductJSONItemConverter.as | 41 ++
examples/FlexJSStore/src/ProductsView.mxml | 130 +++++
examples/FlexJSStore/src/SupportView.mxml | 139 +++++
examples/FlexJSStore/src/assets/akotter.jpg | Bin 0 -> 19395 bytes
examples/FlexJSStore/src/assets/bcrater.jpg | Bin 0 -> 22670 bytes
.../FlexJSStore/src/assets/beige_background.jpg | Bin 0 -> 12533 bytes
.../FlexJSStore/src/assets/beige_dotted_map.png | Bin 0 -> 216598 bytes
.../FlexJSStore/src/assets/blue_background.jpg | Bin 0 -> 12868 bytes
.../FlexJSStore/src/assets/blue_dotted_map.png | Bin 0 -> 217088 bytes
.../src/assets/button_cart_empty.png | Bin 0 -> 289 bytes
.../FlexJSStore/src/assets/button_cart_full.png | Bin 0 -> 308 bytes
.../FlexJSStore/src/assets/button_compare.png | Bin 0 -> 304 bytes
.../FlexJSStore/src/assets/button_details.png | Bin 0 -> 284 bytes
.../FlexJSStore/src/assets/button_tiles.png | Bin 0 -> 218 bytes
examples/FlexJSStore/src/assets/grip.png | Bin 0 -> 19836 bytes
.../FlexJSStore/src/assets/icon_cart_empty.png | Bin 0 -> 29594 bytes
.../FlexJSStore/src/assets/icon_magnifier.png | Bin 0 -> 30454 bytes
examples/FlexJSStore/src/assets/jproctor.jpg | Bin 0 -> 21684 bytes
examples/FlexJSStore/src/assets/logo_blue.png | Bin 0 -> 33427 bytes
examples/FlexJSStore/src/assets/logo_orange.png | Bin 0 -> 33897 bytes
.../FlexJSStore/src/assets/pic/abrilliam.jpg | Bin 0 -> 18903 bytes
examples/FlexJSStore/src/assets/pic/akotter.jpg | Bin 0 -> 19395 bytes
examples/FlexJSStore/src/assets/pic/bcrater.jpg | Bin 0 -> 22670 bytes
.../FlexJSStore/src/assets/pic/bleporte.jpg | Bin 0 -> 23363 bytes
.../FlexJSStore/src/assets/pic/bvanbrocklin.jpg | Bin 0 -> 18066 bytes
.../FlexJSStore/src/assets/pic/ccarpenter.jpg | Bin 0 -> 19219 bytes
.../FlexJSStore/src/assets/pic/clampberto.jpg | Bin 0 -> 18611 bytes
examples/FlexJSStore/src/assets/pic/davenon.jpg | Bin 0 -> 20028 bytes
.../FlexJSStore/src/assets/pic/dmcgoyal.jpg | Bin 0 -> 19395 bytes
.../FlexJSStore/src/assets/pic/dwillhelm.jpg | Bin 0 -> 22670 bytes
.../FlexJSStore/src/assets/pic/esunderland.jpg | Bin 0 -> 23363 bytes
.../FlexJSStore/src/assets/pic/jproctor.jpg | Bin 0 -> 21684 bytes
examples/FlexJSStore/src/assets/pic/mfields.jpg | Bin 0 -> 18066 bytes
.../FlexJSStore/src/assets/pic/pdempsey.jpg | Bin 0 -> 18611 bytes
examples/FlexJSStore/src/assets/pic/ptranep.jpg | Bin 0 -> 19627 bytes
.../FlexJSStore/src/assets/pic/rcrawley.jpg | Bin 0 -> 23692 bytes
.../FlexJSStore/src/assets/pic/rdreifus.jpg | Bin 0 -> 20028 bytes
examples/FlexJSStore/src/assets/pic/twong.jpg | Bin 0 -> 19395 bytes
examples/FlexJSStore/src/assets/support_map.png | Bin 0 -> 172293 bytes
.../src/assets/support_mapmarker_a.png | Bin 0 -> 834 bytes
.../src/assets/support_mapmarker_b.png | Bin 0 -> 822 bytes
.../src/assets/support_mapmarker_c.png | Bin 0 -> 817 bytes
.../src/assets/support_mapmarker_plus.png | Bin 0 -> 827 bytes
examples/FlexJSStore/src/assets/trashcan.png | Bin 0 -> 182 bytes
examples/FlexJSStore/src/beige.css | 170 ++++++
examples/FlexJSStore/src/blue.css | 165 ++++++
examples/FlexJSStore/src/data/catalog.json | 255 +++++++++
examples/FlexJSStore/src/data/catalog.xml | 256 +++++++++
examples/FlexJSStore/src/main.css | 95 ++++
.../src/productsView/CatalogTitleButtons.mxml | 70 +++
examples/FlexJSStore/src/productsView/Grip.mxml | 49 ++
.../src/productsView/ProductCart.mxml | 114 ++++
.../src/productsView/ProductCatalogPanel.mxml | 545 +++++++++++++++++++
.../ProductCatalogPanelTitleBarView.mxml | 49 ++
.../productsView/ProductCatalogThumbnail.mxml | 232 ++++++++
.../src/productsView/ProductDetails.mxml | 153 ++++++
.../src/productsView/ProductFilterPanel.mxml | 221 ++++++++
.../src/productsView/ProductList.mxml | 217 ++++++++
.../src/productsView/ProductListItem.mxml | 131 +++++
.../src/productsView/ProductSupport.mxml | 91 ++++
.../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 ++
69 files changed, 4207 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/build.xml
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/build.xml b/examples/FlexJSStore/build.xml
new file mode 100644
index 0000000..6a6643b
--- /dev/null
+++ b/examples/FlexJSStore/build.xml
@@ -0,0 +1,51 @@
+<?xml version="1.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.
+
+-->
+
+
+<project name="flexjsstore" default="main" basedir=".">
+ <property name="FLEXJS_HOME" location="../.."/>
+ <property name="example" value="FlexJSStore" />
+
+ <property file="${FLEXJS_HOME}/env.properties"/>
+ <property environment="env"/>
+ <property file="${FLEXJS_HOME}/build.properties"/>
+ <property name="FLEX_HOME" value="${FLEXJS_HOME}"/>
+ <property name="FALCON_HOME" value="${env.FALCON_HOME}"/>
+ <property name="FALCONJX_HOME" value="${env.FALCONJX_HOME}"/>
+ <property name="GOOG_HOME" value="${env.GOOG_HOME}"/>
+
+ <include file="${basedir}/../build_example.xml" />
+
+ <!-- disable JS compile until we get it working
+ <target name="main" depends="clean,build_example.compile,build_example.compilejs" description="Clean build of ${example}">-->
+ <target name="main" depends="clean,build_example.compile" 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" />
+ </target>
+
+ <target name="clean">
+ <delete dir="${basedir}/bin" failonerror="false" />
+ <delete dir="${basedir}/bin-debug" failonerror="false" />
+ <delete dir="${basedir}/bin-release" failonerror="false" />
+ </target>
+
+
+
+</project>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/FlexJSStore.mxml
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/FlexJSStore.mxml b/examples/FlexJSStore/src/FlexJSStore.mxml
new file mode 100755
index 0000000..cab579a
--- /dev/null
+++ b/examples/FlexJSStore/src/FlexJSStore.mxml
@@ -0,0 +1,269 @@
+<?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.
+
+-->
+<basic:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:basic="library://ns.apache.org/flexjs/basic"
+ xmlns:mx="library://ns.adobe.com/flex/mx"
+ 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>
+ <basic:HTTPService id="productService" url="data/catalog.json">
+ <basic:LazyCollection id="catalog">
+ <basic:inputParser>
+ <basic:JSONInputParser />
+ </basic:inputParser>
+ <basic:itemConverter>
+ <ProductJSONItemConverter />
+ </basic:itemConverter>
+ </basic:LazyCollection>
+ </basic:HTTPService>
+ </fx:Declarations>
+ <basic:valuesImpl>
+ <basic:SimpleCSSValuesImpl />
+ </basic:valuesImpl>
+ <basic:beads>
+ <basic:CallLaterBead id="callLater" />
+ <basic:ApplicationDataBinding />
+ </basic:beads>
+ <basic:initialView>
+ <basic:ViewBase width="990" height="550"
+ initComplete="completeHandler(null)"
+ stateChangeComplete="chainStatesIfNeeded()">
+ <basic:states>
+ <mx:State name="HomeState" stateGroups="['Home']" />
+ <mx:State name="HomeWipeUp" stateGroups="['Home']" />
+ <mx:State name="HomeWipeDown" stateGroups="['Home']" />
+ <mx:State name="ProductsPreBake" stateGroups="['Home', 'Products']" />
+ <mx:State name="ProductsState" stateGroups="['Products']" />
+ <mx:State name="ProductsWipeUp" stateGroups="['Products']" />
+ <mx:State name="ProductsWipeDown" stateGroups="['Products']" />
+ <mx:State name="SupportState" stateGroups="['Support']" />
+ <mx:State name="SupportWipeUp" stateGroups="['Support']" />
+ <mx:State name="SupportWipeDown" stateGroups="['Support']" />
+ </basic:states>
+
+ <basic:transitions>
+ <basic:Transition fromState="HomeState" toState="HomeWipeUp">
+ <basic:Wipe direction="up" target="homeView" />
+ </basic:Transition>
+ <basic:Transition fromState="HomeWipeDown" toState="HomeState">
+ <basic:Wipe direction="down" target="homeView" />
+ </basic:Transition>
+ <basic:Transition fromState="ProductsState" toState="ProductsWipeUp">
+ <basic:Wipe direction="up" target="pView" />
+ </basic:Transition>
+ <basic:Transition fromState="ProductsWipeDown" toState="ProductsState">
+ <basic:Wipe direction="down" target="pView" />
+ </basic:Transition>
+ <basic:Transition fromState="SupportState" toState="SupportWipeUp">
+ <basic:Wipe direction="up" target="supportView" />
+ </basic:Transition>
+ <basic:Transition fromState="SupportWipeDown" toState="SupportState">
+ <basic:Wipe direction="down" target="supportView" />
+ </basic:Transition>
+ </basic:transitions>
+ <basic:beads>
+ <basic:NonVirtualVerticalLayout />
+ </basic:beads>
+ <basic:ControlBar id="acb" width="100%" className="storeControlBar" >
+ <basic:beads>
+ <basic:NonVirtualHorizontalLayout />
+ <basic:LayoutChangeNotifier watchedProperty="{image.width}" />
+ </basic:beads>
+ <basic:Image id="image" />
+ <!-- click="toggleTheme()" -->
+ <!-- toolTip="Change Theme"/ -->
+ <basic:ToggleTextButton id="homeButton"
+ text="Home"
+ height="100%"
+ selected="true"
+ className="storeButtonBar"
+ click="headHome()" />
+ <basic:ToggleTextButton id="productsButton"
+ text="Products"
+ height="100%"
+ className="storeButtonBar"
+ click="headToProducts()"/>
+ <basic:ToggleTextButton id="supportButton"
+ text="Support"
+ height="100%"
+ className="storeButtonBar"
+ click="headToSupport()"/>
+ </basic:ControlBar>
+ <basic:Container width="990" >
+ <basic:style>
+ <basic:SimpleCSSStyles paddingLeft="0" paddingRight="0" horizontalCenter="0" top="12" />
+ </basic:style>
+
+ <HomeView id="homeView" width="100%" height="550" includeIn="Home"
+ />
+ <ProductsView id="pView" includeIn="Products" visible.ProductsPreBake="false"
+ width="100%" height="550" initComplete="pView.catalog = catalog"
+ />
+ <SupportView id="supportView" includeIn="Support"
+ width="100%" height="550"
+ />
+ </basic:Container>
+ </basic:ViewBase>
+ </basic:initialView>
+</basic:Application>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/HomeView.mxml
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/HomeView.mxml b/examples/FlexJSStore/src/HomeView.mxml
new file mode 100755
index 0000000..be34beb
--- /dev/null
+++ b/examples/FlexJSStore/src/HomeView.mxml
@@ -0,0 +1,206 @@
+<?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.
+-->
+<basic:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:basic="library://ns.apache.org/flexjs/basic"
+ xmlns:mx="library://ns.adobe.com/flex/mx"
+ 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>
+ <basic:beads>
+ <basic:ContainerDataBinding />
+ </basic:beads>
+ <basic:HContainer width="100%" height="100%" y="0" x="0" className="colorPanel">
+ <basic:VContainer width="230" height="100%">
+ <basic:Container width="100%" height="100%">
+
+ <basic:Container width="100%" height="60" className="homeSection">
+ <basic:style>
+ <basic:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="10" />
+ </basic:style>
+ <basic:Label style="left:10;top:10" text="Search Developers" height="22" className="sectionHeader" />
+ <basic:TextButton style="left:168;top:30" text="Go" width="47" height="20" className="glass" click="SimpleAlert.show('This feature is not implemented in this sample', 'Go')"/>
+ <basic:TextInput style="left:10;top:30" height="20" width="150"/>
+ </basic:Container>
+
+ <basic:Container width="100%" height="280" className="homeSection">
+ <basic:style>
+ <basic:SimpleCSSStyles backgroundColor="#ffffff" left="10" top="78" />
+ </basic:style>
+ <basic:VContainer width="100%" height="100%">
+ <basic:style>
+ <basic:SimpleCSSStyles left="10" top="10" />
+ </basic:style>
+ <basic:Label text="Flex Experts That Can Help You" className="sectionHeader"/>
+ <basic:HRule height="5" width="197"/>
+ <basic:Label text="General" className="homeProgramHeader"/>
+ <basic:Label text="BlazeDS Experts" style="fontSize:9"/>
+ <basic:Spacer height="8" width="100%"/>
+ <basic:Label text="Server-side" className="homeProgramHeader"/>
+ <basic:Label text="Java, PHP Developers" style="fontSize:9"/>
+ <basic:Spacer height="8" width="100%"/>
+ <basic:Label text="Mobile" className="homeProgramHeader"/>
+ <basic:Label text="Android, IOS and more" style="fontSize:9"/>
+ <basic:Spacer height="8" width="100%"/>
+ <basic:Label text="Students" className="homeProgramHeader"/>
+ <basic:Label text="Free Assistance" style="fontSize:9"/>
+ <basic:Spacer height="8" width="100%"/>
+ </basic:VContainer>
+ </basic:Container>
+
+ <basic:Container width="100%" height="174" className="homeSection">
+ <basic:style>
+ <basic:SimpleCSSStyles backgroundColor="#ebebe9" left="10" top="366" />
+ </basic:style>
+ <basic:VContainer width="100%" height="100%">
+ <basic:style>
+ <basic:SimpleCSSStyles left="10" top="10" />
+ </basic:style>
+ <basic:Label text="Manage My Account" className="sectionHeader"/>
+
+ <basic:Label text="Phone Number"/>
+
+ <basic:HContainer width="100%" height="25" >
+ <basic:style>
+ <basic:SimpleCSSStyles horizontalAlign="left" verticalAlign="middle" />
+ </basic:style>
+ <basic:TextInput height="20" width="40"/>
+ <basic:HRule width="8" height="25"/>
+ <basic:TextInput height="20" width="40"/>
+ <basic:HRule width="8" height="25"/>
+ <basic:TextInput height="20" width="40"/>
+ </basic:HContainer>
+
+ <basic:Label text="Password"/>
+ <basic:TextInput height="20"/>
+ <basic:Spacer height="8" width="100%"/>
+
+ <basic:CheckBox text="Remember my phone number" selected="true"/>
+ <basic:Spacer height="8" width="100%"/>
+
+ <basic:TextButton text="Login" className="glass" height="20" width="55" click="SimpleAlert.show('This feature is not implemented in this sample', 'Login')"/>
+
+ </basic:VContainer>
+ </basic:Container>
+
+ </basic:Container>
+
+ </basic:VContainer>
+
+ <basic:VContainer width="750" height="100%">
+ <basic:Container width="100%" height="100%">
+
+ <!-- can't use binding to set the mapImage source because the style isn't available early enough -->
+ <basic:Container id="mapCanvas" width="100%" height="35%" className="homeMap">
+ <basic:style>
+ <basic:SimpleCSSStyles right="10" top="10" />
+ </basic:style>
+ <basic:Image id="mapImage" width="487" height="100%" alpha="1.0" style="left:10;top:10"/>
+ <basic:Label y="110" text="US Developers . Flex . FlexJS" width="95%" height="40" style="horizontalCenter:0;fontWeight:'bold';fontSize:22;color:#ffffff;fontFamily:'Arial';textAlign:'center'"/>
+ <basic:Label text="Learn More >>" width="95" style="fontSize:12;fontFamily:'Arial';bottom:10;right:10"/>
+ <basic:Label text="$60/hr" style="color:#ffffff;fontWeight:'bold';fontFamily:'Arial';fontSize:20;right:10:top:10"/>
+ <basic:Label text="Rates as low as" x="551" y="16" style="fontSize:12"/>
+ </basic:Container>
+
+ <basic:Container width="100%" height="330" >
+ <basic:style>
+ <basic:SimpleCSSStyles backgroundColor="#ffffff" borderStyle="solid" bottom="10" right="10" /> <!-- cornerRadius="4" -->
+ </basic:style>
+
+ <basic:Label style="left:10;top:10" text="Featured Developers" width="173" height="25" className="sectionHeader"/>
+
+ <basic:HContainer style="left:0;top:43" width="100%" height="100%">
+ <basic:VContainer width="33%" height="100%">
+ <basic:beads>
+ <basic:LayoutChangeNotifier watchedProperty="{image1.height}" />
+ </basic:beads>
+ <basic:Container width="100%">
+ <basic:Image id="image1" source="assets/akotter.jpg" style="horizontalCenter:0;verticalCenter:0"/>
+ </basic:Container>
+
+ <basic:Container width="100%">
+ <basic:Label text="Annette Kotter" id="feat_prod_1" style="horizontalCenter:0;fontWeight:'bold';fontSize:12"/>
+ </basic:Container>
+
+ </basic:VContainer>
+
+ <basic:VContainer width="33%" height="100%">
+ <basic:beads>
+ <basic:LayoutChangeNotifier watchedProperty="{image2.height}" />
+ </basic:beads>
+
+ <basic:Container width="100%">
+ <basic:Image id="image2" style="horizontalCenter:0;verticalCenter:0" source="assets/bcrater.jpg"/>
+ </basic:Container>
+
+ <basic:Container width="100%">
+ <basic:Label text="Ben Crater" id="feat_prod_2" style="horizontalCenter:0;fontWeight:'bold';fontSize:12"/>
+ </basic:Container>
+
+ </basic:VContainer>
+
+ <basic:VContainer width="33%" height="100%">
+ <basic:beads>
+ <basic:LayoutChangeNotifier watchedProperty="{image3.height}" />
+ </basic:beads>
+
+ <basic:Container width="100%">
+ <basic:Image id="image3" style="horizontalCenter:0;verticalCenter:0" source="assets/jproctor.jpg"/>
+ </basic:Container>
+
+ <basic:Container width="100%">
+ <basic:Label text="Jane Proctor" id="feat_prod_3" style="horizontalCenter:0;fontWeight:'bold';fontSize:12"/>
+ </basic:Container>
+
+ </basic:VContainer>
+
+ </basic:HContainer>
+
+ </basic:Container>
+
+ </basic:Container>
+
+ </basic:VContainer>
+
+ </basic:HContainer>
+
+</basic:Container>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/ProductJSONItemConverter.as
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/ProductJSONItemConverter.as b/examples/FlexJSStore/src/ProductJSONItemConverter.as
new file mode 100755
index 0000000..4d44ecf
--- /dev/null
+++ b/examples/FlexJSStore/src/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.net.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/f2a370c6/examples/FlexJSStore/src/ProductsView.mxml
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/ProductsView.mxml b/examples/FlexJSStore/src/ProductsView.mxml
new file mode 100755
index 0000000..9b42fa1
--- /dev/null
+++ b/examples/FlexJSStore/src/ProductsView.mxml
@@ -0,0 +1,130 @@
+<?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 -->
+<basic:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:basic="library://ns.apache.org/flexjs/basic"
+ xmlns:mx="library://ns.adobe.com/flex/mx"
+ xmlns:productsView="productsView.*"
+ width="990" height="550"
+ currentState="showFilter"
+ >
+
+ <fx:Script>
+ <![CDATA[
+ import org.apache.flex.events.Event;
+ import org.apache.flex.net.dataConverters.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>
+ <basic:beads>
+ <basic:ContainerDataBinding />
+ <basic:LayoutChangeNotifier watchedProperty="{catalogPanelPosition.right}" initialValue="17" />
+ </basic:beads>
+ <basic:Container
+ className="colorPanel"
+ height="100%" width="100%"
+ >
+
+ <productsView:Grip id="filterGrip" gripIcon="assets/icon_magnifier.png"
+ gripTip="Show filter panel" click="currentState = 'showFilter'"/>
+
+ <productsView:ProductFilterPanel x="{filterGrip.width}" 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"/>
+
+ <productsView:ProductCart id="cartPanel" width="265" height="100%">
+ <productsView:style>
+ <basic:SimpleCSSStyles right="{cartGrip.width}" />
+ </productsView:style>
+ </productsView:ProductCart>
+
+ <productsView:Grip id="cartGrip" gripIcon="assets/icon_cart_empty.png"
+ gripTip="Show cart" click="currentState = 'showCart'">
+ <productsView:style>
+ <basic:SimpleCSSStyles right="0" />
+ </productsView:style>
+ </productsView:Grip>
+
+ </basic:Container>
+
+ <productsView:ProductCatalogPanel id="catalogPanel" y="4" width="685" height="540"
+ catalog="{catalog}"
+ compare="addToCompare(event.product)"
+ purchase="addToCart(event.product)"
+ cartCount="{cartPanel.numProducts}">
+ <productsView:style>
+ <basic:BindableCSSStyles id="catalogPanelPosition" right.showFilter="17"
+ right.showCart="285" />
+ </productsView:style>
+ </productsView:ProductCatalogPanel>
+
+ <basic:states>
+ <mx:State name="showFilter" />
+ <mx:State name="showCart" />
+ </basic:states>
+
+ <!--
+ make sure to use transitions here instead of applying a Move effect
+ to the Panel itself which will result in odd behavior
+ -->
+ <basic:transitions>
+ <basic:Transition fromState="*" toState="*">
+ <basic:Move target="catalogPanel" />
+ </basic:Transition>
+ </basic:transitions>
+
+</basic:Container>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/SupportView.mxml
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/SupportView.mxml b/examples/FlexJSStore/src/SupportView.mxml
new file mode 100755
index 0000000..0410e1b
--- /dev/null
+++ b/examples/FlexJSStore/src/SupportView.mxml
@@ -0,0 +1,139 @@
+<?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.
+-->
+<basic:Container xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:basic="library://ns.apache.org/flexjs/basic"
+ xmlns:mx="library://ns.adobe.com/flex/mx" 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>
+
+ <basic:HContainer x="0" y="0" width="100%" height="100%" className="colorPanel">
+
+ <basic:VContainer width="32%" height="100%">
+ <basic:Container width="100%" height="60%">
+
+ <basic:Label y="10" text="Check Location" className="sectionHeader" x="20"/>
+
+ <basic:Container width="95%" height="150" y="64" style="horizontalCenter:0">
+ <basic:beads>
+ <basic:VerticalColumnLayout numColumns="2" />
+ </basic:beads>
+ <basic:Label text="Address:" width="100%"/>
+ <basic:TextInput id="address" width="90%"/>
+
+ <basic:Label text="City:" width="100%"/>
+ <basic:TextInput id="city" width="60%"/>
+
+ <basic:Label text="State:" width="100%"/>
+ <basic:DropDownList id="state" width="50%">
+ <basic: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>
+ </basic:dataProvider>
+ </basic:DropDownList>
+
+ <basic:Label text="ZIP Code:" width="100%" />
+ <basic:TextInput id="zip" width="30%"/>
+
+ </basic:Container>
+
+ <basic:Label y="38" text="Option1: Enter Address" style="horizontalCenter:0" className="instructions"/>
+
+ <basic:TextButton y="297" text="Locate" click="SimpleAlert.show('This feature is not implemented in this sample', 'Locate')"
+ style="horizontalCenter:0"/>
+
+ <basic:HContainer y="327" width="80%" height="20" >
+ <basic:style>
+ <basic:SimpleCSSStyles horizontalAlign="center" verticalAlign="middle" horizontalCenter="0" />
+ </basic:style>
+ <basic:HRule width="60" />
+ <basic:Label text="OR"/>
+ <basic:HRule width="60" />
+ </basic:HContainer>
+
+ <basic:Label y="355" text="Option 2: Drag this marker into the map" style="horizontalCenter:0" className="instructions"/>
+
+ <basic:Image y="380" style="horizontalCenter:0" source="assets/support_mapmarker_plus.png"/>
+
+ <basic:HRule y="415" style="horizontalCenter:0" width="200" alpha="0.6"/>
+
+ </basic:Container>
+
+ <basic:Container width="100%" height="40%">
+ <basic:VContainer width="80%" height="90%" >
+ <basic:style>
+ <basic:SimpleCSSStyles horizontalCenter="0" top="0"/>
+ </basic:style>
+ <basic:Label text="Location" className="instructions"/>
+ <basic:List width="100%" dataProvider="{locations}">
+ <basic:itemRenderer>
+ <fx:Component>
+ <basic:DataItemRenderer className="listItem" width="100%">
+ <basic:Image width="21" height="25" source="{data.image}" />
+ <basic:Label width="100%" text="{data.name}" />
+ </basic:DataItemRenderer>
+ </fx:Component>
+ </basic:itemRenderer>
+ </basic:List>
+ </basic:VContainer>
+ </basic:Container>
+
+ </basic:VContainer>
+
+ <basic:Container width="68%" height="100%">
+ <basic:Image source="assets/support_map.png">
+ <basic:style>
+ <basic:SimpleCSSStyles left="2" right="2" top="2" bottom="2"/>
+ </basic:style>
+ </basic:Image>
+ </basic:Container>
+
+ </basic:HContainer>
+
+</basic:Container>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/akotter.jpg b/examples/FlexJSStore/src/assets/akotter.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/FlexJSStore/src/assets/akotter.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/bcrater.jpg b/examples/FlexJSStore/src/assets/bcrater.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/FlexJSStore/src/assets/bcrater.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/beige_background.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/beige_background.jpg b/examples/FlexJSStore/src/assets/beige_background.jpg
new file mode 100755
index 0000000..8f034ba
Binary files /dev/null and b/examples/FlexJSStore/src/assets/beige_background.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/beige_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/beige_dotted_map.png b/examples/FlexJSStore/src/assets/beige_dotted_map.png
new file mode 100755
index 0000000..e88d9ef
Binary files /dev/null and b/examples/FlexJSStore/src/assets/beige_dotted_map.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/blue_background.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/blue_background.jpg b/examples/FlexJSStore/src/assets/blue_background.jpg
new file mode 100755
index 0000000..361ce0e
Binary files /dev/null and b/examples/FlexJSStore/src/assets/blue_background.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/blue_dotted_map.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/blue_dotted_map.png b/examples/FlexJSStore/src/assets/blue_dotted_map.png
new file mode 100755
index 0000000..5fa6714
Binary files /dev/null and b/examples/FlexJSStore/src/assets/blue_dotted_map.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/button_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/button_cart_empty.png b/examples/FlexJSStore/src/assets/button_cart_empty.png
new file mode 100644
index 0000000..0e1a2b5
Binary files /dev/null and b/examples/FlexJSStore/src/assets/button_cart_empty.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/button_cart_full.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/button_cart_full.png b/examples/FlexJSStore/src/assets/button_cart_full.png
new file mode 100644
index 0000000..9c9eea0
Binary files /dev/null and b/examples/FlexJSStore/src/assets/button_cart_full.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/button_compare.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/button_compare.png b/examples/FlexJSStore/src/assets/button_compare.png
new file mode 100644
index 0000000..c2ac969
Binary files /dev/null and b/examples/FlexJSStore/src/assets/button_compare.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/button_details.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/button_details.png b/examples/FlexJSStore/src/assets/button_details.png
new file mode 100644
index 0000000..3e6238c
Binary files /dev/null and b/examples/FlexJSStore/src/assets/button_details.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/button_tiles.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/button_tiles.png b/examples/FlexJSStore/src/assets/button_tiles.png
new file mode 100644
index 0000000..4266a22
Binary files /dev/null and b/examples/FlexJSStore/src/assets/button_tiles.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/grip.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/grip.png b/examples/FlexJSStore/src/assets/grip.png
new file mode 100755
index 0000000..64ee835
Binary files /dev/null and b/examples/FlexJSStore/src/assets/grip.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/icon_cart_empty.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/icon_cart_empty.png b/examples/FlexJSStore/src/assets/icon_cart_empty.png
new file mode 100644
index 0000000..562064b
Binary files /dev/null and b/examples/FlexJSStore/src/assets/icon_cart_empty.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/icon_magnifier.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/icon_magnifier.png b/examples/FlexJSStore/src/assets/icon_magnifier.png
new file mode 100755
index 0000000..939f814
Binary files /dev/null and b/examples/FlexJSStore/src/assets/icon_magnifier.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/jproctor.jpg b/examples/FlexJSStore/src/assets/jproctor.jpg
new file mode 100755
index 0000000..1111787
Binary files /dev/null and b/examples/FlexJSStore/src/assets/jproctor.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/logo_blue.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/logo_blue.png b/examples/FlexJSStore/src/assets/logo_blue.png
new file mode 100755
index 0000000..132b894
Binary files /dev/null and b/examples/FlexJSStore/src/assets/logo_blue.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/logo_orange.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/logo_orange.png b/examples/FlexJSStore/src/assets/logo_orange.png
new file mode 100755
index 0000000..c776c8c
Binary files /dev/null and b/examples/FlexJSStore/src/assets/logo_orange.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/abrilliam.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/abrilliam.jpg b/examples/FlexJSStore/src/assets/pic/abrilliam.jpg
new file mode 100755
index 0000000..6954858
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/abrilliam.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/akotter.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/akotter.jpg b/examples/FlexJSStore/src/assets/pic/akotter.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/akotter.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/bcrater.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/bcrater.jpg b/examples/FlexJSStore/src/assets/pic/bcrater.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/bcrater.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/bleporte.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/bleporte.jpg b/examples/FlexJSStore/src/assets/pic/bleporte.jpg
new file mode 100755
index 0000000..c4769e8
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/bleporte.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/bvanbrocklin.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/bvanbrocklin.jpg b/examples/FlexJSStore/src/assets/pic/bvanbrocklin.jpg
new file mode 100755
index 0000000..489fa2e
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/bvanbrocklin.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/ccarpenter.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/ccarpenter.jpg b/examples/FlexJSStore/src/assets/pic/ccarpenter.jpg
new file mode 100755
index 0000000..c1dc3d8
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/ccarpenter.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/clampberto.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/clampberto.jpg b/examples/FlexJSStore/src/assets/pic/clampberto.jpg
new file mode 100755
index 0000000..9deacd2
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/clampberto.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/davenon.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/davenon.jpg b/examples/FlexJSStore/src/assets/pic/davenon.jpg
new file mode 100755
index 0000000..6a2a142
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/davenon.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/dmcgoyal.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/dmcgoyal.jpg b/examples/FlexJSStore/src/assets/pic/dmcgoyal.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/dmcgoyal.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/dwillhelm.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/dwillhelm.jpg b/examples/FlexJSStore/src/assets/pic/dwillhelm.jpg
new file mode 100755
index 0000000..fd15d59
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/dwillhelm.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/esunderland.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/esunderland.jpg b/examples/FlexJSStore/src/assets/pic/esunderland.jpg
new file mode 100755
index 0000000..c4769e8
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/esunderland.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/jproctor.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/jproctor.jpg b/examples/FlexJSStore/src/assets/pic/jproctor.jpg
new file mode 100755
index 0000000..1111787
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/jproctor.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/mfields.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/mfields.jpg b/examples/FlexJSStore/src/assets/pic/mfields.jpg
new file mode 100755
index 0000000..489fa2e
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/mfields.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/pdempsey.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/pdempsey.jpg b/examples/FlexJSStore/src/assets/pic/pdempsey.jpg
new file mode 100755
index 0000000..9deacd2
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/pdempsey.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/ptranep.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/ptranep.jpg b/examples/FlexJSStore/src/assets/pic/ptranep.jpg
new file mode 100755
index 0000000..4b9a03b
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/ptranep.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/rcrawley.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/rcrawley.jpg b/examples/FlexJSStore/src/assets/pic/rcrawley.jpg
new file mode 100755
index 0000000..9b60320
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/rcrawley.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/rdreifus.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/rdreifus.jpg b/examples/FlexJSStore/src/assets/pic/rdreifus.jpg
new file mode 100755
index 0000000..6a2a142
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/rdreifus.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/pic/twong.jpg
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/pic/twong.jpg b/examples/FlexJSStore/src/assets/pic/twong.jpg
new file mode 100755
index 0000000..1124b71
Binary files /dev/null and b/examples/FlexJSStore/src/assets/pic/twong.jpg differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/support_map.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/support_map.png b/examples/FlexJSStore/src/assets/support_map.png
new file mode 100755
index 0000000..c2f2394
Binary files /dev/null and b/examples/FlexJSStore/src/assets/support_map.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/support_mapmarker_a.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/support_mapmarker_a.png b/examples/FlexJSStore/src/assets/support_mapmarker_a.png
new file mode 100755
index 0000000..20c21e1
Binary files /dev/null and b/examples/FlexJSStore/src/assets/support_mapmarker_a.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/support_mapmarker_b.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/support_mapmarker_b.png b/examples/FlexJSStore/src/assets/support_mapmarker_b.png
new file mode 100755
index 0000000..069ccd8
Binary files /dev/null and b/examples/FlexJSStore/src/assets/support_mapmarker_b.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/support_mapmarker_c.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/support_mapmarker_c.png b/examples/FlexJSStore/src/assets/support_mapmarker_c.png
new file mode 100755
index 0000000..f6b587e
Binary files /dev/null and b/examples/FlexJSStore/src/assets/support_mapmarker_c.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/support_mapmarker_plus.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/support_mapmarker_plus.png b/examples/FlexJSStore/src/assets/support_mapmarker_plus.png
new file mode 100755
index 0000000..4192088
Binary files /dev/null and b/examples/FlexJSStore/src/assets/support_mapmarker_plus.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/assets/trashcan.png
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/assets/trashcan.png b/examples/FlexJSStore/src/assets/trashcan.png
new file mode 100644
index 0000000..483a37c
Binary files /dev/null and b/examples/FlexJSStore/src/assets/trashcan.png differ
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/beige.css
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/beige.css b/examples/FlexJSStore/src/beige.css
new file mode 100755
index 0000000..a5b23ba
--- /dev/null
+++ b/examples/FlexJSStore/src/beige.css
@@ -0,0 +1,170 @@
+/*
+////////////////////////////////////////////////////////////////////////////////
+//
+// Licensed to the Apache Software Foundation (ASF) under one or more
+// contributor license agreements. See the NOTICE file distributed with
+// this work for additional information regarding copyright ownership.
+// The ASF licenses this file to You under the Apache License, Version 2.0
+// (the "License"); you may not use this file except in compliance with
+// the License. You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT 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";
+ borderThickness: 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;
+ borderThicknessRight: 1;
+ borderThicknessBottom: 1;
+ paddingRight: 0;
+ paddingBottom: 0;
+}
+
+
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/f2a370c6/examples/FlexJSStore/src/blue.css
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/blue.css b/examples/FlexJSStore/src/blue.css
new file mode 100755
index 0000000..58e98cd
--- /dev/null
+++ b/examples/FlexJSStore/src/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/f2a370c6/examples/FlexJSStore/src/data/catalog.json
----------------------------------------------------------------------
diff --git a/examples/FlexJSStore/src/data/catalog.json b/examples/FlexJSStore/src/data/catalog.json
new file mode 100755
index 0000000..f42a76f
--- /dev/null
+++ b/examples/FlexJSStore/src/data/catalog.json
@@ -0,0 +1,255 @@
+<?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 : [
+
+ { "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"
+
+];
Re: [14/14] git commit: [flex-asjs] [refs/heads/develop] -
FlexJSStore works well enough to try to make it work on JS. Drag/Drop,
ToolTips, States with Transitions are functional
Posted by OmPrakash Muppirala <bi...@gmail.com>.
Wow, this is a fantastic milestone!
On Fri, Oct 31, 2014 at 3:08 PM, <ah...@apache.org> wrote:
> FlexJSStore works well enough to try to make it work on JS. Drag/Drop,
> ToolTips, States with Transitions are functional
>
>
> Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
> Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/f2a370c6
> Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/f2a370c6
> Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/f2a370c6
>