@@ -160,15 +160,12 @@ - (IBAction)closeSheet:(id)sender
160
160
*/
161
161
- (void )closeAndStopProgressSheet
162
162
{
163
- if (![NSThread isMainThread ]) {
164
- [self performSelectorOnMainThread: @selector (closeAndStopProgressSheet ) withObject: nil waitUntilDone: YES ];
165
- return ;
166
- }
167
-
168
- [NSApp endSheet: singleProgressSheet];
169
- [singleProgressSheet orderOut: nil ];
170
- [[singleProgressBar onMainThread ] stopAnimation: self ];
171
- [[singleProgressBar onMainThread ] setMaxValue: 100 ];
163
+ SPMainQSync (^{
164
+ [NSApp endSheet: singleProgressSheet];
165
+ [singleProgressSheet orderOut: nil ];
166
+ [singleProgressBar stopAnimation: self ];
167
+ [singleProgressBar setMaxValue: 100 ];
168
+ });
172
169
}
173
170
174
171
#pragma mark -
@@ -762,16 +759,18 @@ - (void)importCSVFile:(NSString *)filename
762
759
if ([csvFileHandle compressionFormat ] == SPBzip2Compression) useIndeterminate = YES ;
763
760
764
761
// Reset progress interface
765
- [[errorsView onMainThread ] setString: @" " ];
766
- [[singleProgressTitle onMainThread ] setStringValue: NSLocalizedString(@" Importing CSV" , @" text showing that the application is importing CSV" )];
767
- [[singleProgressText onMainThread ] setStringValue: NSLocalizedString(@" Reading..." , @" text showing that app is reading dump" )];
768
- [[singleProgressBar onMainThread ] setIndeterminate: YES ];
769
- [[singleProgressBar onMainThread ] setUsesThreadedAnimation: YES ];
770
- [[singleProgressBar onMainThread ] startAnimation: self ];
771
-
772
- // Open the progress sheet
773
- [[NSApp onMainThread ] beginSheet: singleProgressSheet modalForWindow: [tableDocumentInstance parentWindow ] modalDelegate: self didEndSelector: nil contextInfo: nil ];
774
- [[singleProgressSheet onMainThread ] makeKeyWindow ];
762
+ SPMainQSync (^{
763
+ [errorsView setString: @" " ];
764
+ [singleProgressTitle setStringValue: NSLocalizedString(@" Importing CSV" , @" text showing that the application is importing CSV" )];
765
+ [singleProgressText setStringValue: NSLocalizedString(@" Reading..." , @" text showing that app is reading dump" )];
766
+ [singleProgressBar setIndeterminate: YES ];
767
+ [singleProgressBar setUsesThreadedAnimation: YES ];
768
+ [singleProgressBar startAnimation: self ];
769
+
770
+ // Open the progress sheet
771
+ [NSApp beginSheet: singleProgressSheet modalForWindow: [tableDocumentInstance parentWindow ] modalDelegate: self didEndSelector: nil contextInfo: nil ];
772
+ [singleProgressSheet makeKeyWindow ];
773
+ });
775
774
776
775
[tableDocumentInstance setQueryMode: SPImportExportQueryMode];
777
776
@@ -936,11 +935,13 @@ - (void)importCSVFile:(NSString *)filename
936
935
}
937
936
938
937
// Reset progress interface and open the progress sheet
939
- [[singleProgressBar onMainThread ] setIndeterminate: useIndeterminate];
940
- [[singleProgressBar onMainThread ] setMaxValue: fileTotalLength];
941
- [[singleProgressBar onMainThread ] startAnimation: self ];
942
- [[NSApp onMainThread ] beginSheet: singleProgressSheet modalForWindow: [tableDocumentInstance parentWindow ] modalDelegate: self didEndSelector: nil contextInfo: nil ];
943
- [[singleProgressSheet onMainThread ] makeKeyWindow ];
938
+ SPMainQSync (^{
939
+ [singleProgressBar setIndeterminate: useIndeterminate];
940
+ [singleProgressBar setMaxValue: fileTotalLength];
941
+ [singleProgressBar startAnimation: self ];
942
+ [NSApp beginSheet: singleProgressSheet modalForWindow: [tableDocumentInstance parentWindow ] modalDelegate: self didEndSelector: nil contextInfo: nil ];
943
+ [singleProgressSheet makeKeyWindow ];
944
+ });
944
945
945
946
// Set up index sets for use during row enumeration
946
947
for (i = 0 ; i < [fieldMappingArray count ]; i++) {
@@ -1183,7 +1184,7 @@ - (void)importCSVFile:(NSString *)filename
1183
1184
// Select the new table
1184
1185
1185
1186
// Update current database tables
1186
- [tablesListInstance performSelectorOnMainThread: @selector ( updateTables: ) withObject: self waitUntilDone: YES ];
1187
+ [[ tablesListInstance onMainThread ] updateTables: self ];
1187
1188
1188
1189
// Re-query the structure of all databases in the background
1189
1190
[NSThread detachNewThreadWithName: SPCtxt (@" SPNavigatorController database structure querier" ,tableDocumentInstance) target: [tableDocumentInstance databaseStructureRetrieval ] selector: @selector (queryDbStructureWithUserInfo: ) object: @{@" forceUpdate" : @YES }];
@@ -1674,7 +1675,7 @@ - (NSArray *)toolbarSelectableItemIdentifiers:(NSToolbar *)toolbar
1674
1675
- (void )showErrorSheetWithMessage: (NSString *)message
1675
1676
{
1676
1677
if (![NSThread isMainThread ]) {
1677
- [self performSelectorOnMainThread: @selector ( showErrorSheetWithMessage: ) withObject: message waitUntilDone: YES ];
1678
+ [[ self onMainThread ] showErrorSheetWithMessage: message];
1678
1679
return ;
1679
1680
}
1680
1681
0 commit comments