You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by bi...@apache.org on 2014/11/22 02:00:53 UTC
[10/48] git commit: [flex-sdk] [refs/heads/iso7skins] - FLEX-34373 -
fix default button handling
FLEX-34373 - fix default button handling
Signed-off-by: Erik de Bruin <er...@ixsoftware.nl>
Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/19df2d4c
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/19df2d4c
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/19df2d4c
Branch: refs/heads/iso7skins
Commit: 19df2d4c7b743354ece4c7d3c74506a187c78cbd
Parents: 89d9d74
Author: Erik de Bruin <er...@ixsoftware.nl>
Authored: Thu Oct 9 13:25:51 2014 +0200
Committer: Erik de Bruin <er...@ixsoftware.nl>
Committed: Thu Oct 9 13:25:51 2014 +0200
----------------------------------------------------------------------
.../experimental/src/spark/components/Alert.as | 45 ++++++++++++++++++--
1 file changed, 41 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/19df2d4c/frameworks/projects/experimental/src/spark/components/Alert.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/experimental/src/spark/components/Alert.as b/frameworks/projects/experimental/src/spark/components/Alert.as
index 770b454..b613739 100644
--- a/frameworks/projects/experimental/src/spark/components/Alert.as
+++ b/frameworks/projects/experimental/src/spark/components/Alert.as
@@ -396,7 +396,7 @@ package spark.components {
* @productversion Flex 4.5
*/
public static function show(message:String = "", title:String = "", flags:uint = OK, parent:Sprite = null, closeHandler:Function = null,
- iconClass:Class = null, defaultButtonFlag:uint = 0 /* Alert.OK */, moduleFactory:IFlexModuleFactory = null):Alert {
+ iconClass:Class = null, defaultButtonFlag:uint = Alert.OK, moduleFactory:IFlexModuleFactory = null):Alert {
var modal:Boolean = (flags & Alert.NONMODAL) ? false : true;
@@ -758,6 +758,42 @@ package spark.components {
return result;
}
+ /**
+ * @private
+ */
+ private function getDefaultButton():Button
+ {
+ var label:String;
+ switch (_defaultButtonFlag)
+ {
+ case YES :
+ label = YES_LABEL;
+ break;
+ case NO :
+ label = NO_LABEL;
+ break;
+ case OK :
+ label = OK_LABEL;
+ break;
+ case CANCEL :
+ label = CANCEL_LABEL;
+ break;
+ default :
+ label = '';
+ break;
+ }
+
+ for each (var button:Button in _buttons)
+ {
+ if (button.label === label)
+ {
+ return button;
+ }
+ }
+
+ return null;
+ }
+
/**
* @private
*/
@@ -790,9 +826,10 @@ package spark.components {
awm.activate(this);
}
if (_buttons) {
- if (_defaultButtonFlag >= 0 && _defaultButtonFlag < _buttons.length - 1) {
- _buttons[ _defaultButtonFlag ].setFocus();
- _buttons[ _defaultButtonFlag ].drawFocus(true);
+ var button:Button = getDefaultButton();
+ if (button) {
+ button.setFocus();
+ button.drawFocus(true);
}
}
}