         {
             cr = cellRegions[i];
             if (!cr.isAdd && cr.containsCell(rowIndex, columnIndex))
-                return selectAllFlag;
-        }
-        
-        return !selectAllFlag;
+                return false;
+        }
+        
+        return true;
     }
 
     /**

        if (regionsContainCell(rowIndex, columnIndex))
        {
            const cr:CellRect = 
                new CellRect(rowIndex, columnIndex, 1, 1, selectAllFlag);
            cellRegions.push(cr);
            
            // If the length is current before this remove, just decrement the 

     *  (For row selection, a row region will be in column 0 and column count 
     *  will be 1.)
     *
     *  This is the list of cell regions that have
     *  been added (isAdd==true) and removed (isAdd==false). 
     *   
     *  Internally, regionsContainCell should be used to determine if a cell/row
     *  is in the selection.
