Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Add import/export to JSON/CSV functions.

  • Loading branch information...
commit 19da920492603fb862b66d97a001e4ac026d2379 1 parent 8d53647
Prof Syd Xu authored
156 Export.xib
View
@@ -2,17 +2,17 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">10F569</string>
- <string key="IBDocument.InterfaceBuilderVersion">762</string>
- <string key="IBDocument.AppKitVersion">1038.29</string>
- <string key="IBDocument.HIToolboxVersion">461.00</string>
+ <string key="IBDocument.SystemVersion">10J567</string>
+ <string key="IBDocument.InterfaceBuilderVersion">823</string>
+ <string key="IBDocument.AppKitVersion">1038.35</string>
+ <string key="IBDocument.HIToolboxVersion">462.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">762</string>
+ <string key="NS.object.0">823</string>
</object>
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
<bool key="EncodedWithXMLCoder">YES</bool>
- <integer value="6"/>
+ <integer value="5"/>
</object>
<object class="NSArray" key="IBDocument.PluginDependencies">
<bool key="EncodedWithXMLCoder">YES</bool>
@@ -127,7 +127,7 @@
<object class="NSTextFieldCell" key="NSCell" id="714282402">
<int key="NSCellFlags">-1804468671</int>
<int key="NSCellFlags2">272630784</int>
- <string key="NSContents">db22894</string>
+ <string key="NSContents"/>
<reference key="NSSupport" ref="608556340"/>
<string key="NSPlaceholderString">root</string>
<reference key="NSControlView" ref="190563627"/>
@@ -206,7 +206,7 @@
<object class="NSTextFieldCell" key="NSCell" id="795360662">
<int key="NSCellFlags">-1804468671</int>
<int key="NSCellFlags2">272630784</int>
- <string key="NSContents">3306</string>
+ <string key="NSContents"/>
<reference key="NSSupport" ref="608556340"/>
<string key="NSPlaceholderString">3306</string>
<reference key="NSControlView" ref="766468264"/>
@@ -224,7 +224,7 @@
<object class="NSTextFieldCell" key="NSCell" id="262682972">
<int key="NSCellFlags">-1804468671</int>
<int key="NSCellFlags2">272630784</int>
- <string key="NSContents">external-db.s22894.gridserver.com</string>
+ <string key="NSContents"/>
<reference key="NSSupport" ref="608556340"/>
<string key="NSPlaceholderString">localhost</string>
<reference key="NSControlView" ref="553197000"/>
@@ -242,7 +242,7 @@
<object class="NSSecureTextFieldCell" key="NSCell" id="594115400">
<int key="NSCellFlags">343014976</int>
<int key="NSCellFlags2">272630848</int>
- <string key="NSContents">00320398</string>
+ <string key="NSContents"/>
<reference key="NSSupport" ref="608556340"/>
<reference key="NSControlView" ref="269442948"/>
<bool key="NSDrawsBackground">YES</bool>
@@ -1552,11 +1552,39 @@
<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>connect:</string>
+ <string>export:</string>
+ <string>showFields:</string>
+ <string>showTables:</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBActionInfo">
+ <string key="name">connect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo">
+ <string key="name">showFields:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo">
+ <string key="name">showTables:</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>chunkSizeTextField</string>
<string>collectionTextField</string>
<string>dbsArrayController</string>
<string>fieldMapTableController</string>
@@ -1571,7 +1599,6 @@
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>NSTextField</string>
- <string>NSTextField</string>
<string>NSArrayController</string>
<string>FieldMapTableController</string>
<string>NSTextField</string>
@@ -1583,6 +1610,65 @@
<string>NSTextField</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>collectionTextField</string>
+ <string>dbsArrayController</string>
+ <string>fieldMapTableController</string>
+ <string>hostTextField</string>
+ <string>passwdTextField</string>
+ <string>portTextField</string>
+ <string>progressIndicator</string>
+ <string>tablesArrayController</string>
+ <string>tablesPopUpButton</string>
+ <string>userTextField</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBToOneOutletInfo">
+ <string key="name">collectionTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">dbsArrayController</string>
+ <string key="candidateClassName">NSArrayController</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">fieldMapTableController</string>
+ <string key="candidateClassName">FieldMapTableController</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">hostTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">passwdTextField</string>
+ <string key="candidateClassName">NSSecureTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">portTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">progressIndicator</string>
+ <string key="candidateClassName">NSProgressIndicator</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">tablesArrayController</string>
+ <string key="candidateClassName">NSArrayController</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">tablesPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">userTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ </object>
+ </object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">ExportWindowController.h</string>
@@ -1604,10 +1690,36 @@
<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>addAtSelectedRow:</string>
+ <string>deleteSelectedRow:</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBActionInfo">
+ <string key="name">addAtSelectedRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo">
+ <string key="name">deleteSelectedRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ </object>
<object class="NSMutableDictionary" key="outlets">
<string key="NS.key.0">idTableView</string>
<string key="NS.object.0">NSTableView</string>
</object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <string key="NS.key.0">idTableView</string>
+ <object class="IBToOneOutletInfo" key="NS.object.0">
+ <string key="name">idTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ </object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">FieldMapTableController.h</string>
@@ -1617,14 +1729,14 @@
<string key="className">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">JSON/NSObject+SBJSON.h</string>
+ <string key="minorKey">Tunnel.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
+ <string key="className">NSProgressIndicator</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">JSON/SBJsonWriter.h</string>
+ <string key="minorKey">NSProgressIndicator+Extras.h</string>
</object>
</object>
</object>
@@ -2060,6 +2172,13 @@
<string key="className">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">RegexKit.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">Sparkle.framework/Headers/SUAppcast.h</string>
</object>
</object>
@@ -2249,6 +2368,13 @@
<string key="NS.key.0">showWindow:</string>
<string key="NS.object.0">id</string>
</object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">showWindow:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">showWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">AppKit.framework/Headers/NSWindowController.h</string>
126 Import.xib
View
@@ -2,17 +2,17 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">10D573</string>
- <string key="IBDocument.InterfaceBuilderVersion">762</string>
- <string key="IBDocument.AppKitVersion">1038.29</string>
- <string key="IBDocument.HIToolboxVersion">460.00</string>
+ <string key="IBDocument.SystemVersion">10J567</string>
+ <string key="IBDocument.InterfaceBuilderVersion">823</string>
+ <string key="IBDocument.AppKitVersion">1038.35</string>
+ <string key="IBDocument.HIToolboxVersion">462.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">762</string>
+ <string key="NS.object.0">823</string>
</object>
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
<bool key="EncodedWithXMLCoder">YES</bool>
- <integer value="48"/>
+ <integer value="1"/>
</object>
<object class="NSArray" key="IBDocument.PluginDependencies">
<bool key="EncodedWithXMLCoder">YES</bool>
@@ -127,7 +127,7 @@
<object class="NSTextFieldCell" key="NSCell" id="550319228">
<int key="NSCellFlags">-1804468671</int>
<int key="NSCellFlags2">272630784</int>
- <string key="NSContents">db22894</string>
+ <string key="NSContents"/>
<reference key="NSSupport" ref="157727087"/>
<string key="NSPlaceholderString">root</string>
<reference key="NSControlView" ref="137333191"/>
@@ -206,7 +206,7 @@
<object class="NSTextFieldCell" key="NSCell" id="24175726">
<int key="NSCellFlags">-1804468671</int>
<int key="NSCellFlags2">272630784</int>
- <string key="NSContents">3306</string>
+ <string key="NSContents"/>
<reference key="NSSupport" ref="157727087"/>
<string key="NSPlaceholderString">3306</string>
<reference key="NSControlView" ref="1024824760"/>
@@ -224,7 +224,7 @@
<object class="NSTextFieldCell" key="NSCell" id="424922412">
<int key="NSCellFlags">-1804468671</int>
<int key="NSCellFlags2">272630784</int>
- <string key="NSContents">external-db.s22894.gridserver.com</string>
+ <string key="NSContents"/>
<reference key="NSSupport" ref="157727087"/>
<string key="NSPlaceholderString">localhost</string>
<reference key="NSControlView" ref="787530680"/>
@@ -242,8 +242,9 @@
<object class="NSSecureTextFieldCell" key="NSCell" id="192689093">
<int key="NSCellFlags">343014976</int>
<int key="NSCellFlags2">272630848</int>
- <string key="NSContents">00320398</string>
+ <string key="NSContents"/>
<reference key="NSSupport" ref="157727087"/>
+ <string key="NSPlaceholderString">password</string>
<reference key="NSControlView" ref="795331336"/>
<bool key="NSDrawsBackground">YES</bool>
<reference key="NSBackgroundColor" ref="744234890"/>
@@ -277,6 +278,7 @@
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
+ <int key="NSState">1</int>
<object class="NSCustomResource" key="NSOnImage" id="424533723">
<string key="NSClassName">NSImage</string>
<string key="NSResourceName">NSMenuCheckmark</string>
@@ -526,6 +528,7 @@
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
+ <int key="NSState">1</int>
<reference key="NSOnImage" ref="424533723"/>
<reference key="NSMixedImage" ref="536983349"/>
<string key="NSAction">_popUpItemAction:</string>
@@ -1396,6 +1399,30 @@
<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>connect:</string>
+ <string>import:</string>
+ <string>showTables:</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBActionInfo">
+ <string key="name">connect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo">
+ <string key="name">showTables:</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">
@@ -1425,6 +1452,65 @@
<string>NSTextField</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>chunkSizeTextField</string>
+ <string>collectionTextField</string>
+ <string>dbsArrayController</string>
+ <string>hostTextField</string>
+ <string>passwdTextField</string>
+ <string>portTextField</string>
+ <string>progressIndicator</string>
+ <string>tablesArrayController</string>
+ <string>tablesPopUpButton</string>
+ <string>userTextField</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBToOneOutletInfo">
+ <string key="name">chunkSizeTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">collectionTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">dbsArrayController</string>
+ <string key="candidateClassName">NSArrayController</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">hostTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">passwdTextField</string>
+ <string key="candidateClassName">NSSecureTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">portTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">progressIndicator</string>
+ <string key="candidateClassName">NSProgressIndicator</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">tablesArrayController</string>
+ <string key="candidateClassName">NSArrayController</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">tablesPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo">
+ <string key="name">userTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ </object>
+ </object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">ImportWindowController.h</string>
@@ -1434,14 +1520,14 @@
<string key="className">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">JSON/NSObject+SBJSON.h</string>
+ <string key="minorKey">Tunnel.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
- <string key="className">NSObject</string>
+ <string key="className">NSProgressIndicator</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">JSON/SBJsonWriter.h</string>
+ <string key="minorKey">NSProgressIndicator+Extras.h</string>
</object>
</object>
</object>
@@ -1885,6 +1971,13 @@
<string key="className">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">RegexKit.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">Sparkle.framework/Headers/SUAppcast.h</string>
</object>
</object>
@@ -2037,6 +2130,13 @@
<string key="NS.key.0">showWindow:</string>
<string key="NS.object.0">id</string>
</object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">showWindow:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">showWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBFrameworkSource</string>
<string key="minorKey">AppKit.framework/Headers/NSWindowController.h</string>
16 MongoHub.xcodeproj/project.pbxproj
View
@@ -24,8 +24,8 @@
1D317F0512F0A8AE00255AF7 /* RegexKit.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 1D317EEB12F0A88900255AF7 /* RegexKit.framework */; };
1D58BE0B118ED8D20045A044 /* mapreducemenu.png in Resources */ = {isa = PBXBuildFile; fileRef = 1D58BE0A118ED8D20045A044 /* mapreducemenu.png */; };
1D58BE37118EFF810045A044 /* BWToolkitFramework.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 1D93C24A118334F6003216F7 /* BWToolkitFramework.framework */; };
- 1D601B3811C8E13000C86274 /* exportmenu.png in Resources */ = {isa = PBXBuildFile; fileRef = 1D601B3611C8E13000C86274 /* exportmenu.png */; };
- 1D601B3911C8E13000C86274 /* importmenu.png in Resources */ = {isa = PBXBuildFile; fileRef = 1D601B3711C8E13000C86274 /* importmenu.png */; };
+ 1D601B3811C8E13000C86274 /* importmenu.png in Resources */ = {isa = PBXBuildFile; fileRef = 1D601B3611C8E13000C86274 /* importmenu.png */; };
+ 1D601B3911C8E13000C86274 /* exportmenu.png in Resources */ = {isa = PBXBuildFile; fileRef = 1D601B3711C8E13000C86274 /* exportmenu.png */; };
1D601B3D11C8E7F900C86274 /* exportbox.png in Resources */ = {isa = PBXBuildFile; fileRef = 1D601B3B11C8E7F900C86274 /* exportbox.png */; };
1D601B3E11C8E7F900C86274 /* importbox.png in Resources */ = {isa = PBXBuildFile; fileRef = 1D601B3C11C8E7F900C86274 /* importbox.png */; };
1D601B5211C8F08C00C86274 /* ImportWindowController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1D601B5111C8F08C00C86274 /* ImportWindowController.mm */; };
@@ -196,8 +196,8 @@
1D26619311CFD2560092C6B5 /* FieldMapTableController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FieldMapTableController.m; sourceTree = "<group>"; };
1D317EEB12F0A88900255AF7 /* RegexKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = RegexKit.framework; path = Library/Frameworks/RegexKit.framework; sourceTree = SDKROOT; };
1D58BE0A118ED8D20045A044 /* mapreducemenu.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = mapreducemenu.png; path = Resourses/images/mapreducemenu.png; sourceTree = SOURCE_ROOT; };
- 1D601B3611C8E13000C86274 /* exportmenu.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = exportmenu.png; path = Resourses/images/exportmenu.png; sourceTree = SOURCE_ROOT; };
- 1D601B3711C8E13000C86274 /* importmenu.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = importmenu.png; path = Resourses/images/importmenu.png; sourceTree = SOURCE_ROOT; };
+ 1D601B3611C8E13000C86274 /* importmenu.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = importmenu.png; sourceTree = "<group>"; };
+ 1D601B3711C8E13000C86274 /* exportmenu.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = exportmenu.png; sourceTree = "<group>"; };
1D601B3B11C8E7F900C86274 /* exportbox.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = exportbox.png; path = Resourses/images/exportbox.png; sourceTree = SOURCE_ROOT; };
1D601B3C11C8E7F900C86274 /* importbox.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = importbox.png; path = Resourses/images/importbox.png; sourceTree = SOURCE_ROOT; };
1D601B5011C8F08C00C86274 /* ImportWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImportWindowController.h; sourceTree = "<group>"; };
@@ -455,8 +455,8 @@
children = (
1D601B3B11C8E7F900C86274 /* exportbox.png */,
1D601B3C11C8E7F900C86274 /* importbox.png */,
- 1D601B3611C8E13000C86274 /* exportmenu.png */,
- 1D601B3711C8E13000C86274 /* importmenu.png */,
+ 1D601B3611C8E13000C86274 /* importmenu.png */,
+ 1D601B3711C8E13000C86274 /* exportmenu.png */,
1D210BFA1192FF06000EF41C /* key.png */,
1D58BE0A118ED8D20045A044 /* mapreducemenu.png */,
1D1D65A21189F05600582917 /* Icon.icns */,
@@ -764,8 +764,8 @@
1D210BFB1192FF06000EF41C /* key.png in Resources */,
1D210C0011930E18000EF41C /* Auth.xib in Resources */,
1DFC2A8D11970BD0006AA167 /* dsa_pub.pem in Resources */,
- 1D601B3811C8E13000C86274 /* exportmenu.png in Resources */,
- 1D601B3911C8E13000C86274 /* importmenu.png in Resources */,
+ 1D601B3811C8E13000C86274 /* importmenu.png in Resources */,
+ 1D601B3911C8E13000C86274 /* exportmenu.png in Resources */,
1D601B3D11C8E7F900C86274 /* exportbox.png in Resources */,
1D601B3E11C8E7F900C86274 /* importbox.png in Resources */,
1D601B5611C8F24300C86274 /* Import.xib in Resources */,
73 MongoHub.xcodeproj/syd.mode1v3
View
@@ -268,19 +268,21 @@
<array>
<string>29B97314FDCFA39411CA2CEA</string>
<string>080E96DDFE201D6D7F000001</string>
+ <string>1D93C3CC11836849003216F7</string>
<string>29B97317FDCFA39411CA2CEA</string>
<string>1C37FBAC04509CD000000102</string>
</array>
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array>
<array>
- <integer>23</integer>
- <integer>16</integer>
+ <integer>9</integer>
+ <integer>7</integer>
+ <integer>2</integer>
<integer>0</integer>
</array>
</array>
<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
- <string>{{0, 0}, {245, 646}}</string>
+ <string>{{0, 67}, {245, 646}}</string>
</dict>
<key>PBXTopSmartGroupGIDs</key>
<array/>
@@ -312,12 +314,14 @@
<key>Dock</key>
<array>
<dict>
+ <key>BecomeActive</key>
+ <true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXProjectModuleGUID</key>
<string>1CE0B20306471E060097A5F4</string>
<key>PBXProjectModuleLabel</key>
- <string>MongoHub_AppDelegate.m</string>
+ <string>ConnectionWindowController.mm</string>
<key>PBXSplitModuleInNavigatorKey</key>
<dict>
<key>Split0</key>
@@ -325,11 +329,11 @@
<key>PBXProjectModuleGUID</key>
<string>1CE0B20406471E060097A5F4</string>
<key>PBXProjectModuleLabel</key>
- <string>MongoHub_AppDelegate.m</string>
+ <string>ConnectionWindowController.mm</string>
<key>_historyCapacity</key>
<integer>0</integer>
<key>bookmark</key>
- <string>1DAA345812FC021100A82A86</string>
+ <string>1DDC5D6913A64A7C00D0E4D2</string>
<key>history</key>
<array>
<string>1D93C3E211836A06003216F7</string>
@@ -401,7 +405,6 @@
<string>1DCB3D1312C6438B00423160</string>
<string>1DCB3D3C12C64A7900423160</string>
<string>1DCB3D4912C64B9000423160</string>
- <string>1DCB3D5112C64DEA00423160</string>
<string>1D640E8112C8B4D30030AA4C</string>
<string>1D640EB712C8B6BF0030AA4C</string>
<string>1D64101312C8EA840030AA4C</string>
@@ -410,9 +413,7 @@
<string>1D64101A12C8EA840030AA4C</string>
<string>1D64102212C8EA840030AA4C</string>
<string>1D64104012C8EDB90030AA4C</string>
- <string>1DD1CAB812C8FFB6007F2909</string>
<string>1DD1CAD312C9059D007F2909</string>
- <string>1DD1CAEA12C908A6007F2909</string>
<string>1D245D6512CB6C7500665802</string>
<string>1D245D6712CB6C7500665802</string>
<string>1DDC491E12CBB720009924A1</string>
@@ -441,15 +442,20 @@
<string>1D04CC1912D778CE007F3730</string>
<string>1D04CC1A12D778CE007F3730</string>
<string>1D04CC1B12D778CE007F3730</string>
- <string>1D317DF612F078D900255AF7</string>
- <string>1D317DF712F078D900255AF7</string>
- <string>1D317DF812F078D900255AF7</string>
- <string>1D317DF912F078D900255AF7</string>
<string>1D317F0612F0A8C600255AF7</string>
<string>1D317F0712F0A8C600255AF7</string>
- <string>1DAA345412FBF46A00A82A86</string>
- <string>1DAA345512FBF46A00A82A86</string>
- <string>1DAA345612FBF46A00A82A86</string>
+ <string>1D3AA96213069B95004319D4</string>
+ <string>1D3AA9691306A8E8004319D4</string>
+ <string>1D3AA96A1306A8E8004319D4</string>
+ <string>1D3AA97F1306C4CD004319D4</string>
+ <string>1D3AA9811306C4CD004319D4</string>
+ <string>1D3AA9BC1306E1BC004319D4</string>
+ <string>1D3AAA101306FC0B004319D4</string>
+ <string>1D3AAA191306FD57004319D4</string>
+ <string>1D3AAA2A1307036C004319D4</string>
+ <string>1DDC5D5A13A63E7C00D0E4D2</string>
+ <string>1DDC5D6713A64A7C00D0E4D2</string>
+ <string>1DDC5D6813A64A7C00D0E4D2</string>
</array>
</dict>
<key>SplitCount</key>
@@ -461,14 +467,14 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{0, 0}, {862, 422}}</string>
+ <string>{{0, 0}, {862, 522}}</string>
<key>RubberWindowFrame</key>
<string>50 73 1129 705 0 0 1280 778 </string>
</dict>
<key>Module</key>
<string>PBXNavigatorGroup</string>
<key>Proportion</key>
- <string>422pt</string>
+ <string>522pt</string>
</dict>
<dict>
<key>ContentConfiguration</key>
@@ -481,14 +487,14 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{0, 427}, {862, 237}}</string>
+ <string>{{0, 527}, {862, 137}}</string>
<key>RubberWindowFrame</key>
<string>50 73 1129 705 0 0 1280 778 </string>
</dict>
<key>Module</key>
<string>XCDetailModule</string>
<key>Proportion</key>
- <string>237pt</string>
+ <string>137pt</string>
</dict>
</array>
<key>Proportion</key>
@@ -507,9 +513,9 @@
</array>
<key>TableOfContents</key>
<array>
- <string>1DAA344C12FBEFE500A82A86</string>
+ <string>1DDC5D5513A63A1800D0E4D2</string>
<string>1CE0B1FE06471DED0097A5F4</string>
- <string>1DAA344D12FBEFE500A82A86</string>
+ <string>1DDC5D5613A63A1800D0E4D2</string>
<string>1CE0B20306471E060097A5F4</string>
<string>1CE0B20506471E060097A5F4</string>
</array>
@@ -647,7 +653,10 @@
<integer>5</integer>
<key>WindowOrderList</key>
<array>
+ <string>1CD10A99069EF8BA00B06720</string>
<string>1D93C1AB118329FB003216F7</string>
+ <string>/Users/syd/Documents/Works/codes/MongoHub/MongoHub.xcodeproj</string>
+ <string>1C78EAAD065D492600B07095</string>
</array>
<key>WindowString</key>
<string>50 73 1129 705 0 0 1280 778 </string>
@@ -671,7 +680,7 @@
<key>PBXProjectModuleGUID</key>
<string>1CD0528F0623707200166675</string>
<key>PBXProjectModuleLabel</key>
- <string>MongoHub_AppDelegate.m</string>
+ <string>assert_util.h</string>
<key>StatusBarVisibility</key>
<true/>
</dict>
@@ -729,7 +738,7 @@
<key>TableOfContents</key>
<array>
<string>1D93C1AB118329FB003216F7</string>
- <string>1DAA344E12FBEFE600A82A86</string>
+ <string>1DDC5D4913A639C100D0E4D2</string>
<string>1CD0528F0623707200166675</string>
<string>XCMainBuildResultsModuleGUID</string>
</array>
@@ -851,13 +860,13 @@
<key>TableOfContents</key>
<array>
<string>1CD10A99069EF8BA00B06720</string>
- <string>1D317DEB12F078A200255AF7</string>
+ <string>1DDC5D4A13A639C100D0E4D2</string>
<string>1C162984064C10D400B95A72</string>
- <string>1D317DEC12F078A200255AF7</string>
- <string>1D317DED12F078A200255AF7</string>
- <string>1D317DEE12F078A200255AF7</string>
- <string>1D317DEF12F078A200255AF7</string>
- <string>1D317DF012F078A200255AF7</string>
+ <string>1DDC5D4B13A639C100D0E4D2</string>
+ <string>1DDC5D4C13A639C100D0E4D2</string>
+ <string>1DDC5D4D13A639C100D0E4D2</string>
+ <string>1DDC5D4E13A639C100D0E4D2</string>
+ <string>1DDC5D4F13A639C100D0E4D2</string>
</array>
<key>ToolbarConfiguration</key>
<string>xcode.toolbar.config.debugV3</string>
@@ -1013,7 +1022,7 @@
<key>TableOfContents</key>
<array>
<string>1C78EAAD065D492600B07095</string>
- <string>1D317DF112F078A200255AF7</string>
+ <string>1DDC5D5013A639C100D0E4D2</string>
<string>1C78EAAC065D492600B07095</string>
</array>
<key>ToolbarConfiguration</key>
@@ -1023,7 +1032,7 @@
<key>WindowToolGUID</key>
<string>1C78EAAD065D492600B07095</string>
<key>WindowToolIsVisible</key>
- <false/>
+ <true/>
</dict>
<dict>
<key>Identifier</key>
625 MongoHub.xcodeproj/syd.pbxuser
View
@@ -275,9 +275,9 @@
};
1D26614D11CFC47C0092C6B5 /* ExportWindowController.mm */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {801, 3991}}";
- sepNavSelRange = "{4707, 0}";
- sepNavVisRange = "{45, 985}";
+ sepNavIntBoundsRect = "{{0, 0}, {801, 4326}}";
+ sepNavSelRange = "{3684, 40}";
+ sepNavVisRange = "{2536, 1138}";
sepNavWindowFrame = "{{11, 241}, {813, 537}}";
};
};
@@ -331,16 +331,6 @@
vrLen = 604;
vrLoc = 41;
};
- 1D317DF612F078D900255AF7 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1D93C29D118341D4003216F7 /* AddConnectionController.m */;
- name = "AddConnectionController.m: 142";
- rLen = 0;
- rLoc = 4775;
- rType = 0;
- vrLen = 1331;
- vrLoc = 3943;
- };
1D317DF712F078D900255AF7 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 1D93C3CE11836863003216F7 /* ConnectionWindowController.mm */;
@@ -351,26 +341,6 @@
vrLen = 1061;
vrLoc = 10208;
};
- 1D317DF812F078D900255AF7 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1DF96F9011883B3800C35AB8 /* QueryWindowController.h */;
- name = "QueryWindowController.h: 133";
- rLen = 33;
- rLoc = 5546;
- rType = 0;
- vrLen = 809;
- vrLoc = 4818;
- };
- 1D317DF912F078D900255AF7 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1DF96F9111883B3800C35AB8 /* QueryWindowController.mm */;
- name = "QueryWindowController.mm: 564";
- rLen = 38;
- rLoc = 19725;
- rType = 0;
- vrLen = 1213;
- vrLoc = 18624;
- };
1D317F0612F0A8C600255AF7 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 1D64100C12C8E3D90030AA4C /* JsonWindowController.mm */;
@@ -391,6 +361,105 @@
vrLen = 1064;
vrLoc = 384;
};
+ 1D3AA96213069B95004319D4 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 77C8280C06725ACE000B614F /* MongoHub_AppDelegate.m */;
+ name = "MongoHub_AppDelegate.m: 379";
+ rLen = 0;
+ rLoc = 15269;
+ rType = 0;
+ vrLen = 1044;
+ vrLoc = 14634;
+ };
+ 1D3AA9691306A8E8004319D4 /* PlistBookmark */ = {
+ isa = PlistBookmark;
+ fRef = 8D1107310486CEB800E47090 /* MongoHub-Info.plist */;
+ fallbackIsa = PBXBookmark;
+ isK = 0;
+ kPath = (
+ );
+ name = "/Users/syd/Documents/Works/codes/MongoHub/MongoHub-Info.plist";
+ rLen = 0;
+ rLoc = 9223372036854775808;
+ };
+ 1D3AA96A1306A8E8004319D4 /* PBXBookmark */ = {
+ isa = PBXBookmark;
+ fRef = 1D601B3711C8E13000C86274 /* exportmenu.png */;
+ };
+ 1D3AA97F1306C4CD004319D4 /* PBXBookmark */ = {
+ isa = PBXBookmark;
+ fRef = 1D601B3611C8E13000C86274 /* importmenu.png */;
+ };
+ 1D3AA9811306C4CD004319D4 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1D26614D11CFC47C0092C6B5 /* ExportWindowController.mm */;
+ name = "ExportWindowController.mm: 119";
+ rLen = 40;
+ rLoc = 3684;
+ rType = 0;
+ vrLen = 1138;
+ vrLoc = 2536;
+ };
+ 1D3AA9BC1306E1BC004319D4 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1D93C29D118341D4003216F7 /* AddConnectionController.m */;
+ name = "AddConnectionController.m: 142";
+ rLen = 0;
+ rLoc = 4775;
+ rType = 0;
+ vrLen = 1145;
+ vrLoc = 6057;
+ };
+ 1D3AAA101306FC0B004319D4 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1DF96F9011883B3800C35AB8 /* QueryWindowController.h */;
+ name = "QueryWindowController.h: 190";
+ rLen = 0;
+ rLoc = 8413;
+ rType = 0;
+ vrLen = 907;
+ vrLoc = 7521;
+ };
+ 1D3AAA191306FD57004319D4 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1D93C60911841865003216F7 /* MongoDB.h */;
+ name = "MongoDB.h: 83";
+ rLen = 10;
+ rLoc = 3185;
+ rType = 0;
+ vrLen = 1353;
+ vrLoc = 2884;
+ };
+ 1D3AAA2A1307036C004319D4 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1D93C60A11841865003216F7 /* MongoDB.mm */;
+ name = "MongoDB.mm: 374";
+ rLen = 13;
+ rLoc = 12946;
+ rType = 0;
+ vrLen = 1745;
+ vrLoc = 12574;
+ };
+ 1D3AAA2B1307036C004319D4 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1DF96F9111883B3800C35AB8 /* QueryWindowController.mm */;
+ name = "QueryWindowController.mm: 1049";
+ rLen = 0;
+ rLoc = 36951;
+ rType = 0;
+ vrLen = 738;
+ vrLoc = 36591;
+ };
+ 1D3AAA52130C0F36004319D4 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1DF96F9111883B3800C35AB8 /* QueryWindowController.mm */;
+ name = "QueryWindowController.mm: 1040";
+ rLen = 0;
+ rLoc = 36709;
+ rType = 0;
+ vrLen = 1140;
+ vrLoc = 35619;
+ };
1D58BE63118F06EB0045A044 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 1D93C40011836DC2003216F7 /* ConnectionWindowTitleTransformer.h */;
@@ -578,6 +647,11 @@
name = assert_util.h;
path = /usr/local/include/mongo/client/../util/assert_util.h;
sourceTree = "<absolute>";
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {1044, 3486}}";
+ sepNavSelRange = "{5795, 0}";
+ sepNavVisRange = "{4811, 1308}";
+ };
};
1D799453118755EE009C187F /* AddDBController.h */ = {
uiCtxt = {
@@ -694,9 +768,9 @@
};
1D93C29D118341D4003216F7 /* AddConnectionController.m */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {801, 3066}}";
+ sepNavIntBoundsRect = "{{0, 0}, {801, 3108}}";
sepNavSelRange = "{4775, 0}";
- sepNavVisRange = "{3943, 1331}";
+ sepNavVisRange = "{6057, 1145}";
sepNavWindowFrame = "{{38, 215}, {813, 537}}";
};
};
@@ -723,9 +797,9 @@
};
1D93C3CE11836863003216F7 /* ConnectionWindowController.mm */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {801, 9100}}";
- sepNavSelRange = "{1582, 0}";
- sepNavVisRange = "{10208, 1061}";
+ sepNavIntBoundsRect = "{{0, 0}, {801, 9296}}";
+ sepNavSelRange = "{20653, 0}";
+ sepNavVisRange = "{19488, 1306}";
sepNavWindowFrame = "{{153, 110}, {813, 537}}";
};
};
@@ -821,17 +895,17 @@
};
1D93C60911841865003216F7 /* MongoDB.h */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {801, 1833}}";
- sepNavSelRange = "{2270, 236}";
- sepNavVisRange = "{1583, 1637}";
+ sepNavIntBoundsRect = "{{0, 0}, {801, 2044}}";
+ sepNavSelRange = "{3185, 10}";
+ sepNavVisRange = "{2884, 1353}";
sepNavWindowFrame = "{{15, 236}, {813, 537}}";
};
};
1D93C60A11841865003216F7 /* MongoDB.mm */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {801, 15876}}";
- sepNavSelRange = "{13165, 0}";
- sepNavVisRange = "{14766, 1073}";
+ sepNavIntBoundsRect = "{{0, 0}, {801, 17220}}";
+ sepNavSelRange = "{12946, 13}";
+ sepNavVisRange = "{12574, 1745}";
sepNavWindowFrame = "{{456, 164}, {813, 537}}";
};
};
@@ -936,46 +1010,6 @@
sepNavVisRange = "{0, 984}";
};
};
- 1DAA345412FBF46A00A82A86 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1D93C60A11841865003216F7 /* MongoDB.mm */;
- name = "MongoDB.mm: 379";
- rLen = 0;
- rLoc = 13165;
- rType = 0;
- vrLen = 1073;
- vrLoc = 14766;
- };
- 1DAA345512FBF46A00A82A86 /* PlistBookmark */ = {
- isa = PlistBookmark;
- fRef = 8D1107310486CEB800E47090 /* MongoHub-Info.plist */;
- fallbackIsa = PBXBookmark;
- isK = 0;
- kPath = (
- );
- name = "/Users/syd/Documents/Works/codes/MongoHub/MongoHub-Info.plist";
- rLen = 0;
- rLoc = 9223372036854775807;
- };
- 1DAA345612FBF46A00A82A86 /* XCBuildMessageTextBookmark */ = {
- isa = PBXTextBookmark;
- comments = "Potential leak of an object allocated on line 375 and stored into 'connectionWindowController'";
- fRef = 77C8280C06725ACE000B614F /* MongoHub_AppDelegate.m */;
- fallbackIsa = XCBuildMessageTextBookmark;
- rLen = 1;
- rLoc = 378;
- rType = 1;
- };
- 1DAA345812FC021100A82A86 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 77C8280C06725ACE000B614F /* MongoHub_AppDelegate.m */;
- name = "MongoHub_AppDelegate.m: 379";
- rLen = 0;
- rLoc = 15269;
- rType = 0;
- vrLen = 1044;
- vrLoc = 14634;
- };
1DAB433E11CA4C3C00242FC7 /* error_code.hpp */ = {
isa = PBXFileReference;
lastKnownFileType = sourcecode.cpp.h;
@@ -1505,16 +1539,6 @@
vrLen = 1948;
vrLoc = 1500;
};
- 1DCB3D5112C64DEA00423160 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1D26614D11CFC47C0092C6B5 /* ExportWindowController.mm */;
- name = "ExportWindowController.mm: 144";
- rLen = 0;
- rLoc = 4707;
- rType = 0;
- vrLen = 985;
- vrLoc = 45;
- };
1DCC55C112C254E10025F181 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 1D975B3F12C22C660070234E /* Sparkle.h */;
@@ -1651,16 +1675,6 @@
sepNavVisRange = "{4553, 615}";
};
};
- 1DD1CAB812C8FFB6007F2909 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 1D93C60911841865003216F7 /* MongoDB.h */;
- name = "MongoDB.h: 61";
- rLen = 236;
- rLoc = 2270;
- rType = 0;
- vrLen = 1637;
- vrLoc = 1583;
- };
1DD1CAD312C9059D007F2909 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 1D93C27411833C2A003216F7 /* Configure.h */;
@@ -1839,6 +1853,134 @@
vrLen = 499;
vrLoc = 0;
};
+ 1DDC5D4713A639C100D0E4D2 /* XCBuildMessageTextBookmark */ = {
+ isa = PBXTextBookmark;
+ comments = "\"MONGO_assert\" redefined";
+ fRef = 1D64104612C8EDB90030AA4C /* assert_util.h */;
+ fallbackIsa = XCBuildMessageTextBookmark;
+ rLen = 1;
+ rLoc = 181;
+ rType = 1;
+ };
+ 1DDC5D4813A639C100D0E4D2 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1D64104612C8EDB90030AA4C /* assert_util.h */;
+ name = "assert_util.h: 182";
+ rLen = 0;
+ rLoc = 5795;
+ rType = 0;
+ vrLen = 1132;
+ vrLoc = 5382;
+ };
+ 1DDC5D5113A63A1500D0E4D2 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1D64104612C8EDB90030AA4C /* assert_util.h */;
+ name = "assert_util.h: 182";
+ rLen = 0;
+ rLoc = 5795;
+ rType = 0;
+ vrLen = 1133;
+ vrLoc = 4811;
+ };
+ 1DDC5D5213A63A1800D0E4D2 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1DF96F9111883B3800C35AB8 /* QueryWindowController.mm */;
+ name = "QueryWindowController.mm: 580";
+ rLen = 0;
+ rLoc = 20082;
+ rType = 0;
+ vrLen = 858;
+ vrLoc = 19998;
+ };
+ 1DDC5D5313A63A1800D0E4D2 /* XCBuildMessageTextBookmark */ = {
+ isa = PBXTextBookmark;
+ comments = "\"MONGO_assert\" redefined";
+ fRef = 1D64104612C8EDB90030AA4C /* assert_util.h */;
+ fallbackIsa = XCBuildMessageTextBookmark;
+ rLen = 1;
+ rLoc = 181;
+ rType = 1;
+ };
+ 1DDC5D5413A63A1800D0E4D2 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1D64104612C8EDB90030AA4C /* assert_util.h */;
+ name = "assert_util.h: 182";
+ rLen = 0;
+ rLoc = 5795;
+ rType = 0;
+ vrLen = 1187;
+ vrLoc = 5334;
+ };
+ 1DDC5D5A13A63E7C00D0E4D2 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1D64104612C8EDB90030AA4C /* assert_util.h */;
+ name = "assert_util.h: 182";
+ rLen = 0;
+ rLoc = 5795;
+ rType = 0;
+ vrLen = 1187;
+ vrLoc = 5334;
+ };
+ 1DDC5D5B13A63E7C00D0E4D2 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1DF96F9111883B3800C35AB8 /* QueryWindowController.mm */;
+ name = "QueryWindowController.mm: 580";
+ rLen = 0;
+ rLoc = 20082;
+ rType = 0;
+ vrLen = 760;
+ vrLoc = 19998;
+ };
+ 1DDC5D5C13A63E7C00D0E4D2 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1DF96F9111883B3800C35AB8 /* QueryWindowController.mm */;
+ name = "QueryWindowController.mm: 772";
+ rLen = 0;
+ rLoc = 26240;
+ rType = 0;
+ vrLen = 1248;
+ vrLoc = 20669;
+ };
+ 1DDC5D6413A64A7700D0E4D2 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1D64104612C8EDB90030AA4C /* assert_util.h */;
+ name = "assert_util.h: 182";
+ rLen = 0;
+ rLoc = 5795;
+ rType = 0;
+ vrLen = 1308;
+ vrLoc = 4811;
+ };
+ 1DDC5D6713A64A7C00D0E4D2 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1DF96F9111883B3800C35AB8 /* QueryWindowController.mm */;
+ name = "QueryWindowController.mm: 643";
+ rLen = 0;
+ rLoc = 22139;
+ rType = 0;
+ vrLen = 1188;
+ vrLoc = 26032;
+ };
+ 1DDC5D6813A64A7C00D0E4D2 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1D93C3CE11836863003216F7 /* ConnectionWindowController.mm */;
+ name = "ConnectionWindowController.mm: 59";
+ rLen = 0;
+ rLoc = 1582;
+ rType = 0;
+ vrLen = 1175;
+ vrLoc = 10118;
+ };
+ 1DDC5D6913A64A7C00D0E4D2 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 1D93C3CE11836863003216F7 /* ConnectionWindowController.mm */;
+ name = "ConnectionWindowController.mm: 604";
+ rLen = 0;
+ rLoc = 20653;
+ rType = 0;
+ vrLen = 1306;
+ vrLoc = 19488;
+ };
1DEC7E0412B7A7FF00FC804E /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 1DF96E3A11881AED00C35AB8 /* AddCollectionController.m */;
@@ -2133,16 +2275,16 @@
};
1DF96F9011883B3800C35AB8 /* QueryWindowController.h */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {801, 1918}}";
- sepNavSelRange = "{5546, 33}";
- sepNavVisRange = "{4818, 809}";
+ sepNavIntBoundsRect = "{{0, 0}, {801, 2702}}";
+ sepNavSelRange = "{8413, 0}";
+ sepNavVisRange = "{7521, 907}";
};
};
1DF96F9111883B3800C35AB8 /* QueryWindowController.mm */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {801, 7868}}";
- sepNavSelRange = "{19725, 38}";
- sepNavVisRange = "{18624, 1213}";
+ sepNavIntBoundsRect = "{{0, 0}, {801, 15218}}";
+ sepNavSelRange = "{22139, 0}";
+ sepNavVisRange = "{26032, 1188}";
sepNavWindowFrame = "{{130, 131}, {813, 537}}";
};
};
@@ -2158,7 +2300,7 @@
};
29B97313FDCFA39411CA2CEA /* Project object */ = {
activeArchitecturePreference = x86_64;
- activeBuildConfigurationName = Release;
+ activeBuildConfigurationName = Debug;
activeExecutable = 1D10C47C11831FAD00CF6B70 /* MongoHub */;
activeTarget = 8D1107260486CEB800E47090 /* MongoHub */;
addToTargets = (
@@ -2307,129 +2449,144 @@
PBXFileDataSource_Warnings_ColumnID,
);
};
- PBXPerProjectTemplateStateSaveDate = 318500829;
- PBXWorkspaceStateSaveDate = 318500829;
+ PBXPerProjectTemplateStateSaveDate = 329659574;
+ PBXWorkspaceStateSaveDate = 329659574;
};
perUserProjectItems = {
- 1D03E9E712D48DF400B72756 /* PBXTextBookmark */ = 1D03E9E712D48DF400B72756 /* PBXTextBookmark */;
- 1D04CABA12D71CDB007F3730 /* XDModelBookmark */ = 1D04CABA12D71CDB007F3730 /* XDModelBookmark */;
- 1D04CABB12D71CDB007F3730 /* PBXTextBookmark */ = 1D04CABB12D71CDB007F3730 /* PBXTextBookmark */;
- 1D04CABC12D71CDB007F3730 /* PBXTextBookmark */ = 1D04CABC12D71CDB007F3730 /* PBXTextBookmark */;
- 1D04CABF12D71CDB007F3730 /* PBXTextBookmark */ = 1D04CABF12D71CDB007F3730 /* PBXTextBookmark */;
- 1D04CAC012D71CDB007F3730 /* PBXTextBookmark */ = 1D04CAC012D71CDB007F3730 /* PBXTextBookmark */;
- 1D04CAC112D71CDB007F3730 /* PBXTextBookmark */ = 1D04CAC112D71CDB007F3730 /* PBXTextBookmark */;
- 1D04CC1812D778CE007F3730 /* PBXTextBookmark */ = 1D04CC1812D778CE007F3730 /* PBXTextBookmark */;
- 1D04CC1912D778CE007F3730 /* PBXTextBookmark */ = 1D04CC1912D778CE007F3730 /* PBXTextBookmark */;
- 1D04CC1A12D778CE007F3730 /* PBXTextBookmark */ = 1D04CC1A12D778CE007F3730 /* PBXTextBookmark */;
- 1D04CC1B12D778CE007F3730 /* PBXTextBookmark */ = 1D04CC1B12D778CE007F3730 /* PBXTextBookmark */;
- 1D1D655E1189C74B00582917 /* PBXBookmark */ = 1D1D655E1189C74B00582917 /* PBXBookmark */;
- 1D1D65A91189F0A200582917 /* PBXBookmark */ = 1D1D65A91189F0A200582917 /* PBXBookmark */;
- 1D1EB65911D0C98100891242 /* PBXTextBookmark */ = 1D1EB65911D0C98100891242 /* PBXTextBookmark */;
- 1D1EB71D11D0E90800891242 /* PBXTextBookmark */ = 1D1EB71D11D0E90800891242 /* PBXTextBookmark */;
- 1D210C0B11930F96000EF41C /* PBXTextBookmark */ = 1D210C0B11930F96000EF41C /* PBXTextBookmark */;
- 1D210C4D11931691000EF41C /* PBXTextBookmark */ = 1D210C4D11931691000EF41C /* PBXTextBookmark */;
- 1D210C4E11931691000EF41C /* PBXTextBookmark */ = 1D210C4E11931691000EF41C /* PBXTextBookmark */;
- 1D245D6512CB6C7500665802 /* PBXTextBookmark */ = 1D245D6512CB6C7500665802 /* PBXTextBookmark */;
- 1D245D6712CB6C7500665802 /* PBXTextBookmark */ = 1D245D6712CB6C7500665802 /* PBXTextBookmark */;
- 1D26623411CFE0630092C6B5 /* PBXTextBookmark */ = 1D26623411CFE0630092C6B5 /* PBXTextBookmark */;
- 1D26623511CFE0630092C6B5 /* PBXTextBookmark */ = 1D26623511CFE0630092C6B5 /* PBXTextBookmark */;
- 1D317DF612F078D900255AF7 /* PBXTextBookmark */ = 1D317DF612F078D900255AF7 /* PBXTextBookmark */;
- 1D317DF712F078D900255AF7 /* PBXTextBookmark */ = 1D317DF712F078D900255AF7 /* PBXTextBookmark */;
- 1D317DF812F078D900255AF7 /* PBXTextBookmark */ = 1D317DF812F078D900255AF7 /* PBXTextBookmark */;
- 1D317DF912F078D900255AF7 /* PBXTextBookmark */ = 1D317DF912F078D900255AF7 /* PBXTextBookmark */;
- 1D317F0612F0A8C600255AF7 /* PBXTextBookmark */ = 1D317F0612F0A8C600255AF7 /* PBXTextBookmark */;
- 1D317F0712F0A8C600255AF7 /* PBXTextBookmark */ = 1D317F0712F0A8C600255AF7 /* PBXTextBookmark */;
- 1D58BE63118F06EB0045A044 /* PBXTextBookmark */ = 1D58BE63118F06EB0045A044 /* PBXTextBookmark */;
- 1D601B6311C8F7EB00C86274 /* PBXTextBookmark */ = 1D601B6311C8F7EB00C86274 /* PBXTextBookmark */;
- 1D640E8112C8B4D30030AA4C /* PBXTextBookmark */ = 1D640E8112C8B4D30030AA4C /* PBXTextBookmark */;
- 1D640EB712C8B6BF0030AA4C /* PBXTextBookmark */ = 1D640EB712C8B6BF0030AA4C /* PBXTextBookmark */;
- 1D64101312C8EA840030AA4C /* PBXTextBookmark */ = 1D64101312C8EA840030AA4C /* PBXTextBookmark */;
- 1D64101512C8EA840030AA4C /* PBXTextBookmark */ = 1D64101512C8EA840030AA4C /* PBXTextBookmark */;
- 1D64101912C8EA840030AA4C /* PBXTextBookmark */ = 1D64101912C8EA840030AA4C /* PBXTextBookmark */;
- 1D64101A12C8EA840030AA4C /* PBXTextBookmark */ = 1D64101A12C8EA840030AA4C /* PBXTextBookmark */;
- 1D64102212C8EA840030AA4C /* PBXTextBookmark */ = 1D64102212C8EA840030AA4C /* PBXTextBookmark */;
- 1D64104012C8EDB90030AA4C /* PBXTextBookmark */ = 1D64104012C8EDB90030AA4C /* PBXTextBookmark */;
- 1D93C3E211836A06003216F7 /* PBXTextBookmark */ = 1D93C3E211836A06003216F7 /* PBXTextBookmark */;
- 1D93C58411838FDD003216F7 /* PBXTextBookmark */ = 1D93C58411838FDD003216F7 /* PBXTextBookmark */;
- 1D93C6FA118426CA003216F7 /* PBXTextBookmark */ = 1D93C6FA118426CA003216F7 /* PBXTextBookmark */;
- 1D93C76411843D1F003216F7 /* PBXTextBookmark */ = 1D93C76411843D1F003216F7 /* PBXTextBookmark */;
- 1D93C76511843D1F003216F7 /* PBXTextBookmark */ = 1D93C76511843D1F003216F7 /* PBXTextBookmark */;
- 1D93C7DB11844DFD003216F7 /* PBXTextBookmark */ = 1D93C7DB11844DFD003216F7 /* PBXTextBookmark */;
- 1DA5B09D11916A0800484A05 /* PBXTextBookmark */ = 1DA5B09D11916A0800484A05 /* PBXTextBookmark */;
- 1DAA345412FBF46A00A82A86 /* PBXTextBookmark */ = 1DAA345412FBF46A00A82A86 /* PBXTextBookmark */;
- 1DAA345512FBF46A00A82A86 /* PlistBookmark */ = 1DAA345512FBF46A00A82A86 /* PlistBookmark */;
- 1DAA345612FBF46A00A82A86 /* XCBuildMessageTextBookmark */ = 1DAA345612FBF46A00A82A86 /* XCBuildMessageTextBookmark */;
- 1DAA345812FC021100A82A86 /* PBXTextBookmark */ = 1DAA345812FC021100A82A86 /* PBXTextBookmark */;
- 1DAB434E11CA4D8D00242FC7 /* PBXTextBookmark */ = 1DAB434E11CA4D8D00242FC7 /* PBXTextBookmark */;
- 1DAB435011CA4D8D00242FC7 /* PBXTextBookmark */ = 1DAB435011CA4D8D00242FC7 /* PBXTextBookmark */;
- 1DAB436811CA522400242FC7 /* PBXTextBookmark */ = 1DAB436811CA522400242FC7 /* PBXTextBookmark */;
- 1DAB436911CA522400242FC7 /* PBXTextBookmark */ = 1DAB436911CA522400242FC7 /* PBXTextBookmark */;
- 1DAB436A11CA522400242FC7 /* PBXTextBookmark */ = 1DAB436A11CA522400242FC7 /* PBXTextBookmark */;
- 1DAB436B11CA522400242FC7 /* PBXTextBookmark */ = 1DAB436B11CA522400242FC7 /* PBXTextBookmark */;
- 1DAB436C11CA522400242FC7 /* PBXTextBookmark */ = 1DAB436C11CA522400242FC7 /* PBXTextBookmark */;
- 1DAB436D11CA522400242FC7 /* PBXTextBookmark */ = 1DAB436D11CA522400242FC7 /* PBXTextBookmark */;
- 1DAB436F11CA522400242FC7 /* PBXTextBookmark */ = 1DAB436F11CA522400242FC7 /* PBXTextBookmark */;
- 1DAB437011CA522400242FC7 /* PBXTextBookmark */ = 1DAB437011CA522400242FC7 /* PBXTextBookmark */;
- 1DAB437111CA522400242FC7 /* PBXTextBookmark */ = 1DAB437111CA522400242FC7 /* PBXTextBookmark */;
- 1DAB437211CA522400242FC7 /* PBXTextBookmark */ = 1DAB437211CA522400242FC7 /* PBXTextBookmark */;
- 1DAB437411CA522400242FC7 /* PBXTextBookmark */ = 1DAB437411CA522400242FC7 /* PBXTextBookmark */;
- 1DAB437511CA522400242FC7 /* PBXTextBookmark */ = 1DAB437511CA522400242FC7 /* PBXTextBookmark */;
- 1DAB437711CA522400242FC7 /* PBXTextBookmark */ = 1DAB437711CA522400242FC7 /* PBXTextBookmark */;
- 1DAB437811CA522400242FC7 /* PBXTextBookmark */ = 1DAB437811CA522400242FC7 /* PBXTextBookmark */;
- 1DAB437A11CA522400242FC7 /* PBXTextBookmark */ = 1DAB437A11CA522400242FC7 /* PBXTextBookmark */;
- 1DAB437B11CA522400242FC7 /* PBXTextBookmark */ = 1DAB437B11CA522400242FC7 /* PBXTextBookmark */;
- 1DBFFA5B12C1F0E800B643CA /* PBXTextBookmark */ = 1DBFFA5B12C1F0E800B643CA /* PBXTextBookmark */;
- 1DBFFAF912C1FEE600B643CA /* PBXTextBookmark */ = 1DBFFAF912C1FEE600B643CA /* PBXTextBookmark */;
- 1DBFFAFB12C1FEE600B643CA /* PBXTextBookmark */ = 1DBFFAFB12C1FEE600B643CA /* PBXTextBookmark */;
- 1DBFFB4312C207CC00B643CA /* PBXTextBookmark */ = 1DBFFB4312C207CC00B643CA /* PBXTextBookmark */;
- 1DBFFBCD12C221C100B643CA /* PBXTextBookmark */ = 1DBFFBCD12C221C100B643CA /* PBXTextBookmark */;
- 1DBFFC1C12C2279C00B643CA /* PBXTextBookmark */ = 1DBFFC1C12C2279C00B643CA /* PBXTextBookmark */;
- 1DC6B44911B14B6A000F0EDE /* PBXTextBookmark */ = 1DC6B44911B14B6A000F0EDE /* PBXTextBookmark */;
- 1DCB3C5A12C6171900423160 /* PBXTextBookmark */ = 1DCB3C5A12C6171900423160 /* PBXTextBookmark */;
- 1DCB3CEE12C63ABB00423160 /* PBXTextBookmark */ = 1DCB3CEE12C63ABB00423160 /* PBXTextBookmark */;
- 1DCB3CF312C63ABB00423160 /* PBXTextBookmark */ = 1DCB3CF312C63ABB00423160 /* PBXTextBookmark */;
- 1DCB3CF412C63ABB00423160 /* PBXTextBookmark */ = 1DCB3CF412C63ABB00423160 /* PBXTextBookmark */;
- 1DCB3D1312C6438B00423160 /* XDModelBookmark */ = 1DCB3D1312C6438B00423160 /* XDModelBookmark */;
- 1DCB3D3C12C64A7900423160 /* PBXTextBookmark */ = 1DCB3D3C12C64A7900423160 /* PBXTextBookmark */;
- 1DCB3D4912C64B9000423160 /* PBXTextBookmark */ = 1DCB3D4912C64B9000423160 /* PBXTextBookmark */;
- 1DCB3D5112C64DEA00423160 /* PBXTextBookmark */ = 1DCB3D5112C64DEA00423160 /* PBXTextBookmark */;
- 1DCC55C112C254E10025F181 /* PBXTextBookmark */ = 1DCC55C112C254E10025F181 /* PBXTextBookmark */;
- 1DCC567412C26ABE0025F181 /* PBXTextBookmark */ = 1DCC567412C26ABE0025F181 /* PBXTextBookmark */;
- 1DCC567612C26ABE0025F181 /* PBXTextBookmark */ = 1DCC567612C26ABE0025F181 /* PBXTextBookmark */;
- 1DCC567B12C26ABE0025F181 /* PBXTextBookmark */ = 1DCC567B12C26ABE0025F181 /* PBXTextBookmark */;
- 1DCC567F12C26ABE0025F181 /* PBXTextBookmark */ = 1DCC567F12C26ABE0025F181 /* PBXTextBookmark */;
- 1DCC568F12C270970025F181 /* PBXTextBookmark */ = 1DCC568F12C270970025F181 /* PBXTextBookmark */;
- 1DCC56F112C278240025F181 /* PBXTextBookmark */ = 1DCC56F112C278240025F181 /* PBXTextBookmark */;
- 1DCC9C2312C0F7BE003B101E /* PBXTextBookmark */ = 1DCC9C2312C0F7BE003B101E /* PBXTextBookmark */;
- 1DD1CAB812C8FFB6007F2909 /* PBXTextBookmark */ = 1DD1CAB812C8FFB6007F2909 /* PBXTextBookmark */;
- 1DD1CAD312C9059D007F2909 /* PBXTextBookmark */ = 1DD1CAD312C9059D007F2909 /* PBXTextBookmark */;
- 1DD1CAEA12C908A6007F2909 /* PBXTextBookmark */ = 1DD1CAEA12C908A6007F2909 /* PBXTextBookmark */;
- 1DDC491E12CBB720009924A1 /* PBXTextBookmark */ = 1DDC491E12CBB720009924A1 /* PBXTextBookmark */;
- 1DDC491F12CBB720009924A1 /* PBXTextBookmark */ = 1DDC491F12CBB720009924A1 /* PBXTextBookmark */;
- 1DDC492112CBB720009924A1 /* PlistBookmark */ = 1DDC492112CBB720009924A1 /* PlistBookmark */;
- 1DDC492212CBB720009924A1 /* PBXTextBookmark */ = 1DDC492212CBB720009924A1 /* PBXTextBookmark */;
- 1DDC492312CBB720009924A1 /* PBXTextBookmark */ = 1DDC492312CBB720009924A1 /* PBXTextBookmark */;
- 1DDC492612CBB720009924A1 /* PBXTextBookmark */ = 1DDC492612CBB720009924A1 /* PBXTextBookmark */;
- 1DDC492712CBB720009924A1 /* PBXTextBookmark */ = 1DDC492712CBB720009924A1 /* PBXTextBookmark */;
- 1DDC492812CBB720009924A1 /* PBXTextBookmark */ = 1DDC492812CBB720009924A1 /* PBXTextBookmark */;
- 1DDC492912CBB720009924A1 /* PBXTextBookmark */ = 1DDC492912CBB720009924A1 /* PBXTextBookmark */;
- 1DDC498212CBC43D009924A1 /* PBXTextBookmark */ = 1DDC498212CBC43D009924A1 /* PBXTextBookmark */;
- 1DDC498312CBC43D009924A1 /* PBXTextBookmark */ = 1DDC498312CBC43D009924A1 /* PBXTextBookmark */;
- 1DDC498B12CBC58A009924A1 /* PBXTextBookmark */ = 1DDC498B12CBC58A009924A1 /* PBXTextBookmark */;
- 1DDC49B212CBCA60009924A1 /* PBXTextBookmark */ = 1DDC49B212CBCA60009924A1 /* PBXTextBookmark */;
- 1DDC49B312CBCA60009924A1 /* PBXTextBookmark */ = 1DDC49B312CBCA60009924A1 /* PBXTextBookmark */;
- 1DDC49B612CBCA60009924A1 /* PBXTextBookmark */ = 1DDC49B612CBCA60009924A1 /* PBXTextBookmark */;
- 1DEC7E0412B7A7FF00FC804E /* PBXTextBookmark */ = 1DEC7E0412B7A7FF00FC804E /* PBXTextBookmark */;
- 1DEC7E4512B7B5B600FC804E /* PBXTextBookmark */ = 1DEC7E4512B7B5B600FC804E /* PBXTextBookmark */;
- 1DEC7F1912B7E6EE00FC804E /* PBXTextBookmark */ = 1DEC7F1912B7E6EE00FC804E /* PBXTextBookmark */;
- 1DF8672111C92E1200DF7493 /* PBXTextBookmark */ = 1DF8672111C92E1200DF7493 /* PBXTextBookmark */;
- 1DF8689E11C96A5B00DF7493 /* PBXTextBookmark */ = 1DF8689E11C96A5B00DF7493 /* PBXTextBookmark */;
- 1DF868A611C96A5B00DF7493 /* PBXTextBookmark */ = 1DF868A611C96A5B00DF7493 /* PBXTextBookmark */;
- 1DF868B111C96A5B00DF7493 /* PBXTextBookmark */ = 1DF868B111C96A5B00DF7493 /* PBXTextBookmark */;
- 1DF8690011C974EB00DF7493 /* PBXTextBookmark */ = 1DF8690011C974EB00DF7493 /* PBXTextBookmark */;
- 1DF8690211C974EB00DF7493 /* PBXTextBookmark */ = 1DF8690211C974EB00DF7493 /* PBXTextBookmark */;
- 1DF8690511C974EB00DF7493 /* PBXTextBookmark */ = 1DF8690511C974EB00DF7493 /* PBXTextBookmark */;
- 1DF96FAA11883E1A00C35AB8 /* PBXTextBookmark */ = 1DF96FAA11883E1A00C35AB8 /* PBXTextBookmark */;
+ 1D03E9E712D48DF400B72756 = 1D03E9E712D48DF400B72756 /* PBXTextBookmark */;
+ 1D04CABA12D71CDB007F3730 = 1D04CABA12D71CDB007F3730 /* XDModelBookmark */;
+ 1D04CABB12D71CDB007F3730 = 1D04CABB12D71CDB007F3730 /* PBXTextBookmark */;
+ 1D04CABC12D71CDB007F3730 = 1D04CABC12D71CDB007F3730 /* PBXTextBookmark */;
+ 1D04CABF12D71CDB007F3730 = 1D04CABF12D71CDB007F3730 /* PBXTextBookmark */;
+ 1D04CAC012D71CDB007F3730 = 1D04CAC012D71CDB007F3730 /* PBXTextBookmark */;
+ 1D04CAC112D71CDB007F3730 = 1D04CAC112D71CDB007F3730 /* PBXTextBookmark */;
+ 1D04CC1812D778CE007F3730 = 1D04CC1812D778CE007F3730 /* PBXTextBookmark */;
+ 1D04CC1912D778CE007F3730 = 1D04CC1912D778CE007F3730 /* PBXTextBookmark */;
+ 1D04CC1A12D778CE007F3730 = 1D04CC1A12D778CE007F3730 /* PBXTextBookmark */;
+ 1D04CC1B12D778CE007F3730 = 1D04CC1B12D778CE007F3730 /* PBXTextBookmark */;
+ 1D1D655E1189C74B00582917 = 1D1D655E1189C74B00582917 /* PBXBookmark */;
+ 1D1D65A91189F0A200582917 = 1D1D65A91189F0A200582917 /* PBXBookmark */;
+ 1D1EB65911D0C98100891242 = 1D1EB65911D0C98100891242 /* PBXTextBookmark */;
+ 1D1EB71D11D0E90800891242 = 1D1EB71D11D0E90800891242 /* PBXTextBookmark */;
+ 1D210C0B11930F96000EF41C = 1D210C0B11930F96000EF41C /* PBXTextBookmark */;
+ 1D210C4D11931691000EF41C = 1D210C4D11931691000EF41C /* PBXTextBookmark */;
+ 1D210C4E11931691000EF41C = 1D210C4E11931691000EF41C /* PBXTextBookmark */;
+ 1D245D6512CB6C7500665802 = 1D245D6512CB6C7500665802 /* PBXTextBookmark */;
+ 1D245D6712CB6C7500665802 = 1D245D6712CB6C7500665802 /* PBXTextBookmark */;
+ 1D26623411CFE0630092C6B5 = 1D26623411CFE0630092C6B5 /* PBXTextBookmark */;
+ 1D26623511CFE0630092C6B5 = 1D26623511CFE0630092C6B5 /* PBXTextBookmark */;
+ 1D317DF712F078D900255AF7 = 1D317DF712F078D900255AF7 /* PBXTextBookmark */;
+ 1D317F0612F0A8C600255AF7 = 1D317F0612F0A8C600255AF7 /* PBXTextBookmark */;
+ 1D317F0712F0A8C600255AF7 = 1D317F0712F0A8C600255AF7 /* PBXTextBookmark */;
+ 1D3AA96213069B95004319D4 = 1D3AA96213069B95004319D4 /* PBXTextBookmark */;
+ 1D3AA9691306A8E8004319D4 = 1D3AA9691306A8E8004319D4 /* PlistBookmark */;
+ 1D3AA96A1306A8E8004319D4 = 1D3AA96A1306A8E8004319D4 /* PBXBookmark */;
+ 1D3AA97F1306C4CD004319D4 = 1D3AA97F1306C4CD004319D4 /* PBXBookmark */;
+ 1D3AA9811306C4CD004319D4 = 1D3AA9811306C4CD004319D4 /* PBXTextBookmark */;
+ 1D3AA9BC1306E1BC004319D4 = 1D3AA9BC1306E1BC004319D4 /* PBXTextBookmark */;
+ 1D3AAA101306FC0B004319D4 = 1D3AAA101306FC0B004319D4 /* PBXTextBookmark */;
+ 1D3AAA191306FD57004319D4 = 1D3AAA191306FD57004319D4 /* PBXTextBookmark */;
+ 1D3AAA2A1307036C004319D4 = 1D3AAA2A1307036C004319D4 /* PBXTextBookmark */;
+ 1D3AAA2B1307036C004319D4 = 1D3AAA2B1307036C004319D4 /* PBXTextBookmark */;
+ 1D3AAA52130C0F36004319D4 = 1D3AAA52130C0F36004319D4 /* PBXTextBookmark */;
+ 1D58BE63118F06EB0045A044 = 1D58BE63118F06EB0045A044 /* PBXTextBookmark */;
+ 1D601B6311C8F7EB00C86274 = 1D601B6311C8F7EB00C86274 /* PBXTextBookmark */;
+ 1D640E8112C8B4D30030AA4C = 1D640E8112C8B4D30030AA4C /* PBXTextBookmark */;
+ 1D640EB712C8B6BF0030AA4C = 1D640EB712C8B6BF0030AA4C /* PBXTextBookmark */;
+ 1D64101312C8EA840030AA4C = 1D64101312C8EA840030AA4C /* PBXTextBookmark */;
+ 1D64101512C8EA840030AA4C = 1D64101512C8EA840030AA4C /* PBXTextBookmark */;
+ 1D64101912C8EA840030AA4C = 1D64101912C8EA840030AA4C /* PBXTextBookmark */;
+ 1D64101A12C8EA840030AA4C = 1D64101A12C8EA840030AA4C /* PBXTextBookmark */;
+ 1D64102212C8EA840030AA4C = 1D64102212C8EA840030AA4C /* PBXTextBookmark */;
+ 1D64104012C8EDB90030AA4C = 1D64104012C8EDB90030AA4C /* PBXTextBookmark */;
+ 1D93C3E211836A06003216F7 = 1D93C3E211836A06003216F7 /* PBXTextBookmark */;
+ 1D93C58411838FDD003216F7 = 1D93C58411838FDD003216F7 /* PBXTextBookmark */;
+ 1D93C6FA118426CA003216F7 = 1D93C6FA118426CA003216F7 /* PBXTextBookmark */;
+ 1D93C76411843D1F003216F7 = 1D93C76411843D1F003216F7 /* PBXTextBookmark */;
+ 1D93C76511843D1F003216F7 = 1D93C76511843D1F003216F7 /* PBXTextBookmark */;
+ 1D93C7DB11844DFD003216F7 = 1D93C7DB11844DFD003216F7 /* PBXTextBookmark */;
+ 1DA5B09D11916A0800484A05 = 1DA5B09D11916A0800484A05 /* PBXTextBookmark */;
+ 1DAB434E11CA4D8D00242FC7 = 1DAB434E11CA4D8D00242FC7 /* PBXTextBookmark */;
+ 1DAB435011CA4D8D00242FC7 = 1DAB435011CA4D8D00242FC7 /* PBXTextBookmark */;
+ 1DAB436811CA522400242FC7 = 1DAB436811CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB436911CA522400242FC7 = 1DAB436911CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB436A11CA522400242FC7 = 1DAB436A11CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB436B11CA522400242FC7 = 1DAB436B11CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB436C11CA522400242FC7 = 1DAB436C11CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB436D11CA522400242FC7 = 1DAB436D11CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB436F11CA522400242FC7 = 1DAB436F11CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB437011CA522400242FC7 = 1DAB437011CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB437111CA522400242FC7 = 1DAB437111CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB437211CA522400242FC7 = 1DAB437211CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB437411CA522400242FC7 = 1DAB437411CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB437511CA522400242FC7 = 1DAB437511CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB437711CA522400242FC7 = 1DAB437711CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB437811CA522400242FC7 = 1DAB437811CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB437A11CA522400242FC7 = 1DAB437A11CA522400242FC7 /* PBXTextBookmark */;
+ 1DAB437B11CA522400242FC7 = 1DAB437B11CA522400242FC7 /* PBXTextBookmark */;
+ 1DBFFA5B12C1F0E800B643CA = 1DBFFA5B12C1F0E800B643CA /* PBXTextBookmark */;
+ 1DBFFAF912C1FEE600B643CA = 1DBFFAF912C1FEE600B643CA /* PBXTextBookmark */;
+ 1DBFFAFB12C1FEE600B643CA = 1DBFFAFB12C1FEE600B643CA /* PBXTextBookmark */;
+ 1DBFFB4312C207CC00B643CA = 1DBFFB4312C207CC00B643CA /* PBXTextBookmark */;
+ 1DBFFBCD12C221C100B643CA = 1DBFFBCD12C221C100B643CA /* PBXTextBookmark */;
+ 1DBFFC1C12C2279C00B643CA = 1DBFFC1C12C2279C00B643CA /* PBXTextBookmark */;
+ 1DC6B44911B14B6A000F0EDE = 1DC6B44911B14B6A000F0EDE /* PBXTextBookmark */;
+ 1DCB3C5A12C6171900423160 = 1DCB3C5A12C6171900423160 /* PBXTextBookmark */;
+ 1DCB3CEE12C63ABB00423160 = 1DCB3CEE12C63ABB00423160 /* PBXTextBookmark */;
+ 1DCB3CF312C63ABB00423160 = 1DCB3CF312C63ABB00423160 /* PBXTextBookmark */;
+ 1DCB3CF412C63ABB00423160 = 1DCB3CF412C63ABB00423160 /* PBXTextBookmark */;
+ 1DCB3D1312C6438B00423160 = 1DCB3D1312C6438B00423160 /* XDModelBookmark */;
+ 1DCB3D3C12C64A7900423160 = 1DCB3D3C12C64A7900423160 /* PBXTextBookmark */;
+ 1DCB3D4912C64B9000423160 = 1DCB3D4912C64B9000423160 /* PBXTextBookmark */;
+ 1DCC55C112C254E10025F181 = 1DCC55C112C254E10025F181 /* PBXTextBookmark */;
+ 1DCC567412C26ABE0025F181 = 1DCC567412C26ABE0025F181 /* PBXTextBookmark */;
+ 1DCC567612C26ABE0025F181 = 1DCC567612C26ABE0025F181 /* PBXTextBookmark */;
+ 1DCC567B12C26ABE0025F181 = 1DCC567B12C26ABE0025F181 /* PBXTextBookmark */;
+ 1DCC567F12C26ABE0025F181 = 1DCC567F12C26ABE0025F181 /* PBXTextBookmark */;
+ 1DCC568F12C270970025F181 = 1DCC568F12C270970025F181 /* PBXTextBookmark */;
+ 1DCC56F112C278240025F181 = 1DCC56F112C278240025F181 /* PBXTextBookmark */;
+ 1DCC9C2312C0F7BE003B101E = 1DCC9C2312C0F7BE003B101E /* PBXTextBookmark */;
+ 1DD1CAD312C9059D007F2909 = 1DD1CAD312C9059D007F2909 /* PBXTextBookmark */;
+ 1DD1CAEA12C908A6007F2909 = 1DD1CAEA12C908A6007F2909 /* PBXTextBookmark */;
+ 1DDC491E12CBB720009924A1 = 1DDC491E12CBB720009924A1 /* PBXTextBookmark */;
+ 1DDC491F12CBB720009924A1 = 1DDC491F12CBB720009924A1 /* PBXTextBookmark */;
+ 1DDC492112CBB720009924A1 = 1DDC492112CBB720009924A1 /* PlistBookmark */;
+ 1DDC492212CBB720009924A1 = 1DDC492212CBB720009924A1 /* PBXTextBookmark */;
+ 1DDC492312CBB720009924A1 = 1DDC492312CBB720009924A1 /* PBXTextBookmark */;
+ 1DDC492612CBB720009924A1 = 1DDC492612CBB720009924A1 /* PBXTextBookmark */;
+ 1DDC492712CBB720009924A1 = 1DDC492712CBB720009924A1 /* PBXTextBookmark */;
+ 1DDC492812CBB720009924A1 = 1DDC492812CBB720009924A1 /* PBXTextBookmark */;
+ 1DDC492912CBB720009924A1 = 1DDC492912CBB720009924A1 /* PBXTextBookmark */;
+ 1DDC498212CBC43D009924A1 = 1DDC498212CBC43D009924A1 /* PBXTextBookmark */;
+ 1DDC498312CBC43D009924A1 = 1DDC498312CBC43D009924A1 /* PBXTextBookmark */;
+ 1DDC498B12CBC58A009924A1 = 1DDC498B12CBC58A009924A1 /* PBXTextBookmark */;
+ 1DDC49B212CBCA60009924A1 = 1DDC49B212CBCA60009924A1 /* PBXTextBookmark */;
+ 1DDC49B312CBCA60009924A1 = 1DDC49B312CBCA60009924A1 /* PBXTextBookmark */;
+ 1DDC49B612CBCA60009924A1 = 1DDC49B612CBCA60009924A1 /* PBXTextBookmark */;
+ 1DDC5D4713A639C100D0E4D2 /* XCBuildMessageTextBookmark */ = 1DDC5D4713A639C100D0E4D2 /* XCBuildMessageTextBookmark */;
+ 1DDC5D4813A639C100D0E4D2 /* PBXTextBookmark */ = 1DDC5D4813A639C100D0E4D2 /* PBXTextBookmark */;
+ 1DDC5D5113A63A1500D0E4D2 /* PBXTextBookmark */ = 1DDC5D5113A63A1500D0E4D2 /* PBXTextBookmark */;
+ 1DDC5D5213A63A1800D0E4D2 /* PBXTextBookmark */ = 1DDC5D5213A63A1800D0E4D2 /* PBXTextBookmark */;
+ 1DDC5D5313A63A1800D0E4D2 /* XCBuildMessageTextBookmark */ = 1DDC5D5313A63A1800D0E4D2 /* XCBuildMessageTextBookmark */;
+ 1DDC5D5413A63A1800D0E4D2 /* PBXTextBookmark */ = 1DDC5D5413A63A1800D0E4D2 /* PBXTextBookmark */;
+ 1DDC5D5A13A63E7C00D0E4D2 /* PBXTextBookmark */ = 1DDC5D5A13A63E7C00D0E4D2 /* PBXTextBookmark */;
+ 1DDC5D5B13A63E7C00D0E4D2 /* PBXTextBookmark */ = 1DDC5D5B13A63E7C00D0E4D2 /* PBXTextBookmark */;
+ 1DDC5D5C13A63E7C00D0E4D2 /* PBXTextBookmark */ = 1DDC5D5C13A63E7C00D0E4D2 /* PBXTextBookmark */;
+ 1DDC5D6413A64A7700D0E4D2 /* PBXTextBookmark */ = 1DDC5D6413A64A7700D0E4D2 /* PBXTextBookmark */;
+ 1DDC5D6713A64A7C00D0E4D2 /* PBXTextBookmark */ = 1DDC5D6713A64A7C00D0E4D2 /* PBXTextBookmark */;
+ 1DDC5D6813A64A7C00D0E4D2 /* PBXTextBookmark */ = 1DDC5D6813A64A7C00D0E4D2 /* PBXTextBookmark */;
+ 1DDC5D6913A64A7C00D0E4D2 /* PBXTextBookmark */ = 1DDC5D6913A64A7C00D0E4D2 /* PBXTextBookmark */;
+ 1DEC7E0412B7A7FF00FC804E = 1DEC7E0412B7A7FF00FC804E /* PBXTextBookmark */;
+ 1DEC7E4512B7B5B600FC804E = 1DEC7E4512B7B5B600FC804E /* PBXTextBookmark */;
+ 1DEC7F1912B7E6EE00FC804E = 1DEC7F1912B7E6EE00FC804E /* PBXTextBookmark */;
+ 1DF8672111C92E1200DF7493 = 1DF8672111C92E1200DF7493 /* PBXTextBookmark */;
+ 1DF8689E11C96A5B00DF7493 = 1DF8689E11C96A5B00DF7493 /* PBXTextBookmark */;
+ 1DF868A611C96A5B00DF7493 = 1DF868A611C96A5B00DF7493 /* PBXTextBookmark */;
+ 1DF868B111C96A5B00DF7493 = 1DF868B111C96A5B00DF7493 /* PBXTextBookmark */;
+ 1DF8690011C974EB00DF7493 = 1DF8690011C974EB00DF7493 /* PBXTextBookmark */;
+ 1DF8690211C974EB00DF7493 = 1DF8690211C974EB00DF7493 /* PBXTextBookmark */;
+ 1DF8690511C974EB00DF7493 = 1DF8690511C974EB00DF7493 /* PBXTextBookmark */;
+ 1DF96FAA11883E1A00C35AB8 = 1DF96FAA11883E1A00C35AB8 /* PBXTextBookmark */;
};
sourceControlManager = 1D10C48E11831FCD00CF6B70 /* Source Control */;
userBuildSettings = {
@@ -2617,9 +2774,9 @@
};
77C8280C06725ACE000B614F /* MongoHub_AppDelegate.m */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {1044, 5670}}";
+ sepNavIntBoundsRect = "{{0, 0}, {801, 5586}}";
sepNavSelRange = "{15269, 0}";
- sepNavVisRange = "{14577, 1070}";
+ sepNavVisRange = "{14634, 1044}";
sepNavWindowFrame = "{{61, 194}, {813, 537}}";
};
};
4,411 QueryWindow.xib
View
3,434 additions, 977 deletions not shown
55 QueryWindowController.h
View
@@ -8,6 +8,7 @@
#import <Cocoa/Cocoa.h>
#import <BWToolkitFramework/BWToolkitFramework.h>
+#import <mongo/client/dbclient.h>
@class DatabasesArrayController;
@class ResultsOutlineViewController;
@class Connection;
@@ -58,6 +59,29 @@
IBOutlet NSTextField *mroutputTextField;
IBOutlet NSProgressIndicator *mrLoaderIndicator;
IBOutlet ResultsOutlineViewController *mrOutlineViewController;
+
+ IBOutlet NSTextField *expCriticalTextField;
+ IBOutlet NSTokenField *expFieldsTextField;
+ IBOutlet NSTextField *expSkipTextField;
+ IBOutlet NSTextField *expLimitTextField;
+ IBOutlet NSTextField *expSortTextField;
+ IBOutlet BWInsetTextField *expResultsTextField;
+ IBOutlet NSTextField *expPathTextField;
+ IBOutlet NSPopUpButton *expTypePopUpButton;
+ IBOutlet NSTextField *expQueryTextField;
+ IBOutlet NSButton *expJsonArrayCheckBox;
+ IBOutlet NSProgressIndicator *expProgressIndicator;
+
+ IBOutlet NSButton *impIgnoreBlanksCheckBox;
+ IBOutlet NSButton *impDropCheckBox;
+ IBOutlet NSButton *impHeaderlineCheckBox;
+ IBOutlet NSTokenField *impFieldsTextField;
+ IBOutlet BWInsetTextField *impResultsTextField;
+ IBOutlet NSTextField *impPathTextField;
+ IBOutlet NSPopUpButton *impTypePopUpButton;
+ IBOutlet NSButton *impJsonArrayCheckBox;
+ IBOutlet NSButton *impStopOnErrorCheckBox;
+ IBOutlet NSProgressIndicator *impProgressIndicator;
}
@property (nonatomic, retain) NSManagedObjectContext *managedObjectContext;
@@ -105,6 +129,29 @@
@property (nonatomic, retain) ResultsOutlineViewController *mrOutlineViewController;
@property (nonatomic, retain) NSProgressIndicator *mrLoaderIndicator;
+@property (nonatomic, retain) NSTextField *expCriticalTextField;
+@property (nonatomic, retain) NSTokenField *expFieldsTextField;
+@property (nonatomic, retain) NSTextField *expSkipTextField;
+@property (nonatomic, retain) NSTextField *expLimitTextField;
+@property (nonatomic, retain) NSTextField *expSortTextField;
+@property (nonatomic, retain) BWInsetTextField *expResultsTextField;
+@property (nonatomic, retain) NSTextField *expPathTextField;
+@property (nonatomic, retain) NSPopUpButton *expTypePopUpButton;
+@property (nonatomic, retain) NSTextField *expQueryTextField;
+@property (nonatomic, retain) NSButton *expJsonArrayCheckBox;
+@property (nonatomic, retain) NSProgressIndicator *expProgressIndicator;
+
+@property (nonatomic, retain) NSButton *impIgnoreBlanksCheckBox;
+@property (nonatomic, retain) NSButton *impDropCheckBox;
+@property (nonatomic, retain) NSButton *impHeaderlineCheckBox;
+@property (nonatomic, retain) NSTokenField *impFieldsTextField;
+@property (nonatomic, retain) BWInsetTextField *impResultsTextField;
+@property (nonatomic, retain) NSTextField *impPathTextField;
+@property (nonatomic, retain) NSPopUpButton *impTypePopUpButton;
+@property (nonatomic, retain) NSButton *impJsonArrayCheckBox;
+@property (nonatomic, retain) NSButton *impStopOnErrorCheckBox;
+@property (nonatomic, retain) NSProgressIndicator *impProgressIndicator;
+
- (IBAction)findQuery:(id)sender;
- (void)doFindQuery;
- (IBAction)expandFindResults:(id)sender;
@@ -125,12 +172,20 @@
- (void)doDropIndex;
- (IBAction) mapReduce:(id)sender;
- (void)doMapReduce;
+- (IBAction) export:(id)sender;
+- (void)doExport;
+- (IBAction) import:(id)sender;
+- (void)doImport;
- (IBAction)findQueryComposer:(id)sender;
- (IBAction)updateQueryComposer:(id)sender;
- (IBAction)removeQueryComposer:(id)sender;
+- (IBAction) exportQueryComposer:(id)sender;
- (void)showEditWindow:(id)sender;
- (void)jsonWindowWillClose:(id)sender;
+- (IBAction)chooseExportPath:(id)sender;
+- (IBAction)chooseImportPath:(id)sender;
+- (mongo::BSONObj)parseCSVLine:(char *)line type:(int)_type sep:(const char *)_sep headerLine:(bool)_headerLine ignoreBlanks:(bool)_ignoreBlanks fields:(std::vector<std::string> &)_fields;
@end
500 QueryWindowController.mm
View
@@ -16,6 +16,9 @@
#import <BWToolkitFramework/BWToolkitFramework.h>
#import "NSString+Extras.h"
#import "JsonWindowController.h"
+#include <fstream>
+#include <iostream>
+#include <boost/filesystem/operations.hpp>
@implementation QueryWindowController
@@ -64,6 +67,29 @@ @implementation QueryWindowController
@synthesize mrOutlineViewController;
@synthesize mrLoaderIndicator;
+@synthesize expCriticalTextField;
+@synthesize expFieldsTextField;
+@synthesize expSkipTextField;
+@synthesize expLimitTextField;
+@synthesize expSortTextField;
+@synthesize expResultsTextField;
+@synthesize expPathTextField;
+@synthesize expTypePopUpButton;
+@synthesize expQueryTextField;
+@synthesize expJsonArrayCheckBox;
+@synthesize expProgressIndicator;
+
+@synthesize impIgnoreBlanksCheckBox;
+@synthesize impDropCheckBox;
+@synthesize impHeaderlineCheckBox;
+@synthesize impFieldsTextField;
+@synthesize impResultsTextField;
+@synthesize impPathTextField;
+@synthesize impTypePopUpButton;
+@synthesize impJsonArrayCheckBox;
+@synthesize impStopOnErrorCheckBox;
+@synthesize impProgressIndicator;
+
- (id)init {
if (![super initWithWindowNibName:@"QueryWindow"]) return nil;
@@ -115,6 +141,30 @@ - (void)dealloc {
[mroutputTextField release];
[mrOutlineViewController release];
[mrLoaderIndicator release];
+
+ [expCriticalTextField release];
+ [expFieldsTextField release];
+ [expSkipTextField release];
+ [expLimitTextField release];
+ [expSortTextField release];
+ [expResultsTextField release];
+ [expPathTextField release];
+ [expTypePopUpButton release];
+ [expQueryTextField release];
+ [expJsonArrayCheckBox release];
+ [expProgressIndicator release];
+
+ [impIgnoreBlanksCheckBox release];
+ [impDropCheckBox release];
+ [impHeaderlineCheckBox release];
+ [impFieldsTextField release];
+ [impResultsTextField release];
+ [impPathTextField release];
+ [impTypePopUpButton release];
+ [impJsonArrayCheckBox release];
+ [impStopOnErrorCheckBox release];
+ [impProgressIndicator release];
+
[super dealloc];
}
@@ -435,6 +485,291 @@ - (void)doMapReduce {
[pool release];
}
+- (IBAction) export:(id)sender
+{
+ if (![[expPathTextField stringValue] isPresent]) {
+ NSRunAlertPanel(@"Error", @"Please choose export path", @"OK", nil, nil);
+ return;
+ }
+ if (![[expFieldsTextField stringValue] isPresent] && [[expTypePopUpButton selectedItem] tag]==1)
+ {
+ NSRunAlertPanel(@"Error", @"You need to specify fields", @"OK", nil, nil);
+ return;
+ }
+ [NSThread detachNewThreadSelector:@selector(doExport) toTarget:self withObject:nil];
+}
+
+- (void)doExport
+{
+ NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
+ std::auto_ptr<std::ofstream> fileStream;
+ std::ofstream * s = new std::ofstream( [[expPathTextField stringValue] UTF8String] , std::ios_base::out );
+ fileStream.reset( s );
+ ostream *outPtr = &std::cout;
+ outPtr = s;
+ if ( ! s->good() ) {
+ NSRunAlertPanel(@"Error", [NSString stringWithFormat:@"Couldn't open [%@]", [expPathTextField stringValue]], @"OK", nil, nil);
+ }
+ std::ostream &out = *outPtr;
+ bool _jsonArray = false;
+ if ([expJsonArrayCheckBox state] == 1) {
+ _jsonArray = true;
+ }
+ unsigned int exportType = [[expTypePopUpButton selectedItem] tag];
+ [expResultsTextField setStringValue:@"Start exporting"];
+ NSString *user=nil;
+ NSString *password=nil;
+ Database *db = [databasesArrayController dbInfo:conn name:dbname];
+ if (db) {
+ user = db.user;
+ password = db.password;
+ }
+ [db release];
+ NSString *critical = [expCriticalTextField stringValue];
+ NSString *fields = [expFieldsTextField stringValue];
+ NSString *sort = [expSortTextField stringValue];
+ NSNumber *skip = [NSNumber numberWithInt:[expSkipTextField intValue]];
+ NSNumber *limit = [NSNumber numberWithInt:[expLimitTextField intValue]];
+ long long int total = [mongoDB countInDB:dbname
+ collection:collectionname
+ user:user
+ password:password
+ critical:critical];
+ if (total == 0) {
+ [expResultsTextField setStringValue:@"No data to export!"];
+ return;
+ }
+
+ if ( exportType == 1 ) {
+ out << [fields UTF8String] << std::endl;
+ }else if (_jsonArray) {
+ out << '[';
+ }
+
+
+ [expProgressIndicator setUsesThreadedAnimation:YES];
+ [expProgressIndicator startAnimation: self];
+ [expProgressIndicator setDoubleValue:0];
+ std::auto_ptr<mongo::DBClientCursor> cursor = [mongoDB findCursorInDB:dbname
+ collection:collectionname
+ user:user
+ password:password
+ critical:critical
+ fields:fields
+ skip:skip
+ limit:limit
+ sort:sort];
+ unsigned int i = 1;
+ while( cursor->more() )
+ {
+ mongo::BSONObj obj = cursor->next();
+ if ( exportType == 1 ) {
+ NSArray *keys = [[NSArray alloc] initWithArray:[fields componentsSeparatedByString:@","]];
+ unsigned int fieldIndex = 0;
+ for (NSString *str in keys) {
+ if (fieldIndex > 0) {
+ out << ",";
+ }
+ const mongo::BSONElement & e = obj.getFieldDotted([str UTF8String]);
+ if ( ! e.eoo() ) {
+ out << e.jsonString( mongo::TenGen , false );
+ }
+ fieldIndex ++;
+ }
+ [keys release];
+ out << std::endl;
+ }else {
+ if (_jsonArray && i != 1)
+ out << ',';
+ out << obj.jsonString();
+ if (!_jsonArray)
+ {
+ out << std::endl;
+ }
+ }
+ [expProgressIndicator setDoubleValue:(double)i/total*100];
+ i ++;
+ }
+ if ( exportType == 1 && _jsonArray)
+ out << ']' << endl;
+ [expProgressIndicator stopAnimation: self];
+ [expResultsTextField setStringValue:[NSString stringWithFormat:@"Exported %d records.", total]];
+ [NSThread exit];
+ [pool release];
+}
+
+- (IBAction) import:(id)sender
+{
+ if (![[impPathTextField stringValue] isPresent]) {
+ NSRunAlertPanel(@"Error", @"Please choose import file", @"OK", nil, nil);
+ return;
+ }
+ if (![[expFieldsTextField stringValue] isPresent] && [[expTypePopUpButton selectedItem] tag]==1)
+ {
+ NSRunAlertPanel(@"Error", @"You need to specify fields", @"OK", nil, nil);
+ return;
+ }
+ [NSThread detachNewThreadSelector:@selector(doImport) toTarget:self withObject:nil];
+}
+
+- (void)doImport
+{
+ NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
+ [impProgressIndicator setUsesThreadedAnimation:YES];
+ [impProgressIndicator startAnimation: self];
+ [impProgressIndicator setDoubleValue:0];
+
+ long long fileSize = 0;
+ std::istream * in = &std::cin;
+ std::ifstream file( [[impPathTextField stringValue] UTF8String] , std::ios_base::in);
+ in = &file;
+ fileSize = boost::filesystem::file_size( [[impPathTextField stringValue] UTF8String] );
+ bool _ignoreBlanks = false;
+ bool _headerLine = false;
+ bool _jsonArray = false;
+ bool _stopOnError = false;
+ if ([impHeaderlineCheckBox state] == 1)
+ {
+ _headerLine = true;
+ }
+ if ([impJsonArrayCheckBox state] == 1) {
+ _jsonArray = true;
+ }
+ if ([impStopOnErrorCheckBox state] == 1) {
+ _stopOnError = true;
+ }
+ unsigned int _type = [[impTypePopUpButton selectedItem] tag];
+ std::string _sep;
+ if (_type == 1)
+ {
+ _sep = ",";
+ }else if(_type == 2){
+ _sep = "\t";
+ }
+ std::vector<std::string> _fields;
+ if (!_headerLine && [[impFieldsTextField stringValue] isPresent])
+ {
+
+ NSArray *keys = [[NSArray alloc] initWithArray:[[impFieldsTextField stringValue] componentsSeparatedByString:@","]];
+ for (NSString *str in keys) {
+ _fields.push_back([str UTF8String]);
+ }
+ [keys release];
+ }
+
+ if (_type!=0 && !_headerLine && _fields.empty())
+ {
+ NSRunAlertPanel(@"Error", @"Please check headerline", @"OK", nil, nil);
+ return;
+ }
+
+
+ NSString *user=nil;
+ NSString *password=nil;
+ Database *db = [databasesArrayController dbInfo:conn name:dbname];
+ if (db) {
+ user = db.user;
+ password = db.password;
+ }
+ [db release];
+
+ if ([impDropCheckBox state] == 1)
+ {
+ [mongoDB dropCollection:collectionname forDB:dbname user:user password:password];
+ }
+
+ if ([impIgnoreBlanksCheckBox state] == 1)
+ {
+ _ignoreBlanks = true;
+ }
+
+ int errors = 0;
+ int num = 0;
+ const int BUF_SIZE = 1024 * 1024 * 4;
+ boost::scoped_array<char> line(new char[BUF_SIZE+2]);
+ char * buf = line.get();
+ while ( _jsonArray || in->rdstate() == 0 ) {
+ if (_jsonArray) {
+ if (buf == line.get()) { //first pass
+ in->read(buf, BUF_SIZE);
+ if (!(in->rdstate() & std::ios_base::eofbit))
+ {
+ NSRunAlertPanel(@"Error", @"JSONArray file too large", @"OK", nil, nil);
+ return;
+ }
+ buf[ in->gcount() ] = '\0';
+ }
+ }else {
+ buf = line.get();
+ in->getline( buf , BUF_SIZE );
+ }
+ if (!((!(in->rdstate() & std::ios_base::badbit)) && (!(in->rdstate() & std::ios_base::failbit) || (in->rdstate() & std::ios_base::eofbit))))
+ {
+ NSRunAlertPanel(@"Error", @"unknown error reading file", @"OK", nil, nil);
+ return;
+ }
+
+ int len = 0;
+ if (strncmp("\xEF\xBB\xBF", buf, 3) == 0) { // UTF-8 BOM (notepad is stupid)
+ buf += 3;
+ len += 3;
+ }
+
+ if (_jsonArray) {
+ while (buf[0] != '{' && buf[0] != '\0') {
+ len++;
+ buf++;
+ }
+ if (buf[0] == '\0')
+ break;
+ }else {
+ while (std::isspace( buf[0] )) {
+ len++;
+ buf++;
+ }
+ if (buf[0] == '\0')
+ continue;
+ len += strlen( buf );
+ }
+
+ try {
+ mongo::BSONObj o;
+ if (_jsonArray) {
+ int jslen;
+ o = mongo::fromjson(buf, &jslen);
+ len += jslen;
+ buf += jslen;
+ }else {
+ o = [self parseCSVLine:buf type:_type sep:_sep.c_str() headerLine:_headerLine ignoreBlanks:_ignoreBlanks fields:_fields];NSLog(@"%@", [NSString stringWithUTF8String:o.jsonString( mongo::TenGen , false ).c_str()]);
+ }
+ if ( _headerLine ) {
+ _headerLine = false;
+ }else{
+ [mongoDB insertInDB:dbname
+ collection:collectionname
+ user:user
+ password:password
+ insertData:[NSString stringWithUTF8String:o.jsonString( mongo::TenGen , false ).c_str()]
+ ];
+ }
+
+ num++;
+ }catch ( std::exception& e ) {
+ std::cout << "exception:" << e.what() << std::endl;
+ std::cout << buf << std::endl;
+ errors++;
+
+ if (_stopOnError || _jsonArray)
+ break;
+ }
+ }
+
+ [impProgressIndicator stopAnimation: self];
+ [impResultsTextField setStringValue:[NSString stringWithFormat:@"Imported %d records, %d failed", num, errors]];
+ [NSThread exit];
+ [pool release];
+}
+
- (void)controlTextDidChange:(NSNotification *)nd
{
NSTextField *ed = [nd object];
@@ -446,6 +781,9 @@ - (void)controlTextDidChange:(NSNotification *)nd
[self updateQueryComposer:nil];
}else if (ed == removeCriticalTextField) {
[self removeQueryComposer:nil];
+ }else if (ed == expCriticalTextField || ed == expFieldsTextField || ed == expSortTextField || ed == expSkipTextField || ed == expLimitTextField)
+ {
+ [self exportQueryComposer:nil];
}
}
@@ -537,6 +875,49 @@ - (IBAction)removeQueryComposer:(id)sender
[removeQueryTextField setStringValue:query];
}
+- (IBAction) exportQueryComposer:(id)sender
+{
+ NSString *critical;
+ if ([[expCriticalTextField stringValue] isPresent]) {
+ critical = [[NSString alloc] initWithString:[expCriticalTextField stringValue]];
+ }else {
+ critical = [[NSString alloc] initWithString:@""];
+ }
+
+ NSString *jsFields;
+ if ([[expFieldsTextField stringValue] isPresent]) {
+ NSArray *keys = [[NSArray alloc] initWithArray:[[expFieldsTextField stringValue] componentsSeparatedByString:@","]];
+ NSMutableArray *tmpstr = [[NSMutableArray alloc] initWithCapacity:[keys count]];
+ for (NSString *str in keys) {
+ [tmpstr addObject:[NSString stringWithFormat:@"%@:1", str]];
+ }
+ jsFields = [[NSString alloc] initWithFormat:@", {%@}", [tmpstr componentsJoinedByString:@","] ];
+ [keys release];
+ [tmpstr release];
+ }else {
+ jsFields = [[NSString alloc] initWithString:@""];
+ }
+
+ NSString *sort;
+ if ([[expSortTextField stringValue] isPresent]) {
+ sort = [[NSString alloc] initWithFormat:@".sort(%@)"];
+ }else {
+ sort = [[NSString alloc] initWithString:@""];
+ }
+
+ NSString *skip = [[NSString alloc] initWithFormat:@".skip(%d)", [expSkipTextField intValue]];
+ NSString *limit = [[NSString alloc] initWithFormat:@".limit(%d)", [expLimitTextField intValue]];
+ NSString *col = [NSString stringWithFormat:@"%@.%@", dbname, collectionname];
+
+ NSString *query = [NSString stringWithFormat:@"db.%@.find(%@%@)%@%@%@", col, critical, jsFields, sort, skip, limit];
+ [critical release];
+ [jsFields release];
+ [sort release];
+ [skip release];
+ [limit release];
+ [expQueryTextField setStringValue:query];
+}
+
- (void)showEditWindow:(id)sender
{
switch([findResultsViewController.myOutlineView selectedRow])
@@ -565,4 +946,123 @@ - (void)jsonWindowWillClose:(id)sender
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
+
+- (IBAction)chooseExportPath:(id)sender
+{
+ NSSavePanel *tvarNSSavePanelObj = [NSSavePanel savePanel];
+ int tvarInt = [tvarNSSavePanelObj runModal];
+ if(tvarInt == NSOKButton){
+ NSLog(@"doSaveAs we have an OK button");
+ //NSString * tvarDirectory = [tvarNSSavePanelObj directory];
+ //NSLog(@"doSaveAs directory = %@",tvarDirectory);
+ NSString * tvarFilename = [tvarNSSavePanelObj filename];
+ NSLog(@"doSaveAs filename = %@",tvarFilename);
+ [expPathTextField setStringValue:tvarFilename];
+ } else if(tvarInt == NSCancelButton) {
+ NSLog(@"doSaveAs we have a Cancel button");
+ return;
+ } else {
+ NSLog(@"doSaveAs tvarInt not equal 1 or zero = %3d",tvarInt);
+ return;
+ } // end if
+}
+
+- (IBAction)chooseImportPath:(id)sender
+{
+ NSOpenPanel *tvarNSOpenPanelObj = [NSOpenPanel openPanel];
+ NSInteger tvarNSInteger = [tvarNSOpenPanelObj runModalForTypes:nil];
+ if(tvarNSInteger == NSOKButton){
+ NSLog(@"doOpen we have an OK button");
+ //NSString * tvarDirectory = [tvarNSOpenPanelObj directory];
+ //NSLog(@"doOpen directory = %@",tvarDirectory);
+ NSString * tvarFilename = [tvarNSOpenPanelObj filename];
+ NSLog(@"doOpen filename = %@",tvarFilename);
+ [impPathTextField setStringValue:tvarFilename];
+ } else if(tvarNSInteger == NSCancelButton) {
+ NSLog(@"doOpen we have a Cancel button");
+ return;
+ } else {
+ NSLog(@"doOpen tvarInt not equal 1 or zero = %3d",tvarNSInteger);
+ return;
+ } // end if
+}
+
+- (mongo::BSONObj)parseCSVLine:(char *) line type:(int)_type sep:(const char *)_sep headerLine:(bool)_headerLine ignoreBlanks:(bool)_ignoreBlanks fields:(std::vector<std::string>&)_fields
+{
+ if ( _type == 0 ) {
+ char * end = ( line + strlen( line ) ) - 1;
+ while ( std::isspace(*end) ) {
+ *end = 0;
+ end--;
+ }
+ return mongo::fromjson( line );
+ }
+ mongo::BSONObjBuilder b;
+
+ unsigned int pos=0;
+ while ( line[0] ) {
+ std::string name;
+ if ( pos < _fields.size() ) {
+ name = _fields[pos];
+ }else {
+ std::stringstream ss;
+ ss << "field" << pos;
+ name = ss.str();
+ }
+ pos++;
+
+ bool done = false;
+ std::string data;
+ char * end;
+ if ( _type == 1 && line[0] == '"' ) {
+ line++; //skip first '"'
+
+ while (true) {
+ end = strchr( line , '"' );NSLog(@"%s", line);
+ if (!end) {
+ data += line;
+ done = true;
+ break;
+ } else if (end[1] == '"') {
+ // two '"'s get appended as one
+ data.append(line, end-line+1); //include '"'
+ line = end+2; //skip both '"'s
+ } else if (end[-1] == '\\') {
+ // "\\\"" gets appended as '"'
+ data.append(line, end-line-1); //exclude '\\'
+ data.append("\"");
+ line = end+1; //skip the '"'
+ } else {
+ data.append(line, end-line);
+ line = end+2; //skip '"' and ','
+ break;
+ }
+ }
+ } else {
+ end = strstr( line , _sep );NSLog(@"end: %s", end);
+ if ( ! end ) {
+ done = true;
+ data = std::string( line );
+ } else {
+ data = std::string( line , end - line );
+ line = end+1;
+ }
+ }
+
+ if ( _headerLine ) {
+ while ( std::isspace( data[0] ) )
+ data = data.substr( 1 );
+ _fields.push_back( data );
+ }else{
+ if ( !b.appendAsNumber( name , data ) && !(_ignoreBlanks && data.size() == 0) ){
+ b.append( name , data );
+ }
+ }
+
+ if ( done )
+ break;
+ }
+ return b.obj();
+}
+
@end
BIN  Resourses/images/exportmenu.png
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN  Resourses/images/importmenu.png
View
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Please sign in to comment.
Something went wrong with that request. Please try again.