A base class that can be used
when implementing an object that uses the
IAdvancedStyleClient interface. The base class supplies
implementations of the methods and properties required for an object
to participate in the style subsystem.
In addition to the IAdvancedStyleClient interface,
this object also implements the IFlexModule and
IMXMLObject interfaces. The IMXMLObject
interface contains an initialized method that is called
when the class is instantiated using an MXML declaration.
The implementation of the initialized method provided
by this base class will add the class instance to the document object
that contains the MXML declaration. For more details, see the description
of the initilized method.
The beginning of this component's chain of non-inheriting styles.
The getStyle() method simply accesses
nonInheritingStyles[styleName] to search the entire
prototype-linked chain.
This object is set up by initProtoChain().
Developers typically never need to access this property directly.
Implementation public function get nonInheritingStyles():Object public function set nonInheritingStyles(value:Object):void
A component's parent is used to evaluate descendant selectors.
A parent must also be an IAdvancedStyleClient to participate in
advanced style declarations.
Deletes a style property from this component instance.
This does not necessarily cause the getStyle() method to return
undefined.
Parameters
styleProp:String — Name of the style property.
getClassStyleDeclarations
()
method
public function getClassStyleDeclarations():Array
Language Version :
ActionScript 3.0
Product Version :
Flex 4.5
Runtime Versions :
Flash Player 10, AIR 2.5
Returns an Array of CSSStyleDeclaration objects for the type selector
that applies to this component, or null if none exist.
For example, suppose that component MyButton extends Button.
This method first looks for a MyButton selector; then, it looks for a Button type selector;
finally, it looks for a UIComponent type selector.
Returns
Array — Array of CSSStyleDeclaration objects.
getStyle
()
method
public function getStyle(styleProp:String):*
Language Version :
ActionScript 3.0
Product Version :
Flex 4.5
Runtime Versions :
Flash Player 10, AIR 2.5
Gets a style property that has been set anywhere in this
component's style lookup chain.
This same method is used to get any kind of style property,
so the value returned may be a Boolean, String, Number, int,
uint (for an RGB color), Class (for a skin), or any kind of object.
Therefore the return type is specified as *.
If you are getting a particular style property, you will
know its type and will often want to store the result in a
variable of that type. You can use either the as
operator or coercion to do this. For example:
var backgroundColor:uint = getStyle("backgroundColor") as int;
or
var backgroundColor:uint = int(getStyle("backgroundColor"));
If the style property has not been set anywhere in the
style lookup chain, the value returned by the getStyle() method
is undefined.
Note that undefined is a special value that is
not the same as false, the empty String (""),
NaN, 0, or null.
No valid style value is ever undefined.
You can use the static method
StyleManager.isValidStyleValue()
to test whether the value was set.
Parameters
styleProp:String — Name of the style property.
Returns
* — Style value.
hasCSSState
()
method
public function hasCSSState():Boolean
Language Version :
ActionScript 3.0
Product Version :
Flex 4.6
Runtime Versions :
Flash Player 10, AIR 2.5
Returns true if currentCSSState is not null.
Typically, you do not call this method directly.
It is called by the mx.styles.CSSCondition.matchesStyleClient() method.
Note Spark components use their skin state as the pseudo state.
Halo components use the currentState property.
Returns
Boolean — true if currentCSSState is not null.
By default, currentCSSState is the same as currentState.
If no state exists, return false.
initialized
()
method
public function initialized(document:Object, id:String):void
Language Version :
ActionScript 3.0
Product Version :
Flex 4.5
Runtime Versions :
Flash Player 10, AIR 2.5
The initialized method is called when this class or a class that
extends this class is used in an MXML declaration.
It is called after the implementing object has been created and all
component properties specified on the MXML tag have
been initialized.
If the document that created this object is a UIComponent,
(e.g. Application, Module, etc.) then the UIComponent's
addStyleClient method will be called to add this object to the
UIComponent's list of non-visual style clients. This allows the
object to inherit styles from the document.
Parameters
document:Object — The MXML document that created this object.
id:String — The identifier used by the document object to refer to
this object.
matchesCSSState
()
method
public function matchesCSSState(cssState:String):Boolean
Language Version :
ActionScript 3.0
Product Version :
Flex 4.5
Runtime Versions :
Flash Player 10, AIR 2.5
Returns true if cssState matches currentCSSState.
Typically, you do not call this method directly.
It is called by the mx.styles.CSSCondition.matchesStyleClient() method.
Note Spark components use their skin state as the pseudo state.
Halo components use the currentState property.
Parameters
cssState:String — A possible value of CSSCondition.value.
It represents the current state of this component used to match CSS pseudo-selectors.
Returns
Boolean — true if cssState matches currentCSSState.
By default, currentCSSState is the same as currentState.
If no state exists, return null.
matchesCSSType
()
method
public function matchesCSSType(cssType:String):Boolean
Language Version :
ActionScript 3.0
Product Version :
Flex 4.5
Runtime Versions :
Flash Player 10, AIR 2.5
Determines whether this instance is the same as, or is a subclass of,
the given type.
Typically, you do not call this method directly.
It is called by the mx.styles.CSSCondition.matchesStyleClient() method.
Parameters
cssType:String — A CSSSelector object.
Returns
Boolean — true if cssType is in the hierarchy of qualified type selectors.
notifyStyleChangeInChildren
()
method
public function notifyStyleChangeInChildren(styleProp:String, recursive:Boolean):void
Language Version :
ActionScript 3.0
Product Version :
Flex 4.5
Runtime Versions :
Flash Player 10, AIR 2.5
Propagates style changes to the children of this style client
instance. A non-visual style client (i.e. a style client that is
not a DisplayObject) does not have children, therefore this method
does not do anything for non-visual style clients.
Parameters
styleProp:String — Name of the style property.
recursive:Boolean — Whether to propagate the style changes to the
children's children.
regenerateStyleCache
()
method
public function regenerateStyleCache(recursive:Boolean):void
Language Version :
ActionScript 3.0
Product Version :
Flex 4.5
Runtime Versions :
Flash Player 10, AIR 2.5
Sets up the internal style cache values so that the
getStyle()
method functions.
Parameters
recursive:Boolean — Regenerate the proto chains of the children.
registerEffects
()
method
public function registerEffects(effects:Array):void
Language Version :
ActionScript 3.0
Product Version :
Flex 4.5
Runtime Versions :
Flash Player 10, AIR 2.5
Registers the EffectManager as one of the event listeners
for each effect event.
Parameters
effects:Array — An Array of Strings of effect names.
setDeferredStyles
()
method
protected function setDeferredStyles():void
setStyle
()
method
public function setStyle(styleProp:String, newValue:*):void
Language Version :
ActionScript 3.0
Product Version :
Flex 4.5
Runtime Versions :
Flash Player 10, AIR 2.5
Sets a style property on this component instance.
This may override a style that was set globally.
Calling the setStyle() method can result in decreased performance.
Use it only when necessary.
Parameters
styleProp:String — Name of the style property.
newValue:* — New value for the style.
styleChanged
()
method
public function styleChanged(styleProp:String):void
Language Version :
ActionScript 3.0
Product Version :
Flex 4.5
Runtime Versions :
Flash Player 10, AIR 2.5
Detects changes to style properties. When any style property is set,
Flex calls the styleChanged() method,
passing to it the name of the style being set.
This is an advanced method that you might override
when creating a subclass of AdvancedStyleClient.
When you create a custom class,
you can override the styleChanged() method
to check the style name passed to it, and handle the change
accordingly.
This lets you override the default behavior of an existing style,
or add your own custom style properties.
Parameters
styleProp:String — The name of the style property, or null if all
styles for this
style client have changed.
stylesInitialized
()
method
public function stylesInitialized():void
Language Version :
ActionScript 3.0
Product Version :
Flex 4.5
Runtime Versions :
Flash Player 10, AIR 2.5
Flex calls the stylesInitialized() method when
the styles for a component are first initialized.