0 Replies Latest reply on Feb 20, 2009 12:27 PM by Peter Farland

    [svn:fx-trunk] 5026: Changing pseudo-selector matching by allowing an object to decide whether its state matches a pseudo-selector .

    Peter Farland Level 3
      Revision: 5026
      Author: pfarland@adobe.com
      Date: 2009-02-20 12:27:07 -0800 (Fri, 20 Feb 2009)

      Log Message:
      -----------
      Changing pseudo-selector matching by allowing an object to decide whether its state matches a pseudo-selector. This allows top level components like FxApplication to decide whether a pseudo-selector matches its document state OR its skin state.

      Also modified StyleManager data structure to allow multiple identical selectors to exist per subject while retaining declaration order. This allows programmatic addition of CSSStyleDeclaration's with identical selectors.

      Finally, added preparation for qualified vs unqualified class names in type selectors. This is not yet enabled.

      QA: Yes, please retest SDK-19127
      Doc: Not yet.
      Checkintests: Pass
      mustella: AdvancedCSS, and other component style testsuites such as Button and MenuBar passed.
      Review: Discussed pseudo-selector approach with Glenn. Other API changes will be part of final PARB review.
      Bugs:
      SDK-19127 - [Advanced CSS] Pseudo Selectors do not work when you change the "currentState" property of an FxApplication.

      Ticket Links:
      ------------
      http://bugs.adobe.com/jira/browse/SDK-19127
      http://bugs.adobe.com/jira/browse/SDK-19127

      Modified Paths:
      --------------
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxComponent.as
      flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/baseClasses/TextGraphicElement.a s
      flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as
      flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSCondition.as
      flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSSelector.as
      flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSStyleDeclaration.as
      flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/IAdvancedStyleClient.as
      flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/IStyleManager3.as
      flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManager.as
      flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManagerImpl.as
      flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProtoChain.as
      flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProxy.as