From: Andrew M. <fit...@us...> - 2006-08-31 04:22:04
|
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 |