Better RTE safety with less code. :-)
Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/94bda2fd Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/94bda2fd Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/94bda2fd Branch: refs/heads/feature/browser-event Commit: 94bda2fdab41f410bd230983674d4df64c606440 Parents: 61ef18b Author: Harbs <ha...@in-tools.com> Authored: Mon Jul 24 14:04:05 2017 +0300 Committer: Harbs <ha...@in-tools.com> Committed: Mon Jul 24 14:04:05 2017 +0300 ---------------------------------------------------------------------- .../flex/org/apache/flex/html/beads/ListView.as | 37 ++++++++++---------- 1 file changed, 18 insertions(+), 19 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/94bda2fd/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/ListView.as ---------------------------------------------------------------------- diff --git a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/ListView.as b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/ListView.as index 0f73421..b547918 100644 --- a/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/ListView.as +++ b/frameworks/projects/Basic/src/main/flex/org/apache/flex/html/beads/ListView.as @@ -81,18 +81,19 @@ package org.apache.flex.html.beads super.handleInitComplete(event); } + /** + * @private + * @flexjsignorecoercion org.apache.flex.core.ISelectableItemRenderer + */ protected function selectionChangeHandler(event:Event):void { - if (lastSelectedIndex != -1) - { - var ir:ISelectableItemRenderer = dataGroup.getItemRendererForIndex(lastSelectedIndex) as ISelectableItemRenderer; - if (ir != null) ir.selected = false; - } - if (listModel.selectedIndex != -1) - { - ir = dataGroup.getItemRendererForIndex(listModel.selectedIndex) as ISelectableItemRenderer; - if (ir != null) ir.selected = true; - } + var ir:ISelectableItemRenderer = dataGroup.getItemRendererForIndex(lastSelectedIndex) as ISelectableItemRenderer; + if(ir) + ir.selected = false; + ir = dataGroup.getItemRendererForIndex(listModel.selectedIndex) as ISelectableItemRenderer; + if(ir) + ir.selected = true; + lastSelectedIndex = listModel.selectedIndex; } @@ -100,20 +101,18 @@ package org.apache.flex.html.beads /** * @private + * @flexjsignorecoercion org.apache.flex.core.ISelectableItemRenderer + * * @flexjsignorecoercion org.apache.flex.core.IRollOverModel */ protected function rollOverIndexChangeHandler(event:Event):void { - if (lastRollOverIndex != -1) - { - var ir:ISelectableItemRenderer = dataGroup.getItemRendererForIndex(lastRollOverIndex) as ISelectableItemRenderer; + var ir:ISelectableItemRenderer = dataGroup.getItemRendererForIndex(lastRollOverIndex) as ISelectableItemRenderer; + if(ir) ir.hovered = false; - } - if (IRollOverModel(listModel).rollOverIndex != -1) - { - ir = dataGroup.getItemRendererForIndex(IRollOverModel(listModel).rollOverIndex) as ISelectableItemRenderer; + ir = dataGroup.getItemRendererForIndex((listModel as IRollOverModel).rollOverIndex) as ISelectableItemRenderer; + if(ir) ir.hovered = true; - } - lastRollOverIndex = IRollOverModel(listModel).rollOverIndex; + lastRollOverIndex = (listModel as IRollOverModel).rollOverIndex; } }