aboutsummaryrefslogtreecommitdiffstats
path: root/Source/SPTableContent.m
diff options
context:
space:
mode:
authorBibiko <bibiko@eva.mpg.de>2011-01-11 19:24:52 +0000
committerBibiko <bibiko@eva.mpg.de>2011-01-11 19:24:52 +0000
commit7d2238af04e18999b4dc83a92d82ac1944c0916d (patch)
treec01797e8873c99cc2d6b094b9d98f32f567c846b /Source/SPTableContent.m
parent15100feadc549801496c6d076931ba9b765ea069 (diff)
downloadsequelpro-7d2238af04e18999b4dc83a92d82ac1944c0916d.tar.gz
sequelpro-7d2238af04e18999b4dc83a92d82ac1944c0916d.tar.bz2
sequelpro-7d2238af04e18999b4dc83a92d82ac1944c0916d.zip
• fixed several issues for validation and other stuff while editing of MySQL data tables if user re-ordered columns
Diffstat (limited to 'Source/SPTableContent.m')
-rw-r--r--Source/SPTableContent.m15
1 files changed, 12 insertions, 3 deletions
diff --git a/Source/SPTableContent.m b/Source/SPTableContent.m
index 3db3917b..6213549d 100644
--- a/Source/SPTableContent.m
+++ b/Source/SPTableContent.m
@@ -2792,7 +2792,7 @@
* -2 for other errors
* and the used WHERE clause to identify
*/
-- (NSArray*)fieldEditStatusForRow:(NSInteger)rowIndex andColumn:(NSInteger)columnIndex
+- (NSArray*)fieldEditStatusForRow:(NSInteger)rowIndex andColumn:(NSNumber *)columnIndex
{
NSDictionary *columnDefinition = nil;
@@ -2927,10 +2927,12 @@
NSInteger row = -1;
NSInteger column = -1;
+ NSInteger editedColumn = -1;
if(contextInfo) {
row = [[contextInfo objectForKey:@"row"] integerValue];
column = [[contextInfo objectForKey:@"column"] integerValue];
+ editedColumn = [[contextInfo objectForKey:@"editedColumn"] integerValue];
}
if (data && contextInfo) {
@@ -2966,8 +2968,8 @@
[[tableDocumentInstance parentWindow] makeFirstResponder:tableContentView];
- if(row > -1 && column > -1)
- [tableContentView editColumn:column row:row withEvent:nil select:YES];
+ if(row > -1 && editedColumn > -1)
+ [tableContentView editColumn:editedColumn row:row withEvent:nil select:YES];
}
#pragma mark -
@@ -4058,6 +4060,12 @@
if ([cellValue isNSNull])
cellValue = [NSString stringWithString:[prefs objectForKey:SPNullValue]];
+ NSInteger editedColumn = 0;
+ for(NSTableColumn* col in [tableContentView tableColumns]) {
+ if([[col identifier] isEqualToNumber:[aTableColumn identifier]]) break;
+ editedColumn++;
+ }
+
[fieldEditor editWithObject:cellValue
fieldName:[[aTableColumn headerCell] stringValue]
usingEncoding:[mySQLConnection stringEncoding]
@@ -4068,6 +4076,7 @@
contextInfo:[NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithInteger:rowIndex], @"row",
[aTableColumn identifier], @"column",
+ [NSNumber numberWithInteger:editedColumn], @"editedColumn",
[NSNumber numberWithBool:isFieldEditable], @"isFieldEditable",
nil]];