This is an automated email from the ASF dual-hosted git repository.

carlosrovira pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git


The following commit(s) were added to refs/heads/develop by this push:
     new 42f2b4c  jewel-togglebuttonbar: fix selected in TDJ example
42f2b4c is described below

commit 42f2b4c931e06da2e90ec1e0639ebea33634611f
Author: Carlos Rovira <[email protected]>
AuthorDate: Sun Dec 15 12:51:13 2019 +0100

    jewel-togglebuttonbar: fix selected in TDJ example
---
 .../src/main/royale/ButtonBarPlayGround.mxml       | 27 ++++++++++++------
 .../src/main/royale/ButtonPlayGround.mxml          |  5 +++-
 .../itemRenderers/ToggleButtonBarItemRenderer.as   | 33 +++++-----------------
 3 files changed, 29 insertions(+), 36 deletions(-)

diff --git 
a/examples/royale/TourDeJewel/src/main/royale/ButtonBarPlayGround.mxml 
b/examples/royale/TourDeJewel/src/main/royale/ButtonBarPlayGround.mxml
index dd34d26..f40d243 100644
--- a/examples/royale/TourDeJewel/src/main/royale/ButtonBarPlayGround.mxml
+++ b/examples/royale/TourDeJewel/src/main/royale/ButtonBarPlayGround.mxml
@@ -24,12 +24,6 @@ limitations under the License.
        xmlns:models="models.*" 
        xmlns:c="components.*" sourceCodeUrl="ButtonBarPlayGround.mxml">
 
-       <fx:Script>
-               <![CDATA[
-                       import 
org.apache.royale.html.beads.models.ButtonBarModel;
-               ]]>
-       </fx:Script>
-
        <c:beads>
                <js:ContainerDataBinding/>
        </c:beads>
@@ -147,14 +141,15 @@ limitations under the License.
 
                                <html:H4 text="Width 100% and emphasized 
color"/>
 
-                               <j:ToggleButtonBar localId="tbb" 
change="tbb_label.text = tbb.selectedItem.label + ' (icon: ' + 
tbb.selectedItem.icon + '). isSelected? ' + tbb.selectedItem.selected"
+                               <j:ToggleButtonBar localId="tbb" 
+                                       change="tbbChangeHandler(event)"
                                        emphasis="primary" width="100%" 
material="true"
                                        
dataProvider="{listModel.iconButtonData}"/>
                                
                                <html:H4 text="No Width and icons to the 
right"/>
 
                                <j:ToggleButtonBar localId="tbb2" 
-                                       change="tbb_label.text = 
tbb2.selectedItem.label + ' (icon: ' + tbb2.selectedItem.icon + '). isSelected? 
' + tbb2.selectedItem.selected"
+                                       change="tbbChangeHandler(event)"
                                        emphasis="emphasized" 
rightPosition="true" material="true" iconField="icon"
                                        
dataProvider="{listModel.iconButtonData}"/>
                                
@@ -162,5 +157,19 @@ limitations under the License.
                        </j:Card>
                </j:GridCell>
        </j:Grid>
-       
+
+       <fx:Script>
+               <![CDATA[
+                       import org.apache.royale.core.ISelectable;
+                       import org.apache.royale.events.Event;
+                       import 
org.apache.royale.html.beads.models.ButtonBarModel;
+
+                       public function tbbChangeHandler(event:Event):void
+                       {
+                               var selected:Boolean = 
(event.target.getElementAt(event.target.selectedIndex) as ISelectable).selected;
+                               tbb_label.text = 
event.target.selectedItem.label + ' (icon: ' + event.target.selectedItem.icon + 
'). isSelected? ' + selected;
+                       }
+               ]]>
+       </fx:Script>
+
 </c:ExampleAndSourceCodeTabbedSectionContent>
diff --git a/examples/royale/TourDeJewel/src/main/royale/ButtonPlayGround.mxml 
b/examples/royale/TourDeJewel/src/main/royale/ButtonPlayGround.mxml
index 776b8c9..5731206 100644
--- a/examples/royale/TourDeJewel/src/main/royale/ButtonPlayGround.mxml
+++ b/examples/royale/TourDeJewel/src/main/royale/ButtonPlayGround.mxml
@@ -143,7 +143,10 @@ limitations under the License.
                        <j:Card>
                                <html:H3 text="Jewel ToggleButton"/>
 
