WidgetStack Class
+ + + + +Widget extension, which can be used to add stackable (z-index) support to the +base Widget class along with a shimming solution, through the +Base.build method.
+-
+
- Index + + +
- Methods + + +
- Properties + + +
- Attributes + + +
Item Index
+ + +Methods
+ +-
+
+
- + _addShimResizeHandlers + + + + + +
- + _afterShimChange + + + + + +
- + _afterZIndexChange + + + + + +
- + _bindUIStack + + + + + +
- + _destroyShim + + + + + +
- + _detachStackHandles + + + + + +
- + _getShimTemplate + + + + + +
- + _parseZIndex + + + + + +
- + _renderShim + + + + + +
- + _renderShimDeferred + + + + + +
- + _renderUIStack + + + + + +
- + _setZIndex + + + + + +
- + _syncUIStack + + + + + +
- + _uiSetShim + + + + + +
- + _uiSetZIndex + + + + + +
- + sizeShim + + + + + +
Properties
+ +-
+
+
- + ATTRS + + + static + + + + +
- + HTML_PARSER + + + static + + + + +
- + SHIM_CLASS_NAME + + + static + + + + +
- + SHIM_TEMPLATE + + + static + + + + +
- + STACKED_CLASS_NAME + + + static + + + + +
Methods
+ + +_addShimResizeHandlers
+
+
+ ()
+
+
+
+
+
+
+
+ private
+
+
+
+
+
+
+
+
+
+
+
+
+ Sets up event listeners to resize the shim when the size of the Widget changes.
+ ++NOTE: This method is only used for IE6 currently, since IE6 doesn't support a way to +resize the shim purely through CSS, when the Widget does not have an explicit width/height +set. +
+_afterShimChange
+
+
+ -
+
+
-
+
+
e+ +
+
+
Default attribute change listener for the shim attribute, responsible +for updating the UI, in response to attribute changes.
+Parameters:
+ +-
+
+
-
+
+
e+ EventFacade + + + + +++ + +The event facade for the attribute change
+
+
+
_afterZIndexChange
+
+
+ -
+
+
-
+
+
e+ +
+
+
Default attribute change listener for the zIndex attribute, responsible +for updating the UI, in response to attribute changes.
+Parameters:
+ +-
+
+
-
+
+
e+ EventFacade + + + + +++ + +The event facade for the attribute change
+
+
+
_bindUIStack
+
+
+ ()
+
+
+
+
+
+
+
+ protected
+
+
+
+
+
+
+
+
+
+
+
+
+ Binds event listeners responsible for updating the UI state in response to +Widget stack related state changes.
+ ++This method is invoked after bindUI is invoked for the Widget class +using YUI's aop infrastructure. +
+_destroyShim
+
+
+ ()
+
+
+
+
+
+
+
+ private
+
+
+
+
+
+
+
+
+
+
+
+
+ Removes the shim from the DOM, and detaches any related event +listeners.
+_detachStackHandles
+
+
+ -
+
+
-
+
+
String+ +
+
+
Detaches any handles stored for the provided key
+Parameters:
+ +-
+
+
-
+
+
String+ Object + + + + +++ + +handleKey The key defining the group of handles which should be detached
+
+
+
_getShimTemplate
+
+
+ ()
+
+
+
+
+ Node
+
+
+
+
+
+
+ private
+
+
+
+
+
+
+
+
+
+
+
+
+ Creates a cloned shim node, using the SHIM_TEMPLATE html template, for use on a new instance.
+Returns:
+ +_parseZIndex
+
+
+ -
+
+
-
+
+
srcNode+ +
+
+
Parses a zIndex attribute value from this widget's srcNode.
Parameters:
+ +-
+
+
-
+
+
srcNode+ Node + + + + +++ + +The node to parse a
+zIndexvalue from.
+
+
Returns:
+ +zIndex value.
+
+ _renderShim
+
+
+ ()
+
+
+
+
+
+
+
+ private
+
+
+
+
+
+
+
+
+
+
+
+
+ Creates the shim element and adds it to the DOM
+_renderShimDeferred
+
+
+ ()
+
+
+
+
+
+
+
+ private
+
+
+
+
+
+
+
+
+
+
+
+
+ Sets up change handlers for the visible attribute, to defer shim creation/rendering +until the Widget is made visible.
+_renderUIStack
+
+
+ ()
+
+
+
+
+
+
+
+ protected
+
+
+
+
+
+
+
+
+
+
+
+
+ Creates/Initializes the DOM to support stackability.
+ ++This method in invoked after renderUI is invoked for the Widget class +using YUI's aop infrastructure. +
+_setZIndex
+
+
+ -
+
+
-
+
+
zIndex+ +
+
+
Default setter for zIndex attribute changes. Normalizes zIndex values to +numbers, converting non-numerical values to 0.
+Returns:
+ +_syncUIStack
+
+
+ ()
+
+
+
+
+
+
+
+ protected
+
+
+
+
+
+
+
+
+
+
+
+
+ Synchronizes the UI to match the Widgets stack state. This method in +invoked after syncUI is invoked for the Widget class using YUI's aop infrastructure.
+_uiSetShim
+
+
+ -
+
+
-
+
+
enable+ +
+
+
Updates the UI to enable/disable the shim. If the widget is not currently visible, +creation of the shim is deferred until it is made visible, for performance reasons.
+Parameters:
+ +-
+
+
-
+
+
enable+ Boolean + + + + +++ + +If true, creates/renders the shim, if false, removes it.
+
+
+
_uiSetZIndex
+
+
+ -
+
+
-
+
+
zIndex+ +
+
+
Updates the UI to reflect the zIndex value passed in.
+Parameters:
+ +-
+
+
-
+
+
zIndex+ Number + + + + +++ + +The zindex to be reflected in the UI
+
+
+
sizeShim
+
+
+ ()
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ For IE6, synchronizes the size and position of iframe shim to that of +Widget bounding box which it is protecting. For all other browsers, +this method does not do anything.
+Properties
+ + +ATTRS
+ Object
+
+
+
+
+
+
+
+
+ static
+
+
+
+
+ Static property used to define the default attribute +configuration introduced by WidgetStack.
+HTML_PARSER
+ Object
+
+
+
+
+
+
+
+
+ static
+
+
+
+
+ The HTML parsing rules for the WidgetStack class.
+SHIM_CLASS_NAME
+ String
+
+
+
+
+
+
+
+
+ static
+
+
+
+
+ Default class used to mark the shim element
+Default: "yui3-widget-shim"
+ + + + + +SHIM_TEMPLATE
+ String
+
+
+
+
+
+
+
+
+ static
+
+
+
+
+ Default markup template used to generate the shim element.
+STACKED_CLASS_NAME
+ String
+
+
+
+
+
+
+
+
+ static
+
+
+
+
+ Default class used to mark the boundingBox of a stacked widget.
+Default: "yui3-widget-stacked"
+ + + + + +Attributes
+ + +shim
+ Boolean
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Boolean flag to indicate whether or not a shim should be added to the Widgets +boundingBox, to protect it from select box bleedthrough.
+Default: false, for all browsers other than IE6, for which a shim is enabled by default.
+ + + +Fires event shimChange
+
+
+ Fires when the value for the configuration attribute shim is
+ changed. You can listen for the event using the on method if you
+ wish to be notified before the attribute's value has changed, or
+ using the after method if you wish to be notified after the
+ attribute's value has changed.
+
Parameters:
+ +-
+
-
+
e+ EventFacade + ++ An Event Facade object with the following + attribute-specific properties added: ++ +-
+
-
+
prevVal+ Any +The value of the attribute, prior to it being set.+
+ -
+
newVal+ Any +The value the attribute is to be set to.+
+ -
+
attrName+ String +The name of the attribute being set.+
+ -
+
subAttrName+ String +If setting a property within the attribute's value, the name of the sub-attribute property being set.+
+
+ -
+
zIndex
+ Number
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The z-index to apply to the Widgets boundingBox. Non-numerical values for +zIndex will be converted to 0
+Default: 0
+ + + +Fires event zIndexChange
+
+
+ Fires when the value for the configuration attribute zIndex is
+ changed. You can listen for the event using the on method if you
+ wish to be notified before the attribute's value has changed, or
+ using the after method if you wish to be notified after the
+ attribute's value has changed.
+
Parameters:
+ +-
+
-
+
e+ EventFacade + ++ An Event Facade object with the following + attribute-specific properties added: ++ +-
+
-
+
prevVal+ Any +The value of the attribute, prior to it being set.+
+ -
+
newVal+ Any +The value the attribute is to be set to.+
+ -
+
attrName+ String +The name of the attribute being set.+
+ -
+
subAttrName+ String +If setting a property within the attribute's value, the name of the sub-attribute property being set.+
+
+ -
+
