aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Source/CMCopyTable.m22
-rw-r--r--Source/SPTableView.m11
2 files changed, 20 insertions, 13 deletions
diff --git a/Source/CMCopyTable.m b/Source/CMCopyTable.m
index 99bff17a..c28a5a3a 100644
--- a/Source/CMCopyTable.m
+++ b/Source/CMCopyTable.m
@@ -407,9 +407,27 @@ int MENU_EDIT_COPY_AS_SQL = 2002;
columnDefinitions = [[NSArray alloc] initWithArray:columnDefs];
}
-- (BOOL)acceptsFirstResponder
+- (void)keyDown:(NSEvent *)theEvent
{
- return NO;
+
+ // RETURN or ENTER invoke editing mode for selected row
+ // by calling tableView:shouldEditTableColumn: to validate
+ if([[[[self delegate] class] description] isEqualToString:@"TableContent"]) {
+
+ id tableContentView = [[self delegate] valueForKeyPath:@"tableContentView"];
+ if([tableContentView numberOfSelectedRows] == 1 && ([theEvent keyCode] == 36 || [theEvent keyCode] == 76)) {
+ if([[self delegate] tableView:tableContentView shouldEditTableColumn:[[tableContentView tableColumns] objectAtIndex:0] row:[tableContentView selectedRow]]) {
+ [self editColumn:0 row:[self selectedRow] withEvent:nil select:YES];
+ return;
+ }
+ }
+
+ }
+
+ [super keyDown:theEvent];
+
}
+
+
@end
diff --git a/Source/SPTableView.m b/Source/SPTableView.m
index f6af2c16..4d97b6bb 100644
--- a/Source/SPTableView.m
+++ b/Source/SPTableView.m
@@ -59,15 +59,4 @@
return YES;
}
-- (void)keyDown:(NSEvent *)theEvent
-{
- if([self numberOfSelectedRows] == 1 && ([theEvent keyCode] == 36 || [theEvent keyCode] == 76))
- {
- [self editColumn:0 row:[self selectedRow] withEvent:nil select:YES];
- }
- else {
- [super keyDown:theEvent];
- }
-}
-
@end