Added selection methods.

Reviewed by me.
This commit is contained in:
Francisco Ryan Tolmasky I
2009-06-23 21:26:41 -07:00
parent 202d59475b
commit dd4db720ef
+67 -13
View File
@@ -79,6 +79,9 @@ CPTableViewSelectionHighlightStyleSourceList = 1;
unsigned _currentHighlightedTableColumn;
unsigned _numberOfRows;
CPIndexSet _selectedColumnIndexes;
CPIndexSet _selectedRowIndexes;
}
- (id)initWithFrame:(CGRect)aFrame
@@ -113,6 +116,9 @@ CPTableViewSelectionHighlightStyleSourceList = 1;
_cachedDataViews = { };
_intercellSpacing = _CGSizeMake(0.0, 0.0);
_rowHeight = 24.0;
_selectedColumnIndexes = [CPIndexSet indexSet];
_selectedRowIndexes = [CPIndexSet indexSet];
}
return self;
@@ -399,27 +405,75 @@ _cachedDataViews = { };
{
var index = [self columnWithIdentifier:anIdentifier];
if (index < 0)
if (index === CPNotFound)
return nil;
return _tableColumns[index];
}
//Selecting Columns and Rows
- (void)selectColumnIndexes:(CPIndexSet)columns byExtendingSelection:(BOOL)shouldExtendSelection
{
if (shouldExtendSelection)
[_selectedColumnIndexes addIndexes:columns];
else
_selectedColumnIndexes = [columns copy];
}
- (void)selectRowIndexes:(CPIndexSet)rows byExtendingSelection:(BOOL)shouldExtendSelection
{
if (shouldExtendSelection)
[_selectedRowIndexes addIndexes:rows];
else
_selectedRowIndexes = [rows copy];
}
- (CPIndexSet)selectedColumnIndexes
{
return _selectedColumnIndexes;
}
- (void)selectedRowIndexes
{
return _selectedRowIndexes;
}
- (void)deselectColumn:(CPInteger)aColumn
{
[_selectedColumnIndexes removeIndex:aColumn];
}
- (void)deselectRow:(CPInteger)aRow
{
[_selectedRowIndexes removeIndex:aRow];
}
- (CPInteger)numberOfSelectedColumns
{
return [_selectedColumnIndexes count];
}
- (CPInteger)numberOfSelectedRows
{
return [_selectedRowIndexes count];
}
/*
* - selectColumnIndexes:byExtendingSelection:
* - selectRowIndexes:byExtendingSelection:
* - selectedColumnIndexes
* - selectedRowIndexes
* - deselectColumn:
* - deselectRow:
* - numberOfSelectedColumns
* - numberOfSelectedRows
* - selectedColumn
- (CPInteger)selectedColumn
* - selectedRow
* - isColumnSelected:
* - isRowSelected:
* - selectAll:
*/
- (BOOL)isColumnSelected:(CPInteger)aColumn
{
return [_selectedColumnIndexes containsIndex:aColumn];
}
- (BOOL)isRowSelected:(CPInteger)aRow
{
return [_selectedRowIndexes containsIndex:aRow];
}
/*
- (void)selectAll:
* - deselectAll:
* - allowsTypeSelect
* - setAllowsTypeSelect: