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;
+            }
+        }
     }
 }

Reply via email to