mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-09-05 10:23:39 +00:00
CPTableView delegate method tableView:setObjectValue:forTableColumn:row: is now being called for cells with CPButton data views, as it should. Fixes bug #466
This commit is contained in:
+12
-6
@@ -2054,6 +2054,7 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
{
|
||||
var row = rowArray[rowIndex],
|
||||
dataView = [self _newDataViewForRow:row tableColumn:tableColumn],
|
||||
isButton = [dataView isKindOfClass:[CPButton class]],
|
||||
isTextField = [dataView isKindOfClass:[CPTextField class]];
|
||||
|
||||
[dataView setFrame:[self frameOfDataViewAtColumn:column row:row]];
|
||||
@@ -2072,20 +2073,26 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
|
||||
_dataViewsForTableColumns[tableColumnUID][row] = dataView;
|
||||
|
||||
if (_editingCellIndex && _editingCellIndex.x === column && _editingCellIndex.y === row) {
|
||||
_editingCellIndex = undefined;
|
||||
|
||||
if (isTextField) {
|
||||
if (isButton || (_editingCellIndex && _editingCellIndex.x === column && _editingCellIndex.y === row))
|
||||
{
|
||||
if (!isButton)
|
||||
_editingCellIndex = undefined;
|
||||
|
||||
if (isTextField)
|
||||
{
|
||||
[dataView setEditable:YES];
|
||||
[dataView setSendsActionOnEndEditing:YES];
|
||||
[dataView setSelectable:YES];
|
||||
[dataView selectText:nil]; // Doesn't seem to actually work (yet?).
|
||||
}
|
||||
|
||||
[dataView setTarget:self];
|
||||
[dataView setAction:@selector(_commitDataViewObjectValue:)];
|
||||
dataView.tableViewEditedColumnObj = tableColumn;
|
||||
dataView.tableViewEditedRowIndex = row;
|
||||
} else if (isTextField) {
|
||||
}
|
||||
else if (isTextField)
|
||||
{
|
||||
[dataView setEditable:NO];
|
||||
[dataView setSelectable:NO];
|
||||
}
|
||||
@@ -2684,7 +2691,6 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
|
||||
rowIndex = [self rowAtPoint:aPoint];
|
||||
if (rowIndex !== -1)
|
||||
{
|
||||
|
||||
if (_implementedDelegateMethods & CPTableViewDelegate_tableView_shouldEditTableColumn_row_)
|
||||
shouldEdit = [_delegate tableView:self shouldEditTableColumn:column row:rowIndex];
|
||||
if (shouldEdit)
|
||||
|
||||
Reference in New Issue
Block a user