Repository: flex-asjs
Updated Branches:
  refs/heads/develop 9834f8e3c -> 9f63ff20a


Accordion - collapse non selected items by default.


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/9f63ff20
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/9f63ff20
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/9f63ff20

Branch: refs/heads/develop
Commit: 9f63ff20ac6b467cc624de2bc06def9ce46c424a
Parents: 9834f8e
Author: yishayw <[email protected]>
Authored: Tue Nov 15 10:55:45 2016 +0200
Committer: yishayw <[email protected]>
Committed: Tue Nov 15 10:55:45 2016 +0200

----------------------------------------------------------------------
 .../apache/flex/html/beads/AccordionCollapseBead.as    |  4 +---
 .../flex/org/apache/flex/html/beads/AccordionView.as   | 13 +++++++++++++
 .../flex/html/supportClasses/AccordionItemRenderer.as  |  5 +++++
 .../apache/flex/html/supportClasses/ICollapsible.as    |  1 +
 4 files changed, 20 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9f63ff20/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionCollapseBead.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionCollapseBead.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionCollapseBead.as
index 07ec267..d98273f 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionCollapseBead.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionCollapseBead.as
@@ -1,7 +1,5 @@
 package org.apache.flex.html.beads
 {
-       import org.apache.flex.core.ILayoutChild;
-       import org.apache.flex.core.ISelectionModel;
        import org.apache.flex.core.IStrand;
        import org.apache.flex.core.UIBase;
        import org.apache.flex.events.Event;
@@ -40,7 +38,7 @@ package org.apache.flex.html.beads
                        if (lastSelectedIndex > -1)
                        {
                                var lastElement:ICollapsible = 
view.dataGroup.getItemRendererForIndex(lastSelectedIndex) as ICollapsible;
-                               (lastElement as ILayoutChild).height = 
lastElement.collapsedHeight;
+                               lastElement.collapse();
                        }
                        lastSelectedIndex = host.selectedIndex;
                        layout.flexibleChild = newChild.id;

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9f63ff20/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionView.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionView.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionView.as
index 656ca72..675a036 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionView.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/beads/AccordionView.as
@@ -1,9 +1,11 @@
 package org.apache.flex.html.beads
 {
+       import org.apache.flex.core.ILayoutChild;
        import org.apache.flex.core.UIBase;
        import org.apache.flex.core.ValuesManager;
        import org.apache.flex.events.Event;
        import org.apache.flex.html.beads.layouts.IOneFlexibleChildLayout;
+       import org.apache.flex.html.supportClasses.ICollapsible;
 
        public class AccordionView extends ListView
        {
@@ -43,5 +45,16 @@ package org.apache.flex.html.beads
                                super.performLayout(event);
                        }
                }
+               
+               override protected function 
itemsCreatedHandler(event:Event):void
+               {
+                       super.itemsCreatedHandler(event);
+                       var n:int = dataGroup.numElements;
+                       for (var i:int = 0; i < n; i++)
+                       {
+                               var child:ICollapsible = 
dataGroup.getItemRendererForIndex(i) as ICollapsible;
+                               child.collapse();
+                       }
+               }
        }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9f63ff20/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/AccordionItemRenderer.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/AccordionItemRenderer.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/AccordionItemRenderer.as
index dab8efb..7075596 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/AccordionItemRenderer.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/AccordionItemRenderer.as
@@ -125,5 +125,10 @@ package org.apache.flex.html.supportClasses
                        return 0;
                }
                
+               public function collapse():void
+               {
+                       height = collapsedHeight;
+               }
+               
        }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/9f63ff20/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ICollapsible.as
----------------------------------------------------------------------
diff --git 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ICollapsible.as
 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ICollapsible.as
index b53d112..13f653f 100644
--- 
a/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ICollapsible.as
+++ 
b/frameworks/projects/HTML/src/main/flex/org/apache/flex/html/supportClasses/ICollapsible.as
@@ -4,5 +4,6 @@ package org.apache.flex.html.supportClasses
        {
                function get collapsedHeight():Number;
                function get collapsedWidth():Number;
+               function collapse():void;
        }
 }
\ No newline at end of file

Reply via email to