Update of /cvsroot/radmind/radmind-assistant/rte
In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv5788
Added Files:
RTEEditableTableView.h RTEEditableTableView.m
Log Message:
Basic editable tableview with delegated editing.
--- NEW FILE: RTEEditableTableView.h ---
/*
* Copyright (c) 2006 Regents of The University of Michigan.
* All Rights Reserved. See COPYRIGHT.
*/
#import <Cocoa/Cocoa.h>
@interface RTEEditableTableView : NSTableView
{
}
@end
/* additional delegate methods */
@interface NSObject(RTEEditableTableViewEventDelegate)
- ( BOOL )handleChangedText: ( NSString * )newstring
forTable: ( RTEEditableTableView * )table
column: ( int )column;
@end
--- NEW FILE: RTEEditableTableView.m ---
/*
* Copyright (c) 2005 Regents of The University of Michigan.
* All Rights Reserved. See COPYRIGHT.
*/
#import "RTEEditableTableView.h"
@implementation RTEEditableTableView
- ( BOOL )needsPanelToBecomeKey
{
return( YES );
}
- ( void )textDidEndEditing: ( NSNotification * )aNotification
{
int textMovement;
textMovement = [[[ aNotification userInfo ] objectForKey:
@"NSTextMovement" ] intValue ];
if ( textMovement == NSReturnTextMovement ||
textMovement == NSTabTextMovement ||
textMovement == NSBacktabTextMovement ) {
int column = [ self editedColumn ];
if ( ! [[ self delegate ] respondsToSelector:
@selector( handleChangedText:forTable:column: ) ] ) {
NSBeep();
[ super textDidEndEditing: aNotification ];
return;
}
[[ self delegate ] handleChangedText: [[ aNotification object ] string ]
forTable: self
column: column ];
[[ self window ] endEditingFor: self ];
[[ self window ] makeFirstResponder: self ];
[ self reloadData ];
}
[ super textDidEndEditing: aNotification ];
}
@end
|