flex-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From cza...@apache.org
Subject [1/3] git commit: [flex-sdk] [refs/heads/develop] - FLEX-32848 patch by Stephan Plath , updated code formatting, added asdoc to isCellItemHighlighted and isCellItemSelected
Date Wed, 25 Sep 2013 08:05:01 GMT
Updated Branches:
  refs/heads/develop 82fb7f8bd -> 7a01335e6


FLEX-32848 patch by Stephan Plath , updated code formatting, added asdoc to isCellItemHighlighted
and isCellItemSelected


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

Branch: refs/heads/develop
Commit: dbd47e45139eee34b7c56dbbe6ad0f8bf23868b4
Parents: b32da1e
Author: cyrill.zadra <cyrill.zadra@gmail.com>
Authored: Tue Sep 24 14:33:39 2013 +0200
Committer: cyrill.zadra <cyrill.zadra@gmail.com>
Committed: Tue Sep 24 14:33:39 2013 +0200

----------------------------------------------------------------------
 .../src/mx/controls/AdvancedDataGrid.as         | 48 ++++++++++++++++++++
 .../AdvancedDataGridBase.as                     |  1 +
 .../AdvancedDataGridGroupItemRenderer.as        | 17 ++++++-
 .../AdvancedDataGridItemRenderer.as             | 45 +++++++++++++-----
 4 files changed, 97 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/dbd47e45/frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGrid.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGrid.as b/frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGrid.as
index 88218d7..5e1995f 100644
--- a/frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGrid.as
+++ b/frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGrid.as
@@ -7419,6 +7419,50 @@ public class AdvancedDataGrid extends AdvancedDataGridBaseEx
     }
 
     /**
+     *  Determines if cell is highlighted.
+     *
+     *  @param data The data provider item.
+     *  @param columnIndex index of column.
+     *
+     *  @return <code>true</code> if the cell item is highlighted.
+     * 
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4.11
+     */
+	public function isCellItemHighlighted(data:Object, columnIndex:int): Boolean
+	{
+		if (data == null)
+			return false;
+		if (isCellItemSelected(data, columnIndex))
+			return false;
+		return highlightUID == data && highlightColumnIndex == columnIndex;
+	}	
+
+	/**
+	 *  Determines if cell is selected.
+	 *
+     *  @param data The data provider item.
+     *  @param columnIndex index of column.
+     *
+     *  @return <code>true</code> if the cell item is selected.
+     * 
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4.11
+     */
+	public function isCellItemSelected(data:Object, columnIndex:int): Boolean
+	{
+		if (data == null)
+			return false;
+		return cellSelectionData[data] && cellSelectionData[data][columnIndex];
+	}	
+	
+    /**
      *  @private
      *  Check if a cell is already present in selecedCells.
      */
@@ -7602,11 +7646,15 @@ public class AdvancedDataGrid extends AdvancedDataGridBaseEx
 				if (visibleRenderer)
 					item = visibleRenderer[q];
                 if (item)
