Repository: flex-asjs Updated Branches: refs/heads/develop c39324f28 -> 010e4c5da
- Expose from model selectedIndex in TabBar - in order to gives ability to select specified TabBarButton at start up - Update MDL example with selectedIndex - Update docs Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/010e4c5d Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/010e4c5d Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/010e4c5d Branch: refs/heads/develop Commit: 010e4c5dad9591959b6209dae6ee6cf402347cdf Parents: c39324f Author: piotrz <[email protected]> Authored: Sun Jan 8 01:03:58 2017 +0100 Committer: piotrz <[email protected]> Committed: Sun Jan 8 01:03:58 2017 +0100 ---------------------------------------------------------------------- .../src/main/flex/MainNavigation.mxml | 2 +- .../flexjs/MDLExample/src/main/flex/Tabs.mxml | 4 +-- .../src/main/flex/org/apache/flex/mdl/TabBar.as | 31 ++++++++++++++++- .../flex/org/apache/flex/mdl/beads/MdlColor.as | 5 +++ .../org/apache/flex/mdl/beads/MdlTextColor.as | 5 +++ .../org/apache/flex/mdl/beads/views/ListView.as | 11 +++++- .../apache/flex/mdl/beads/views/TabBarView.as | 36 ++++++++++++++++++++ 7 files changed, 89 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/010e4c5d/examples/flexjs/MDLExample/src/main/flex/MainNavigation.mxml ---------------------------------------------------------------------- diff --git a/examples/flexjs/MDLExample/src/main/flex/MainNavigation.mxml b/examples/flexjs/MDLExample/src/main/flex/MainNavigation.mxml index 28f587c..846ee63 100644 --- a/examples/flexjs/MDLExample/src/main/flex/MainNavigation.mxml +++ b/examples/flexjs/MDLExample/src/main/flex/MainNavigation.mxml @@ -41,7 +41,7 @@ limitations under the License. </mdl:beads> </mdl:Navigation> </mdl:HeaderRow> - <mdl:TabBar ripple="true" labelField="label" tabIdField="href" className="customTabBarSetup"> + <mdl:TabBar ripple="true" selectedIndex="0" labelField="label" tabIdField="href" className="customTabBarSetup"> <mdl:beads> <js:ConstantBinding sourceID="mainNavigationModel" http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/010e4c5d/examples/flexjs/MDLExample/src/main/flex/Tabs.mxml ---------------------------------------------------------------------- diff --git a/examples/flexjs/MDLExample/src/main/flex/Tabs.mxml b/examples/flexjs/MDLExample/src/main/flex/Tabs.mxml index 52154e7..29e17fc 100644 --- a/examples/flexjs/MDLExample/src/main/flex/Tabs.mxml +++ b/examples/flexjs/MDLExample/src/main/flex/Tabs.mxml @@ -41,7 +41,7 @@ limitations under the License. <mdl:GridCell column="1" percentWidth="100"> <mdl:NavigationLayout width="600"> <mdl:Header> - <mdl:TabBar tabIdField="tabId" labelField="label" className="customTabBarSetup"> + <mdl:TabBar selectedIndex="0" tabIdField="tabId" labelField="label" className="customTabBarSetup"> <mdl:beads> <js:ConstantBinding sourceID="tabsModel" @@ -52,7 +52,7 @@ limitations under the License. </mdl:Header> <mdl:NavigationLayoutContent> - <mdl:TabBarPanel id="starks_panel"> + <mdl:TabBarPanel id="starks_panel" isActive="true"> <js:Ul> <js:Li><js:Label text="Eddard"/></js:Li> <js:Li><js:Label text="Catelyn"/></js:Li> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/010e4c5d/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/TabBar.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/TabBar.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/TabBar.as index 7914818..b2f7da5 100644 --- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/TabBar.as +++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/TabBar.as @@ -58,7 +58,15 @@ package org.apache.flex.mdl className = ""; //set to empty string avoid 'undefined' output when no class selector is assigned by user; } - + + /** + * @copy org.apache.flex.core.IDataProviderModel#dataProvider + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.0 + */ public function get dataProvider():Object { return ITabModel(model).dataProvider; @@ -68,6 +76,14 @@ package org.apache.flex.mdl ITabModel(model).dataProvider = value; } + /** + * @copy org.apache.flex.core.IDataProviderModel#labelField + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.0 + */ public function get labelField():String { return ITabModel(model).labelField; @@ -77,6 +93,14 @@ package org.apache.flex.mdl ITabModel(model).labelField = value; } + /** + * @copy org.apache.flex.mdl.beads.models.ITabModel#tabIdField + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.0 + */ public function get tabIdField():String { return ITabModel(model).tabIdField; @@ -87,6 +111,11 @@ package org.apache.flex.mdl ITabModel(model).tabIdField = value; } + public function set selectedIndex(value:int):void + { + ITabModel(model).selectedIndex = value; + } + public function getLayoutHost():ILayoutHost { return this; http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/010e4c5d/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/MdlColor.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/MdlColor.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/MdlColor.as index 0ae6ca3..48a1000 100644 --- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/MdlColor.as +++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/MdlColor.as @@ -109,6 +109,11 @@ package org.apache.flex.mdl.beads * @flexjsignorecoercion HTMLElement * * @param value + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.0 */ public function set strand(value:IStrand):void { http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/010e4c5d/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/MdlTextColor.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/MdlTextColor.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/MdlTextColor.as index a103f1f..a937269 100644 --- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/MdlTextColor.as +++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/MdlTextColor.as @@ -84,6 +84,11 @@ package org.apache.flex.mdl.beads * @flexjsignorecoercion HTMLElement * * @param value + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.0 */ public function set strand(value:IStrand):void { http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/010e4c5d/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/ListView.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/ListView.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/ListView.as index 7f9f0f1..91eab78 100644 --- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/ListView.as +++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/ListView.as @@ -51,7 +51,16 @@ package org.apache.flex.mdl.beads.views protected var listModel:ISelectionModel; - + /** + * @copy org.apache.flex.core.BeadViewBase#strand + * + * @param value + * + * @langversion 3.0 + * @playerversion Flash 10.2 + * @playerversion AIR 2.6 + * @productversion FlexJS 0.0 + */ override public function set strand(value:IStrand):void { super.strand = value; http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/010e4c5d/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabBarView.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabBarView.as b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabBarView.as index 7049611..ef9d091 100644 --- a/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabBarView.as +++ b/frameworks/projects/MaterialDesignLite/src/main/flex/org/apache/flex/mdl/beads/views/TabBarView.as @@ -18,6 +18,12 @@ //////////////////////////////////////////////////////////////////////////////// package org.apache.flex.mdl.beads.views { + import org.apache.flex.events.Event; + import org.apache.flex.core.IContentViewHost; + import org.apache.flex.core.IStrand; + import org.apache.flex.mdl.TabBarButton; + import org.apache.flex.mdl.supportClasses.ITabItemRenderer; + /** * The TabBarView class creates the visual elements of the org.apache.flex.mdl.TabBar * component. @@ -33,5 +39,35 @@ package org.apache.flex.mdl.beads.views { super(); } + + override public function set strand(value:IStrand):void + { + super.strand = value; + + host.addEventListener("initComplete", initCompleteHandler); + } + + private function initCompleteHandler(event:Event):void + { + host.removeEventListener("initComplete", initCompleteHandler); + + completeSetup(); + } + + protected function completeSetup():void + { + selectTabBarButton(); + } + + private function selectTabBarButton():void + { + if (listModel.selectedIndex < 0 ) return; + + var tabBarButton:Object = (host as IContentViewHost).strandChildren.getElementAt(listModel.selectedIndex); + if (tabBarButton is ITabItemRenderer || tabBarButton is TabBarButton) + { + tabBarButton.isActive = true; + } + } } }
