0 Replies Latest reply on Jan 5, 2009 12:03 PM by (Paul_Reilly)

    [svn] 4393: * More SWF size reduction work:

    Level 1
      Revision: 4393
      Author: preilly@adobe.com
      Date: 2009-01-05 12:03:46 -0800 (Mon, 05 Jan 2009)

      Log Message:
      -----------
      * More SWF size reduction work:

      * WatcherSetupUtil classes are no longer mixins. This should remove
      some String's from the generated *FlexInit class and reduce frame
      1 pressure by deferring the creation of the *WatcherSetupUtil
      classes until an instance of a Mxml component is created. Thanks
      to Alex for reporting this problem.

      * The code generated for styles defaults is now combined into a
      single helper classes. This should also reduce the number of
      String's in *FlexInit.

      tests Passed: checkintests, mxunit databinding

      Needs QA: YES

      Needs DOC: NO

      API Change: NO

      Reviewer: Pete F.

      Code-level description of changes:

      compiler/as3/binding/DataBindingExtension.java

      Removed MIXIN constant and modified generateWatcherSetupUtilAST()
      to no longer generate the Mixin metadata.

      compiler/as3/binding/WatcherSetupUtil.vm

      Removed the [Mixin] metadata from the template.

      compiler/css/StyleDef.vm

      Modified the template to iterate over a set of StyleDef objects
      instead of handling a single StyleDef object.

      compiler/css/StylesContainer.java

      Modified processDependencies() to collect up all the dependent
      StyleDef's and AtEmbed's, then invoke generateStyleSource(), which
      uses StyleDef.vm, once.

      tools/PreLink.java

      Modified processMainUnit() to pass the main unit's name into
      processDependencies().

      Modified Paths:
      --------------
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/binding/DataBindingExtension. java
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/binding/WatcherSetupUtil.vm
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StyleDef.vm
      flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StylesContainer.java
      flex/sdk/trunk/modules/compiler/src/java/flex2/tools/PreLink.java