+				{
+					// IMPORTANT! Clear the selection before drawCellItem() is called -> IInvalidating(item).validateNow()

+					cellSelectionData[p][q] = null; 
                     drawCellItem(item, false,
                                  p == highlightUID
                                  && highlightColumnIndex == int(q),
                                  false,
                                  transition);
+				}
             }
         }
 

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/dbd47e45/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridBase.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridBase.as
b/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridBase.as
index 8572c4f..08e0269 100644
--- a/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridBase.as
+++ b/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridBase.as
@@ -913,6 +913,7 @@ public class AdvancedDataGridBase extends AdvancedListBase implements
IFontConte
         for (var i:int = 0; i < n; i++)
         {
             var r:IListItemRenderer = listItems[rowIndex][i];
+			r.validateDisplayList();
             updateDisplayOfItemRenderer(r);
         }
     }

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/dbd47e45/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridGroupItemRenderer.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridGroupItemRenderer.as
b/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridGroupItemRenderer.as
index b141e44..6f477aa 100644
--- a/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridGroupItemRenderer.as
+++ b/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridGroupItemRenderer.as
@@ -555,12 +555,25 @@ public class AdvancedDataGridGroupItemRenderer extends UIComponent
 
         if (data && parent)
         {
+			var selMode: String = listOwner.selectionMode;
             if (!enabled)
                 labelColor = getStyle("disabledColor");
-            else if (listOwner.isItemHighlighted(listData.uid))
+            else if ((selMode == AdvancedDataGridBase.SINGLE_ROW
+            		|| selMode == AdvancedDataGridBase.MULTIPLE_ROWS)
+            		&& listOwner.isItemHighlighted(listData.uid))
                 labelColor = getStyle("textRollOverColor");
-            else if (listOwner.isItemSelected(listData.uid))
+            else if ((selMode == AdvancedDataGridBase.SINGLE_ROW
+            		|| selMode == AdvancedDataGridBase.MULTIPLE_ROWS)
+            		&& listOwner.isItemSelected(listData.uid))
                 labelColor = getStyle("textSelectedColor");
+			else if ((selMode == AdvancedDataGridBase.SINGLE_CELL
+					|| selMode == AdvancedDataGridBase.MULTIPLE_CELLS)
+					&& listOwner.isCellItemHighlighted(listData.uid, listData.columnIndex))
+				labelColor = getStyle("textRollOverColor");
+			else if ((selMode == AdvancedDataGridBase.SINGLE_CELL
+					|| selMode == AdvancedDataGridBase.MULTIPLE_CELLS)
+					&& listOwner.isCellItemSelected(listData.uid, listData.columnIndex))
+				labelColor = getStyle("textSelectedColor");
             else
                 labelColor = getStyle("color");
 

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/dbd47e45/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridItemRenderer.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridItemRenderer.as
b/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridItemRenderer.as
index 7c32f8b..ce73dfc 100644
--- a/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridItemRenderer.as
+++ b/frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridItemRenderer.as
@@ -303,18 +303,39 @@ public class AdvancedDataGridItemRenderer extends UITextField
         if (data && parent)
         {
             var newColor:Number;
-
-            if (AdvancedDataGrid(_listData.owner).isItemHighlighted(_listData.uid))
-            {
-                newColor = getStyle("textRollOverColor");
-            }
-            else if (AdvancedDataGrid(_listData.owner).isItemSelected(_listData.uid))
-            {
-                newColor = getStyle("textSelectedColor");
-            }
-            else
-            {
-                newColor = getStyle("color");
+			var adg: AdvancedDataGrid = AdvancedDataGrid(listData.owner);
+			
+			if (adg.selectionMode == AdvancedDataGridBase.SINGLE_ROW
+				|| adg.selectionMode == AdvancedDataGridBase.MULTIPLE_ROWS)
+			{
+				if (adg.isItemHighlighted(listData.uid))
+				{
+					newColor = getStyle("textRollOverColor");
+				}
+				else if (adg.isItemSelected(listData.uid))
+				{
+					newColor = getStyle("textSelectedColor");
+				}
+				else
+				{
+					newColor = getStyle("color");
+				}
+			}
+			else if (adg.selectionMode == AdvancedDataGridBase.SINGLE_CELL
+					|| adg.selectionMode == AdvancedDataGridBase.MULTIPLE_CELLS)
+			{
+				if (adg.isCellItemHighlighted(listData.uid, listData.columnIndex))
+				{
+					newColor = getStyle("textRollOverColor");
+				}
+				else if (adg.isCellItemSelected(listData.uid, listData.columnIndex))
+				{
+					newColor = getStyle("textSelectedColor");
+				}
+				else
+				{
+					newColor = getStyle("color");
+				}
             }
 
             if (newColor != explicitColor)


Mime
View raw message