-                               <j:ToggleButton text="Default"/>
+                               <j:HGroup gap="3">
+                                       <j:ToggleButton text="Default" 
change="tb_lb.text = 'selected? ' + event.target.selected"/>
+                                       <j:Label localId="tb_lb"/>
+                               </j:HGroup>
                                <j:ToggleButton text="Disabled">
                                        <j:beads>
                                                <j:Disabled/>
diff --git 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ToggleButtonBarItemRenderer.as
 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ToggleButtonBarItemRenderer.as
index 3ce4fb8..b57e6bc 100644
--- 
a/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ToggleButtonBarItemRenderer.as
+++ 
b/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/itemRenderers/ToggleButtonBarItemRenderer.as
@@ -22,17 +22,17 @@ package org.apache.royale.jewel.itemRenderers
        {
        import org.apache.royale.core.WrappedHTMLElement;
        }
+       import org.apache.royale.core.IIcon;
        import org.apache.royale.core.SimpleCSSStylesWithFlex;
+       import org.apache.royale.core.ValuesManager;
        import org.apache.royale.events.ItemClickedEvent;
        import org.apache.royale.events.MouseEvent;
        import org.apache.royale.html.beads.ITextItemRenderer;
        import org.apache.royale.html.util.getLabelFromData;
-       import org.apache.royale.jewel.ToggleButton;
        import org.apache.royale.jewel.ButtonBar;
+       import org.apache.royale.jewel.ToggleButton;
+       import org.apache.royale.jewel.ToggleButtonBar;
        import org.apache.royale.jewel.beads.views.ButtonBarView;
-       import org.apache.royale.core.ValuesManager;
-       import org.apache.royale.core.IIcon;
-       import org.apache.royale.jewel.IconButtonBar;
 
        /**
         *  The ButtonBarItemRenderer class extends Button and turns it into an 
itemRenderer
@@ -74,13 +74,13 @@ package org.apache.royale.jewel.itemRenderers
                {
                        _data = value;
                        text = getLabelFromData(this, value);
-                       rightPosition = ((itemRendererParent as 
ButtonBarView).buttonBar as IconButtonBar).rightPosition;
+                       rightPosition = ((itemRendererParent as 
ButtonBarView).buttonBar as ToggleButtonBar).rightPosition;
                        if(value.icon)
                        {
                                var iconClass:Class = 
ValuesManager.valuesImpl.getValue((itemRendererParent as 
ButtonBarView).buttonBar, "iconClass") as Class;
                                var fontIcon:IIcon = new iconClass(); 
-                               fontIcon.material = ((itemRendererParent as 
ButtonBarView).buttonBar as IconButtonBar).material;
-                               fontIcon.text = value[((itemRendererParent as 
ButtonBarView).buttonBar as IconButtonBar).iconField];
+                               fontIcon.material = ((itemRendererParent as 
ButtonBarView).buttonBar as ToggleButtonBar).material;
+                               fontIcon.text = value[((itemRendererParent as 
ButtonBarView).buttonBar as ToggleButtonBar).iconField];
                                icon = fontIcon;
                        }
                }
@@ -262,25 +262,6 @@ package org.apache.royale.jewel.itemRenderers
                        _hovered = value;
                }
 
-               // private var _selected:Boolean;
-
-               // /**
-               //  *  Whether or not the itemRenderer is in a selected state.
-               //  *
-               //  *  @langversion 3.0
-               //  *  @playerversion Flash 10.2
-               //  *  @playerversion AIR 2.6
-               //  *  @productversion Royale 0.9.7
-               //  */
-               // public function get selected():Boolean
-               // {
-               //      return _selected;
-               // }
-               // public function set selected(value:Boolean):void
-               // {
-               //      _selected = value;
-               // }
-
                private var _down:Boolean;
 
                /**

Reply via email to