Corrections to the outline view and the table view.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@14148 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
gcasa 2002-07-14 23:44:48 +00:00
parent 7c67f5f344
commit 374d957711
3 changed files with 39 additions and 22 deletions

View file

@ -1,3 +1,15 @@
2002-07-14 Gregory John Casamento <greg_casamento@yahoo.com>
* Source/NSTableView.m:
[-NSTableView _editNextEditableCellAfterRow:column:] corrected
a problem with the loop which seeks the next editable cell. It
was using incorrect values in the call to isCellEditable in the
second for which was causing an exception to be thrown.
* Source/NSOutlineView.m: ([-editColumn:row:withEvent:select:])
corrected a problem in this method which was causing the cell
to be drawn incorrectly when editing a column other than the
outline column.
Fri Jul 12 12:55:17 2002 Nicola Pero <n.pero@mi.flashnet.it>
Patch from Benhur Stein <benhur-gnustep@inf.ufsm.br>:

View file

@ -1125,7 +1125,6 @@ static NSImage *unexpandable = nil;
row: (int) rowIndex
{
id item = [self itemAtRow: rowIndex];
if ([_delegate respondsToSelector:
@selector(outlineView:shouldEditTableColumn:item:)])
{
@ -1582,6 +1581,7 @@ static NSImage *unexpandable = nil;
// of editing.
if (_dataSource_editable == NO)
{
NSLog(@"Data source not editable...");
return;
}
@ -1677,9 +1677,12 @@ static NSImage *unexpandable = nil;
image = unexpandable;
}
// move the drawing rect over like in the drawRow routine...
drawingRect = [self frameOfCellAtColumn: columnIndex row: rowIndex];
if(tb == [self outlineTableColumn])
{
level = [self levelForItem: item];
indentationFactor = _indentationPerLevel * level;
drawingRect = [self frameOfCellAtColumn: columnIndex row: rowIndex];
drawingRect.origin.x += indentationFactor + 5 + [image size].width;
drawingRect.size.width -= indentationFactor + 5 + [image size].width;
@ -1700,6 +1703,8 @@ static NSImage *unexpandable = nil;
imageRect.size.width = [image size].width;
imageRect.size.height = [image size].height;
[imageCell drawWithFrame: imageRect inView: self];
}
if (flag)
{
[_editedCell selectWithFrame: drawingRect

View file

@ -2729,7 +2729,6 @@ _isCellEditable (id delegate, NSArray *tableColumns,
{
{
NSTableColumn *tb;
tb = [tableColumns objectAtIndex: column];
if ([tableView _shouldEditTableColumn: tb
row: row] == NO)
@ -6588,6 +6587,7 @@ byExtendingSelection: (BOOL)flag
column: (int)column
{
int i, j;
if (row > -1)
{
// First look for cells in the same row
@ -6605,7 +6605,7 @@ byExtendingSelection: (BOOL)flag
{
for (j = 0; j < _numberOfColumns; j++)
{
if (_isCellEditable (_delegate, _tableColumns, self, row, i) == YES)
if (_isCellEditable (_delegate, _tableColumns, self, i, j) == YES)
{
[self editColumn: j row: i withEvent: nil select: YES];
return YES;