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
@bububa authored
View
156 Export.xib
@@ -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>
View
126 Import.xib
@@ -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>
View
16 MongoHub.xcodeproj/project.pbxproj
@@ -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 */,
View
73 MongoHub.xcodeproj/syd.mode1v3
@@ -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>
View
625 MongoHub.xcodeproj/syd.pbxuser
@@ -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}}";
};
};
View
4,411 QueryWindow.xib
3,434 additions, 977 deletions not shown
View
55 QueryWindowController.h
@@ -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
View
500 QueryWindowController.mm
@@ -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];