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/03/28 19:52:21 UTC
[1/3] git commit: [flex-asjs] [refs/heads/spark] - test app
Repository: flex-asjs
Updated Branches:
refs/heads/spark b173bdce0 -> ad95c1e80
test app
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/463fae8b
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/463fae8b
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/463fae8b
Branch: refs/heads/spark
Commit: 463fae8bc74690f2010aa7587e40133e2bbfa2ae
Parents: b173bdc
Author: Alex Harui <ah...@apache.org>
Authored: Mon Mar 28 10:35:54 2016 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Mar 28 10:35:54 2016 -0700
----------------------------------------------------------------------
frameworks/projects/MX/src/test/flex/build.xml | 229 +++++++++++++++++++
.../MX/src/test/flex/src/TestCompile.mxml | 44 ++++
2 files changed, 273 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/463fae8b/frameworks/projects/MX/src/test/flex/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/MX/src/test/flex/build.xml b/frameworks/projects/MX/src/test/flex/build.xml
new file mode 100644
index 0000000..7395390
--- /dev/null
+++ b/frameworks/projects/MX/src/test/flex/build.xml
@@ -0,0 +1,229 @@
+<?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="MX.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}"/>
+ <property name="target.name" value="MX-${release.version}.swc" />
+
+ <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" />
+
+ <condition property="GOOG_HOME" value="${env.GOOG_HOME}">
+ <and>
+ <not>
+ <isset property="GOOG_HOME" />
+ </not>
+ <available file="${env.GOOG_HOME}/closure/goog/base.js" type="file" />
+ </and>
+ </condition>
+
+ <condition property="GOOG_HOME" value="${FLEXJS_HOME}/js/lib/google/closure-library">
+ <and>
+ <not>
+ <isset property="GOOG_HOME" />
+ </not>
+ <available file="${FLEXJS_HOME}/js/lib/google/closure-library/closure/goog/base.js" type="file" />
+ </and>
+ </condition>
+
+
+ <target name="main" depends="clean,compile,test" description="Clean test of ${target.name}">
+ </target>
+
+ <target name="clean">
+ <delete failonerror="false">
+ <fileset dir="${basedir}">
+ <include name="FlexUnitFlexJSApplication.swf"/>
+ </fileset>
+ </delete>
+ <delete failonerror="false">
+ <fileset dir="${basedir}/bin">
+ <include name="**/**"/>
+ </fileset>
+ </delete>
+ </target>
+
+ <path id="lib.path">
+ <fileset dir="${FALCON_HOME}/lib" includes="falcon-flexTasks.jar"/>
+ </path>
+
+ <target name="compile" description="Compiles TestCompile.swf">
+ <echo message="Compiling TestCompile.swf"/>
+ <echo message="FLEXJS_HOME: ${FLEXJS_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}/src/TestCompile.mxml"
+ output="${basedir}/src/TestCompile.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="-define=COMPILE::LATER,false" />
+ <arg value="-define=CONFIG::performanceInstrumentation,false" />
+ <arg value="+playerglobal.version=${playerglobal.version}" />
+ <arg value="+env.PLAYERGLOBAL_HOME=${env.PLAYERGLOBAL_HOME}" />
+ <arg value="-source-path+=${FLEXJS_HOME}/frameworks/projects/MX/src/main/flex" />
+ <arg value="-library-path+=${FLEXJS_HOME}/frameworks/libs" />
+ <!-- need to figure out better way to find these -->
+ <arg value="-library-path+=${FLEXJS_HOME}/../flex-sdk/frameworks/locale/en_US" />
+ <arg value="${FLEXUNIT_LIBPATH1}" />
+ <arg value="${FLEXUNIT_LIBPATH2}" />
+ </mxmlc>
+ </target>
+
+ <target name="test">
+ <echo message="Compiling TestCompile.js"/>
+ <echo message="FLEXJS_HOME: ${FLEXJS_HOME}"/>
+ <echo message="FALCONJX_HOME: ${FALCONJX_HOME}"/>
+ <echo message="GOOG_HOME: ${GOOG_HOME}"/>
+ <property name="theme_arg" value="-define=CONFIG::theme,false" />
+ <property name="extlib_arg" value="-define=CONFIG::extlib,false" />
+ <property name="opt1_arg" value="-define=CONFIG::opt1,false" />
+ <property name="opt2_arg" value="-define=CONFIG::opt2,false" />
+
+ <java jar="${FALCONJX_HOME}/lib/mxmlc.jar" resultProperty="errorCode"
+ fork="true">
+ <jvmarg line="${mxmlc.jvm.args}"/>
+ <jvmarg line="-Dflexlib=${FLEXJS_HOME}/frameworks}"/>
+ <arg value="+flexlib=${FLEXJS_HOME}/frameworks" />
+ <arg value="-debug" />
+ <arg value="${theme_arg}" />
+ <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="${extlib_arg}" />
+ <arg value="${opt1_arg}" />
+ <arg value="${opt2_arg}" />
+ <arg value="-library-path+=${FLEXJS_HOME}/frameworks/libs" />
+ <!-- need to figure out better way to find these -->
+ <arg value="-external-library-path+=${FLEXJS_HOME}/../flex-sdk/frameworks/locale/en_US" />
+ <arg value="-closure-lib=${GOOG_HOME}" />
+ <arg value="-js-output-type=FLEXJS" />
+ <arg value="-sdk-js-lib=${FLEXJS_HOME}/frameworks/js/FlexJS/libs" />
+ <arg value="${basedir}/src/TestCompile.mxml" />
+ </java>
+ <fail>
+ <condition>
+ <not>
+ <or>
+ <equals arg1="${errorCode}" arg2="0" />
+ <equals arg1="${errorCode}" arg2="2" />
+ </or>
+ </not>
+ </condition>
+ </fail>
+ <!--
+ <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/src/main/flex" />
+ <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/463fae8b/frameworks/projects/MX/src/test/flex/src/TestCompile.mxml
----------------------------------------------------------------------
diff --git a/frameworks/projects/MX/src/test/flex/src/TestCompile.mxml b/frameworks/projects/MX/src/test/flex/src/TestCompile.mxml
new file mode 100644
index 0000000..6601e6c
--- /dev/null
+++ b/frameworks/projects/MX/src/test/flex/src/TestCompile.mxml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License. You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+
+<js:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
+ xmlns:mx="library://ns.apache.org/flexjs/mx"
+ xmlns:js="library://ns.apache.org/flexjs/basic"
+ applicationComplete="runTests()"
+ >
+ <fx:Script>
+ <![CDATA[
+ import org.apache.flex.core.IUIBase;
+ public function runTests() : void
+ {
+ var foo:Object = this as IUIBase;
+ }
+
+ ]]>
+ </fx:Script>
+ <js:valuesImpl>
+ <js:SimpleValuesImpl />
+ </js:valuesImpl>
+ <js:initialView>
+ <js:ViewBase>
+ <mx:UIComponent />
+ </js:ViewBase>
+ </js:initialView>
+</js:Application>
[3/3] git commit: [flex-asjs] [refs/heads/spark] - integrate MX into
build
Posted by ah...@apache.org.
integrate MX into build
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/ad95c1e8
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/ad95c1e8
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/ad95c1e8
Branch: refs/heads/spark
Commit: ad95c1e809dc51a9b5be4c2902b93fd324405881
Parents: 3b3b837
Author: Alex Harui <ah...@apache.org>
Authored: Mon Mar 28 10:52:11 2016 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Mar 28 10:52:11 2016 -0700
----------------------------------------------------------------------
frameworks/build.xml | 6 ++++++
frameworks/flex-config-template.xml | 6 ++++++
frameworks/flex-config.xml | 6 ++++++
3 files changed, 18 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ad95c1e8/frameworks/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/build.xml b/frameworks/build.xml
index 8ba8f75..6afcd29 100644
--- a/frameworks/build.xml
+++ b/frameworks/build.xml
@@ -94,6 +94,7 @@
<antcall target="Network"/>
<antcall target="Reflection"/>
<antcall target="Storage"/>
+ <antcall target="MX"/>
</target>
<target name="fonts">
@@ -135,6 +136,7 @@
<ant dir="${basedir}/projects/HTML5" target="clean"/>
<ant dir="${basedir}/projects/JQuery" target="clean"/>
<ant dir="${basedir}/projects/Mobile" target="clean"/>
+ <ant dir="${basedir}/projects/MX" target="clean"/>
<ant dir="${basedir}/projects/Network" target="clean"/>
<ant dir="${basedir}/projects/Reflection" target="clean"/>
<ant dir="${basedir}/projects/Storage" target="clean"/>
@@ -218,6 +220,10 @@
<ant dir="${basedir}/projects/Mobile"/>
</target>
+ <target name="MX" description="Clean build of MX">
+ <ant dir="${basedir}/projects/MX"/>
+ </target>
+
<target name="Network" description="Clean build of Network.swc">
<ant dir="${basedir}/projects/Network"/>
</target>
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ad95c1e8/frameworks/flex-config-template.xml
----------------------------------------------------------------------
diff --git a/frameworks/flex-config-template.xml b/frameworks/flex-config-template.xml
index 8b8b0ba..4087162 100644
--- a/frameworks/flex-config-template.xml
+++ b/frameworks/flex-config-template.xml
@@ -208,6 +208,12 @@
<manifest>projects/CreateJS/src/main/resources/createjs-manifest.xml</manifest>
</namespace>
+ <namespace>
+ <uri>library://ns.apache.org/flexjs/mx</uri>
+
+ <manifest>projects/MX/src/main/resources/mx-manifest.xml</manifest>
+
+ </namespace>
</namespaces>
<!-- Enable post-link SWF optimization. -->
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/ad95c1e8/frameworks/flex-config.xml
----------------------------------------------------------------------
diff --git a/frameworks/flex-config.xml b/frameworks/flex-config.xml
index 97cddd8..8a810d1 100644
--- a/frameworks/flex-config.xml
+++ b/frameworks/flex-config.xml
@@ -208,6 +208,12 @@
<manifest>projects/CreateJS/src/main/resources/createjs-manifest.xml</manifest>
</namespace>
+ <namespace>
+ <uri>library://ns.apache.org/flexjs/mx</uri>
+
+ <manifest>projects/MX/src/main/resources/mx-manifest.xml</manifest>
+
+ </namespace>
</namespaces>
<!-- Enable post-link SWF optimization. -->
[2/3] git commit: [flex-asjs] [refs/heads/spark] - 0 errors in GCC
(some warnings though)
Posted by ah...@apache.org.
0 errors in GCC (some warnings though)
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/3b3b8374
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/3b3b8374
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/3b3b8374
Branch: refs/heads/spark
Commit: 3b3b8374ef9a1356a3f9ba738f957b3e9c3ac8ed
Parents: 463fae8
Author: Alex Harui <ah...@apache.org>
Authored: Mon Mar 28 10:37:03 2016 -0700
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Mar 28 10:37:03 2016 -0700
----------------------------------------------------------------------
frameworks/projects/MX/build.xml | 2 -
.../src/main/flex/mx/core/UIComponentGlobals.as | 74 ++++++++++++++++++++
.../src/main/flex/mx/effects/EffectManager.as | 30 ++++----
.../main/flex/mx/styles/CSSStyleDeclaration.as | 2 +-
.../src/main/flex/mx/styles/StyleProtoChain.as | 5 +-
.../flex/mx/utils/DescribeTypeCacheRecord.as | 1 +
.../MX/src/main/flex/mx/utils/ObjectUtil.as | 8 ++-
.../MX/src/main/resources/mx-manifest.xml | 1 +
8 files changed, 106 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3b3b8374/frameworks/projects/MX/build.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/MX/build.xml b/frameworks/projects/MX/build.xml
index 04521f7..003b7ee 100644
--- a/frameworks/projects/MX/build.xml
+++ b/frameworks/projects/MX/build.xml
@@ -37,9 +37,7 @@
</target>
<target name="test" unless="is.jenkins">
- <!-- no tests yet
<ant dir="src/test/flex"/>
- -->
</target>
<target name="test-js" unless="is.jenkins">
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3b3b8374/frameworks/projects/MX/src/main/flex/mx/core/UIComponentGlobals.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MX/src/main/flex/mx/core/UIComponentGlobals.as b/frameworks/projects/MX/src/main/flex/mx/core/UIComponentGlobals.as
index 45d62ed..5acc825 100644
--- a/frameworks/projects/MX/src/main/flex/mx/core/UIComponentGlobals.as
+++ b/frameworks/projects/MX/src/main/flex/mx/core/UIComponentGlobals.as
@@ -33,6 +33,8 @@ COMPILE::LATER
import flash.geom.Matrix;
}
import mx.managers.ILayoutManager;
+import mx.managers.SystemManagerGlobals;
+import mx.managers.ISystemManager;
use namespace mx_internal;
@@ -155,6 +157,78 @@ public class UIComponentGlobals
{
_catchCallLaterExceptions = value;
}
+
+ /**
+ * Blocks the background processing of methods
+ * queued by <code>callLater()</code>,
+ * until <code>resumeBackgroundProcessing()</code> is called.
+ *
+ * <p>These methods can be useful when you have time-critical code
+ * which needs to execute without interruption.
+ * For example, when you set the <code>suspendBackgroundProcessing</code>
+ * property of an Effect to <code>true</code>,
+ * <code>suspendBackgroundProcessing()</code> is automatically called
+ * when it starts playing, and <code>resumeBackgroundProcessing</code>
+ * is called when it stops, in order to ensure that the animation
+ * is smooth.</p>
+ *
+ * <p>Since the LayoutManager uses <code>callLater()</code>,
+ * this means that <code>commitProperties()</code>,
+ * <code>measure()</code>, and <code>updateDisplayList()</code>
+ * is not called in between calls to
+ * <code>suspendBackgroundProcessing()</code> and
+ * <code>resumeBackgroundProcessing()</code>.</p>
+ *
+ * <p>It is safe for both an outer method and an inner method
+ * (i.e., one that the outer methods calls) to call
+ * <code>suspendBackgroundProcessing()</code>
+ * and <code>resumeBackgroundProcessing()</code>, because these
+ * methods actually increment and decrement a counter
+ * which determines whether background processing occurs.</p>
+ *
+ * @langversion 3.0
+ * @playerversion Flash 9
+ * @playerversion AIR 1.1
+ * @productversion Flex 3
+ */
+ public static function suspendBackgroundProcessing():void
+ {
+ UIComponentGlobals.callLaterSuspendCount++;
+ }
+
+ /**
+ * Resumes the background processing of methods
+ * queued by <code>callLater()</code>, after a call to
+ * <code>suspendBackgroundProcessing()</code>.
+ *
+ * <p>Refer to the description of
+ * <code>suspendBackgroundProcessing()</code> for more information.</p>
+ *
+ * @langversion 3.0
+ * @playerversion Flash 9
+ * @playerversion AIR 1.1
+ * @productversion Flex 3
+ */
+ public static function resumeBackgroundProcessing():void
+ {
+ if (UIComponentGlobals.callLaterSuspendCount > 0)
+ {
+ UIComponentGlobals.callLaterSuspendCount--;
+
+ // Once the suspend count gets back to 0, we need to
+ // force a render event to happen
+ if (UIComponentGlobals.callLaterSuspendCount == 0)
+ {
+ var sm:ISystemManager = SystemManagerGlobals.topLevelSystemManagers[0];
+ COMPILE::AS3
+ {
+ if (sm && sm.topOfDisplayList)
+ sm.topOfDisplayList.invalidate();
+ }
+ }
+ }
+ }
+
}
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3b3b8374/frameworks/projects/MX/src/main/flex/mx/effects/EffectManager.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MX/src/main/flex/mx/effects/EffectManager.as b/frameworks/projects/MX/src/main/flex/mx/effects/EffectManager.as
index 0cf1b66..8add486 100644
--- a/frameworks/projects/MX/src/main/flex/mx/effects/EffectManager.as
+++ b/frameworks/projects/MX/src/main/flex/mx/effects/EffectManager.as
@@ -47,6 +47,7 @@ import mx.core.IDeferredInstantiationUIComponent;
import mx.core.IFlexDisplayObject;
import mx.core.IUIComponent;
import mx.core.UIComponent;
+import mx.core.UIComponentGlobals;
import mx.core.mx_internal;
import mx.events.EffectEvent;
import mx.events.FlexEvent;
@@ -72,6 +73,7 @@ use namespace mx_internal;
* @playerversion Flash 9
* @playerversion AIR 1.1
* @productversion Flex 3
+ * @flexjsignoreimport mx.core.UIComponent
*/
public class EffectManager extends EventDispatcher
{
@@ -314,7 +316,7 @@ public class EffectManager extends EventDispatcher
}
var effectClass:Class;
- if (target is UIComponent && target.moduleFactory)
+ if (target is IUIComponent && target.moduleFactory)
{
COMPILE::LATER
{
@@ -604,6 +606,7 @@ public class EffectManager extends EventDispatcher
/**
* @private
+ * @flexjsignorecoercion mx.core.UIComponent
*/
mx_internal static function eventHandler(eventObj:Event):void
{
@@ -635,18 +638,19 @@ public class EffectManager extends EventDispatcher
if (eventObj.type == UIBase.CHILD_REMOVED)
{
- if (eventObj.target is UIComponent)
+ var uic:UIComponent = eventObj.target as UIComponent;
+ if (uic)
{
- if (UIComponent(eventObj.target).initialized == false)
+ if (uic.initialized == false)
{
return;
}
- else if (UIComponent(eventObj.target).isEffectStarted)
+ else if (uic.isEffectStarted)
{
- for (var i:int = 0; i < UIComponent(eventObj.target)._effectsStarted.length; i++)
+ for (var i:int = 0; i < uic._effectsStarted.length; i++)
{
// Don't allow removedEffect to trigger more than one effect at a time
- if (UIComponent(eventObj.target)._effectsStarted[i].triggerEvent.type == UIBase.CHILD_REMOVED)
+ if (uic._effectsStarted[i].triggerEvent.type == UIBase.CHILD_REMOVED)
return;
}
}
@@ -663,12 +667,12 @@ public class EffectManager extends EventDispatcher
var index:int = parent.getChildIndex(targ);
if (index >= 0)
{
- if (targ is UIComponent)
+ if (uic)
{
// Since we get the "removed" event before the child is actually removed,
// we need to delay adding back the child. We must exit the current
// script block must exit before the child can be removed.
- UIComponent(targ).callLater(removedEffectHandler, [targ, parent, index, eventObj]);
+ uic.callLater(removedEffectHandler, [targ, parent, index, eventObj]);
}
}
}
@@ -682,6 +686,7 @@ public class EffectManager extends EventDispatcher
/**
* @private
+ * @flexjsignorecoercion mx.core.UIComponent
*/
private static function createAndPlayEffect(eventObj:Event, target:Object):void
{
@@ -757,8 +762,9 @@ public class EffectManager extends EventDispatcher
// previously animating the same properties of my target object,
// then finish the other effect before starting this new one.
//
- if (effectInst.target is UIComponent &&
- UIComponent(effectInst.target).isEffectStarted)
+ var uic:UIComponent = effectInst.target as UIComponent;
+ if (uic &&
+ uic.isEffectStarted)
{
var affectedProps:Array = effectInst.getAffectedProperties();
for (i = 0; i < affectedProps.length; i++)
@@ -834,7 +840,7 @@ public class EffectManager extends EventDispatcher
// Block all layout, responses from web services, and other background
// processing until the effect finishes executing.
if (effectInst.suspendBackgroundProcessing)
- UIComponent.suspendBackgroundProcessing();
+ UIComponentGlobals.suspendBackgroundProcessing();
}
/**
@@ -908,7 +914,7 @@ public class EffectManager extends EventDispatcher
// Resume the background processing that was suspended earlier
if (effectInst.suspendBackgroundProcessing)
- UIComponent.resumeBackgroundProcessing();
+ UIComponentGlobals.resumeBackgroundProcessing();
}
//--------------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3b3b8374/frameworks/projects/MX/src/main/flex/mx/styles/CSSStyleDeclaration.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MX/src/main/flex/mx/styles/CSSStyleDeclaration.as b/frameworks/projects/MX/src/main/flex/mx/styles/CSSStyleDeclaration.as
index ada63a8..62e360c 100644
--- a/frameworks/projects/MX/src/main/flex/mx/styles/CSSStyleDeclaration.as
+++ b/frameworks/projects/MX/src/main/flex/mx/styles/CSSStyleDeclaration.as
@@ -829,7 +829,7 @@ public class CSSStyleDeclaration extends EventDispatcher
*/
public function clearStyle(styleProp:String):void
{
- public::setStyle(styleProp, undefined);
+ setStyle(styleProp, undefined);
}
/**
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3b3b8374/frameworks/projects/MX/src/main/flex/mx/styles/StyleProtoChain.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MX/src/main/flex/mx/styles/StyleProtoChain.as b/frameworks/projects/MX/src/main/flex/mx/styles/StyleProtoChain.as
index ed7db75..342e7ca 100644
--- a/frameworks/projects/MX/src/main/flex/mx/styles/StyleProtoChain.as
+++ b/frameworks/projects/MX/src/main/flex/mx/styles/StyleProtoChain.as
@@ -49,6 +49,7 @@ import mx.core.IFontContextComponent;
import mx.core.IInvalidating;
import mx.core.IUITextField;
import mx.core.IVisualElement;
+import mx.core.IUIComponent;
import mx.core.UIComponent;
import mx.core.mx_internal;
import mx.utils.NameUtil;
@@ -64,6 +65,7 @@ use namespace object_proxy;
* @private
* This is an all-static class with methods for building the protochains
* that Flex uses to look up CSS style properties.
+ * @flexjsignoreimport mx.core.UIComponent
*/
public class StyleProtoChain
{
@@ -162,6 +164,7 @@ public class StyleProtoChain
* @private
* Implements the initProtoChain() logic for UIComponent and TextBase.
* The 'object' parameter will be one or the other.
+ * @flexjsignorecoercion mx.core.UIComponent
*/
public static function initProtoChain(object:IStyleClient, inheritPopUpStylesFromOwner:Boolean=true):void
{
@@ -778,7 +781,7 @@ public class StyleProtoChain
styleProp == "styleName" ||
styleProp == "themeColor")
{
- if (object is UIComponent)
+ if (object is IUIComponent)
object["initThemeColor"]();
}
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3b3b8374/frameworks/projects/MX/src/main/flex/mx/utils/DescribeTypeCacheRecord.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MX/src/main/flex/mx/utils/DescribeTypeCacheRecord.as b/frameworks/projects/MX/src/main/flex/mx/utils/DescribeTypeCacheRecord.as
index dc8f00f..5572500 100644
--- a/frameworks/projects/MX/src/main/flex/mx/utils/DescribeTypeCacheRecord.as
+++ b/frameworks/projects/MX/src/main/flex/mx/utils/DescribeTypeCacheRecord.as
@@ -35,6 +35,7 @@ use namespace flash_proxy;
* This class represents a single cache entry, this gets created
* as part of the <code>describeType</code> method call on the
* <code>DescribeTypeCache</code> class.
+ * @flexjsignoreimport mx.utils.DescribeTypeCache
*/
public dynamic class DescribeTypeCacheRecord extends Proxy
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3b3b8374/frameworks/projects/MX/src/main/flex/mx/utils/ObjectUtil.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/MX/src/main/flex/mx/utils/ObjectUtil.as b/frameworks/projects/MX/src/main/flex/mx/utils/ObjectUtil.as
index d210ab0..b38d635 100644
--- a/frameworks/projects/MX/src/main/flex/mx/utils/ObjectUtil.as
+++ b/frameworks/projects/MX/src/main/flex/mx/utils/ObjectUtil.as
@@ -793,11 +793,14 @@ public class ObjectUtil
if (b == null)
return -1;
+ COMPILE::LATER
+ {
if (a is ObjectProxy)
a = ObjectProxy(a).object_proxy::object;
if (b is ObjectProxy)
b = ObjectProxy(b).object_proxy::object;
+ }
var typeOfA:String = typeof(a);
var typeOfB:String = typeof(b);
@@ -1003,9 +1006,12 @@ public class ObjectUtil
var n:int;
var i:int;
+ COMPILE::LATER
+ {
if (obj is ObjectProxy)
obj = ObjectProxy(obj).object_proxy::object;
-
+ }
+
if (options == null)
options = { includeReadOnly: true, uris: null, includeTransient: true };
http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/3b3b8374/frameworks/projects/MX/src/main/resources/mx-manifest.xml
----------------------------------------------------------------------
diff --git a/frameworks/projects/MX/src/main/resources/mx-manifest.xml b/frameworks/projects/MX/src/main/resources/mx-manifest.xml
index a1c9fd5..21e0e8b 100644
--- a/frameworks/projects/MX/src/main/resources/mx-manifest.xml
+++ b/frameworks/projects/MX/src/main/resources/mx-manifest.xml
@@ -22,5 +22,6 @@
<componentPackage>
<!--<component id="Button" class="org.apache.flex.html.Button"/>-->
+ <component id="UIComponent" class="mx.core.UIComponent"/>
</componentPackage>