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 2016/01/11 21:55:53 UTC

[09/20] git commit: [flex-asjs] [refs/heads/mavenfolders] - rename/restructure folders for maven

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/as/src/org/apache/flex/utils/UIUtils.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/as/src/org/apache/flex/utils/UIUtils.as b/frameworks/projects/Core/as/src/org/apache/flex/utils/UIUtils.as
deleted file mode 100644
index 2e14e12..0000000
--- a/frameworks/projects/Core/as/src/org/apache/flex/utils/UIUtils.as
+++ /dev/null
@@ -1,107 +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 org.apache.flex.utils
-{
-	import org.apache.flex.core.IChild;
-	import org.apache.flex.core.IPopUpHost;
-	import org.apache.flex.core.IUIBase;
-
-	/**
-	 *  The UIUtils class is a collection of static functions that provide utility
-	 *  features to UIBase objects.
-	 *  
-	 *  @langversion 3.0
-	 *  @playerversion Flash 10.2
-	 *  @playerversion AIR 2.6
-	 *  @productversion FlexJS 0.0
-	 */
-	public class UIUtils
-	{
-		/**
-		 * @private
-		 */
-		public function UIUtils()
-		{
-			throw new Error("UIUtils should not be instantiated.");
-		}
-		
-		/**
-		 *  Centers the given item relative to another item. Typically the item being centered is
-		 *  a child or sibling of the second item. 
-		 * 
-		 *  @param item The component item being centered.
-		 *  @param relativeTo The component used as reference for the centering.
-		 *  
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-		public static function center( item:IUIBase, relativeTo:IUIBase ):void
-		{
-			var xpos:Number = (relativeTo.width - item.width)/2;
-			var ypos:Number = (relativeTo.height - item.height)/2;
-			
-			item.x = xpos;
-			item.y = ypos;
-		}
-		
-		/**
-		 *  Given a component starting point, this function walks up the parent chain
-		 *  looking for a component that implements the IPopUpHost interface. The function
-		 *  either returns that component or null if no IPopUpHost can be found. 
-		 * 
-		 *  @param start A component to start the search.
-		 *  @return A component that implements IPopUpHost or null.
-		 *  
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-		public static function findPopUpHost(start:IUIBase):IPopUpHost
-		{
-			while( start != null && !(start is IPopUpHost) && start is IChild ) {
-				start = IChild(start).parent as IUIBase;
-			}
-			
-			return start as IPopUpHost;
-		}
-		
-		/**
-		 *  Removes the given component from the IPopUpHost. 
-		 * 
-		 *  @param start A component to start the search.
-		 *  @return A component that implements IPopUpHost or null.
-		 *  
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-		public static function removePopUp(popUp:IChild):void
-		{
-			var start:IUIBase = popUp.parent as IUIBase;
-			while( start != null && !(start is IPopUpHost) && start is IChild ) {
-				start = IChild(start).parent as IUIBase;
-			}
-			(start as IPopUpHost).removeElement(popUp);
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/as/src/org/apache/flex/utils/ViewSourceContextMenuOption.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/as/src/org/apache/flex/utils/ViewSourceContextMenuOption.as b/frameworks/projects/Core/as/src/org/apache/flex/utils/ViewSourceContextMenuOption.as
deleted file mode 100644
index 5a2469a..0000000
--- a/frameworks/projects/Core/as/src/org/apache/flex/utils/ViewSourceContextMenuOption.as
+++ /dev/null
@@ -1,97 +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 org.apache.flex.utils
-{
-
-COMPILE::AS3
-{
-    import flash.display.InteractiveObject;
-    import flash.events.ContextMenuEvent;
-    import flash.net.URLRequest;
-    import flash.net.navigateToURL;
-    import flash.ui.ContextMenu;
-    import flash.ui.ContextMenuItem;
-}
-
-import org.apache.flex.core.IBead;
-import org.apache.flex.core.IStrand;
-
-/**
- *  The ViewSourceContextMenuOption class is a class that 
- *  implements the "View Source" option in Flash for a
- *  FlexJS application.  There is no JS equivalent as
- *  browsers always display source.    
- *  
- *  @langversion 3.0
- *  @playerversion Flash 10.2
- *  @playerversion AIR 2.6
- *  @productversion FlexJS 0.0
- */
-public class ViewSourceContextMenuOption implements IBead
-{
-    /**
-     *  Constructor.
-     *  
-     *  @langversion 3.0
-     *  @playerversion Flash 10.2
-     *  @playerversion AIR 2.6
-     *  @productversion FlexJS 0.0
-     */
-    public function ViewSourceContextMenuOption()
-    {
-    }
-
-	private var _strand:IStrand;
-	
-    /**
-     *  @copy org.apache.flex.core.UIBase#strand
-     *  
-     *  @langversion 3.0
-     *  @playerversion Flash 10.2
-     *  @playerversion AIR 2.6
-     *  @productversion FlexJS 0.0
-     */
-	public function set strand(value:IStrand):void
-	{
-		_strand = value;
-		
-        COMPILE::AS3
-        {
-    		var menuHost:InteractiveObject = InteractiveObject(value);
-    		var cm:ContextMenu = ContextMenu(menuHost.contextMenu);
-    		if (!cm)
-    		{
-    			cm = new ContextMenu();
-    			menuHost.contextMenu = cm;
-    		}
-    		var cmi:ContextMenuItem = new ContextMenuItem("View Source...");
-    		cm.hideBuiltInItems();
-    		cm.customItems.push(cmi);
-    		cmi.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, viewSource);
-        }
-	}
-	
-    COMPILE::AS3
-	private function viewSource(e:ContextMenuEvent):void
-	{
-		var urlRequest:URLRequest = new URLRequest("srcview/index.html");
-		navigateToURL(urlRequest, "_blank");	
-	}
-}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/as/src/org/apache/flex/utils/dbg/DOMPathUtil.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/as/src/org/apache/flex/utils/dbg/DOMPathUtil.as b/frameworks/projects/Core/as/src/org/apache/flex/utils/dbg/DOMPathUtil.as
deleted file mode 100644
index 3b3da0e..0000000
--- a/frameworks/projects/Core/as/src/org/apache/flex/utils/dbg/DOMPathUtil.as
+++ /dev/null
@@ -1,95 +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 org.apache.flex.utils.dbg
-{
-    import flash.utils.Dictionary;
-    import flash.utils.getQualifiedClassName;
-    
-    import org.apache.flex.core.IChild;
-
-	/**
-	 *  The DOMPathUtil class is a tracks instances of display objects
-     *  and provides a unique string for each one based on its position
-     *  in the tree of display objects.  It is generally used for
-     *  trace output.  If you think you need this for production applications
-     *  you might want to re-think your design.
-	 *  
-	 *  @langversion 3.0
-	 *  @playerversion Flash 10.2
-	 *  @playerversion AIR 2.6
-	 *  @productversion FlexJS 0.0
-	 */
-    COMPILE::AS3
-	public class DOMPathUtil
-	{
-		/**
-		 * @private
-		 */
-		public function DOMPathUtil()
-		{
-			throw new Error("DOMPathUtil should not be instantiated.");
-		}
-		
-        private static var dict:Dictionary = new Dictionary(true);
-        private static var counter:int = 0;
-        
-		/**
-		 *  Returns a string for an object.  IF the object is parented, it
-         *  creates a string based on the DOMPathUtil of the parent.
-		 *  
-         *  @param obj The object to generate a path/name for.
-		 *  @return The unique name based on the parents.
-		 *  
-		 *  @langversion 3.0
-		 *  @playerversion Flash 10.2
-		 *  @playerversion AIR 2.6
-		 *  @productversion FlexJS 0.0
-		 */
-		public static function getPath(obj:Object):String
-		{
-            if (obj == null) return "";
-            
-            var name:String = null;
-            if (dict[obj] == null)
-            {
-                try {
-                    name = obj.id;
-                } catch (e:Error)
-                {
-                }
-                if (name == null)
-                {
-                    name = getQualifiedClassName(obj);
-                    var c:int = name.lastIndexOf(":");
-                    if (c != -1)
-                        name = name.substr(c + 1);
-                    name += (counter++).toString();
-                }
-                dict[obj] = name;
-            }
-            name = dict[obj];
-            
-            if (obj is IChild)
-            {
-                name = getPath(IChild(obj).parent) + "/" + name;
-            }
-            return name;
-		}
-	}
-}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/as/tests/FlexUnitFlexJSApplication.mxml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/as/tests/FlexUnitFlexJSApplication.mxml b/frameworks/projects/Core/as/tests/FlexUnitFlexJSApplication.mxml
deleted file mode 100644
index a97b086..0000000
--- a/frameworks/projects/Core/as/tests/FlexUnitFlexJSApplication.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:js="library://ns.apache.org/flexjs/basic" 
-                   applicationComplete="runTests()"
-                   >
-    <fx:Script>
-        <![CDATA[
-            import flexUnitTests.StrandTesterTest;
-            import flexUnitTests.StrandTester;
-            
-            import org.flexunit.listeners.CIListener;
-            import org.flexunit.runner.FlexUnitCore;
-            
-            public function runTests() : void
-            {
-                var core : FlexUnitCore = new FlexUnitCore();
-                core.addListener(new CIListener());
-                core.run(StrandTester);
-            }
-            
-        ]]>
-    </fx:Script>
-    <js:valuesImpl>
-        <js:SimpleValuesImpl />
-    </js:valuesImpl>
-
-</js:Application>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/as/tests/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/as/tests/build.xml b/frameworks/projects/Core/as/tests/build.xml
deleted file mode 100644
index 31d979b..0000000
--- a/frameworks/projects/Core/as/tests/build.xml
+++ /dev/null
@@ -1,165 +0,0 @@
-<?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="Core.test" default="main" basedir=".">
-    <property name="FLEXJS_HOME" location="../../../../.."/>
-    
-    <property file="${FLEXJS_HOME}/env.properties"/>
-    <property environment="env"/>
-    <property file="${FLEXJS_HOME}/build.properties"/>
-    <property name="FLEX_HOME" value="${env.FLEX_HOME}"/>
-    <property name="FALCON_HOME" value="${env.FALCON_HOME}"/>
- 	
-	<condition property="browser" value="C:/Program Files/Internet Explorer/iexplore.exe">
-		<os family="windows"/>
-    </condition>
-    <condition property="browser" value="/Applications/Safari.app/Contents/MacOS/Safari">
-        <os family="mac"/>
-    </condition>
-	
-    <property name="report.dir" value="${basedir}/out" />
-    
-    <available file="${FLEXJS_HOME}/../flex-flexunit"
-        type="dir"
-        property="FLEXUNIT_HOME"
-        value="${FLEXJS_HOME}/../flex-flexunit" />
-    
-    <available file="${FLEXJS_HOME}/../flexunit"
-        type="dir"
-        property="FLEXUNIT_HOME"
-        value="${FLEXJS_HOME}/../flexunit" />
-	
-    <available file="${env.FLEXUNIT_HOME}"
-        type="dir"
-        property="FLEXUNIT_HOME"
-        value="${env.FLEXUNIT_HOME}"/>
-    
-    <available file="${FLEXUNIT_HOME}/FlexUnit4/target"
-        type="dir"
-        property="FLEXUNIT_LIBPATH1"
-        value="-library-path+=${FLEXUNIT_HOME}/FlexUnit4/target/flexunit-4.3.0-20140410-as3_4.12.0.swc" />
-    <property name="FLEXUNIT_LIBPATH1" value="-library-path+=${FLEXUNIT_HOME}/flexunit" />
-        
-    <available file="${FLEXUNIT_HOME}/FlexUnit4CIListener/target"
-        type="dir"
-        property="FLEXUNIT_LIBPATH2"
-        value="-library-path+=${FLEXUNIT_HOME}/FlexUnit4CIListener/target" />
-    <property name="FLEXUNIT_LIBPATH2" value="-define=CONFIG::dummy,false" />
-        
-    <available file="${FLEXUNIT_HOME}/FlexUnit4AntTasks/target"
-        type="dir"
-        property="FLEXUNIT_CLASSPATH"
-        value="${FLEXUNIT_HOME}/FlexUnit4AntTasks/target" />
-    <property name="FLEXUNIT_CLASSPATH" value="${FLEXUNIT_HOME}/flexunit" />
-        
-    <target name="main" depends="clean,compile,test" description="Clean test of FlexJSUI.swc">
-    </target>
-
-    <target name="clean">
-        <delete failonerror="false">
-            <fileset dir="${basedir}">
-                <include name="FlexUnitFlexJSApplication.swf"/>
-            </fileset>
-        </delete>
-        <delete failonerror="false">
-            <fileset dir="${basedir}/js/out">
-                <include name="**/**"/>
-            </fileset>
-        </delete>
-    </target>
-    
-    <path id="lib.path">
-      <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
-    </path>
-
-    <target name="compile" description="Compiles FlexUnitApplication.swf">
-        <echo message="Compiling FlexUnitFlexJSApplication.swf"/>
-        <echo message="FLEX_HOME: ${FLEX_HOME}"/>
-        <echo message="FALCON_HOME: ${FALCON_HOME}"/>
-        <echo message="FLEXUNIT_HOME: ${FLEXUNIT_HOME}"/>
-
-        <!-- Load the <compc> task. We can't do this at the <project> level -->
-        <!-- because targets that run before flexTasks.jar gets built would fail. -->
-        <taskdef resource="flexTasks.tasks" classpathref="lib.path"/>
-        <!--
-            Link in the classes (and their dependencies) for the MXML tags
-            listed in this project's manifest.xml.
-            Also link the additional classes (and their dependencies)
-            listed in FlexJSUIClasses.as,
-            because these aren't referenced by the manifest classes.
-            Keep the standard metadata when compiling.
-            Include the appropriate CSS files and assets in the SWC.
-            Don't include any resources in the SWC.
-            Write a bundle list of referenced resource bundles
-            into the file bundles.properties in this directory.
-        -->
-        <mxmlc fork="true"
-            file="${basedir}/FlexUnitFlexJSApplication.mxml"
-            output="${basedir}/FlexUnitFlexJSApplication.swf">
-            <jvmarg line="${mxmlc.jvm.args}"/>
-            <arg value="+flexlib=${FLEXJS_HOME}/frameworks" />
-            <arg value="-debug" />
-            <arg value="-define=COMPILE::AS3,true" />
-            <arg value="-define=COMPILE::JS,false" />
-            <arg value="-compiler.mxml.children-as-data" />
-            <arg value="-compiler.binding-value-change-event=org.apache.flex.events.ValueChangeEvent" />
-            <arg value="-compiler.binding-value-change-event-kind=org.apache.flex.events.ValueChangeEvent" />
-            <arg value="-compiler.binding-value-change-event-type=valueChange" />
-            <arg value="+playerglobal.version=${playerglobal.version}" />
-            <arg value="+env.PLAYERGLOBAL_HOME=${env.PLAYERGLOBAL_HOME}" />
-            <arg value="-source-path+=${FLEXJS_HOME}/frameworks/projects/Core/as/src" />
-            <arg value="-library-path+=${FLEXJS_HOME}/frameworks/libs" />
-            <arg value="${FLEXUNIT_LIBPATH1}" />
-            <arg value="${FLEXUNIT_LIBPATH2}" />
-        </mxmlc>
-    </target>
-
-    <target name="test">
-        <taskdef resource="flexUnitTasks.tasks">
-            <classpath>
-                <fileset dir="${FLEXUNIT_CLASSPATH}">
-                    <include name="flexUnitTasks*.jar" />
-                </fileset>
-            </classpath>
-        </taskdef>
-		<mkdir dir="${report.dir}" />
-		<flexunit
-            swf="${basedir}/FlexUnitFlexJSApplication.swf"
-		    workingDir="${basedir}"
-		    toDir="${report.dir}"
-			haltonfailure="false"
-			verbose="true"
-			localTrusted="true"
-			timeout="90000">
-            <source dir="${FLEXJS_HOME}/frameworks/projects/Core/as/src" />
-            <library dir="${FLEXJS_HOME}/frameworks/libs" />
-        </flexunit>
-        
-		<!-- Generate readable JUnit-style reports -->
-		<junitreport todir="${report.dir}">
-			<fileset dir="${report.dir}">
-				<include name="TEST-*.xml" />
-			</fileset>
-			<report format="frames" todir="${report.dir}/html" />
-		</junitreport>
-        
-    </target>
-</project>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/as/tests/flexUnitTests/StrandTester.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/as/tests/flexUnitTests/StrandTester.as b/frameworks/projects/Core/as/tests/flexUnitTests/StrandTester.as
deleted file mode 100644
index df62e31..0000000
--- a/frameworks/projects/Core/as/tests/flexUnitTests/StrandTester.as
+++ /dev/null
@@ -1,27 +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 flexUnitTests
-{
-    [Suite]
-    [RunWith("org.flexunit.runners.Suite")]
-    public class StrandTester
-    {
-        public var strandTesterTest:StrandTesterTest;
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/as/tests/flexUnitTests/StrandTesterTest.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/as/tests/flexUnitTests/StrandTesterTest.as b/frameworks/projects/Core/as/tests/flexUnitTests/StrandTesterTest.as
deleted file mode 100644
index 97a84a3..0000000
--- a/frameworks/projects/Core/as/tests/flexUnitTests/StrandTesterTest.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 flexUnitTests
-{
-    import flexunit.framework.Assert;
-    
-    import org.apache.flex.core.Strand;
-    
-    public class StrandTesterTest
-    {		
-        [Before]
-        public function setUp():void
-        {
-        }
-        
-        [After]
-        public function tearDown():void
-        {
-        }
-        
-        [BeforeClass]
-        public static function setUpBeforeClass():void
-        {
-        }
-        
-        [AfterClass]
-        public static function tearDownAfterClass():void
-        {
-        }
-        
-        [Test]
-        public function testIdProperty():void
-        {
-            var strand:Strand = new Strand();
-            strand.id = "foo";
-            Assert.assertEquals("Error testing Srand.id", strand.id, "foo");
-        }        
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/basic-manifest.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/basic-manifest.xml b/frameworks/projects/Core/basic-manifest.xml
deleted file mode 100644
index c1842df..0000000
--- a/frameworks/projects/Core/basic-manifest.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?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.
-
--->
-
-
-<componentPackage>
-
-    <component id="Application" class="org.apache.flex.core.Application"/>
-    <component id="SimpleCSSValuesImpl" class="org.apache.flex.core.SimpleCSSValuesImpl"/>
-    <component id="CSSFontFaceBead" class="org.apache.flex.core.CSSFontFaceBead" />
-    <component id="ViewBase" class="org.apache.flex.core.ViewBase"/>
-    <component id="BrowserScroller" class="org.apache.flex.core.BrowserScroller"/>
-    <component id="BrowserResizeHandler" class="org.apache.flex.core.BrowserResizeListener"/>
-    <component id="SimpleValuesImpl" class="org.apache.flex.core.SimpleValuesImpl"/>
-    <component id="MXMLDragInitiator" class="org.apache.flex.core.MXMLDragInitiator" />
-    <component id="CallLaterBead" class="org.apache.flex.core.CallLaterBead" />
-
-    <component id="BindableCSSStyles" class="org.apache.flex.core.BindableCSSStyles"/>
-    <component id="SimpleCSSStyles" class="org.apache.flex.core.SimpleCSSStyles"/>
-    <component id="ParentDocumentBead" class="org.apache.flex.core.ParentDocumentBead"/>
-    <component id="MixinManager" class="org.apache.flex.utils.MixinManager" />
-    <component id="ViewSourceContextMenuOption" class="org.apache.flex.utils.ViewSourceContextMenuOption" />
-    
-    <component id="State" class="org.apache.flex.states.State"/>
-</componentPackage>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/compile-as-to-js-config.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/compile-as-to-js-config.xml b/frameworks/projects/Core/compile-as-to-js-config.xml
deleted file mode 100644
index e601b79..0000000
--- a/frameworks/projects/Core/compile-as-to-js-config.xml
+++ /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.
-
--->
-<flex-config>
-
-    <compiler>
-        <accessible>false</accessible>
-        
-        <external-library-path>
-            <path-element>${env.AIR_HOME}/frameworks/libs/air/airglobal.swc</path-element>
-            <path-element>D:/SDKs/FlexJS/nightly_PF18_AIR18.0_en_US/js/libs/js.swc</path-element>
-            <path-element>D:/SDKs/FlexJS/nightly_PF18_AIR18.0_en_US/js/libs/gcl.swc</path-element>
-        </external-library-path>
-
-        <mxml>
-            <children-as-data>true</children-as-data>
-        </mxml>
-        <binding-value-change-event>org.apache.flex.events.ValueChangeEvent</binding-value-change-event>
-        <binding-value-change-event-kind>org.apache.flex.events.ValueChangeEvent</binding-value-change-event-kind>
-        <binding-value-change-event-type>valueChange</binding-value-change-event-type>
-
-        <keep-as3-metadata>
-            <name>Bindable</name>
-            <name>Managed</name>
-            <name>ChangeEvent</name>
-            <name>NonCommittingChangeEvent</name>
-            <name>Transient</name>
-        </keep-as3-metadata>
-
-        <namespaces>
-            <namespace>
-                <uri>library://ns.apache.org/flexjs/basic</uri>
-                <manifest>basic-manifest.xml</manifest>
-            </namespace>
-        </namespaces>
-        
-        <locale/>
-
-        <source-path>
-            <!--<path-element>as/src</path-element>-->
-        </source-path>
-
-        <warn-no-constructor>false</warn-no-constructor>
-    </compiler>
-
-    <include-sources>
-        <path-element>as/src</path-element>
-    </include-sources>
-
-    <include-classes>
-        <class>CoreClasses</class>
-        <!--<class>CoreASJSClasses</class>-->
-    </include-classes>
-    
-    <include-namespaces>
-        <uri>library://ns.apache.org/flexjs/basic</uri>
-    </include-namespaces>
-        
-    <target-player>11.1</target-player>
-	
-
-</flex-config>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/compile-asjs-config.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/compile-asjs-config.xml b/frameworks/projects/Core/compile-asjs-config.xml
deleted file mode 100644
index 977c1d4..0000000
--- a/frameworks/projects/Core/compile-asjs-config.xml
+++ /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.
-
--->
-<flex-config>
-
-    <compiler>
-        <accessible>false</accessible>
-        
-        <external-library-path>
-        </external-library-path>
-        
-		<mxml>
-			<children-as-data>true</children-as-data>
-		</mxml>
-		<binding-value-change-event>org.apache.flex.events.ValueChangeEvent</binding-value-change-event>
-		<binding-value-change-event-kind>org.apache.flex.events.ValueChangeEvent</binding-value-change-event-kind>
-		<binding-value-change-event-type>valueChange</binding-value-change-event-type>
-
-        <keep-as3-metadata>
-          <name>Bindable</name>
-          <name>Managed</name>
-          <name>ChangeEvent</name>
-          <name>NonCommittingChangeEvent</name>
-          <name>Transient</name>
-        </keep-as3-metadata>
-	  
-        <locale/>
-        
-        <library-path>
-        </library-path>
-        
-        <namespaces>
-            <namespace>
-                <uri>library://ns.apache.org/flexjs/basic</uri>
-                <manifest>basic-manifest.xml</manifest>
-            </namespace>
-        </namespaces>
-        
-        <source-path>
-            <path-element>as/src</path-element>
-        </source-path>
-        
-        <warn-no-constructor>false</warn-no-constructor>
-    </compiler>
-    
-    <include-file>
-    </include-file>
-
-    <include-sources>
-    </include-sources>
-    
-    <include-classes>
-        <class>CoreClasses</class>
-    </include-classes>
-    
-    <include-namespaces>
-        <uri>library://ns.apache.org/flexjs/basic</uri>
-    </include-namespaces>
-    
-    <!--<target-player>${playerglobal.version}</target-player>-->
-	
-
-</flex-config>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/compile-config.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/compile-config.xml b/frameworks/projects/Core/compile-config.xml
deleted file mode 100644
index d9a038d..0000000
--- a/frameworks/projects/Core/compile-config.xml
+++ /dev/null
@@ -1,83 +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.
-
--->
-<flex-config>
-
-    <compiler>
-        <accessible>false</accessible>
-        
-        <external-library-path>
-            <path-element>${env.AIR_HOME}/frameworks/libs/air/airglobal.swc</path-element>
-        </external-library-path>
-        
-		<mxml>
-			<children-as-data>true</children-as-data>
-		</mxml>
-		<binding-value-change-event>org.apache.flex.events.ValueChangeEvent</binding-value-change-event>
-		<binding-value-change-event-kind>org.apache.flex.events.ValueChangeEvent</binding-value-change-event-kind>
-		<binding-value-change-event-type>valueChange</binding-value-change-event-type>
-
-        <keep-as3-metadata>
-          <name>Bindable</name>
-          <name>Managed</name>
-          <name>ChangeEvent</name>
-          <name>NonCommittingChangeEvent</name>
-          <name>Transient</name>
-        </keep-as3-metadata>
-	  
-        <locale/>
-        
-        <library-path/>
-
-        <namespaces>
-            <namespace>
-                <uri>library://ns.apache.org/flexjs/basic</uri>
-                <manifest>basic-manifest.xml</manifest>
-            </namespace>
-        </namespaces>
-        
-        <source-path>
-            <path-element>as/src</path-element>
-        </source-path>
-        
-        <warn-no-constructor>false</warn-no-constructor>
-    </compiler>
-    
-    <include-file>
-        <name>js/out/*</name>
-        <path>js/out/*</path>
-    </include-file>
-    <!--
-    <include-file>
-        <name>js/src/*</name>
-        <path>js/src/*</path>
-    </include-file>
-     -->
-
-    <include-classes>
-        <class>CoreClasses</class>
-    </include-classes>
-    
-    <include-namespaces>
-        <uri>library://ns.apache.org/flexjs/basic</uri>
-    </include-namespaces>  
-        
-    <target-player>${playerglobal.version}</target-player>
-	
-
-</flex-config>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/compile-js-config.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/compile-js-config.xml b/frameworks/projects/Core/compile-js-config.xml
deleted file mode 100644
index 3c3784b..0000000
--- a/frameworks/projects/Core/compile-js-config.xml
+++ /dev/null
@@ -1,87 +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.
-
--->
-<flex-config>
-
-    <compiler>
-        <accessible>false</accessible>
-        
-        <external-library-path>
-            <path-element>${env.AIR_HOME}/frameworks/libs/air/airglobal.swc</path-element>
-        </external-library-path>
-        
-		<mxml>
-			<children-as-data>true</children-as-data>
-		</mxml>
-		<binding-value-change-event>org.apache.flex.events.ValueChangeEvent</binding-value-change-event>
-		<binding-value-change-event-kind>org.apache.flex.events.ValueChangeEvent</binding-value-change-event-kind>
-		<binding-value-change-event-type>valueChange</binding-value-change-event-type>
-
-        <keep-as3-metadata>
-          <name>Bindable</name>
-          <name>Managed</name>
-          <name>ChangeEvent</name>
-          <name>NonCommittingChangeEvent</name>
-          <name>Transient</name>
-        </keep-as3-metadata>
-	  
-        <locale/>
-        
-        <library-path/>
-
-        <namespaces>
-            <namespace>
-                <uri>library://ns.apache.org/flexjs/basic</uri>
-                <manifest>basic-manifest.xml</manifest>
-            </namespace>
-        </namespaces>
-        
-        <source-path>
-            <path-element>as/src</path-element>
-            <path-element>asjs/src</path-element>
-        </source-path>
-        
-        <warn-no-constructor>false</warn-no-constructor>
-    </compiler>
-    
-    <include-file>
-        <name>js/out/*</name>
-        <path>js/out/*</path>
-    </include-file>
-    <!--
-    <include-file>
-        <name>js/src/*</name>
-        <path>js/src/*</path>
-    </include-file>
-     -->
-    
-    <include-classes>
-        <class>CoreJSClasses</class>
-        <!-- leave out for now until we get Application to compile
-        <class>CoreASJSClasses</class>-->
-    </include-classes>
-    
-    <include-namespaces>
-        <uri>library://ns.apache.org/flexjs/basic</uri>
-		<uri>library://ns.apache.org/flexjs/svg</uri>
-    </include-namespaces>  
-        
-    <target-player>${playerglobal.version}</target-player>
-	
-
-</flex-config>

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/src/main/flex/CoreClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/CoreClasses.as b/frameworks/projects/Core/src/main/flex/CoreClasses.as
new file mode 100644
index 0000000..d43ea81
--- /dev/null
+++ b/frameworks/projects/Core/src/main/flex/CoreClasses.as
@@ -0,0 +1,149 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT 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 {
+
+/**
+ *  @private
+ *  This class is used to link additional classes into rpc.swc
+ *  beyond those that are found by dependency analysis starting
+ *  from the classes specified in manifest.xml.
+ */
+internal class CoreClasses
+{
+    import org.apache.flex.core.BeadViewBase; BeadViewBase;
+    import org.apache.flex.core.BrowserWindow; BrowserWindow;
+	COMPILE::AS3
+	{
+		import org.apache.flex.core.CSSShape; CSSShape;
+		import org.apache.flex.core.CSSSprite; CSSSprite;
+		import org.apache.flex.core.CSSTextField; CSSTextField;
+	    import org.apache.flex.core.StyleableCSSTextField; StyleableCSSTextField;
+	}
+    import org.apache.flex.core.ItemRendererClassFactory; ItemRendererClassFactory;
+	import org.apache.flex.core.FilledRectangle; FilledRectangle;
+    import org.apache.flex.core.IAlertModel; IAlertModel;
+    import org.apache.flex.core.IBead; IBead;
+    import org.apache.flex.core.IBeadController; IBeadController;
+    import org.apache.flex.core.IBeadLayout; IBeadLayout;
+    import org.apache.flex.core.IBeadModel; IBeadModel;
+    import org.apache.flex.core.IBeadView; IBeadView;
+	COMPILE::AS3
+	{
+	    import org.apache.flex.core.IBorderModel; IBorderModel;
+	}
+    import org.apache.flex.core.IChild; IChild;
+    import org.apache.flex.core.IChrome; IChrome;
+    import org.apache.flex.core.IComboBoxModel; IComboBoxModel;
+    import org.apache.flex.core.IContainer; IContainer;
+	import org.apache.flex.core.IContainerView; IContainerView;
+    import org.apache.flex.core.IContentView; IContentView;
+	import org.apache.flex.core.IContentViewHost; IContentViewHost;
+    import org.apache.flex.core.IDataProviderItemRendererMapper; IDataProviderItemRendererMapper;
+    import org.apache.flex.core.IDocument; IDocument;
+    import org.apache.flex.core.IFormatBead; IFormatBead;
+    import org.apache.flex.core.IImageModel; IImageModel;
+    import org.apache.flex.core.IItemRendererProvider; IItemRendererProvider;
+    import org.apache.flex.core.ILayoutChild; ILayoutChild;
+	import org.apache.flex.core.ILayoutHost; ILayoutHost;
+    import org.apache.flex.core.IListPresentationModel; IListPresentationModel;
+    import org.apache.flex.core.IPanelModel; IPanelModel;
+    import org.apache.flex.core.IParent; IParent;
+    import org.apache.flex.core.IParentIUIBase; IParentIUIBase;
+    import org.apache.flex.core.IPopUp; IPopUp;
+    import org.apache.flex.core.IRangeModel; IRangeModel;
+    import org.apache.flex.core.IRollOverModel; IRollOverModel;
+	COMPILE::AS3
+	{
+	    import org.apache.flex.core.IScrollBarModel; IScrollBarModel;
+	}
+    import org.apache.flex.core.ISelectableItemRenderer; ISelectableItemRenderer;
+    import org.apache.flex.core.ISelectionModel; ISelectionModel;
+    import org.apache.flex.core.IStrand; IStrand;
+    import org.apache.flex.core.IStrandWithModel; IStrandWithModel;
+    import org.apache.flex.core.ITextModel; ITextModel;
+    import org.apache.flex.core.ITitleBarModel; ITitleBarModel;
+    import org.apache.flex.core.IToggleButtonModel; IToggleButtonModel;
+    import org.apache.flex.core.IUIBase; IUIBase;
+    import org.apache.flex.core.IValueToggleButtonModel; IValueToggleButtonModel;
+	import org.apache.flex.core.IViewport; IViewport;
+	import org.apache.flex.core.IViewportModel; IViewportModel;
+	COMPILE::AS3
+	{
+		import org.apache.flex.core.IViewportScroller; IViewportScroller;
+	}
+	import org.apache.flex.core.ListBase; ListBase;
+	import org.apache.flex.core.ListBaseStrandChildren; ListBaseStrandChildren;
+    import org.apache.flex.core.SimpleStatesImpl; SimpleStatesImpl;
+    import org.apache.flex.core.SimpleApplication; SimpleApplication;
+    import org.apache.flex.core.DataBindingBase; DataBindingBase;
+    import org.apache.flex.core.UIBase; UIBase;
+	COMPILE::AS3
+	{
+	    import org.apache.flex.core.UIButtonBase; UIButtonBase;
+	}
+	import org.apache.flex.events.CustomEvent; CustomEvent;
+	import org.apache.flex.events.Event; Event;
+    import org.apache.flex.events.EventDispatcher; EventDispatcher;
+    import org.apache.flex.events.IEventDispatcher; IEventDispatcher;
+	import org.apache.flex.events.MouseEvent; MouseEvent;
+	import org.apache.flex.events.ValueEvent; ValueEvent;
+    import org.apache.flex.events.utils.MouseUtils; MouseUtils;
+    import org.apache.flex.geom.Point; Point;
+    import org.apache.flex.geom.Rectangle; Rectangle;
+    import org.apache.flex.utils.BinaryData; BinaryData;
+	COMPILE::AS3
+	{
+	    import org.apache.flex.utils.CSSBorderUtils; CSSBorderUtils;
+	}
+    import org.apache.flex.utils.CSSContainerUtils; CSSContainerUtils;
+	COMPILE::AS3
+	{
+	    import org.apache.flex.utils.dbg.DOMPathUtil; DOMPathUtil;
+	}
+	import org.apache.flex.utils.EffectTimer; EffectTimer;
+    import org.apache.flex.utils.MixinManager; MixinManager;
+	COMPILE::AS3
+	{
+	    import org.apache.flex.utils.PNGEncoder; PNGEncoder;
+    	import org.apache.flex.utils.SolidBorderUtil; SolidBorderUtil;
+	    import org.apache.flex.utils.StringTrimmer; StringTrimmer;
+}
+	import org.apache.flex.utils.Timer; Timer;
+	import org.apache.flex.utils.UIUtils; UIUtils;
+
+	import org.apache.flex.core.ClassFactory; ClassFactory;
+    import org.apache.flex.states.AddItems; AddItems;
+    import org.apache.flex.states.SetEventHandler; SetEventHandler;
+    import org.apache.flex.states.SetProperty; SetProperty;
+    import org.apache.flex.states.State; State;
+
+    import org.apache.flex.core.IDataGridModel; IDataGridModel;
+    import org.apache.flex.core.IDataGridPresentationModel; IDataGridPresentationModel;
+    import org.apache.flex.core.IDateChooserModel; IDateChooserModel;
+    import org.apache.flex.core.ParentDocumentBead; ParentDocumentBead;
+    import org.apache.flex.utils.CSSUtils; CSSUtils;
+
+	COMPILE::JS
+	{
+	    import org.apache.flex.utils.Language; Language;
+	}
+}
+
+}
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/src/main/flex/CoreJSClasses.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/CoreJSClasses.as b/frameworks/projects/Core/src/main/flex/CoreJSClasses.as
new file mode 100644
index 0000000..6bb95de
--- /dev/null
+++ b/frameworks/projects/Core/src/main/flex/CoreJSClasses.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
+{
+
+/**
+ *  @private
+ *  This class is used to link additional classes into rpc.swc
+ *  beyond those that are found by dependency analysis starting
+ *  from the classes specified in manifest.xml.
+ */
+internal class CoreJSClasses
+{	
+    import org.apache.flex.core.BeadViewBase; BeadViewBase;
+    import org.apache.flex.core.BrowserWindow; BrowserWindow;
+    import org.apache.flex.core.ItemRendererClassFactory; ItemRendererClassFactory;  
+	import org.apache.flex.core.FilledRectangle; FilledRectangle;
+    import org.apache.flex.core.IAlertModel; IAlertModel;
+    import org.apache.flex.core.IBead; IBead;
+    import org.apache.flex.core.IBeadController; IBeadController;
+    import org.apache.flex.core.IBeadLayout; IBeadLayout;
+    import org.apache.flex.core.IBeadModel; IBeadModel;
+    import org.apache.flex.core.IBeadView; IBeadView;
+    //import org.apache.flex.core.IBorderModel; IBorderModel;
+    import org.apache.flex.core.IChild; IChild;
+    import org.apache.flex.core.IChrome; IChrome;
+    import org.apache.flex.core.IComboBoxModel; IComboBoxModel;
+    import org.apache.flex.core.IContainer; IContainer;
+    import org.apache.flex.core.IContentView; IContentView;
+    import org.apache.flex.core.IDataProviderItemRendererMapper; IDataProviderItemRendererMapper;
+    import org.apache.flex.core.IDocument; IDocument;
+    import org.apache.flex.core.IFormatBead; IFormatBead;
+    //import org.apache.flex.core.IImageModel; IImageModel;
+    import org.apache.flex.core.ILayoutChild; ILayoutChild;
+    import org.apache.flex.core.ILayoutHost; ILayoutHost;
+    import org.apache.flex.core.IPanelModel; IPanelModel;
+    import org.apache.flex.core.IParent; IParent;
+    import org.apache.flex.core.IParentIUIBase; IParentIUIBase;
+    import org.apache.flex.core.IPopUp; IPopUp;
+    import org.apache.flex.core.IRollOverModel; IRollOverModel;
+    //import org.apache.flex.core.IScrollBarModel; IScrollBarModel;
+    import org.apache.flex.core.ISelectableItemRenderer; ISelectableItemRenderer;
+    import org.apache.flex.core.ISelectionModel; ISelectionModel;
+    import org.apache.flex.core.IStrand; IStrand;
+    import org.apache.flex.core.IStrandWithModel; IStrandWithModel;
+    import org.apache.flex.core.ITextModel; ITextModel;
+    import org.apache.flex.core.ITitleBarModel; ITitleBarModel;
+    import org.apache.flex.core.IToggleButtonModel; IToggleButtonModel;
+    import org.apache.flex.core.IUIBase; IUIBase;
+    import org.apache.flex.core.IValueToggleButtonModel; IValueToggleButtonModel;
+	import org.apache.flex.core.IViewport; IViewport;
+	import org.apache.flex.core.IViewportModel; IViewportModel;
+	//import org.apache.flex.core.IViewportScroller; IViewportScroller;
+    import org.apache.flex.core.SimpleStatesImpl; SimpleStatesImpl;
+    import org.apache.flex.core.DataBindingBase; DataBindingBase;
+    import org.apache.flex.core.UIBase; UIBase;
+    //import org.apache.flex.core.UIButtonBase; UIButtonBase;
+	import org.apache.flex.events.CustomEvent; CustomEvent;
+	import org.apache.flex.events.Event; Event;
+    import org.apache.flex.events.EventDispatcher; EventDispatcher;
+    import org.apache.flex.events.IEventDispatcher; IEventDispatcher;
+	import org.apache.flex.events.MouseEvent; MouseEvent;
+	import org.apache.flex.events.ValueEvent; ValueEvent;
+    import org.apache.flex.events.utils.MouseUtils; MouseUtils;
+    import org.apache.flex.geom.Point; Point;
+    import org.apache.flex.geom.Rectangle; Rectangle;
+    import org.apache.flex.utils.BinaryData; BinaryData;
+	import org.apache.flex.utils.EffectTimer; EffectTimer;
+    import org.apache.flex.utils.MixinManager; MixinManager;
+    //import org.apache.flex.utils.PNGEncoder; PNGEncoder;
+    //import org.apache.flex.utils.StringTrimmer; StringTrimmer;
+	import org.apache.flex.utils.Timer; Timer;
+	import org.apache.flex.utils.UIUtils; UIUtils;
+    
+	import org.apache.flex.core.ClassFactory; ClassFactory;
+    import org.apache.flex.states.AddItems; AddItems;
+    import org.apache.flex.states.SetEventHandler; SetEventHandler;
+    import org.apache.flex.states.SetProperty; SetProperty;
+    import org.apache.flex.states.State; State;
+}
+
+}
+

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/src/main/flex/org/apache/flex/core/Application.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/Application.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/Application.as
new file mode 100644
index 0000000..ac80b8c
--- /dev/null
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/Application.as
@@ -0,0 +1,602 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT 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.core
+{
+    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.utils.MXMLDataInterpreter;
+
+    COMPILE::AS3 {
+        import flash.display.DisplayObject;
+        import flash.display.Sprite;
+        import flash.display.StageAlign;
+        import flash.display.StageQuality;
+        import flash.display.StageScaleMode;
+        import flash.events.Event;
+        import flash.system.ApplicationDomain;
+        import flash.utils.getQualifiedClassName;
+    }
+
+    //--------------------------------------
+    //  Events
+    //--------------------------------------
+
+    /**
+     *  Dispatched at startup. Attributes and sub-instances of
+     *  the MXML document have been created and assigned.
+     *  The component lifecycle is different
+     *  than the Flex SDK.  There is no creationComplete event.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+    [Event(name="initialize", type="org.apache.flex.events.Event")]
+
+    /**
+     *  Dispatched at startup before the instances get created.
+     *  Beads can call preventDefault and defer initialization.
+     *  This event will be dispatched on every frame until no
+     *  listeners call preventDefault(), then the initialize()
+     *  method will be called.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+    [Event(name="preinitialize", type="org.apache.flex.events.Event")]
+
+    /**
+     *  Dispatched at startup after the initial view has been
+     *  put on the display list. This event is sent before
+     *  applicationComplete is dispatched.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+    [Event(name="viewChanged", type="org.apache.flex.events.Event")]
+
+    /**
+     *  Dispatched at startup after the initial view has been
+     *  put on the display list.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+    [Event(name="applicationComplete", type="org.apache.flex.events.Event")]
+    /**
+     *  The Application class is the main class and entry point for a FlexJS
+     *  application.  This Application class is different than the
+     *  Flex SDK's mx:Application or spark:Application in that it does not contain
+     *  user interface elements.  Those UI elements go in the views (ViewBase).  This
+     *  Application class expects there to be a main model, a controller, and
+     *  an initial view.
+     *
+     *  @see ViewBase
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+    public class Application extends ApplicationBase implements IStrand, IParent, IEventDispatcher
+    {
+        /**
+         *  Constructor.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function Application()
+        {
+            super();
+
+            COMPILE::AS3 {
+    			if (stage)
+    			{
+    				stage.align = StageAlign.TOP_LEFT;
+    				stage.scaleMode = StageScaleMode.NO_SCALE;
+                    // should be opt-in
+    				//stage.quality = StageQuality.HIGH_16X16_LINEAR;
+    			}
+
+                loaderInfo.addEventListener(flash.events.Event.INIT, initHandler);
+            }
+        }
+
+        COMPILE::AS3
+        private function initHandler(event:flash.events.Event):void
+        {
+			if (model is IBead) addBead(model as IBead);
+			if (controller is IBead) addBead(controller as IBead);
+
+            MouseEventConverter.setupAllConverters(stage);
+
+            for each (var bead:IBead in beads)
+                addBead(bead);
+
+            dispatchEvent(new org.apache.flex.events.Event("beadsAdded"));
+
+            if (dispatchEvent(new org.apache.flex.events.Event("preinitialize", false, true)))
+                initialize();
+            else
+                addEventListener(flash.events.Event.ENTER_FRAME, enterFrameHandler);
+
+        }
+
+        COMPILE::AS3
+        private function enterFrameHandler(event:flash.events.Event):void
+        {
+            if (dispatchEvent(new org.apache.flex.events.Event("preinitialize", false, true)))
+            {
+                removeEventListener(flash.events.Event.ENTER_FRAME, enterFrameHandler);
+                initialize();
+            }
+        }
+
+        /**
+         *  This method gets called when all preinitialize handlers
+         *  no longer call preventDefault();
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        COMPILE::AS3
+        protected function initialize():void
+        {
+
+            MXMLDataInterpreter.generateMXMLInstances(this, null, MXMLDescriptor);
+
+            dispatchEvent(new org.apache.flex.events.Event("initialize"));
+
+            if (initialView)
+            {
+                initialView.applicationModel =  model;
+        	    this.addElement(initialView);
+                // if someone has installed a resize listener, fake an event to run it now
+                if (stage.hasEventListener("resize"))
+                    stage.dispatchEvent(new flash.events.Event("resize"));
+                else if (initialView is ILayoutChild)
+                {
+                    var ilc:ILayoutChild = initialView as ILayoutChild;
+                    // otherwise, size once like this
+                    if (!isNaN(ilc.percentWidth) && !isNaN(ilc.percentHeight))
+                        ilc.setWidthAndHeight(stage.stageWidth, stage.stageHeight, true);
+                    else if (!isNaN(ilc.percentWidth))
+                        ilc.setWidth(stage.stageWidth);
+                    else if (!isNaN(ilc.percentHeight))
+                        ilc.setHeight(stage.stageHeight);
+                }
+                var bgColor:Object = ValuesManager.valuesImpl.getValue(this, "background-color");
+                if (bgColor != null)
+                {
+                    var backgroundColor:uint = ValuesManager.valuesImpl.convertColor(bgColor);
+                    graphics.beginFill(backgroundColor);
+                    graphics.drawRect(0, 0, initialView.width, initialView.height);
+                    graphics.endFill();
+                }
+                dispatchEvent(new org.apache.flex.events.Event("viewChanged"));
+            }
+            dispatchEvent(new org.apache.flex.events.Event("applicationComplete"));
+        }
+
+        /**
+         *  The org.apache.flex.core.IValuesImpl that will
+         *  determine the default values and other values
+         *  for the application.  The most common choice
+         *  is org.apache.flex.core.SimpleCSSValuesImpl.
+         *
+         *  @see org.apache.flex.core.SimpleCSSValuesImpl
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function set valuesImpl(value:IValuesImpl):void
+        {
+            ValuesManager.valuesImpl = value;
+            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;
+
+        /**
+         *  The data model (for the initial view).
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        [Bindable("__NoChangeEvent__")]
+        COMPILE::AS3
+        public var model:Object;
+
+        COMPILE::JS
+        private var _model:Object;
+
+        /**
+         *  The data model (for the initial view).
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        [Bindable("__NoChangeEvent__")]
+        COMPILE::JS
+        override public function get model():Object
+        {
+            return _model;
+        }
+
+        /**
+         *  @private
+         */
+        [Bindable("__NoChangeEvent__")]
+        COMPILE::JS
+        override public function set model(value:Object):void
+        {
+            _model = value;
+        }
+
+        /**
+         *  The controller.  The controller typically watches
+         *  the UI for events and updates the model accordingly.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public var controller:Object;
+
+        /**
+         *  An array of data that describes the MXML attributes
+         *  and tags in an MXML document.  This data is usually
+         *  decoded by an MXMLDataInterpreter
+         *
+         *  @see org.apache.flex.utils.MXMLDataInterpreter
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function get MXMLDescriptor():Array
+        {
+            return null;
+        }
+
+        /**
+         *  An method called by the compiler's generated
+         *  code to kick off the setting of MXML attribute
+         *  values and instantiation of child tags.
+         *
+         *  The call has to be made in the generated code
+         *  in order to ensure that the constructors have
+         *  completed first.
+         *
+         *  @param data The encoded data representing the
+         *  MXML attributes.
+         *
+         *  @see org.apache.flex.utils.MXMLDataInterpreter
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+    	public function generateMXMLAttributes(data:Array):void
+        {
+			MXMLDataInterpreter.generateMXMLProperties(this, data);
+        }
+
+        /**
+         *  The array property that is used to add additional
+         *  beads to an MXML tag.  From ActionScript, just
+         *  call addBead directly.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public var beads:Array;
+
+        COMPILE::AS3
+        private var _beads:Vector.<IBead>;
+
+        /**
+         *  @copy org.apache.flex.core.IStrand#addBead()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        COMPILE::AS3
+        public function addBead(bead:IBead):void
+        {
+            if (!_beads)
+                _beads = new Vector.<IBead>;
+            _beads.push(bead);
+            bead.strand = this;
+        }
+
+        /**
+         *  @copy org.apache.flex.core.IStrand#getBeadByType()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        COMPILE::AS3
+        public function getBeadByType(classOrInterface:Class):IBead
+        {
+            for each (var bead:IBead in _beads)
+            {
+                if (bead is classOrInterface)
+                    return bead;
+            }
+            return null;
+        }
+
+        /**
+         *  @copy org.apache.flex.core.IStrand#removeBead()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        COMPILE::AS3
+        public function removeBead(value:IBead):IBead
+        {
+            var n:int = _beads.length;
+            for (var i:int = 0; i < n; i++)
+            {
+                var bead:IBead = _beads[i];
+                if (bead == value)
+                {
+                    _beads.splice(i, 1);
+                    return bead;
+                }
+            }
+            return null;
+        }
+
+        /**
+         *  @copy org.apache.flex.core.IParent#addElement()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function addElement(c:Object, dispatchEvent:Boolean = true):void
+        {
+            COMPILE::AS3 {
+                if (c is IUIBase)
+                {
+                    addChild(IUIBase(c).element as DisplayObject);
+                    IUIBase(c).addedToParent();
+                }
+                else
+                    addChild(c as DisplayObject);
+            }
+            COMPILE::JS {
+                this.element.appendChild(c.element);
+                c.addedToParent();
+            }
+        }
+
+        /**
+         *  @copy org.apache.flex.core.IParent#addElementAt()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function addElementAt(c:Object, index:int, dispatchEvent:Boolean = true):void
+        {
+            COMPILE::AS3 {
+                if (c is IUIBase)
+                {
+                    addChildAt(IUIBase(c).element as DisplayObject, index);
+                    IUIBase(c).addedToParent();
+                }
+                else
+                    addChildAt(c as DisplayObject, index);
+            }
+            COMPILE::JS {
+                var children:NodeList = internalChildren();
+                if (index >= children.length)
+                    addElement(c);
+                else
+                {
+                    element.insertBefore(c.positioner,
+                        children[index]);
+                    c.addedToParent();
+                }
+
+            }
+        }
+
+        /**
+         *  @copy org.apache.flex.core.IParent#getElementAt()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function getElementAt(index:int):Object
+        {
+            COMPILE::AS3 {
+                return getChildAt(index);
+            }
+            COMPILE::JS {
+                var children:NodeList = internalChildren();
+                return children[index].flexjs_wrapper;
+            }
+        }
+
+        /**
+         *  @copy org.apache.flex.core.IParent#getElementIndex()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function getElementIndex(c:Object):int
+        {
+            COMPILE::AS3 {
+                if (c is IUIBase)
+                    return getChildIndex(IUIBase(c).element as DisplayObject);
+
+                return getChildIndex(c as DisplayObject);
+            }
+            COMPILE::JS {
+                var children:NodeList = internalChildren();
+                var n:int = children.length;
+                for (var i:int = 0; i < n; i++)
+                {
+                    if (children[i] == c.element)
+                        return i;
+                }
+                return -1;
+            }
+        }
+
+        /**
+         *  @copy org.apache.flex.core.IParent#removeElement()
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function removeElement(c:Object, dispatchEvent:Boolean = true):void
+        {
+            COMPILE::AS3 {
+                if (c is IUIBase)
+                {
+                    removeChild(IUIBase(c).element as DisplayObject);
+                }
+                else
+                    removeChild(c as DisplayObject);
+            }
+            COMPILE::JS {
+                element.removeChild(c.element);
+            }
+        }
+
+        /**
+         *  @copy org.apache.flex.core.IParent#numElements
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function get numElements():int
+        {
+            COMPILE::AS3 {
+                return numChildren;
+            }
+            COMPILE::JS {
+                var children:NodeList = internalChildren();
+                return children.length;
+            }
+        }
+
+        /**
+         * @return {Object} The array of children.
+         */
+        COMPILE::JS
+        protected function internalChildren():NodeList
+        {
+            return element.childNodes;
+        };
+
+
+
+        /**
+         * @flexjsignorecoercion org.apache.flex.core.IBead
+         */
+        COMPILE::JS
+        public function start():void
+        {
+            element = document.getElementsByTagName('body')[0];
+            element.flexjs_wrapper = this;
+            element.className = 'Application';
+
+            MXMLDataInterpreter.generateMXMLInstances(this, null, MXMLDescriptor);
+
+            dispatchEvent('initialize');
+
+            if (model is IBead) addBead(model as IBead);
+            if (controller is IBead) addBead(controller as IBead);
+
+            initialView.applicationModel = model;
+            addElement(initialView);
+
+            if (initialView)
+            {
+            	var baseView:UIBase = initialView as UIBase;
+                if (!isNaN(baseView.percentWidth) || !isNaN(baseView.percentHeight)) {
+    			    this.element.style.height = window.innerHeight.toString() + 'px';
+    			    this.element.style.width = window.innerWidth.toString() + 'px';
+    			    this.initialView.dispatchEvent('sizeChanged'); // kick off layout if % sizes
+  				}
+
+                dispatchEvent(new org.apache.flex.events.Event("viewChanged"));
+            }
+            dispatchEvent(new org.apache.flex.events.Event("applicationComplete"));
+        };
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ApplicationBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ApplicationBase.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ApplicationBase.as
new file mode 100644
index 0000000..70d6424
--- /dev/null
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/ApplicationBase.as
@@ -0,0 +1,110 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT 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.core
+{
+    COMPILE::AS3 {
+        import flash.display.Sprite;
+        import flash.system.ApplicationDomain;
+        import flash.utils.getQualifiedClassName;
+    }
+        
+    /**
+     *  This is a platform-dependent base class
+     *  for Application
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+    COMPILE::AS3
+	public class ApplicationBase extends Sprite implements IFlexInfo
+	{
+        /**
+         *  Constructor.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+		public function ApplicationBase()
+		{
+			super();
+		}
+        
+        private var _info:Object;
+        
+        /**
+         *  An Object containing information generated
+         *  by the compiler that is useful at startup time.
+         * 
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function info():Object
+        {
+            if (!_info)
+            {
+                var mainClassName:String = getQualifiedClassName(this);
+                var initClassName:String = "_" + mainClassName + "_FlexInit";
+                var c:Class = ApplicationDomain.currentDomain.getDefinition(initClassName) as Class;
+                _info = c.info();
+            }
+            return _info;
+        }
+   	}
+    
+    COMPILE::JS
+    public class ApplicationBase extends HTMLElementWrapper implements IFlexInfo
+    {
+        /**
+         *  Constructor.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function ApplicationBase()
+        {
+            super();
+        }
+        
+        private var _info:Object;
+        
+        /**
+         *  An Object containing information generated
+         *  by the compiler that is useful at startup time.
+         * 
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function info():Object
+        {
+            return _info;
+        }
+        
+
+    }
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/src/main/flex/org/apache/flex/core/BeadViewBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/BeadViewBase.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/BeadViewBase.as
new file mode 100644
index 0000000..a31af58
--- /dev/null
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/BeadViewBase.as
@@ -0,0 +1,97 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT 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.core
+{
+	import org.apache.flex.core.IBeadView;
+	import org.apache.flex.core.IStrand;
+    import org.apache.flex.events.EventDispatcher;
+    
+    /**
+     *  The BeadViewBase class is the base class for most view beads.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+	public class BeadViewBase extends EventDispatcher implements IBeadView
+	{
+        /**
+         *  Constructor.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+		public function BeadViewBase()
+		{
+			super();
+		}
+		
+        /**
+         *  The strand.  Do not modify except
+         *  via the strand setter.  For reading only.
+         * 
+         *  Because Object.defineProperties in JS
+         *  doesn't allow you to just override the setter
+         *  (you have to override the getter as well even
+         *  if it just calls the super getter) it is
+         *  more efficient to expose this variable than
+         *  have all of the layers of simple overrides.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public var _strand:IStrand;
+        
+        /**
+         *  Get the strand for this bead
+         * 
+         *  Override this for whatever else you need to do when
+         *  being hooked to the Strand
+         * 
+         *  @copy org.apache.flex.core.IBead#strand
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function set strand(value:IStrand):void
+		{
+            _strand = value;
+		}
+        
+        /**
+         *  The host component. 
+         * 
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public function get host():IUIBase
+        {
+            return _strand as IUIBase;
+        }
+   }
+}

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/a903508e/frameworks/projects/Core/src/main/flex/org/apache/flex/core/BindableCSSStyles.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/core/BindableCSSStyles.as b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/BindableCSSStyles.as
new file mode 100644
index 0000000..7137ade
--- /dev/null
+++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/core/BindableCSSStyles.as
@@ -0,0 +1,134 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT 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.core
+{
+	import org.apache.flex.events.Event;
+	import org.apache.flex.events.EventDispatcher;
+
+    /**
+     *  The BindableCSSStyles class contains CSS style
+     *  properties supported by SimpleCSSValuesImpl but
+     *  dispatch change events when modified
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.0
+     */
+	public class BindableCSSStyles extends EventDispatcher
+	{
+        /**
+         *  Constructor.
+         *  
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+		public function BindableCSSStyles()
+		{
+			super();
+		}
+		
+        public var styleList:Object = {
+            "top": 1,
+            "bottom": 1,
+            "left": 1,
+            "right": 1,
+            "padding": 1,
+            "paddingLeft": 1,
+            "paddingRight": 1,
+            "paddingTop": 1,
+            "paddingBottom": 1,
+            "margin": 1,
+            "marginLeft": 1,
+            "marginRight": 1,
+            "marginTop": 1,
+            "marginBottom": 1,
+            "verticalAlign": 1,
+            "fontFamily": 1,
+            "fontSize": 1,
+            "color": 1,
+            "fontWeight": 1,
+            "fontStyle": 1,
+            "backgroundAlpha": 1,
+            "backgroundColor": 1,
+            "backgroundImage": 1,
+            "borderColor": 1,
+            "borderStyle": 1,
+            "borderRadius": 1,
+            "borderWidth": 1
+        };
+		
+        [Bindable]
+        public var top:*;
+        [Bindable]
+        public var bottom:*;
+        [Bindable]
+        public var left:*;
+        [Bindable]
+        public var right:*;
+        [Bindable]
+        public var padding:*;
+        [Bindable]
+		public var paddingLeft:*;
+        [Bindable]
+        public var paddingRight:*;
+        [Bindable]
+        public var paddingTop:*;
+        [Bindable]
+        public var paddingBottom:*;
+        [Bindable]
+        public var margin:*;
+        [Bindable]
+        public var marginLeft:*;
+        [Bindable]
+        public var marginRight:*;
+        [Bindable]
+        public var marginTop:*;
+        [Bindable]
+        public var marginBottom:*;
+        [Bindable]
+        public var verticalAlign:*;
+        [Bindable]
+        public var fontFamily:*;
+        [Bindable]
+        public var fontSize:*;
+        [Bindable]
+        public var color:*;
+        [Bindable]
+        public var fontWeight:*;
+        [Bindable]
+        public var fontStyle:*;
+        [Bindable]
+        public var backgroundAlpha:*;
+        [Bindable]
+        public var backgroundColor:*;
+        [Bindable]
+        public var backgroundImage:*;
+        [Bindable]
+        public var borderColor:*;
+        [Bindable]
+        public var borderStyle:*;
+        [Bindable]
+        public var borderRadius:*;
+        [Bindable]
+        public var borderWidth:*;
+	}
+}