0 Replies Latest reply on Jan 20, 2009 1:11 PM by Jason Szeto

    [svn] 4600: Flex SDK - Move style metadata from base class down to component classes

    Jason Szeto Level 3
      Revision: 4600
      Author: jszeto@adobe.com
      Date: 2009-01-20 13:11:33 -0800 (Tue, 20 Jan 2009)

      Log Message:
      -----------
      Flex SDK - Move style metadata from base class down to component classes

      Previously, all spark and text styles were defined on FxComponent even though not every component supports all of those styles. So I have moved each style to the top-most base class where the style will apply to all descendant classes of that base class.

      This is the set of styles that were added to the various classes:

      baseColor
      color
      focusColor
      symbolColor
      selectionColor
      contentBackgroundColor
      rollOverColor
      alternatingItemColors
      basic text styles
      advanced text styles

      Here are some details about the implementation:
      - baseColor was added to FxComponent because every component and container supports it
      - FxContainer and GroupBase are containers, so their children can potentially support any of the styles. Thus the container classes support all of the styles indirectly.
      - FxDataContainer doesn't support all of the styles because its subclasses (FxButtonBar, FxList) don't support all styles.
      - FxList supports selectionColor, but not inactiveSelectionColor or unfocusedSelectionColor. All other components that support selectionColor, support the other two styles, and thus include styles/metadata/SelectionFormatTextStyles.as
      - GroupBase contains the style declarations that have the full ASDoc. All other declarations use the @copy keyword to reference the asdoc from GroupBase.

      QE Notes: Update tests to remove references to styles that are no longer allowed on various components/FxButton.as
      Doc Notes: Write the ASDoc comments for the style declarations in GroupBase
      Bugs: n/a
      Reviewer: Glenn

      Modified Paths:
      --------------
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButton.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxCheckBox.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxContainer.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxDataContainer.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxList.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxNumericStepper.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxRadioButton.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxScroller.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxSpinner.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxTextArea.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxComponent.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxScrollBar.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxSlider.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxTextBase.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as