You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by mi...@apache.org on 2015/06/21 23:16:02 UTC
[4/6] git commit: [flex-sdk] [refs/heads/develop] - FLEX-34854
FLEX-34884 Mirror of commit 047017398a2ccea7ddb2b0300ec4a184ad7f9ab6 for the
spark version of Sort.as.
FLEX-34854 FLEX-34884
Mirror of commit 047017398a2ccea7ddb2b0300ec4a184ad7f9ab6 for the spark version of Sort.as.
Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/2ce42524
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/2ce42524
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/2ce42524
Branch: refs/heads/develop
Commit: 2ce42524d125c87bddd087a617d69b30effa872d
Parents: e2df7a7
Author: Mihai Chira <mi...@apache.org>
Authored: Sun Jun 21 20:38:12 2015 +0100
Committer: Mihai Chira <mi...@apache.org>
Committed: Sun Jun 21 20:38:12 2015 +0100
----------------------------------------------------------------------
.../spark/src/spark/collections/Sort.as | 40 +++++---------------
1 file changed, 9 insertions(+), 31 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/2ce42524/frameworks/projects/spark/src/spark/collections/Sort.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/spark/src/spark/collections/Sort.as b/frameworks/projects/spark/src/spark/collections/Sort.as
index 8e9a8d5..807f121 100644
--- a/frameworks/projects/spark/src/spark/collections/Sort.as
+++ b/frameworks/projects/spark/src/spark/collections/Sort.as
@@ -341,10 +341,6 @@ public class Sort extends AdvancedStyleClient implements ISort
*/
private var _fields:Array;
- /**
- * @private
- */
- private var fieldList:Array = [];
[Inspectable(category="General", arrayType="mx.collections.ISortField")]
[Bindable("fieldsChanged")]
@@ -372,16 +368,7 @@ public class Sort extends AdvancedStyleClient implements ISort
public function set fields(value:Array):void
{
_fields = value;
- fieldList = [];
- if (_fields)
- {
- var field:ISortField;
- for (var i:int = 0; i<_fields.length; i++)
- {
- field = ISortField(_fields[i]);
- fieldList.push(field.name);
- }
- }
+
dispatchEvent(new Event("fieldsChanged"));
}
@@ -542,39 +529,30 @@ public class Sort extends AdvancedStyleClient implements ISort
{
compareForFind = this.compareFunction;
// configure the search criteria
- if (values && fieldList.length > 0)
+ if (values && fields && fields.length > 0)
{
fieldsForCompare = [];
//build up the fields we can compare, if we skip a field in the
//middle throw an error. it is ok to not have all the fields
//though
- var fieldName:String;
+ var field:ISortField;
var hadPreviousFieldName:Boolean = true;
- for (var i:int = 0; i < fieldList.length; i++)
+ for (var i:int = 0; i < fields.length; i++)
{
- fieldName = fieldList[i];
- if (fieldName)
+ field = fields[i] as ISortField;
+ if (field.name)
{
- var hasFieldName:Boolean = false;
-
- try
- {
- hasFieldName = values[fieldName] !== undefined;
- }
- catch(e:Error)
- {
- }
- if (hasFieldName)
+ if (field.objectHasSortField(values))
{
if (!hadPreviousFieldName)
{
message = resourceManager.getString(
- "collections", "findCondition", [ fieldName ]);
+ "collections", "findCondition", [ field.name ]);
throw new SortError(message);
}
else
{
- fieldsForCompare.push(fieldName);
+ fieldsForCompare.push(field.name);
}
}
else