diff options
author | Marius Ursache <marius@marius.me.uk> | 2013-11-11 02:28:11 -0800 |
---|---|---|
committer | Marius Ursache <marius@marius.me.uk> | 2013-11-11 02:28:11 -0800 |
commit | d46ab590d6a76894b7f282159663f00e5df511ef (patch) | |
tree | 1cbe404daf3c106f9809d5db540154e79e8a9b23 | |
parent | c769bd0a420bdd1273c43b91b28a818bfd5f5008 (diff) | |
parent | df35d702fe561629fddfa66cd99d0839b8e05910 (diff) | |
download | sequelpro-d46ab590d6a76894b7f282159663f00e5df511ef.tar.gz sequelpro-d46ab590d6a76894b7f282159663f00e5df511ef.tar.bz2 sequelpro-d46ab590d6a76894b7f282159663f00e5df511ef.zip |
Merge pull request #1853 from bamse16/master
beginSheetForDirectory: updates for OSX 10.6+ SDK
-rw-r--r-- | Source/SPDatabaseDocument.m | 34 | ||||
-rw-r--r-- | Source/SPExportController.m | 26 | ||||
-rw-r--r-- | Source/SPProcessListController.m | 57 | ||||
-rw-r--r-- | Source/SPQueryController.m | 20 | ||||
-rw-r--r-- | Source/SPServerVariablesController.m | 35 |
5 files changed, 68 insertions, 104 deletions
diff --git a/Source/SPDatabaseDocument.m b/Source/SPDatabaseDocument.m index 05c25e92..6a3e4151 100644 --- a/Source/SPDatabaseDocument.m +++ b/Source/SPDatabaseDocument.m @@ -2305,7 +2305,18 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase"; [panel setAllowsOtherFileTypes:YES]; [panel setCanSelectHiddenExtension:YES]; - [panel beginSheetForDirectory:nil file:@"CreateSyntax" modalForWindow:createTableSyntaxWindow modalDelegate:self didEndSelector:@selector(savePanelDidEnd:returnCode:contextInfo:) contextInfo:SPCreateSyntx]; + [panel setNameFieldStringValue:[NSString stringWithFormat:@"CreateSyntax-%@", [self table]]]; + [panel beginSheetModalForWindow:createTableSyntaxWindow completionHandler:^(NSInteger returnCode) { + if (returnCode == NSOKButton) { + NSString *createSyntax = [createTableSyntaxTextView string]; + + if ([createSyntax length] > 0) { + NSString *output = [NSString stringWithFormat:@"-- %@ '%@'\n\n%@\n", NSLocalizedString(@"Create syntax for", @"create syntax for table comment"), [self table], createSyntax]; + + [output writeToURL:[panel URL] atomically:YES encoding:NSUTF8StringEncoding error:NULL]; + } + } + }]; } /** @@ -3686,27 +3697,6 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase"; } /** - * Called when the NSSavePanel sheet ends. Writes the server variables to the selected file if required. - */ -- (void)savePanelDidEnd:(NSSavePanel *)sheet returnCode:(NSInteger)returnCode contextInfo:(NSString *)contextInfo -{ -#ifndef SP_CODA - if (returnCode == NSOKButton) { - if ([contextInfo isEqualToString:SPCreateSyntx]) { - - NSString *createSyntax = [createTableSyntaxTextView string]; - - if ([createSyntax length] > 0) { - NSString *output = [NSString stringWithFormat:@"-- %@ '%@'\n\n%@\n", NSLocalizedString(@"Create syntax for", @"create syntax for table comment"), [self table], createSyntax]; - - [output writeToURL:[sheet URL] atomically:YES encoding:NSUTF8StringEncoding error:NULL]; - } - } - } -#endif -} - -/** * Return the createTableSyntaxWindow */ - (NSWindow *)getCreateTableSyntaxWindow diff --git a/Source/SPExportController.m b/Source/SPExportController.m index 3fc5fbf0..4ffbe085 100644 --- a/Source/SPExportController.m +++ b/Source/SPExportController.m @@ -399,13 +399,14 @@ static const NSString *SPSQLExportDropEnabled = @"SQLExportDropEnabled"; [panel setCanChooseFiles:NO]; [panel setCanChooseDirectories:YES]; [panel setCanCreateDirectories:YES]; - - [panel beginSheetForDirectory:[exportPathField stringValue] - file:nil - modalForWindow:[self window] - modalDelegate:self - didEndSelector:@selector(savePanelDidEnd:returnCode:contextInfo:) - contextInfo:nil]; + + [panel setDirectoryURL:[NSURL URLWithString:[exportPathField stringValue]]]; + [panel beginSheetModalForWindow:[self window] completionHandler:^(NSInteger returnCode) { + if (returnCode == NSOKButton) { + [exportPathField setStringValue:[[panel directoryURL] path]]; + [prefs setObject:[[panel directoryURL] path] forKey:SPExportLastDirectory]; + } + }]; } /** @@ -699,17 +700,6 @@ static const NSString *SPSQLExportDropEnabled = @"SQLExportDropEnabled"; } /** - * Invoked when the user dismisses the save panel. Updates the selected directory if they clicked OK. - */ -- (void)savePanelDidEnd:(NSSavePanel *)panel returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo -{ - if (returnCode == NSOKButton) { - [exportPathField setStringValue:[panel directory]]; - [prefs setObject:[panel directory] forKey:SPExportLastDirectory]; - } -} - -/** * Menu item validation. */ - (BOOL)validateMenuItem:(NSMenuItem *)menuItem diff --git a/Source/SPProcessListController.m b/Source/SPProcessListController.m index 913035d4..1db30726 100644 --- a/Source/SPProcessListController.m +++ b/Source/SPProcessListController.m @@ -235,7 +235,32 @@ static NSString *SPTableViewIDColumnIdentifier = @"Id"; [panel setAllowsOtherFileTypes:YES]; [panel setCanSelectHiddenExtension:YES]; - [panel beginSheetForDirectory:nil file:@"ServerProcesses" modalForWindow:[self window] modalDelegate:self didEndSelector:@selector(savePanelDidEnd:returnCode:contextInfo:) contextInfo:nil]; + [panel setNameFieldStringValue:@"ServerProcesses"]; + [panel beginSheetModalForWindow:[self window] completionHandler:^(NSInteger returnCode) { + if (returnCode == NSOKButton) { + if ([processesFiltered count] > 0) { + NSMutableString *processesString = [NSMutableString stringWithFormat:@"# MySQL server proceese for %@\n\n", [[[NSApp delegate] frontDocument] host]]; + + for (NSDictionary *process in processesFiltered) + { + NSString *stringTmp = [NSString stringWithFormat:@"%@ %@ %@ %@ %@ %@ %@ %@", + [process objectForKey:@"Id"], + [process objectForKey:@"User"], + [process objectForKey:@"Host"], + [process objectForKey:@"db"], + [process objectForKey:@"Command"], + [process objectForKey:@"Time"], + [process objectForKey:@"State"], + [process objectForKey:@"Info"]]; + + [processesString appendString:stringTmp]; + [processesString appendString:@"\n"]; + } + + [processesString writeToURL:[panel URL] atomically:YES encoding:NSUTF8StringEncoding error:NULL]; + } + } + }]; } /** @@ -395,36 +420,6 @@ static NSString *SPTableViewIDColumnIdentifier = @"Id"; } /** - * Invoked when the save panel is dismissed. - */ -- (void)savePanelDidEnd:(NSSavePanel *)panel returnCode:(NSInteger)returnCode contextInfo:(NSString *)contextInfo -{ - if (returnCode == NSOKButton) { - if ([processesFiltered count] > 0) { - NSMutableString *processesString = [NSMutableString stringWithFormat:@"# MySQL server proceese for %@\n\n", [[[NSApp delegate] frontDocument] host]]; - - for (NSDictionary *process in processesFiltered) - { - NSString *stringTmp = [NSString stringWithFormat:@"%@ %@ %@ %@ %@ %@ %@ %@", - [process objectForKey:@"Id"], - [process objectForKey:@"User"], - [process objectForKey:@"Host"], - [process objectForKey:@"db"], - [process objectForKey:@"Command"], - [process objectForKey:@"Time"], - [process objectForKey:@"State"], - [process objectForKey:@"Info"]]; - - [processesString appendString:stringTmp]; - [processesString appendString:@"\n"]; - } - - [processesString writeToURL:[panel URL] atomically:YES encoding:NSUTF8StringEncoding error:NULL]; - } - } -} - -/** * Menu item validation. */ - (BOOL)validateMenuItem:(NSMenuItem *)menuItem diff --git a/Source/SPQueryController.m b/Source/SPQueryController.m index 929de617..8febfd2b 100644 --- a/Source/SPQueryController.m +++ b/Source/SPQueryController.m @@ -228,7 +228,13 @@ static SPQueryController *sharedQueryController = nil; [panel setAccessoryView:saveLogView]; - [panel beginSheetForDirectory:nil file:NSLocalizedString(@"ConsoleLog", @"Console : Save as : Initial filename") modalForWindow:[self window] modalDelegate:self didEndSelector:@selector(savePanelDidEnd:returnCode:contextInfo:) contextInfo:NULL]; + [panel setNameFieldStringValue:NSLocalizedString(@"ConsoleLog", @"Console : Save as : Initial filename")]; + [panel beginSheetModalForWindow:[self window] completionHandler:^(NSInteger returnCode) { + if (returnCode == NSOKButton) { + [[self _getConsoleStringWithTimeStamps:[includeTimeStampsButton state] + connections:[includeConnectionButton state]] writeToFile:[[panel URL] path] atomically:YES encoding:NSUTF8StringEncoding error:NULL]; + } + }]; #endif } @@ -310,18 +316,6 @@ static SPQueryController *sharedQueryController = nil; #endif } -/** - * Called when the NSSavePanel sheet ends. Writes the console's current content to the selected file if required. - */ -- (void)savePanelDidEnd:(NSSavePanel *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo -{ -#ifndef SP_CODA - if (returnCode == NSOKButton) { - [[self _getConsoleStringWithTimeStamps:[includeTimeStampsButton state] connections:[includeConnectionButton state]] writeToFile:[[sheet URL] path] atomically:YES encoding:NSUTF8StringEncoding error:NULL]; - } -#endif -} - #pragma mark - #pragma mark Other diff --git a/Source/SPServerVariablesController.m b/Source/SPServerVariablesController.m index 0d591f2f..b2afbc13 100644 --- a/Source/SPServerVariablesController.m +++ b/Source/SPServerVariablesController.m @@ -133,7 +133,21 @@ [panel setAllowsOtherFileTypes:YES]; [panel setCanSelectHiddenExtension:YES]; - [panel beginSheetForDirectory:nil file:@"ServerVariables" modalForWindow:[self window] modalDelegate:self didEndSelector:@selector(savePanelDidEnd:returnCode:contextInfo:) contextInfo:nil]; + [panel setNameFieldStringValue:@"ServerVariables"]; + [panel beginSheetModalForWindow:[self window] completionHandler:^(NSInteger returnCode) { + if (returnCode == NSOKButton) { + if ([variablesFiltered count] > 0) { + NSMutableString *variablesString = [NSMutableString stringWithFormat:@"# MySQL server variables for %@\n\n", [[(SPAppController*)[NSApp delegate] frontDocument] host]]; + + for (NSDictionary *variable in variablesFiltered) + { + [variablesString appendFormat:@"%@ = %@\n", [variable objectForKey:@"Variable_name"], [variable objectForKey:@"Value"]]; + } + + [variablesString writeToURL:[panel URL] atomically:YES encoding:NSUTF8StringEncoding error:NULL]; + } + } + }]; } @@ -164,25 +178,6 @@ } /** - * Invoked when the save panel is dismissed. - */ -- (void)savePanelDidEnd:(NSSavePanel *)panel returnCode:(NSInteger)returnCode contextInfo:(NSString *)contextInfo -{ - if (returnCode == NSOKButton) { - if ([variablesFiltered count] > 0) { - NSMutableString *variablesString = [NSMutableString stringWithFormat:@"# MySQL server variables for %@\n\n", [[(SPAppController*)[NSApp delegate] frontDocument] host]]; - - for (NSDictionary *variable in variablesFiltered) - { - [variablesString appendFormat:@"%@ = %@\n", [variable objectForKey:@"Variable_name"], [variable objectForKey:@"Value"]]; - } - - [variablesString writeToURL:[panel URL] atomically:YES encoding:NSUTF8StringEncoding error:NULL]; - } - } -} - -/** * Menu item validation. */ - (BOOL)validateMenuItem:(NSMenuItem *)menuItem |