diff options
author | rowanbeentje <rowan@beent.je> | 2010-07-25 00:02:01 +0000 |
---|---|---|
committer | rowanbeentje <rowan@beent.je> | 2010-07-25 00:02:01 +0000 |
commit | c073e11612e36a7f9b8d7033faf08d663dd40c1f (patch) | |
tree | 6cbb08281de2c61148d4490be6449bfb15c34cf6 | |
parent | 477d0be75f3433a457f22a89b266235dae0aa164 (diff) | |
download | sequelpro-c073e11612e36a7f9b8d7033faf08d663dd40c1f.tar.gz sequelpro-c073e11612e36a7f9b8d7033faf08d663dd40c1f.tar.bz2 sequelpro-c073e11612e36a7f9b8d7033faf08d663dd40c1f.zip |
- Fix positioning bug when using Import From Clipboard
- Add controllable encoding support when importing CSV and SQL files, including a new default "Autodetect" option. Add UniversalDetector framework to support encoding autodetection. This should address Issue #720.
l--------- | Frameworks/UniversalDetector.framework/Headers | 1 | ||||
l--------- | Frameworks/UniversalDetector.framework/Resources | 1 | ||||
l--------- | Frameworks/UniversalDetector.framework/UniversalDetector | 1 | ||||
-rwxr-xr-x | Frameworks/UniversalDetector.framework/Versions/A/Headers/UniversalDetector.h | 26 | ||||
-rw-r--r-- | Frameworks/UniversalDetector.framework/Versions/A/Resources/English.lproj/InfoPlist.strings | bin | 0 -> 204 bytes | |||
-rw-r--r-- | Frameworks/UniversalDetector.framework/Versions/A/Resources/Info.plist | 22 | ||||
-rwxr-xr-x | Frameworks/UniversalDetector.framework/Versions/A/UniversalDetector | bin | 0 -> 553844 bytes | |||
l--------- | Frameworks/UniversalDetector.framework/Versions/Current | 1 | ||||
-rw-r--r-- | Interfaces/English.lproj/ImportAccessory.xib | 1517 | ||||
-rw-r--r-- | Source/SPDataImport.h | 1 | ||||
-rw-r--r-- | Source/SPDataImport.m | 104 | ||||
-rw-r--r-- | sequel-pro.xcodeproj/project.pbxproj | 6 |
12 files changed, 1429 insertions, 251 deletions
diff --git a/Frameworks/UniversalDetector.framework/Headers b/Frameworks/UniversalDetector.framework/Headers new file mode 120000 index 00000000..a177d2a6 --- /dev/null +++ b/Frameworks/UniversalDetector.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers
\ No newline at end of file diff --git a/Frameworks/UniversalDetector.framework/Resources b/Frameworks/UniversalDetector.framework/Resources new file mode 120000 index 00000000..953ee36f --- /dev/null +++ b/Frameworks/UniversalDetector.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources
\ No newline at end of file diff --git a/Frameworks/UniversalDetector.framework/UniversalDetector b/Frameworks/UniversalDetector.framework/UniversalDetector new file mode 120000 index 00000000..8a32fbcc --- /dev/null +++ b/Frameworks/UniversalDetector.framework/UniversalDetector @@ -0,0 +1 @@ +Versions/Current/UniversalDetector
\ No newline at end of file diff --git a/Frameworks/UniversalDetector.framework/Versions/A/Headers/UniversalDetector.h b/Frameworks/UniversalDetector.framework/Versions/A/Headers/UniversalDetector.h new file mode 100755 index 00000000..5d8d023b --- /dev/null +++ b/Frameworks/UniversalDetector.framework/Versions/A/Headers/UniversalDetector.h @@ -0,0 +1,26 @@ +#import <Foundation/Foundation.h> + +@interface UniversalDetector:NSObject +{ + void *detectorPtr; + NSString *charsetName; + float confidence; +} + +-(id)init; +-(void)dealloc; + +-(void)analyzeData:(NSData *)data; +-(void)analyzeBytes:(const char *)data length:(int)len; +-(void)reset; + +-(BOOL)done; +-(NSString *)MIMECharset; +-(NSStringEncoding)encoding; +-(float)confidence; + +//-(void)debugDump; + ++(UniversalDetector *)detector; + +@end diff --git a/Frameworks/UniversalDetector.framework/Versions/A/Resources/English.lproj/InfoPlist.strings b/Frameworks/UniversalDetector.framework/Versions/A/Resources/English.lproj/InfoPlist.strings Binary files differnew file mode 100644 index 00000000..7080cf94 --- /dev/null +++ b/Frameworks/UniversalDetector.framework/Versions/A/Resources/English.lproj/InfoPlist.strings diff --git a/Frameworks/UniversalDetector.framework/Versions/A/Resources/Info.plist b/Frameworks/UniversalDetector.framework/Versions/A/Resources/Info.plist new file mode 100644 index 00000000..2e89cad2 --- /dev/null +++ b/Frameworks/UniversalDetector.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>English</string> + <key>CFBundleExecutable</key> + <string>UniversalDetector</string> + <key>CFBundleIdentifier</key> + <string>org.mozilla.universalchardet</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundleName</key> + <string>UniversalDetector</string> + <key>CFBundlePackageType</key> + <string>FMWK</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>1.0</string> +</dict> +</plist> diff --git a/Frameworks/UniversalDetector.framework/Versions/A/UniversalDetector b/Frameworks/UniversalDetector.framework/Versions/A/UniversalDetector Binary files differnew file mode 100755 index 00000000..7a63ef2a --- /dev/null +++ b/Frameworks/UniversalDetector.framework/Versions/A/UniversalDetector diff --git a/Frameworks/UniversalDetector.framework/Versions/Current b/Frameworks/UniversalDetector.framework/Versions/Current new file mode 120000 index 00000000..8c7e5a66 --- /dev/null +++ b/Frameworks/UniversalDetector.framework/Versions/Current @@ -0,0 +1 @@ +A
\ No newline at end of file diff --git a/Interfaces/English.lproj/ImportAccessory.xib b/Interfaces/English.lproj/ImportAccessory.xib index e45046af..f39bc725 100644 --- a/Interfaces/English.lproj/ImportAccessory.xib +++ b/Interfaces/English.lproj/ImportAccessory.xib @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> <data> - <int key="IBDocument.SystemTarget">1060</int> + <int key="IBDocument.SystemTarget">1050</int> <string key="IBDocument.SystemVersion">10F569</string> <string key="IBDocument.InterfaceBuilderVersion">788</string> <string key="IBDocument.AppKitVersion">1038.29</string> @@ -12,6 +12,8 @@ </object> <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + <integer value="89"/> </object> <object class="NSArray" key="IBDocument.PluginDependencies"> <bool key="EncodedWithXMLCoder">YES</bool> @@ -38,10 +40,94 @@ <string key="NSClassName">NSApplication</string> </object> <object class="NSCustomView" id="768243701"> - <nil key="NSNextResponder"/> + <reference key="NSNextResponder"/> <int key="NSvFlags">274</int> <object class="NSMutableArray" key="NSSubviews"> <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSPopUpButton" id="508807740"> + <reference key="NSNextResponder" ref="768243701"/> + <int key="NSvFlags">264</int> + <string key="NSFrame">{{189, 76}, {156, 26}}</string> + <reference key="NSSuperview" ref="768243701"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="142158431"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <object class="NSFont" key="NSSupport" id="857116476"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="508807740"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="138115369"> + <reference key="NSMenu" ref="796912126"/> + <string key="NSTitle">Item 1</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <object class="NSCustomResource" key="NSOnImage" id="564253327"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage" id="881993015"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="142158431"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="796912126"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="138115369"/> + </object> + </object> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSTextField" id="621426894"> + <reference key="NSNextResponder" ref="768243701"/> + <int key="NSvFlags">264</int> + <string key="NSFrame">{{17, 82}, {170, 17}}</string> + <reference key="NSSuperview" ref="768243701"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="7839352"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">71304192</int> + <string key="NSContents">Encoding:</string> + <reference key="NSSupport" ref="857116476"/> + <reference key="NSControlView" ref="621426894"/> + <object class="NSColor" key="NSBackgroundColor" id="1043422119"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor" id="210193283"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor" id="107914506"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor" id="847759587"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> <object class="NSBox" id="143318538"> <reference key="NSNextResponder" ref="768243701"/> <int key="NSvFlags">10</int> @@ -55,7 +141,7 @@ <object class="NSButton" id="321311538"> <reference key="NSNextResponder" ref="749758351"/> <int key="NSvFlags">264</int> - <string key="NSFrame">{{2, 63}, {411, 18}}</string> + <string key="NSFrame">{{22, 54}, {411, 18}}</string> <reference key="NSSuperview" ref="749758351"/> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="382295631"> @@ -82,7 +168,7 @@ <object class="NSComboBox" id="455670945"> <reference key="NSNextResponder" ref="749758351"/> <int key="NSvFlags">268</int> - <string key="NSFrame">{{149, 8}, {54, 22}}</string> + <string key="NSFrame">{{169, 2}, {54, 22}}</string> <reference key="NSSuperview" ref="749758351"/> <bool key="NSEnabled">YES</bool> <object class="NSComboBoxCell" key="NSCell" id="224560182"> @@ -101,15 +187,7 @@ <bytes key="NSWhite">MQA</bytes> </object> </object> - <object class="NSColor" key="NSTextColor" id="107914506"> - <int key="NSColorSpace">6</int> - <string key="NSCatalogName">System</string> - <string key="NSColorName">controlTextColor</string> - <object class="NSColor" key="NSColor" id="847759587"> - <int key="NSColorSpace">3</int> - <bytes key="NSWhite">MAA</bytes> - </object> - </object> + <reference key="NSTextColor" ref="107914506"/> <int key="NSVisibleItemCount">2</int> <bool key="NSHasVerticalScroller">YES</bool> <object class="NSMutableArray" key="NSPopUpListData"> @@ -159,10 +237,7 @@ <int key="NSColorSpace">6</int> <string key="NSCatalogName">System</string> <string key="NSColorName">controlBackgroundColor</string> - <object class="NSColor" key="NSColor" id="210193283"> - <int key="NSColorSpace">3</int> - <bytes key="NSWhite">MC42NjY2NjY2ODY1AA</bytes> - </object> + <reference key="NSColor" ref="210193283"/> </object> <reference key="NSTextColor" ref="107914506"/> </object> @@ -200,28 +275,23 @@ <object class="NSTextField" id="88279563"> <reference key="NSNextResponder" ref="749758351"/> <int key="NSvFlags">268</int> - <string key="NSFrame">{{2, 15}, {142, 14}}</string> + <string key="NSFrame">{{2, 7}, {162, 14}}</string> <reference key="NSSuperview" ref="749758351"/> <bool key="NSEnabled">YES</bool> <object class="NSTextFieldCell" key="NSCell" id="206342718"> <int key="NSCellFlags">68288064</int> - <int key="NSCellFlags2">71304192</int> + <int key="NSCellFlags2">71435264</int> <string key="NSContents">Fields enclosed by:</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="88279563"/> - <object class="NSColor" key="NSBackgroundColor" id="1043422119"> - <int key="NSColorSpace">6</int> - <string key="NSCatalogName">System</string> - <string key="NSColorName">controlColor</string> - <reference key="NSColor" ref="210193283"/> - </object> + <reference key="NSBackgroundColor" ref="1043422119"/> <reference key="NSTextColor" ref="107914506"/> </object> </object> <object class="NSComboBox" id="595983007"> <reference key="NSNextResponder" ref="749758351"/> <int key="NSvFlags">265</int> - <string key="NSFrame">{{360, 35}, {54, 22}}</string> + <string key="NSFrame">{{380, 27}, {54, 22}}</string> <reference key="NSSuperview" ref="749758351"/> <bool key="NSEnabled">YES</bool> <object class="NSComboBoxCell" key="NSCell" id="762842881"> @@ -303,12 +373,12 @@ <object class="NSTextField" id="201675078"> <reference key="NSNextResponder" ref="749758351"/> <int key="NSvFlags">265</int> - <string key="NSFrame">{{212, 37}, {143, 17}}</string> + <string key="NSFrame">{{232, 32}, {143, 14}}</string> <reference key="NSSuperview" ref="749758351"/> <bool key="NSEnabled">YES</bool> <object class="NSTextFieldCell" key="NSCell" id="82042584"> - <int key="NSCellFlags">67239424</int> - <int key="NSCellFlags2">71303168</int> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">71435264</int> <string key="NSContents">Fields escaped by:</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="201675078"/> @@ -319,7 +389,7 @@ <object class="NSComboBox" id="704974988"> <reference key="NSNextResponder" ref="749758351"/> <int key="NSvFlags">265</int> - <string key="NSFrame">{{360, 8}, {54, 22}}</string> + <string key="NSFrame">{{380, 2}, {54, 22}}</string> <reference key="NSSuperview" ref="749758351"/> <bool key="NSEnabled">YES</bool> <object class="NSComboBoxCell" key="NSCell" id="658483425"> @@ -402,12 +472,12 @@ <object class="NSTextField" id="381931944"> <reference key="NSNextResponder" ref="749758351"/> <int key="NSvFlags">265</int> - <string key="NSFrame">{{212, 12}, {143, 17}}</string> + <string key="NSFrame">{{232, 7}, {143, 14}}</string> <reference key="NSSuperview" ref="749758351"/> <bool key="NSEnabled">YES</bool> <object class="NSTextFieldCell" key="NSCell" id="391954730"> - <int key="NSCellFlags">67239424</int> - <int key="NSCellFlags2">71303168</int> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">71435264</int> <string key="NSContents">Lines terminated by:</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="381931944"/> @@ -418,7 +488,7 @@ <object class="NSComboBox" id="557825428"> <reference key="NSNextResponder" ref="749758351"/> <int key="NSvFlags">268</int> - <string key="NSFrame">{{149, 36}, {54, 22}}</string> + <string key="NSFrame">{{169, 27}, {54, 22}}</string> <reference key="NSSuperview" ref="749758351"/> <bool key="NSEnabled">YES</bool> <object class="NSComboBoxCell" key="NSCell" id="674293841"> @@ -503,12 +573,12 @@ <object class="NSTextField" id="980919427"> <reference key="NSNextResponder" ref="749758351"/> <int key="NSvFlags">268</int> - <string key="NSFrame">{{2, 40}, {142, 14}}</string> + <string key="NSFrame">{{2, 32}, {162, 14}}</string> <reference key="NSSuperview" ref="749758351"/> <bool key="NSEnabled">YES</bool> <object class="NSTextFieldCell" key="NSCell" id="556711750"> <int key="NSCellFlags">68288064</int> - <int key="NSCellFlags2">71304192</int> + <int key="NSCellFlags2">71435264</int> <string key="NSContents">Fields terminated by:</string> <reference key="NSSupport" ref="26"/> <reference key="NSControlView" ref="980919427"/> @@ -517,11 +587,11 @@ </object> </object> </object> - <string key="NSFrameSize">{416, 84}</string> + <string key="NSFrameSize">{456, 72}</string> <reference key="NSSuperview" ref="143318538"/> </object> </object> - <string key="NSFrame">{{17, 10}, {416, 84}}</string> + <string key="NSFrame">{{-3, 1}, {456, 72}}</string> <reference key="NSSuperview" ref="768243701"/> <string key="NSOffsets">{0, 0}</string> <object class="NSTextFieldCell" key="NSTitleCell"> @@ -544,17 +614,13 @@ <object class="NSPopUpButton" id="841218020"> <reference key="NSNextResponder" ref="768243701"/> <int key="NSvFlags">264</int> - <string key="NSFrame">{{209, 101}, {100, 26}}</string> + <string key="NSFrame">{{189, 104}, {156, 26}}</string> <reference key="NSSuperview" ref="768243701"/> <bool key="NSEnabled">YES</bool> <object class="NSPopUpButtonCell" key="NSCell" id="1032099677"> <int key="NSCellFlags">-2076049856</int> <int key="NSCellFlags2">2048</int> - <object class="NSFont" key="NSSupport" id="857116476"> - <string key="NSName">LucidaGrande</string> - <double key="NSSize">13</double> - <int key="NSfFlags">1044</int> - </object> + <reference key="NSSupport" ref="857116476"/> <reference key="NSControlView" ref="841218020"/> <int key="NSButtonFlags">109199615</int> <int key="NSButtonFlags2">129</int> @@ -569,14 +635,8 @@ <int key="NSKeyEquivModMask">1048576</int> <int key="NSMnemonicLoc">2147483647</int> <int key="NSState">1</int> - <object class="NSCustomResource" key="NSOnImage" id="552574442"> - <string key="NSClassName">NSImage</string> - <string key="NSResourceName">NSMenuCheckmark</string> - </object> - <object class="NSCustomResource" key="NSMixedImage" id="963140762"> - <string key="NSClassName">NSImage</string> - <string key="NSResourceName">NSMenuMixedState</string> - </object> + <reference key="NSOnImage" ref="564253327"/> + <reference key="NSMixedImage" ref="881993015"/> <string key="NSAction">_popUpItemAction:</string> <reference key="NSTarget" ref="1032099677"/> </object> @@ -592,8 +652,8 @@ <string key="NSKeyEquiv"/> <int key="NSKeyEquivModMask">1048576</int> <int key="NSMnemonicLoc">2147483647</int> - <reference key="NSOnImage" ref="552574442"/> - <reference key="NSMixedImage" ref="963140762"/> + <reference key="NSOnImage" ref="564253327"/> + <reference key="NSMixedImage" ref="881993015"/> <string key="NSAction">_popUpItemAction:</string> <reference key="NSTarget" ref="1032099677"/> </object> @@ -608,12 +668,12 @@ <object class="NSTextField" id="640853005"> <reference key="NSNextResponder" ref="768243701"/> <int key="NSvFlags">264</int> - <string key="NSFrame">{{154, 107}, {53, 17}}</string> + <string key="NSFrame">{{17, 110}, {170, 17}}</string> <reference key="NSSuperview" ref="768243701"/> <bool key="NSEnabled">YES</bool> <object class="NSTextFieldCell" key="NSCell" id="379355660"> <int key="NSCellFlags">68288064</int> - <int key="NSCellFlags2">272630784</int> + <int key="NSCellFlags2">71304192</int> <string key="NSContents">Format:</string> <reference key="NSSupport" ref="857116476"/> <reference key="NSControlView" ref="640853005"/> @@ -623,6 +683,7 @@ </object> </object> <string key="NSFrameSize">{450, 135}</string> + <reference key="NSSuperview"/> <object class="NSMutableString" key="NSClassName"> <characters key="NS.bytes">NSView</characters> </object> @@ -634,15 +695,15 @@ <object class="NSWindowTemplate" id="951794958"> <int key="NSWindowStyleMask">15</int> <int key="NSWindowBacking">2</int> - <string key="NSWindowRect">{{131, 75}, {500, 353}}</string> + <string key="NSWindowRect">{{131, 16}, {500, 412}}</string> <int key="NSWTFlags">1954022400</int> <string key="NSWindowTitle">Window</string> <string key="NSWindowClass">NSWindow</string> <nil key="NSViewClass"/> - <string key="NSWindowContentMaxSize">{3.40282e+38, 3.40282e+38}</string> + <string key="NSWindowContentMaxSize">{1.79769e+308, 1.79769e+308}</string> <string key="NSWindowContentMinSize">{500, 353}</string> <object class="NSView" key="NSWindowView" id="544284300"> - <nil key="NSNextResponder"/> + <reference key="NSNextResponder"/> <int key="NSvFlags">256</int> <object class="NSMutableArray" key="NSSubviews"> <bool key="EncodedWithXMLCoder">YES</bool> @@ -659,7 +720,7 @@ <object class="NSTextView" id="770071618"> <reference key="NSNextResponder" ref="51216656"/> <int key="NSvFlags">2322</int> - <string key="NSFrame">{{0, 15}, {500, 14}}</string> + <string key="NSFrameSize">{500, 68}</string> <reference key="NSSuperview" ref="51216656"/> <object class="NSTextContainer" key="NSTextContainer" id="243631584"> <object class="NSLayoutManager" key="NSLayoutManager"> @@ -738,7 +799,7 @@ <nil key="NSDelegate"/> </object> </object> - <string key="NSFrame">{{1, 1}, {500, 124}}</string> + <string key="NSFrame">{{1, 1}, {500, 178}}</string> <reference key="NSSuperview" ref="622997883"/> <reference key="NSNextKeyView" ref="770071618"/> <reference key="NSDocView" ref="770071618"/> @@ -770,7 +831,7 @@ <double key="NSPercent">0.94565218687057495</double> </object> </object> - <string key="NSFrame">{{-1, 195}, {502, 126}}</string> + <string key="NSFrame">{{-1, 200}, {502, 180}}</string> <reference key="NSSuperview" ref="544284300"/> <reference key="NSNextKeyView" ref="51216656"/> <int key="NSsFlags">562</int> @@ -781,7 +842,7 @@ <object class="NSButton" id="762525145"> <reference key="NSNextResponder" ref="544284300"/> <int key="NSvFlags">289</int> - <string key="NSFrame">{{322, 7}, {82, 32}}</string> + <string key="NSFrame">{{322, 12}, {82, 32}}</string> <reference key="NSSuperview" ref="544284300"/> <bool key="NSEnabled">YES</bool> <object class="NSButtonCell" key="NSCell" id="77256603"> @@ -801,7 +862,7 @@ <object class="NSButton" id="660428801"> <reference key="NSNextResponder" ref="544284300"/> <int key="NSvFlags">289</int> - <string key="NSFrame">{{404, 7}, {82, 32}}</string> + <string key="NSFrame">{{404, 12}, {82, 32}}</string> <reference key="NSSuperview" ref="544284300"/> <int key="NSTag">1</int> <bool key="NSEnabled">YES</bool> @@ -831,8 +892,8 @@ <bool key="EncodedWithXMLCoder">YES</bool> <object class="NSCustomView" id="393007690"> <reference key="NSNextResponder" ref="763529399"/> - <int key="NSvFlags">301</int> - <string key="NSFrame">{{18, 6}, {448, 134}}</string> + <int key="NSvFlags">293</int> + <string key="NSFrame">{{2, 3}, {480, 139}}</string> <reference key="NSSuperview" ref="763529399"/> <string key="NSClassName">NSView</string> </object> @@ -841,7 +902,7 @@ <reference key="NSSuperview" ref="603820420"/> </object> </object> - <string key="NSFrame">{{7, 44}, {486, 145}}</string> + <string key="NSFrame">{{7, 49}, {486, 145}}</string> <reference key="NSSuperview" ref="544284300"/> <string key="NSOffsets">{0, 0}</string> <object class="NSTextFieldCell" key="NSTitleCell"> @@ -864,7 +925,7 @@ <object class="NSTextField" id="234640380"> <reference key="NSNextResponder" ref="544284300"/> <int key="NSvFlags">269</int> - <string key="NSFrame">{{175, 329}, {146.219, 17}}</string> + <string key="NSFrame">{{175, 388}, {146, 17}}</string> <reference key="NSSuperview" ref="544284300"/> <bool key="NSEnabled">YES</bool> <object class="NSTextFieldCell" key="NSCell" id="467652780"> @@ -878,11 +939,12 @@ </object> </object> </object> - <string key="NSFrameSize">{500, 353}</string> + <string key="NSFrameSize">{500, 412}</string> + <reference key="NSSuperview"/> </object> <string key="NSScreenRect">{{0, 0}, {1280, 778}}</string> <string key="NSMinSize">{500, 375}</string> - <string key="NSMaxSize">{3.40282e+38, 3.40282e+38}</string> + <string key="NSMaxSize">{1.79769e+308, 1.79769e+308}</string> </object> </object> <object class="IBObjectContainer" key="IBDocument.Objects"> @@ -993,14 +1055,6 @@ <int key="connectionID">56</int> </object> <object class="IBConnectionRecord"> - <object class="IBOutletConnection" key="connection"> - <string key="label">nextKeyView</string> - <reference key="source" ref="841218020"/> - <reference key="destination" ref="321311538"/> - </object> - <int key="connectionID">57</int> - </object> - <object class="IBConnectionRecord"> <object class="IBActionConnection" key="connection"> <string key="label">closeSheet:</string> <reference key="source" ref="1001"/> @@ -1040,6 +1094,30 @@ </object> <int key="connectionID">102</int> </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">nextKeyView</string> + <reference key="source" ref="508807740"/> + <reference key="destination" ref="321311538"/> + </object> + <int key="connectionID">120</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">nextKeyView</string> + <reference key="source" ref="841218020"/> + <reference key="destination" ref="508807740"/> + </object> + <int key="connectionID">122</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">importEncodingPopup</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="508807740"/> + </object> + <int key="connectionID">123</int> + </object> </object> <object class="IBMutableOrderedSet" key="objectRecords"> <object class="NSArray" key="orderedObjects"> @@ -1074,8 +1152,10 @@ <object class="NSMutableArray" key="children"> <bool key="EncodedWithXMLCoder">YES</bool> <reference ref="841218020"/> - <reference ref="640853005"/> <reference ref="143318538"/> + <reference ref="640853005"/> + <reference ref="508807740"/> + <reference ref="621426894"/> </object> <reference key="parent" ref="0"/> <string key="objectName">Import CSV Accessory View</string> @@ -1296,10 +1376,10 @@ <object class="NSMutableArray" key="children"> <bool key="EncodedWithXMLCoder">YES</bool> <reference ref="622997883"/> - <reference ref="603820420"/> - <reference ref="660428801"/> - <reference ref="762525145"/> <reference ref="234640380"/> + <reference ref="762525145"/> + <reference ref="660428801"/> + <reference ref="603820420"/> </object> <reference key="parent" ref="951794958"/> </object> @@ -1385,6 +1465,52 @@ <reference key="object" ref="467652780"/> <reference key="parent" ref="234640380"/> </object> + <object class="IBObjectRecord"> + <int key="objectID">105</int> + <reference key="object" ref="621426894"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="7839352"/> + </object> + <reference key="parent" ref="768243701"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">106</int> + <reference key="object" ref="7839352"/> + <reference key="parent" ref="621426894"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">115</int> + <reference key="object" ref="508807740"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="142158431"/> + </object> + <reference key="parent" ref="768243701"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">116</int> + <reference key="object" ref="142158431"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="796912126"/> + </object> + <reference key="parent" ref="508807740"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">117</int> + <reference key="object" ref="796912126"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="138115369"/> + </object> + <reference key="parent" ref="142158431"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">119</int> + <reference key="object" ref="138115369"/> + <reference key="parent" ref="796912126"/> + </object> </object> </object> <object class="NSMutableDictionary" key="flattenedProperties"> @@ -1400,9 +1526,16 @@ <string>10.ImportedFromIB2</string> <string>103.IBPluginDependency</string> <string>104.IBPluginDependency</string> + <string>105.IBPluginDependency</string> + <string>106.IBPluginDependency</string> <string>11.IBAttributePlaceholdersKey</string> <string>11.IBPluginDependency</string> <string>11.ImportedFromIB2</string> + <string>115.IBPluginDependency</string> + <string>116.IBPluginDependency</string> + <string>117.IBEditorWindowLastContentRect</string> + <string>117.IBPluginDependency</string> + <string>119.IBPluginDependency</string> <string>12.IBPluginDependency</string> <string>12.ImportedFromIB2</string> <string>13.IBPluginDependency</string> @@ -1468,6 +1601,8 @@ <integer value="1"/> <string>com.apple.InterfaceBuilder.CocoaPlugin</string> <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> <object class="NSMutableDictionary"> <string key="NS.key.0">ToolTip</string> <object class="IBToolTipAttribute" key="NS.object.0"> @@ -1479,6 +1614,11 @@ <string>com.apple.InterfaceBuilder.CocoaPlugin</string> <integer value="1"/> <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{383, 415}, {116, 20}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> <integer value="1"/> <string>com.apple.InterfaceBuilder.CocoaPlugin</string> <integer value="1"/> @@ -1525,9 +1665,9 @@ </object> <string>com.apple.InterfaceBuilder.CocoaPlugin</string> <integer value="1"/> - <string>{{220, 272}, {500, 353}}</string> + <string>{{404, 193}, {500, 412}}</string> <string>com.apple.InterfaceBuilder.CocoaPlugin</string> - <string>{{220, 272}, {500, 353}}</string> + <string>{{404, 193}, {500, 412}}</string> <boolean value="NO"/> <boolean value="YES"/> <string>{500, 353}</string> @@ -1570,26 +1710,125 @@ </object> </object> <nil key="sourceID"/> - <int key="maxID">104</int> + <int key="maxID">123</int> </object> <object class="IBClassDescriber" key="IBDocument.Classes"> <object class="NSMutableArray" key="referencedPartialClassDescriptions"> <bool key="EncodedWithXMLCoder">YES</bool> <object class="IBPartialClassDescription"> - <string key="className">SPDataImport</string> - <string key="superclassName">NSObject</string> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Frameworks/PSMTabBar/PSMTabDragAssistant.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Frameworks/MCPKit/MCPFoundationKit/MCPConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Frameworks/MCPKit/MCPFoundationKit/MCPNull.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Frameworks/PSMTabBar/PSMTabBarCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Frameworks/PSMTabBar/PSMTabBarControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Source/SPConnectionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Source/SPContentFilterManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Source/SPImageView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Source/SPMainThreadTrampoline.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Source/SPNotLoaded.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Source/SPQueryFavoriteManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">toggleCollapse:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="actionInfosByName"> + <string key="NS.key.0">toggleCollapse:</string> + <object class="IBActionInfo" key="NS.object.0"> + <string key="name">toggleCollapse:</string> + <string key="candidateClassName">id</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Source/SPTablesList.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextView</string> <object class="NSMutableDictionary" key="actions"> <bool key="EncodedWithXMLCoder">YES</bool> <object class="NSArray" key="dict.sortedKeys"> <bool key="EncodedWithXMLCoder">YES</bool> - <string>cancelProgressBar:</string> - <string>changeFormat:</string> - <string>closeSheet:</string> - <string>panelSelectionDidChange:</string> - <string>reloadTables:</string> - <string>selectTables:</string> - <string>switchInput:</string> - <string>switchTab:</string> + <string>doDecomposedStringWithCanonicalMapping:</string> + <string>doDecomposedStringWithCompatibilityMapping:</string> + <string>doPrecomposedStringWithCanonicalMapping:</string> + <string>doPrecomposedStringWithCompatibilityMapping:</string> + <string>doRemoveDiacritics:</string> + <string>doSelectionLowerCase:</string> + <string>doSelectionTitleCase:</string> + <string>doSelectionUpperCase:</string> + <string>doTranspose:</string> + <string>insertNULLvalue:</string> + <string>selectCurrentLine:</string> + <string>selectCurrentWord:</string> + <string>selectEnclosingBrackets:</string> </object> <object class="NSMutableArray" key="dict.values"> <bool key="EncodedWithXMLCoder">YES</bool> @@ -1601,53 +1840,144 @@ <string>id</string> <string>id</string> <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> </object> </object> <object class="NSMutableDictionary" key="actionInfosByName"> <bool key="EncodedWithXMLCoder">YES</bool> <object class="NSArray" key="dict.sortedKeys"> <bool key="EncodedWithXMLCoder">YES</bool> - <string>cancelProgressBar:</string> - <string>changeFormat:</string> - <string>closeSheet:</string> - <string>panelSelectionDidChange:</string> - <string>reloadTables:</string> - <string>selectTables:</string> - <string>switchInput:</string> - <string>switchTab:</string> + <string>doDecomposedStringWithCanonicalMapping:</string> + <string>doDecomposedStringWithCompatibilityMapping:</string> + <string>doPrecomposedStringWithCanonicalMapping:</string> + <string>doPrecomposedStringWithCompatibilityMapping:</string> + <string>doRemoveDiacritics:</string> + <string>doSelectionLowerCase:</string> + <string>doSelectionTitleCase:</string> + <string>doSelectionUpperCase:</string> + <string>doTranspose:</string> + <string>insertNULLvalue:</string> + <string>selectCurrentLine:</string> + <string>selectCurrentWord:</string> + <string>selectEnclosingBrackets:</string> </object> <object class="NSMutableArray" key="dict.values"> <bool key="EncodedWithXMLCoder">YES</bool> <object class="IBActionInfo"> - <string key="name">cancelProgressBar:</string> + <string key="name">doDecomposedStringWithCanonicalMapping:</string> <string key="candidateClassName">id</string> </object> <object class="IBActionInfo"> - <string key="name">changeFormat:</string> + <string key="name">doDecomposedStringWithCompatibilityMapping:</string> <string key="candidateClassName">id</string> </object> <object class="IBActionInfo"> - <string key="name">closeSheet:</string> + <string key="name">doPrecomposedStringWithCanonicalMapping:</string> <string key="candidateClassName">id</string> </object> <object class="IBActionInfo"> - <string key="name">panelSelectionDidChange:</string> + <string key="name">doPrecomposedStringWithCompatibilityMapping:</string> <string key="candidateClassName">id</string> </object> <object class="IBActionInfo"> - <string key="name">reloadTables:</string> + <string key="name">doRemoveDiacritics:</string> <string key="candidateClassName">id</string> </object> <object class="IBActionInfo"> - <string key="name">selectTables:</string> + <string key="name">doSelectionLowerCase:</string> <string key="candidateClassName">id</string> </object> <object class="IBActionInfo"> - <string key="name">switchInput:</string> + <string key="name">doSelectionTitleCase:</string> <string key="candidateClassName">id</string> </object> <object class="IBActionInfo"> - <string key="name">switchTab:</string> + <string key="name">doSelectionUpperCase:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo"> + <string key="name">doTranspose:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo"> + <string key="name">insertNULLvalue:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo"> + <string key="name">selectCurrentLine:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo"> + <string key="name">selectCurrentWord:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo"> + <string key="name">selectEnclosingBrackets:</string> + <string key="candidateClassName">id</string> + </object> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Source/SPTextViewAdditions.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Source/SPWindowAdditions.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SPDataImport</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>cancelProgressBar:</string> + <string>changeFormat:</string> + <string>closeSheet:</string> + <string>panelSelectionDidChange:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="actionInfosByName"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>cancelProgressBar:</string> + <string>changeFormat:</string> + <string>closeSheet:</string> + <string>panelSelectionDidChange:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBActionInfo"> + <string key="name">cancelProgressBar:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo"> + <string key="name">changeFormat:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo"> + <string key="name">closeSheet:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo"> + <string key="name">panelSelectionDidChange:</string> <string key="candidateClassName">id</string> </object> </object> @@ -1664,29 +1994,9 @@ <string>customQueryInstance</string> <string>errorsSheet</string> <string>errorsView</string> - <string>exportCSVView</string> - <string>exportDumpTableView</string> - <string>exportDumpView</string> - <string>exportFieldNamesSwitch</string> - <string>exportFieldsEnclosedField</string> - <string>exportFieldsEscapedField</string> - <string>exportFieldsTerminatedField</string> - <string>exportLinesTerminatedField</string> - <string>exportMultipleCSVTableView</string> - <string>exportMultipleCSVView</string> - <string>exportMultipleFieldNamesSwitch</string> - <string>exportMultipleFieldsEnclosedField</string> - <string>exportMultipleFieldsEscapedField</string> - <string>exportMultipleFieldsTerminatedField</string> - <string>exportMultipleLinesTerminatedField</string> - <string>exportMultipleXMLTableView</string> - <string>exportMultipleXMLView</string> - <string>exportTabBar</string> - <string>exportTableList</string> - <string>exportToolbar</string> - <string>exportWindow</string> <string>importCSVBox</string> <string>importCSVView</string> + <string>importEncodingPopup</string> <string>importFieldMapperSheetWindow</string> <string>importFieldNamesSwitch</string> <string>importFieldsEnclosedField</string> @@ -1703,12 +2013,12 @@ <string>singleProgressSheet</string> <string>singleProgressText</string> <string>singleProgressTitle</string> + <string>sqlCompressionSwitch</string> <string>sqlFullStreamingSwitch</string> <string>tableContentInstance</string> <string>tableDataInstance</string> <string>tableDocumentInstance</string> <string>tableSourceInstance</string> - <string>tableWindow</string> <string>tablesListInstance</string> </object> <object class="NSMutableArray" key="dict.values"> @@ -1723,27 +2033,7 @@ <string>id</string> <string>id</string> <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> - <string>id</string> + <string>NSPopUpButton</string> <string>id</string> <string>id</string> <string>id</string> @@ -1781,29 +2071,9 @@ <string>customQueryInstance</string> <string>errorsSheet</string> <string>errorsView</string> - <string>exportCSVView</string> - <string>exportDumpTableView</string> - <string>exportDumpView</string> - <string>exportFieldNamesSwitch</string> - <string>exportFieldsEnclosedField</string> - <string>exportFieldsEscapedField</string> - <string>exportFieldsTerminatedField</string> - <string>exportLinesTerminatedField</string> - <string>exportMultipleCSVTableView</string> - <string>exportMultipleCSVView</string> - <string>exportMultipleFieldNamesSwitch</string> - <string>exportMultipleFieldsEnclosedField</string> - <string>exportMultipleFieldsEscapedField</string> - <string>exportMultipleFieldsTerminatedField</string> - <string>exportMultipleLinesTerminatedField</string> - <string>exportMultipleXMLTableView</string> - <string>exportMultipleXMLView</string> - <string>exportTabBar</string> - <string>exportTableList</string> - <string>exportToolbar</string> - <string>exportWindow</string> <string>importCSVBox</string> <string>importCSVView</string> + <string>importEncodingPopup</string> <string>importFieldMapperSheetWindow</string> <string>importFieldNamesSwitch</string> <string>importFieldsEnclosedField</string> @@ -1820,12 +2090,12 @@ <string>singleProgressSheet</string> <string>singleProgressText</string> <string>singleProgressTitle</string> + <string>sqlCompressionSwitch</string> <string>sqlFullStreamingSwitch</string> <string>tableContentInstance</string> <string>tableDataInstance</string> <string>tableDocumentInstance</string> <string>tableSourceInstance</string> - <string>tableWindow</string> <string>tablesListInstance</string> </object> <object class="NSMutableArray" key="dict.values"> @@ -1863,187 +2133,333 @@ <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportCSVView</string> + <string key="name">importCSVBox</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportDumpTableView</string> + <string key="name">importCSVView</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportDumpView</string> - <string key="candidateClassName">id</string> + <string key="name">importEncodingPopup</string> + <string key="candidateClassName">NSPopUpButton</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportFieldNamesSwitch</string> + <string key="name">importFieldMapperSheetWindow</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportFieldsEnclosedField</string> + <string key="name">importFieldNamesSwitch</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportFieldsEscapedField</string> + <string key="name">importFieldsEnclosedField</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportFieldsTerminatedField</string> + <string key="name">importFieldsEscapedField</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportLinesTerminatedField</string> + <string key="name">importFieldsTerminatedField</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportMultipleCSVTableView</string> + <string key="name">importFormatPopup</string> + <string key="candidateClassName">NSPopUpButton</string> + </object> + <object class="IBToOneOutletInfo"> + <string key="name">importFromClipboardAccessoryView</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportMultipleCSVView</string> + <string key="name">importFromClipboardSheet</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportMultipleFieldNamesSwitch</string> + <string key="name">importFromClipboardTextView</string> + <string key="candidateClassName">NSTextView</string> + </object> + <object class="IBToOneOutletInfo"> + <string key="name">importLinesTerminatedField</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportMultipleFieldsEnclosedField</string> + <string key="name">multiCSVFullStreamingSwitch</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportMultipleFieldsEscapedField</string> + <string key="name">multiXMLFullStreamingSwitch</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportMultipleFieldsTerminatedField</string> + <string key="name">singleProgressBar</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportMultipleLinesTerminatedField</string> + <string key="name">singleProgressSheet</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportMultipleXMLTableView</string> + <string key="name">singleProgressText</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportMultipleXMLView</string> + <string key="name">singleProgressTitle</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportTabBar</string> + <string key="name">sqlCompressionSwitch</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportTableList</string> + <string key="name">sqlFullStreamingSwitch</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportToolbar</string> + <string key="name">tableContentInstance</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">exportWindow</string> + <string key="name">tableDataInstance</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">importCSVBox</string> + <string key="name">tableDocumentInstance</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">importCSVView</string> + <string key="name">tableSourceInstance</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">importFieldMapperSheetWindow</string> + <string key="name">tablesListInstance</string> <string key="candidateClassName">id</string> </object> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Source/SPDataImport.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SPDataImport</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>reloadTables:</string> + <string>selectTables:</string> + <string>switchInput:</string> + <string>switchTab:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="actionInfosByName"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>reloadTables:</string> + <string>selectTables:</string> + <string>switchInput:</string> + <string>switchTab:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBActionInfo"> + <string key="name">reloadTables:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo"> + <string key="name">selectTables:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo"> + <string key="name">switchInput:</string> + <string key="candidateClassName">id</string> + </object> + <object class="IBActionInfo"> + <string key="name">switchTab:</string> + <string key="candidateClassName">id</string> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>exportCSVView</string> + <string>exportDumpTableView</string> + <string>exportDumpView</string> + <string>exportFieldNamesSwitch</string> + <string>exportFieldsEnclosedField</string> + <string>exportFieldsEscapedField</string> + <string>exportFieldsTerminatedField</string> + <string>exportLinesTerminatedField</string> + <string>exportMultipleCSVTableView</string> + <string>exportMultipleCSVView</string> + <string>exportMultipleFieldNamesSwitch</string> + <string>exportMultipleFieldsEnclosedField</string> + <string>exportMultipleFieldsEscapedField</string> + <string>exportMultipleFieldsTerminatedField</string> + <string>exportMultipleLinesTerminatedField</string> + <string>exportMultipleXMLTableView</string> + <string>exportMultipleXMLView</string> + <string>exportTabBar</string> + <string>exportTableList</string> + <string>exportToolbar</string> + <string>exportWindow</string> + <string>tableWindow</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="toOneOutletInfosByName"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>exportCSVView</string> + <string>exportDumpTableView</string> + <string>exportDumpView</string> + <string>exportFieldNamesSwitch</string> + <string>exportFieldsEnclosedField</string> + <string>exportFieldsEscapedField</string> + <string>exportFieldsTerminatedField</string> + <string>exportLinesTerminatedField</string> + <string>exportMultipleCSVTableView</string> + <string>exportMultipleCSVView</string> + <string>exportMultipleFieldNamesSwitch</string> + <string>exportMultipleFieldsEnclosedField</string> + <string>exportMultipleFieldsEscapedField</string> + <string>exportMultipleFieldsTerminatedField</string> + <string>exportMultipleLinesTerminatedField</string> + <string>exportMultipleXMLTableView</string> + <string>exportMultipleXMLView</string> + <string>exportTabBar</string> + <string>exportTableList</string> + <string>exportToolbar</string> + <string>exportWindow</string> + <string>tableWindow</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> <object class="IBToOneOutletInfo"> - <string key="name">importFieldNamesSwitch</string> + <string key="name">exportCSVView</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">importFieldsEnclosedField</string> + <string key="name">exportDumpTableView</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">importFieldsEscapedField</string> + <string key="name">exportDumpView</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">importFieldsTerminatedField</string> + <string key="name">exportFieldNamesSwitch</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">importFormatPopup</string> - <string key="candidateClassName">NSPopUpButton</string> + <string key="name">exportFieldsEnclosedField</string> + <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">importFromClipboardAccessoryView</string> + <string key="name">exportFieldsEscapedField</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">importFromClipboardSheet</string> + <string key="name">exportFieldsTerminatedField</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">importFromClipboardTextView</string> - <string key="candidateClassName">NSTextView</string> + <string key="name">exportLinesTerminatedField</string> + <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">importLinesTerminatedField</string> + <string key="name">exportMultipleCSVTableView</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">multiCSVFullStreamingSwitch</string> + <string key="name">exportMultipleCSVView</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">multiXMLFullStreamingSwitch</string> + <string key="name">exportMultipleFieldNamesSwitch</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">singleProgressBar</string> + <string key="name">exportMultipleFieldsEnclosedField</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">singleProgressSheet</string> + <string key="name">exportMultipleFieldsEscapedField</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">singleProgressText</string> + <string key="name">exportMultipleFieldsTerminatedField</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">singleProgressTitle</string> + <string key="name">exportMultipleLinesTerminatedField</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">sqlFullStreamingSwitch</string> + <string key="name">exportMultipleXMLTableView</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">tableContentInstance</string> + <string key="name">exportMultipleXMLView</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">tableDataInstance</string> + <string key="name">exportTabBar</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">tableDocumentInstance</string> + <string key="name">exportTableList</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">tableSourceInstance</string> + <string key="name">exportToolbar</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">tableWindow</string> + <string key="name">exportWindow</string> <string key="candidateClassName">id</string> </object> <object class="IBToOneOutletInfo"> - <string key="name">tablesListInstance</string> + <string key="name">tableWindow</string> <string key="candidateClassName">id</string> </object> </object> @@ -2054,15 +2470,664 @@ </object> </object> </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="511768669"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="543957504"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="798986425"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">BWToolkitFramework.framework/Headers/NSApplication+BWAdditions.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSBox</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSBox.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSComboBox</string> + <string key="superclassName">NSTextField</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSComboBox.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSComboBoxCell</string> + <string key="superclassName">NSTextFieldCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSComboBoxCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="824124927"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="854954604"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItem</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="973834334"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItemCell</string> + <string key="superclassName">NSButtonCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="511768669"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="543957504"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="798986425"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="824124927"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="854954604"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="474798430"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Print.framework/Headers/PDEPluginInterface.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUAppcast.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUUpdater.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">WebKit.framework/Headers/WebDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">WebKit.framework/Headers/WebEditingDelegate.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">WebKit.framework/Headers/WebFrameLoadDelegate.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">WebKit.framework/Headers/WebJavaPlugIn.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">WebKit.framework/Headers/WebPlugin.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">WebKit.framework/Headers/WebPluginContainer.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">WebKit.framework/Headers/WebPolicyDelegate.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">WebKit.framework/Headers/WebResourceLoadDelegate.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">WebKit.framework/Headers/WebScriptObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">WebKit.framework/Headers/WebUIDelegate.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButton</string> + <string key="superclassName">NSButton</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButtonCell</string> + <string key="superclassName">NSMenuItemCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSScrollView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSScrollView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSScroller</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSScroller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSText</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSText.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextView</string> + <string key="superclassName">NSText</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSUserDefaultsController</string> + <string key="superclassName">NSController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <reference key="sourceIdentifier" ref="973834334"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="474798430"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">BWToolkitFramework.framework/Headers/NSView+BWAdditions.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDrawer.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSWindow.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSWindowScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">BWToolkitFramework.framework/Headers/NSWindow+BWAdditions.h</string> + </object> + </object> + </object> </object> <int key="IBDocument.localizationMode">0</int> <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> <integer value="3000" key="NS.object.0"/> </object> <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> - <nil key="IBDocument.LastKnownRelativeProjectPath"/> + <string key="IBDocument.LastKnownRelativeProjectPath">../../sequel-pro.xcodeproj</string> <int key="IBDocument.defaultPropertyAccessControl">3</int> <object class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes"> <bool key="EncodedWithXMLCoder">YES</bool> diff --git a/Source/SPDataImport.h b/Source/SPDataImport.h index 14dcdedd..9a9dedf5 100644 --- a/Source/SPDataImport.h +++ b/Source/SPDataImport.h @@ -47,6 +47,7 @@ IBOutlet id importFieldMapperSheetWindow; IBOutlet NSPopUpButton *importFormatPopup; + IBOutlet NSPopUpButton *importEncodingPopup; IBOutlet id importFromClipboardSheet; IBOutlet id importFromClipboardAccessoryView; diff --git a/Source/SPDataImport.m b/Source/SPDataImport.m index b82bf1bb..6b20787a 100644 --- a/Source/SPDataImport.m +++ b/Source/SPDataImport.m @@ -42,6 +42,8 @@ #import "SPMainThreadTrampoline.h" #import "SPNotLoaded.h" #import "SPFileHandle.h" +#import "SPEncodingPopupAccessory.h" +#import <UniversalDetector/UniversalDetector.h> @interface SPDataImport (PrivateAPI) @@ -99,6 +101,16 @@ [nibLoader instantiateNibWithOwner:self topLevelObjects:&importAccessoryTopLevelObjects]; [nibObjectsToRelease addObjectsFromArray:importAccessoryTopLevelObjects]; [nibLoader release]; + + // Set up the encodings menu + NSMutableArray *encodings = [NSMutableArray arrayWithArray:[SPEncodingPopupAccessory enabledEncodings]]; + [importEncodingPopup removeAllItems]; + [importEncodingPopup addItemWithTitle:NSLocalizedString(@"Autodetect", @"Encoding autodetect menu item")]; + [[importEncodingPopup menu] addItem:[NSMenuItem separatorItem]]; + for (NSNumber *encodingNumber in encodings) { + [importEncodingPopup addItemWithTitle:[NSString localizedNameOfStringEncoding:[encodingNumber unsignedIntegerValue]]]; + [[importEncodingPopup lastItem] setTag:[encodingNumber unsignedIntegerValue]]; + } } #pragma mark - @@ -176,7 +188,15 @@ [importFieldsEscapedField setStringValue:[prefs objectForKey:SPCSVImportFieldEscapeCharacter]]; [importFieldsEnclosedField setStringValue:[prefs objectForKey:SPCSVImportFieldEnclosedBy]]; [importFieldNamesSwitch setState:[[prefs objectForKey:SPCSVImportFirstLineIsHeader] boolValue]]; + + // Reset and disable the encoding menu + [importEncodingPopup selectItemWithTag:NSUTF8StringEncoding]; + [importEncodingPopup setEnabled:NO]; + + // Add the view, and resize it to fit the accessory view size [importFromClipboardAccessoryView addSubview:importCSVView]; + NSRect accessoryViewRect = [importFromClipboardAccessoryView frame]; + [importCSVView setFrame:NSMakeRect(0, 0, accessoryViewRect.size.width, accessoryViewRect.size.height)]; [NSApp beginSheet:importFromClipboardSheet modalForWindow:[tableDocumentInstance parentWindow] @@ -375,6 +395,22 @@ [tableDocumentInstance setQueryMode:SPImportExportQueryMode]; + // Determine the file encoding. The first item in the encoding menu is "Autodetect"; if + // this is selected, attempt to detect the encoding of the file (using first 2.5MB). + if (![importEncodingPopup indexOfSelectedItem]) { + SPFileHandle *detectorFileHandle = [SPFileHandle fileHandleForReadingAtPath:filename]; + if (detectorFileHandle) { + UniversalDetector *fileEncodingDetector = [[UniversalDetector alloc] init]; + [fileEncodingDetector analyzeData:[detectorFileHandle readDataOfLength:2500000]]; + sqlEncoding = [fileEncodingDetector encoding]; + [fileEncodingDetector release]; + } + + // Otherwise, get the encoding to use from the menu + } else { + sqlEncoding = [importEncodingPopup selectedTag]; + } + // Read in the file in a loop sqlParser = [[SPSQLParser alloc] init]; [sqlParser setDelimiterSupport:YES]; @@ -427,31 +463,27 @@ } // Try to generate a NSString with the resulting data - if (importSQLAsUTF8) { - sqlString = [[NSString alloc] initWithData:[sqlDataBuffer subdataWithRange:NSMakeRange(dataBufferLastQueryEndPosition, dataBufferPosition - dataBufferLastQueryEndPosition)] - encoding:NSUTF8StringEncoding]; - if (!sqlString) { - importSQLAsUTF8 = NO; - sqlEncoding = [MCPConnection encodingForMySQLEncoding:[[tableDocumentInstance connectionEncoding] UTF8String]]; - } - } - if (!importSQLAsUTF8) { - sqlString = [[NSString alloc] initWithData:[sqlDataBuffer subdataWithRange:NSMakeRange(dataBufferLastQueryEndPosition, dataBufferPosition - dataBufferLastQueryEndPosition)] - encoding:[MCPConnection encodingForMySQLEncoding:[[tableDocumentInstance connectionEncoding] UTF8String]]]; - if (!sqlString) { - [self closeAndStopProgressSheet]; - SPBeginAlertSheet(NSLocalizedString(@"File read error", @"SQL read error title"), - NSLocalizedString(@"OK", @"OK button"), - nil, nil, [tableDocumentInstance parentWindow], self, nil, nil, - [NSString stringWithFormat:NSLocalizedString(@"An error occurred when reading the file, as it could not be read in either UTF-8 or the current connection encoding (%@).\n\nOnly %ld queries were executed.", @"SQL encoding read error"), [tableDocumentInstance connectionEncoding], (long)queriesPerformed]); - [sqlParser release]; - [sqlDataBuffer release]; - [importPool drain]; - [tableDocumentInstance setQueryMode:SPInterfaceQueryMode]; - if([filename hasPrefix:SPImportClipboardTempFileNamePrefix]) - [[NSFileManager defaultManager] removeItemAtPath:filename error:nil]; - return; + sqlString = [[NSString alloc] initWithData:[sqlDataBuffer subdataWithRange:NSMakeRange(dataBufferLastQueryEndPosition, dataBufferPosition - dataBufferLastQueryEndPosition)] + encoding:sqlEncoding]; + if (!sqlString) { + [self closeAndStopProgressSheet]; + NSString *displayEncoding; + if (![importEncodingPopup indexOfSelectedItem]) { + displayEncoding = [NSString stringWithFormat:@"%@ - %@", [importEncodingPopup titleOfSelectedItem], [NSString localizedNameOfStringEncoding:sqlEncoding]]; + } else { + displayEncoding = [NSString localizedNameOfStringEncoding:sqlEncoding]; } + SPBeginAlertSheet(NSLocalizedString(@"File read error", @"SQL read error title"), + NSLocalizedString(@"OK", @"OK button"), + nil, nil, [tableDocumentInstance parentWindow], self, nil, nil, + [NSString stringWithFormat:NSLocalizedString(@"An error occurred when reading the file, as it could not be read in the encoding you selected (%@).\n\nOnly %ld queries were executed.", @"SQL encoding read error"), displayEncoding, (long)queriesPerformed]); + [sqlParser release]; + [sqlDataBuffer release]; + [importPool drain]; + [tableDocumentInstance setQueryMode:SPInterfaceQueryMode]; + if([filename hasPrefix:SPImportClipboardTempFileNamePrefix]) + [[NSFileManager defaultManager] removeItemAtPath:filename error:nil]; + return; } // Add the NSString segment to the SQL parser and release it @@ -660,6 +692,22 @@ [tableDocumentInstance setQueryMode:SPImportExportQueryMode]; + // Determine the file encoding. The first item in the encoding menu is "Autodetect"; if + // this is selected, attempt to detect the encoding of the file (using first 2.5MB). + if (![importEncodingPopup indexOfSelectedItem]) { + SPFileHandle *detectorFileHandle = [SPFileHandle fileHandleForReadingAtPath:filename]; + if (detectorFileHandle) { + UniversalDetector *fileEncodingDetector = [[UniversalDetector alloc] init]; + [fileEncodingDetector analyzeData:[detectorFileHandle readDataOfLength:2500000]]; + csvEncoding = [fileEncodingDetector encoding]; + [fileEncodingDetector release]; + } + + // Otherwise, get the encoding to use from the menu + } else { + csvEncoding = [importEncodingPopup selectedTag]; + } + // Read in the file in a loop. The loop actually needs to perform three tasks: read in // CSV data and parse them into row arrays; present the field mapping interface once it // has some data to show within the interface; and use the field mapping data to construct @@ -736,10 +784,16 @@ csvString = [[NSString alloc] initWithData:[csvDataBuffer subdataWithRange:NSMakeRange(dataBufferLastQueryEndPosition, dataBufferPosition - dataBufferLastQueryEndPosition)] encoding:csvEncoding]; if (!csvString) { [self closeAndStopProgressSheet]; + NSString *displayEncoding; + if (![importEncodingPopup indexOfSelectedItem]) { + displayEncoding = [NSString stringWithFormat:@"%@ - %@", [importEncodingPopup titleOfSelectedItem], [NSString localizedNameOfStringEncoding:csvEncoding]]; + } else { + displayEncoding = [NSString localizedNameOfStringEncoding:csvEncoding]; + } SPBeginAlertSheet(NSLocalizedString(@"File read error", @"CSV read error title"), NSLocalizedString(@"OK", @"OK button"), nil, nil, [tableDocumentInstance parentWindow], self, nil, nil, - [NSString stringWithFormat:NSLocalizedString(@"An error occurred when reading the file, as it could not be read using the connection encoding (%@).\n\nOnly %ld rows were imported.", @"CSV encoding read error"), [tableDocumentInstance connectionEncoding], (long)rowsImported]); + [NSString stringWithFormat:NSLocalizedString(@"An error occurred when reading the file, as it could not be read using the encoding you selected (%@).\n\nOnly %ld rows were imported.", @"CSV encoding read error"), displayEncoding, (long)rowsImported]); [csvParser release]; [csvDataBuffer release]; [parsedRows release]; diff --git a/sequel-pro.xcodeproj/project.pbxproj b/sequel-pro.xcodeproj/project.pbxproj index fe304ea9..ca412ecf 100644 --- a/sequel-pro.xcodeproj/project.pbxproj +++ b/sequel-pro.xcodeproj/project.pbxproj @@ -245,6 +245,8 @@ 58C4593910D0674E00E6E13E /* sqlicon.icns in Resources */ = {isa = PBXBuildFile; fileRef = 58C4593710D0674D00E6E13E /* sqlicon.icns */; }; 58C56EF50F438E120035701E /* SPDataCellFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = 58C56EF40F438E120035701E /* SPDataCellFormatter.m */; }; 58C61CFA11960312003BAA5D /* SPAlertSheets.m in Sources */ = {isa = PBXBuildFile; fileRef = 584095181107CB6600260CFD /* SPAlertSheets.m */; }; + 58C6C71611FBB17200A3F5E9 /* UniversalDetector.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 58C6C71511FBB17200A3F5E9 /* UniversalDetector.framework */; }; + 58C6C71F11FBB18000A3F5E9 /* UniversalDetector.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 58C6C71511FBB17200A3F5E9 /* UniversalDetector.framework */; }; 58CB20ED0F79A75D005EA204 /* button_edit_mode_selected.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 58CB20EC0F79A75D005EA204 /* button_edit_mode_selected.tiff */; }; 58CDB3300FCE138D00F8ACA3 /* SPSSHTunnel.m in Sources */ = {isa = PBXBuildFile; fileRef = 58CDB32F0FCE138D00F8ACA3 /* SPSSHTunnel.m */; }; 58CDB3400FCE13EF00F8ACA3 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B5EAC0FC0EC87FF900CC579C /* Security.framework */; }; @@ -400,6 +402,7 @@ 4DECC48F0EC2B436008D359E /* Sparkle.framework in CopyFiles */, B52ECE1410DDAD01009DC3E8 /* BWToolkitFramework.framework in CopyFiles */, 586EBD5D11418D9400B3DE45 /* FeedbackReporter.framework in CopyFiles */, + 58C6C71F11FBB18000A3F5E9 /* UniversalDetector.framework in CopyFiles */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -813,6 +816,7 @@ 58C4593710D0674D00E6E13E /* sqlicon.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = sqlicon.icns; sourceTree = "<group>"; }; 58C56EF30F438E120035701E /* SPDataCellFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPDataCellFormatter.h; sourceTree = "<group>"; }; 58C56EF40F438E120035701E /* SPDataCellFormatter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPDataCellFormatter.m; sourceTree = "<group>"; }; + 58C6C71511FBB17200A3F5E9 /* UniversalDetector.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UniversalDetector.framework; path = Frameworks/UniversalDetector.framework; sourceTree = "<group>"; }; 58CB20EC0F79A75D005EA204 /* button_edit_mode_selected.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = button_edit_mode_selected.tiff; sourceTree = "<group>"; }; 58CDB32E0FCE138D00F8ACA3 /* SPSSHTunnel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPSSHTunnel.h; sourceTree = "<group>"; }; 58CDB32F0FCE138D00F8ACA3 /* SPSSHTunnel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPSSHTunnel.m; sourceTree = "<group>"; }; @@ -1001,6 +1005,7 @@ B52ECDDC10DDACE9009DC3E8 /* BWToolkitFramework.framework in Frameworks */, 586EBD2411418D7C00B3DE45 /* FeedbackReporter.framework in Frameworks */, 179ECECA11F265FC009C6A40 /* libbz2.dylib in Frameworks */, + 58C6C71611FBB17200A3F5E9 /* UniversalDetector.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1018,6 +1023,7 @@ 296DC89E0F8FD336002A3258 /* WebKit.framework */, 586EBD2311418D7C00B3DE45 /* FeedbackReporter.framework */, 580E8EDC11EBE2A4000D8427 /* SystemConfiguration.framework */, + 58C6C71511FBB17200A3F5E9 /* UniversalDetector.framework */, 296DC8BE0F9091DF002A3258 /* libicucore.dylib */, 17B7B58F1016028F00F057DE /* libcrypto.dylib */, 179ECEC611F265EE009C6A40 /* libbz2.dylib */, |