aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAbhi Beckert <abhi@Twist-of-Lemon-2.local>2015-05-16 08:06:06 +1000
committerAbhi Beckert <abhi@Twist-of-Lemon-2.local>2015-05-16 08:06:06 +1000
commit57a6f6c73bdaa202164645370d37fcbe5d14a092 (patch)
treedd30aa6156064f1d4c0e10ea87059625470fc2f9
parentb5e972f4504043dfb9c358e272e93fb59ae2127f (diff)
parent0f0c43eb74408b6a65a42e2c6fd46f4142ef8e3f (diff)
downloadsequelpro-57a6f6c73bdaa202164645370d37fcbe5d14a092.tar.gz
sequelpro-57a6f6c73bdaa202164645370d37fcbe5d14a092.tar.bz2
sequelpro-57a6f6c73bdaa202164645370d37fcbe5d14a092.zip
Merge remote-tracking branch 'sequelpro/master'
-rwxr-xr-xFrameworks/Growl.framework/Versions/A/Growlbin259544 -> 1093888 bytes
-rw-r--r--Frameworks/Growl.framework/Versions/A/Headers/Growl.h5
-rw-r--r--Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge-Carbon.h780
-rw-r--r--Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h152
-rw-r--r--Frameworks/Growl.framework/Versions/A/Headers/GrowlDefines.h102
-rw-r--r--Frameworks/Growl.framework/Versions/A/Resources/Info.plist20
-rw-r--r--Frameworks/Growl.framework/Versions/A/_CodeSignature/CodeResources34
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Headers/NSNotificationCenter+OCMAdditions.h23
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Headers/OCMArg.h33
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Headers/OCMConstraint.h39
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Headers/OCMLocation.h36
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Headers/OCMMacroState.h45
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Headers/OCMRecorder.h39
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Headers/OCMStubRecorder.h56
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h84
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Headers/OCMockObject.h49
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Headers/OCMockRecorder.h28
-rwxr-xr-xFrameworks/OCMock.framework/Versions/A/OCMockbin291796 -> 191360 bytes
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Resources/Info.plist20
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Resources/License.txt15
-rw-r--r--Frameworks/OCMock.framework/Versions/A/Resources/en.lproj/InfoPlist.stringsbin0 -> 92 bytes
-rw-r--r--Frameworks/PSMTabBar/PSMTabBarControl.m6
-rw-r--r--Frameworks/PSMTabBar/PSMTabBarController.m2
-rw-r--r--Frameworks/PSMTabBar/PSMTabDragAssistant.m4
-rw-r--r--Frameworks/SPMySQLFramework/MySQL Client Libraries/include/mysql_version.h11
-rw-r--r--Frameworks/SPMySQLFramework/MySQL Client Libraries/lib/libmysqlclient.abin7884800 -> 7917176 bytes
-rw-r--r--Frameworks/SPMySQLFramework/Source/SPMySQLConnection Categories/Copying.m1
-rw-r--r--Frameworks/SPMySQLFramework/Source/SPMySQLConnection Categories/Delegate & Proxy.m2
-rw-r--r--Frameworks/SPMySQLFramework/Source/SPMySQLConnection.h10
-rw-r--r--Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m37
-rw-r--r--Frameworks/SPMySQLFramework/Source/SPMySQLConnectionProxy.h11
-rw-r--r--Frameworks/SPMySQLFramework/Source/SPMySQLResult Categories/Data Conversion.m8
-rw-r--r--Frameworks/SPMySQLFramework/Source/SPMySQLStreamingResultStore.m8
-rw-r--r--Frameworks/SPMySQLFramework/Source/SPMySQLStringAdditions.h1
-rw-r--r--Frameworks/SPMySQLFramework/Source/SPMySQLStringAdditions.m14
-rwxr-xr-xFrameworks/SPMySQLFramework/build-mysql-client.sh2
-rw-r--r--Interfaces/English.lproj/AboutPanel.xib306
-rw-r--r--Interfaces/English.lproj/BundleEditor.xib300
-rw-r--r--Interfaces/English.lproj/BundleHTMLOutput.xib76
-rw-r--r--Interfaces/English.lproj/ConnectionErrorDialog.xib30
-rw-r--r--Interfaces/English.lproj/ConnectionView.xib591
-rw-r--r--Interfaces/English.lproj/Console.xib62
-rw-r--r--Interfaces/English.lproj/ContentFilterManager.xib1276
-rw-r--r--Interfaces/English.lproj/ContentPaginationView.xib1146
-rw-r--r--Interfaces/English.lproj/DBView.xib6827
-rw-r--r--Interfaces/English.lproj/DataMigrationDialog.xib4339
-rw-r--r--Interfaces/English.lproj/DatabaseProcessList.xib87
-rw-r--r--Interfaces/English.lproj/DatabaseServerVariables.xib184
-rw-r--r--Interfaces/English.lproj/EncodingPopupView.xib51
-rw-r--r--Interfaces/English.lproj/ExportDialog.xib1229
-rw-r--r--Interfaces/English.lproj/FieldEditorSheet.xib934
-rw-r--r--Interfaces/English.lproj/GotoDatabaseDialog.xib66
-rw-r--r--Interfaces/English.lproj/ImportAccessory.xib462
-rw-r--r--Interfaces/English.lproj/IndexesView.xib1206
-rw-r--r--Interfaces/English.lproj/MainMenu.xib2677
-rw-r--r--Interfaces/English.lproj/MainWindow.xib190
-rw-r--r--Interfaces/English.lproj/Navigator.xib297
-rw-r--r--Interfaces/English.lproj/Preferences.xib2015
-rw-r--r--Interfaces/English.lproj/PrintAccessory.xib50
-rw-r--r--Interfaces/English.lproj/ProgressIndicatorLayer.xib3519
-rw-r--r--Interfaces/English.lproj/QueryFavoriteManager.xib1274
-rw-r--r--Interfaces/English.lproj/SSHQuestionDialog.xib111
-rw-r--r--Interfaces/English.lproj/SaveSPFAccessory.xib3499
-rw-r--r--Interfaces/English.lproj/UserManagerView.xib213
-rw-r--r--LICENSE2
-rw-r--r--Resources/English.lproj/AboutPanel.stringsbin914 -> 916 bytes
-rw-r--r--Resources/English.lproj/BundleEditor.stringsbin18760 -> 19068 bytes
-rw-r--r--Resources/English.lproj/ConnectionView.stringsbin43380 -> 48864 bytes
-rw-r--r--Resources/English.lproj/Console.stringsbin4020 -> 5002 bytes
-rw-r--r--Resources/English.lproj/ContentFilterManager.stringsbin10670 -> 10868 bytes
-rw-r--r--Resources/English.lproj/ContentPaginationView.stringsbin1394 -> 1510 bytes
-rw-r--r--Resources/English.lproj/DBView.stringsbin103624 -> 106324 bytes
-rw-r--r--Resources/English.lproj/DataMigrationDialog.stringsbin21316 -> 21450 bytes
-rw-r--r--Resources/English.lproj/DatabaseProcessList.stringsbin9576 -> 9648 bytes
-rw-r--r--Resources/English.lproj/ExportDialog.stringsbin24986 -> 25294 bytes
-rw-r--r--Resources/English.lproj/FieldEditorSheet.stringsbin11504 -> 12168 bytes
-rw-r--r--Resources/English.lproj/GotoDatabaseDialog.stringsbin0 -> 1294 bytes
-rw-r--r--Resources/English.lproj/IndexesView.stringsbin6522 -> 6630 bytes
-rw-r--r--Resources/English.lproj/Localizable.stringsbin245224 -> 250498 bytes
-rw-r--r--Resources/English.lproj/MainMenu.stringsbin48702 -> 49854 bytes
-rw-r--r--Resources/English.lproj/MainWindow.stringsbin166 -> 166 bytes
-rw-r--r--Resources/English.lproj/Navigator.stringsbin2076 -> 2114 bytes
-rw-r--r--Resources/English.lproj/Preferences.stringsbin40310 -> 47612 bytes
-rw-r--r--Resources/English.lproj/QueryFavoriteManager.stringsbin30004 -> 30436 bytes
-rw-r--r--Resources/English.lproj/SaveSPFAccessory.stringsbin3638 -> 3692 bytes
-rw-r--r--Resources/English.lproj/UserManagerView.stringsbin16208 -> 16244 bytes
-rw-r--r--Resources/Images/reset.pdfbin0 -> 1765 bytes
-rw-r--r--Resources/License.rtf2
-rwxr-xr-xScripts/nightlybuildscript.sh189
-rw-r--r--Scripts/nightlybuildupload.sh21
-rw-r--r--Source/DMLocalizedNib.m162
-rw-r--r--Source/DMLocalizedNibBundle.m300
-rw-r--r--Source/GeneratePreviewForURL.m38
-rw-r--r--Source/MGTemplateEngine.m21
-rw-r--r--Source/MGTemplateStandardFilters.m5
-rw-r--r--Source/MGTemplateStandardMarkers.m28
-rw-r--r--Source/NoodleLineNumberView.m24
-rw-r--r--Source/QLPreviewPanel.h119
-rw-r--r--Source/SPActivityTextFieldCell.m10
-rw-r--r--Source/SPAppController.m101
-rw-r--r--Source/SPBundleCommandRunner.m11
-rw-r--r--Source/SPBundleCommandTextView.m6
-rw-r--r--Source/SPBundleEditorController.m425
-rw-r--r--Source/SPBundleHTMLOutputController.m16
-rw-r--r--Source/SPCSVExporter.m16
-rw-r--r--Source/SPCSVParser.m26
-rw-r--r--Source/SPCharsetCollationHelper.m15
-rw-r--r--Source/SPChooseMenuItemDialog.m4
-rw-r--r--Source/SPColorSelectorView.h2
-rw-r--r--Source/SPColorSelectorView.m143
-rw-r--r--Source/SPConnectionController.m157
-rw-r--r--Source/SPConnectionControllerDelegate.m43
-rw-r--r--Source/SPConnectionControllerInitializer.m2
-rw-r--r--Source/SPConnectionHandler.m32
-rw-r--r--Source/SPConsoleMessage.m8
-rw-r--r--Source/SPConstants.h85
-rw-r--r--Source/SPConstants.m18
-rw-r--r--Source/SPContentFilterManager.m35
-rw-r--r--Source/SPCopyTable.h6
-rw-r--r--Source/SPCopyTable.m53
-rw-r--r--Source/SPCustomQuery.m144
-rw-r--r--Source/SPDataCellFormatter.m2
-rw-r--r--Source/SPDataImport.m108
-rw-r--r--Source/SPDataStorage.m16
-rw-r--r--Source/SPDatabaseAction.h32
-rw-r--r--Source/SPDatabaseAction.m48
-rw-r--r--Source/SPDatabaseCopy.h16
-rw-r--r--Source/SPDatabaseCopy.m34
-rw-r--r--Source/SPDatabaseData.m40
-rw-r--r--Source/SPDatabaseDocument.h2
-rw-r--r--Source/SPDatabaseDocument.m443
-rw-r--r--Source/SPDatabaseRename.h8
-rw-r--r--Source/SPDatabaseRename.m53
-rw-r--r--Source/SPDatabaseStructure.m11
-rw-r--r--Source/SPDatabaseViewController.m13
-rw-r--r--Source/SPDocumentController.m2
-rw-r--r--Source/SPDotExporter.m12
-rw-r--r--Source/SPEditorPreferencePane.m42
-rw-r--r--Source/SPEditorTokens.l66
-rw-r--r--Source/SPExportController+SharedPrivateAPI.h (renamed from UnitTests/SPDatabaseCopyTest.h)17
-rw-r--r--Source/SPExportController.m96
-rw-r--r--Source/SPExportControllerDelegate.m2
-rw-r--r--Source/SPExportFile.m2
-rw-r--r--Source/SPExportFileUtilities.m17
-rw-r--r--Source/SPExportFilenameUtilities.m8
-rw-r--r--Source/SPExportInitializer.m14
-rw-r--r--Source/SPExporter.m6
-rw-r--r--Source/SPExtendedTableInfo.m4
-rw-r--r--Source/SPFavoriteNode.h3
-rw-r--r--Source/SPFavoriteNode.m10
-rw-r--r--Source/SPFavoriteTextFieldCell.h3
-rw-r--r--Source/SPFavoriteTextFieldCell.m87
-rw-r--r--Source/SPFavoritesController.m50
-rw-r--r--Source/SPFavoritesExporter.m7
-rw-r--r--Source/SPFavoritesImporter.m6
-rw-r--r--Source/SPFavoritesOutlineView.h5
-rw-r--r--Source/SPFavoritesOutlineView.m7
-rw-r--r--Source/SPFieldEditorController.h51
-rw-r--r--Source/SPFieldEditorController.m234
-rw-r--r--Source/SPFieldMapperController.h9
-rw-r--r--Source/SPFieldMapperController.m301
-rw-r--r--Source/SPFileHandle.m4
-rw-r--r--Source/SPGeneralPreferencePane.m8
-rw-r--r--Source/SPGotoDatabaseController.m26
-rw-r--r--Source/SPGroupNode.h5
-rw-r--r--Source/SPGroupNode.m17
-rw-r--r--Source/SPGrowlController.m6
-rw-r--r--Source/SPHistoryController.m6
-rw-r--r--Source/SPIndexesController.h3
-rw-r--r--Source/SPIndexesController.m30
-rw-r--r--Source/SPNamedNode.h (renamed from UnitTests/SPTableCopyTest.h)14
-rw-r--r--Source/SPNarrowDownCompletion.m39
-rw-r--r--Source/SPNavigatorController.m69
-rw-r--r--Source/SPNetworkPreferencePane.h17
-rw-r--r--Source/SPNetworkPreferencePane.m262
-rw-r--r--Source/SPNotificationsPreferencePane.h3
-rw-r--r--Source/SPNotificationsPreferencePane.m81
-rw-r--r--Source/SPOSInfo.h (renamed from UnitTests/SPMutableArrayAdditionsTests.h)28
-rw-r--r--Source/SPOSInfo.m94
-rw-r--r--Source/SPParserUtils.c118
-rw-r--r--Source/SPParserUtils.h (renamed from UnitTests/SPStringAdditionsTests.h)20
-rw-r--r--Source/SPPreferenceController.h3
-rw-r--r--Source/SPPreferenceController.m53
-rw-r--r--Source/SPPreferenceControllerDelegate.h2
-rw-r--r--Source/SPPreferenceControllerDelegate.m62
-rw-r--r--Source/SPPreferencePane.h2
-rw-r--r--Source/SPPreferencePane.m5
-rw-r--r--Source/SPPreferencePaneProtocol.h5
-rw-r--r--Source/SPPreferencesUpgrade.m90
-rw-r--r--Source/SPPrintAccessory.m2
-rw-r--r--Source/SPPrintController.m4
-rw-r--r--Source/SPProcessListController.m16
-rw-r--r--Source/SPQueryController.m49
-rw-r--r--Source/SPQueryControllerInitializer.m2
-rw-r--r--Source/SPQueryDocumentsController.m13
-rw-r--r--Source/SPQueryFavoriteManager.m73
-rw-r--r--Source/SPSQLExporter.m16
-rw-r--r--Source/SPSQLParser.m9
-rw-r--r--Source/SPSQLTokenizer.l63
-rw-r--r--Source/SPSSHTunnel.m153
-rw-r--r--Source/SPServerSupport.h30
-rw-r--r--Source/SPServerSupport.m32
-rw-r--r--Source/SPServerVariablesController.m12
-rw-r--r--Source/SPSplitView.m20
-rw-r--r--Source/SPStringAdditions.h19
-rw-r--r--Source/SPStringAdditions.m107
-rw-r--r--Source/SPTableContent.h3
-rw-r--r--Source/SPTableContent.m271
-rw-r--r--Source/SPTableContentDataSource.m199
-rw-r--r--Source/SPTableContentDelegate.m24
-rw-r--r--Source/SPTableContentFilterController.h21
-rw-r--r--Source/SPTableContentFilterController.m5
-rw-r--r--Source/SPTableData.m94
-rw-r--r--Source/SPTableFieldValidation.m2
-rw-r--r--Source/SPTableFilterParser.h (renamed from UnitTests/SPMenuAdditionsTests.h)42
-rw-r--r--Source/SPTableFilterParser.m227
-rw-r--r--Source/SPTableInfo.m15
-rw-r--r--Source/SPTableRelations.h6
-rw-r--r--Source/SPTableRelations.m67
-rw-r--r--Source/SPTableStructure.m41
-rw-r--r--Source/SPTableStructureDelegate.m10
-rw-r--r--Source/SPTableStructureLoading.m14
-rw-r--r--Source/SPTableTriggers.m4
-rw-r--r--Source/SPTablesList.h1
-rw-r--r--Source/SPTablesList.m467
-rw-r--r--Source/SPTablesPreferencePane.m5
-rw-r--r--Source/SPTextAndLinkCell.m5
-rw-r--r--Source/SPTextView.m86
-rw-r--r--Source/SPTextViewAdditions.m24
-rw-r--r--Source/SPThreadAdditions.m60
-rw-r--r--Source/SPTooltip.m15
-rw-r--r--Source/SPTreeNode.h1
-rw-r--r--Source/SPTreeNode.m36
-rw-r--r--Source/SPUserManager.m50
-rw-r--r--Source/SPWindowController.h2
-rw-r--r--Source/SPWindowController.m19
-rw-r--r--Source/SPWindowControllerDelegate.m6
-rw-r--r--Source/SPWindowManagement.m16
-rw-r--r--Source/SPXMLExporter.m6
-rw-r--r--Source/Sequel-Pro.pch2
-rw-r--r--Source/xibLocalizationPostprocessor.m76
-rw-r--r--UnitTests/SPDatabaseActionTest.m92
-rw-r--r--UnitTests/SPDatabaseCopyTest.m11
-rw-r--r--UnitTests/SPDatabaseRenameTest.h40
-rw-r--r--UnitTests/SPDatabaseRenameTest.m11
-rw-r--r--UnitTests/SPMenuAdditionsTests.m17
-rw-r--r--UnitTests/SPMutableArrayAdditionsTests.m14
-rw-r--r--UnitTests/SPParserUtilsTest.m87
-rw-r--r--UnitTests/SPStringAdditionsTests.m81
-rw-r--r--UnitTests/SPTableCopyTest.m12
-rw-r--r--UnitTests/SPTableFilterParserTest.m57
-rw-r--r--readme.md2
-rw-r--r--sequel-pro.xcodeproj/project.pbxproj124
-rw-r--r--sequel-pro.xcodeproj/xcshareddata/xcschemes/Sequel Pro.xcscheme9
254 files changed, 36218 insertions, 6803 deletions
diff --git a/Frameworks/Growl.framework/Versions/A/Growl b/Frameworks/Growl.framework/Versions/A/Growl
index ee84bef2..e3567301 100755
--- a/Frameworks/Growl.framework/Versions/A/Growl
+++ b/Frameworks/Growl.framework/Versions/A/Growl
Binary files differ
diff --git a/Frameworks/Growl.framework/Versions/A/Headers/Growl.h b/Frameworks/Growl.framework/Versions/A/Headers/Growl.h
index e2a44255..7b1a3247 100644
--- a/Frameworks/Growl.framework/Versions/A/Headers/Growl.h
+++ b/Frameworks/Growl.framework/Versions/A/Headers/Growl.h
@@ -1,6 +1,5 @@
-#include "GrowlDefines.h"
+#include <Growl/GrowlDefines.h>
#ifdef __OBJC__
-# include "GrowlApplicationBridge.h"
+# include <Growl/GrowlApplicationBridge.h>
#endif
-#include "GrowlApplicationBridge-Carbon.h"
diff --git a/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge-Carbon.h b/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge-Carbon.h
deleted file mode 100644
index e7213dbe..00000000
--- a/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge-Carbon.h
+++ /dev/null
@@ -1,780 +0,0 @@
-//
-// GrowlApplicationBridge-Carbon.h
-// Growl
-//
-// Created by Peter Hosey on Wed Jun 18 2004.
-// Based on GrowlApplicationBridge.h by Evan Schoenberg.
-// This source code is in the public domain. You may freely link it into any
-// program.
-//
-
-#ifndef _GROWLAPPLICATIONBRIDGE_CARBON_H_
-#define _GROWLAPPLICATIONBRIDGE_CARBON_H_
-
-#include <sys/cdefs.h>
-#include <Carbon/Carbon.h>
-
-#ifndef GROWL_EXPORT
-#define GROWL_EXPORT __attribute__((visibility("default"))) DEPRECATED_ATTRIBUTE
-#endif
-
-/*! @header GrowlApplicationBridge-Carbon.h
- * @abstract Declares an API that Carbon applications can use to interact with Growl.
- * @discussion GrowlApplicationBridge uses a delegate to provide information //XXX
- * to Growl (such as your application's name and what notifications it may
- * post) and to provide information to your application (such as that Growl
- * is listening for notifications or that a notification has been clicked).
- *
- * You can set the Growldelegate with Growl_SetDelegate and find out the
- * current delegate with Growl_GetDelegate. See struct Growl_Delegate for more
- * information about the delegate.
- */
-
-__BEGIN_DECLS
-
-/*! @struct Growl_Delegate
- * @abstract Delegate to supply GrowlApplicationBridge with information and respond to events.
- * @discussion The Growl delegate provides your interface to
- * GrowlApplicationBridge. When GrowlApplicationBridge needs information about
- * your application, it looks for it in the delegate; when Growl or the user
- * does something that you might be interested in, GrowlApplicationBridge
- * looks for a callback in the delegate and calls it if present
- * (meaning, if it is not <code>NULL</code>).
- * XXX on all of that
- * @field size The size of the delegate structure.
- * @field applicationName The name of your application.
- * @field registrationDictionary A dictionary describing your application and the notifications it can send out.
- * @field applicationIconData Your application's icon.
- * @field growlInstallationWindowTitle The title of the installation window.
- * @field growlInstallationInformation Text to display in the installation window.
- * @field growlUpdateWindowTitle The title of the update window.
- * @field growlUpdateInformation Text to display in the update window.
- * @field referenceCount A count of owners of the delegate.
- * @field retain Called when GrowlApplicationBridge receives this delegate.
- * @field release Called when GrowlApplicationBridge no longer needs this delegate.
- * @field growlIsReady Called when GrowlHelperApp is listening for notifications.
- * @field growlNotificationWasClicked Called when a Growl notification is clicked.
- * @field growlNotificationTimedOut Called when a Growl notification timed out.
- */
-struct Growl_Delegate {
- /* @discussion This should be sizeof(struct Growl_Delegate).
- */
- size_t size;
-
- /*All of these attributes are optional.
- *Optional attributes can be NULL; required attributes that
- * are NULL cause setting the Growl delegate to fail.
- *XXX - move optional/required status into the discussion for each field
- */
-
- /* This name is used both internally and in the Growl preferences.
- *
- * This should remain stable between different versions and incarnations of
- * your application.
- * For example, "SurfWriter" is a good app name, whereas "SurfWriter 2.0" and
- * "SurfWriter Lite" are not.
- *
- * This can be <code>NULL</code> if it is provided elsewhere, namely in an
- * auto-discoverable plist file in your app bundle
- * (XXX refer to more information on that) or in registrationDictionary.
- */
- CFStringRef applicationName;
-
- /*
- * Must contain at least these keys:
- * GROWL_NOTIFICATIONS_ALL (CFArray):
- * Contains the names of all notifications your application may post.
- *
- * Can also contain these keys:
- * GROWL_NOTIFICATIONS_DEFAULT (CFArray):
- * Names of notifications that should be enabled by default.
- * If omitted, GROWL_NOTIFICATIONS_ALL will be used.
- * GROWL_APP_NAME (CFString):
- * Same as the applicationName member of this structure.
- * If both are present, the applicationName member shall prevail.
- * If this key is present, you may omit applicationName (set it to <code>NULL</code>).
- * GROWL_APP_ICON (CFData):
- * Same as the iconData member of this structure.
- * If both are present, the iconData member shall prevail.
- * If this key is present, you may omit iconData (set it to <code>NULL</code>).
- *
- * If you change the contents of this dictionary after setting the delegate,
- * be sure to call Growl_Reregister.
- *
- * This can be <code>NULL</code> if you have an auto-discoverable plist file in your app
- * bundle. (XXX refer to more information on that)
- */
- CFDictionaryRef registrationDictionary;
-
- /* The data can be in any format supported by NSImage. As of
- * Mac OS X 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and
- * PICT formats.
- *
- * If this is not supplied, Growl will look up your application's icon by
- * its application name.
- */
- CFDataRef applicationIconData;
-
- /* Installer display attributes
- *
- * These four attributes are used by the Growl installer, if this framework
- * supports it.
- * For any of these being <code>NULL</code>, a localised default will be
- * supplied.
- */
-
- /* If this is <code>NULL</code>, Growl will use a default,
- * localized title.
- *
- * Only used if you're using Growl-WithInstaller.framework. Otherwise,
- * this member is ignored.
- */
- CFStringRef growlInstallationWindowTitle;
- /* This information may be as long or short as desired (the
- * window will be sized to fit it). If Growl is not installed, it will
- * be displayed to the user as an explanation of what Growl is and what
- * it can do in your application.
- * It should probably note that no download is required to install.
- *
- * If this is <code>NULL</code>, Growl will use a default, localized
- * explanation.
- *
- * Only used if you're using Growl-WithInstaller.framework. Otherwise,
- * this member is ignored.
- */
- CFStringRef growlInstallationInformation;
- /* If this is <code>NULL</code>, Growl will use a default,
- * localized title.
- *
- * Only used if you're using Growl-WithInstaller.framework. Otherwise,
- * this member is ignored.
- */
- CFStringRef growlUpdateWindowTitle;
- /* This information may be as long or short as desired (the
- * window will be sized to fit it). If an older version of Growl is
- * installed, it will be displayed to the user as an explanation that an
- * updated version of Growl is included in your application and
- * no download is required.
- *
- * If this is <code>NULL</code>, Growl will use a default, localized
- * explanation.
- *
- * Only used if you're using Growl-WithInstaller.framework. Otherwise,
- * this member is ignored.
- */
- CFStringRef growlUpdateInformation;
-
- /* This member is provided for use by your retain and release
- * callbacks (see below).
- *
- * GrowlApplicationBridge never directly uses this member. Instead, it
- * calls your retain callback (if non-<code>NULL</code>) and your release
- * callback (if non-<code>NULL</code>).
- */
- unsigned referenceCount;
-
- //Functions. Currently all of these are optional (any of them can be NULL).
-
- /* When you call Growl_SetDelegate(newDelegate), it will call
- * oldDelegate->release(oldDelegate), and then it will call
- * newDelegate->retain(newDelegate), and the return value from retain
- * is what will be set as the delegate.
- * (This means that this member works like CFRetain and -[NSObject retain].)
- * This member is optional (it can be <code>NULL</code>).
- * For a delegate allocated with malloc, this member would be
- * <code>NULL</code>.
- * @result A delegate to which GrowlApplicationBridge holds a reference.
- */
- void *(*retain)(void *);
- /* When you call Growl_SetDelegate(newDelegate), it will call
- * oldDelegate->release(oldDelegate), and then it will call
- * newDelegate->retain(newDelegate), and the return value from retain
- * is what will be set as the delegate.
- * (This means that this member works like CFRelease and
- * -[NSObject release].)
- * This member is optional (it can be NULL).
- * For a delegate allocated with malloc, this member might be
- * <code>free</code>(3).
- */
- void (*release)(void *);
-
- /* Informs the delegate that Growl (specifically, the GrowlHelperApp) was
- * launched successfully (or was already running). The application can
- * take actions with the knowledge that Growl is installed and functional.
- */
- void (*growlIsReady)(void);
-
- /* Informs the delegate that a Growl notification was clicked. It is only
- * sent for notifications sent with a non-<code>NULL</code> clickContext,
- * so if you want to receive a message when a notification is clicked,
- * clickContext must not be <code>NULL</code> when calling
- * Growl_PostNotification or
- * Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext.
- */
- void (*growlNotificationWasClicked)(CFPropertyListRef clickContext);
-
- /* Informs the delegate that a Growl notification timed out. It is only
- * sent for notifications sent with a non-<code>NULL</code> clickContext,
- * so if you want to receive a message when a notification is clicked,
- * clickContext must not be <code>NULL</code> when calling
- * Growl_PostNotification or
- * Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext.
- */
- void (*growlNotificationTimedOut)(CFPropertyListRef clickContext);
-};
-
-/*! @struct Growl_Notification
- * @abstract Structure describing a Growl notification.
- * @discussion XXX
- * @field size The size of the notification structure.
- * @field name Identifies the notification.
- * @field title Short synopsis of the notification.
- * @field description Additional text.
- * @field iconData An icon for the notification.
- * @field priority An indicator of the notification's importance.
- * @field reserved Bits reserved for future usage.
- * @field isSticky Requests that a notification stay on-screen until dismissed explicitly.
- * @field clickContext An identifier to be passed to your click callback when a notification is clicked.
- * @field clickCallback A callback to call when the notification is clicked.
- */
-struct Growl_Notification {
- /* This should be sizeof(struct Growl_Notification).
- */
- size_t size;
-
- /* The notification name distinguishes one type of
- * notification from another. The name should be human-readable, as it
- * will be displayed in the Growl preference pane.
- *
- * The name is used in the GROWL_NOTIFICATIONS_ALL and
- * GROWL_NOTIFICATIONS_DEFAULT arrays in the registration dictionary, and
- * in this member of the Growl_Notification structure.
- */
- CFStringRef name;
-
- /* A notification's title describes the notification briefly.
- * It should be easy to read quickly by the user.
- */
- CFStringRef title;
-
- /* The description supplements the title with more
- * information. It is usually longer and sometimes involves a list of
- * subjects. For example, for a 'Download complete' notification, the
- * description might have one filename per line. GrowlMail in Growl 0.6
- * uses a description of '%d new mail(s)' (formatted with the number of
- * messages).
- */
- CFStringRef description;
-
- /* The notification icon usually indicates either what
- * happened (it may have the same icon as e.g. a toolbar item that
- * started the process that led to the notification), or what it happened
- * to (e.g. a document icon).
- *
- * The icon data is optional, so it can be <code>NULL</code>. In that
- * case, the application icon is used alone. Not all displays support
- * icons.
- *
- * The data can be in any format supported by NSImage. As of Mac OS X
- * 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and PICT form
- * ats.
- */
- CFDataRef iconData;
-
- /* Priority is new in Growl 0.6, and is represented as a
- * signed integer from -2 to +2. 0 is Normal priority, -2 is Very Low
- * priority, and +2 is Very High priority.
- *
- * Not all displays support priority. If you do not wish to assign a
- * priority to your notification, assign 0.
- */
- signed int priority;
-
- /* These bits are not used in Growl 0.6. Set them to 0.
- */
- unsigned reserved: 31;
-
- /* When the sticky bit is clear, in most displays,
- * notifications disappear after a certain amount of time. Sticky
- * notifications, however, remain on-screen until the user dismisses them
- * explicitly, usually by clicking them.
- *
- * Sticky notifications were introduced in Growl 0.6. Most notifications
- * should not be sticky. Not all displays support sticky notifications,
- * and the user may choose in Growl's preference pane to force the
- * notification to be sticky or non-sticky, in which case the sticky bit
- * in the notification will be ignored.
- */
- unsigned isSticky: 1;
-
- /* If this is not <code>NULL</code>, and your click callback
- * is not <code>NULL</code> either, this will be passed to the callback
- * when your notification is clicked by the user.
- *
- * Click feedback was introduced in Growl 0.6, and it is optional. Not
- * all displays support click feedback.
- */
- CFPropertyListRef clickContext;
-
- /* If this is not <code>NULL</code>, it will be called instead
- * of the Growl delegate's click callback when clickContext is
- * non-<code>NULL</code> and the notification is clicked on by the user.
- *
- * Click feedback was introduced in Growl 0.6, and it is optional. Not
- * all displays support click feedback.
- *
- * The per-notification click callback is not yet supported as of Growl
- * 0.7.
- */
- void (*clickCallback)(CFPropertyListRef clickContext);
-
- CFStringRef identifier;
-};
-
-#pragma mark -
-#pragma mark Easy initialisers
-
-/*! @defined InitGrowlDelegate
- * @abstract Callable macro. Initializes a Growl delegate structure to defaults.
- * @discussion Call with a pointer to a struct Growl_Delegate. All of the
- * members of the structure will be set to 0 or <code>NULL</code>, except for
- * size (which will be set to <code>sizeof(struct Growl_Delegate)</code>) and
- * referenceCount (which will be set to 1).
- */
-#define InitGrowlDelegate(delegate) \
- do { \
- if (delegate) { \
- (delegate)->size = sizeof(struct Growl_Delegate); \
- (delegate)->applicationName = NULL; \
- (delegate)->registrationDictionary = NULL; \
- (delegate)->applicationIconData = NULL; \
- (delegate)->growlInstallationWindowTitle = NULL; \
- (delegate)->growlInstallationInformation = NULL; \
- (delegate)->growlUpdateWindowTitle = NULL; \
- (delegate)->growlUpdateInformation = NULL; \
- (delegate)->referenceCount = 1U; \
- (delegate)->retain = NULL; \
- (delegate)->release = NULL; \
- (delegate)->growlIsReady = NULL; \
- (delegate)->growlNotificationWasClicked = NULL; \
- (delegate)->growlNotificationTimedOut = NULL; \
- } \
- } while(0)
-
-/*! @defined InitGrowlNotification
- * @abstract Callable macro. Initializes a Growl notification structure to defaults.
- * @discussion Call with a pointer to a struct Growl_Notification. All of
- * the members of the structure will be set to 0 or <code>NULL</code>, except
- * for size (which will be set to
- * <code>sizeof(struct Growl_Notification)</code>).
- */
-#define InitGrowlNotification(notification) \
- do { \
- if (notification) { \
- (notification)->size = sizeof(struct Growl_Notification); \
- (notification)->name = NULL; \
- (notification)->title = NULL; \
- (notification)->description = NULL; \
- (notification)->iconData = NULL; \
- (notification)->priority = 0; \
- (notification)->reserved = 0U; \
- (notification)->isSticky = false; \
- (notification)->clickContext = NULL; \
- (notification)->clickCallback = NULL; \
- (notification)->identifier = NULL; \
- } \
- } while(0)
-
-#pragma mark -
-#pragma mark Public API
-
-// @functiongroup Managing the Growl delegate
-
-/*! @function Growl_SetDelegate
- * @abstract Replaces the current Growl delegate with a new one, or removes
- * the Growl delegate.
- * @param newDelegate
- * @result Returns false and does nothing else if a pointer that was passed in
- * is unsatisfactory (because it is non-<code>NULL</code>, but at least one
- * required member of it is <code>NULL</code>). Otherwise, sets or unsets the
- * delegate and returns true.
- * @discussion When <code>newDelegate</code> is non-<code>NULL</code>, sets
- * the delegate to <code>newDelegate</code>. When it is <code>NULL</code>,
- * the current delegate will be unset, and no delegate will be in place.
- *
- * It is legal for <code>newDelegate</code> to be the current delegate;
- * nothing will happen, and Growl_SetDelegate will return true. It is also
- * legal for it to be <code>NULL</code>, as described above; again, it will
- * return true.
- *
- * If there was a delegate in place before the call, Growl_SetDelegate will
- * call the old delegate's release member if it was non-<code>NULL</code>. If
- * <code>newDelegate</code> is non-<code>NULL</code>, Growl_SetDelegate will
- * call <code>newDelegate->retain</code>, and set the delegate to its return
- * value.
- *
- * If you are using Growl-WithInstaller.framework, and an older version of
- * Growl is installed on the user's system, the user will automatically be
- * prompted to update.
- *
- * GrowlApplicationBridge currently does not copy this structure, nor does it
- * retain any of the CF objects in the structure (it regards the structure as
- * a container that retains the objects when they are added and releases them
- * when they are removed or the structure is destroyed). Also,
- * GrowlApplicationBridge currently does not modify any member of the
- * structure, except possibly the referenceCount by calling the retain and
- * release members.
- */
-GROWL_EXPORT Boolean Growl_SetDelegate(struct Growl_Delegate *newDelegate);
-
-/*! @function Growl_GetDelegate
- * @abstract Returns the current Growl delegate, if any.
- * @result The current Growl delegate.
- * @discussion Returns the last pointer passed into Growl_SetDelegate, or
- * <code>NULL</code> if no such call has been made.
- *
- * This function follows standard Core Foundation reference-counting rules.
- * Because it is a Get function, not a Copy function, it will not retain the
- * delegate on your behalf. You are responsible for retaining and releasing
- * the delegate as needed.
- */
-GROWL_EXPORT struct Growl_Delegate *Growl_GetDelegate(void);
-
-#pragma mark -
-
-// @functiongroup Posting Growl notifications
-
-/*! @function Growl_PostNotification
- * @abstract Posts a Growl notification.
- * @param notification The notification to post.
- * @discussion This is the preferred means for sending a Growl notification.
- * The notification name and at least one of the title and description are
- * required (all three are preferred). All other parameters may be
- * <code>NULL</code> (or 0 or false as appropriate) to accept default values.
- *
- * If using the Growl-WithInstaller framework, if Growl is not installed the
- * user will be prompted to install Growl.
- * If the user cancels, this function will have no effect until the next
- * application session, at which time when it is called the user will be
- * prompted again. The user is also given the option to not be prompted again.
- * If the user does choose to install Growl, the requested notification will
- * be displayed once Growl is installed and running.
- */
-GROWL_EXPORT void Growl_PostNotification(const struct Growl_Notification *notification);
-
-/*! @function Growl_PostNotificationWithDictionary
-* @abstract Notifies using a userInfo dictionary suitable for passing to
-* CFDistributedNotificationCenter.
-* @param userInfo The dictionary to notify with.
-* @discussion Before Growl 0.6, your application would have posted
-* notifications using CFDistributedNotificationCenter by creating a userInfo
-* dictionary with the notification data. This had the advantage of allowing
-* you to add other data to the dictionary for programs besides Growl that
-* might be listening.
-*
-* This function allows you to use such dictionaries without being restricted
-* to using CFDistributedNotificationCenter. The keys for this dictionary
- * can be found in GrowlDefines.h.
-*/
-GROWL_EXPORT void Growl_PostNotificationWithDictionary(CFDictionaryRef userInfo);
-
-/*! @function Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext
- * @abstract Posts a Growl notification using parameter values.
- * @param title The title of the notification.
- * @param description The description of the notification.
- * @param notificationName The name of the notification as listed in the
- * registration dictionary.
- * @param iconData Data representing a notification icon. Can be <code>NULL</code>.
- * @param priority The priority of the notification (-2 to +2, with -2
- * being Very Low and +2 being Very High).
- * @param isSticky If true, requests that this notification wait for a
- * response from the user.
- * @param clickContext An object to pass to the clickCallback, if any. Can
- * be <code>NULL</code>, in which case the clickCallback is not called.
- * @discussion Creates a temporary Growl_Notification, fills it out with the
- * supplied information, and calls Growl_PostNotification on it.
- * See struct Growl_Notification and Growl_PostNotification for more
- * information.
- *
- * The icon data can be in any format supported by NSImage. As of Mac OS X
- * 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and PICT formats.
- */
-GROWL_EXPORT void Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext(
- /*inhale*/
- CFStringRef title,
- CFStringRef description,
- CFStringRef notificationName,
- CFDataRef iconData,
- signed int priority,
- Boolean isSticky,
- CFPropertyListRef clickContext);
-
-#pragma mark -
-
-// @functiongroup Registering
-
-/*! @function Growl_RegisterWithDictionary
- * @abstract Register your application with Growl without setting a delegate.
- * @discussion When you call this function with a dictionary,
- * GrowlApplicationBridge registers your application using that dictionary.
- * If you pass <code>NULL</code>, GrowlApplicationBridge will ask the delegate
- * (if there is one) for a dictionary, and if that doesn't work, it will look
- * in your application's bundle for an auto-discoverable plist.
- * (XXX refer to more information on that)
- *
- * If you pass a dictionary to this function, it must include the
- * <code>GROWL_APP_NAME</code> key, unless a delegate is set.
- *
- * This function is mainly an alternative to the delegate system introduced
- * with Growl 0.6. Without a delegate, you cannot receive callbacks such as
- * <code>growlIsReady</code> (since they are sent to the delegate). You can,
- * however, set a delegate after registering without one.
- *
- * This function was introduced in Growl.framework 0.7.
- * @result <code>false</code> if registration failed (e.g. if Growl isn't installed).
- */
-GROWL_EXPORT Boolean Growl_RegisterWithDictionary(CFDictionaryRef regDict);
-
-/*! @function Growl_Reregister
- * @abstract Updates your registration with Growl.
- * @discussion If your application changes the contents of the
- * GROWL_NOTIFICATIONS_ALL key in the registrationDictionary member of the
- * Growl delegate, or if it changes the value of that member, or if it
- * changes the contents of its auto-discoverable plist, call this function
- * to have Growl update its registration information for your application.
- *
- * Otherwise, this function does not normally need to be called. If you're
- * using a delegate, your application will be registered when you set the
- * delegate if both the delegate and its registrationDictionary member are
- * non-<code>NULL</code>.
- *
- * This function is now implemented using
- * <code>Growl_RegisterWithDictionary</code>.
- */
-GROWL_EXPORT void Growl_Reregister(void);
-
-#pragma mark -
-
-/*! @function Growl_SetWillRegisterWhenGrowlIsReady
- * @abstract Tells GrowlApplicationBridge to register with Growl when Growl
- * launches (or not).
- * @discussion When Growl has started listening for notifications, it posts a
- * <code>GROWL_IS_READY</code> notification on the Distributed Notification
- * Center. GrowlApplicationBridge listens for this notification, using it to
- * perform various tasks (such as calling your delegate's
- * <code>growlIsReady</code> callback, if it has one). If this function is
- * called with <code>true</code>, one of those tasks will be to reregister
- * with Growl (in the manner of <code>Growl_Reregister</code>).
- *
- * This attribute is automatically set back to <code>false</code>
- * (the default) after every <code>GROWL_IS_READY</code> notification.
- * @param flag <code>true</code> if you want GrowlApplicationBridge to register with
- * Growl when next it is ready; <code>false</code> if not.
- */
-GROWL_EXPORT void Growl_SetWillRegisterWhenGrowlIsReady(Boolean flag);
-/*! @function Growl_WillRegisterWhenGrowlIsReady
- * @abstract Reports whether GrowlApplicationBridge will register with Growl
- * when Growl next launches.
- * @result <code>true</code> if GrowlApplicationBridge will register with
- * Growl when next it posts GROWL_IS_READY; <code>false</code> if not.
- */
-GROWL_EXPORT Boolean Growl_WillRegisterWhenGrowlIsReady(void);
-
-#pragma mark -
-
-// @functiongroup Obtaining registration dictionaries
-
-/*! @function Growl_CopyRegistrationDictionaryFromDelegate
- * @abstract Asks the delegate for a registration dictionary.
- * @discussion If no delegate is set, or if the delegate's
- * <code>registrationDictionary</code> member is <code>NULL</code>, this
- * function returns <code>NULL</code>.
- *
- * This function does not attempt to clean up the dictionary in any way - for
- * example, if it is missing the <code>GROWL_APP_NAME</code> key, the result
- * will be missing it too. Use
- * <code>Growl_CreateRegistrationDictionaryByFillingInDictionary</code> or
- * <code>Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys</code>
- * to try to fill in missing keys.
- *
- * This function was introduced in Growl.framework 0.7.
- * @result A registration dictionary.
- */
-GROWL_EXPORT CFDictionaryRef Growl_CopyRegistrationDictionaryFromDelegate(void);
-
-/*! @function Growl_CopyRegistrationDictionaryFromBundle
- * @abstract Looks in a bundle for a registration dictionary.
- * @discussion This function looks in a bundle for an auto-discoverable
- * registration dictionary file using <code>CFBundleCopyResourceURL</code>.
- * If it finds one, it loads the file using <code>CFPropertyList</code> and
- * returns the result.
- *
- * If you pass <code>NULL</code> as the bundle, the main bundle is examined.
- *
- * This function does not attempt to clean up the dictionary in any way - for
- * example, if it is missing the <code>GROWL_APP_NAME</code> key, the result
- * will be missing it too. Use
- * <code>Growl_CreateRegistrationDictionaryByFillingInDictionary:</code> or
- * <code>Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys</code>
- * to try to fill in missing keys.
- *
- * This function was introduced in Growl.framework 0.7.
- * @result A registration dictionary.
- */
-GROWL_EXPORT CFDictionaryRef Growl_CopyRegistrationDictionaryFromBundle(CFBundleRef bundle);
-
-/*! @function Growl_CreateBestRegistrationDictionary
- * @abstract Obtains a registration dictionary, filled out to the best of
- * GrowlApplicationBridge's knowledge.
- * @discussion This function creates a registration dictionary as best
- * GrowlApplicationBridge knows how.
- *
- * First, GrowlApplicationBridge examines the Growl delegate (if there is
- * one) and gets the registration dictionary from that. If no such dictionary
- * was obtained, GrowlApplicationBridge looks in your application's main
- * bundle for an auto-discoverable registration dictionary file. If that
- * doesn't exist either, this function returns <code>NULL</code>.
- *
- * Second, GrowlApplicationBridge calls
- * <code>Growl_CreateRegistrationDictionaryByFillingInDictionary</code> with
- * whatever dictionary was obtained. The result of that function is the
- * result of this function.
- *
- * GrowlApplicationBridge uses this function when you call
- * <code>Growl_SetDelegate</code>, or when you call
- * <code>Growl_RegisterWithDictionary</code> with <code>NULL</code>.
- *
- * This function was introduced in Growl.framework 0.7.
- * @result A registration dictionary.
- */
-GROWL_EXPORT CFDictionaryRef Growl_CreateBestRegistrationDictionary(void);
-
-#pragma mark -
-
-// @functiongroup Filling in registration dictionaries
-
-/*! @function Growl_CreateRegistrationDictionaryByFillingInDictionary
- * @abstract Tries to fill in missing keys in a registration dictionary.
- * @param regDict The dictionary to fill in.
- * @result The dictionary with the keys filled in.
- * @discussion This function examines the passed-in dictionary for missing keys,
- * and tries to work out correct values for them. As of 0.7, it uses:
- *
- * Key Value
- * --- -----
- * <code>GROWL_APP_NAME</code> <code>CFBundleExecutableName</code>
- * <code>GROWL_APP_ICON</code> The icon of the application.
- * <code>GROWL_APP_LOCATION</code> The location of the application.
- * <code>GROWL_NOTIFICATIONS_DEFAULT</code> <code>GROWL_NOTIFICATIONS_ALL</code>
- *
- * Keys are only filled in if missing; if a key is present in the dictionary,
- * its value will not be changed.
- *
- * This function was introduced in Growl.framework 0.7.
- */
-GROWL_EXPORT CFDictionaryRef Growl_CreateRegistrationDictionaryByFillingInDictionary(CFDictionaryRef regDict);
-/*! @function Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys
- * @abstract Tries to fill in missing keys in a registration dictionary.
- * @param regDict The dictionary to fill in.
- * @param keys The keys to fill in. If <code>NULL</code>, any missing keys are filled in.
- * @result The dictionary with the keys filled in.
- * @discussion This function examines the passed-in dictionary for missing keys,
- * and tries to work out correct values for them. As of 0.7, it uses:
- *
- * Key Value
- * --- -----
- * <code>GROWL_APP_NAME</code> <code>CFBundleExecutableName</code>
- * <code>GROWL_APP_ICON</code> The icon of the application.
- * <code>GROWL_APP_LOCATION</code> The location of the application.
- * <code>GROWL_NOTIFICATIONS_DEFAULT</code> <code>GROWL_NOTIFICATIONS_ALL</code>
- *
- * Only those keys that are listed in <code>keys</code> will be filled in.
- * Other missing keys are ignored. Also, keys are only filled in if missing;
- * if a key is present in the dictionary, its value will not be changed.
- *
- * This function was introduced in Growl.framework 0.7.
- */
-GROWL_EXPORT CFDictionaryRef Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys(CFDictionaryRef regDict, CFSetRef keys);
-
-/*! @brief Tries to fill in missing keys in a notification dictionary.
- * @param notifDict The dictionary to fill in.
- * @return The dictionary with the keys filled in. This will be a separate instance from \a notifDict.
- * @discussion This function examines the \a notifDict for missing keys, and
- * tries to get them from the last known registration dictionary. As of 1.1,
- * the keys that it will look for are:
- *
- * \li <code>GROWL_APP_NAME</code>
- * \li <code>GROWL_APP_ICON</code>
- *
- * @since Growl.framework 1.1
- */
-GROWL_EXPORT CFDictionaryRef Growl_CreateNotificationDictionaryByFillingInDictionary(CFDictionaryRef notifDict);
-
-#pragma mark -
-
-// @functiongroup Querying Growl's status
-
-/*! @function Growl_IsInstalled
- * @abstract Determines whether the Growl prefpane and its helper app are
- * installed.
- * @result Returns true if Growl is installed, false otherwise.
- */
-GROWL_EXPORT Boolean Growl_IsInstalled(void);
-
-/*! @function Growl_IsRunning
- * @abstract Cycles through the process list to find whether GrowlHelperApp
- * is running.
- * @result Returns true if Growl is running, false otherwise.
- */
-GROWL_EXPORT Boolean Growl_IsRunning(void);
-
-#pragma mark -
-
-// @functiongroup Launching Growl
-
-/*! @typedef GrowlLaunchCallback
- * @abstract Callback to notify you that Growl is running.
- * @param context The context pointer passed to Growl_LaunchIfInstalled.
- * @discussion Growl_LaunchIfInstalled calls this callback function if Growl
- * was already running or if it launched Growl successfully.
- */
-typedef void (*GrowlLaunchCallback)(void *context);
-
-/*! @function Growl_LaunchIfInstalled
- * @abstract Launches GrowlHelperApp if it is not already running.
- * @param callback A callback function which will be called if Growl was successfully
- * launched or was already running. Can be <code>NULL</code>.
- * @param context The context pointer to pass to the callback. Can be <code>NULL</code>.
- * @result Returns true if Growl was successfully launched or was already
- * running; returns false and does not call the callback otherwise.
- * @discussion Returns true and calls the callback (if the callback is not
- * <code>NULL</code>) if the Growl helper app began launching or was already
- * running. Returns false and performs no other action if Growl could not be
- * launched (e.g. because the Growl preference pane is not properly installed).
- *
- * If <code>Growl_CreateBestRegistrationDictionary</code> returns
- * non-<code>NULL</code>, this function will register with Growl atomically.
- *
- * The callback should take a single argument; this is to allow applications
- * to have context-relevant information passed back. It is perfectly
- * acceptable for context to be <code>NULL</code>. The callback itself can be
- * <code>NULL</code> if you don't want one.
- */
-GROWL_EXPORT Boolean Growl_LaunchIfInstalled(GrowlLaunchCallback callback, void *context);
-
-#pragma mark -
-#pragma mark Constants
-
-/*! @defined GROWL_PREFPANE_BUNDLE_IDENTIFIER
- * @abstract The CFBundleIdentifier of the Growl preference pane bundle.
- * @discussion GrowlApplicationBridge uses this to determine whether Growl is
- * currently installed, by searching for the Growl preference pane. Your
- * application probably does not need to use this macro itself.
- */
-#ifndef GROWL_PREFPANE_BUNDLE_IDENTIFIER
-#define GROWL_PREFPANE_BUNDLE_IDENTIFIER CFSTR("com.growl.prefpanel")
-#endif
-
-__END_DECLS
-
-#endif /* _GROWLAPPLICATIONBRIDGE_CARBON_H_ */
diff --git a/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h b/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h
index 8afda27e..36397576 100644
--- a/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h
+++ b/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h
@@ -18,14 +18,11 @@
#import <Foundation/Foundation.h>
#import <AppKit/AppKit.h>
-#import "GrowlDefines.h"
+#import <Growl/GrowlDefines.h>
//Forward declarations
@protocol GrowlApplicationBridgeDelegate;
-//Internal notification when the user chooses not to install (to avoid continuing to cache notifications awaiting installation)
-#define GROWL_USER_CHOSE_NOT_TO_INSTALL_NOTIFICATION @"User chose not to install"
-
//------------------------------------------------------------------------------
#pragma mark -
@@ -45,7 +42,7 @@
* @method isGrowlInstalled
* @abstract Detects whether Growl is installed.
* @discussion Determines if the Growl prefpane and its helper app are installed.
- * @result this method will forever return YES
+ * @result this method will forever return YES.
*/
+ (BOOL) isGrowlInstalled __attribute__((deprecated));
@@ -57,6 +54,34 @@
*/
+ (BOOL) isGrowlRunning;
+
+/*!
+ * @method isMistEnabled
+ * @abstract Gives the caller a fairly good indication of whether or not built-in notifications(Mist) will be used.
+ * @discussion since this call makes use of isGrowlRunning it is entirely possible for this value to change between call and
+ * executing a notification dispatch
+ * @result Returns YES if Growl isn't reachable and the developer has not opted-out of
+ * Mist and the user hasn't set the global mist enable key to false.
+ */
++ (BOOL)isMistEnabled;
+
+/*!
+ * @method setShouldUseBuiltInNotifications
+ * @abstract opt-out mechanism for the mist notification style in the event growl can't be reached.
+ * @discussion if growl is unavailable due to not being installed or as a result of being turned off then
+ * this option can enable/disable a built-in fire and forget display style
+ * @param should Specifies whether or not the developer wants to opt-in (default) or opt out
+ * of the built-in Mist style in the event Growl is unreachable.
+ */
++ (void)setShouldUseBuiltInNotifications:(BOOL)should;
+
+/*!
+ * @method shouldUseBuiltInNotifications
+ * @abstract returns the current opt-in state of the framework's use of the Mist display style.
+ * @result Returns NO if the developer opt-ed out of Mist, the default value is YES.
+ */
++ (BOOL)shouldUseBuiltInNotifications;
+
#pragma mark -
/*!
@@ -87,7 +112,7 @@
*
* @param inDelegate The delegate for the GrowlApplicationBridge. It must conform to the GrowlApplicationBridgeDelegate protocol.
*/
-+ (void) setGrowlDelegate:(NSObject<GrowlApplicationBridgeDelegate> *)inDelegate;
++ (void) setGrowlDelegate:(id<GrowlApplicationBridgeDelegate>)inDelegate;
/*!
* @method growlDelegate
@@ -95,7 +120,7 @@
* @discussion See setGrowlDelegate: for details.
* @result The Growl delegate.
*/
-+ (NSObject<GrowlApplicationBridgeDelegate> *) growlDelegate;
++ (id<GrowlApplicationBridgeDelegate>) growlDelegate;
#pragma mark -
@@ -235,6 +260,7 @@
* Growl when next it is ready; <code>NO</code> if not.
*/
+ (void) setWillRegisterWhenGrowlIsReady:(BOOL)flag;
+
/*! @method willRegisterWhenGrowlIsReady
* @abstract Reports whether GrowlApplicationBridge will register with Growl
* when Growl next launches.
@@ -323,7 +349,7 @@
* Key Value
* --- -----
* <code>GROWL_APP_NAME</code> <code>CFBundleExecutableName</code>
- * <code>GROWL_APP_ICON</code> The icon of the application.
+ * <code>GROWL_APP_ICON_DATA</code> The data of the icon of the application.
* <code>GROWL_APP_LOCATION</code> The location of the application.
* <code>GROWL_NOTIFICATIONS_DEFAULT</code> <code>GROWL_NOTIFICATIONS_ALL</code>
*
@@ -336,6 +362,7 @@
* copy of <code>regDict</code>.
*/
+ (NSDictionary *) registrationDictionaryByFillingInDictionary:(NSDictionary *)regDict;
+
/*! @method registrationDictionaryByFillingInDictionary:restrictToKeys:
* @abstract Tries to fill in missing keys in a registration dictionary.
* @discussion This method examines the passed-in dictionary for missing keys,
@@ -344,7 +371,7 @@
* Key Value
* --- -----
* <code>GROWL_APP_NAME</code> <code>CFBundleExecutableName</code>
- * <code>GROWL_APP_ICON</code> The icon of the application.
+ * <code>GROWL_APP_ICON_DATA</code> The data of the icon of the application.
* <code>GROWL_APP_LOCATION</code> The location of the application.
* <code>GROWL_NOTIFICATIONS_DEFAULT</code> <code>GROWL_NOTIFICATIONS_ALL</code>
*
@@ -368,30 +395,38 @@
* the keys that it will look for are:
*
* \li <code>GROWL_APP_NAME</code>
- * \li <code>GROWL_APP_ICON</code>
+ * \li <code>GROWL_APP_ICON_DATA</code>
*
* @since Growl.framework 1.1
*/
+ (NSDictionary *) notificationDictionaryByFillingInDictionary:(NSDictionary *)regDict;
+ (NSDictionary *) frameworkInfoDictionary;
-@end
-//------------------------------------------------------------------------------
#pragma mark -
/*!
- * @protocol GrowlApplicationBridgeDelegate
- * @abstract Required protocol for the Growl delegate.
- * @discussion The methods in this protocol are required and are called
- * automatically as needed by GrowlApplicationBridge. See
- * <code>+[GrowlApplicationBridge setGrowlDelegate:]</code>.
- * See also <code>GrowlApplicationBridgeDelegate_InformalProtocol</code>.
+ *@method growlURLSchemeAvailable
+ *@abstract Lets the app know whether growl:// is registered on the system, used for certain methods below this
+ *@return Returns whether growl:// is registered on the system
+ *@discussion Methods such as openGrowlPreferences rely on the growl:// URL scheme to function
+ * Further, this method can provide a check on whether Growl is installed,
+ * however, the framework will not be relying on this method for choosing when/how to notify,
+ * and it is not recommended that the app rely on it for other than whether to use growl:// methods
+ *@since Growl.framework 1.4
*/
++ (BOOL) isGrowlURLSchemeAvailable;
-@protocol GrowlApplicationBridgeDelegate
-
-// -registrationDictionaryForGrowl has moved to the informal protocol as of 0.7.
+/*!
+ * @method openGrowlPreferences:
+ * @abstract Open Growl preferences, optionally to this app's settings, growl:// method
+ * @param showApp Whether to show the application's settings, otherwise just opens to the last position
+ * @return Return's whether opening the URL was succesfull or not.
+ * @discussion Will launch if Growl is installed, but not running, and open the preferences window
+ * Uses growl:// URL scheme
+ * @since Growl.framework 1.4
+ */
++ (BOOL) openGrowlPreferences:(BOOL)showApp;
@end
@@ -399,11 +434,17 @@
#pragma mark -
/*!
- * @category NSObject(GrowlApplicationBridgeDelegate_InformalProtocol)
- * @abstract Methods which may be optionally implemented by the GrowlDelegate.
- * @discussion The methods in this informal protocol will only be called if implemented by the delegate.
+ * @protocol GrowlApplicationBridgeDelegate
+ * @abstract Required protocol for the Growl delegate.
+ * @discussion The methods in this protocol are optional and are called
+ * automatically as needed by GrowlApplicationBridge. See
+ * <code>+[GrowlApplicationBridge setGrowlDelegate:]</code>.
+ * See also <code>GrowlApplicationBridgeDelegate_InformalProtocol</code>.
*/
-@interface NSObject (GrowlApplicationBridgeDelegate_InformalProtocol)
+
+@protocol GrowlApplicationBridgeDelegate <NSObject>
+
+@optional
/*!
* @method registrationDictionaryForGrowl
@@ -510,66 +551,17 @@
*/
- (void) growlNotificationTimedOut:(id)clickContext;
-@end
-
-#pragma mark -
-/*!
- * @category NSObject(GrowlApplicationBridgeDelegate_Installation_InformalProtocol)
- * @abstract Methods which may be optionally implemented by the Growl delegate when used with Growl-WithInstaller.framework.
- * @discussion The methods in this informal protocol will only be called if
- * implemented by the delegate. They allow greater control of the information
- * presented to the user when installing or upgrading Growl from within your
- * application when using Growl-WithInstaller.framework.
- */
-@interface NSObject (GrowlApplicationBridgeDelegate_Installation_InformalProtocol)
-
-/*!
- * @method growlInstallationWindowTitle
- * @abstract Return the title of the installation window.
- * @discussion If not implemented, Growl will use a default, localized title.
- * @result An NSString object to use as the title.
- */
-- (NSString *)growlInstallationWindowTitle;
-
-/*!
- * @method growlUpdateWindowTitle
- * @abstract Return the title of the upgrade window.
- * @discussion If not implemented, Growl will use a default, localized title.
- * @result An NSString object to use as the title.
- */
-- (NSString *)growlUpdateWindowTitle;
-
-/*!
- * @method growlInstallationInformation
- * @abstract Return the information to display when installing.
- * @discussion This information may be as long or short as desired (the window
- * will be sized to fit it). It will be displayed to the user as an
- * explanation of what Growl is and what it can do in your application. It
- * should probably note that no download is required to install.
- *
- * If this is not implemented, Growl will use a default, localized explanation.
- * @result An NSAttributedString object to display.
- */
-- (NSAttributedString *)growlInstallationInformation;
/*!
- * @method growlUpdateInformation
- * @abstract Return the information to display when upgrading.
- * @discussion This information may be as long or short as desired (the window
- * will be sized to fit it). It will be displayed to the user as an
- * explanation that an updated version of Growl is included in your
- * application and no download is required.
- *
- * If this is not implemented, Growl will use a default, localized explanation.
- * @result An NSAttributedString object to display.
+ * @method hasNetworkClientEntitlement
+ * @abstract Used only in sandboxed situations since we don't know whether the app has com.apple.security.network.client entitlement
+ * @discussion GrowlDelegate calls to find out if we have the com.apple.security.network.client entitlement,
+ * since we can't find this out without hitting the sandbox. We only call it if we detect that the application is sandboxed.
*/
-- (NSAttributedString *)growlUpdateInformation;
+- (BOOL) hasNetworkClientEntitlement;
@end
-//private
-@interface GrowlApplicationBridge (GrowlInstallationPrompt_private)
-+ (void) _userChoseNotToInstallGrowl;
-@end
+#pragma mark -
#endif /* __GrowlApplicationBridge_h__ */
diff --git a/Frameworks/Growl.framework/Versions/A/Headers/GrowlDefines.h b/Frameworks/Growl.framework/Versions/A/Headers/GrowlDefines.h
index 2b971cfe..0a196f1e 100644
--- a/Frameworks/Growl.framework/Versions/A/Headers/GrowlDefines.h
+++ b/Frameworks/Growl.framework/Versions/A/Headers/GrowlDefines.h
@@ -7,10 +7,8 @@
#ifdef __OBJC__
#define XSTR(x) (@x)
-#define STRING_TYPE NSString *
#else
#define XSTR CFSTR
-#define STRING_TYPE CFStringRef
#endif
/*! @header GrowlDefines.h
@@ -56,7 +54,7 @@
* This key is optional.
*/
#define GROWL_APP_ID XSTR("ApplicationId")
-/*! @defined GROWL_APP_ICON
+/*! @defined GROWL_APP_ICON_DATA
* @abstract The image data for your application's icon.
* @discussion Image data representing your application's icon. This may be
* superimposed on a notification icon as a badge, used as the notification
@@ -66,7 +64,7 @@
*
* Optional. Not supported by all display plugins.
*/
-#define GROWL_APP_ICON XSTR("ApplicationIcon")
+#define GROWL_APP_ICON_DATA XSTR("ApplicationIcon")
/*! @defined GROWL_NOTIFICATIONS_DEFAULT
* @abstract The array of notifications to turn on by default.
* @discussion These are the names of the notifications that should be enabled
@@ -101,6 +99,14 @@
* This key is optional.
*/
#define GROWL_NOTIFICATIONS_DESCRIPTIONS XSTR("NotificationDescriptions")
+/*! @defined GROWL_NOTIFICATIONS_ICONS
+ * @abstract A dictionary of icons for each notification
+ * @discussion This is an NSDictionary whose keys are GROWL_NOTIFICATION_NAME strings and whose objects are
+ * icons for each notification, for GNTP spec
+ *
+ * This key is optional.
+ */
+#define GROWL_NOTIFICATIONS_ICONS XSTR("NotificationIcons")
/*! @defined GROWL_TICKET_VERSION
* @abstract The version of your registration ticket.
@@ -144,20 +150,20 @@
*/
#define GROWL_NOTIFICATION_DESCRIPTION XSTR("NotificationDescription")
/*! @defined GROWL_NOTIFICATION_ICON
- * @discussion Image data for the notification icon. Must be in a format
+ * @discussion Image data for the notification icon. Image data must be in a format
* supported by NSImage, such as TIFF, PNG, GIF, JPEG, BMP, PICT, or PDF.
*
* Optional. Not supported by all display plugins.
*/
-#define GROWL_NOTIFICATION_ICON XSTR("NotificationIcon")
+#define GROWL_NOTIFICATION_ICON_DATA XSTR("NotificationIcon")
/*! @defined GROWL_NOTIFICATION_APP_ICON
* @discussion Image data for the application icon, in case GROWL_APP_ICON does
- * not apply for some reason. Must be in a format supported by NSImage, such
+ * not apply for some reason. Image data be in a format supported by NSImage, such
* as TIFF, PNG, GIF, JPEG, BMP, PICT, or PDF.
*
* Optional. Not supported by all display plugins.
*/
-#define GROWL_NOTIFICATION_APP_ICON XSTR("NotificationAppIcon")
+#define GROWL_NOTIFICATION_APP_ICON_DATA XSTR("NotificationAppIcon")
/*! @defined GROWL_NOTIFICATION_PRIORITY
* @discussion The priority of the notification as an integer number from
* -2 to +2 (+2 being highest).
@@ -185,16 +191,6 @@
*/
#define GROWL_NOTIFICATION_CLICK_CONTEXT XSTR("NotificationClickContext")
-/*! @defined GROWL_DISPLAY_PLUGIN
- * @discussion The name of a display plugin which should be used for this notification.
- * Optional. If this key is not set or the specified display plugin does not
- * exist, the display plugin stored in the application ticket is used. This key
- * allows applications to use different default display plugins for their
- * notifications. The user can still override those settings in the preference
- * pane.
- */
-#define GROWL_DISPLAY_PLUGIN XSTR("NotificationDisplayPlugin")
-
/*! @defined GROWL_NOTIFICATION_IDENTIFIER
* @abstract An identifier for the notification for coalescing purposes.
* Notifications with the same identifier fall into the same class; only
@@ -224,6 +220,19 @@
*/
#define GROWL_NOTIFICATION_PROGRESS XSTR("NotificationProgress")
+/*! @defined GROWL_NOTIFICATION_ALREADY_SHOWN
+ * @abstract If this key is set, it should contain a bool value wrapped
+ * in a NSNumber which describes whether the notification has
+ * already been displayed, for instance by built in Notification
+ * Center support. This value can be used to allow display
+ * plugins to skip a notification, while still allowing Growl
+ * actions to run on them.
+ *
+ * Optional. Not supported by all display plugins.
+ */
+#define GROWL_NOTIFICATION_ALREADY_SHOWN XSTR("AlreadyShown")
+
+
// Notifications
#pragma mark Notifications
@@ -245,7 +254,7 @@
* The userInfo dictionary for this notification can contain these keys:
* <ul>
* <li>GROWL_APP_NAME</li>
- * <li>GROWL_APP_ICON</li>
+ * <li>GROWL_APP_ICON_DATA</li>
* <li>GROWL_NOTIFICATIONS_ALL</li>
* <li>GROWL_NOTIFICATIONS_DEFAULT</li>
* </ul>
@@ -288,12 +297,6 @@
* Growl_PostNotification.
*/
#define GROWL_NOTIFICATION XSTR("GrowlNotification")
-/*! @defined GROWL_SHUTDOWN
-* @abstract The distributed notification name that tells Growl to shutdown.
-* @discussion The Growl preference pane posts this notification when the
-* "Stop Growl" button is clicked.
-*/
-#define GROWL_SHUTDOWN XSTR("GrowlShutdown")
/*! @defined GROWL_PING
* @abstract A distributed notification to check whether Growl is running.
* @discussion This is used by the Growl preference pane. If it receives a
@@ -313,15 +316,48 @@
* registration dictionary supplied by its delegate.
*/
#define GROWL_IS_READY XSTR("Lend Me Some Sugar; I Am Your Neighbor!")
-/*! @defined GROWL_NOTIFICATION_CLICKED
- * @abstract The distributed notification sent when a supported notification is clicked.
+
+
+/*! @defined GROWL_DISTRIBUTED_NOTIFICATION_CLICKED_SUFFIX
+ * @abstract Part of the name of the distributed notification sent when a supported notification is clicked.
* @discussion When a Growl notification with a click context is clicked on by
- * the user, Growl posts this distributed notification.
- * The GrowlApplicationBridge responds to this notification by calling a
- * callback in its delegate.
+ * the user, Growl posts a distributed notification whose name is in the format:
+ * [NSString stringWithFormat:@"%@-%d-%@", appName, pid, GROWL_DISTRIBUTED_NOTIFICATION_CLICKED_SUFFIX]
+ * The GrowlApplicationBridge responds to this notification by calling a callback in its delegate.
+ */
+#define GROWL_DISTRIBUTED_NOTIFICATION_CLICKED_SUFFIX XSTR("GrowlClicked!")
+
+/*! @defined GROWL_DISTRIBUTED_NOTIFICATION_TIMED_OUT_SUFFIX
+ * @abstract Part of the name of the distributed notification sent when a supported notification times out without being clicked.
+ * @discussion When a Growl notification with a click context times out, Growl posts a distributed notification
+ * whose name is in the format:
+ * [NSString stringWithFormat:@"%@-%d-%@", appName, pid, GROWL_DISTRIBUTED_NOTIFICATION_TIMED_OUT_SUFFIX]
+ * The GrowlApplicationBridge responds to this notification by calling a callback in its delegate.
+ * NOTE: The user may have actually clicked the 'close' button; this triggers an *immediate* time-out of the notification.
*/
-#define GROWL_NOTIFICATION_CLICKED XSTR("GrowlClicked!")
-#define GROWL_NOTIFICATION_TIMED_OUT XSTR("GrowlTimedOut!")
+#define GROWL_DISTRIBUTED_NOTIFICATION_TIMED_OUT_SUFFIX XSTR("GrowlTimedOut!")
+
+/*! @defined GROWL_DISTRIBUTED_NOTIFICATION_NOTIFICATIONCENTER_ON
+ * @abstract The distributed notification sent when the Notification Center support is toggled on in Growl 2.0
+ * @discussion When the user enables Notification Center support in Growl 2.0, this notification is sent
+ * to inform all running apps that they should now speak to Notification Center directly.
+ */
+#define GROWL_DISTRIBUTED_NOTIFICATION_NOTIFICATIONCENTER_ON XSTR("GrowlNotificationCenterOn!")
+
+/*! @defined GROWL_DISTRIBUTED_NOTIFICATION_NOTIFICATIONCENTER_OFF
+ * @abstract The distributed notification sent when the Notification Center support is toggled off in Growl 2.0
+ * @discussion When the user enables Notification Center support in Growl 2.0, this notification is sent
+ * to inform all running apps that they should no longer speak to Notification Center directly.
+ */
+#define GROWL_DISTRIBUTED_NOTIFICATION_NOTIFICATIONCENTER_OFF XSTR("GrowlNotificationCenterOff!")
+
+/*! @defined GROWL_DISTRIBUTED_NOTIFICATION_NOTIFICATIONCENTER_QUERY
+ * @abstract The distributed notification sent by an application to query Growl 2.0's notification center support.
+ * @discussion When an app starts up, it will send this query to get Growl 2.0 to spit out whether notification
+ * center support is on or off.
+ */
+#define GROWL_DISTRIBUTED_NOTIFICATION_NOTIFICATIONCENTER_QUERY XSTR("GrowlNotificationCenterYN?")
+
/*! @group Other symbols */
/* Symbols which don't fit into any of the other categories. */
@@ -345,4 +381,6 @@
#define GROWL_POSITION_PREFERENCE_KEY @"GrowlSelectedPosition"
+#define GROWL_PLUGIN_CONFIG_ID XSTR("GrowlPluginConfigurationID")
+
#endif //ndef _GROWLDEFINES_H
diff --git a/Frameworks/Growl.framework/Versions/A/Resources/Info.plist b/Frameworks/Growl.framework/Versions/A/Resources/Info.plist
index fa23da2d..6a90f41b 100644
--- a/Frameworks/Growl.framework/Versions/A/Resources/Info.plist
+++ b/Frameworks/Growl.framework/Versions/A/Resources/Info.plist
@@ -3,7 +3,7 @@
<plist version="1.0">
<dict>
<key>BuildMachineOSBuild</key>
- <string>11C74</string>
+ <string>12C60</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
@@ -15,25 +15,25 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
- <string>1.2.3</string>
+ <string>2.0.1</string>
<key>CFBundleSignature</key>
<string>GRRR</string>
<key>CFBundleVersion</key>
- <string>1.2.3</string>
+ <string>2.0.1</string>
<key>DTCompiler</key>
- <string>4.0</string>
+ <string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
- <string>10M2518</string>
+ <string>4G2008a</string>
<key>DTPlatformVersion</key>
- <string>PG</string>
+ <string>GM</string>
<key>DTSDKBuild</key>
- <string>9L31a</string>
+ <string>12C37</string>
<key>DTSDKName</key>
- <string>macosx10.5</string>
+ <string>macosx10.8</string>
<key>DTXcode</key>
- <string>0400</string>
+ <string>0452</string>
<key>DTXcodeBuild</key>
- <string>10M2518</string>
+ <string>4G2008a</string>
<key>NSPrincipalClass</key>
<string>GrowlApplicationBridge</string>
</dict>
diff --git a/Frameworks/Growl.framework/Versions/A/_CodeSignature/CodeResources b/Frameworks/Growl.framework/Versions/A/_CodeSignature/CodeResources
new file mode 100644
index 00000000..420b594a
--- /dev/null
+++ b/Frameworks/Growl.framework/Versions/A/_CodeSignature/CodeResources
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>files</key>
+ <dict>
+ <key>Resources/Info.plist</key>
+ <data>
+ VZb3f8My4te/5JwcjfvotgCXTAs=
+ </data>
+ </dict>
+ <key>rules</key>
+ <dict>
+ <key>^Resources/</key>
+ <true/>
+ <key>^Resources/.*\.lproj/</key>
+ <dict>
+ <key>optional</key>
+ <true/>
+ <key>weight</key>
+ <real>1000</real>
+ </dict>
+ <key>^Resources/.*\.lproj/locversion.plist$</key>
+ <dict>
+ <key>omit</key>
+ <true/>
+ <key>weight</key>
+ <real>1100</real>
+ </dict>
+ <key>^version.plist$</key>
+ <true/>
+ </dict>
+</dict>
+</plist>
diff --git a/Frameworks/OCMock.framework/Versions/A/Headers/NSNotificationCenter+OCMAdditions.h b/Frameworks/OCMock.framework/Versions/A/Headers/NSNotificationCenter+OCMAdditions.h
index ae2e37d0..c20a9c2b 100644
--- a/Frameworks/OCMock.framework/Versions/A/Headers/NSNotificationCenter+OCMAdditions.h
+++ b/Frameworks/OCMock.framework/Versions/A/Headers/NSNotificationCenter+OCMAdditions.h
@@ -1,15 +1,26 @@
-//---------------------------------------------------------------------------------------
-// $Id: NSNotificationCenter+OCMAdditions.h$
-// Copyright (c) 2009 by Mulle Kybernetik. See License file for details.
-//---------------------------------------------------------------------------------------
+/*
+ * Copyright (c) 2009-2014 Erik Doernenburg and contributors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use these files except in compliance with the License. You may obtain
+ * a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
#import <Foundation/Foundation.h>
-@class OCMockObserver;
+@class OCObserverMockObject;
@interface NSNotificationCenter(OCMAdditions)
-- (void)addMockObserver:(OCMockObserver *)notificationObserver name:(NSString *)notificationName object:(id)notificationSender;
+- (void)addMockObserver:(OCObserverMockObject *)notificationObserver name:(NSString *)notificationName object:(id)notificationSender;
@end
diff --git a/Frameworks/OCMock.framework/Versions/A/Headers/OCMArg.h b/Frameworks/OCMock.framework/Versions/A/Headers/OCMArg.h
index a775f39f..d53437cb 100644
--- a/Frameworks/OCMock.framework/Versions/A/Headers/OCMArg.h
+++ b/Frameworks/OCMock.framework/Versions/A/Headers/OCMArg.h
@@ -1,7 +1,18 @@
-//---------------------------------------------------------------------------------------
-// $Id$
-// Copyright (c) 2009 by Mulle Kybernetik. See License file for details.
-//---------------------------------------------------------------------------------------
+/*
+ * Copyright (c) 2009-2014 Erik Doernenburg and contributors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use these files except in compliance with the License. You may obtain
+ * a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
#import <Foundation/Foundation.h>
@@ -10,15 +21,21 @@
// constraining arguments
+ (id)any;
++ (SEL)anySelector;
+ (void *)anyPointer;
++ (id __autoreleasing *)anyObjectRef;
+ (id)isNil;
+ (id)isNotNil;
++ (id)isEqual:(id)value;
+ (id)isNotEqual:(id)value;
++ (id)isKindOfClass:(Class)cls;
+ (id)checkWithSelector:(SEL)selector onObject:(id)anObject;
++ (id)checkWithBlock:(BOOL (^)(id obj))block;
// manipulating arguments
+ (id *)setTo:(id)value;
++ (void *)setToValue:(NSValue *)value;
// internal use only
@@ -27,4 +44,10 @@
@end
#define OCMOCK_ANY [OCMArg any]
-#define OCMOCK_VALUE(variable) [NSValue value:&variable withObjCType:@encode(typeof(variable))]
+
+#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
+ #define OCMOCK_VALUE(variable) \
+ ({ __typeof__(variable) __v = (variable); [NSValue value:&__v withObjCType:@encode(__typeof__(__v))]; })
+#else
+ #define OCMOCK_VALUE(variable) [NSValue value:&variable withObjCType:@encode(__typeof__(variable))]
+#endif
diff --git a/Frameworks/OCMock.framework/Versions/A/Headers/OCMConstraint.h b/Frameworks/OCMock.framework/Versions/A/Headers/OCMConstraint.h
index 0bab7775..777966ab 100644
--- a/Frameworks/OCMock.framework/Versions/A/Headers/OCMConstraint.h
+++ b/Frameworks/OCMock.framework/Versions/A/Headers/OCMConstraint.h
@@ -1,21 +1,34 @@
-//---------------------------------------------------------------------------------------
-// $Id$
-// Copyright (c) 2007-2009 by Mulle Kybernetik. See License file for details.
-//---------------------------------------------------------------------------------------
+/*
+ * Copyright (c) 2007-2014 Erik Doernenburg and contributors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use these files except in compliance with the License. You may obtain
+ * a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
#import <Foundation/Foundation.h>
+
@interface OCMConstraint : NSObject
-+ (id)constraint;
++ (instancetype)constraint;
- (BOOL)evaluate:(id)value;
// if you are looking for any, isNil, etc, they have moved to OCMArg
-+ (id)constraintWithSelector:(SEL)aSelector onObject:(id)anObject;
-+ (id)constraintWithSelector:(SEL)aSelector onObject:(id)anObject withValue:(id)aValue;
+// try to use [OCMArg checkWith...] instead of the constraintWith... methods below
+
++ (instancetype)constraintWithSelector:(SEL)aSelector onObject:(id)anObject;
++ (instancetype)constraintWithSelector:(SEL)aSelector onObject:(id)anObject withValue:(id)aValue;
-// try to use [OCMArg checkWith...] instead of constraintWithSelector in here
@end
@@ -44,5 +57,15 @@
@end
+@interface OCMBlockConstraint : OCMConstraint
+{
+ BOOL (^block)(id);
+}
+
+- (instancetype)initWithConstraintBlock:(BOOL (^)(id))block;
+
+@end
+
+
#define CONSTRAINT(aSelector) [OCMConstraint constraintWithSelector:aSelector onObject:self]
#define CONSTRAINTV(aSelector, aValue) [OCMConstraint constraintWithSelector:aSelector onObject:self withValue:(aValue)]
diff --git a/Frameworks/OCMock.framework/Versions/A/Headers/OCMLocation.h b/Frameworks/OCMock.framework/Versions/A/Headers/OCMLocation.h
new file mode 100644
index 00000000..e510db7a
--- /dev/null
+++ b/Frameworks/OCMock.framework/Versions/A/Headers/OCMLocation.h
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2014 Erik Doernenburg and contributors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use these files except in compliance with the License. You may obtain
+ * a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+#import <Foundation/Foundation.h>
+
+@interface OCMLocation : NSObject
+{
+ id testCase;
+ NSString *file;
+ NSUInteger line;
+}
+
++ (instancetype)locationWithTestCase:(id)aTestCase file:(NSString *)aFile line:(NSUInteger)aLine;
+
+- (instancetype)initWithTestCase:(id)aTestCase file:(NSString *)aFile line:(NSUInteger)aLine;
+
+- (id)testCase;
+- (NSString *)file;
+- (NSUInteger)line;
+
+@end
+
+extern OCMLocation *OCMMakeLocation(id testCase, const char *file, int line);
diff --git a/Frameworks/OCMock.framework/Versions/A/Headers/OCMMacroState.h b/Frameworks/OCMock.framework/Versions/A/Headers/OCMMacroState.h
new file mode 100644
index 00000000..4b2d6350
--- /dev/null
+++ b/Frameworks/OCMock.framework/Versions/A/Headers/OCMMacroState.h
@@ -0,0 +1,45 @@
+/*
+ * Copyright (c) 2014 Erik Doernenburg and contributors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use these files except in compliance with the License. You may obtain
+ * a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+#import <Foundation/Foundation.h>
+
+@class OCMLocation;
+@class OCMRecorder;
+@class OCMStubRecorder;
+@class OCMockObject;
+
+
+@interface OCMMacroState : NSObject
+{
+ OCMRecorder *recorder;
+}
+
++ (void)beginStubMacro;
++ (OCMStubRecorder *)endStubMacro;
+
++ (void)beginExpectMacro;
++ (OCMStubRecorder *)endExpectMacro;
+
++ (void)beginVerifyMacroAtLocation:(OCMLocation *)aLocation;
++ (void)endVerifyMacro;
+
++ (OCMMacroState *)globalState;
+
+- (OCMRecorder *)recorder;
+
+- (void)switchToClassMethod;
+
+@end
diff --git a/Frameworks/OCMock.framework/Versions/A/Headers/OCMRecorder.h b/Frameworks/OCMock.framework/Versions/A/Headers/OCMRecorder.h
new file mode 100644
index 00000000..f56d2ca4
--- /dev/null
+++ b/Frameworks/OCMock.framework/Versions/A/Headers/OCMRecorder.h
@@ -0,0 +1,39 @@
+/*
+ * Copyright (c) 2014 Erik Doernenburg and contributors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use these files except in compliance with the License. You may obtain
+ * a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+#import <Foundation/Foundation.h>
+
+@class OCMockObject;
+@class OCMInvocationMatcher;
+
+
+@interface OCMRecorder : NSProxy
+{
+ OCMockObject *mockObject;
+ OCMInvocationMatcher *invocationMatcher;
+}
+
+- (instancetype)init;
+- (instancetype)initWithMockObject:(OCMockObject *)aMockObject;
+
+- (void)setMockObject:(OCMockObject *)aMockObject;
+
+- (OCMInvocationMatcher *)invocationMatcher;
+
+- (id)classMethod;
+- (id)ignoringNonObjectArgs;
+
+@end
diff --git a/Frameworks/OCMock.framework/Versions/A/Headers/OCMStubRecorder.h b/Frameworks/OCMock.framework/Versions/A/Headers/OCMStubRecorder.h
new file mode 100644
index 00000000..890c9ef3
--- /dev/null
+++ b/Frameworks/OCMock.framework/Versions/A/Headers/OCMStubRecorder.h
@@ -0,0 +1,56 @@
+/*
+ * Copyright (c) 2004-2014 Erik Doernenburg and contributors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use these files except in compliance with the License. You may obtain
+ * a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+
+#import "OCMRecorder.h"
+
+
+@interface OCMStubRecorder : OCMRecorder
+
+- (id)andReturn:(id)anObject;
+- (id)andReturnValue:(NSValue *)aValue;
+- (id)andThrow:(NSException *)anException;
+- (id)andPost:(NSNotification *)aNotification;
+- (id)andCall:(SEL)selector onObject:(id)anObject;
+- (id)andDo:(void (^)(NSInvocation *invocation))block;
+- (id)andForwardToRealObject;
+
+@end
+
+
+@interface OCMStubRecorder (Properties)
+
+#define andReturn(aValue) _andReturn(({ __typeof__(aValue) _v = (aValue); [NSValue value:&_v withObjCType:@encode(__typeof__(_v))]; }))
+@property (nonatomic, readonly) OCMStubRecorder *(^ _andReturn)(NSValue *);
+
+#define andThrow(anException) _andThrow(anException)
+@property (nonatomic, readonly) OCMStubRecorder *(^ _andThrow)(NSException *);
+
+#define andPost(aNotification) _andPost(aNotification)
+@property (nonatomic, readonly) OCMStubRecorder *(^ _andPost)(NSNotification *);
+
+#define andCall(anObject, aSelector) _andCall(anObject, aSelector)
+@property (nonatomic, readonly) OCMStubRecorder *(^ _andCall)(id, SEL);
+
+#define andDo(aBlock) _andDo(aBlock)
+@property (nonatomic, readonly) OCMStubRecorder *(^ _andDo)(void (^)(NSInvocation *));
+
+#define andForwardToRealObject() _andForwardToRealObject()
+@property (nonatomic, readonly) OCMStubRecorder *(^ _andForwardToRealObject)(void);
+
+@end
+
+
+
diff --git a/Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h b/Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h
index e18de58a..f0083b35 100644
--- a/Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h
+++ b/Frameworks/OCMock.framework/Versions/A/Headers/OCMock.h
@@ -1,10 +1,84 @@
-//---------------------------------------------------------------------------------------
-// $Id$
-// Copyright (c) 2004-2008 by Mulle Kybernetik. See License file for details.
-//---------------------------------------------------------------------------------------
+/*
+ * Copyright (c) 2004-2014 Erik Doernenburg and contributors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use these files except in compliance with the License. You may obtain
+ * a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
#import <OCMock/OCMockObject.h>
-#import <OCMock/OCMockRecorder.h>
+#import <OCMock/OCMRecorder.h>
+#import <OCMock/OCMStubRecorder.h>
#import <OCMock/OCMConstraint.h>
#import <OCMock/OCMArg.h>
+#import <OCMock/OCMLocation.h>
+#import <OCMock/OCMMacroState.h>
#import <OCMock/NSNotificationCenter+OCMAdditions.h>
+
+
+#define OCMClassMock(cls) [OCMockObject niceMockForClass:cls]
+
+#define OCMStrictClassMock(cls) [OCMockObject mockForClass:cls]
+
+#define OCMProtocolMock(protocol) [OCMockObject niceMockForProtocol:protocol]
+
+#define OCMStrictProtocolMock(protocol) [OCMockObject mockForProtocol:protocol]
+
+#define OCMPartialMock(obj) [OCMockObject partialMockForObject:obj]
+
+#define OCMObserverMock() [OCMockObject observerMock]
+
+
+#define OCMStub(invocation) \
+({ \
+ _OCMSilenceWarnings( \
+ [OCMMacroState beginStubMacro]; \
+ invocation; \
+ [OCMMacroState endStubMacro]; \
+ ); \
+})
+
+#define OCMExpect(invocation) \
+({ \
+ _OCMSilenceWarnings( \
+ [OCMMacroState beginExpectMacro]; \
+ invocation; \
+ [OCMMacroState endExpectMacro]; \
+ ); \
+})
+
+#define ClassMethod(invocation) \
+ _OCMSilenceWarnings( \
+ [[OCMMacroState globalState] switchToClassMethod]; \
+ invocation; \
+ );
+
+
+#define OCMVerifyAll(mock) [mock verifyAtLocation:OCMMakeLocation(self, __FILE__, __LINE__)]
+
+#define OCMVerifyAllWithDelay(mock, delay) [mock verifyWithDelay:delay atLocation:OCMMakeLocation(self, __FILE__, __LINE__)]
+
+#define OCMVerify(invocation) \
+({ \
+ _OCMSilenceWarnings( \
+ [OCMMacroState beginVerifyMacroAtLocation:OCMMakeLocation(self, __FILE__, __LINE__)]; \
+ invocation; \
+ [OCMMacroState endVerifyMacro]; \
+ ); \
+})
+
+#define _OCMSilenceWarnings(macro) \
+({ \
+ _Pragma("clang diagnostic push") \
+ _Pragma("clang diagnostic ignored \"-Wunused-value\"") \
+ macro \
+ _Pragma("clang diagnostic pop") \
+})
diff --git a/Frameworks/OCMock.framework/Versions/A/Headers/OCMockObject.h b/Frameworks/OCMock.framework/Versions/A/Headers/OCMockObject.h
index 87e7b82e..63f2bae2 100644
--- a/Frameworks/OCMock.framework/Versions/A/Headers/OCMockObject.h
+++ b/Frameworks/OCMock.framework/Versions/A/Headers/OCMockObject.h
@@ -1,17 +1,36 @@
-//---------------------------------------------------------------------------------------
-// $Id$
-// Copyright (c) 2004-2008 by Mulle Kybernetik. See License file for details.
-//---------------------------------------------------------------------------------------
+/*
+ * Copyright (c) 2004-2014 Erik Doernenburg and contributors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may
+ * not use these files except in compliance with the License. You may obtain
+ * a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
#import <Foundation/Foundation.h>
+@class OCMLocation;
+@class OCMInvocationStub;
+@class OCMStubRecorder;
+@class OCMInvocationMatcher;
+@class OCMInvocationExpectation;
+
+
@interface OCMockObject : NSProxy
{
BOOL isNice;
BOOL expectationOrderMatters;
- NSMutableArray *recorders;
+ NSMutableArray *stubs;
NSMutableArray *expectations;
NSMutableArray *exceptions;
+ NSMutableArray *invocations;
}
+ (id)mockForClass:(Class)aClass;
@@ -23,19 +42,33 @@
+ (id)observerMock;
-- (id)init;
+- (instancetype)init;
- (void)setExpectationOrderMatters:(BOOL)flag;
- (id)stub;
- (id)expect;
+- (id)reject;
+
+- (id)verify;
+- (id)verifyAtLocation:(OCMLocation *)location;
+
+- (void)verifyWithDelay:(NSTimeInterval)delay;
+- (void)verifyWithDelay:(NSTimeInterval)delay atLocation:(OCMLocation *)location;
-- (void)verify;
+- (void)stopMocking;
// internal use only
-- (id)getNewRecorder;
+- (void)addStub:(OCMInvocationStub *)aStub;
+- (void)addExpectation:(OCMInvocationExpectation *)anExpectation;
+
- (BOOL)handleInvocation:(NSInvocation *)anInvocation;
- (void)handleUnRecordedInvocation:(NSInvocation *)anInvocation;
+- (BOOL)handleSelector:(SEL)sel;
+
+- (void)verifyInvocation:(OCMInvocationMatcher *)matcher;
+- (void)verifyInvocation:(OCMInvocationMatcher *)matcher atLocation:(OCMLocation *)location;
@end
+
diff --git a/Frameworks/OCMock.framework/Versions/A/Headers/OCMockRecorder.h b/Frameworks/OCMock.framework/Versions/A/Headers/OCMockRecorder.h
deleted file mode 100644
index 7463a3f4..00000000
--- a/Frameworks/OCMock.framework/Versions/A/Headers/OCMockRecorder.h
+++ /dev/null
@@ -1,28 +0,0 @@
-//---------------------------------------------------------------------------------------
-// $Id$
-// Copyright (c) 2004-2009 by Mulle Kybernetik. See License file for details.
-//---------------------------------------------------------------------------------------
-
-#import <Foundation/Foundation.h>
-
-@interface OCMockRecorder : NSProxy
-{
- id signatureResolver;
- NSInvocation *recordedInvocation;
- NSMutableArray *invocationHandlers;
-}
-
-- (id)initWithSignatureResolver:(id)anObject;
-
-- (BOOL)matchesInvocation:(NSInvocation *)anInvocation;
-- (void)releaseInvocation;
-
-- (id)andReturn:(id)anObject;
-- (id)andReturnValue:(NSValue *)aValue;
-- (id)andThrow:(NSException *)anException;
-- (id)andPost:(NSNotification *)aNotification;
-- (id)andCall:(SEL)selector onObject:(id)anObject;
-
-- (NSArray *)invocationHandlers;
-
-@end
diff --git a/Frameworks/OCMock.framework/Versions/A/OCMock b/Frameworks/OCMock.framework/Versions/A/OCMock
index 303e9337..3fb5afb5 100755
--- a/Frameworks/OCMock.framework/Versions/A/OCMock
+++ b/Frameworks/OCMock.framework/Versions/A/OCMock
Binary files differ
diff --git a/Frameworks/OCMock.framework/Versions/A/Resources/Info.plist b/Frameworks/OCMock.framework/Versions/A/Resources/Info.plist
index 4634d14c..20bc2603 100644
--- a/Frameworks/OCMock.framework/Versions/A/Resources/Info.plist
+++ b/Frameworks/OCMock.framework/Versions/A/Resources/Info.plist
@@ -2,6 +2,8 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
+ <key>BuildMachineOSBuild</key>
+ <string>13F34</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
@@ -15,12 +17,26 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
- <string>1.29</string>
+ <string>1.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1</string>
+ <key>DTCompiler</key>
+ <string>com.apple.compilers.llvm.clang.1_0</string>
+ <key>DTPlatformBuild</key>
+ <string>6A2008a</string>
+ <key>DTPlatformVersion</key>
+ <string>GM</string>
+ <key>DTSDKBuild</key>
+ <string>14A382</string>
+ <key>DTSDKName</key>
+ <string>macosx10.10</string>
+ <key>DTXcode</key>
+ <string>0611</string>
+ <key>DTXcodeBuild</key>
+ <string>6A2008a</string>
<key>NSHumanReadableCopyright</key>
- <string>Copyright © 2004-2009 Mulle Kybernetik.</string>
+ <string>Copyright © 2004-2013 Mulle Kybernetik.</string>
</dict>
</plist>
diff --git a/Frameworks/OCMock.framework/Versions/A/Resources/License.txt b/Frameworks/OCMock.framework/Versions/A/Resources/License.txt
deleted file mode 100644
index e2c13960..00000000
--- a/Frameworks/OCMock.framework/Versions/A/Resources/License.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-
- Copyright (c) 2004-2009 by Mulle Kybernetik. All rights reserved.
-
- Permission to use, copy, modify and distribute this software and its documentation
- is hereby granted, provided that both the copyright notice and this permission
- notice appear in all copies of the software, derivative works or modified versions,
- and any portions thereof, and that both notices appear in supporting documentation,
- and that credit is given to Mulle Kybernetik in all documents and publicity
- pertaining to direct or indirect use of this code or its derivatives.
-
- THIS IS EXPERIMENTAL SOFTWARE AND IT IS KNOWN TO HAVE BUGS, SOME OF WHICH MAY HAVE
- SERIOUS CONSEQUENCES. THE COPYRIGHT HOLDER ALLOWS FREE USE OF THIS SOFTWARE IN ITS
- "AS IS" CONDITION. THE COPYRIGHT HOLDER DISCLAIMS ANY LIABILITY OF ANY KIND FOR ANY
- DAMAGES WHATSOEVER RESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE
- OR OF ANY DERIVATIVE WORK. \ No newline at end of file
diff --git a/Frameworks/OCMock.framework/Versions/A/Resources/en.lproj/InfoPlist.strings b/Frameworks/OCMock.framework/Versions/A/Resources/en.lproj/InfoPlist.strings
new file mode 100644
index 00000000..5e45963c
--- /dev/null
+++ b/Frameworks/OCMock.framework/Versions/A/Resources/en.lproj/InfoPlist.strings
Binary files differ
diff --git a/Frameworks/PSMTabBar/PSMTabBarControl.m b/Frameworks/PSMTabBar/PSMTabBarControl.m
index 7e8eae87..7c1b059c 100644
--- a/Frameworks/PSMTabBar/PSMTabBarControl.m
+++ b/Frameworks/PSMTabBar/PSMTabBarControl.m
@@ -193,7 +193,7 @@
if (self) {
// Initialization
[self initAddedProperties];
- [self registerForDraggedTypes:[NSArray arrayWithObjects:@"PSMTabBarControlItemPBType", nil]];
+ [self registerForDraggedTypes:@[@"PSMTabBarControlItemPBType"]];
// resize
[self setPostsFrameChangedNotifications:YES];
@@ -1497,7 +1497,7 @@
}
// NSDraggingSource
-- (NSUInteger)draggingSourceOperationMaskForLocal:(BOOL)isLocal
+- (NSDragOperation)draggingSourceOperationMaskForLocal:(BOOL)isLocal
{
return (isLocal ? NSDragOperationMove : NSDragOperationNone);
}
@@ -1990,7 +1990,7 @@
// Initialization
[self initAddedProperties];
- [self registerForDraggedTypes:[NSArray arrayWithObjects:@"PSMTabBarControlItemPBType", nil]];
+ [self registerForDraggedTypes:@[@"PSMTabBarControlItemPBType"]];
if ([aDecoder allowsKeyedCoding]) {
_cells = [[aDecoder decodeObjectForKey:@"PSMcells"] retain];
diff --git a/Frameworks/PSMTabBar/PSMTabBarController.m b/Frameworks/PSMTabBar/PSMTabBarController.m
index 4ab2c1ef..eddf4174 100644
--- a/Frameworks/PSMTabBar/PSMTabBarController.m
+++ b/Frameworks/PSMTabBar/PSMTabBarController.m
@@ -633,7 +633,7 @@ static NSInteger potentialMinimumForArray(NSArray *array, NSInteger minimum)
}
}
- return TRUE;
+ return YES;
}
- (NSInteger)numberOfItemsInMenu:(NSMenu *)menu
diff --git a/Frameworks/PSMTabBar/PSMTabDragAssistant.m b/Frameworks/PSMTabBar/PSMTabDragAssistant.m
index bb2d255a..f10eadd4 100644
--- a/Frameworks/PSMTabBar/PSMTabDragAssistant.m
+++ b/Frameworks/PSMTabBar/PSMTabDragAssistant.m
@@ -192,7 +192,7 @@ static PSMTabDragAssistant *sharedDragAssistant = nil;
}
[cell setHighlighted:NO];
NSSize offset = NSZeroSize;
- [pboard declareTypes:[NSArray arrayWithObjects:@"PSMTabBarControlItemPBType", nil] owner: nil];
+ [pboard declareTypes:@[@"PSMTabBarControlItemPBType"] owner:nil];
[pboard setString:[[NSNumber numberWithInteger:[[control cells] indexOfObject:cell]] stringValue] forType:@"PSMTabBarControlItemPBType"];
_animationTimer = [NSTimer scheduledTimerWithTimeInterval:(1.0/30.0) target:self selector:@selector(animateDrag:) userInfo:nil repeats:YES];
@@ -768,7 +768,7 @@ static PSMTabDragAssistant *sharedDragAssistant = nil;
PSMTabBarControl *tabBar;
while ( (tabBar = [e nextObject]) ) {
[self calculateDragAnimationForTabBar:tabBar];
- [[NSRunLoop currentRunLoop] performSelector:@selector(display) target:tabBar argument:nil order:1 modes:[NSArray arrayWithObjects:@"NSEventTrackingRunLoopMode", @"NSDefaultRunLoopMode", nil]];
+ [[NSRunLoop currentRunLoop] performSelector:@selector(display) target:tabBar argument:nil order:1 modes:@[@"NSEventTrackingRunLoopMode", @"NSDefaultRunLoopMode"]];
}
}
diff --git a/Frameworks/SPMySQLFramework/MySQL Client Libraries/include/mysql_version.h b/Frameworks/SPMySQLFramework/MySQL Client Libraries/include/mysql_version.h
index 350e9f1c..7a8578ad 100644
--- a/Frameworks/SPMySQLFramework/MySQL Client Libraries/include/mysql_version.h
+++ b/Frameworks/SPMySQLFramework/MySQL Client Libraries/include/mysql_version.h
@@ -1,6 +1,7 @@
-/* Copyright (c) 1996, 1999-2004, 2007 MySQL AB
- Use is subject to license terms
- This file is public domain and comes with NO WARRANTY of any kind */
+/* Copyright Abandoned 1996,1999 TCX DataKonsult AB & Monty Program KB
+ & Detron HB, 1996, 1999-2004, 2007 MySQL AB.
+ This file is public domain and comes with NO WARRANTY of any kind
+*/
/* Version numbers for protocol & mysqld */
@@ -10,11 +11,11 @@
#include <custom_conf.h>
#else
#define PROTOCOL_VERSION 10
-#define MYSQL_SERVER_VERSION "5.5.33"
+#define MYSQL_SERVER_VERSION "5.5.42"
#define MYSQL_BASE_VERSION "mysqld-5.5"
#define MYSQL_SERVER_SUFFIX_DEF ""
#define FRM_VER 6
-#define MYSQL_VERSION_ID 50533
+#define MYSQL_VERSION_ID 50542
#define MYSQL_PORT 3306
#define MYSQL_PORT_DEFAULT 0
#define MYSQL_UNIX_ADDR "/tmp/mysql.sock"
diff --git a/Frameworks/SPMySQLFramework/MySQL Client Libraries/lib/libmysqlclient.a b/Frameworks/SPMySQLFramework/MySQL Client Libraries/lib/libmysqlclient.a
index aad3f2a3..aa0d6109 100644
--- a/Frameworks/SPMySQLFramework/MySQL Client Libraries/lib/libmysqlclient.a
+++ b/Frameworks/SPMySQLFramework/MySQL Client Libraries/lib/libmysqlclient.a
Binary files differ
diff --git a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection Categories/Copying.m b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection Categories/Copying.m
index 022708b8..32efa375 100644
--- a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection Categories/Copying.m
+++ b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection Categories/Copying.m
@@ -54,6 +54,7 @@
[copy setSocketPath:socketPath];
[copy setUseSSL:useSSL];
[copy setSslKeyFilePath:sslKeyFilePath];
+ [copy setSslCipherList:sslCipherList];
[copy setSslCertificatePath:sslCertificatePath];
[copy setSslCACertificatePath:sslCACertificatePath];
[copy setTimeout:timeout];
diff --git a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection Categories/Delegate & Proxy.m b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection Categories/Delegate & Proxy.m
index 85b2db9b..be6d054b 100644
--- a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection Categories/Delegate & Proxy.m
+++ b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection Categories/Delegate & Proxy.m
@@ -111,7 +111,7 @@
// Trigger a reconnect depending on connection usage recently. If the connection has
// actively been used in the last couple of minutes, trigger a full reconnection attempt.
if (_elapsedSecondsSinceAbsoluteTime(lastConnectionUsedTime) < 60 * 2) {
- reconnectionThread = [[[NSThread alloc] initWithTarget:self selector:@selector(_reconnectAllowingRetries:) object:[NSNumber numberWithBool:YES]] autorelease];
+ reconnectionThread = [[[NSThread alloc] initWithTarget:self selector:@selector(_reconnectAllowingRetries:) object:@YES] autorelease];
[reconnectionThread setName:@"SPMySQL reconnection thread (full)"];
[reconnectionThread start];
diff --git a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.h b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.h
index 34b21043..1720fcf6 100644
--- a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.h
+++ b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.h
@@ -51,6 +51,7 @@
NSString *sslKeyFilePath;
NSString *sslCertificatePath;
NSString *sslCACertificatePath;
+ NSString *sslCipherList;
// MySQL connection details and state
struct st_mysql *mySQLConnection;
@@ -143,6 +144,15 @@
@property (readwrite, retain) NSString *sslCertificatePath;
@property (readwrite, retain) NSString *sslCACertificatePath;
+/**
+ * List of supported ciphers for SSL/TLS connections.
+ * This is a colon-separated string of names as used by
+ * `openssl ciphers`. The order of entries specifies
+ * their preference (earlier = better).
+ * A value of nil (default) means SPMySQL will use its built-in cipher list.
+ */
+@property (readwrite, retain) NSString *sslCipherList;
+
@property (readwrite, assign) NSUInteger timeout;
@property (readwrite, assign) BOOL useKeepAlive;
@property (readwrite, assign) CGFloat keepAliveInterval;
diff --git a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m
index 79d5060a..9fa5a9c8 100644
--- a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m
+++ b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m
@@ -65,6 +65,7 @@ const char *SPMySQLSSLPermissibleCiphers = "DHE-RSA-AES256-SHA:AES256-SHA:DHE-RS
@synthesize sslKeyFilePath;
@synthesize sslCertificatePath;
@synthesize sslCACertificatePath;
+@synthesize sslCipherList;
@synthesize timeout;
@synthesize useKeepAlive;
@synthesize keepAliveInterval;
@@ -217,6 +218,8 @@ const char *SPMySQLSSLPermissibleCiphers = "DHE-RSA-AES256-SHA:AES256-SHA:DHE-RS
[proxy setConnectionStateChangeSelector:NULL delegate:nil];
[proxy release];
}
+
+ [self setSslCipherList:nil];
// Ensure the query lock is unlocked, thereafter setting to nil in case of pending calls
if ([connectionLock condition] != SPMySQLConnectionIdle) {
@@ -377,20 +380,20 @@ const char *SPMySQLSSLPermissibleCiphers = "DHE-RSA-AES256-SHA:AES256-SHA:DHE-RS
{
NSFileManager *fileManager = [NSFileManager defaultManager];
- NSArray *possibleSocketLocations = [NSArray arrayWithObjects:
- @"/tmp/mysql.sock", // Default
- @"/Applications/MAMP/tmp/mysql/mysql.sock", // MAMP default location
- @"/Applications/xampp/xamppfiles/var/mysql/mysql.sock", // XAMPP default location
- @"/var/mysql/mysql.sock", // Mac OS X Server default
- @"/opt/local/var/run/mysqld/mysqld.sock", // Darwinports MySQL
- @"/opt/local/var/run/mysql4/mysqld.sock", // Darwinports MySQL 4
- @"/opt/local/var/run/mysql5/mysqld.sock", // Darwinports MySQL 5
- @"/usr/local/zend/mysql/tmp/mysql.sock", // Zend Server CE (see Issue #1251)
- @"/var/run/mysqld/mysqld.sock", // As used on Debian/Gentoo
- @"/var/tmp/mysql.sock", // As used on FreeBSD
- @"/var/lib/mysql/mysql.sock", // As used by Fedora
- @"/opt/local/lib/mysql/mysql.sock", // Alternate fedora
- nil];
+ NSArray *possibleSocketLocations = @[
+ @"/tmp/mysql.sock", // Default
+ @"/Applications/MAMP/tmp/mysql/mysql.sock", // MAMP default location
+ @"/Applications/xampp/xamppfiles/var/mysql/mysql.sock", // XAMPP default location
+ @"/var/mysql/mysql.sock", // Mac OS X Server default
+ @"/opt/local/var/run/mysqld/mysqld.sock", // Darwinports MySQL
+ @"/opt/local/var/run/mysql4/mysqld.sock", // Darwinports MySQL 4
+ @"/opt/local/var/run/mysql5/mysqld.sock", // Darwinports MySQL 5
+ @"/usr/local/zend/mysql/tmp/mysql.sock", // Zend Server CE (see Issue #1251)
+ @"/var/run/mysqld/mysqld.sock", // As used on Debian/Gentoo
+ @"/var/tmp/mysql.sock", // As used on FreeBSD
+ @"/var/lib/mysql/mysql.sock", // As used by Fedora
+ @"/opt/local/lib/mysql/mysql.sock"
+ ];
for (NSUInteger i = 0; i < [possibleSocketLocations count]; i++) {
if ([fileManager fileExistsAtPath:[possibleSocketLocations objectAtIndex:i]])
@@ -546,6 +549,7 @@ const char *SPMySQLSSLPermissibleCiphers = "DHE-RSA-AES256-SHA:AES256-SHA:DHE-RS
const char *theSSLKeyFilePath = NULL;
const char *theSSLCertificatePath = NULL;
const char *theCACertificatePath = NULL;
+ const char *theSSLCiphers = SPMySQLSSLPermissibleCiphers;
if (sslKeyFilePath) {
theSSLKeyFilePath = [[sslKeyFilePath stringByExpandingTildeInPath] UTF8String];
@@ -556,8 +560,11 @@ const char *SPMySQLSSLPermissibleCiphers = "DHE-RSA-AES256-SHA:AES256-SHA:DHE-RS
if (sslCACertificatePath) {
theCACertificatePath = [[sslCACertificatePath stringByExpandingTildeInPath] UTF8String];
}
+ if(sslCipherList) {
+ theSSLCiphers = [sslCipherList UTF8String];
+ }
- mysql_ssl_set(theConnection, theSSLKeyFilePath, theSSLCertificatePath, theCACertificatePath, NULL, SPMySQLSSLPermissibleCiphers);
+ mysql_ssl_set(theConnection, theSSLKeyFilePath, theSSLCertificatePath, theCACertificatePath, NULL, theSSLCiphers);
}
MYSQL *connectionStatus = mysql_real_connect(theConnection, theHost, theUsername, thePassword, NULL, (unsigned int)port, theSocket, SPMySQLConnectionOptions);
diff --git a/Frameworks/SPMySQLFramework/Source/SPMySQLConnectionProxy.h b/Frameworks/SPMySQLFramework/Source/SPMySQLConnectionProxy.h
index a6f84567..3622b312 100644
--- a/Frameworks/SPMySQLFramework/Source/SPMySQLConnectionProxy.h
+++ b/Frameworks/SPMySQLFramework/Source/SPMySQLConnectionProxy.h
@@ -33,11 +33,12 @@
* Connection proxy state constants.
*/
typedef enum {
- SPMySQLProxyIdle = 0,
- SPMySQLProxyConnecting = 1,
- SPMySQLProxyWaitingForAuth = 2,
- SPMySQLProxyConnected = 3,
- SPMySQLProxyForwardingFailed = 4
+ SPMySQLProxyIdle = 0,
+ SPMySQLProxyConnecting = 1,
+ SPMySQLProxyWaitingForAuth = 2,
+ SPMySQLProxyConnected = 3,
+ SPMySQLProxyForwardingFailed = 4,
+ SPMySQLProxyLaunchFailed = 5
} SPMySQLConnectionProxyState;
diff --git a/Frameworks/SPMySQLFramework/Source/SPMySQLResult Categories/Data Conversion.m b/Frameworks/SPMySQLFramework/Source/SPMySQLResult Categories/Data Conversion.m
index 357eb53f..639ff0b9 100644
--- a/Frameworks/SPMySQLFramework/Source/SPMySQLResult Categories/Data Conversion.m
+++ b/Frameworks/SPMySQLFramework/Source/SPMySQLResult Categories/Data Conversion.m
@@ -247,9 +247,9 @@ static inline NSString * _convertStringData(const void *dataBytes, NSUInteger da
{
// Fast case - if not using a preview length, or if the data length is shorter, return the requested data.
- if (previewLength == NSNotFound || dataLength <= previewLength) {
- return [[[NSString alloc] initWithBytes:dataBytes length:dataLength encoding:aStringEncoding] autorelease];
- }
+ if (previewLength == NSNotFound || dataLength <= previewLength) {
+ return [NSString stringForDataBytes:dataBytes length:dataLength encoding:aStringEncoding];
+ }
NSUInteger i = 0, characterLength = 0, byteLength = previewLength;
uint16_t continuationStart, continuationEnd;
@@ -394,7 +394,7 @@ static inline NSString * _convertStringData(const void *dataBytes, NSUInteger da
// If returning the full string, use a fast path
if (byteLength >= dataLength) {
- return [[[NSString alloc] initWithBytes:dataBytes length:dataLength encoding:aStringEncoding] autorelease];
+ return [NSString stringForDataBytes:dataBytes length:dataLength encoding:aStringEncoding];
}
// Get a string using the calculated details
diff --git a/Frameworks/SPMySQLFramework/Source/SPMySQLStreamingResultStore.m b/Frameworks/SPMySQLFramework/Source/SPMySQLStreamingResultStore.m
index 447cf19b..86a6b2b5 100644
--- a/Frameworks/SPMySQLFramework/Source/SPMySQLStreamingResultStore.m
+++ b/Frameworks/SPMySQLFramework/Source/SPMySQLStreamingResultStore.m
@@ -630,8 +630,8 @@ static inline void SPMySQLStreamingResultStoreFreeRowData(SPMySQLStreamingResult
{
// Throw an exception if the range is out of bounds
- if (rangeToRemove.location + rangeToRemove.length > numberOfRows) {
- [NSException raise:NSRangeException format:@"Requested storage index (%llu) beyond bounds (%llu)", (unsigned long long)(rangeToRemove.location + rangeToRemove.length), (unsigned long long)numberOfRows];
+ if (NSMaxRange(rangeToRemove) > numberOfRows) {
+ [NSException raise:NSRangeException format:@"Requested storage index (%llu) beyond bounds (%llu)", (unsigned long long)(NSMaxRange(rangeToRemove)), (unsigned long long)numberOfRows];
}
// Lock the data mutex
@@ -639,14 +639,14 @@ static inline void SPMySQLStreamingResultStoreFreeRowData(SPMySQLStreamingResult
// Free rows in the range
NSUInteger i;
- for (i = rangeToRemove.location; i < rangeToRemove.location + rangeToRemove.length; i++) {
+ for (i = rangeToRemove.location; i < NSMaxRange(rangeToRemove); i++) {
SPMySQLStreamingResultStoreFreeRowData(dataStorage[i]);
}
numberOfRows -= rangeToRemove.length;
// Renumber all subsequent indices to fill the gap
size_t pointerSize = sizeof(SPMySQLStreamingResultStoreRowData *);
- memmove(dataStorage + rangeToRemove.location, dataStorage + rangeToRemove.location + rangeToRemove.length, (numberOfRows - rangeToRemove.location) * pointerSize);
+ memmove(dataStorage + rangeToRemove.location, dataStorage + NSMaxRange(rangeToRemove), (numberOfRows - rangeToRemove.location) * pointerSize);
// Unlock the mutex
pthread_mutex_unlock(&dataLock);
diff --git a/Frameworks/SPMySQLFramework/Source/SPMySQLStringAdditions.h b/Frameworks/SPMySQLFramework/Source/SPMySQLStringAdditions.h
index bb29c02b..60832c53 100644
--- a/Frameworks/SPMySQLFramework/Source/SPMySQLStringAdditions.h
+++ b/Frameworks/SPMySQLFramework/Source/SPMySQLStringAdditions.h
@@ -33,5 +33,6 @@
- (NSString *)mySQLBacktickQuotedString;
- (NSString *)mySQLTickQuotedString;
++ (NSString *)stringForDataBytes:(const void *)dataBytes length:(NSUInteger)dataLength encoding:(NSStringEncoding)aStringEncoding;
@end
diff --git a/Frameworks/SPMySQLFramework/Source/SPMySQLStringAdditions.m b/Frameworks/SPMySQLFramework/Source/SPMySQLStringAdditions.m
index 39688ea8..f987c98b 100644
--- a/Frameworks/SPMySQLFramework/Source/SPMySQLStringAdditions.m
+++ b/Frameworks/SPMySQLFramework/Source/SPMySQLStringAdditions.m
@@ -52,4 +52,18 @@
return [NSString stringWithFormat: @"'%@'", [self stringByReplacingOccurrencesOfString:@"'" withString:@"''"]];
}
+/**
+ * Returns the string for the bytes according to the encoding, decode in ASCII if failed
+ */
++ (NSString *) stringForDataBytes:(const void *)dataBytes length:(NSUInteger)dataLength encoding:(NSStringEncoding)aStringEncoding
+{
+ NSString * string = [[[NSString alloc] initWithBytes:dataBytes length:dataLength encoding:aStringEncoding] autorelease];
+
+ if (string == nil) {
+ return [[[NSString alloc] initWithBytes:dataBytes length:dataLength encoding:NSASCIIStringEncoding] autorelease];
+ }
+
+ return string;
+}
+
@end
diff --git a/Frameworks/SPMySQLFramework/build-mysql-client.sh b/Frameworks/SPMySQLFramework/build-mysql-client.sh
index 5fd1accb..2e7c4fc9 100755
--- a/Frameworks/SPMySQLFramework/build-mysql-client.sh
+++ b/Frameworks/SPMySQLFramework/build-mysql-client.sh
@@ -30,7 +30,7 @@
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
# OTHER DEALINGS IN THE SOFTWARE.
#
-# More info at <http://code.google.com/p/sequel-pro/>
+# More info at <https://github.com/sequelpro/sequelpro>
# Builds the MySQL client libraries for distrubution in Sequel Pro's MySQL framework.
#
diff --git a/Interfaces/English.lproj/AboutPanel.xib b/Interfaces/English.lproj/AboutPanel.xib
index a9dd57d4..d3f23f69 100644
--- a/Interfaces/English.lproj/AboutPanel.xib
+++ b/Interfaces/English.lproj/AboutPanel.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSButton</string>
@@ -54,7 +54,7 @@
<nil key="NSUserInterfaceItemIdentifier"/>
<string key="NSWindowContentMinSize">{213, 107}</string>
<object class="NSView" key="NSWindowView" id="1050049484">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSScrollView" id="380936327">
@@ -81,8 +81,9 @@
<string>NeXT Rich Text Format v1.0 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
- <string key="NSFrameSize">{273, 239}</string>
+ <string key="NSFrameSize">{262, 239}</string>
<reference key="NSSuperview" ref="364361801"/>
+ <reference key="NSWindow"/>
<object class="NSTextContainer" key="NSTextContainer" id="384294599">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
@@ -98,11 +99,11 @@
<nil key="NSDelegate"/>
</object>
<reference key="NSTextView" ref="339500391"/>
- <double key="NSWidth">273</double>
+ <double key="NSWidth">262</double>
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
- <int key="NSFlags">67111173</int>
+ <int key="NSFlags">2309</int>
<int key="NSTextCheckingTypes">0</int>
<nil key="NSMarkedAttributes"/>
<object class="NSColor" key="NSBackgroundColor" id="707775022">
@@ -150,8 +151,9 @@
<nil key="NSDelegate"/>
</object>
</array>
- <string key="NSFrame">{{1, 1}, {273, 239}}</string>
+ <string key="NSFrame">{{1, 1}, {262, 239}}</string>
<reference key="NSSuperview" ref="380936327"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="339500391"/>
<reference key="NSDocView" ref="339500391"/>
<reference key="NSBGColor" ref="707775022"/>
@@ -179,8 +181,9 @@
<object class="NSScroller" id="149906670">
<reference key="NSNextResponder" ref="380936327"/>
<int key="NSvFlags">256</int>
- <string key="NSFrame">{{260, 1}, {14, 239}}</string>
+ <string key="NSFrame">{{263, 1}, {11, 239}}</string>
<reference key="NSSuperview" ref="380936327"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">256</int>
<reference key="NSTarget" ref="380936327"/>
@@ -192,6 +195,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {87, 18}}</string>
<reference key="NSSuperview" ref="380936327"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">1</int>
<reference key="NSTarget" ref="380936327"/>
@@ -202,6 +206,7 @@
</array>
<string key="NSFrame">{{207, 20}, {275, 241}}</string>
<reference key="NSSuperview" ref="1050049484"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="364361801"/>
<int key="NSsFlags">133138</int>
<reference key="NSVScroller" ref="149906670"/>
@@ -216,13 +221,14 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{8, 74}, {191, 22}}</string>
<reference key="NSSuperview" ref="1050049484"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="530496386">
<int key="NSCellFlags">-2079326144</int>
<int key="NSCellFlags2">138413056</int>
<string key="NSContents">Sequel Pro</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">18</double>
<int key="NSfFlags">1044</int>
</object>
@@ -248,13 +254,14 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{23, 12}, {161, 32}}</string>
<reference key="NSSuperview" ref="1050049484"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="631472894">
<int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">License</string>
<object class="NSFont" key="NSSupport" id="938980022">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -284,6 +291,7 @@
</set>
<string key="NSFrame">{{29, 104}, {149, 157}}</string>
<reference key="NSSuperview" ref="1050049484"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="402884078">
<int key="NSCellFlags">134217728</int>
@@ -305,13 +313,14 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{8, 52}, {191, 14}}</string>
<reference key="NSSuperview" ref="1050049484"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="265504093">
<int key="NSCellFlags">68157504</int>
<int key="NSCellFlags2">138548224</int>
<string key="NSContents">Build Version</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -334,6 +343,8 @@
</object>
</array>
<string key="NSFrameSize">{502, 281}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
<string key="NSMinSize">{213, 129}</string>
@@ -388,7 +399,7 @@
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
- <int key="NSFlags">67111169</int>
+ <int key="NSFlags">2305</int>
<int key="NSTextCheckingTypes">0</int>
<nil key="NSMarkedAttributes"/>
<reference key="NSBackgroundColor" ref="707775022"/>
@@ -487,7 +498,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">appNameVersionTextField</string>
@@ -781,14 +792,267 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPAboutController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeApplicationLicenseSheet:">id</string>
+ <string key="openApplicationLicenseSheet:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeApplicationLicenseSheet:">
+ <string key="name">closeApplicationLicenseSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openApplicationLicenseSheet:">
+ <string key="name">openApplicationLicenseSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="appBuildVersionTextField">NSTextField</string>
+ <string key="appCreditsTextView">NSTextView</string>
+ <string key="appLicensePanel">NSPanel</string>
+ <string key="appLicenseTextView">NSTextView</string>
+ <string key="appNameVersionTextField">NSTextField</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="appBuildVersionTextField">
+ <string key="name">appBuildVersionTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="appCreditsTextView">
+ <string key="name">appCreditsTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="appLicensePanel">
+ <string key="name">appLicensePanel</string>
+ <string key="candidateClassName">NSPanel</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="appLicenseTextView">
+ <string key="name">appLicenseTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="appNameVersionTextField">
+ <string key="name">appNameVersionTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPAboutController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPAboutController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeApplicationLicenseSheet:">id</string>
+ <string key="openApplicationLicenseSheet:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeApplicationLicenseSheet:">
+ <string key="name">closeApplicationLicenseSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openApplicationLicenseSheet:">
+ <string key="name">openApplicationLicenseSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPAboutController.m</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/BundleEditor.xib b/Interfaces/English.lproj/BundleEditor.xib
index a4d68b29..ffd2103e 100644
--- a/Interfaces/English.lproj/BundleEditor.xib
+++ b/Interfaces/English.lproj/BundleEditor.xib
@@ -3,12 +3,12 @@
<data>
<int key="IBDocument.SystemTarget">1060</int>
<string key="IBDocument.SystemVersion">13F34</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
<string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">5056</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSActionCell</string>
@@ -86,7 +86,7 @@
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
- <string key="NSFrame">{{0, 0.5}, {142, 23}}</string>
+ <string key="NSFrame">{{0, 1}, {142, 23}}</string>
<reference key="NSSuperview" ref="69213598"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
@@ -146,7 +146,7 @@
<int key="NSCellFlags">67108928</int>
<int key="NSCellFlags2">134219776</int>
<object class="NSFont" key="NSSupport" id="604392898">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -318,7 +318,7 @@
<int key="NSCellFlags2">2048</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -810,7 +810,7 @@
<int key="NSCellFlags2">262144</int>
<string key="NSContents">[Shortcut recorder placeholder]</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">9</double>
<int key="NSfFlags">3614</int>
</object>
@@ -1802,7 +1802,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">window</string>
@@ -4112,11 +4112,9 @@
<string key="insertNULLvalue:">id</string>
<string key="moveSelectionLineDown:">id</string>
<string key="moveSelectionLineUp:">id</string>
- <string key="orderFrontSharingServicePicker:">id</string>
<string key="selectCurrentLine:">id</string>
<string key="selectCurrentWord:">id</string>
<string key="selectEnclosingBrackets:">id</string>
- <string key="toggleQuickLookPreviewPanel:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
@@ -4171,10 +4169,6 @@
<string key="name">moveSelectionLineUp:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="orderFrontSharingServicePicker:">
- <string key="name">orderFrontSharingServicePicker:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="selectCurrentLine:">
<string key="name">selectCurrentLine:</string>
<string key="candidateClassName">id</string>
@@ -4187,19 +4181,124 @@
<string key="name">selectEnclosingBrackets:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="toggleQuickLookPreviewPanel:">
- <string key="name">toggleQuickLookPreviewPanel:</string>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/NSTextView.h</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">SPBundleCommandTextView</string>
<string key="superclassName">NSTextView</string>
+ <object class="NSMutableDictionary" key="outlets">
+ <string key="NS.key.0">commandScrollView</string>
+ <string key="NS.object.0">NSScrollView</string>
+ </object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <string key="NS.key.0">commandScrollView</string>
+ <object class="IBToOneOutletInfo" key="NS.object.0">
+ <string key="name">commandScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPBundleCommandTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPBundleCommandTextView</string>
<dictionary class="NSMutableDictionary" key="actions">
<string key="cut:">id</string>
<string key="paste:">id</string>
@@ -4224,20 +4323,9 @@
<string key="candidateClassName">id</string>
</object>
</dictionary>
- <object class="NSMutableDictionary" key="outlets">
- <string key="NS.key.0">commandScrollView</string>
- <string key="NS.object.0">NSScrollView</string>
- </object>
- <object class="NSMutableDictionary" key="toOneOutletInfosByName">
- <string key="NS.key.0">commandScrollView</string>
- <object class="IBToOneOutletInfo" key="NS.object.0">
- <string key="name">commandScrollView</string>
- <string key="candidateClassName">NSScrollView</string>
- </object>
- </object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPBundleCommandTextView.h</string>
+ <string key="minorKey">../Source/SPBundleCommandTextView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4260,7 +4348,6 @@
<string key="saveBundle:">id</string>
<string key="scopeButtonChanged:">id</string>
<string key="showHelp:">id</string>
- <string key="showWindow:">id</string>
<string key="triggerButtonChanged:">id</string>
<string key="undeleteDefaultBundles:">id</string>
<string key="withBlobButtonChanged:">id</string>
@@ -4330,10 +4417,6 @@
<string key="name">showHelp:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showWindow:">
- <string key="name">showWindow:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="triggerButtonChanged:">
<string key="name">triggerButtonChanged:</string>
<string key="candidateClassName">id</string>
@@ -4523,7 +4606,118 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPBundleEditorController.h</string>
+ <string key="minorKey">../Source/SPBundleEditorController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPBundleEditorController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addCommandBundle:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="closeUndeleteDefaultBundlesSheet:">id</string>
+ <string key="displayBundleMetaInfo:">id</string>
+ <string key="duplicateCommandBundle:">id</string>
+ <string key="inputFallbackPopupButtonChanged:">id</string>
+ <string key="inputPopupButtonChanged:">id</string>
+ <string key="outputPopupButtonChanged:">id</string>
+ <string key="performClose:">id</string>
+ <string key="reloadBundles:">id</string>
+ <string key="removeCommandBundle:">id</string>
+ <string key="revealCommandBundleInFinder:">id</string>
+ <string key="saveAndCloseWindow:">id</string>
+ <string key="saveBundle:">id</string>
+ <string key="scopeButtonChanged:">id</string>
+ <string key="showHelp:">id</string>
+ <string key="showWindow:">id</string>
+ <string key="triggerButtonChanged:">id</string>
+ <string key="undeleteDefaultBundles:">id</string>
+ <string key="withBlobButtonChanged:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addCommandBundle:">
+ <string key="name">addCommandBundle:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeUndeleteDefaultBundlesSheet:">
+ <string key="name">closeUndeleteDefaultBundlesSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="displayBundleMetaInfo:">
+ <string key="name">displayBundleMetaInfo:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateCommandBundle:">
+ <string key="name">duplicateCommandBundle:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="inputFallbackPopupButtonChanged:">
+ <string key="name">inputFallbackPopupButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="inputPopupButtonChanged:">
+ <string key="name">inputPopupButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="outputPopupButtonChanged:">
+ <string key="name">outputPopupButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="performClose:">
+ <string key="name">performClose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadBundles:">
+ <string key="name">reloadBundles:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeCommandBundle:">
+ <string key="name">removeCommandBundle:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="revealCommandBundleInFinder:">
+ <string key="name">revealCommandBundleInFinder:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveAndCloseWindow:">
+ <string key="name">saveAndCloseWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveBundle:">
+ <string key="name">saveBundle:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="scopeButtonChanged:">
+ <string key="name">scopeButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelp:">
+ <string key="name">showHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showWindow:">
+ <string key="name">showWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="triggerButtonChanged:">
+ <string key="name">triggerButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="undeleteDefaultBundles:">
+ <string key="name">undeleteDefaultBundles:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="withBlobButtonChanged:">
+ <string key="name">withBlobButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPBundleEditorController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4531,7 +4725,7 @@
<string key="superclassName">NSOutlineView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPOutlineView.h</string>
+ <string key="minorKey">../Source/SPOutlineView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4564,7 +4758,25 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPSplitView.h</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4572,9 +4784,11 @@
<string key="superclassName">NSWindow</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPWindow.h</string>
+ <string key="minorKey">../Source/SPWindow.h</string>
</object>
</object>
+ </array>
+ <array class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
<object class="IBPartialClassDescription">
<string key="className">SRRecorderCell</string>
<string key="superclassName">NSActionCell</string>
@@ -4590,8 +4804,8 @@
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SRRecorderCell.h</string>
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4609,8 +4823,8 @@
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SRRecorderControl.h</string>
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string>
</object>
</object>
</array>
@@ -4618,10 +4832,6 @@
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/BundleHTMLOutput.xib b/Interfaces/English.lproj/BundleHTMLOutput.xib
index d7e0755c..9796e267 100644
--- a/Interfaces/English.lproj/BundleHTMLOutput.xib
+++ b/Interfaces/English.lproj/BundleHTMLOutput.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<dictionary class="NSMutableDictionary" key="IBDocument.PluginVersions">
- <string key="com.apple.InterfaceBuilder.CocoaPlugin">4514</string>
- <string key="com.apple.WebKitIBPlugin">3338</string>
+ <string key="com.apple.InterfaceBuilder.CocoaPlugin">6254</string>
+ <string key="com.apple.WebKitIBPlugin">6254</string>
</dictionary>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSCustomObject</string>
@@ -45,7 +45,7 @@
<nil key="NSUserInterfaceItemIdentifier"/>
<string key="NSWindowContentMinSize">{50, 50}</string>
<object class="NSView" key="NSWindowView" id="1006">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">4352</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="WebView" id="472558256">
@@ -70,6 +70,7 @@
</set>
<string key="NSFrameSize">{480, 270}</string>
<reference key="NSSuperview" ref="1006"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView"/>
<string key="FrameName"/>
<string key="GroupName"/>
@@ -88,6 +89,8 @@
</object>
</array>
<string key="NSFrameSize">{480, 270}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="472558256"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
@@ -99,7 +102,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">window</string>
@@ -229,14 +232,61 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">SPBundleHTMLOutputController</string>
+ <string key="superclassName">NSWindowController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="NSMutableDictionary" key="outlets">
+ <string key="NS.key.0">webView</string>
+ <string key="NS.object.0">WebView</string>
+ </object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <string key="NS.key.0">webView</string>
+ <object class="IBToOneOutletInfo" key="NS.object.0">
+ <string key="name">webView</string>
+ <string key="candidateClassName">WebView</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPBundleHTMLOutputController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPBundleHTMLOutputController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPBundleHTMLOutputController.m</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/ConnectionErrorDialog.xib b/Interfaces/English.lproj/ConnectionErrorDialog.xib
index ccd7a7d9..e6802666 100644
--- a/Interfaces/English.lproj/ConnectionErrorDialog.xib
+++ b/Interfaces/English.lproj/ConnectionErrorDialog.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSButton</string>
@@ -48,7 +48,7 @@
<nil key="NSViewClass"/>
<nil key="NSUserInterfaceItemIdentifier"/>
<object class="NSView" key="NSWindowView" id="552671949">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextField" id="625523505">
@@ -56,13 +56,14 @@
<int key="NSvFlags">274</int>
<string key="NSFrame">{{112, 64}, {404, 34}}</string>
<reference key="NSSuperview" ref="552671949"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="1045633636">
<int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">272629760</int>
<string key="NSContents">Sequel Pro appears to have lost the connection to the server, or the server has stopped responding.</string>
<object class="NSFont" key="NSSupport" id="874654698">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -94,6 +95,7 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{365, 12}, {154, 32}}</string>
<reference key="NSSuperview" ref="552671949"/>
+ <reference key="NSWindow"/>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="884446740">
@@ -116,6 +118,7 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{198, 12}, {167, 32}}</string>
<reference key="NSSuperview" ref="552671949"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="47055839">
<int key="NSCellFlags">67108864</int>
@@ -145,6 +148,7 @@
</set>
<string key="NSFrame">{{20, 53}, {75, 74}}</string>
<reference key="NSSuperview" ref="552671949"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="24661938">
<int key="NSCellFlags">134217728</int>
@@ -174,6 +178,7 @@
</set>
<string key="NSFrame">{{70, 49}, {32, 32}}</string>
<reference key="NSSuperview" ref="552671949"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="572830162">
<int key="NSCellFlags">134217728</int>
@@ -195,13 +200,14 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{112, 110}, {404, 17}}</string>
<reference key="NSSuperview" ref="552671949"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="298401010">
<int key="NSCellFlags">68157504</int>
<int key="NSCellFlags2">272630784</int>
<string key="NSContents">Connection Lost</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI-Bold</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">2072</int>
</object>
@@ -215,6 +221,8 @@
</object>
</array>
<string key="NSFrameSize">{533, 147}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
@@ -223,7 +231,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">connectionErrorDialog</string>
@@ -407,10 +415,6 @@
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/ConnectionView.xib b/Interfaces/English.lproj/ConnectionView.xib
index 7356d24b..ae601deb 100644
--- a/Interfaces/English.lproj/ConnectionView.xib
+++ b/Interfaces/English.lproj/ConnectionView.xib
@@ -3,12 +3,12 @@
<data>
<int key="IBDocument.SystemTarget">1060</int>
<string key="IBDocument.SystemVersion">13F34</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6751</string>
<string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">5056</string>
+ <string key="NS.object.0">6751</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSButton</string>
@@ -109,7 +109,7 @@
<int key="NSCellFlags2">134217728</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport" id="807120225">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -160,7 +160,7 @@
<string key="NSFrame">{{-2, 0}, {36, 23}}</string>
<reference key="NSSuperview" ref="551584428"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="524598165"/>
+ <reference key="NSNextKeyView" ref="589005585"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="970960222">
<int key="NSCellFlags">67108928</int>
@@ -368,6 +368,7 @@
</array>
<reference key="NSMenuFont" ref="807120225"/>
</object>
+ <int key="NSSelectedIndex">-1</int>
<bool key="NSPullDown">YES</bool>
<int key="NSPreferredEdge">1</int>
<bool key="NSUsesItemFromMenu">YES</bool>
@@ -439,7 +440,7 @@
<int key="NSCellFlags2">2048</int>
<string key="NSContents">Favorites</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -550,7 +551,7 @@
<string key="NSFrame">{{1, 525}, {228, 15}}</string>
<reference key="NSSuperview" ref="524598165"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="589005585"/>
+ <reference key="NSNextKeyView" ref="735633081"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">1</int>
<reference key="NSTarget" ref="524598165"/>
@@ -575,7 +576,7 @@
<string key="NSFrameSize">{200, 513}</string>
<reference key="NSSuperview" ref="616749187"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="735633081"/>
+ <reference key="NSNextKeyView" ref="524598165"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
</object>
<object class="NSView" id="563806501">
@@ -605,7 +606,7 @@
<object class="NSButton" id="148626614">
<reference key="NSNextResponder" ref="765073663"/>
<int key="NSvFlags">268</int>
- <string key="NSFrame">{{158.5, 3}, {125, 28}}</string>
+ <string key="NSFrame">{{159, 3}, {139, 28}}</string>
<reference key="NSSuperview" ref="765073663"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="941479834"/>
@@ -628,7 +629,7 @@
<object class="NSButton" id="463178943">
<reference key="NSNextResponder" ref="765073663"/>
<int key="NSvFlags">268</int>
- <string key="NSFrame">{{15, 3}, {145, 28}}</string>
+ <string key="NSFrame">{{3, 3}, {157, 28}}</string>
<reference key="NSSuperview" ref="765073663"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="148626614"/>
@@ -651,7 +652,7 @@
<object class="NSButton" id="941479834">
<reference key="NSNextResponder" ref="765073663"/>
<int key="NSvFlags">265</int>
- <string key="NSFrame">{{286, 3}, {145, 28}}</string>
+ <string key="NSFrame">{{297, 3}, {146, 28}}</string>
<reference key="NSSuperview" ref="765073663"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="460592307"/>
@@ -681,7 +682,7 @@
<object class="NSTabView" id="134031646">
<reference key="NSNextResponder" ref="735564334"/>
<int key="NSvFlags">274</int>
- <string key="NSFrame">{{13, 61}, {420, 417}}</string>
+ <string key="NSFrame">{{3, 61}, {440, 417}}</string>
<reference key="NSSuperview" ref="735564334"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="159800861"/>
@@ -992,7 +993,7 @@
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrame">{{6, 101}, {377, 287}}</string>
+ <string key="NSFrame">{{22, 101}, {377, 287}}</string>
<reference key="NSSuperview" ref="32802602"/>
<reference key="NSNextKeyView" ref="445567924"/>
<string key="NSClassName">NSView</string>
@@ -1211,13 +1212,13 @@
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
</array>
- <string key="NSFrame">{{6, -3}, {377, 104}}</string>
+ <string key="NSFrame">{{22, -3}, {377, 104}}</string>
<reference key="NSSuperview" ref="32802602"/>
<reference key="NSNextKeyView" ref="1034069158"/>
<string key="NSClassName">NSView</string>
</object>
</array>
- <string key="NSFrame">{{10, 33}, {400, 371}}</string>
+ <string key="NSFrame">{{10, 33}, {420, 371}}</string>
<reference key="NSNextKeyView" ref="233374444"/>
</object>
<string key="NSLabel">Standard</string>
@@ -1465,7 +1466,7 @@
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrame">{{6, 142}, {377, 246}}</string>
+ <string key="NSFrame">{{22, 142}, {377, 246}}</string>
<reference key="NSSuperview" ref="962671066"/>
<reference key="NSNextKeyView" ref="459734357"/>
<string key="NSClassName">NSView</string>
@@ -1523,6 +1524,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{328, 12}, {29, 24}}</string>
<reference key="NSSuperview" ref="866600720"/>
+ <reference key="NSNextKeyView" ref="990947983"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="308087760">
<int key="NSCellFlags">67108864</int>
@@ -1677,13 +1679,13 @@
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
</array>
- <string key="NSFrame">{{6, 38}, {377, 104}}</string>
+ <string key="NSFrame">{{22, 38}, {377, 104}}</string>
<reference key="NSSuperview" ref="962671066"/>
<reference key="NSNextKeyView" ref="57862599"/>
<string key="NSClassName">NSView</string>
</object>
</array>
- <string key="NSFrame">{{10, 33}, {400, 371}}</string>
+ <string key="NSFrame">{{10, 33}, {420, 371}}</string>
<reference key="NSNextKeyView" ref="394302879"/>
</object>
<string key="NSLabel">Socket</string>
@@ -2218,7 +2220,7 @@
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrame">{{12, -34}, {377, 422}}</string>
+ <string key="NSFrame">{{22, -34}, {377, 422}}</string>
<reference key="NSSuperview" ref="159800861"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="761323775"/>
@@ -2280,7 +2282,7 @@
<string key="NSFrame">{{328, 12}, {29, 24}}</string>
<reference key="NSSuperview" ref="709218819"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView"/>
+ <reference key="NSNextKeyView" ref="990947983"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="345867488">
<int key="NSCellFlags">67108864</int>
@@ -2441,14 +2443,14 @@
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
</array>
- <string key="NSFrame">{{12, -146}, {377, 104}}</string>
+ <string key="NSFrame">{{22, -146}, {377, 104}}</string>
<reference key="NSSuperview" ref="159800861"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="700963246"/>
<string key="NSClassName">NSView</string>
</object>
</array>
- <string key="NSFrame">{{10, 33}, {400, 371}}</string>
+ <string key="NSFrame">{{10, 33}, {420, 371}}</string>
<reference key="NSSuperview" ref="134031646"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="326102394"/>
@@ -2470,7 +2472,7 @@
<object class="NSButton" id="460592307">
<reference key="NSNextResponder" ref="735564334"/>
<int key="NSvFlags">289</int>
- <string key="NSFrame">{{285, 33}, {147, 32}}</string>
+ <string key="NSFrame">{{295, 33}, {147, 32}}</string>
<reference key="NSSuperview" ref="735564334"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="108277656"/>
@@ -2493,7 +2495,7 @@
<object class="NSProgressIndicator" id="575228526">
<reference key="NSNextResponder" ref="735564334"/>
<int key="NSvFlags">1316</int>
- <string key="NSFrame">{{20, 43}, {16, 16}}</string>
+ <string key="NSFrame">{{7, 43}, {16, 16}}</string>
<reference key="NSSuperview" ref="735564334"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="549907703"/>
@@ -2504,7 +2506,7 @@
<object class="NSTextField" id="549907703">
<reference key="NSNextResponder" ref="735564334"/>
<int key="NSvFlags">-2147483356</int>
- <string key="NSFrame">{{41, 43}, {252, 17}}</string>
+ <string key="NSFrame">{{29, 43}, {264, 17}}</string>
<reference key="NSSuperview" ref="735564334"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="765073663"/>
@@ -2524,7 +2526,7 @@
<object class="NSButton" id="990947983">
<reference key="NSNextResponder" ref="735564334"/>
<int key="NSvFlags">292</int>
- <string key="NSFrame">{{15, 37}, {25, 25}}</string>
+ <string key="NSFrame">{{3, 37}, {25, 25}}</string>
<reference key="NSSuperview" ref="735564334"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="575228526"/>
@@ -2545,7 +2547,7 @@
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
</array>
- <string key="NSFrame">{{116.5, 5}, {446, 472}}</string>
+ <string key="NSFrame">{{116, 5}, {446, 472}}</string>
<reference key="NSSuperview" ref="315390047"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="134031646"/>
@@ -2619,7 +2621,7 @@
<int key="NSCellFlags2">138413056</int>
<string key="NSContents">Enter connection details below, or choose a favorite</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI-Bold</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">2072</int>
</object>
@@ -2693,7 +2695,7 @@
<bytes key="NSRGB">MC45MDE5NjA3OSAwLjkwMTk2MDc5IDAuOTAxOTYwNzkAA</bytes>
</object>
<object class="NSFont" key="NSFont">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">10</double>
<int key="NSfFlags">2843</int>
</object>
@@ -2961,7 +2963,7 @@
</array>
<string key="NSFrameSize">{580, 320}</string>
</object>
- <string key="NSScreenRect">{{0, 0}, {1680, 1028}}</string>
+ <string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
<string key="NSMinSize">{100, 119}</string>
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
<string key="NSFrameAutosaveName"/>
@@ -3260,7 +3262,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">errorDetailWindow</string>
@@ -6214,11 +6216,12 @@
<string key="id">5862</string>
<reference key="object" ref="765073663"/>
<array class="NSMutableArray" key="children">
- <reference ref="148626614"/>
<reference ref="463178943"/>
<reference ref="941479834"/>
+ <reference ref="148626614"/>
</array>
<reference key="parent" ref="735564334"/>
+ <string key="objectName">Edit Connection Buttons Box</string>
</object>
<object class="IBObjectRecord">
<string key="id">5863</string>
@@ -7484,6 +7487,7 @@
<string key="3Y2-Rj-0be.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="4829.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="4839.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference key="4888.IBNSViewMetadataGestureRecognizers" ref="0"/>
<string key="4888.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="4910.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="4911.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -7952,6 +7956,7 @@
<string key="5854.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="5858.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="5859.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference key="5862.IBNSViewMetadataGestureRecognizers" ref="0"/>
<string key="5862.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="5863.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="5864.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -8024,7 +8029,7 @@
<string key="superclassName">NSTextFieldCell</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/ImageAndTextCell.h</string>
+ <string key="minorKey">../Source/ImageAndTextCell.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8043,11 +8048,9 @@
<string key="insertNULLvalue:">id</string>
<string key="moveSelectionLineDown:">id</string>
<string key="moveSelectionLineUp:">id</string>
- <string key="orderFrontSharingServicePicker:">id</string>
<string key="selectCurrentLine:">id</string>
<string key="selectCurrentWord:">id</string>
<string key="selectEnclosingBrackets:">id</string>
- <string key="toggleQuickLookPreviewPanel:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
@@ -8102,10 +8105,6 @@
<string key="name">moveSelectionLineUp:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="orderFrontSharingServicePicker:">
- <string key="name">orderFrontSharingServicePicker:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="selectCurrentLine:">
<string key="name">selectCurrentLine:</string>
<string key="candidateClassName">id</string>
@@ -8118,14 +8117,101 @@
<string key="name">selectEnclosingBrackets:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="toggleQuickLookPreviewPanel:">
- <string key="name">toggleQuickLookPreviewPanel:</string>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/NSTextView.h</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8144,7 +8230,7 @@
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPColorSelectorView.h</string>
+ <string key="minorKey">../Source/SPColorSelectorView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8515,7 +8601,103 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPConnectionController.h</string>
+ <string key="minorKey">../Source/SPConnectionController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPConnectionController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addFavorite:">id</string>
+ <string key="addFavoriteUsingCurrentDetails:">id</string>
+ <string key="addGroup:">id</string>
+ <string key="cancelConnection:">id</string>
+ <string key="chooseKeyLocation:">NSButton</string>
+ <string key="duplicateFavorite:">id</string>
+ <string key="exportFavorites:">id</string>
+ <string key="importFavorites:">id</string>
+ <string key="initiateConnection:">id</string>
+ <string key="makeSelectedFavoriteDefault:">id</string>
+ <string key="nodeDoubleClicked:">id</string>
+ <string key="removeNode:">id</string>
+ <string key="renameNode:">id</string>
+ <string key="saveFavorite:">id</string>
+ <string key="showHelp:">id</string>
+ <string key="updateKeyLocationFileVisibility:">id</string>
+ <string key="updateSSLInterface:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addFavorite:">
+ <string key="name">addFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addFavoriteUsingCurrentDetails:">
+ <string key="name">addFavoriteUsingCurrentDetails:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addGroup:">
+ <string key="name">addGroup:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelConnection:">
+ <string key="name">cancelConnection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseKeyLocation:">
+ <string key="name">chooseKeyLocation:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateFavorite:">
+ <string key="name">duplicateFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportFavorites:">
+ <string key="name">exportFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFavorites:">
+ <string key="name">importFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="initiateConnection:">
+ <string key="name">initiateConnection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeSelectedFavoriteDefault:">
+ <string key="name">makeSelectedFavoriteDefault:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="nodeDoubleClicked:">
+ <string key="name">nodeDoubleClicked:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeNode:">
+ <string key="name">removeNode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameNode:">
+ <string key="name">renameNode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveFavorite:">
+ <string key="name">saveFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelp:">
+ <string key="name">showHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateKeyLocationFileVisibility:">
+ <string key="name">updateKeyLocationFileVisibility:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateSSLInterface:">
+ <string key="name">updateSSLInterface:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8523,7 +8705,7 @@
<string key="superclassName">ImageAndTextCell</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPFavoriteTextFieldCell.h</string>
+ <string key="minorKey">../Source/SPFavoriteTextFieldCell.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8531,7 +8713,7 @@
<string key="superclassName">NSOutlineView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPFavoritesOutlineView.h</string>
+ <string key="minorKey">../Source/SPFavoritesOutlineView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8539,7 +8721,7 @@
<string key="superclassName">NSView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPFlippedView.h</string>
+ <string key="minorKey">../Source/SPFlippedView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8572,7 +8754,318 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPSplitView.h</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
+ </object>
+ </object>
+ </array>
+ <array class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
+ <object class="IBPartialClassDescription">
+ <string key="className">NSActionCell</string>
+ <string key="superclassName">NSCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSApplication</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSButton</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSButton.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSButtonCell</string>
+ <string key="superclassName">NSActionCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSCell</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSControl</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSControl.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSController</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSFormatter</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSImageCell</string>
+ <string key="superclassName">NSCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSImageCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSImageView</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSImageView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenu</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenuItem</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenuItemCell</string>
+ <string key="superclassName">NSButtonCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSOutlineView</string>
+ <string key="superclassName">NSTableView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPanel</string>
+ <string key="superclassName">NSWindow</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPanel.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPopUpButton</string>
+ <string key="superclassName">NSButton</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPopUpButtonCell</string>
+ <string key="superclassName">NSMenuItemCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSProgressIndicator</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSProgressIndicator.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSResponder</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSScrollView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSScrollView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSScroller</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSScroller.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSecureTextField</string>
+ <string key="superclassName">NSTextField</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSecureTextField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSplitView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTabView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTabView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTabViewItem</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTabViewItem.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTableColumn</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTableColumn.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTableView</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSText</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSText.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextField</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextFieldCell</string>
+ <string key="superclassName">NSActionCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <string key="superclassName">NSText</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSUserDefaultsController</string>
+ <string key="superclassName">NSController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSView</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSViewController</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="NSMutableDictionary" key="outlets">
+ <string key="NS.key.0">view</string>
+ <string key="NS.object.0">NSView</string>
+ </object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <string key="NS.key.0">view</string>
+ <object class="IBToOneOutletInfo" key="NS.object.0">
+ <string key="name">view</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSWindow</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSWindow.h</string>
</object>
</object>
</array>
@@ -8580,10 +9073,6 @@
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/Console.xib b/Interfaces/English.lproj/Console.xib
index b46381f8..d48195cf 100644
--- a/Interfaces/English.lproj/Console.xib
+++ b/Interfaces/English.lproj/Console.xib
@@ -3,12 +3,12 @@
<data>
<int key="IBDocument.SystemTarget">1060</int>
<string key="IBDocument.SystemVersion">13F34</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
<string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">5056</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSButton</string>
@@ -109,7 +109,7 @@
<int key="NSCellFlags2">134348800</int>
<string key="NSContents">Save As...</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -468,7 +468,7 @@
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Clear</string>
<object class="NSFont" key="NSSupport" id="1012436895">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -750,7 +750,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">window</string>
@@ -1549,7 +1549,53 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPQueryController.h</string>
+ <string key="minorKey">../Source/SPQueryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPQueryController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="clearConsole:">id</string>
+ <string key="saveConsoleAs:">id</string>
+ <string key="toggleShowConnections:">id</string>
+ <string key="toggleShowDatabases:">id</string>
+ <string key="toggleShowHelpStatements:">id</string>
+ <string key="toggleShowSelectShowStatements:">id</string>
+ <string key="toggleShowTimeStamps:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="clearConsole:">
+ <string key="name">clearConsole:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConsoleAs:">
+ <string key="name">saveConsoleAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowConnections:">
+ <string key="name">toggleShowConnections:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowDatabases:">
+ <string key="name">toggleShowDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowHelpStatements:">
+ <string key="name">toggleShowHelpStatements:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowSelectShowStatements:">
+ <string key="name">toggleShowSelectShowStatements:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowTimeStamps:">
+ <string key="name">toggleShowTimeStamps:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPQueryController.m</string>
</object>
</object>
</array>
@@ -1557,10 +1603,6 @@
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/ContentFilterManager.xib b/Interfaces/English.lproj/ContentFilterManager.xib
index e4a273b3..89104d4a 100644
--- a/Interfaces/English.lproj/ContentFilterManager.xib
+++ b/Interfaces/English.lproj/ContentFilterManager.xib
@@ -3,12 +3,12 @@
<data>
<int key="IBDocument.SystemTarget">1060</int>
<string key="IBDocument.SystemVersion">13F34</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
<string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">5056</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSArrayController</string>
@@ -79,7 +79,7 @@
<int key="NSCellFlags2">0</int>
<string key="NSContents">Box</string>
<object class="NSFont" key="NSSupport" id="1071840538">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -384,7 +384,7 @@
<int key="NSCellFlags2">2048</int>
<string key="NSContents">Content Filters</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -559,7 +559,7 @@
<int key="NSCellFlags2">262144</int>
<string key="NSContents">Suppress leading &lt;field&gt; placeholder</string>
<object class="NSFont" key="NSSupport" id="22">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">9</double>
<int key="NSfFlags">3614</int>
</object>
@@ -1113,7 +1113,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">window</string>
@@ -2160,7 +2160,7 @@
<string key="superclassName">NSTextFieldCell</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/ImageAndTextCell.h</string>
+ <string key="minorKey">../Source/ImageAndTextCell.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2251,7 +2251,98 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/NSTextView.h</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2263,7 +2354,6 @@
<string key="duplicateContentFilter:">id</string>
<string key="exportContentFilter:">id</string>
<string key="importContentFilterByAdding:">id</string>
- <string key="importFavoritesByReplacing:">id</string>
<string key="insertPlaceholder:">id</string>
<string key="removeContentFilter:">id</string>
<string key="suppressLeadingFiledPlaceholderWasChanged:">id</string>
@@ -2289,10 +2379,6 @@
<string key="name">importContentFilterByAdding:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="importFavoritesByReplacing:">
- <string key="name">importFavoritesByReplacing:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="insertPlaceholder:">
<string key="name">insertPlaceholder:</string>
<string key="candidateClassName">id</string>
@@ -2382,7 +2468,63 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPContentFilterManager.h</string>
+ <string key="minorKey">../Source/SPContentFilterManager.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPContentFilterManager</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addContentFilter:">id</string>
+ <string key="closeContentFilterManagerSheet:">id</string>
+ <string key="duplicateContentFilter:">id</string>
+ <string key="exportContentFilter:">id</string>
+ <string key="importContentFilterByAdding:">id</string>
+ <string key="importFavoritesByReplacing:">id</string>
+ <string key="insertPlaceholder:">id</string>
+ <string key="removeContentFilter:">id</string>
+ <string key="suppressLeadingFiledPlaceholderWasChanged:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addContentFilter:">
+ <string key="name">addContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeContentFilterManagerSheet:">
+ <string key="name">closeContentFilterManagerSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateContentFilter:">
+ <string key="name">duplicateContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportContentFilter:">
+ <string key="name">exportContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importContentFilterByAdding:">
+ <string key="name">importContentFilterByAdding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFavoritesByReplacing:">
+ <string key="name">importFavoritesByReplacing:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertPlaceholder:">
+ <string key="name">insertPlaceholder:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeContentFilter:">
+ <string key="name">removeContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="suppressLeadingFiledPlaceholderWasChanged:">
+ <string key="name">suppressLeadingFiledPlaceholderWasChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPContentFilterManager.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2401,7 +2543,25 @@
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCopyTable.h</string>
+ <string key="minorKey">../Source/SPCopyTable.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2428,11 +2588,9 @@
<string key="runSecondaryQueryAction:">id</string>
<string key="runSelectedQueries:">id</string>
<string key="saveQueryHistory:">id</string>
- <string key="searchInDocForWebViewSelection:">id</string>
<string key="showCompletionList:">id</string>
<string key="showHelpForCurrentWord:">id</string>
<string key="showHelpForSearchString:">id</string>
- <string key="showHelpForWebViewSelection:">id</string>
<string key="switchDefaultQueryAction:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
@@ -2516,10 +2674,6 @@
<string key="name">saveQueryHistory:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
- <string key="name">searchInDocForWebViewSelection:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="showCompletionList:">
<string key="name">showCompletionList:</string>
<string key="candidateClassName">id</string>
@@ -2532,10 +2686,6 @@
<string key="name">showHelpForSearchString:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showHelpForWebViewSelection:">
- <string key="name">showHelpForWebViewSelection:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="switchDefaultQueryAction:">
<string key="name">switchDefaultQueryAction:</string>
<string key="candidateClassName">id</string>
@@ -2822,7 +2972,148 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCustomQuery.h</string>
+ <string key="minorKey">../Source/SPCustomQuery.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="searchInDocForWebViewSelection:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="showHelpForWebViewSelection:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
+ <string key="name">searchInDocForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForWebViewSelection:">
+ <string key="name">showHelpForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2830,7 +3121,25 @@
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseData.h</string>
+ <string key="minorKey">../Source/SPDatabaseData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">closeErrorConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionDelegate.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2847,7 +3156,6 @@
<string key="checksumTable:">id</string>
<string key="chooseDatabase:">id</string>
<string key="chooseEncoding:">id</string>
- <string key="closeErrorConnectionSheet:">id</string>
<string key="closePanelSheet:">id</string>
<string key="closePasswordSheet:">id</string>
<string key="closeSheet:">id</string>
@@ -2865,7 +3173,6 @@
<string key="openCurrentConnectionInNewWindow:">id</string>
<string key="openDatabaseInNewTab:">id</string>
<string key="optimizeTable:">id</string>
- <string key="printDocument:">id</string>
<string key="refreshTables:">id</string>
<string key="removeDatabase:">id</string>
<string key="renameDatabase:">id</string>
@@ -2883,12 +3190,6 @@
<string key="showUserManager:">id</string>
<string key="toggleNavigator:">id</string>
<string key="validateSaveConnectionAccessory:">id</string>
- <string key="viewContent:">id</string>
- <string key="viewQuery:">id</string>
- <string key="viewRelations:">id</string>
- <string key="viewStatus:">id</string>
- <string key="viewStructure:">id</string>
- <string key="viewTriggers:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="addConnectionToFavorites:">
@@ -2931,10 +3232,6 @@
<string key="name">chooseEncoding:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="closeErrorConnectionSheet:">
- <string key="name">closeErrorConnectionSheet:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="closePanelSheet:">
<string key="name">closePanelSheet:</string>
<string key="candidateClassName">id</string>
@@ -3003,10 +3300,6 @@
<string key="name">optimizeTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="printDocument:">
- <string key="name">printDocument:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="refreshTables:">
<string key="name">refreshTables:</string>
<string key="candidateClassName">id</string>
@@ -3075,30 +3368,6 @@
<string key="name">validateSaveConnectionAccessory:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="viewContent:">
- <string key="name">viewContent:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewQuery:">
- <string key="name">viewQuery:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewRelations:">
- <string key="name">viewRelations:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStatus:">
- <string key="name">viewStatus:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStructure:">
- <string key="name">viewStructure:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewTriggers:">
- <string key="name">viewTriggers:</string>
- <string key="candidateClassName">id</string>
- </object>
</dictionary>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="addDatabaseButton">id</string>
@@ -3451,7 +3720,338 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseDocument.h</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPrintController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3602,7 +4202,48 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPExtendedTableInfo.h</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3635,7 +4276,25 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPHistoryController.h</string>
+ <string key="minorKey">../Source/SPHistoryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3801,7 +4460,53 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPIndexesController.h</string>
+ <string key="minorKey">../Source/SPIndexesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3912,7 +4617,73 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPQueryFavoriteManager.h</string>
+ <string key="minorKey">../Source/SPQueryFavoriteManager.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPQueryFavoriteManager</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addQueryFavorite:">id</string>
+ <string key="closeQueryManagerSheet:">id</string>
+ <string key="duplicateQueryFavorite:">id</string>
+ <string key="exportFavorites:">id</string>
+ <string key="importFavoritesByAdding:">id</string>
+ <string key="importFavoritesByReplacing:">id</string>
+ <string key="insertPlaceholder:">id</string>
+ <string key="removeAllQueryFavorites:">id</string>
+ <string key="removeQueryFavorite:">id</string>
+ <string key="saveFavoriteToFile:">id</string>
+ <string key="showHelp:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addQueryFavorite:">
+ <string key="name">addQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeQueryManagerSheet:">
+ <string key="name">closeQueryManagerSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateQueryFavorite:">
+ <string key="name">duplicateQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportFavorites:">
+ <string key="name">exportFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFavoritesByAdding:">
+ <string key="name">importFavoritesByAdding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFavoritesByReplacing:">
+ <string key="name">importFavoritesByReplacing:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertPlaceholder:">
+ <string key="name">insertPlaceholder:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeAllQueryFavorites:">
+ <string key="name">removeAllQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeQueryFavorite:">
+ <string key="name">removeQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveFavoriteToFile:">
+ <string key="name">saveFavoriteToFile:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelp:">
+ <string key="name">showHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPQueryFavoriteManager.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3945,7 +4716,25 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPSplitView.h</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4069,6 +4858,7 @@
<string key="limitRowsField">id</string>
<string key="limitRowsStepper">id</string>
<string key="multipleLineEditingButton">NSButton</string>
+ <string key="paginationBox">NSBox</string>
<string key="paginationButton">NSButton</string>
<string key="paginationGoButton">NSButton</string>
<string key="paginationNextButton">NSButton</string>
@@ -4076,6 +4866,7 @@
<string key="paginationPageStepper">NSStepper</string>
<string key="paginationPreviousButton">NSButton</string>
<string key="paginationView">NSView</string>
+ <string key="paginationViewController">NSViewController</string>
<string key="reloadButton">id</string>
<string key="removeButton">id</string>
<string key="secondBetweenField">id</string>
@@ -4200,6 +4991,10 @@
<string key="name">multipleLineEditingButton</string>
<string key="candidateClassName">NSButton</string>
</object>
+ <object class="IBToOneOutletInfo" key="paginationBox">
+ <string key="name">paginationBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
<object class="IBToOneOutletInfo" key="paginationButton">
<string key="name">paginationButton</string>
<string key="candidateClassName">NSButton</string>
@@ -4228,6 +5023,10 @@
<string key="name">paginationView</string>
<string key="candidateClassName">NSView</string>
</object>
+ <object class="IBToOneOutletInfo" key="paginationViewController">
+ <string key="name">paginationViewController</string>
+ <string key="candidateClassName">NSViewController</string>
+ </object>
<object class="IBToOneOutletInfo" key="reloadButton">
<string key="name">reloadButton</string>
<string key="candidateClassName">id</string>
@@ -4271,7 +5070,103 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableContent.h</string>
+ <string key="minorKey">../Source/SPTableContent.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4293,7 +5188,7 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableData.h</string>
+ <string key="minorKey">../Source/SPTableData.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4340,7 +5235,7 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableInfo.h</string>
+ <string key="minorKey">../Source/SPTableInfo.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4350,7 +5245,6 @@
<string key="addField:">id</string>
<string key="closeSheet:">id</string>
<string key="duplicateField:">id</string>
- <string key="reloadTable:">id</string>
<string key="removeField:">id</string>
<string key="resetAutoIncrement:">id</string>
<string key="showOptimizedFieldType:">id</string>
@@ -4370,10 +5264,6 @@
<string key="name">duplicateField:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="reloadTable:">
- <string key="name">reloadTable:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="removeField:">
<string key="name">removeField:</string>
<string key="candidateClassName">id</string>
@@ -4536,7 +5426,94 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableStructure.h</string>
+ <string key="minorKey">../Source/SPTableStructure.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4544,7 +5521,7 @@
<string key="superclassName">NSTableView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableView.h</string>
+ <string key="minorKey">../Source/SPTableView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4555,9 +5532,9 @@
<string key="closeSheet:">id</string>
<string key="copyTable:">id</string>
<string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
<string key="removeTable:">id</string>
<string key="renameTable:">id</string>
- <string key="tableEncodingButtonChanged:">id</string>
<string key="togglePaneCollapse:">id</string>
<string key="truncateTable:">id</string>
<string key="updateFilter:">id</string>
@@ -4580,6 +5557,10 @@
<string key="name">openTableInNewTab:</string>
<string key="candidateClassName">id</string>
</object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
<object class="IBActionInfo" key="removeTable:">
<string key="name">removeTable:</string>
<string key="candidateClassName">id</string>
@@ -4588,10 +5569,6 @@
<string key="name">renameTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="tableEncodingButtonChanged:">
- <string key="name">tableEncodingButtonChanged:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="togglePaneCollapse:">
<string key="name">togglePaneCollapse:</string>
<string key="candidateClassName">id</string>
@@ -4626,6 +5603,8 @@
<string key="listFilterField">NSSearchField</string>
<string key="openTableInNewTabContextMenuItem">NSMenuItem</string>
<string key="openTableInNewTabMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowMenuItem">NSMenuItem</string>
<string key="removeTableContextMenuItem">NSMenuItem</string>
<string key="removeTableMenuItem">NSMenuItem</string>
<string key="renameTableContextMenuItem">NSMenuItem</string>
@@ -4725,6 +5704,14 @@
<string key="name">openTableInNewTabMenuItem</string>
<string key="candidateClassName">NSMenuItem</string>
</object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowContextMenuItem">
+ <string key="name">openTableInNewWindowContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowMenuItem">
+ <string key="name">openTableInNewWindowMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
<object class="IBToOneOutletInfo" key="removeTableContextMenuItem">
<string key="name">removeTableContextMenuItem</string>
<string key="candidateClassName">NSMenuItem</string>
@@ -4860,26 +5847,94 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTablesList.h</string>
+ <string key="minorKey">../Source/SPTablesList.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
- <string key="className">SPTextView</string>
- <string key="superclassName">NSTextView</string>
+ <string key="className">SPTablesList</string>
<dictionary class="NSMutableDictionary" key="actions">
- <string key="printDocument:">id</string>
- <string key="showMySQLHelpForCurrentWord:">id</string>
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="tableEncodingButtonChanged:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
- <object class="IBActionInfo" key="printDocument:">
- <string key="name">printDocument:</string>
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
- <string key="name">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableEncodingButtonChanged:">
+ <string key="name">tableEncodingButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <string key="superclassName">NSTextView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="customQueryInstance">SPCustomQuery</string>
<string key="scrollView">NSScrollView</string>
@@ -4906,7 +5961,28 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTextView.h</string>
+ <string key="minorKey">../Source/SPTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="printDocument:">id</string>
+ <string key="showMySQLHelpForCurrentWord:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="printDocument:">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.m</string>
</object>
</object>
</array>
@@ -4914,10 +5990,6 @@
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/ContentPaginationView.xib b/Interfaces/English.lproj/ContentPaginationView.xib
index 23d4bfcd..4865483d 100644
--- a/Interfaces/English.lproj/ContentPaginationView.xib
+++ b/Interfaces/English.lproj/ContentPaginationView.xib
@@ -3,12 +3,12 @@
<data>
<int key="IBDocument.SystemTarget">1060</int>
<string key="IBDocument.SystemVersion">13F34</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
<string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">5056</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSBox</string>
@@ -56,7 +56,6 @@
<string key="NSFrame">{{1, 1}, {328, 134}}</string>
<reference key="NSSuperview" ref="323537221"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView"/>
</object>
</array>
<string key="NSFrame">{{0, -47}, {330, 136}}</string>
@@ -70,7 +69,7 @@
<int key="NSCellFlags2">0</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -112,9 +111,11 @@
<object class="NSUserDefaultsController" id="763599508">
<bool key="NSSharedInstance">YES</bool>
</object>
- <object class="NSViewController" id="972867763"/>
+ <object class="NSViewController" id="972867763">
+ <int key="showSeguePresentationStyle">0</int>
+ </object>
<object class="NSCustomView" id="600737852">
- <reference key="NSNextResponder"/>
+ <nil key="NSNextResponder"/>
<int key="NSvFlags">268</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSButton" id="741787207">
@@ -122,7 +123,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{15, 31}, {166, 18}}</string>
<reference key="NSSuperview" ref="600737852"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="367019582"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="318581445">
@@ -152,7 +152,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{187, 31}, {52, 19}}</string>
<reference key="NSSuperview" ref="600737852"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1053293287"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="254835918">
@@ -229,7 +228,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{241, 28}, {15, 22}}</string>
<reference key="NSSuperview" ref="600737852"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="311374174"/>
<bool key="NSEnabled">YES</bool>
<object class="NSStepperCell" key="NSCell" id="649826098">
@@ -251,7 +249,6 @@
<int key="NSvFlags">12</int>
<string key="NSFrame">{{14, 50}, {302, 5}}</string>
<reference key="NSSuperview" ref="600737852"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="741787207"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
@@ -259,7 +256,7 @@
<int key="NSCellFlags2">0</int>
<string key="NSContents">Box</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -279,7 +276,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{204, 59}, {15, 22}}</string>
<reference key="NSSuperview" ref="600737852"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="998571040"/>
<bool key="NSEnabled">YES</bool>
<object class="NSStepperCell" key="NSCell" id="376995691">
@@ -300,7 +296,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{259, 33}, {60, 14}}</string>
<reference key="NSSuperview" ref="600737852"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="51636128"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="273815993">
@@ -333,8 +328,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{15, 6}, {303, 18}}</string>
<reference key="NSSuperview" ref="600737852"/>
- <reference key="NSWindow"/>
- <reference key="NSNextKeyView"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="879882833">
<int key="NSCellFlags">67108864</int>
@@ -358,7 +351,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{15, 64}, {129, 14}}</string>
<reference key="NSSuperview" ref="600737852"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="646478488"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="263475897">
@@ -378,7 +370,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{150, 61}, {52, 19}}</string>
<reference key="NSSuperview" ref="600737852"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1038693239"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="929555576">
@@ -446,7 +437,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{225, 62}, {91, 17}}</string>
<reference key="NSSuperview" ref="600737852"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="168692272"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="782307404">
@@ -466,8 +456,6 @@
</object>
</array>
<string key="NSFrameSize">{330, 89}</string>
- <reference key="NSSuperview"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="752076369"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<string key="NSClassName">NSView</string>
@@ -475,7 +463,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">paginationView</string>
@@ -969,11 +957,9 @@
<string key="insertNULLvalue:">id</string>
<string key="moveSelectionLineDown:">id</string>
<string key="moveSelectionLineUp:">id</string>
- <string key="orderFrontSharingServicePicker:">id</string>
<string key="selectCurrentLine:">id</string>
<string key="selectCurrentWord:">id</string>
<string key="selectEnclosingBrackets:">id</string>
- <string key="toggleQuickLookPreviewPanel:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
@@ -1028,10 +1014,6 @@
<string key="name">moveSelectionLineUp:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="orderFrontSharingServicePicker:">
- <string key="name">orderFrontSharingServicePicker:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="selectCurrentLine:">
<string key="name">selectCurrentLine:</string>
<string key="candidateClassName">id</string>
@@ -1044,14 +1026,101 @@
<string key="name">selectEnclosingBrackets:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="toggleQuickLookPreviewPanel:">
- <string key="name">toggleQuickLookPreviewPanel:</string>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/NSTextView.h</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -1070,7 +1139,25 @@
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCopyTable.h</string>
+ <string key="minorKey">../Source/SPCopyTable.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -1097,11 +1184,9 @@
<string key="runSecondaryQueryAction:">id</string>
<string key="runSelectedQueries:">id</string>
<string key="saveQueryHistory:">id</string>
- <string key="searchInDocForWebViewSelection:">id</string>
<string key="showCompletionList:">id</string>
<string key="showHelpForCurrentWord:">id</string>
<string key="showHelpForSearchString:">id</string>
- <string key="showHelpForWebViewSelection:">id</string>
<string key="switchDefaultQueryAction:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
@@ -1185,10 +1270,6 @@
<string key="name">saveQueryHistory:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
- <string key="name">searchInDocForWebViewSelection:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="showCompletionList:">
<string key="name">showCompletionList:</string>
<string key="candidateClassName">id</string>
@@ -1201,10 +1282,6 @@
<string key="name">showHelpForSearchString:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showHelpForWebViewSelection:">
- <string key="name">showHelpForWebViewSelection:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="switchDefaultQueryAction:">
<string key="name">switchDefaultQueryAction:</string>
<string key="candidateClassName">id</string>
@@ -1491,7 +1568,148 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCustomQuery.h</string>
+ <string key="minorKey">../Source/SPCustomQuery.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="searchInDocForWebViewSelection:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="showHelpForWebViewSelection:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
+ <string key="name">searchInDocForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForWebViewSelection:">
+ <string key="name">showHelpForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -1499,7 +1717,25 @@
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseData.h</string>
+ <string key="minorKey">../Source/SPDatabaseData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">closeErrorConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionDelegate.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -1516,7 +1752,6 @@
<string key="checksumTable:">id</string>
<string key="chooseDatabase:">id</string>
<string key="chooseEncoding:">id</string>
- <string key="closeErrorConnectionSheet:">id</string>
<string key="closePanelSheet:">id</string>
<string key="closePasswordSheet:">id</string>
<string key="closeSheet:">id</string>
@@ -1534,7 +1769,6 @@
<string key="openCurrentConnectionInNewWindow:">id</string>
<string key="openDatabaseInNewTab:">id</string>
<string key="optimizeTable:">id</string>
- <string key="printDocument:">id</string>
<string key="refreshTables:">id</string>
<string key="removeDatabase:">id</string>
<string key="renameDatabase:">id</string>
@@ -1552,12 +1786,6 @@
<string key="showUserManager:">id</string>
<string key="toggleNavigator:">id</string>
<string key="validateSaveConnectionAccessory:">id</string>
- <string key="viewContent:">id</string>
- <string key="viewQuery:">id</string>
- <string key="viewRelations:">id</string>
- <string key="viewStatus:">id</string>
- <string key="viewStructure:">id</string>
- <string key="viewTriggers:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="addConnectionToFavorites:">
@@ -1600,10 +1828,6 @@
<string key="name">chooseEncoding:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="closeErrorConnectionSheet:">
- <string key="name">closeErrorConnectionSheet:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="closePanelSheet:">
<string key="name">closePanelSheet:</string>
<string key="candidateClassName">id</string>
@@ -1672,10 +1896,6 @@
<string key="name">optimizeTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="printDocument:">
- <string key="name">printDocument:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="refreshTables:">
<string key="name">refreshTables:</string>
<string key="candidateClassName">id</string>
@@ -1744,30 +1964,6 @@
<string key="name">validateSaveConnectionAccessory:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="viewContent:">
- <string key="name">viewContent:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewQuery:">
- <string key="name">viewQuery:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewRelations:">
- <string key="name">viewRelations:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStatus:">
- <string key="name">viewStatus:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStructure:">
- <string key="name">viewStructure:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewTriggers:">
- <string key="name">viewTriggers:</string>
- <string key="candidateClassName">id</string>
- </object>
</dictionary>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="addDatabaseButton">id</string>
@@ -2120,7 +2316,338 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseDocument.h</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPrintController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2271,7 +2798,48 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPExtendedTableInfo.h</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2304,7 +2872,25 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPHistoryController.h</string>
+ <string key="minorKey">../Source/SPHistoryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2470,7 +3056,53 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPIndexesController.h</string>
+ <string key="minorKey">../Source/SPIndexesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2503,7 +3135,25 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPSplitView.h</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2839,7 +3489,103 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableContent.h</string>
+ <string key="minorKey">../Source/SPTableContent.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2861,7 +3607,7 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableData.h</string>
+ <string key="minorKey">../Source/SPTableData.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2908,7 +3654,7 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableInfo.h</string>
+ <string key="minorKey">../Source/SPTableInfo.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2918,7 +3664,6 @@
<string key="addField:">id</string>
<string key="closeSheet:">id</string>
<string key="duplicateField:">id</string>
- <string key="reloadTable:">id</string>
<string key="removeField:">id</string>
<string key="resetAutoIncrement:">id</string>
<string key="showOptimizedFieldType:">id</string>
@@ -2938,10 +3683,6 @@
<string key="name">duplicateField:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="reloadTable:">
- <string key="name">reloadTable:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="removeField:">
<string key="name">removeField:</string>
<string key="candidateClassName">id</string>
@@ -3104,7 +3845,94 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableStructure.h</string>
+ <string key="minorKey">../Source/SPTableStructure.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3112,7 +3940,7 @@
<string key="superclassName">NSTableView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableView.h</string>
+ <string key="minorKey">../Source/SPTableView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3126,7 +3954,6 @@
<string key="openTableInNewWindow:">id</string>
<string key="removeTable:">id</string>
<string key="renameTable:">id</string>
- <string key="tableEncodingButtonChanged:">id</string>
<string key="togglePaneCollapse:">id</string>
<string key="truncateTable:">id</string>
<string key="updateFilter:">id</string>
@@ -3161,10 +3988,6 @@
<string key="name">renameTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="tableEncodingButtonChanged:">
- <string key="name">tableEncodingButtonChanged:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="togglePaneCollapse:">
<string key="name">togglePaneCollapse:</string>
<string key="candidateClassName">id</string>
@@ -3443,26 +4266,94 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTablesList.h</string>
+ <string key="minorKey">../Source/SPTablesList.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
- <string key="className">SPTextView</string>
- <string key="superclassName">NSTextView</string>
+ <string key="className">SPTablesList</string>
<dictionary class="NSMutableDictionary" key="actions">
- <string key="printDocument:">id</string>
- <string key="showMySQLHelpForCurrentWord:">id</string>
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="tableEncodingButtonChanged:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
- <object class="IBActionInfo" key="printDocument:">
- <string key="name">printDocument:</string>
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
- <string key="name">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableEncodingButtonChanged:">
+ <string key="name">tableEncodingButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <string key="superclassName">NSTextView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="customQueryInstance">SPCustomQuery</string>
<string key="scrollView">NSScrollView</string>
@@ -3489,25 +4380,28 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTextView.h</string>
+ <string key="minorKey">../Source/SPTextView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
- <string key="className">WebView</string>
- <object class="NSMutableDictionary" key="actions">
- <string key="NS.key.0">reloadFromOrigin:</string>
- <string key="NS.object.0">id</string>
- </object>
- <object class="NSMutableDictionary" key="actionInfosByName">
- <string key="NS.key.0">reloadFromOrigin:</string>
- <object class="IBActionInfo" key="NS.object.0">
- <string key="name">reloadFromOrigin:</string>
+ <string key="className">SPTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="printDocument:">id</string>
+ <string key="showMySQLHelpForCurrentWord:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="printDocument:">
+ <string key="name">printDocument:</string>
<string key="candidateClassName">id</string>
</object>
- </object>
+ <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/WebView.h</string>
+ <string key="minorKey">../Source/SPTextView.m</string>
</object>
</object>
</array>
@@ -3515,10 +4409,6 @@
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/DBView.xib b/Interfaces/English.lproj/DBView.xib
index b6a5e2fa..524e0482 100644
--- a/Interfaces/English.lproj/DBView.xib
+++ b/Interfaces/English.lproj/DBView.xib
@@ -3,12 +3,12 @@
<data>
<int key="IBDocument.SystemTarget">1060</int>
<string key="IBDocument.SystemVersion">13F34</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6751</string>
<string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<dictionary class="NSMutableDictionary" key="IBDocument.PluginVersions">
- <string key="com.apple.InterfaceBuilder.CocoaPlugin">5056</string>
- <string key="com.apple.WebKitIBPlugin">5056</string>
+ <string key="com.apple.InterfaceBuilder.CocoaPlugin">6751</string>
+ <string key="com.apple.WebKitIBPlugin">6751</string>
</dictionary>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSBox</string>
@@ -68,7 +68,7 @@
<string key="NSClassName">NSApplication</string>
</object>
<object class="NSCustomView" id="173438986">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">274</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSSplitView" id="310278688">
@@ -108,10 +108,8 @@
<int key="NSvFlags">4362</int>
<string key="NSFrameSize">{218, 38}</string>
<reference key="NSSuperview" ref="828528612"/>
- <reference key="NSNextKeyView" ref="440427720"/>
- <object class="NSAppearance" key="NSAppearance" id="241009281">
- <string key="NSAppearanceName">NSAppearanceNameVibrantLight</string>
- </object>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="36449649"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
@@ -130,7 +128,7 @@
<int key="NSCellFlags2">2048</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -153,7 +151,7 @@
<int key="NSCellFlags2">2048</int>
<string key="NSContents">Text Cell</string>
<object class="NSFont" key="NSSupport" id="71602814">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -220,6 +218,7 @@
</array>
<string key="NSFrame">{{1, 1}, {218, 38}}</string>
<reference key="NSSuperview" ref="45537637"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="778694607"/>
<reference key="NSDocView" ref="778694607"/>
<int key="NScvFlags">2</int>
@@ -229,6 +228,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {15, 8}}</string>
<reference key="NSSuperview" ref="45537637"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="510684108"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<reference key="NSTarget" ref="45537637"/>
@@ -239,6 +239,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {223, 15}}</string>
<reference key="NSSuperview" ref="45537637"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="828528612"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">1</int>
@@ -248,7 +249,8 @@
</array>
<string key="NSFrame">{{-1, -13}, {220, 40}}</string>
<reference key="NSSuperview" ref="695889527"/>
- <reference key="NSNextKeyView" ref="36449649"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="828528612"/>
<int key="NSsFlags">133122</int>
<reference key="NSVScroller" ref="36449649"/>
<reference key="NSHScroller" ref="510684108"/>
@@ -263,6 +265,7 @@
<int key="NSvFlags">290</int>
<string key="NSFrame">{{5, 2}, {204, 19}}</string>
<reference key="NSSuperview" ref="695889527"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="217761928"/>
<bool key="NSViewIsLayerTreeHost">YES</bool>
<bool key="NSEnabled">YES</bool>
@@ -324,6 +327,7 @@
</array>
<string key="NSFrameSize">{214, 24}</string>
<reference key="NSSuperview" ref="152099238"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="45537637"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
</object>
@@ -344,8 +348,8 @@
<int key="NSvFlags">4352</int>
<string key="NSFrameSize">{214, 334}</string>
<reference key="NSSuperview" ref="385210161"/>
- <reference key="NSNextKeyView" ref="710239831"/>
- <reference key="NSAppearance" ref="241009281"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="769186993"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
@@ -410,6 +414,7 @@
</array>
<string key="NSFrameSize">{214, 334}</string>
<reference key="NSSuperview" ref="737277163"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="720354614"/>
<reference key="NSDocView" ref="720354614"/>
</object>
@@ -418,6 +423,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{197, 0}, {15, 292}}</string>
<reference key="NSSuperview" ref="737277163"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1061162984"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<reference key="NSTarget" ref="737277163"/>
@@ -429,6 +435,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {141, 11}}</string>
<reference key="NSSuperview" ref="737277163"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="385210161"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">257</int>
@@ -438,7 +445,8 @@
</array>
<string key="NSFrameSize">{214, 334}</string>
<reference key="NSSuperview" ref="217761928"/>
- <reference key="NSNextKeyView" ref="769186993"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="385210161"/>
<int key="NSsFlags">133648</int>
<reference key="NSVScroller" ref="710239831"/>
<reference key="NSHScroller" ref="769186993"/>
@@ -451,18 +459,21 @@
</array>
<string key="NSFrame">{{0, 25}, {214, 334}}</string>
<reference key="NSSuperview" ref="152099238"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="737277163"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
</object>
</array>
<string key="NSFrameSize">{214, 359}</string>
<reference key="NSSuperview" ref="315394535"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="695889527"/>
<int key="NSDividerStyle">2</int>
</object>
</array>
<string key="NSFrameSize">{214, 359}</string>
<reference key="NSSuperview" ref="220052404"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="152099238"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
</object>
@@ -483,8 +494,8 @@
<int key="NSvFlags">4352</int>
<string key="NSFrameSize">{216, 166}</string>
<reference key="NSSuperview" ref="5721858"/>
- <reference key="NSNextKeyView" ref="980722778"/>
- <reference key="NSAppearance" ref="241009281"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="29986399"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
@@ -549,6 +560,7 @@
</array>
<string key="NSFrameSize">{216, 166}</string>
<reference key="NSSuperview" ref="883675819"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="828624540"/>
<reference key="NSDocView" ref="828624540"/>
<int key="NScvFlags">2</int>
@@ -558,6 +570,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {15, 20}}</string>
<reference key="NSSuperview" ref="883675819"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="321115393"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<reference key="NSTarget" ref="883675819"/>
@@ -568,6 +581,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {141, 11}}</string>
<reference key="NSSuperview" ref="883675819"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="5721858"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">257</int>
@@ -577,7 +591,8 @@
</array>
<string key="NSFrame">{{-1, 0}, {216, 166}}</string>
<reference key="NSSuperview" ref="1061162984"/>
- <reference key="NSNextKeyView" ref="29986399"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="5721858"/>
<int key="NSsFlags">133648</int>
<reference key="NSVScroller" ref="29986399"/>
<reference key="NSHScroller" ref="321115393"/>
@@ -600,8 +615,8 @@
<int key="NSvFlags">4352</int>
<string key="NSFrameSize">{214, 166}</string>
<reference key="NSSuperview" ref="725874926"/>
- <reference key="NSNextKeyView" ref="381962579"/>
- <reference key="NSAppearance" ref="241009281"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="735507568"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
@@ -666,6 +681,7 @@
</array>
<string key="NSFrameSize">{214, 166}</string>
<reference key="NSSuperview" ref="980722778"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="366652030"/>
<reference key="NSDocView" ref="366652030"/>
<int key="NScvFlags">2</int>
@@ -675,6 +691,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {15, 20}}</string>
<reference key="NSSuperview" ref="980722778"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="562900810"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<reference key="NSTarget" ref="980722778"/>
@@ -686,6 +703,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {141, 11}}</string>
<reference key="NSSuperview" ref="980722778"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="725874926"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">257</int>
@@ -695,7 +713,8 @@
</array>
<string key="NSFrameSize">{214, 166}</string>
<reference key="NSSuperview" ref="1061162984"/>
- <reference key="NSNextKeyView" ref="735507568"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="725874926"/>
<int key="NSsFlags">133632</int>
<reference key="NSVScroller" ref="735507568"/>
<reference key="NSHScroller" ref="562900810"/>
@@ -708,12 +727,14 @@
</array>
<string key="NSFrame">{{0, 360}, {214, 166}}</string>
<reference key="NSSuperview" ref="220052404"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="883675819"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
</object>
</array>
<string key="NSFrame">{{0, 23}, {214, 526}}</string>
<reference key="NSSuperview" ref="841205379"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="315394535"/>
<int key="NSDividerStyle">2</int>
</object>
@@ -730,6 +751,7 @@
</set>
<string key="NSFrameSize">{214, 23}</string>
<reference key="NSSuperview" ref="841205379"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="819189090"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="227866542">
@@ -760,6 +782,7 @@
</set>
<string key="NSFrame">{{199, 0}, {15, 23}}</string>
<reference key="NSSuperview" ref="841205379"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="630926746"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="972774468">
@@ -782,6 +805,7 @@
<int key="NSvFlags">260</int>
<string key="NSFrame">{{-1, -1}, {32, 25}}</string>
<reference key="NSSuperview" ref="841205379"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="220052404"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="616383319">
@@ -808,6 +832,7 @@
<int key="NSvFlags">260</int>
<string key="NSFrame">{{92, -1}, {32, 25}}</string>
<reference key="NSSuperview" ref="841205379"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="678302833"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="204889426">
@@ -838,6 +863,7 @@
<int key="NSvFlags">260</int>
<string key="NSFrame">{{29, 0}, {36, 23}}</string>
<reference key="NSSuperview" ref="841205379"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="466961207"/>
<string key="NSHuggingPriority">{250, 250}</string>
<bool key="NSEnabled">YES</bool>
@@ -1064,7 +1090,6 @@
</object>
</array>
</object>
- <int key="NSSelectedIndex">-1</int>
<bool key="NSPullDown">YES</bool>
<int key="NSPreferredEdge">1</int>
<bool key="NSUsesItemFromMenu">YES</bool>
@@ -1077,6 +1102,7 @@
<int key="NSvFlags">260</int>
<string key="NSFrame">{{61, -1}, {32, 25}}</string>
<reference key="NSSuperview" ref="841205379"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="559497073"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="45851570">
@@ -1101,6 +1127,7 @@
</array>
<string key="NSFrameSize">{214, 549}</string>
<reference key="NSSuperview" ref="310278688"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="99671504"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
</object>
@@ -1111,14 +1138,15 @@
<object class="NSTabView" id="280187924">
<reference key="NSNextResponder" ref="630926746"/>
<int key="NSvFlags">274</int>
- <string key="NSFrame">{{-6, -10}, {740, 564}}</string>
+ <string key="NSFrame">{{-7, -10}, {741, 564}}</string>
<reference key="NSSuperview" ref="630926746"/>
- <reference key="NSNextKeyView" ref="950160581"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="113573997"/>
<array class="NSMutableArray" key="NSTabViewItems">
<object class="NSTabViewItem" id="449203689">
<string key="NSIdentifier">source</string>
<object class="NSView" key="NSView" id="113573997">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder" ref="280187924"/>
<int key="NSvFlags">274</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSSplitView" id="204281121">
@@ -1134,6 +1162,7 @@
<int key="NSvFlags">-2147483356</int>
<string key="NSFrame">{{124, -1}, {33, 25}}</string>
<reference key="NSSuperview" ref="981492694"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="202426453"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="605356234">
@@ -1166,8 +1195,9 @@
<object class="NSTableView" id="977333304">
<reference key="NSNextResponder" ref="971612446"/>
<int key="NSvFlags">4352</int>
- <string key="NSFrameSize">{693, 288}</string>
+ <string key="NSFrameSize">{694, 288}</string>
<reference key="NSSuperview" ref="971612446"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1057730379"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
@@ -1175,8 +1205,9 @@
<object class="NSTableHeaderView" key="NSHeaderView" id="594274975">
<reference key="NSNextResponder" ref="427920699"/>
<int key="NSvFlags">256</int>
- <string key="NSFrameSize">{693, 17}</string>
+ <string key="NSFrameSize">{694, 17}</string>
<reference key="NSSuperview" ref="427920699"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="971612446"/>
<reference key="NSTableView" ref="977333304"/>
</object>
@@ -1185,6 +1216,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrameSize">{15, 20}</string>
<reference key="NSSuperview" ref="617988703"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="427920699"/>
</object>
<array class="NSMutableArray" key="NSTableColumns">
@@ -1748,8 +1780,9 @@
<int key="NSTableViewGroupRowStyle">1</int>
</object>
</array>
- <string key="NSFrame">{{1, 17}, {693, 288}}</string>
+ <string key="NSFrame">{{1, 17}, {694, 288}}</string>
<reference key="NSSuperview" ref="617988703"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="977333304"/>
<reference key="NSDocView" ref="977333304"/>
<reference key="NSBGColor" ref="866033095"/>
@@ -1761,8 +1794,9 @@
<array class="NSMutableArray" key="NSSubviews">
<reference ref="594274975"/>
</array>
- <string key="NSFrame">{{1, 0}, {693, 17}}</string>
+ <string key="NSFrame">{{1, 0}, {694, 17}}</string>
<reference key="NSSuperview" ref="617988703"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="594274975"/>
<reference key="NSDocView" ref="594274975"/>
</object>
@@ -1771,16 +1805,19 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{674, 17}, {15, 274}}</string>
<reference key="NSSuperview" ref="617988703"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="400841207"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<reference key="NSTarget" ref="617988703"/>
<string key="NSAction">_doScroller:</string>
+ <double key="NSPercent">0.94791666666666663</double>
</object>
<object class="NSScroller" id="1057730379">
<reference key="NSNextResponder" ref="617988703"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{1, 289}, {689, 16}}</string>
<reference key="NSSuperview" ref="617988703"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="346829497"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">1</int>
@@ -1789,8 +1826,9 @@
</object>
<reference ref="829483012"/>
</array>
- <string key="NSFrame">{{-1, 22}, {695, 306}}</string>
+ <string key="NSFrame">{{-1, 22}, {696, 306}}</string>
<reference key="NSSuperview" ref="981492694"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="829483012"/>
<int key="NSsFlags">133682</int>
<reference key="NSVScroller" ref="346829497"/>
@@ -1808,6 +1846,7 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{-1, -1}, {32, 25}}</string>
<reference key="NSSuperview" ref="981492694"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="997907892"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="51440813">
@@ -1831,6 +1870,7 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{93, -1}, {32, 25}}</string>
<reference key="NSSuperview" ref="981492694"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1070311218"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="815322347">
@@ -1854,6 +1894,7 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{30, -1}, {32, 25}}</string>
<reference key="NSSuperview" ref="981492694"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="927360703"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="822972303">
@@ -1880,6 +1921,7 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{61, -1}, {32, 25}}</string>
<reference key="NSSuperview" ref="981492694"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1031766954"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="545699528">
@@ -1904,8 +1946,9 @@
<object class="NSPopUpButton" id="1005939238">
<reference key="NSNextResponder" ref="981492694"/>
<int key="NSvFlags">289</int>
- <string key="NSFrame">{{661.5, 0}, {36, 23}}</string>
+ <string key="NSFrame">{{663, 0}, {36, 23}}</string>
<reference key="NSSuperview" ref="981492694"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="162304252"/>
<string key="NSHuggingPriority">{250, 250}</string>
<bool key="NSEnabled">YES</bool>
@@ -2023,8 +2066,9 @@
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
- <string key="NSFrame">{{125, 0}, {506, 23}}</string>
+ <string key="NSFrame">{{125, 0}, {507, 23}}</string>
<reference key="NSSuperview" ref="981492694"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="978103818"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="231240181">
@@ -2042,8 +2086,9 @@
<object class="NSButton" id="978103818">
<reference key="NSNextResponder" ref="981492694"/>
<int key="NSvFlags">289</int>
- <string key="NSFrame">{{631, -1}, {32, 25}}</string>
+ <string key="NSFrame">{{632, -1}, {32, 25}}</string>
<reference key="NSSuperview" ref="981492694"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1005939238"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="884552548">
@@ -2066,8 +2111,9 @@
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
</array>
- <string key="NSFrameSize">{694, 328}</string>
+ <string key="NSFrameSize">{695, 328}</string>
<reference key="NSSuperview" ref="204281121"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="617988703"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
<string key="NSClassName">NSView</string>
@@ -2085,6 +2131,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{3, 3}, {58, 14}}</string>
<reference key="NSSuperview" ref="955470299"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="362266093"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="962970972">
@@ -2092,7 +2139,7 @@
<int key="NSCellFlags2">272761856</int>
<string key="NSContents">INDEXES</string>
<object class="NSFont" key="NSSupport" id="27">
- <string key="NSName">.LucidaGrandeUI-Bold</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3357</int>
</object>
@@ -2120,8 +2167,9 @@
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
- <string key="NSFrame">{{677, 3}, {10, 13}}</string>
+ <string key="NSFrame">{{678, 3}, {10, 13}}</string>
<reference key="NSSuperview" ref="955470299"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="601320525"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="632600614">
@@ -2140,8 +2188,9 @@
<bool key="NSEditable">YES</bool>
</object>
</array>
- <string key="NSFrame">{{0, 181}, {694, 20}}</string>
+ <string key="NSFrame">{{0, 181}, {695, 20}}</string>
<reference key="NSSuperview" ref="162304252"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="82207312"/>
</object>
<object class="NSScrollView" id="601320525">
@@ -2155,8 +2204,9 @@
<object class="NSTableView" id="71493486">
<reference key="NSNextResponder" ref="472300297"/>
<int key="NSvFlags">4352</int>
- <string key="NSFrameSize">{693, 141}</string>
+ <string key="NSFrameSize">{694, 141}</string>
<reference key="NSSuperview" ref="472300297"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="673560219"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
@@ -2164,8 +2214,9 @@
<object class="NSTableHeaderView" key="NSHeaderView" id="262774116">
<reference key="NSNextResponder" ref="982675320"/>
<int key="NSvFlags">256</int>
- <string key="NSFrameSize">{693, 17}</string>
+ <string key="NSFrameSize">{694, 17}</string>
<reference key="NSSuperview" ref="982675320"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="472300297"/>
<reference key="NSTableView" ref="71493486"/>
</object>
@@ -2174,12 +2225,13 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrameSize">{15, 20}</string>
<reference key="NSSuperview" ref="601320525"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="982675320"/>
</object>
<array class="NSMutableArray" key="NSTableColumns">
<object class="NSTableColumn" id="836088148">
<string key="NSIdentifier">Non_unique</string>
- <double key="NSWidth">79</double>
+ <double key="NSWidth">80</double>
<double key="NSMinWidth">40</double>
<double key="NSMaxWidth">1000</double>
<object class="NSTableHeaderCell" key="NSHeaderCell">
@@ -2434,8 +2486,9 @@
<int key="NSTableViewGroupRowStyle">1</int>
</object>
</array>
- <string key="NSFrame">{{1, 17}, {693, 141}}</string>
+ <string key="NSFrame">{{1, 17}, {694, 141}}</string>
<reference key="NSSuperview" ref="601320525"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="71493486"/>
<reference key="NSDocView" ref="71493486"/>
<reference key="NSBGColor" ref="866033095"/>
@@ -2447,8 +2500,9 @@
<array class="NSMutableArray" key="NSSubviews">
<reference ref="262774116"/>
</array>
- <string key="NSFrame">{{1, 0}, {693, 17}}</string>
+ <string key="NSFrame">{{1, 0}, {694, 17}}</string>
<reference key="NSSuperview" ref="601320525"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="262774116"/>
<reference key="NSDocView" ref="262774116"/>
</object>
@@ -2457,6 +2511,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{611, 17}, {15, 126}}</string>
<reference key="NSSuperview" ref="601320525"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="230182748"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<reference key="NSTarget" ref="601320525"/>
@@ -2467,6 +2522,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{1, 143}, {610, 15}}</string>
<reference key="NSSuperview" ref="601320525"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="389959795"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">1</int>
@@ -2475,8 +2531,9 @@
</object>
<reference ref="542930762"/>
</array>
- <string key="NSFrame">{{-1, 22}, {695, 159}}</string>
+ <string key="NSFrame">{{-1, 22}, {696, 159}}</string>
<reference key="NSSuperview" ref="162304252"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="542930762"/>
<int key="NSsFlags">133682</int>
<reference key="NSVScroller" ref="673560219"/>
@@ -2494,6 +2551,7 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{-1, -1}, {32, 25}}</string>
<reference key="NSSuperview" ref="162304252"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="671174106"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="144441460">
@@ -2517,6 +2575,7 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{61, -1}, {32, 25}}</string>
<reference key="NSSuperview" ref="162304252"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1007102250"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="432985613">
@@ -2540,6 +2599,7 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{30, -1}, {32, 25}}</string>
<reference key="NSSuperview" ref="162304252"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="385306370"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="1016102946">
@@ -2569,8 +2629,9 @@
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
- <string key="NSFrame">{{93, 0}, {601, 23}}</string>
+ <string key="NSFrame">{{93, 0}, {602, 23}}</string>
<reference key="NSSuperview" ref="162304252"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="280187924"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="153461887">
@@ -2586,20 +2647,24 @@
<bool key="NSEditable">YES</bool>
</object>
</array>
- <string key="NSFrame">{{0, 329}, {694, 201}}</string>
+ <string key="NSFrame">{{0, 329}, {695, 201}}</string>
<reference key="NSSuperview" ref="204281121"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="955470299"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
<string key="NSClassName">NSView</string>
</object>
</array>
- <string key="NSFrame">{{7, 10}, {694, 530}}</string>
+ <string key="NSFrame">{{7, 10}, {695, 530}}</string>
<reference key="NSSuperview" ref="113573997"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="981492694"/>
<int key="NSDividerStyle">2</int>
</object>
</array>
- <string key="NSFrame">{{10, 7}, {705, 544}}</string>
+ <string key="NSFrame">{{10, 7}, {706, 544}}</string>
+ <reference key="NSSuperview" ref="280187924"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="204281121"/>
</object>
<string key="NSLabel">Structure</string>
@@ -2617,7 +2682,7 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{6, 9}, {32, 25}}</string>
<reference key="NSSuperview" ref="100283475"/>
- <reference key="NSNextKeyView" ref="786146577"/>
+ <reference key="NSNextKeyView" ref="947593509"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="686397415">
<int key="NSCellFlags">603979776</int>
@@ -2715,7 +2780,7 @@
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
- <string key="NSFrame">{{163, 10}, {538, 23}}</string>
+ <string key="NSFrame">{{163, 10}, {539, 23}}</string>
<reference key="NSSuperview" ref="100283475"/>
<reference key="NSNextKeyView" ref="72511287"/>
<bool key="NSEnabled">YES</bool>
@@ -2764,7 +2829,7 @@
<object class="NSTextField" id="72511287">
<reference key="NSNextResponder" ref="100283475"/>
<int key="NSvFlags">290</int>
- <string key="NSFrame">{{166, 6}, {420, 22}}</string>
+ <string key="NSFrame">{{166, 6}, {421, 22}}</string>
<reference key="NSSuperview" ref="100283475"/>
<reference key="NSNextKeyView" ref="1065343609"/>
<bool key="NSEnabled">YES</bool>
@@ -2783,7 +2848,7 @@
<object class="NSButton" id="622694405">
<reference key="NSNextResponder" ref="100283475"/>
<int key="NSvFlags">289</int>
- <string key="NSFrame">{{653, 9}, {32, 25}}</string>
+ <string key="NSFrame">{{654, 9}, {32, 25}}</string>
<reference key="NSSuperview" ref="100283475"/>
<reference key="NSNextKeyView" ref="280187924"/>
<bool key="NSEnabled">YES</bool>
@@ -2809,7 +2874,7 @@
<object class="NSButton" id="1065343609">
<reference key="NSNextResponder" ref="100283475"/>
<int key="NSvFlags">289</int>
- <string key="NSFrame">{{591, 9}, {32, 25}}</string>
+ <string key="NSFrame">{{592, 9}, {32, 25}}</string>
<reference key="NSSuperview" ref="100283475"/>
<reference key="NSNextKeyView" ref="957548798"/>
<bool key="NSEnabled">YES</bool>
@@ -2835,7 +2900,7 @@
<object class="NSButton" id="957548798">
<reference key="NSNextResponder" ref="100283475"/>
<int key="NSvFlags">289</int>
- <string key="NSFrame">{{622, 9}, {32, 25}}</string>
+ <string key="NSFrame">{{623, 9}, {32, 25}}</string>
<reference key="NSSuperview" ref="100283475"/>
<reference key="NSNextKeyView" ref="622694405"/>
<bool key="NSEnabled">YES</bool>
@@ -2869,7 +2934,7 @@
<object class="NSButton" id="815051235">
<reference key="NSNextResponder" ref="134459988"/>
<int key="NSvFlags">289</int>
- <string key="NSFrame">{{614, 1.5}, {54, 19}}</string>
+ <string key="NSFrame">{{615, 2}, {54, 19}}</string>
<reference key="NSSuperview" ref="134459988"/>
<reference key="NSNextKeyView" ref="527054400"/>
<string key="NSHuggingPriority">{250, 750}</string>
@@ -2905,7 +2970,7 @@
<object class="_NSRuleEditorViewSliceHolder" id="617505990">
<reference key="NSNextResponder" ref="897255549"/>
<int key="NSvFlags">274</int>
- <string key="NSFrameSize">{606, 25.5}</string>
+ <string key="NSFrameSize">{607, 27}</string>
<reference key="NSSuperview" ref="897255549"/>
<reference key="NSNextKeyView" ref="815051235"/>
</object>
@@ -2913,7 +2978,7 @@
<set class="NSMutableSet" key="NSDragTypes">
<string>NSRuleEditorItemPBoardType</string>
</set>
- <string key="NSFrameSize">{606, 25.5}</string>
+ <string key="NSFrameSize">{607, 27}</string>
<reference key="NSSuperview" ref="889317496"/>
<reference key="NSNextKeyView" ref="497073944"/>
<string key="NSHuggingPriority">{250, 250}</string>
@@ -2939,7 +3004,7 @@
<array class="NSMutableArray" key="NSRuleEditorSlices"/>
</object>
</array>
- <string key="NSFrameSize">{606, 25.5}</string>
+ <string key="NSFrameSize">{607, 27}</string>
<reference key="NSSuperview" ref="16186465"/>
<reference key="NSNextKeyView" ref="897255549"/>
<reference key="NSDocView" ref="897255549"/>
@@ -2970,7 +3035,7 @@
<double key="NSCurValue">1</double>
</object>
</array>
- <string key="NSFrame">{{0, -0.5}, {606, 25.5}}</string>
+ <string key="NSFrame">{{0, -1}, {607, 27}}</string>
<reference key="NSSuperview" ref="134459988"/>
<reference key="NSNextKeyView" ref="889317496"/>
<int key="NSsFlags">133632</int>
@@ -2982,7 +3047,7 @@
<double key="NSMagnification">1</double>
</object>
</array>
- <string key="NSFrameSize">{695, 24.5}</string>
+ <string key="NSFrameSize">{696, 25}</string>
<reference key="NSSuperview" ref="786146577"/>
<reference key="NSNextKeyView" ref="16186465"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
@@ -3003,24 +3068,26 @@
<object class="NSTableView" id="589548204">
<reference key="NSNextResponder" ref="359368454"/>
<int key="NSvFlags">4352</int>
- <string key="NSFrameSize">{693, 432.5}</string>
+ <string key="NSFrameSize">{694, 432}</string>
<reference key="NSSuperview" ref="359368454"/>
- <reference key="NSNextKeyView" ref="916396282"/>
+ <reference key="NSNextKeyView" ref="142944018"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
<object class="NSTableHeaderView" key="NSHeaderView" id="357277343">
<reference key="NSNextResponder" ref="916396282"/>
<int key="NSvFlags">256</int>
- <string key="NSFrameSize">{693, 17}</string>
+ <string key="NSFrameSize">{694, 17}</string>
<reference key="NSSuperview" ref="916396282"/>
<reference key="NSNextKeyView" ref="359368454"/>
<reference key="NSTableView" ref="589548204"/>
</object>
- <object class="_NSCornerView" key="NSCornerView">
- <nil key="NSNextResponder"/>
- <int key="NSvFlags">256</int>
+ <object class="_NSCornerView" key="NSCornerView" id="142944018">
+ <reference key="NSNextResponder" ref="526437487"/>
+ <int key="NSvFlags">-2147483392</int>
<string key="NSFrameSize">{15, 20}</string>
+ <reference key="NSSuperview" ref="526437487"/>
+ <reference key="NSNextKeyView" ref="916396282"/>
</object>
<array class="NSMutableArray" key="NSTableColumns">
<object class="NSTableColumn" id="564631085">
@@ -3069,7 +3136,7 @@
<int key="NSTableViewGroupRowStyle">1</int>
</object>
</array>
- <string key="NSFrame">{{1, 17}, {693, 432.5}}</string>
+ <string key="NSFrame">{{1, 17}, {694, 432}}</string>
<reference key="NSSuperview" ref="526437487"/>
<reference key="NSNextKeyView" ref="589548204"/>
<reference key="NSDocView" ref="589548204"/>
@@ -3082,35 +3149,36 @@
<array class="NSMutableArray" key="NSSubviews">
<reference ref="357277343"/>
</array>
- <string key="NSFrame">{{1, 0}, {693, 17}}</string>
+ <string key="NSFrame">{{1, 0}, {694, 17}}</string>
<reference key="NSSuperview" ref="526437487"/>
<reference key="NSNextKeyView" ref="357277343"/>
<reference key="NSDocView" ref="357277343"/>
</object>
- <object class="NSScroller" id="759845062">
+ <object class="NSScroller" id="849754709">
<reference key="NSNextResponder" ref="526437487"/>
<int key="NSvFlags">-2147483392</int>
- <string key="NSFrame">{{1, 458}, {429, 15}}</string>
+ <string key="NSFrame">{{680, 17}, {15, 450}}</string>
<reference key="NSSuperview" ref="526437487"/>
- <reference key="NSNextKeyView" ref="849754709"/>
+ <reference key="NSNextKeyView" ref="115869327"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
- <int key="NSsFlags">1</int>
<reference key="NSTarget" ref="526437487"/>
<string key="NSAction">_doScroller:</string>
- <double key="NSCurValue">0.021626397967338562</double>
</object>
- <object class="NSScroller" id="849754709">
+ <object class="NSScroller" id="759845062">
<reference key="NSNextResponder" ref="526437487"/>
<int key="NSvFlags">-2147483392</int>
- <string key="NSFrame">{{680, 17}, {15, 450}}</string>
+ <string key="NSFrame">{{1, 458}, {429, 15}}</string>
<reference key="NSSuperview" ref="526437487"/>
- <reference key="NSNextKeyView" ref="947593509"/>
+ <reference key="NSNextKeyView" ref="849754709"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <int key="NSsFlags">1</int>
<reference key="NSTarget" ref="526437487"/>
<string key="NSAction">_doScroller:</string>
+ <double key="NSCurValue">0.021626397967338562</double>
</object>
+ <reference ref="142944018"/>
</array>
- <string key="NSFrame">{{-1, -1.5}, {695, 450.5}}</string>
+ <string key="NSFrame">{{-1, -2}, {696, 450}}</string>
<reference key="NSSuperview" ref="527054400"/>
<reference key="NSNextKeyView" ref="359368454"/>
<int key="NSsFlags">133682</int>
@@ -3134,7 +3202,7 @@
<object class="NSPopUpButton" id="687258326">
<reference key="NSNextResponder" ref="548981602"/>
<int key="NSvFlags">265</int>
- <string key="NSFrame">{{205.5, 0}, {105, 25}}</string>
+ <string key="NSFrame">{{206, 0}, {105, 25}}</string>
<reference key="NSSuperview" ref="548981602"/>
<reference key="NSNextKeyView" ref="56200808"/>
<bool key="NSEnabled">YES</bool>
@@ -3179,7 +3247,7 @@
<object class="NSPopUpButton" id="805164801">
<reference key="NSNextResponder" ref="548981602"/>
<int key="NSvFlags">266</int>
- <string key="NSFrame">{{80, 3}, {118.5, 20}}</string>
+ <string key="NSFrame">{{80, 3}, {119, 20}}</string>
<reference key="NSSuperview" ref="548981602"/>
<reference key="NSNextKeyView" ref="687258326"/>
<bool key="NSEnabled">YES</bool>
@@ -3241,7 +3309,7 @@
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrameSize">{313, 27}</string>
+ <string key="NSFrameSize">{314, 27}</string>
<reference key="NSSuperview" ref="974853574"/>
<reference key="NSNextKeyView" ref="953920141"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
@@ -3254,7 +3322,7 @@
<object class="NSSearchField" id="426625670">
<reference key="NSNextResponder" ref="56200808"/>
<int key="NSvFlags">266</int>
- <string key="NSFrame">{{5, 4}, {276.5, 19}}</string>
+ <string key="NSFrame">{{5, 4}, {276, 19}}</string>
<reference key="NSSuperview" ref="56200808"/>
<reference key="NSNextKeyView" ref="182013136"/>
<bool key="NSViewIsLayerTreeHost">YES</bool>
@@ -3310,7 +3378,7 @@
<object class="NSTextField" id="182013136">
<reference key="NSNextResponder" ref="56200808"/>
<int key="NSvFlags">-2147483379</int>
- <string key="NSFrame">{{127.5, 6}, {28, 14}}</string>
+ <string key="NSFrame">{{128, 6}, {28, 14}}</string>
<reference key="NSSuperview" ref="56200808"/>
<reference key="NSNextKeyView" ref="316472124"/>
<bool key="NSEnabled">YES</bool>
@@ -3383,7 +3451,7 @@
<object class="NSSearchField" id="316472124">
<reference key="NSNextResponder" ref="56200808"/>
<int key="NSvFlags">-2147483381</int>
- <string key="NSFrame">{{168.5, 4}, {109.99999995072373, 19}}</string>
+ <string key="NSFrame">{{168, 4}, {110, 19}}</string>
<reference key="NSSuperview" ref="56200808"/>
<reference key="NSNextKeyView" ref="332657589"/>
<bool key="NSViewIsLayerTreeHost">YES</bool>
@@ -3437,14 +3505,14 @@
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrame">{{322, 0}, {283, 27}}</string>
+ <string key="NSFrame">{{323, 0}, {283, 27}}</string>
<reference key="NSSuperview" ref="974853574"/>
<reference key="NSNextKeyView" ref="953677073"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
<string key="NSClassName">NSView</string>
</object>
</array>
- <string key="NSFrame">{{-0.5, 452}, {605, 27}}</string>
+ <string key="NSFrame">{{-1, 451}, {606, 27}}</string>
<reference key="NSSuperview" ref="527054400"/>
<reference key="NSNextKeyView" ref="548981602"/>
<bool key="NSIsVertical">YES</bool>
@@ -3452,7 +3520,7 @@
<object class="NSButton" id="332657589">
<reference key="NSNextResponder" ref="527054400"/>
<int key="NSvFlags">265</int>
- <string key="NSFrame">{{613, 456}, {54, 19}}</string>
+ <string key="NSFrame">{{614, 455}, {54, 19}}</string>
<reference key="NSSuperview" ref="527054400"/>
<reference key="NSNextKeyView" ref="402546253"/>
<string key="NSHuggingPriority">{250, 750}</string>
@@ -3476,7 +3544,7 @@
<object class="NSProgressIndicator" id="402546253">
<reference key="NSNextResponder" ref="527054400"/>
<int key="NSvFlags">265</int>
- <string key="NSFrame">{{673, 458.5}, {16, 16}}</string>
+ <string key="NSFrame">{{674, 458}, {16, 16}}</string>
<reference key="NSSuperview" ref="527054400"/>
<reference key="NSNextKeyView" ref="526437487"/>
<string key="NSHuggingPriority">{750, 750}</string>
@@ -3484,22 +3552,22 @@
<double key="NSMaxValue">100</double>
</object>
</array>
- <string key="NSFrame">{{0, 25.5}, {695, 479.5}}</string>
+ <string key="NSFrame">{{0, 26}, {696, 479}}</string>
<reference key="NSSuperview" ref="786146577"/>
<reference key="NSNextKeyView" ref="974853574"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
<string key="NSClassName">NSView</string>
</object>
</array>
- <string key="NSFrame">{{6.5, 33.5}, {695, 505}}</string>
+ <string key="NSFrame">{{6, 33}, {696, 505}}</string>
<reference key="NSSuperview" ref="100283475"/>
<reference key="NSNextKeyView" ref="134459988"/>
<int key="NSDividerStyle">2</int>
<string key="NSAutosaveName"/>
</object>
</array>
- <string key="NSFrame">{{10, 7}, {705, 544}}</string>
- <reference key="NSNextKeyView" ref="115869327"/>
+ <string key="NSFrame">{{10, 7}, {706, 544}}</string>
+ <reference key="NSNextKeyView" ref="786146577"/>
</object>
<string key="NSLabel">Content</string>
<reference key="NSColor" ref="647098198"/>
@@ -3508,7 +3576,7 @@
<object class="NSTabViewItem" id="390082212">
<string key="NSIdentifier">customQuery</string>
<object class="NSView" key="NSView" id="950160581">
- <reference key="NSNextResponder" ref="280187924"/>
+ <nil key="NSNextResponder"/>
<int key="NSvFlags">274</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSImageView" id="582682244">
@@ -3522,7 +3590,7 @@
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
- <string key="NSFrame">{{6, 10}, {695, 23}}</string>
+ <string key="NSFrame">{{6, 10}, {696, 23}}</string>
<reference key="NSSuperview" ref="950160581"/>
<reference key="NSNextKeyView" ref="1057125714"/>
<bool key="NSEnabled">YES</bool>
@@ -3698,9 +3766,9 @@
<object class="NSTextView" id="995019363">
<reference key="NSNextResponder" ref="814502469"/>
<int key="NSvFlags">6418</int>
- <string key="NSFrameSize">{693, 141}</string>
+ <string key="NSFrameSize">{694, 141}</string>
<reference key="NSSuperview" ref="814502469"/>
- <reference key="NSNextKeyView" ref="1058351455"/>
+ <reference key="NSNextKeyView" ref="103288676"/>
<object class="NSTextContainer" key="NSTextContainer" id="104432314">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
@@ -3716,7 +3784,7 @@
<nil key="NSDelegate"/>
</object>
<reference key="NSTextView" ref="995019363"/>
- <double key="NSWidth">693</double>
+ <double key="NSWidth">694</double>
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
@@ -3756,13 +3824,13 @@
<nil key="NSDelegate"/>
</object>
</array>
- <string key="NSFrame">{{1, 1}, {693, 141}}</string>
+ <string key="NSFrame">{{1, 1}, {694, 141}}</string>
<reference key="NSSuperview" ref="804607013"/>
<reference key="NSNextKeyView" ref="995019363"/>
<reference key="NSDocView" ref="995019363"/>
<reference key="NSBGColor" ref="457906098"/>
<object class="NSCursor" key="NSCursor" id="546590681">
- <string key="NSHotSpot">{5, 5}</string>
+ <string key="NSHotSpot">{1, -1}</string>
<int key="NSCursorType">0</int>
</object>
<int key="NScvFlags">4</int>
@@ -3790,9 +3858,9 @@
<string key="NSAction">_doScroller:</string>
</object>
</array>
- <string key="NSFrame">{{0, 1}, {695, 143}}</string>
+ <string key="NSFrame">{{0, 1}, {696, 143}}</string>
<reference key="NSSuperview" ref="154150014"/>
- <reference key="NSNextKeyView" ref="103288676"/>
+ <reference key="NSNextKeyView" ref="814502469"/>
<int key="NSsFlags">133650</int>
<reference key="NSVScroller" ref="1058351455"/>
<reference key="NSHScroller" ref="103288676"/>
@@ -3802,7 +3870,7 @@
<double key="NSMagnification">1</double>
</object>
</array>
- <string key="NSFrameSize">{695, 143}</string>
+ <string key="NSFrameSize">{696, 143}</string>
<reference key="NSSuperview" ref="9338668"/>
<reference key="NSNextKeyView" ref="804607013"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
@@ -3815,7 +3883,7 @@
<object class="NSPopUpButton" id="822332749">
<reference key="NSNextResponder" ref="1045056406"/>
<int key="NSvFlags">265</int>
- <string key="NSFrame">{{507, 214}, {180, 22}}</string>
+ <string key="NSFrame">{{508, 214}, {180, 22}}</string>
<reference key="NSSuperview" ref="1045056406"/>
<reference key="NSNextKeyView" ref="752414392"/>
<bool key="NSEnabled">YES</bool>
@@ -3916,9 +3984,9 @@
<object class="NSTableView" id="628833149">
<reference key="NSNextResponder" ref="620500575"/>
<int key="NSvFlags">4352</int>
- <string key="NSFrameSize">{694, 182}</string>
+ <string key="NSFrameSize">{694, 197}</string>
<reference key="NSSuperview" ref="620500575"/>
- <reference key="NSNextKeyView" ref="1031686395"/>
+ <reference key="NSNextKeyView" ref="621197929"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
@@ -3983,8 +4051,7 @@
<int key="NSTableViewGroupRowStyle">1</int>
</object>
</array>
- <string key="NSFrame">{{1, 17}, {693, 182}}</string>
- <string key="NSBounds">{{0.5, 0}, {693, 182}}</string>
+ <string key="NSFrame">{{1, 17}, {694, 197}}</string>
<reference key="NSSuperview" ref="752414392"/>
<reference key="NSNextKeyView" ref="628833149"/>
<reference key="NSDocView" ref="628833149"/>
@@ -3997,8 +4064,7 @@
<array class="NSMutableArray" key="NSSubviews">
<reference ref="603882466"/>
</array>
- <string key="NSFrame">{{1, 0}, {693, 17}}</string>
- <string key="NSBounds">{{1, 0}, {693, 17}}</string>
+ <string key="NSFrame">{{1, 0}, {694, 17}}</string>
<reference key="NSSuperview" ref="752414392"/>
<reference key="NSNextKeyView" ref="603882466"/>
<reference key="NSDocView" ref="603882466"/>
@@ -4016,29 +4082,27 @@
</object>
<object class="NSScroller" id="1031686395">
<reference key="NSNextResponder" ref="752414392"/>
- <int key="NSvFlags">256</int>
+ <int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{1, 199}, {693, 15}}</string>
<reference key="NSSuperview" ref="752414392"/>
<reference key="NSNextKeyView" ref="556042083"/>
- <bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">1</int>
<reference key="NSTarget" ref="752414392"/>
<string key="NSAction">_doScroller:</string>
- <double key="NSCurValue">0.5</double>
- <double key="NSPercent">0.99855907780979825</double>
+ <double key="NSCurValue">1</double>
+ <double key="NSPercent">0.99927901946647435</double>
</object>
<reference ref="621197929"/>
</array>
- <string key="NSFrame">{{0, -1}, {695, 215}}</string>
+ <string key="NSFrame">{{0, -1}, {696, 215}}</string>
<reference key="NSSuperview" ref="1045056406"/>
- <reference key="NSNextKeyView" ref="621197929"/>
- <int key="NSsFlags">133810</int>
+ <reference key="NSNextKeyView" ref="620500575"/>
+ <int key="NSsFlags">133682</int>
<reference key="NSVScroller" ref="556042083"/>
<reference key="NSHScroller" ref="1031686395"/>
<reference key="NSContentView" ref="620500575"/>
<reference key="NSHeaderClipView" ref="730166708"/>
- <reference key="NSCornerView" ref="621197929"/>
<bytes key="NSScrollAmts">QSAAAEEgAABBkAAAQZAAAA</bytes>
<double key="NSMinMagnification">0.25</double>
<double key="NSMaxMagnification">4</double>
@@ -4070,14 +4134,6 @@
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
- <object class="NSCustomResource" key="NSOnImage">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">729BAD60-B632-470B-BA82-856F39114541</string>
- </object>
- <object class="NSCustomResource" key="NSMixedImage">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">73B69558-349D-4439-B164-B5723719CCFA</string>
- </object>
<string key="NSAction">_popUpItemAction:</string>
<reference key="NSTarget" ref="203451275"/>
</object>
@@ -4191,14 +4247,6 @@
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
- <object class="NSCustomResource" key="NSOnImage">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">660263D3-793C-406A-89B8-EC5E0D096CD0</string>
- </object>
- <object class="NSCustomResource" key="NSMixedImage">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">F1B8C31D-945B-4266-A204-4DAE195D61AE</string>
- </object>
<string key="NSAction">_popUpItemAction:</string>
<reference key="NSTarget" ref="564853010"/>
</object>
@@ -4314,14 +4362,6 @@
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSImage" ref="158871648"/>
- <object class="NSCustomResource" key="NSOnImage">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">8250562F-864D-4E5D-880D-0810E6CC5D58</string>
- </object>
- <object class="NSCustomResource" key="NSMixedImage">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">F6692946-0767-44FB-B4D4-572DCEEFE404</string>
- </object>
<string key="NSAction">_popUpItemAction:</string>
<reference key="NSTarget" ref="364838886"/>
</object>
@@ -4608,7 +4648,7 @@
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
- <string key="NSFrame">{{26, 214}, {669, 23}}</string>
+ <string key="NSFrame">{{26, 214}, {670, 23}}</string>
<reference key="NSSuperview" ref="1045056406"/>
<reference key="NSNextKeyView" ref="1011012479"/>
<bool key="NSEnabled">YES</bool>
@@ -4625,19 +4665,19 @@
<bool key="NSEditable">YES</bool>
</object>
</array>
- <string key="NSFrame">{{0, 152}, {695, 237}}</string>
+ <string key="NSFrame">{{0, 152}, {696, 237}}</string>
<reference key="NSSuperview" ref="9338668"/>
<reference key="NSNextKeyView" ref="302688264"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
<string key="NSClassName">NSView</string>
</object>
</array>
- <string key="NSFrameSize">{695, 389}</string>
+ <string key="NSFrameSize">{696, 389}</string>
<reference key="NSSuperview" ref="446923801"/>
<reference key="NSNextKeyView" ref="154150014"/>
</object>
</array>
- <string key="NSFrameSize">{695, 391}</string>
+ <string key="NSFrameSize">{696, 391}</string>
<reference key="NSSuperview" ref="77719398"/>
<reference key="NSNextKeyView" ref="9338668"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
@@ -4676,9 +4716,9 @@
<object class="NSTextView" id="767200221">
<reference key="NSNextResponder" ref="724030266"/>
<int key="NSvFlags">2322</int>
- <string key="NSFrameSize">{671, 72}</string>
+ <string key="NSFrameSize">{672, 72}</string>
<reference key="NSSuperview" ref="724030266"/>
- <reference key="NSNextKeyView" ref="622087604"/>
+ <reference key="NSNextKeyView" ref="865629592"/>
<object class="NSTextContainer" key="NSTextContainer" id="545876225">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
@@ -4694,7 +4734,7 @@
<nil key="NSDelegate"/>
</object>
<reference key="NSTextView" ref="767200221"/>
- <double key="NSWidth">671</double>
+ <double key="NSWidth">672</double>
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
@@ -4721,7 +4761,7 @@
<nil key="NSDelegate"/>
</object>
</array>
- <string key="NSFrameSize">{671, 72}</string>
+ <string key="NSFrameSize">{672, 72}</string>
<reference key="NSSuperview" ref="663912545"/>
<reference key="NSNextKeyView" ref="767200221"/>
<reference key="NSDocView" ref="767200221"/>
@@ -4752,9 +4792,9 @@
<string key="NSAction">_doScroller:</string>
</object>
</array>
- <string key="NSFrame">{{12, 12}, {671, 72}}</string>
+ <string key="NSFrame">{{12, 12}, {672, 72}}</string>
<reference key="NSSuperview" ref="105597532"/>
- <reference key="NSNextKeyView" ref="865629592"/>
+ <reference key="NSNextKeyView" ref="724030266"/>
<int key="NSsFlags">133648</int>
<reference key="NSVScroller" ref="622087604"/>
<reference key="NSHScroller" ref="865629592"/>
@@ -4764,13 +4804,13 @@
<double key="NSMagnification">1</double>
</object>
</array>
- <string key="NSFrame">{{0, 392}, {695, 117}}</string>
+ <string key="NSFrame">{{0, 392}, {696, 117}}</string>
<reference key="NSSuperview" ref="77719398"/>
<reference key="NSNextKeyView" ref="561268593"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
</object>
</array>
- <string key="NSFrame">{{6, 33}, {695, 509}}</string>
+ <string key="NSFrame">{{6, 33}, {696, 509}}</string>
<reference key="NSSuperview" ref="950160581"/>
<reference key="NSNextKeyView" ref="446923801"/>
<int key="NSDividerStyle">2</int>
@@ -4778,8 +4818,9 @@
<object class="NSTextField" id="93347433">
<reference key="NSNextResponder" ref="950160581"/>
<int key="NSvFlags">290</int>
- <string key="NSFrame">{{103, 12}, {581, 17}}</string>
+ <string key="NSFrame">{{103, 12}, {582, 17}}</string>
<reference key="NSSuperview" ref="950160581"/>
+ <reference key="NSNextKeyView" ref="280187924"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="316003741">
<int key="NSCellFlags">67108864</int>
@@ -4794,8 +4835,7 @@
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrame">{{10, 7}, {705, 544}}</string>
- <reference key="NSSuperview" ref="280187924"/>
+ <string key="NSFrame">{{10, 7}, {706, 544}}</string>
<reference key="NSNextKeyView" ref="77719398"/>
</object>
<string key="NSLabel">Custom Query</string>
@@ -4827,7 +4867,7 @@
<object class="NSTextView" id="902567272">
<reference key="NSNextResponder" ref="378663488"/>
<int key="NSvFlags">2322</int>
- <string key="NSFrameSize">{551, 70}</string>
+ <string key="NSFrameSize">{541, 70}</string>
<reference key="NSSuperview" ref="378663488"/>
<reference key="NSNextKeyView" ref="301562599"/>
<object class="NSTextContainer" key="NSTextContainer" id="570118886">
@@ -4845,7 +4885,7 @@
<nil key="NSDelegate"/>
</object>
<reference key="NSTextView" ref="902567272"/>
- <double key="NSWidth">551</double>
+ <double key="NSWidth">541</double>
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
@@ -4872,7 +4912,7 @@
<nil key="NSDelegate"/>
</object>
</array>
- <string key="NSFrame">{{1, 1}, {551, 70}}</string>
+ <string key="NSFrame">{{1, 1}, {541, 70}}</string>
<reference key="NSSuperview" ref="834551573"/>
<reference key="NSNextKeyView" ref="902567272"/>
<reference key="NSDocView" ref="902567272"/>
@@ -4895,7 +4935,7 @@
<object class="NSScroller" id="582113763">
<reference key="NSNextResponder" ref="834551573"/>
<int key="NSvFlags">256</int>
- <string key="NSFrame">{{538, 1}, {14, 70}}</string>
+ <string key="NSFrame">{{542, 1}, {11, 70}}</string>
<reference key="NSSuperview" ref="834551573"/>
<reference key="NSNextKeyView" ref="807082629"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
@@ -4904,7 +4944,7 @@
<string key="NSAction">_doScroller:</string>
</object>
</array>
- <string key="NSFrame">{{109, 0}, {553, 72}}</string>
+ <string key="NSFrame">{{109, 0}, {554, 72}}</string>
<reference key="NSSuperview" ref="697228900"/>
<reference key="NSNextKeyView" ref="378663488"/>
<int key="NSsFlags">133138</int>
@@ -4935,7 +4975,7 @@
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrameSize">{662, 72}</string>
+ <string key="NSFrameSize">{663, 72}</string>
<reference key="NSSuperview" ref="420718918"/>
<reference key="NSNextKeyView" ref="839835928"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
@@ -4956,7 +4996,7 @@
<object class="NSTextView" id="804444600">
<reference key="NSNextResponder" ref="121595321"/>
<int key="NSvFlags">2322</int>
- <string key="NSFrameSize">{551, 197}</string>
+ <string key="NSFrameSize">{541, 197}</string>
<reference key="NSSuperview" ref="121595321"/>
<reference key="NSNextKeyView" ref="492861350"/>
<object class="NSTextContainer" key="NSTextContainer" id="36027070">
@@ -4974,7 +5014,7 @@
<nil key="NSDelegate"/>
</object>
<reference key="NSTextView" ref="804444600"/>
- <double key="NSWidth">551</double>
+ <double key="NSWidth">541</double>
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
@@ -5001,7 +5041,7 @@
<nil key="NSDelegate"/>
</object>
</array>
- <string key="NSFrame">{{1, 1}, {551, 197}}</string>
+ <string key="NSFrame">{{1, 1}, {541, 197}}</string>
<reference key="NSSuperview" ref="866412611"/>
<reference key="NSNextKeyView" ref="804444600"/>
<reference key="NSDocView" ref="804444600"/>
@@ -5024,7 +5064,7 @@
<object class="NSScroller" id="486433207">
<reference key="NSNextResponder" ref="866412611"/>
<int key="NSvFlags">256</int>
- <string key="NSFrame">{{538, 1}, {14, 197}}</string>
+ <string key="NSFrame">{{542, 1}, {11, 197}}</string>
<reference key="NSSuperview" ref="866412611"/>
<reference key="NSNextKeyView" ref="280187924"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
@@ -5033,7 +5073,7 @@
<string key="NSAction">_doScroller:</string>
</object>
</array>
- <string key="NSFrame">{{109, 0.5}, {553, 199}}</string>
+ <string key="NSFrame">{{109, 1}, {554, 199}}</string>
<reference key="NSSuperview" ref="807082629"/>
<reference key="NSNextKeyView" ref="121595321"/>
<int key="NSsFlags">133138</int>
@@ -5064,14 +5104,14 @@
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrame">{{0, 81}, {662, 199}}</string>
+ <string key="NSFrame">{{0, 81}, {663, 199}}</string>
<reference key="NSSuperview" ref="420718918"/>
<reference key="NSNextKeyView" ref="473337782"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
<string key="NSClassName">NSView</string>
</object>
</array>
- <string key="NSFrame">{{12, 30}, {662, 280}}</string>
+ <string key="NSFrame">{{12, 30}, {663, 280}}</string>
<reference key="NSSuperview" ref="278510490"/>
<reference key="NSNextKeyView" ref="697228900"/>
<string key="NSAutosaveName">TableInfoSplitter</string>
@@ -5098,7 +5138,7 @@
<object class="NSTextField" id="1054128943">
<reference key="NSNextResponder" ref="278510490"/>
<int key="NSvFlags">266</int>
- <string key="NSFrame">{{369, 475}, {304, 14}}</string>
+ <string key="NSFrame">{{369, 475}, {305, 14}}</string>
<reference key="NSSuperview" ref="278510490"/>
<reference key="NSNextKeyView" ref="526261346"/>
<bool key="NSEnabled">YES</bool>
@@ -5117,7 +5157,7 @@
<object class="NSTextField" id="63508502">
<reference key="NSNextResponder" ref="278510490"/>
<int key="NSvFlags">266</int>
- <string key="NSFrame">{{369, 500}, {304, 14}}</string>
+ <string key="NSFrame">{{369, 500}, {305, 14}}</string>
<reference key="NSSuperview" ref="278510490"/>
<reference key="NSNextKeyView" ref="242316182"/>
<bool key="NSEnabled">YES</bool>
@@ -5274,7 +5314,7 @@
<reference key="NSNextResponder" ref="278510490"/>
<int key="NSvFlags">10</int>
<array class="NSMutableArray" key="NSSubviews"/>
- <string key="NSFrame">{{25, 427}, {649, 5}}</string>
+ <string key="NSFrame">{{25, 427}, {650, 5}}</string>
<reference key="NSSuperview" ref="278510490"/>
<reference key="NSNextKeyView" ref="776897844"/>
<string key="NSHuggingPriority">{250, 750}</string>
@@ -5285,11 +5325,9 @@
<string key="NSContents">Box</string>
<reference key="NSSupport" ref="71602814"/>
<reference key="NSBackgroundColor" ref="812613095"/>
- <object class="NSColor" key="NSTextColor" id="319378609">
- <int key="NSColorSpace">6</int>
- <string key="NSCatalogName">System</string>
- <string key="NSColorName">labelColor</string>
- <reference key="NSColor" ref="437905761"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgAA</bytes>
</object>
</object>
<int key="NSBorderType">3</int>
@@ -5301,7 +5339,7 @@
<reference key="NSNextResponder" ref="278510490"/>
<int key="NSvFlags">10</int>
<array class="NSMutableArray" key="NSSubviews"/>
- <string key="NSFrame">{{24, 316}, {649, 5}}</string>
+ <string key="NSFrame">{{24, 316}, {650, 5}}</string>
<reference key="NSSuperview" ref="278510490"/>
<reference key="NSNextKeyView" ref="420718918"/>
<string key="NSHuggingPriority">{250, 750}</string>
@@ -5312,7 +5350,10 @@
<string key="NSContents">Box</string>
<reference key="NSSupport" ref="71602814"/>
<reference key="NSBackgroundColor" ref="812613095"/>
- <reference key="NSTextColor" ref="319378609"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgAA</bytes>
+ </object>
</object>
<int key="NSBorderType">3</int>
<int key="NSBoxType">2</int>
@@ -5508,7 +5549,7 @@
<object class="NSTextField" id="82785785">
<reference key="NSNextResponder" ref="278510490"/>
<int key="NSvFlags">266</int>
- <string key="NSFrame">{{401, 354}, {272, 14}}</string>
+ <string key="NSFrame">{{401, 354}, {273, 14}}</string>
<reference key="NSSuperview" ref="278510490"/>
<reference key="NSNextKeyView" ref="408386519"/>
<bool key="NSEnabled">YES</bool>
@@ -5527,7 +5568,7 @@
<object class="NSTextField" id="127338398">
<reference key="NSNextResponder" ref="278510490"/>
<int key="NSvFlags">266</int>
- <string key="NSFrame">{{401, 332}, {272, 14}}</string>
+ <string key="NSFrame">{{401, 332}, {273, 14}}</string>
<reference key="NSSuperview" ref="278510490"/>
<reference key="NSNextKeyView" ref="1000632746"/>
<bool key="NSEnabled">YES</bool>
@@ -5808,7 +5849,7 @@
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrame">{{10, 7}, {705, 544}}</string>
+ <string key="NSFrame">{{10, 7}, {706, 544}}</string>
<reference key="NSNextKeyView" ref="592029739"/>
</object>
<string key="NSLabel">Status</string>
@@ -5832,29 +5873,31 @@
<object class="NSTableView" id="371927703">
<reference key="NSNextResponder" ref="212426562"/>
<int key="NSvFlags">4352</int>
- <string key="NSFrameSize">{693, 454}</string>
+ <string key="NSFrameSize">{694, 456}</string>
<reference key="NSSuperview" ref="212426562"/>
- <reference key="NSNextKeyView" ref="1059229736"/>
+ <reference key="NSNextKeyView" ref="248334644"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
<object class="NSTableHeaderView" key="NSHeaderView" id="738684910">
<reference key="NSNextResponder" ref="1059229736"/>
<int key="NSvFlags">256</int>
- <string key="NSFrameSize">{693, 17}</string>
+ <string key="NSFrameSize">{694, 17}</string>
<reference key="NSSuperview" ref="1059229736"/>
<reference key="NSNextKeyView" ref="212426562"/>
<reference key="NSTableView" ref="371927703"/>
</object>
- <object class="_NSCornerView" key="NSCornerView">
- <nil key="NSNextResponder"/>
- <int key="NSvFlags">256</int>
+ <object class="_NSCornerView" key="NSCornerView" id="248334644">
+ <reference key="NSNextResponder" ref="129614519"/>
+ <int key="NSvFlags">-2147483392</int>
<string key="NSFrameSize">{15, 20}</string>
+ <reference key="NSSuperview" ref="129614519"/>
+ <reference key="NSNextKeyView" ref="1059229736"/>
</object>
<array class="NSMutableArray" key="NSTableColumns">
<object class="NSTableColumn" id="944957441">
<string key="NSIdentifier">name</string>
- <double key="NSWidth">125</double>
+ <double key="NSWidth">126</double>
<double key="NSMinWidth">8</double>
<double key="NSMaxWidth">1000</double>
<object class="NSTableHeaderCell" key="NSHeaderCell">
@@ -6061,7 +6104,7 @@
<int key="NSTableViewGroupRowStyle">1</int>
</object>
</array>
- <string key="NSFrame">{{1, 17}, {693, 454}}</string>
+ <string key="NSFrame">{{1, 17}, {694, 456}}</string>
<reference key="NSSuperview" ref="129614519"/>
<reference key="NSNextKeyView" ref="371927703"/>
<reference key="NSDocView" ref="371927703"/>
@@ -6074,34 +6117,35 @@
<array class="NSMutableArray" key="NSSubviews">
<reference ref="738684910"/>
</array>
- <string key="NSFrame">{{1, 0}, {693, 17}}</string>
+ <string key="NSFrame">{{1, 0}, {694, 17}}</string>
<reference key="NSSuperview" ref="129614519"/>
<reference key="NSNextKeyView" ref="738684910"/>
<reference key="NSDocView" ref="738684910"/>
</object>
- <object class="NSScroller" id="235841912">
+ <object class="NSScroller" id="816193636">
<reference key="NSNextResponder" ref="129614519"/>
<int key="NSvFlags">-2147483392</int>
- <string key="NSFrame">{{1, 470}, {688, 15}}</string>
+ <string key="NSFrame">{{674, 17}, {15, 453}}</string>
<reference key="NSSuperview" ref="129614519"/>
- <reference key="NSNextKeyView" ref="485666585"/>
+ <reference key="NSNextKeyView" ref="235841912"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
- <int key="NSsFlags">1</int>
<reference key="NSTarget" ref="129614519"/>
<string key="NSAction">_doScroller:</string>
</object>
- <object class="NSScroller" id="816193636">
+ <object class="NSScroller" id="235841912">
<reference key="NSNextResponder" ref="129614519"/>
<int key="NSvFlags">-2147483392</int>
- <string key="NSFrame">{{674, 17}, {15, 453}}</string>
+ <string key="NSFrame">{{1, 470}, {688, 15}}</string>
<reference key="NSSuperview" ref="129614519"/>
- <reference key="NSNextKeyView" ref="235841912"/>
+ <reference key="NSNextKeyView" ref="485666585"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <int key="NSsFlags">1</int>
<reference key="NSTarget" ref="129614519"/>
<string key="NSAction">_doScroller:</string>
</object>
+ <reference ref="248334644"/>
</array>
- <string key="NSFrame">{{6, 33}, {695, 472}}</string>
+ <string key="NSFrame">{{6, 32}, {696, 474}}</string>
<reference key="NSSuperview" ref="995722234"/>
<reference key="NSNextKeyView" ref="212426562"/>
<int key="NSsFlags">133682</int>
@@ -6117,7 +6161,7 @@
<object class="NSButton" id="485666585">
<reference key="NSNextResponder" ref="995722234"/>
<int key="NSvFlags">292</int>
- <string key="NSFrame">{{6, 10}, {32, 25}}</string>
+ <string key="NSFrame">{{6, 9}, {32, 25}}</string>
<reference key="NSSuperview" ref="995722234"/>
<reference key="NSNextKeyView" ref="646345802"/>
<bool key="NSEnabled">YES</bool>
@@ -6140,7 +6184,7 @@
<object class="NSButton" id="686372736">
<reference key="NSNextResponder" ref="995722234"/>
<int key="NSvFlags">292</int>
- <string key="NSFrame">{{68, 10}, {32, 25}}</string>
+ <string key="NSFrame">{{68, 9}, {32, 25}}</string>
<reference key="NSSuperview" ref="995722234"/>
<reference key="NSNextKeyView" ref="651913430"/>
<bool key="NSEnabled">YES</bool>
@@ -6163,7 +6207,7 @@
<object class="NSButton" id="646345802">
<reference key="NSNextResponder" ref="995722234"/>
<int key="NSvFlags">292</int>
- <string key="NSFrame">{{37, 10}, {32, 25}}</string>
+ <string key="NSFrame">{{37, 9}, {32, 25}}</string>
<reference key="NSSuperview" ref="995722234"/>
<reference key="NSNextKeyView" ref="686372736"/>
<bool key="NSEnabled">YES</bool>
@@ -6194,7 +6238,7 @@
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
- <string key="NSFrame">{{100, 11}, {601, 23}}</string>
+ <string key="NSFrame">{{100, 10}, {602, 23}}</string>
<reference key="NSSuperview" ref="995722234"/>
<reference key="NSNextKeyView" ref="280187924"/>
<bool key="NSEnabled">YES</bool>
@@ -6213,7 +6257,7 @@
<object class="NSTextField" id="854734864">
<reference key="NSNextResponder" ref="995722234"/>
<int key="NSvFlags">266</int>
- <string key="NSFrame">{{14, 515}, {686, 14}}</string>
+ <string key="NSFrame">{{14, 515}, {687, 14}}</string>
<reference key="NSSuperview" ref="995722234"/>
<reference key="NSNextKeyView" ref="129614519"/>
<bool key="NSEnabled">YES</bool>
@@ -6230,7 +6274,7 @@
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrame">{{10, 7}, {705, 544}}</string>
+ <string key="NSFrame">{{10, 7}, {706, 544}}</string>
<reference key="NSNextKeyView" ref="854734864"/>
</object>
<string key="NSLabel">Relations</string>
@@ -6254,16 +6298,16 @@
<object class="NSTableView" id="203790701">
<reference key="NSNextResponder" ref="428569810"/>
<int key="NSvFlags">4352</int>
- <string key="NSFrameSize">{693, 454}</string>
+ <string key="NSFrameSize">{694, 456}</string>
<reference key="NSSuperview" ref="428569810"/>
- <reference key="NSNextKeyView" ref="431222390"/>
+ <reference key="NSNextKeyView" ref="450150101"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
<object class="NSTableHeaderView" key="NSHeaderView" id="836953331">
<reference key="NSNextResponder" ref="431222390"/>
<int key="NSvFlags">256</int>
- <string key="NSFrameSize">{693, 17}</string>
+ <string key="NSFrameSize">{694, 17}</string>
<reference key="NSSuperview" ref="431222390"/>
<reference key="NSNextKeyView" ref="428569810"/>
<reference key="NSTableView" ref="203790701"/>
@@ -6273,11 +6317,12 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrameSize">{15, 20}</string>
<reference key="NSSuperview" ref="76455301"/>
+ <reference key="NSNextKeyView" ref="431222390"/>
</object>
<array class="NSMutableArray" key="NSTableColumns">
<object class="NSTableColumn" id="830933480">
<string key="NSIdentifier">TriggerName</string>
- <double key="NSWidth">95</double>
+ <double key="NSWidth">94</double>
<double key="NSMinWidth">10</double>
<double key="NSMaxWidth">3.4028230607370965e+38</double>
<object class="NSTableHeaderCell" key="NSHeaderCell">
@@ -6358,7 +6403,7 @@
</object>
<object class="NSTableColumn" id="658795423">
<string key="NSIdentifier">TriggerStatement</string>
- <double key="NSWidth">231.7109375</double>
+ <double key="NSWidth">230.7109375</double>
<double key="NSMinWidth">10</double>
<double key="NSMaxWidth">3.4028230607370965e+38</double>
<object class="NSTableHeaderCell" key="NSHeaderCell">
@@ -6385,7 +6430,7 @@
</object>
<object class="NSTableColumn" id="560699090">
<string key="NSIdentifier">TriggerDefiner</string>
- <double key="NSWidth">71</double>
+ <double key="NSWidth">71.5</double>
<double key="NSMinWidth">10</double>
<double key="NSMaxWidth">3.4028230607370965e+38</double>
<object class="NSTableHeaderCell" key="NSHeaderCell">
@@ -6412,7 +6457,7 @@
</object>
<object class="NSTableColumn" id="895656760">
<string key="NSIdentifier">TriggerCreated</string>
- <double key="NSWidth">49</double>
+ <double key="NSWidth">49.5</double>
<double key="NSMinWidth">10</double>
<double key="NSMaxWidth">3.4028234663852886e+38</double>
<object class="NSTableHeaderCell" key="NSHeaderCell">
@@ -6481,7 +6526,7 @@
<int key="NSTableViewGroupRowStyle">1</int>
</object>
</array>
- <string key="NSFrame">{{1, 17}, {693, 454}}</string>
+ <string key="NSFrame">{{1, 17}, {694, 456}}</string>
<reference key="NSSuperview" ref="76455301"/>
<reference key="NSNextKeyView" ref="203790701"/>
<reference key="NSDocView" ref="203790701"/>
@@ -6494,7 +6539,7 @@
<array class="NSMutableArray" key="NSSubviews">
<reference ref="836953331"/>
</array>
- <string key="NSFrame">{{1, 0}, {693, 17}}</string>
+ <string key="NSFrame">{{1, 0}, {694, 17}}</string>
<reference key="NSSuperview" ref="76455301"/>
<reference key="NSNextKeyView" ref="836953331"/>
<reference key="NSDocView" ref="836953331"/>
@@ -6508,6 +6553,7 @@
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<reference key="NSTarget" ref="76455301"/>
<string key="NSAction">_doScroller:</string>
+ <double key="NSPercent">0.96710526315789469</double>
</object>
<object class="NSScroller" id="901243988">
<reference key="NSNextResponder" ref="76455301"/>
@@ -6522,7 +6568,7 @@
</object>
<reference ref="450150101"/>
</array>
- <string key="NSFrame">{{6, 33}, {695, 472}}</string>
+ <string key="NSFrame">{{6, 32}, {696, 474}}</string>
<reference key="NSSuperview" ref="348437605"/>
<reference key="NSNextKeyView" ref="428569810"/>
<int key="NSsFlags">133682</int>
@@ -6539,7 +6585,7 @@
<object class="NSButton" id="421474">
<reference key="NSNextResponder" ref="348437605"/>
<int key="NSvFlags">292</int>
- <string key="NSFrame">{{6, 10}, {32, 25}}</string>
+ <string key="NSFrame">{{6, 9}, {32, 25}}</string>
<reference key="NSSuperview" ref="348437605"/>
<reference key="NSNextKeyView" ref="826516051"/>
<bool key="NSEnabled">YES</bool>
@@ -6562,7 +6608,7 @@
<object class="NSButton" id="862482881">
<reference key="NSNextResponder" ref="348437605"/>
<int key="NSvFlags">292</int>
- <string key="NSFrame">{{68, 10}, {32, 25}}</string>
+ <string key="NSFrame">{{68, 9}, {32, 25}}</string>
<reference key="NSSuperview" ref="348437605"/>
<reference key="NSNextKeyView" ref="290417695"/>
<bool key="NSEnabled">YES</bool>
@@ -6585,7 +6631,7 @@
<object class="NSButton" id="826516051">
<reference key="NSNextResponder" ref="348437605"/>
<int key="NSvFlags">292</int>
- <string key="NSFrame">{{37, 10}, {32, 25}}</string>
+ <string key="NSFrame">{{37, 9}, {32, 25}}</string>
<reference key="NSSuperview" ref="348437605"/>
<reference key="NSNextKeyView" ref="862482881"/>
<bool key="NSEnabled">YES</bool>
@@ -6616,9 +6662,8 @@
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
- <string key="NSFrame">{{100, 11}, {601, 23}}</string>
+ <string key="NSFrame">{{100, 10}, {602, 23}}</string>
<reference key="NSSuperview" ref="348437605"/>
- <reference key="NSNextKeyView" ref="280187924"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="136585690">
<int key="NSCellFlags">0</int>
@@ -6635,7 +6680,7 @@
<object class="NSTextField" id="3722547">
<reference key="NSNextResponder" ref="348437605"/>
<int key="NSvFlags">266</int>
- <string key="NSFrame">{{14, 515}, {686, 14}}</string>
+ <string key="NSFrame">{{14, 515}, {687, 14}}</string>
<reference key="NSSuperview" ref="348437605"/>
<reference key="NSNextKeyView" ref="76455301"/>
<bool key="NSEnabled">YES</bool>
@@ -6652,7 +6697,7 @@
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrame">{{10, 7}, {705, 544}}</string>
+ <string key="NSFrame">{{10, 7}, {706, 544}}</string>
<reference key="NSNextKeyView" ref="3722547"/>
</object>
<string key="NSLabel">Triggers</string>
@@ -6660,24 +6705,26 @@
<reference key="NSTabView" ref="280187924"/>
</object>
</array>
- <reference key="NSSelectedTabViewItem" ref="390082212"/>
+ <reference key="NSSelectedTabViewItem" ref="449203689"/>
<reference key="NSFont" ref="26"/>
<int key="NSTvFlags">134217731</int>
<bool key="NSAllowTruncatedLabels">YES</bool>
<bool key="NSDrawsBackground">YES</bool>
<array class="NSMutableArray" key="NSSubviews">
- <reference ref="950160581"/>
+ <reference ref="113573997"/>
</array>
</object>
</array>
<string key="NSFrame">{{215, 0}, {728, 549}}</string>
<reference key="NSSuperview" ref="310278688"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="280187924"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
</object>
</array>
<string key="NSFrameSize">{943, 549}</string>
<reference key="NSSuperview" ref="173438986"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="841205379"/>
<bool key="NSIsVertical">YES</bool>
<int key="NSDividerStyle">2</int>
@@ -6685,6 +6732,8 @@
</object>
</array>
<string key="NSFrameSize">{943, 549}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="310278688"/>
<string key="NSClassName">NSView</string>
</object>
@@ -6700,7 +6749,7 @@
<string key="NSWindowContentMaxSize">{600, 133}</string>
<string key="NSWindowContentMinSize">{384, 133}</string>
<object class="NSView" key="NSWindowView" id="544458901">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextField" id="128617942">
@@ -6708,7 +6757,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{5, 96}, {134, 14}}</string>
<reference key="NSSuperview" ref="544458901"/>
- <reference key="NSNextKeyView" ref="739945545"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="535859051"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="377787818">
<int key="NSCellFlags">68157504</int>
@@ -6727,6 +6777,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{5, 71}, {134, 14}}</string>
<reference key="NSSuperview" ref="544458901"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="869557066"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="72865155">
@@ -6746,6 +6797,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{5, 46}, {134, 14}}</string>
<reference key="NSSuperview" ref="544458901"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="749279002"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="716999507">
@@ -6760,36 +6812,13 @@
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
- <object class="NSTextField" id="739945545">
- <reference key="NSNextResponder" ref="544458901"/>
- <int key="NSvFlags">266</int>
- <string key="NSFrame">{{146, 95}, {218, 18}}</string>
- <reference key="NSSuperview" ref="544458901"/>
- <reference key="NSNextKeyView" ref="304814996"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSTextFieldCell" key="NSCell" id="483663538">
- <int key="NSCellFlags">-1804599231</int>
- <int key="NSCellFlags2">4326400</int>
- <string key="NSContents"/>
- <reference key="NSSupport" ref="26"/>
- <reference key="NSControlView" ref="739945545"/>
- <bool key="NSDrawsBackground">YES</bool>
- <reference key="NSBackgroundColor" ref="812613095"/>
- <object class="NSColor" key="NSTextColor" id="52640137">
- <int key="NSColorSpace">6</int>
- <string key="NSCatalogName">System</string>
- <string key="NSColorName">textColor</string>
- <reference key="NSColor" ref="437905761"/>
- </object>
- </object>
- <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
- <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
- </object>
<object class="NSButton" id="536855438">
<reference key="NSNextResponder" ref="544458901"/>
<int key="NSvFlags">289</int>
<string key="NSFrame">{{289, 13}, {80, 28}}</string>
<reference key="NSSuperview" ref="544458901"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView"/>
<string key="NSHuggingPriority">{250, 750}</string>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
@@ -6815,6 +6844,7 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{205, 13}, {86, 28}}</string>
<reference key="NSSuperview" ref="544458901"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="536855438"/>
<string key="NSHuggingPriority">{250, 750}</string>
<bool key="NSEnabled">YES</bool>
@@ -6839,6 +6869,7 @@
<int key="NSvFlags">266</int>
<string key="NSFrame">{{143, 66}, {224, 22}}</string>
<reference key="NSSuperview" ref="544458901"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1066843353"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="506424747">
@@ -6872,6 +6903,7 @@
<int key="NSvFlags">266</int>
<string key="NSFrame">{{143, 41}, {224, 22}}</string>
<reference key="NSSuperview" ref="544458901"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="988821764"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="226260075">
@@ -6900,8 +6932,38 @@
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
+ <object class="NSTextField" id="535859051">
+ <reference key="NSNextResponder" ref="544458901"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{146, 94}, {218, 19}}</string>
+ <reference key="NSSuperview" ref="544458901"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="304814996"/>
+ <string key="NSReuseIdentifierKey">_NS:9</string>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="329948835">
+ <int key="NSCellFlags">-1804599231</int>
+ <int key="NSCellFlags2">272761856</int>
+ <string key="NSContents"/>
+ <reference key="NSSupport" ref="26"/>
+ <string key="NSCellIdentifier">_NS:9</string>
+ <reference key="NSControlView" ref="535859051"/>
+ <bool key="NSDrawsBackground">YES</bool>
+ <reference key="NSBackgroundColor" ref="812613095"/>
+ <object class="NSColor" key="NSTextColor" id="52640137">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">textColor</string>
+ <reference key="NSColor" ref="437905761"/>
+ </object>
+ </object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
+ </object>
</array>
<string key="NSFrameSize">{384, 133}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="128617942"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
@@ -7403,7 +7465,7 @@
<string key="NSWindowContentMaxSize">{600, 162}</string>
<string key="NSWindowContentMinSize">{384, 142}</string>
<object class="NSView" key="NSWindowView" id="381160134">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextField" id="1005413998">
@@ -7411,6 +7473,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{5, 125}, {128, 14}}</string>
<reference key="NSSuperview" ref="381160134"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="374259664"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="688301525">
@@ -7430,6 +7493,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{5, 100}, {128, 14}}</string>
<reference key="NSSuperview" ref="381160134"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1050266816"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="711752917">
@@ -7449,6 +7513,7 @@
<int key="NSvFlags">258</int>
<string key="NSFrame">{{138, 124}, {226, 18}}</string>
<reference key="NSSuperview" ref="381160134"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="513414376"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="476637769">
@@ -7469,6 +7534,8 @@
<int key="NSvFlags">257</int>
<string key="NSFrame">{{291, 13}, {78, 28}}</string>
<reference key="NSSuperview" ref="381160134"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView"/>
<string key="NSHuggingPriority">{250, 750}</string>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
@@ -7494,6 +7561,7 @@
<int key="NSvFlags">258</int>
<string key="NSFrame">{{135, 95}, {232, 22}}</string>
<reference key="NSSuperview" ref="381160134"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="289339603"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="121674630">
@@ -7527,6 +7595,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{5, 75}, {128, 14}}</string>
<reference key="NSSuperview" ref="381160134"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="467430961"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="291856075">
@@ -7546,6 +7615,7 @@
<int key="NSvFlags">258</int>
<string key="NSFrame">{{135, 70}, {232, 22}}</string>
<reference key="NSSuperview" ref="381160134"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="725803993"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="628098377">
@@ -7579,6 +7649,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{5, 49}, {128, 14}}</string>
<reference key="NSSuperview" ref="381160134"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="189903457"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="518115151">
@@ -7598,6 +7669,7 @@
<int key="NSvFlags">258</int>
<string key="NSFrame">{{135, 45}, {232, 22}}</string>
<reference key="NSSuperview" ref="381160134"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="635170907"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="1016527944">
@@ -7631,6 +7703,7 @@
<int key="NSvFlags">257</int>
<string key="NSFrame">{{209, 13}, {84, 28}}</string>
<reference key="NSSuperview" ref="381160134"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="671615720"/>
<string key="NSHuggingPriority">{250, 750}</string>
<bool key="NSEnabled">YES</bool>
@@ -7652,6 +7725,8 @@
</object>
</array>
<string key="NSFrameSize">{384, 162}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1005413998"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
@@ -7671,7 +7746,7 @@
<string key="NSWindowContentMaxSize">{600, 127}</string>
<string key="NSWindowContentMinSize">{260, 127}</string>
<object class="NSView" key="NSWindowView" id="66282258">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextField" id="906659947">
@@ -7679,7 +7754,8 @@
<int key="NSvFlags">266</int>
<string key="NSFrame">{{17, 93}, {226, 14}}</string>
<reference key="NSSuperview" ref="66282258"/>
- <reference key="NSNextKeyView" ref="1038753764"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="398163780"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="1035435092">
<int key="NSCellFlags">67108928</int>
@@ -7693,31 +7769,12 @@
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
- <object class="NSTextField" id="1038753764">
- <reference key="NSNextResponder" ref="66282258"/>
- <int key="NSvFlags">258</int>
- <string key="NSFrame">{{20, 67}, {220, 18}}</string>
- <reference key="NSSuperview" ref="66282258"/>
- <reference key="NSNextKeyView" ref="966166933"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSTextFieldCell" key="NSCell" id="293184031">
- <int key="NSCellFlags">-1804599231</int>
- <int key="NSCellFlags2">4326400</int>
- <string key="NSContents"/>
- <reference key="NSSupport" ref="26"/>
- <reference key="NSControlView" ref="1038753764"/>
- <bool key="NSDrawsBackground">YES</bool>
- <reference key="NSBackgroundColor" ref="812613095"/>
- <reference key="NSTextColor" ref="52640137"/>
- </object>
- <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
- <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
- </object>
<object class="NSButton" id="966166933">
<reference key="NSNextResponder" ref="66282258"/>
<int key="NSvFlags">292</int>
<string key="NSFrame">{{19, 43}, {223, 18}}</string>
<reference key="NSSuperview" ref="66282258"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1014938601"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="680876624">
@@ -7742,6 +7799,8 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{148, 13}, {97, 28}}</string>
<reference key="NSSuperview" ref="66282258"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView"/>
<string key="NSHuggingPriority">{250, 750}</string>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
@@ -7767,6 +7826,7 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{59, 13}, {91, 28}}</string>
<reference key="NSSuperview" ref="66282258"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="162304526"/>
<string key="NSHuggingPriority">{250, 750}</string>
<bool key="NSEnabled">YES</bool>
@@ -7786,8 +7846,33 @@
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
+ <object class="NSTextField" id="398163780">
+ <reference key="NSNextResponder" ref="66282258"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{20, 66}, {222, 19}}</string>
+ <reference key="NSSuperview" ref="66282258"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="966166933"/>
+ <string key="NSReuseIdentifierKey">_NS:9</string>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="658680247">
+ <int key="NSCellFlags">-1804599231</int>
+ <int key="NSCellFlags2">272761856</int>
+ <string key="NSContents"/>
+ <reference key="NSSupport" ref="26"/>
+ <string key="NSCellIdentifier">_NS:9</string>
+ <reference key="NSControlView" ref="398163780"/>
+ <bool key="NSDrawsBackground">YES</bool>
+ <reference key="NSBackgroundColor" ref="812613095"/>
+ <reference key="NSTextColor" ref="52640137"/>
+ </object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
+ </object>
</array>
<string key="NSFrameSize">{260, 127}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="906659947"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
@@ -8137,7 +8222,10 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="NSContents">Box</string>
<reference key="NSSupport" ref="71602814"/>
<reference key="NSBackgroundColor" ref="812613095"/>
- <reference key="NSTextColor" ref="319378609"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgAA</bytes>
+ </object>
</object>
<int key="NSBorderType">3</int>
<int key="NSBoxType">2</int>
@@ -8163,7 +8251,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<nil key="NSViewClass"/>
<nil key="NSUserInterfaceItemIdentifier"/>
<object class="NSView" key="NSWindowView" id="1015718648">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSBox" id="20882945">
@@ -8179,6 +8267,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{115, 10}, {171, 22}}</string>
<reference key="NSSuperview" ref="926311790"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="53193920"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="141907570">
@@ -8246,6 +8335,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{15, 15}, {98, 14}}</string>
<reference key="NSSuperview" ref="926311790"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="613590545"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="758586794">
@@ -8263,11 +8353,13 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</array>
<string key="NSFrame">{{1, 1}, {343, 40}}</string>
<reference key="NSSuperview" ref="20882945"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="723208931"/>
</object>
</array>
<string key="NSFrame">{{17, 231}, {345, 56}}</string>
<reference key="NSSuperview" ref="1015718648"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="926311790"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
@@ -8275,12 +8367,15 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Table:</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">1558</int>
</object>
<reference key="NSBackgroundColor" ref="812613095"/>
- <reference key="NSTextColor" ref="319378609"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgAA</bytes>
+ </object>
</object>
<reference key="NSContentView" ref="926311790"/>
<int key="NSBorderType">1</int>
@@ -8301,6 +8396,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{15, 17}, {98, 14}}</string>
<reference key="NSSuperview" ref="642447590"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="164726151"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="755284617">
@@ -8320,6 +8416,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{118, 14}, {165, 19}}</string>
<reference key="NSSuperview" ref="642447590"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="20882945"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="697349750">
@@ -8339,11 +8436,13 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</array>
<string key="NSFrame">{{1, 1}, {343, 42}}</string>
<reference key="NSSuperview" ref="331810027"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="789490190"/>
</object>
</array>
<string key="NSFrame">{{17, 291}, {345, 58}}</string>
<reference key="NSSuperview" ref="1015718648"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="642447590"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
@@ -8351,12 +8450,15 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Name</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">1558</int>
</object>
<reference key="NSBackgroundColor" ref="812613095"/>
- <reference key="NSTextColor" ref="319378609"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgAA</bytes>
+ </object>
</object>
<reference key="NSContentView" ref="642447590"/>
<int key="NSBorderType">1</int>
@@ -8377,6 +8479,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{116, 40}, {170, 22}}</string>
<reference key="NSSuperview" ref="681913300"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="624744215"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="181473300">
@@ -8469,6 +8572,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{116, 10}, {170, 22}}</string>
<reference key="NSSuperview" ref="681913300"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="579485108"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="968836506">
@@ -8561,6 +8665,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{15, 45}, {99, 14}}</string>
<reference key="NSSuperview" ref="681913300"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="327029678"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="316160058">
@@ -8580,6 +8685,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{15, 15}, {98, 14}}</string>
<reference key="NSSuperview" ref="681913300"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="542486225"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="806766501">
@@ -8597,11 +8703,13 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</array>
<string key="NSFrame">{{1, 1}, {343, 71}}</string>
<reference key="NSSuperview" ref="607457532"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="124650739"/>
</object>
</array>
<string key="NSFrame">{{17, 49}, {345, 87}}</string>
<reference key="NSSuperview" ref="1015718648"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="681913300"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
@@ -8609,12 +8717,15 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Action</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">1558</int>
</object>
<reference key="NSBackgroundColor" ref="812613095"/>
- <reference key="NSTextColor" ref="319378609"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgAA</bytes>
+ </object>
</object>
<reference key="NSContentView" ref="681913300"/>
<int key="NSBorderType">1</int>
@@ -8635,6 +8746,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{115, 40}, {171, 22}}</string>
<reference key="NSSuperview" ref="331900158"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="523115675"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="342204808">
@@ -8702,6 +8814,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{115, 10}, {171, 22}}</string>
<reference key="NSSuperview" ref="331900158"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="607457532"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="525708739">
@@ -8769,6 +8882,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{15, 45}, {98, 14}}</string>
<reference key="NSSuperview" ref="331900158"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="997358225"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="204934061">
@@ -8788,6 +8902,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{15, 15}, {98, 14}}</string>
<reference key="NSSuperview" ref="331900158"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="776137040"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="695000720">
@@ -8805,11 +8920,13 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</array>
<string key="NSFrame">{{1, 1}, {343, 71}}</string>
<reference key="NSSuperview" ref="53193920"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="897769178"/>
</object>
</array>
<string key="NSFrame">{{17, 140}, {345, 87}}</string>
<reference key="NSSuperview" ref="1015718648"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="331900158"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
@@ -8817,12 +8934,15 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">References</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">1558</int>
</object>
<reference key="NSBackgroundColor" ref="812613095"/>
- <reference key="NSTextColor" ref="319378609"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgAA</bytes>
+ </object>
</object>
<reference key="NSContentView" ref="331900158"/>
<int key="NSBorderType">1</int>
@@ -8835,6 +8955,8 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{268, 13}, {96, 28}}</string>
<reference key="NSSuperview" ref="1015718648"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView"/>
<string key="NSHuggingPriority">{250, 750}</string>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
@@ -8859,6 +8981,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{174, 13}, {96, 28}}</string>
<reference key="NSSuperview" ref="1015718648"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="770611577"/>
<string key="NSHuggingPriority">{250, 750}</string>
<bool key="NSEnabled">YES</bool>
@@ -8883,6 +9006,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">-2147483356</int>
<string key="NSFrame">{{20, 20}, {16, 16}}</string>
<reference key="NSSuperview" ref="1015718648"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="172580784"/>
<string key="NSHuggingPriority">{750, 750}</string>
<int key="NSpiFlags">28942</int>
@@ -8893,6 +9017,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">-2147483356</int>
<string key="NSFrame">{{41, 21}, {133, 14}}</string>
<reference key="NSSuperview" ref="1015718648"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="905045861"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="243830498">
@@ -8909,6 +9034,8 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</object>
</array>
<string key="NSFrameSize">{379, 369}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="331810027"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
@@ -9152,12 +9279,15 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Trigger:</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">1558</int>
</object>
<reference key="NSBackgroundColor" ref="812613095"/>
- <reference key="NSTextColor" ref="319378609"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgAA</bytes>
+ </object>
</object>
<reference key="NSContentView" ref="962069974"/>
<int key="NSBorderType">1</int>
@@ -9226,7 +9356,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">2322</int>
<string key="NSFrameSize">{318, 168}</string>
<reference key="NSSuperview" ref="1057291304"/>
- <reference key="NSNextKeyView" ref="488376274"/>
+ <reference key="NSNextKeyView" ref="797275081"/>
<object class="NSTextContainer" key="NSTextContainer" id="21139041">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
@@ -9303,7 +9433,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</array>
<string key="NSFrame">{{20, 45}, {320, 170}}</string>
<reference key="NSSuperview" ref="28677781"/>
- <reference key="NSNextKeyView" ref="797275081"/>
+ <reference key="NSNextKeyView" ref="1057291304"/>
<int key="NSsFlags">133650</int>
<reference key="NSVScroller" ref="488376274"/>
<reference key="NSHScroller" ref="797275081"/>
@@ -9404,7 +9534,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSCellFlags2">4196352</int>
<string key="NSContents">Doing Stuff…</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI-Bold</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">2072</int>
</object>
@@ -9506,7 +9636,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">2322</int>
<string key="NSFrameSize">{370, 204}</string>
<reference key="NSSuperview" ref="636035650"/>
- <reference key="NSNextKeyView" ref="524361801"/>
+ <reference key="NSNextKeyView" ref="271182733"/>
<object class="NSTextContainer" key="NSTextContainer" id="77780800">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
@@ -9583,7 +9713,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</array>
<string key="NSFrame">{{-1, 35}, {383, 206}}</string>
<reference key="NSSuperview" ref="463455866"/>
- <reference key="NSNextKeyView" ref="271182733"/>
+ <reference key="NSNextKeyView" ref="636035650"/>
<int key="NSsFlags">133138</int>
<reference key="NSVScroller" ref="524361801"/>
<reference key="NSHScroller" ref="271182733"/>
@@ -9742,7 +9872,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">2322</int>
<string key="NSFrameSize">{411, 264}</string>
<reference key="NSSuperview" ref="167268114"/>
- <reference key="NSNextKeyView" ref="760360609"/>
+ <reference key="NSNextKeyView" ref="900574291"/>
<object class="NSTextContainer" key="NSTextContainer" id="840641212">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
@@ -9819,7 +9949,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</array>
<string key="NSFrame">{{-1, 42}, {413, 266}}</string>
<reference key="NSSuperview" ref="614170633"/>
- <reference key="NSNextKeyView" ref="900574291"/>
+ <reference key="NSNextKeyView" ref="167268114"/>
<int key="NSsFlags">133650</int>
<reference key="NSVScroller" ref="760360609"/>
<reference key="NSHScroller" ref="900574291"/>
@@ -9849,33 +9979,15 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<nil key="NSUserInterfaceItemIdentifier"/>
<string key="NSWindowContentMinSize">{213, 107}</string>
<object class="NSView" key="NSWindowView" id="736055667">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
- <object class="NSTextField" id="611611437">
- <reference key="NSNextResponder" ref="736055667"/>
- <int key="NSvFlags">264</int>
- <string key="NSFrame">{{20, 233}, {140, 14}}</string>
- <reference key="NSSuperview" ref="736055667"/>
- <reference key="NSNextKeyView" ref="805064076"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSTextFieldCell" key="NSCell" id="468238781">
- <int key="NSCellFlags">67108864</int>
- <int key="NSCellFlags2">4194304</int>
- <string key="NSContents">There have been errors!</string>
- <reference key="NSSupport" ref="27"/>
- <reference key="NSControlView" ref="611611437"/>
- <reference key="NSBackgroundColor" ref="647098198"/>
- <reference key="NSTextColor" ref="667308713"/>
- </object>
- <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
- <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
- </object>
<object class="NSButton" id="884123771">
<reference key="NSNextResponder" ref="736055667"/>
<int key="NSvFlags">257</int>
<string key="NSFrame">{{314, 13}, {76, 28}}</string>
<reference key="NSSuperview" ref="736055667"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="757193708"/>
<string key="NSHuggingPriority">{250, 750}</string>
<bool key="NSEnabled">YES</bool>
@@ -9900,6 +10012,8 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">257</int>
<string key="NSFrame">{{350, -130}, {80, 28}}</string>
<reference key="NSSuperview" ref="736055667"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView"/>
<string key="NSHuggingPriority">{250, 750}</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="361341574">
@@ -9929,8 +10043,9 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<object class="NSTextView" id="208952526">
<reference key="NSNextResponder" ref="298756222"/>
<int key="NSvFlags">2322</int>
- <string key="NSFrameSize">{352, 178}</string>
+ <string key="NSFrameSize">{352, 175}</string>
<reference key="NSSuperview" ref="298756222"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="239096412"/>
<object class="NSTextContainer" key="NSTextContainer" id="480726965">
<object class="NSLayoutManager" key="NSLayoutManager">
@@ -9974,8 +10089,9 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<nil key="NSDelegate"/>
</object>
</array>
- <string key="NSFrame">{{1, 1}, {352, 178}}</string>
+ <string key="NSFrame">{{1, 1}, {352, 175}}</string>
<reference key="NSSuperview" ref="805064076"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="208952526"/>
<reference key="NSDocView" ref="208952526"/>
<reference key="NSBGColor" ref="457906098"/>
@@ -9987,6 +10103,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {87, 11}}</string>
<reference key="NSSuperview" ref="805064076"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="298756222"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">257</int>
@@ -9997,8 +10114,9 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<object class="NSScroller" id="239096412">
<reference key="NSNextResponder" ref="805064076"/>
<int key="NSvFlags">256</int>
- <string key="NSFrame">{{353, 1}, {11, 178}}</string>
+ <string key="NSFrame">{{353, 1}, {11, 175}}</string>
<reference key="NSSuperview" ref="805064076"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="884123771"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">256</int>
@@ -10006,8 +10124,9 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="NSAction">_doScroller:</string>
</object>
</array>
- <string key="NSFrame">{{20, 45}, {365, 180}}</string>
+ <string key="NSFrame">{{20, 45}, {365, 177}}</string>
<reference key="NSSuperview" ref="736055667"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="832962230"/>
<int key="NSsFlags">133138</int>
<reference key="NSVScroller" ref="239096412"/>
@@ -10017,9 +10136,34 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<double key="NSMaxMagnification">4</double>
<double key="NSMagnification">1</double>
</object>
+ <object class="NSTextField" id="999783710">
+ <reference key="NSNextResponder" ref="736055667"/>
+ <int key="NSvFlags">266</int>
+ <string key="NSFrame">{{18, 230}, {369, 17}}</string>
+ <reference key="NSSuperview" ref="736055667"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="805064076"/>
+ <string key="NSReuseIdentifierKey">_NS:526</string>
+ <string key="NSHuggingPriority">{251, 750}</string>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="120319413">
+ <int key="NSCellFlags">68157504</int>
+ <int key="NSCellFlags2">272630784</int>
+ <string key="NSContents">There have been errors!</string>
+ <reference key="NSSupport" ref="27"/>
+ <string key="NSCellIdentifier">_NS:526</string>
+ <reference key="NSControlView" ref="999783710"/>
+ <reference key="NSBackgroundColor" ref="647098198"/>
+ <reference key="NSTextColor" ref="667308713"/>
+ </object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
+ </object>
</array>
<string key="NSFrameSize">{405, 267}</string>
- <reference key="NSNextKeyView" ref="611611437"/>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="999783710"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
<string key="NSMinSize">{213, 129}</string>
@@ -10183,7 +10327,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSCellFlags">75497472</int>
<int key="NSCellFlags2">0</int>
<object class="NSFont" key="NSSupport" id="513227961">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">12</double>
<int key="NSfFlags">787</int>
</object>
@@ -10313,7 +10457,10 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="NSContents">Box</string>
<reference key="NSSupport" ref="71602814"/>
<reference key="NSBackgroundColor" ref="812613095"/>
- <reference key="NSTextColor" ref="319378609"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgAA</bytes>
+ </object>
</object>
<int key="NSBorderType">3</int>
<int key="NSBoxType">2</int>
@@ -10476,7 +10623,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">274</int>
<string key="NSFrameSize">{752, 125}</string>
<reference key="NSSuperview" ref="362766596"/>
- <reference key="NSNextKeyView" ref="219664334"/>
+ <reference key="NSNextKeyView" ref="874329690"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
@@ -10587,13 +10734,12 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</array>
<string key="NSFrameSize">{752, 142}</string>
<reference key="NSSuperview" ref="1047499221"/>
- <reference key="NSNextKeyView" ref="874329690"/>
+ <reference key="NSNextKeyView" ref="362766596"/>
<int key="NSsFlags">133680</int>
<reference key="NSVScroller" ref="684709638"/>
<reference key="NSHScroller" ref="219664334"/>
<reference key="NSContentView" ref="362766596"/>
<reference key="NSHeaderClipView" ref="874329690"/>
- <reference key="NSCornerView" ref="85906285"/>
<bytes key="NSScrollAmts">QSAAAEEgAABBmAAAQZgAAA</bytes>
<double key="NSMinMagnification">0.25</double>
<double key="NSMaxMagnification">4</double>
@@ -10767,7 +10913,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSCellFlags2">134479872</int>
<string key="NSContents">Edit</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">9</double>
<int key="NSfFlags">3614</int>
</object>
@@ -11430,7 +11576,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<bool key="NSWindowIsRestorable">YES</bool>
</object>
<object class="NSCustomView" id="473434057">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">301</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSPopUpButton" id="688363677">
@@ -11438,6 +11584,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">298</int>
<string key="NSFrame">{{0, 3}, {200, 26}}</string>
<reference key="NSSuperview" ref="473434057"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="488920219"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="627468414">
@@ -11446,14 +11593,14 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference key="NSSupport" ref="513227961"/>
<reference key="NSControlView" ref="688363677"/>
<int key="NSButtonFlags">-2038284288</int>
- <int key="NSButtonFlags2">268435491</int>
+ <int key="NSButtonFlags2">35</int>
<object class="NSFont" key="NSAlternateImage">
<string key="NSName">.LucidaGrandeUI</string>
<double key="NSSize">12</double>
<int key="NSfFlags">16</int>
</object>
<string key="NSAlternateContents"/>
- <string key="NSKeyEquivalent">D</string>
+ <string key="NSKeyEquivalent"/>
<int key="NSPeriodicDelay">400</int>
<int key="NSPeriodicInterval">75</int>
<object class="NSMenuItem" key="NSMenuItem" id="786224119">
@@ -11522,6 +11669,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">301</int>
<string key="NSFrame">{{208, 3}, {57, 25}}</string>
<reference key="NSSuperview" ref="473434057"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSSegmentedCell" key="NSCell" id="621744750">
<int key="NSCellFlags">75497472</int>
@@ -11561,6 +11709,8 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</object>
</array>
<string key="NSFrameSize">{269, 32}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="688363677"/>
<string key="NSClassName">NSView</string>
</object>
@@ -11657,7 +11807,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="NSvFlags">256</int>
<string key="NSFrameSize">{358, 139}</string>
<reference key="NSSuperview" ref="444842512"/>
- <reference key="NSNextKeyView" ref="229681740"/>
+ <reference key="NSNextKeyView" ref="55223527"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
@@ -11829,13 +11979,12 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</array>
<string key="NSFrameSize">{360, 157}</string>
<reference key="NSSuperview" ref="51514705"/>
- <reference key="NSNextKeyView" ref="55223527"/>
+ <reference key="NSNextKeyView" ref="444842512"/>
<int key="NSsFlags">133682</int>
<reference key="NSVScroller" ref="229681740"/>
<reference key="NSHScroller" ref="633820164"/>
<reference key="NSContentView" ref="444842512"/>
<reference key="NSHeaderClipView" ref="866310779"/>
- <reference key="NSCornerView" ref="55223527"/>
<bytes key="NSScrollAmts">QSAAAEEgAABBgAAAQYAAAA</bytes>
<double key="NSMinMagnification">0.25</double>
<double key="NSMaxMagnification">4</double>
@@ -12405,10 +12554,179 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</object>
</array>
</object>
+ <object class="NSCustomView" id="419216241">
+ <reference key="NSNextResponder"/>
+ <int key="NSvFlags">268</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <object class="NSScrollView" id="773336919">
+ <reference key="NSNextResponder" ref="419216241"/>
+ <int key="NSvFlags">274</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <object class="NSClipView" id="554327629">
+ <reference key="NSNextResponder" ref="773336919"/>
+ <int key="NSvFlags">2322</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <object class="NSTextView" id="167869478">
+ <reference key="NSNextResponder" ref="554327629"/>
+ <int key="NSvFlags">2322</int>
+ <string key="NSFrameSize">{392, 110}</string>
+ <reference key="NSSuperview" ref="554327629"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="14611541"/>
+ <string key="NSReuseIdentifierKey">_NS:13</string>
+ <object class="NSTextContainer" key="NSTextContainer" id="246326547">
+ <object class="NSLayoutManager" key="NSLayoutManager">
+ <object class="NSTextStorage" key="NSTextStorage">
+ <object class="NSMutableString" key="NSString">
+ <characters key="NS.bytes"/>
+ </object>
+ <nil key="NSDelegate"/>
+ </object>
+ <array class="NSMutableArray" key="NSTextContainers">
+ <reference ref="246326547"/>
+ </array>
+ <int key="NSLMFlags">166</int>
+ <nil key="NSDelegate"/>
+ </object>
+ <reference key="NSTextView" ref="167869478"/>
+ <double key="NSWidth">392</double>
+ <int key="NSTCFlags">1</int>
+ </object>
+ <object class="NSTextViewSharedData" key="NSSharedData">
+ <int key="NSFlags">16912129</int>
+ <int key="NSTextCheckingTypes">0</int>
+ <nil key="NSMarkedAttributes"/>
+ <reference key="NSBackgroundColor" ref="457906098"/>
+ <dictionary key="NSSelectedAttributes">
+ <reference key="NSBackgroundColor" ref="695342849"/>
+ <reference key="NSColor" ref="294465151"/>
+ </dictionary>
+ <reference key="NSInsertionColor" ref="667308713"/>
+ <dictionary key="NSLinkAttributes">
+ <reference key="NSColor" ref="618433734"/>
+ <reference key="NSCursor" ref="113216199"/>
+ <integer value="1" key="NSUnderline"/>
+ </dictionary>
+ <nil key="NSDefaultParagraphStyle"/>
+ <nil key="NSTextFinder"/>
+ <int key="NSPreferredTextFinderStyle">0</int>
+ </object>
+ <int key="NSTVFlags">6</int>
+ <string key="NSMaxSize">{463, 10000000}</string>
+ <nil key="NSDelegate"/>
+ </object>
+ </array>
+ <string key="NSFrame">{{1, 1}, {392, 110}}</string>
+ <reference key="NSSuperview" ref="773336919"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="167869478"/>
+ <string key="NSReuseIdentifierKey">_NS:11</string>
+ <reference key="NSDocView" ref="167869478"/>
+ <reference key="NSBGColor" ref="457906098"/>
+ <object class="NSCursor" key="NSCursor">
+ <string key="NSHotSpot">{4, 5}</string>
+ <object class="NSImage" key="NSImage">
+ <int key="NSImageFlags">12582912</int>
+ <array class="NSMutableArray" key="NSReps">
+ <array>
+ <integer value="0"/>
+ <object class="NSBitmapImageRep">
+ <object class="NSData" key="NSTIFFRepresentation">
+ <bytes key="NS.bytes">TU0AKgAAAHCAFUqgBVKsAAAAwdVQUqwaEQeIRGJRGFlYqwWLQ+JxuOQpVRmEx2RROKwOQyOUQSPyaUym
+SxqWyKXyeYxyZzWbSuJTScRCbz2Nz+gRKhUOfTqeUai0OSxiWTiBQSHSGFquGwekxyAgAAAOAQAAAwAA
+AAEAEAAAAQEAAwAAAAEAEAAAAQIAAwAAAAIACAAIAQMAAwAAAAEABQAAAQYAAwAAAAEAAQAAAREABAAA
+AAEAAAAIARIAAwAAAAEAAQAAARUAAwAAAAEAAgAAARYAAwAAAAEAEAAAARcABAAAAAEAAABnARwAAwAA
+AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
+ </object>
+ </object>
+ </array>
+ </array>
+ <object class="NSColor" key="NSColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwAA</bytes>
+ </object>
+ </object>
+ </object>
+ <int key="NScvFlags">4</int>
+ </object>
+ <object class="NSScroller" id="14611541">
+ <reference key="NSNextResponder" ref="773336919"/>
+ <int key="NSvFlags">-2147483392</int>
+ <string key="NSFrame">{{244, 1}, {15, 76}}</string>
+ <reference key="NSSuperview" ref="773336919"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView"/>
+ <string key="NSReuseIdentifierKey">_NS:85</string>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <reference key="NSTarget" ref="773336919"/>
+ <string key="NSAction">_doScroller:</string>
+ <double key="NSCurValue">1</double>
+ <double key="NSPercent">0.85256409645080566</double>
+ </object>
+ <object class="NSScroller" id="430345086">
+ <reference key="NSNextResponder" ref="773336919"/>
+ <int key="NSvFlags">-2147483392</int>
+ <string key="NSFrame">{{-100, -100}, {87, 18}}</string>
+ <reference key="NSSuperview" ref="773336919"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="554327629"/>
+ <string key="NSReuseIdentifierKey">_NS:33</string>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <int key="NSsFlags">1</int>
+ <reference key="NSTarget" ref="773336919"/>
+ <string key="NSAction">_doScroller:</string>
+ <double key="NSCurValue">1</double>
+ <double key="NSPercent">0.94565218687057495</double>
+ </object>
+ </array>
+ <string key="NSFrame">{{1, 0}, {394, 112}}</string>
+ <reference key="NSSuperview" ref="419216241"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="430345086"/>
+ <string key="NSReuseIdentifierKey">_NS:9</string>
+ <int key="NSsFlags">133650</int>
+ <reference key="NSVScroller" ref="14611541"/>
+ <reference key="NSHScroller" ref="430345086"/>
+ <reference key="NSContentView" ref="554327629"/>
+ <double key="NSMinMagnification">0.25</double>
+ <double key="NSMaxMagnification">4</double>
+ <double key="NSMagnification">1</double>
+ </object>
+ <object class="NSTextField" id="282832207">
+ <reference key="NSNextResponder" ref="419216241"/>
+ <int key="NSvFlags">266</int>
+ <string key="NSFrame">{{-1, 118}, {398, 17}}</string>
+ <reference key="NSSuperview" ref="419216241"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="773336919"/>
+ <string key="NSReuseIdentifierKey">_NS:526</string>
+ <string key="NSHuggingPriority">{251, 750}</string>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="164374303">
+ <int key="NSCellFlags">68157504</int>
+ <int key="NSCellFlags2">272630784</int>
+ <string key="NSContents">Details:</string>
+ <reference key="NSSupport" ref="26"/>
+ <string key="NSCellIdentifier">_NS:526</string>
+ <reference key="NSControlView" ref="282832207"/>
+ <reference key="NSBackgroundColor" ref="647098198"/>
+ <reference key="NSTextColor" ref="667308713"/>
+ </object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
+ </object>
+ </array>
+ <string key="NSFrameSize">{395, 135}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="282832207"/>
+ <string key="NSReuseIdentifierKey">_NS:9</string>
+ <string key="NSClassName">NSView</string>
+ </object>
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">addDatabaseButton</string>
@@ -12547,14 +12865,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
- <string key="label">databaseNameField</string>
- <reference key="source" ref="800783608"/>
- <reference key="destination" ref="739945545"/>
- </object>
- <string key="id">7029</string>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
<string key="label">databaseRenameNameField</string>
<reference key="source" ref="800783608"/>
<reference key="destination" ref="910445056"/>
@@ -13050,6 +13360,14 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="id">6898</string>
</object>
<object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">databaseNameField</string>
+ <reference key="source" ref="800783608"/>
+ <reference key="destination" ref="535859051"/>
+ </object>
+ <string key="id">LR5-fT-2qb</string>
+ </object>
+ <object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">addDatabase:</string>
<reference key="source" ref="463834704"/>
@@ -13819,14 +14137,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
- <string key="label">copyTableNameField</string>
- <reference key="source" ref="421424376"/>
- <reference key="destination" ref="1038753764"/>
- </object>
- <string key="id">519</string>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
<string key="label">copyTableSheet</string>
<reference key="source" ref="421424376"/>
<reference key="destination" ref="776700210"/>
@@ -14234,6 +14544,14 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="id">uJ9-sX-zir</string>
</object>
<object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">copyTableNameField</string>
+ <reference key="source" ref="421424376"/>
+ <reference key="destination" ref="398163780"/>
+ </object>
+ <string key="id">i9F-Er-ve6</string>
+ </object>
+ <object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">toggleColumnView:</string>
<reference key="source" ref="239767357"/>
@@ -15483,35 +15801,11 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
- <string key="label">delegate</string>
- <reference key="source" ref="1038753764"/>
- <reference key="destination" ref="421424376"/>
- </object>
- <string key="id">5706</string>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
- <string key="label">delegate</string>
- <reference key="source" ref="739945545"/>
- <reference key="destination" ref="800783608"/>
- </object>
- <string key="id">4781</string>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
- <string key="label">nextKeyView</string>
- <reference key="source" ref="739945545"/>
- <reference key="destination" ref="869557066"/>
- </object>
- <string key="id">7021</string>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
<string key="label">nextKeyView</string>
<reference key="source" ref="536855438"/>
- <reference key="destination" ref="739945545"/>
+ <reference key="destination" ref="535859051"/>
</object>
- <string key="id">7024</string>
+ <string key="id">L78-2b-cKV</string>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
@@ -15764,6 +16058,14 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">menu</string>
+ <reference key="source" ref="594274975"/>
+ <reference key="destination" ref="142860202"/>
+ </object>
+ <string key="id">Uxa-5O-Q0T</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">menu</string>
<reference key="source" ref="534606014"/>
<reference key="destination" ref="446589600"/>
</object>
@@ -16283,6 +16585,22 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
+ <string key="label">detailErrorView</string>
+ <reference key="source" ref="292161225"/>
+ <reference key="destination" ref="419216241"/>
+ </object>
+ <string key="id">tnS-Wc-vbj</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">detailErrorText</string>
+ <reference key="source" ref="292161225"/>
+ <reference key="destination" ref="167869478"/>
+ </object>
+ <string key="id">JXS-FR-qOe</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
<string key="label">delegate</string>
<reference key="source" ref="735808692"/>
<reference key="destination" ref="269913528"/>
@@ -17386,11 +17704,35 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">delegate</string>
+ <reference key="source" ref="535859051"/>
+ <reference key="destination" ref="800783608"/>
+ </object>
+ <string key="id">m0B-z4-t6u</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">nextKeyView</string>
+ <reference key="source" ref="535859051"/>
+ <reference key="destination" ref="536855438"/>
+ </object>
+ <string key="id">Apc-YB-OnC</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">delegate</string>
<reference key="source" ref="786146577"/>
<reference key="destination" ref="174325282"/>
</object>
<string key="id">28j-fv-HkI</string>
</object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">delegate</string>
+ <reference key="source" ref="398163780"/>
+ <reference key="destination" ref="421424376"/>
+ </object>
+ <string key="id">FTJ-Fb-vbI</string>
+ </object>
</array>
<object class="IBMutableOrderedSet" key="objectRecords">
<array key="orderedObjects">
@@ -20013,11 +20355,11 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference ref="128617942"/>
<reference ref="304814996"/>
<reference ref="1066843353"/>
- <reference ref="739945545"/>
<reference ref="536855438"/>
<reference ref="988821764"/>
<reference ref="869557066"/>
<reference ref="749279002"/>
+ <reference ref="535859051"/>
</array>
<reference key="parent" ref="27889601"/>
</object>
@@ -20061,19 +20403,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference key="parent" ref="1066843353"/>
</object>
<object class="IBObjectRecord">
- <string key="id">580</string>
- <reference key="object" ref="739945545"/>
- <array class="NSMutableArray" key="children">
- <reference ref="483663538"/>
- </array>
- <reference key="parent" ref="544458901"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">3836</string>
- <reference key="object" ref="483663538"/>
- <reference key="parent" ref="739945545"/>
- </object>
- <object class="IBObjectRecord">
<string key="id">581</string>
<reference key="object" ref="536855438"/>
<array class="NSMutableArray" key="children">
@@ -20651,10 +20980,10 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference key="object" ref="66282258"/>
<array class="NSMutableArray" key="children">
<reference ref="906659947"/>
- <reference ref="1038753764"/>
<reference ref="966166933"/>
<reference ref="162304526"/>
<reference ref="1014938601"/>
+ <reference ref="398163780"/>
</array>
<reference key="parent" ref="776700210"/>
</object>
@@ -20672,19 +21001,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference key="parent" ref="906659947"/>
</object>
<object class="IBObjectRecord">
- <string key="id">513</string>
- <reference key="object" ref="1038753764"/>
- <array class="NSMutableArray" key="children">
- <reference ref="293184031"/>
- </array>
- <reference key="parent" ref="66282258"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">3831</string>
- <reference key="object" ref="293184031"/>
- <reference key="parent" ref="1038753764"/>
- </object>
- <object class="IBObjectRecord">
<string key="id">514</string>
<reference key="object" ref="966166933"/>
<array class="NSMutableArray" key="children">
@@ -21794,27 +22110,14 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="id">960</string>
<reference key="object" ref="736055667"/>
<array class="NSMutableArray" key="children">
- <reference ref="611611437"/>
<reference ref="884123771"/>
<reference ref="757193708"/>
<reference ref="805064076"/>
+ <reference ref="999783710"/>
</array>
<reference key="parent" ref="401301040"/>
</object>
<object class="IBObjectRecord">
- <string key="id">961</string>
- <reference key="object" ref="611611437"/>
- <array class="NSMutableArray" key="children">
- <reference ref="468238781"/>
- </array>
- <reference key="parent" ref="736055667"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">3867</string>
- <reference key="object" ref="468238781"/>
- <reference key="parent" ref="611611437"/>
- </object>
- <object class="IBObjectRecord">
<string key="id">964</string>
<reference key="object" ref="884123771"/>
<array class="NSMutableArray" key="children">
@@ -23925,6 +24228,93 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference key="object" ref="441784509"/>
<reference key="parent" ref="136120153"/>
</object>
+ <object class="IBObjectRecord">
+ <string key="id">VCn-3k-MdI</string>
+ <reference key="object" ref="419216241"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="773336919"/>
+ <reference ref="282832207"/>
+ </array>
+ <reference key="parent" ref="0"/>
+ <string key="objectName">MySQL Error Accessory View</string>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">GVI-VY-JuM</string>
+ <reference key="object" ref="282832207"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="164374303"/>
+ </array>
+ <reference key="parent" ref="419216241"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">00a-86-EQq</string>
+ <reference key="object" ref="164374303"/>
+ <reference key="parent" ref="282832207"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">qxR-EW-V6F</string>
+ <reference key="object" ref="773336919"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="167869478"/>
+ <reference ref="430345086"/>
+ <reference ref="14611541"/>
+ </array>
+ <reference key="parent" ref="419216241"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">UVh-gz-xnJ</string>
+ <reference key="object" ref="167869478"/>
+ <reference key="parent" ref="773336919"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">TRD-dk-r1Q</string>
+ <reference key="object" ref="430345086"/>
+ <reference key="parent" ref="773336919"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">mRm-ts-hRV</string>
+ <reference key="object" ref="14611541"/>
+ <reference key="parent" ref="773336919"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">zPq-c4-GfK</string>
+ <reference key="object" ref="398163780"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="658680247"/>
+ </array>
+ <reference key="parent" ref="66282258"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">n3P-gU-pX8</string>
+ <reference key="object" ref="658680247"/>
+ <reference key="parent" ref="398163780"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">n5n-Ef-ROd</string>
+ <reference key="object" ref="535859051"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="329948835"/>
+ </array>
+ <reference key="parent" ref="544458901"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">SPm-RJ-YgI</string>
+ <reference key="object" ref="329948835"/>
+ <reference key="parent" ref="535859051"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">0kM-iB-j0E</string>
+ <reference key="object" ref="999783710"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="120319413"/>
+ </array>
+ <reference key="parent" ref="736055667"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">j3N-dd-SyM</string>
+ <reference key="object" ref="120319413"/>
+ <reference key="parent" ref="999783710"/>
+ </object>
</array>
</object>
<dictionary class="NSMutableDictionary" key="flattenedProperties">
@@ -23934,6 +24324,8 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<boolean value="NO" key="-2.showNotes"/>
<string key="-3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="-3.showNotes"/>
+ <string key="00a-86-EQq.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="0kM-iB-j0E.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="119.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="119.showNotes"/>
<string key="120.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -24114,8 +24506,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<boolean value="NO" key="3829.showNotes"/>
<string key="3830.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="3830.showNotes"/>
- <string key="3831.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <boolean value="NO" key="3831.showNotes"/>
<string key="3832.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="3832.showNotes"/>
<string key="3833.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -24124,16 +24514,12 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<boolean value="NO" key="3834.showNotes"/>
<string key="3835.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="3835.showNotes"/>
- <string key="3836.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <boolean value="NO" key="3836.showNotes"/>
<string key="3837.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="3837.showNotes"/>
<string key="3838.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="3838.showNotes"/>
<string key="3844.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="3844.showNotes"/>
- <string key="3867.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <boolean value="NO" key="3867.showNotes"/>
<string key="3868.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="3868.showNotes"/>
<string key="3903.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -24288,6 +24674,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<boolean value="NO" key="4752.showNotes"/>
<string key="4753.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="4753.showNotes"/>
+ <reference key="500.IBNSViewMetadataGestureRecognizers" ref="0"/>
<string key="500.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference key="500.IBUserGuides" ref="0"/>
<boolean value="NO" key="500.showNotes"/>
@@ -24301,9 +24688,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="5129.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference key="5129.IBUserGuides" ref="0"/>
<boolean value="NO" key="5129.showNotes"/>
- <string key="513.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <reference key="513.IBUserGuides" ref="0"/>
- <boolean value="NO" key="513.showNotes"/>
<string key="5130.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="5130.showNotes"/>
<object class="NSMutableDictionary" key="5131.IBAttributePlaceholdersKey">
@@ -24654,6 +25038,7 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<boolean value="NO" key="5566.showNotes"/>
<string key="5567.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="5567.showNotes"/>
+ <reference key="557.IBNSViewMetadataGestureRecognizers" ref="0"/>
<string key="557.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference key="557.IBUserGuides" ref="0"/>
<boolean value="NO" key="557.showNotes"/>
@@ -24914,9 +25299,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<boolean value="NO" key="5796.showNotes"/>
<string key="5797.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="5797.showNotes"/>
- <string key="580.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <reference key="580.IBUserGuides" ref="0"/>
- <boolean value="NO" key="580.showNotes"/>
<string key="5806.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference key="5806.IBUserGuides" ref="0"/>
<boolean value="NO" key="5806.showNotes"/>
@@ -26693,12 +27075,10 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<boolean value="NO" key="959.IBNSWindowAutoPositionCentersVertical"/>
<string key="959.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="959.showNotes"/>
+ <reference key="960.IBNSViewMetadataGestureRecognizers" ref="0"/>
<string key="960.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference key="960.IBUserGuides" ref="0"/>
<boolean value="NO" key="960.showNotes"/>
- <string key="961.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <reference key="961.IBUserGuides" ref="0"/>
- <boolean value="NO" key="961.showNotes"/>
<string key="964.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference key="964.IBUserGuides" ref="0"/>
<boolean value="NO" key="964.showNotes"/>
@@ -26711,8 +27091,15 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="FF9-z2-9od.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference key="FF9-z2-9od.IBUserGuides" ref="0"/>
<boolean value="NO" key="FF9-z2-9od.showNotes"/>
+ <string key="GVI-VY-JuM.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="KYo-IU-iIw.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="SPm-RJ-YgI.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="TRD-dk-r1Q.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="Ts3-iA-OpO.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="UVh-gz-xnJ.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference key="VCn-3k-MdI.IBNSViewMetadataGestureRecognizers" ref="0"/>
+ <string key="VCn-3k-MdI.IBPersistedLastKnownCanvasPosition">{-318.5, -215.5}</string>
+ <string key="VCn-3k-MdI.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="dIO-Od-K6g.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference key="dIO-Od-K6g.IBUserGuides" ref="0"/>
<boolean value="NO" key="dIO-Od-K6g.showNotes"/>
@@ -26722,10 +27109,15 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="gTZ-sd-Ef7.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference key="gTZ-sd-Ef7.IBUserGuides" ref="0"/>
<boolean value="NO" key="gTZ-sd-Ef7.showNotes"/>
+ <string key="j3N-dd-SyM.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="khN-PI-iEA.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="khN-PI-iEA.showNotes"/>
<string key="ki9-Po-bdr.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="ki9-Po-bdr.showNotes"/>
+ <string key="mRm-ts-hRV.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="n3P-gU-pX8.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="n5n-Ef-ROd.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="qxR-EW-V6F.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="wlW-vM-FUZ.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference key="wlW-vM-FUZ.IBUserGuides" ref="0"/>
<boolean value="NO" key="wlW-vM-FUZ.showNotes"/>
@@ -26733,20 +27125,5585 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="yTv-Lq-Y3H.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference key="yTv-Lq-Y3H.IBUserGuides" ref="0"/>
<boolean value="NO" key="yTv-Lq-Y3H.showNotes"/>
+ <string key="zPq-c4-GfK.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
<nil key="activeLocalization"/>
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">ImageAndTextCell</string>
+ <string key="superclassName">NSTextFieldCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/ImageAndTextCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPComboPopupButton</string>
+ <string key="superclassName">NSPopUpButton</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier" id="514582401">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPComboPopupButton.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPComboPopupButtonCell</string>
+ <string key="superclassName">NSPopUpButtonCell</string>
+ <reference key="sourceIdentifier" ref="514582401"/>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <string key="superclassName">SPTableView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="affectedRowsText">id</string>
+ <string key="autohelpMenuItem">NSMenuItem</string>
+ <string key="autoindentMenuItem">NSMenuItem</string>
+ <string key="autopairMenuItem">NSMenuItem</string>
+ <string key="autouppercaseKeywordsMenuItem">NSMenuItem</string>
+ <string key="clearHistoryMenuItem">NSMenuItem</string>
+ <string key="commentCurrentQueryMenuItem">NSMenuItem</string>
+ <string key="commentLineOrSelectionMenuItem">NSMenuItem</string>
+ <string key="completionListMenuItem">NSMenuItem</string>
+ <string key="copyHistoryMenuItem">NSMenuItem</string>
+ <string key="customQueryScrollView">NSScrollView</string>
+ <string key="customQueryView">SPCopyTable</string>
+ <string key="editorFontMenuItem">NSMenuItem</string>
+ <string key="encodingPopUp">NSPopUpButton</string>
+ <string key="errorText">id</string>
+ <string key="errorTextScrollView">NSScrollView</string>
+ <string key="errorTextTitle">NSTextField</string>
+ <string key="helpNavigator">NSSegmentedControl</string>
+ <string key="helpSearchField">NSSearchField</string>
+ <string key="helpSearchFieldCell">NSSearchFieldCell</string>
+ <string key="helpTargetSelector">NSSegmentedControl</string>
+ <string key="helpWebView">WebView</string>
+ <string key="helpWebViewWindow">NSWindow</string>
+ <string key="nextHistoryMenuItem">NSMenuItem</string>
+ <string key="previousHistoryMenuItem">NSMenuItem</string>
+ <string key="queryEditorSplitView">SPSplitView</string>
+ <string key="queryFavoriteNameTextField">NSTextField</string>
+ <string key="queryFavoritesButton">id</string>
+ <string key="queryFavoritesSaveAllMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSaveAsMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSearchField">NSSearchField</string>
+ <string key="queryFavoritesSearchFieldView">id</string>
+ <string key="queryFavoritesSearchMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSheet">NSWindow</string>
+ <string key="queryHistoryButton">id</string>
+ <string key="queryHistorySearchField">NSSearchField</string>
+ <string key="queryHistorySearchFieldView">id</string>
+ <string key="queryHistorySearchMenuItem">NSMenuItem</string>
+ <string key="queryInfoButton">NSButton</string>
+ <string key="queryInfoPaneSplitView">SPSplitView</string>
+ <string key="runAllButton">id</string>
+ <string key="runPrimaryActionButton">id</string>
+ <string key="runPrimaryActionButtonAsSelection">id</string>
+ <string key="runPrimaryActionMenuItem">NSMenuItem</string>
+ <string key="runSecondaryActionMenuItem">NSMenuItem</string>
+ <string key="saveHistoryMenuItem">NSMenuItem</string>
+ <string key="saveQueryFavoriteButton">NSButton</string>
+ <string key="saveQueryFavoriteGlobal">NSButton</string>
+ <string key="shiftLeftMenuItem">NSMenuItem</string>
+ <string key="shiftRightMenuItem">NSMenuItem</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tablesListInstance">id</string>
+ <string key="textView">SPTextView</string>
+ <string key="valueSheet">id</string>
+ <string key="valueTextField">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="affectedRowsText">
+ <string key="name">affectedRowsText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autohelpMenuItem">
+ <string key="name">autohelpMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autoindentMenuItem">
+ <string key="name">autoindentMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autopairMenuItem">
+ <string key="name">autopairMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autouppercaseKeywordsMenuItem">
+ <string key="name">autouppercaseKeywordsMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="clearHistoryMenuItem">
+ <string key="name">clearHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="commentCurrentQueryMenuItem">
+ <string key="name">commentCurrentQueryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="commentLineOrSelectionMenuItem">
+ <string key="name">commentLineOrSelectionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="completionListMenuItem">
+ <string key="name">completionListMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyHistoryMenuItem">
+ <string key="name">copyHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryScrollView">
+ <string key="name">customQueryScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryView">
+ <string key="name">customQueryView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editorFontMenuItem">
+ <string key="name">editorFontMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopUp">
+ <string key="name">encodingPopUp</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorText">
+ <string key="name">errorText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorTextScrollView">
+ <string key="name">errorTextScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorTextTitle">
+ <string key="name">errorTextTitle</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpNavigator">
+ <string key="name">helpNavigator</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpSearchField">
+ <string key="name">helpSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpSearchFieldCell">
+ <string key="name">helpSearchFieldCell</string>
+ <string key="candidateClassName">NSSearchFieldCell</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpTargetSelector">
+ <string key="name">helpTargetSelector</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpWebView">
+ <string key="name">helpWebView</string>
+ <string key="candidateClassName">WebView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpWebViewWindow">
+ <string key="name">helpWebViewWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="nextHistoryMenuItem">
+ <string key="name">nextHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="previousHistoryMenuItem">
+ <string key="name">previousHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryEditorSplitView">
+ <string key="name">queryEditorSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoriteNameTextField">
+ <string key="name">queryFavoriteNameTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesButton">
+ <string key="name">queryFavoritesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSaveAllMenuItem">
+ <string key="name">queryFavoritesSaveAllMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSaveAsMenuItem">
+ <string key="name">queryFavoritesSaveAsMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchField">
+ <string key="name">queryFavoritesSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchFieldView">
+ <string key="name">queryFavoritesSearchFieldView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchMenuItem">
+ <string key="name">queryFavoritesSearchMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSheet">
+ <string key="name">queryFavoritesSheet</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistoryButton">
+ <string key="name">queryHistoryButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchField">
+ <string key="name">queryHistorySearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchFieldView">
+ <string key="name">queryHistorySearchFieldView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchMenuItem">
+ <string key="name">queryHistorySearchMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryInfoButton">
+ <string key="name">queryInfoButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryInfoPaneSplitView">
+ <string key="name">queryInfoPaneSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runAllButton">
+ <string key="name">runAllButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionButton">
+ <string key="name">runPrimaryActionButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionButtonAsSelection">
+ <string key="name">runPrimaryActionButtonAsSelection</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionMenuItem">
+ <string key="name">runPrimaryActionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runSecondaryActionMenuItem">
+ <string key="name">runSecondaryActionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveHistoryMenuItem">
+ <string key="name">saveHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveQueryFavoriteButton">
+ <string key="name">saveQueryFavoriteButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveQueryFavoriteGlobal">
+ <string key="name">saveQueryFavoriteGlobal</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="shiftLeftMenuItem">
+ <string key="name">shiftLeftMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="shiftRightMenuItem">
+ <string key="name">shiftRightMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="textView">
+ <string key="name">textView</string>
+ <string key="candidateClassName">SPTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="valueSheet">
+ <string key="name">valueSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="valueTextField">
+ <string key="name">valueTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="searchInDocForWebViewSelection:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="showHelpForWebViewSelection:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
+ <string key="name">searchInDocForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForWebViewSelection:">
+ <string key="name">showHelpForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDataImport</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="cancelProgressBar:">id</string>
+ <string key="changeFormat:">id</string>
+ <string key="closeSheet:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="cancelProgressBar:">
+ <string key="name">cancelProgressBar:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeFormat:">
+ <string key="name">changeFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addCreateTableSwitch">id</string>
+ <string key="addDropTableSwitch">id</string>
+ <string key="addErrorsSwitch">id</string>
+ <string key="addTableContentSwitch">id</string>
+ <string key="csvFullStreamingSwitch">id</string>
+ <string key="customQueryInstance">id</string>
+ <string key="errorsSheet">id</string>
+ <string key="errorsView">id</string>
+ <string key="importEncodingPopup">NSPopUpButton</string>
+ <string key="importFieldMapperSheetWindow">id</string>
+ <string key="importFieldNamesSwitch">NSButton</string>
+ <string key="importFieldsEnclosedField">id</string>
+ <string key="importFieldsEscapedField">id</string>
+ <string key="importFieldsTerminatedField">id</string>
+ <string key="importFormatPopup">NSPopUpButton</string>
+ <string key="importFromClipboardAccessoryView">id</string>
+ <string key="importFromClipboardSheet">id</string>
+ <string key="importFromClipboardTextView">NSTextView</string>
+ <string key="importLinesTerminatedField">id</string>
+ <string key="importSQLErrorHandlingPopup">NSPopUpButton</string>
+ <string key="importTabView">id</string>
+ <string key="importView">id</string>
+ <string key="multiCSVFullStreamingSwitch">id</string>
+ <string key="multiXMLFullStreamingSwitch">id</string>
+ <string key="singleProgressBar">id</string>
+ <string key="singleProgressSheet">id</string>
+ <string key="singleProgressText">id</string>
+ <string key="singleProgressTitle">id</string>
+ <string key="sqlCompressionSwitch">id</string>
+ <string key="sqlFullStreamingSwitch">id</string>
+ <string key="tableContentInstance">id</string>
+ <string key="tableDataInstance">id</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tableSourceInstance">id</string>
+ <string key="tablesListInstance">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addCreateTableSwitch">
+ <string key="name">addCreateTableSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addDropTableSwitch">
+ <string key="name">addDropTableSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addErrorsSwitch">
+ <string key="name">addErrorsSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addTableContentSwitch">
+ <string key="name">addTableContentSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="csvFullStreamingSwitch">
+ <string key="name">csvFullStreamingSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorsSheet">
+ <string key="name">errorsSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorsView">
+ <string key="name">errorsView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importEncodingPopup">
+ <string key="name">importEncodingPopup</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFieldMapperSheetWindow">
+ <string key="name">importFieldMapperSheetWindow</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFieldNamesSwitch">
+ <string key="name">importFieldNamesSwitch</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFieldsEnclosedField">
+ <string key="name">importFieldsEnclosedField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFieldsEscapedField">
+ <string key="name">importFieldsEscapedField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFieldsTerminatedField">
+ <string key="name">importFieldsTerminatedField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFormatPopup">
+ <string key="name">importFormatPopup</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFromClipboardAccessoryView">
+ <string key="name">importFromClipboardAccessoryView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFromClipboardSheet">
+ <string key="name">importFromClipboardSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFromClipboardTextView">
+ <string key="name">importFromClipboardTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importLinesTerminatedField">
+ <string key="name">importLinesTerminatedField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importSQLErrorHandlingPopup">
+ <string key="name">importSQLErrorHandlingPopup</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importTabView">
+ <string key="name">importTabView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importView">
+ <string key="name">importView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="multiCSVFullStreamingSwitch">
+ <string key="name">multiCSVFullStreamingSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="multiXMLFullStreamingSwitch">
+ <string key="name">multiXMLFullStreamingSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="singleProgressBar">
+ <string key="name">singleProgressBar</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="singleProgressSheet">
+ <string key="name">singleProgressSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="singleProgressText">
+ <string key="name">singleProgressText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="singleProgressTitle">
+ <string key="name">singleProgressTitle</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sqlCompressionSwitch">
+ <string key="name">sqlCompressionSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sqlFullStreamingSwitch">
+ <string key="name">sqlFullStreamingSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentInstance">
+ <string key="name">tableContentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDataImport.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDataImport</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="cancelProgressBar:">id</string>
+ <string key="changeFormat:">id</string>
+ <string key="closeSheet:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="cancelProgressBar:">
+ <string key="name">cancelProgressBar:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeFormat:">
+ <string key="name">changeFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDataImport.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseData</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">closeErrorConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionDelegate.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addDatabaseButton">id</string>
+ <string key="chooseDatabaseButton">id</string>
+ <string key="connectionErrorDialog">NSWindow</string>
+ <string key="contentViewSplitter">SPSplitView</string>
+ <string key="copyDatabaseButton">id</string>
+ <string key="copyDatabaseDataButton">NSButton</string>
+ <string key="copyDatabaseMessageField">id</string>
+ <string key="createTableSyntaxTextField">NSTextField</string>
+ <string key="createTableSyntaxTextView">NSTextView</string>
+ <string key="createTableSyntaxWindow">NSWindow</string>
+ <string key="customQueryInstance">id</string>
+ <string key="customQueryTextView">NSTextView</string>
+ <string key="databaseAlterCollationButton">NSPopUpButton</string>
+ <string key="databaseAlterEncodingButton">NSPopUpButton</string>
+ <string key="databaseAlterSheet">id</string>
+ <string key="databaseCollationButton">id</string>
+ <string key="databaseCopyNameField">id</string>
+ <string key="databaseCopySheet">id</string>
+ <string key="databaseDataInstance">id</string>
+ <string key="databaseEncodingButton">id</string>
+ <string key="databaseNameField">id</string>
+ <string key="databaseRenameNameField">id</string>
+ <string key="databaseRenameSheet">id</string>
+ <string key="databaseSheet">id</string>
+ <string key="dbTablesTableView">NSTableView</string>
+ <string key="documentActivityScrollView">NSScrollView</string>
+ <string key="encodingPopUp">NSPopUpButton</string>
+ <string key="exportControllerInstance">id</string>
+ <string key="extendedTableInfoInstance">id</string>
+ <string key="favoritesButton">id</string>
+ <string key="historyControl">id</string>
+ <string key="inputTextWindow">id</string>
+ <string key="inputTextWindowHeader">id</string>
+ <string key="inputTextWindowMessage">id</string>
+ <string key="inputTextWindowSecureTextField">id</string>
+ <string key="listFilterField">NSSearchField</string>
+ <string key="parentView">NSView</string>
+ <string key="queryProgressBar">NSProgressIndicator</string>
+ <string key="renameDatabaseButton">id</string>
+ <string key="renameDatabaseMessageField">id</string>
+ <string key="saveConnectionAccessory">id</string>
+ <string key="saveConnectionAutoConnect">NSButton</string>
+ <string key="saveConnectionEncrypt">NSButton</string>
+ <string key="saveConnectionEncryptString">NSSecureTextField</string>
+ <string key="saveConnectionIncludeData">NSButton</string>
+ <string key="saveConnectionIncludeQuery">NSButton</string>
+ <string key="saveConnectionSavePassword">NSButton</string>
+ <string key="saveConnectionSavePasswordAlert">id</string>
+ <string key="spHistoryControllerInstance">id</string>
+ <string key="statusTableAccessoryView">id</string>
+ <string key="statusTableCopyChecksum">id</string>
+ <string key="statusTableView">id</string>
+ <string key="tableContentInstance">SPTableContent</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDumpInstance">id</string>
+ <string key="tableInfoScrollView">NSScrollView</string>
+ <string key="tableInfoTable">NSTableView</string>
+ <string key="tableRelationsInstance">id</string>
+ <string key="tableSourceInstance">SPTableStructure</string>
+ <string key="tableTabView">NSTabView</string>
+ <string key="tableTriggersInstance">id</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ <string key="taskCancelButton">NSButton</string>
+ <string key="taskDescriptionText">id</string>
+ <string key="taskProgressIndicator">id</string>
+ <string key="taskProgressLayer">NSBox</string>
+ <string key="titleAccessoryView">id</string>
+ <string key="titleImageView">id</string>
+ <string key="titleStringView">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addDatabaseButton">
+ <string key="name">addDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="chooseDatabaseButton">
+ <string key="name">chooseDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="connectionErrorDialog">
+ <string key="name">connectionErrorDialog</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentViewSplitter">
+ <string key="name">contentViewSplitter</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseButton">
+ <string key="name">copyDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseDataButton">
+ <string key="name">copyDatabaseDataButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseMessageField">
+ <string key="name">copyDatabaseMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxTextField">
+ <string key="name">createTableSyntaxTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxTextView">
+ <string key="name">createTableSyntaxTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxWindow">
+ <string key="name">createTableSyntaxWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryTextView">
+ <string key="name">customQueryTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterCollationButton">
+ <string key="name">databaseAlterCollationButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterEncodingButton">
+ <string key="name">databaseAlterEncodingButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterSheet">
+ <string key="name">databaseAlterSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCollationButton">
+ <string key="name">databaseCollationButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCopyNameField">
+ <string key="name">databaseCopyNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCopySheet">
+ <string key="name">databaseCopySheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseEncodingButton">
+ <string key="name">databaseEncodingButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseNameField">
+ <string key="name">databaseNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseRenameNameField">
+ <string key="name">databaseRenameNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseRenameSheet">
+ <string key="name">databaseRenameSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseSheet">
+ <string key="name">databaseSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="dbTablesTableView">
+ <string key="name">dbTablesTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="documentActivityScrollView">
+ <string key="name">documentActivityScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopUp">
+ <string key="name">encodingPopUp</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportControllerInstance">
+ <string key="name">exportControllerInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="favoritesButton">
+ <string key="name">favoritesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="historyControl">
+ <string key="name">historyControl</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindow">
+ <string key="name">inputTextWindow</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowHeader">
+ <string key="name">inputTextWindowHeader</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowMessage">
+ <string key="name">inputTextWindowMessage</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowSecureTextField">
+ <string key="name">inputTextWindowSecureTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="listFilterField">
+ <string key="name">listFilterField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="parentView">
+ <string key="name">parentView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryProgressBar">
+ <string key="name">queryProgressBar</string>
+ <string key="candidateClassName">NSProgressIndicator</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameDatabaseButton">
+ <string key="name">renameDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameDatabaseMessageField">
+ <string key="name">renameDatabaseMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionAccessory">
+ <string key="name">saveConnectionAccessory</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionAutoConnect">
+ <string key="name">saveConnectionAutoConnect</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionEncrypt">
+ <string key="name">saveConnectionEncrypt</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionEncryptString">
+ <string key="name">saveConnectionEncryptString</string>
+ <string key="candidateClassName">NSSecureTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionIncludeData">
+ <string key="name">saveConnectionIncludeData</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionIncludeQuery">
+ <string key="name">saveConnectionIncludeQuery</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionSavePassword">
+ <string key="name">saveConnectionSavePassword</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionSavePasswordAlert">
+ <string key="name">saveConnectionSavePasswordAlert</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableAccessoryView">
+ <string key="name">statusTableAccessoryView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableCopyChecksum">
+ <string key="name">statusTableCopyChecksum</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableView">
+ <string key="name">statusTableView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentInstance">
+ <string key="name">tableContentInstance</string>
+ <string key="candidateClassName">SPTableContent</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDumpInstance">
+ <string key="name">tableDumpInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoScrollView">
+ <string key="name">tableInfoScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoTable">
+ <string key="name">tableInfoTable</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRelationsInstance">
+ <string key="name">tableRelationsInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTabView">
+ <string key="name">tableTabView</string>
+ <string key="candidateClassName">NSTabView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTriggersInstance">
+ <string key="name">tableTriggersInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskCancelButton">
+ <string key="name">taskCancelButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskDescriptionText">
+ <string key="name">taskDescriptionText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskProgressIndicator">
+ <string key="name">taskProgressIndicator</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskProgressLayer">
+ <string key="name">taskProgressLayer</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleAccessoryView">
+ <string key="name">titleAccessoryView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleImageView">
+ <string key="name">titleImageView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleStringView">
+ <string key="name">titleStringView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPrintController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExportController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="cancelExport:">id</string>
+ <string key="changeExportCompressionFormat:">id</string>
+ <string key="changeExportOutputPath:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="export:">id</string>
+ <string key="exportCustomQueryResultAsFormat:">id</string>
+ <string key="refreshTableList:">id</string>
+ <string key="selectDeselectAllTables:">id</string>
+ <string key="switchInput:">id</string>
+ <string key="toggleAdvancedExportOptionsView:">id</string>
+ <string key="toggleCustomFilenameFormatView:">id</string>
+ <string key="toggleNewFilePerTable:">NSButton</string>
+ <string key="toggleSQLIncludeContent:">NSButton</string>
+ <string key="toggleSQLIncludeDropSyntax:">NSButton</string>
+ <string key="toggleSQLIncludeStructure:">NSButton</string>
+ <string key="toggleXMLOutputFormat:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="cancelExport:">
+ <string key="name">cancelExport:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeExportCompressionFormat:">
+ <string key="name">changeExportCompressionFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeExportOutputPath:">
+ <string key="name">changeExportOutputPath:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportCustomQueryResultAsFormat:">
+ <string key="name">exportCustomQueryResultAsFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTableList:">
+ <string key="name">refreshTableList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectDeselectAllTables:">
+ <string key="name">selectDeselectAllTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchInput:">
+ <string key="name">switchInput:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedExportOptionsView:">
+ <string key="name">toggleAdvancedExportOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleCustomFilenameFormatView:">
+ <string key="name">toggleCustomFilenameFormatView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNewFilePerTable:">
+ <string key="name">toggleNewFilePerTable:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeContent:">
+ <string key="name">toggleSQLIncludeContent:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeDropSyntax:">
+ <string key="name">toggleSQLIncludeDropSyntax:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeStructure:">
+ <string key="name">toggleSQLIncludeStructure:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleXMLOutputFormat:">
+ <string key="name">toggleXMLOutputFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="customQueryInstance">SPCustomQuery</string>
+ <string key="errorsTextView">NSTextView</string>
+ <string key="errorsWindow">NSWindow</string>
+ <string key="exportAdvancedOptionsView">NSView</string>
+ <string key="exportAdvancedOptionsViewButton">NSButton</string>
+ <string key="exportAdvancedOptionsViewLabelButton">NSButton</string>
+ <string key="exportButton">NSButton</string>
+ <string key="exportCSVFieldsEscapedField">NSComboBox</string>
+ <string key="exportCSVFieldsTerminatedField">NSComboBox</string>
+ <string key="exportCSVFieldsWrappedField">NSComboBox</string>
+ <string key="exportCSVIncludeFieldNamesCheck">NSButton</string>
+ <string key="exportCSVLinesTerminatedField">NSComboBox</string>
+ <string key="exportCSVNULLValuesAsTextField">NSTextField</string>
+ <string key="exportCustomFilenameTokenField">NSTokenField</string>
+ <string key="exportCustomFilenameTokensField">NSTokenField</string>
+ <string key="exportCustomFilenameView">NSView</string>
+ <string key="exportCustomFilenameViewButton">NSButton</string>
+ <string key="exportCustomFilenameViewLabelButton">NSButton</string>
+ <string key="exportDeselectAllTablesButton">NSButton</string>
+ <string key="exportDotForceLowerTableNamesCheck">NSButton</string>
+ <string key="exportFilePerTableCheck">NSButton</string>
+ <string key="exportFilenameDividerBox">NSBox</string>
+ <string key="exportFormatInfoText">NSTextField</string>
+ <string key="exportInputPopUpButton">NSPopUpButton</string>
+ <string key="exportOptionsTabBar">NSTabView</string>
+ <string key="exportOutputCompressionFormatPopupButton">NSPopUpButton</string>
+ <string key="exportPathField">NSTextField</string>
+ <string key="exportProcessLowMemoryButton">NSButton</string>
+ <string key="exportProgressIndicator">NSProgressIndicator</string>
+ <string key="exportProgressText">NSTextField</string>
+ <string key="exportProgressTitle">NSTextField</string>
+ <string key="exportProgressWindow">NSWindow</string>
+ <string key="exportRefreshTablesButton">NSButton</string>
+ <string key="exportSQLBLOBFieldsAsHexCheck">NSButton</string>
+ <string key="exportSQLIncludeAutoIncrementValueButton">NSButton</string>
+ <string key="exportSQLIncludeContentCheck">NSButton</string>
+ <string key="exportSQLIncludeDropSyntaxCheck">NSButton</string>
+ <string key="exportSQLIncludeErrorsCheck">NSButton</string>
+ <string key="exportSQLIncludeStructureCheck">NSButton</string>
+ <string key="exportSQLInsertDividerPopUpButton">NSPopUpButton</string>
+ <string key="exportSQLInsertNValueTextField">NSTextField</string>
+ <string key="exportSelectAllTablesButton">NSButton</string>
+ <string key="exportTableList">NSTableView</string>
+ <string key="exportTableListButtonBar">NSBox</string>
+ <string key="exportTablelistScrollView">NSScrollView</string>
+ <string key="exportTypeTabBar">NSTabView</string>
+ <string key="exportUseUTF8BOMButton">NSButton</string>
+ <string key="exportXMLFormatPopUpButton">NSPopUpButton</string>
+ <string key="exportXMLIncludeContent">NSButton</string>
+ <string key="exportXMLIncludeStructure">NSButton</string>
+ <string key="exportXMLNULLValuesAsTextField">NSTextField</string>
+ <string key="exporterView">NSView</string>
+ <string key="tableContentInstance">SPTableContent</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">SPCustomQuery</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorsTextView">
+ <string key="name">errorsTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorsWindow">
+ <string key="name">errorsWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportAdvancedOptionsView">
+ <string key="name">exportAdvancedOptionsView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportAdvancedOptionsViewButton">
+ <string key="name">exportAdvancedOptionsViewButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportAdvancedOptionsViewLabelButton">
+ <string key="name">exportAdvancedOptionsViewLabelButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportButton">
+ <string key="name">exportButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportCSVFieldsEscapedField">
+ <string key="name">exportCSVFieldsEscapedField</string>
+ <string key="candidateClassName">NSComboBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportCSVFieldsTerminatedField">
+ <string key="name">exportCSVFieldsTerminatedField</string>
+ <string key="candidateClassName">NSComboBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportCSVFieldsWrappedField">
+ <string key="name">exportCSVFieldsWrappedField</string>
+ <string key="candidateClassName">NSComboBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportCSVIncludeFieldNamesCheck">
+ <string key="name">exportCSVIncludeFieldNamesCheck</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportCSVLinesTerminatedField">
+ <string key="name">exportCSVLinesTerminatedField</string>
+ <string key="candidateClassName">NSComboBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportCSVNULLValuesAsTextField">
+ <string key="name">exportCSVNULLValuesAsTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportCustomFilenameTokenField">
+ <string key="name">exportCustomFilenameTokenField</string>
+ <string key="candidateClassName">NSTokenField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportCustomFilenameTokensField">
+ <string key="name">exportCustomFilenameTokensField</string>
+ <string key="candidateClassName">NSTokenField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportCustomFilenameView">
+ <string key="name">exportCustomFilenameView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportCustomFilenameViewButton">
+ <string key="name">exportCustomFilenameViewButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportCustomFilenameViewLabelButton">
+ <string key="name">exportCustomFilenameViewLabelButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportDeselectAllTablesButton">
+ <string key="name">exportDeselectAllTablesButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportDotForceLowerTableNamesCheck">
+ <string key="name">exportDotForceLowerTableNamesCheck</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportFilePerTableCheck">
+ <string key="name">exportFilePerTableCheck</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportFilenameDividerBox">
+ <string key="name">exportFilenameDividerBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportFormatInfoText">
+ <string key="name">exportFormatInfoText</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportInputPopUpButton">
+ <string key="name">exportInputPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportOptionsTabBar">
+ <string key="name">exportOptionsTabBar</string>
+ <string key="candidateClassName">NSTabView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportOutputCompressionFormatPopupButton">
+ <string key="name">exportOutputCompressionFormatPopupButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportPathField">
+ <string key="name">exportPathField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportProcessLowMemoryButton">
+ <string key="name">exportProcessLowMemoryButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportProgressIndicator">
+ <string key="name">exportProgressIndicator</string>
+ <string key="candidateClassName">NSProgressIndicator</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportProgressText">
+ <string key="name">exportProgressText</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportProgressTitle">
+ <string key="name">exportProgressTitle</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportProgressWindow">
+ <string key="name">exportProgressWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportRefreshTablesButton">
+ <string key="name">exportRefreshTablesButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportSQLBLOBFieldsAsHexCheck">
+ <string key="name">exportSQLBLOBFieldsAsHexCheck</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportSQLIncludeAutoIncrementValueButton">
+ <string key="name">exportSQLIncludeAutoIncrementValueButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportSQLIncludeContentCheck">
+ <string key="name">exportSQLIncludeContentCheck</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportSQLIncludeDropSyntaxCheck">
+ <string key="name">exportSQLIncludeDropSyntaxCheck</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportSQLIncludeErrorsCheck">
+ <string key="name">exportSQLIncludeErrorsCheck</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportSQLIncludeStructureCheck">
+ <string key="name">exportSQLIncludeStructureCheck</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportSQLInsertDividerPopUpButton">
+ <string key="name">exportSQLInsertDividerPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportSQLInsertNValueTextField">
+ <string key="name">exportSQLInsertNValueTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportSelectAllTablesButton">
+ <string key="name">exportSelectAllTablesButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportTableList">
+ <string key="name">exportTableList</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportTableListButtonBar">
+ <string key="name">exportTableListButtonBar</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportTablelistScrollView">
+ <string key="name">exportTablelistScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportTypeTabBar">
+ <string key="name">exportTypeTabBar</string>
+ <string key="candidateClassName">NSTabView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportUseUTF8BOMButton">
+ <string key="name">exportUseUTF8BOMButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportXMLFormatPopUpButton">
+ <string key="name">exportXMLFormatPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportXMLIncludeContent">
+ <string key="name">exportXMLIncludeContent</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportXMLIncludeStructure">
+ <string key="name">exportXMLIncludeStructure</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportXMLNULLValuesAsTextField">
+ <string key="name">exportXMLNULLValuesAsTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exporterView">
+ <string key="name">exporterView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentInstance">
+ <string key="name">tableContentInstance</string>
+ <string key="candidateClassName">SPTableContent</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExportController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExportController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="cancelExport:">id</string>
+ <string key="changeExportCompressionFormat:">id</string>
+ <string key="changeExportOutputPath:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="export:">id</string>
+ <string key="exportCustomQueryResultAsFormat:">id</string>
+ <string key="refreshTableList:">id</string>
+ <string key="selectDeselectAllTables:">id</string>
+ <string key="switchInput:">id</string>
+ <string key="toggleAdvancedExportOptionsView:">id</string>
+ <string key="toggleCustomFilenameFormatView:">id</string>
+ <string key="toggleNewFilePerTable:">NSButton</string>
+ <string key="toggleSQLIncludeContent:">NSButton</string>
+ <string key="toggleSQLIncludeDropSyntax:">NSButton</string>
+ <string key="toggleSQLIncludeStructure:">NSButton</string>
+ <string key="toggleXMLOutputFormat:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="cancelExport:">
+ <string key="name">cancelExport:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeExportCompressionFormat:">
+ <string key="name">changeExportCompressionFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeExportOutputPath:">
+ <string key="name">changeExportOutputPath:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportCustomQueryResultAsFormat:">
+ <string key="name">exportCustomQueryResultAsFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTableList:">
+ <string key="name">refreshTableList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectDeselectAllTables:">
+ <string key="name">selectDeselectAllTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchInput:">
+ <string key="name">switchInput:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedExportOptionsView:">
+ <string key="name">toggleAdvancedExportOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleCustomFilenameFormatView:">
+ <string key="name">toggleCustomFilenameFormatView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNewFilePerTable:">
+ <string key="name">toggleNewFilePerTable:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeContent:">
+ <string key="name">toggleSQLIncludeContent:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeDropSyntax:">
+ <string key="name">toggleSQLIncludeDropSyntax:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeStructure:">
+ <string key="name">toggleSQLIncludeStructure:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleXMLOutputFormat:">
+ <string key="name">toggleXMLOutputFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExportController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="resetAutoIncrementResetButton">id</string>
+ <string key="tableCollationPopUpButton">NSPopUpButton</string>
+ <string key="tableCommentsTextView">NSTextView</string>
+ <string key="tableCreateSyntaxTextView">NSTextView</string>
+ <string key="tableCreatedAt">NSTextField</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDataSize">NSTextField</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tableEncodingPopUpButton">NSPopUpButton</string>
+ <string key="tableIndexSize">NSTextField</string>
+ <string key="tableMaxDataSize">NSTextField</string>
+ <string key="tableRowAutoIncrement">NSTextField</string>
+ <string key="tableRowAvgLength">NSTextField</string>
+ <string key="tableRowFormat">NSTextField</string>
+ <string key="tableRowNumber">NSTextField</string>
+ <string key="tableSizeFree">NSTextField</string>
+ <string key="tableSourceInstance">id</string>
+ <string key="tableTypePopUpButton">NSPopUpButton</string>
+ <string key="tableUpdatedAt">NSTextField</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementResetButton">
+ <string key="name">resetAutoIncrementResetButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCollationPopUpButton">
+ <string key="name">tableCollationPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCommentsTextView">
+ <string key="name">tableCommentsTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCreateSyntaxTextView">
+ <string key="name">tableCreateSyntaxTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCreatedAt">
+ <string key="name">tableCreatedAt</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataSize">
+ <string key="name">tableDataSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableEncodingPopUpButton">
+ <string key="name">tableEncodingPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableIndexSize">
+ <string key="name">tableIndexSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableMaxDataSize">
+ <string key="name">tableMaxDataSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowAutoIncrement">
+ <string key="name">tableRowAutoIncrement</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowAvgLength">
+ <string key="name">tableRowAvgLength</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowFormat">
+ <string key="name">tableRowFormat</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowNumber">
+ <string key="name">tableRowNumber</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSizeFree">
+ <string key="name">tableSizeFree</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTypePopUpButton">
+ <string key="name">tableTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableUpdatedAt">
+ <string key="name">tableUpdatedAt</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <string key="superclassName">NSObject</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="historyControl">NSSegmentedControl</string>
+ <string key="theDocument">SPDatabaseDocument</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="historyControl">
+ <string key="name">historyControl</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="theDocument">
+ <string key="name">theDocument</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addIndexButton">NSButton</string>
+ <string key="addIndexedColumnButton">NSButton</string>
+ <string key="anchoredButtonBar">NSBox</string>
+ <string key="confirmAddIndexButton">NSButton</string>
+ <string key="dbDocument">SPDatabaseDocument</string>
+ <string key="indexAdvancedOptionsView">NSView</string>
+ <string key="indexAdvancedOptionsViewButton">NSButton</string>
+ <string key="indexAdvancedOptionsViewLabelButton">NSButton</string>
+ <string key="indexKeyBlockSizeTextField">NSTextField</string>
+ <string key="indexNameLabel">NSTextField</string>
+ <string key="indexNameTextField">NSTextField</string>
+ <string key="indexSizeTableColumn">NSTableColumn</string>
+ <string key="indexStorageTypePopUpButton">NSPopUpButton</string>
+ <string key="indexTypeLabel">NSTextField</string>
+ <string key="indexTypePopUpButton">NSPopUpButton</string>
+ <string key="indexedColumnsScrollView">NSScrollView</string>
+ <string key="indexedColumnsTableView">NSTableView</string>
+ <string key="indexesTableView">SPTableView</string>
+ <string key="removeIndexButton">NSButton</string>
+ <string key="removeIndexedColumnButton">NSButton</string>
+ <string key="tableData">SPTableData</string>
+ <string key="tableStructure">SPTableStructure</string>
+ <string key="tablesList">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addIndexButton">
+ <string key="name">addIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addIndexedColumnButton">
+ <string key="name">addIndexedColumnButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="anchoredButtonBar">
+ <string key="name">anchoredButtonBar</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="confirmAddIndexButton">
+ <string key="name">confirmAddIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="dbDocument">
+ <string key="name">dbDocument</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsView">
+ <string key="name">indexAdvancedOptionsView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsViewButton">
+ <string key="name">indexAdvancedOptionsViewButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsViewLabelButton">
+ <string key="name">indexAdvancedOptionsViewLabelButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexKeyBlockSizeTextField">
+ <string key="name">indexKeyBlockSizeTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexNameLabel">
+ <string key="name">indexNameLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexNameTextField">
+ <string key="name">indexNameTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexSizeTableColumn">
+ <string key="name">indexSizeTableColumn</string>
+ <string key="candidateClassName">NSTableColumn</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexStorageTypePopUpButton">
+ <string key="name">indexStorageTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexTypeLabel">
+ <string key="name">indexTypeLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexTypePopUpButton">
+ <string key="name">indexTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexedColumnsScrollView">
+ <string key="name">indexedColumnsScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexedColumnsTableView">
+ <string key="name">indexedColumnsTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesTableView">
+ <string key="name">indexesTableView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexButton">
+ <string key="name">removeIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexedColumnButton">
+ <string key="name">removeIndexedColumnButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableData">
+ <string key="name">tableData</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableStructure">
+ <string key="name">tableStructure</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesList">
+ <string key="name">tablesList</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPProcessListController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeSheet:">id</string>
+ <string key="copy:">id</string>
+ <string key="killProcessConnection:">id</string>
+ <string key="killProcessQuery:">id</string>
+ <string key="refreshProcessList:">id</string>
+ <string key="saveServerProcesses:">id</string>
+ <string key="setAutoRefreshInterval:">id</string>
+ <string key="setCustomAutoRefreshInterval:">id</string>
+ <string key="toggeleShowFullProcessList:">NSMenuItem</string>
+ <string key="toggleProcessListAutoRefresh:">NSButton</string>
+ <string key="toggleShowProcessID:">NSMenuItem</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copy:">
+ <string key="name">copy:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="killProcessConnection:">
+ <string key="name">killProcessConnection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="killProcessQuery:">
+ <string key="name">killProcessQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshProcessList:">
+ <string key="name">refreshProcessList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveServerProcesses:">
+ <string key="name">saveServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setAutoRefreshInterval:">
+ <string key="name">setAutoRefreshInterval:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCustomAutoRefreshInterval:">
+ <string key="name">setCustomAutoRefreshInterval:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggeleShowFullProcessList:">
+ <string key="name">toggeleShowFullProcessList:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="toggleProcessListAutoRefresh:">
+ <string key="name">toggleProcessListAutoRefresh:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowProcessID:">
+ <string key="name">toggleShowProcessID:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="autoRefreshButton">NSButton</string>
+ <string key="autoRefreshIntervalMenuItem">NSMenuItem</string>
+ <string key="customIntervalButton">NSButton</string>
+ <string key="customIntervalTextField">NSTextField</string>
+ <string key="customIntervalWindow">NSWindow</string>
+ <string key="filterProcessesSearchField">NSSearchField</string>
+ <string key="processListTableView">NSTableView</string>
+ <string key="processesCountTextField">NSTextField</string>
+ <string key="refreshProcessesButton">NSButton</string>
+ <string key="refreshProgressIndicator">NSProgressIndicator</string>
+ <string key="saveProcessesButton">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="autoRefreshButton">
+ <string key="name">autoRefreshButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autoRefreshIntervalMenuItem">
+ <string key="name">autoRefreshIntervalMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customIntervalButton">
+ <string key="name">customIntervalButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customIntervalTextField">
+ <string key="name">customIntervalTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customIntervalWindow">
+ <string key="name">customIntervalWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterProcessesSearchField">
+ <string key="name">filterProcessesSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="processListTableView">
+ <string key="name">processListTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="processesCountTextField">
+ <string key="name">processesCountTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="refreshProcessesButton">
+ <string key="name">refreshProcessesButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="refreshProgressIndicator">
+ <string key="name">refreshProgressIndicator</string>
+ <string key="candidateClassName">NSProgressIndicator</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveProcessesButton">
+ <string key="name">saveProcessesButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPProcessListController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPProcessListController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeSheet:">id</string>
+ <string key="copy:">id</string>
+ <string key="killProcessConnection:">id</string>
+ <string key="killProcessQuery:">id</string>
+ <string key="refreshProcessList:">id</string>
+ <string key="saveServerProcesses:">id</string>
+ <string key="setAutoRefreshInterval:">id</string>
+ <string key="setCustomAutoRefreshInterval:">id</string>
+ <string key="toggeleShowFullProcessList:">NSMenuItem</string>
+ <string key="toggleProcessListAutoRefresh:">NSButton</string>
+ <string key="toggleShowProcessID:">NSMenuItem</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copy:">
+ <string key="name">copy:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="killProcessConnection:">
+ <string key="name">killProcessConnection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="killProcessQuery:">
+ <string key="name">killProcessQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshProcessList:">
+ <string key="name">refreshProcessList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveServerProcesses:">
+ <string key="name">saveServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setAutoRefreshInterval:">
+ <string key="name">setAutoRefreshInterval:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCustomAutoRefreshInterval:">
+ <string key="name">setCustomAutoRefreshInterval:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggeleShowFullProcessList:">
+ <string key="name">toggeleShowFullProcessList:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="toggleProcessListAutoRefresh:">
+ <string key="name">toggleProcessListAutoRefresh:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowProcessID:">
+ <string key="name">toggleShowProcessID:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPProcessListController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPQueryController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="clearConsole:">id</string>
+ <string key="copy:">id</string>
+ <string key="saveConsoleAs:">id</string>
+ <string key="toggleShowConnections:">id</string>
+ <string key="toggleShowDatabases:">id</string>
+ <string key="toggleShowHelpStatements:">id</string>
+ <string key="toggleShowSelectShowStatements:">id</string>
+ <string key="toggleShowTimeStamps:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="clearConsole:">
+ <string key="name">clearConsole:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copy:">
+ <string key="name">copy:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConsoleAs:">
+ <string key="name">saveConsoleAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowConnections:">
+ <string key="name">toggleShowConnections:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowDatabases:">
+ <string key="name">toggleShowDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowHelpStatements:">
+ <string key="name">toggleShowHelpStatements:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowSelectShowStatements:">
+ <string key="name">toggleShowSelectShowStatements:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowTimeStamps:">
+ <string key="name">toggleShowTimeStamps:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="clearConsoleButton">NSButton</string>
+ <string key="consoleSearchField">NSSearchField</string>
+ <string key="consoleTableView">NSTableView</string>
+ <string key="includeConnectionButton">NSButton</string>
+ <string key="includeDatabaseButton">NSButton</string>
+ <string key="includeTimeStampsButton">NSButton</string>
+ <string key="loggingDisabledTextField">NSTextField</string>
+ <string key="progressIndicator">NSProgressIndicator</string>
+ <string key="saveConsoleButton">NSButton</string>
+ <string key="saveLogView">NSView</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="clearConsoleButton">
+ <string key="name">clearConsoleButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="consoleSearchField">
+ <string key="name">consoleSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="consoleTableView">
+ <string key="name">consoleTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="includeConnectionButton">
+ <string key="name">includeConnectionButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="includeDatabaseButton">
+ <string key="name">includeDatabaseButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="includeTimeStampsButton">
+ <string key="name">includeTimeStampsButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="loggingDisabledTextField">
+ <string key="name">loggingDisabledTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="progressIndicator">
+ <string key="name">progressIndicator</string>
+ <string key="candidateClassName">NSProgressIndicator</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConsoleButton">
+ <string key="name">saveConsoleButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveLogView">
+ <string key="name">saveLogView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPQueryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPQueryController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="clearConsole:">id</string>
+ <string key="saveConsoleAs:">id</string>
+ <string key="toggleShowConnections:">id</string>
+ <string key="toggleShowDatabases:">id</string>
+ <string key="toggleShowHelpStatements:">id</string>
+ <string key="toggleShowSelectShowStatements:">id</string>
+ <string key="toggleShowTimeStamps:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="clearConsole:">
+ <string key="name">clearConsole:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConsoleAs:">
+ <string key="name">saveConsoleAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowConnections:">
+ <string key="name">toggleShowConnections:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowDatabases:">
+ <string key="name">toggleShowDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowHelpStatements:">
+ <string key="name">toggleShowHelpStatements:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowSelectShowStatements:">
+ <string key="name">toggleShowSelectShowStatements:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowTimeStamps:">
+ <string key="name">toggleShowTimeStamps:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPQueryController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPServerVariablesController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeSheet:">id</string>
+ <string key="copy:">id</string>
+ <string key="copyServerVariableName:">id</string>
+ <string key="copyServerVariableValue:">id</string>
+ <string key="saveServerVariables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copy:">
+ <string key="name">copy:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyServerVariableName:">
+ <string key="name">copyServerVariableName:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyServerVariableValue:">
+ <string key="name">copyServerVariableValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveServerVariables:">
+ <string key="name">saveServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="filterVariablesSearchField">NSSearchField</string>
+ <string key="saveVariablesButton">NSButton</string>
+ <string key="variablesCountTextField">NSTextField</string>
+ <string key="variablesTableView">NSTableView</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="filterVariablesSearchField">
+ <string key="name">filterVariablesSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveVariablesButton">
+ <string key="name">saveVariablesButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="variablesCountTextField">
+ <string key="name">variablesCountTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="variablesTableView">
+ <string key="name">variablesTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPServerVariablesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPServerVariablesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeSheet:">id</string>
+ <string key="copy:">id</string>
+ <string key="copyServerVariableName:">id</string>
+ <string key="copyServerVariableValue:">id</string>
+ <string key="saveServerVariables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copy:">
+ <string key="name">copy:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyServerVariableName:">
+ <string key="name">copyServerVariableName:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyServerVariableValue:">
+ <string key="name">copyServerVariableValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveServerVariables:">
+ <string key="name">saveServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPServerVariablesController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <string key="superclassName">NSSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="additionalDragHandleView">NSView</string>
+ <string key="collapseToggleButton">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="additionalDragHandleView">
+ <string key="name">additionalDragHandleView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="collapseToggleButton">
+ <string key="name">collapseToggleButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addButton">id</string>
+ <string key="argumentField">id</string>
+ <string key="betweenTextField">id</string>
+ <string key="compareField">id</string>
+ <string key="contentSplitView">SPSplitView</string>
+ <string key="contentViewPane">NSView</string>
+ <string key="countText">id</string>
+ <string key="duplicateButton">id</string>
+ <string key="fieldField">NSPopUpButton</string>
+ <string key="filterButton">id</string>
+ <string key="filterControllerInstance">SPTableContentFilterController</string>
+ <string key="filterTableClearButton">NSButton</string>
+ <string key="filterTableDistinctCheckbox">NSButton</string>
+ <string key="filterTableFilterButton">NSButton</string>
+ <string key="filterTableLiveSearchCheckbox">NSButton</string>
+ <string key="filterTableNegateCheckbox">NSButton</string>
+ <string key="filterTableQueryTitle">NSTextField</string>
+ <string key="filterTableSearchAllFields">NSButton</string>
+ <string key="filterTableSetDefaultOperatorSheet">NSPanel</string>
+ <string key="filterTableSetDefaultOperatorValue">NSComboBox</string>
+ <string key="filterTableSplitView">SPSplitView</string>
+ <string key="filterTableView">SPCopyTable</string>
+ <string key="filterTableWhereClause">SPTextView</string>
+ <string key="filterTableWindow">NSPanel</string>
+ <string key="firstBetweenField">id</string>
+ <string key="limitRowsButton">id</string>
+ <string key="limitRowsField">id</string>
+ <string key="limitRowsStepper">id</string>
+ <string key="multipleLineEditingButton">NSButton</string>
+ <string key="paginationBox">NSBox</string>
+ <string key="paginationButton">NSButton</string>
+ <string key="paginationGoButton">NSButton</string>
+ <string key="paginationNextButton">NSButton</string>
+ <string key="paginationPageField">NSTextField</string>
+ <string key="paginationPageStepper">NSStepper</string>
+ <string key="paginationPreviousButton">NSButton</string>
+ <string key="paginationView">NSView</string>
+ <string key="paginationViewController">NSViewController</string>
+ <string key="reloadButton">id</string>
+ <string key="removeButton">id</string>
+ <string key="secondBetweenField">id</string>
+ <string key="spHistoryControllerInstance">SPHistoryController</string>
+ <string key="tableContentView">SPCopyTable</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableInfoInstance">SPTableInfo</string>
+ <string key="tableSourceInstance">id</string>
+ <string key="tablesListInstance">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addButton">
+ <string key="name">addButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="argumentField">
+ <string key="name">argumentField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="betweenTextField">
+ <string key="name">betweenTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="compareField">
+ <string key="name">compareField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentSplitView">
+ <string key="name">contentSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentViewPane">
+ <string key="name">contentViewPane</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="countText">
+ <string key="name">countText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateButton">
+ <string key="name">duplicateButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="fieldField">
+ <string key="name">fieldField</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterButton">
+ <string key="name">filterButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterControllerInstance">
+ <string key="name">filterControllerInstance</string>
+ <string key="candidateClassName">SPTableContentFilterController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableClearButton">
+ <string key="name">filterTableClearButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableDistinctCheckbox">
+ <string key="name">filterTableDistinctCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableFilterButton">
+ <string key="name">filterTableFilterButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableLiveSearchCheckbox">
+ <string key="name">filterTableLiveSearchCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableNegateCheckbox">
+ <string key="name">filterTableNegateCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableQueryTitle">
+ <string key="name">filterTableQueryTitle</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSearchAllFields">
+ <string key="name">filterTableSearchAllFields</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSetDefaultOperatorSheet">
+ <string key="name">filterTableSetDefaultOperatorSheet</string>
+ <string key="candidateClassName">NSPanel</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSetDefaultOperatorValue">
+ <string key="name">filterTableSetDefaultOperatorValue</string>
+ <string key="candidateClassName">NSComboBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSplitView">
+ <string key="name">filterTableSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableView">
+ <string key="name">filterTableView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableWhereClause">
+ <string key="name">filterTableWhereClause</string>
+ <string key="candidateClassName">SPTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableWindow">
+ <string key="name">filterTableWindow</string>
+ <string key="candidateClassName">NSPanel</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="firstBetweenField">
+ <string key="name">firstBetweenField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsButton">
+ <string key="name">limitRowsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsField">
+ <string key="name">limitRowsField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsStepper">
+ <string key="name">limitRowsStepper</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="multipleLineEditingButton">
+ <string key="name">multipleLineEditingButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationBox">
+ <string key="name">paginationBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationButton">
+ <string key="name">paginationButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationGoButton">
+ <string key="name">paginationGoButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationNextButton">
+ <string key="name">paginationNextButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPageField">
+ <string key="name">paginationPageField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPageStepper">
+ <string key="name">paginationPageStepper</string>
+ <string key="candidateClassName">NSStepper</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPreviousButton">
+ <string key="name">paginationPreviousButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationView">
+ <string key="name">paginationView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationViewController">
+ <string key="name">paginationViewController</string>
+ <string key="candidateClassName">NSViewController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="reloadButton">
+ <string key="name">reloadButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeButton">
+ <string key="name">removeButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="secondBetweenField">
+ <string key="name">secondBetweenField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">SPHistoryController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentView">
+ <string key="name">tableContentView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">SPTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContentFilterController</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="contentSplitView">SPSplitView</string>
+ <string key="filterRuleEditor">NSRuleEditor</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="contentSplitView">
+ <string key="name">contentSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterRuleEditor">
+ <string key="name">filterRuleEditor</string>
+ <string key="candidateClassName">NSRuleEditor</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContentFilterController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableData</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListInstance">
+ <string key="name">tableListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableInfo</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="activitiesTable">NSTableView</string>
+ <string key="infoTable">id</string>
+ <string key="tableDataInstance">id</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tableInfoScrollView">NSScrollView</string>
+ <string key="tableList">id</string>
+ <string key="tableListInstance">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="activitiesTable">
+ <string key="name">activitiesTable</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="infoTable">
+ <string key="name">infoTable</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoScrollView">
+ <string key="name">tableInfoScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableList">
+ <string key="name">tableList</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListInstance">
+ <string key="name">tableListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableRelations</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRelation:">id</string>
+ <string key="closeRelationSheet:">id</string>
+ <string key="confirmAddRelation:">id</string>
+ <string key="openRelationSheet:">id</string>
+ <string key="refreshRelations:">id</string>
+ <string key="removeRelation:">id</string>
+ <string key="selectReferenceTable:">id</string>
+ <string key="selectTableColumn:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRelation:">
+ <string key="name">addRelation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeRelationSheet:">
+ <string key="name">closeRelationSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="confirmAddRelation:">
+ <string key="name">confirmAddRelation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openRelationSheet:">
+ <string key="name">openRelationSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshRelations:">
+ <string key="name">refreshRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRelation:">
+ <string key="name">removeRelation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectReferenceTable:">
+ <string key="name">selectReferenceTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectTableColumn:">
+ <string key="name">selectTableColumn:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addRelationButton">NSButton</string>
+ <string key="addRelationPanel">NSPanel</string>
+ <string key="addRelationTableBox">NSBox</string>
+ <string key="columnPopUpButton">NSPopUpButton</string>
+ <string key="confirmAddRelationButton">NSButton</string>
+ <string key="constraintName">NSTextField</string>
+ <string key="dataProgressIndicator">NSProgressIndicator</string>
+ <string key="detailErrorText">NSTextView</string>
+ <string key="detailErrorView">NSView</string>
+ <string key="labelTextField">NSTextField</string>
+ <string key="onDeletePopUpButton">NSPopUpButton</string>
+ <string key="onUpdatePopUpButton">NSPopUpButton</string>
+ <string key="progressStatusTextField">NSTextField</string>
+ <string key="refColumnPopUpButton">NSPopUpButton</string>
+ <string key="refTablePopUpButton">NSPopUpButton</string>
+ <string key="refreshRelationsButton">NSButton</string>
+ <string key="relationsTableView">SPTableView</string>
+ <string key="removeRelationButton">NSButton</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableList">SPTableView</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addRelationButton">
+ <string key="name">addRelationButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addRelationPanel">
+ <string key="name">addRelationPanel</string>
+ <string key="candidateClassName">NSPanel</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addRelationTableBox">
+ <string key="name">addRelationTableBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="columnPopUpButton">
+ <string key="name">columnPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="confirmAddRelationButton">
+ <string key="name">confirmAddRelationButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="constraintName">
+ <string key="name">constraintName</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="dataProgressIndicator">
+ <string key="name">dataProgressIndicator</string>
+ <string key="candidateClassName">NSProgressIndicator</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="detailErrorText">
+ <string key="name">detailErrorText</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="detailErrorView">
+ <string key="name">detailErrorView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="labelTextField">
+ <string key="name">labelTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="onDeletePopUpButton">
+ <string key="name">onDeletePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="onUpdatePopUpButton">
+ <string key="name">onUpdatePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="progressStatusTextField">
+ <string key="name">progressStatusTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="refColumnPopUpButton">
+ <string key="name">refColumnPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="refTablePopUpButton">
+ <string key="name">refTablePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="refreshRelationsButton">
+ <string key="name">refreshRelationsButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="relationsTableView">
+ <string key="name">relationsTableView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeRelationButton">
+ <string key="name">removeRelationButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableList">
+ <string key="name">tableList</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableRelations.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableRelations</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRelation:">id</string>
+ <string key="closeRelationSheet:">id</string>
+ <string key="confirmAddRelation:">id</string>
+ <string key="openRelationSheet:">id</string>
+ <string key="refreshRelations:">id</string>
+ <string key="removeRelation:">id</string>
+ <string key="selectReferenceTable:">id</string>
+ <string key="selectTableColumn:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRelation:">
+ <string key="name">addRelation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeRelationSheet:">
+ <string key="name">closeRelationSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="confirmAddRelation:">
+ <string key="name">confirmAddRelation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openRelationSheet:">
+ <string key="name">openRelationSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshRelations:">
+ <string key="name">refreshRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRelation:">
+ <string key="name">removeRelation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectReferenceTable:">
+ <string key="name">selectReferenceTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectTableColumn:">
+ <string key="name">selectTableColumn:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableRelations.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addFieldButton">id</string>
+ <string key="addIndexButton">id</string>
+ <string key="chooseKeyButton">id</string>
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="duplicateFieldButton">id</string>
+ <string key="editTableButton">id</string>
+ <string key="encodingPopupCell">NSPopUpButtonCell</string>
+ <string key="extendedTableInfoInstance">SPExtendedTableInfo</string>
+ <string key="indexesController">SPIndexesController</string>
+ <string key="indexesShowButton">NSButton</string>
+ <string key="indexesTableView">SPTableView</string>
+ <string key="keySheet">id</string>
+ <string key="refreshIndexesButton">id</string>
+ <string key="reloadFieldsButton">id</string>
+ <string key="removeFieldButton">id</string>
+ <string key="removeIndexButton">id</string>
+ <string key="resetAutoIncrementLine">id</string>
+ <string key="resetAutoIncrementSheet">id</string>
+ <string key="resetAutoIncrementValue">id</string>
+ <string key="structureGrabber">id</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableInfoInstance">SPTableInfo</string>
+ <string key="tableSourceView">SPTableView</string>
+ <string key="tablesIndexesSplitView">NSSplitView</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ <string key="viewColumnsMenu">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addFieldButton">
+ <string key="name">addFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addIndexButton">
+ <string key="name">addIndexButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="chooseKeyButton">
+ <string key="name">chooseKeyButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateFieldButton">
+ <string key="name">duplicateFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editTableButton">
+ <string key="name">editTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopupCell">
+ <string key="name">encodingPopupCell</string>
+ <string key="candidateClassName">NSPopUpButtonCell</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">SPExtendedTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesController">
+ <string key="name">indexesController</string>
+ <string key="candidateClassName">SPIndexesController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesShowButton">
+ <string key="name">indexesShowButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesTableView">
+ <string key="name">indexesTableView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="keySheet">
+ <string key="name">keySheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="refreshIndexesButton">
+ <string key="name">refreshIndexesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="reloadFieldsButton">
+ <string key="name">reloadFieldsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeFieldButton">
+ <string key="name">removeFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexButton">
+ <string key="name">removeIndexButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementLine">
+ <string key="name">resetAutoIncrementLine</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementSheet">
+ <string key="name">resetAutoIncrementSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementValue">
+ <string key="name">resetAutoIncrementValue</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="structureGrabber">
+ <string key="name">structureGrabber</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">SPTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceView">
+ <string key="name">tableSourceView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesIndexesSplitView">
+ <string key="name">tablesIndexesSplitView</string>
+ <string key="candidateClassName">NSSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="viewColumnsMenu">
+ <string key="name">viewColumnsMenu</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableTextFieldCell</string>
+ <string key="superclassName">ImageAndTextCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableTextFieldCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableTriggers</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTrigger:">id</string>
+ <string key="closeTriggerSheet:">id</string>
+ <string key="confirmAddTrigger:">id</string>
+ <string key="editTrigger:">id</string>
+ <string key="refreshTriggers:">id</string>
+ <string key="removeTrigger:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTrigger:">
+ <string key="name">addTrigger:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeTriggerSheet:">
+ <string key="name">closeTriggerSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="confirmAddTrigger:">
+ <string key="name">confirmAddTrigger:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="editTrigger:">
+ <string key="name">editTrigger:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTriggers:">
+ <string key="name">refreshTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTrigger:">
+ <string key="name">removeTrigger:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addTriggerButton">NSButton</string>
+ <string key="addTriggerPanel">NSPanel</string>
+ <string key="addTriggerTableBox">NSBox</string>
+ <string key="confirmAddTriggerButton">NSButton</string>
+ <string key="labelTextField">NSTextField</string>
+ <string key="refreshTriggersButton">NSButton</string>
+ <string key="removeTriggerButton">NSButton</string>
+ <string key="tableDataInstance">id</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tableList">id</string>
+ <string key="tablesListInstance">id</string>
+ <string key="triggerActionTimePopUpButton">NSPopUpButton</string>
+ <string key="triggerEventPopUpButton">NSPopUpButton</string>
+ <string key="triggerNameTextField">NSTextField</string>
+ <string key="triggerStatementTextView">NSTextView</string>
+ <string key="triggersTableView">SPTableView</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addTriggerButton">
+ <string key="name">addTriggerButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addTriggerPanel">
+ <string key="name">addTriggerPanel</string>
+ <string key="candidateClassName">NSPanel</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addTriggerTableBox">
+ <string key="name">addTriggerTableBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="confirmAddTriggerButton">
+ <string key="name">confirmAddTriggerButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="labelTextField">
+ <string key="name">labelTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="refreshTriggersButton">
+ <string key="name">refreshTriggersButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeTriggerButton">
+ <string key="name">removeTriggerButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableList">
+ <string key="name">tableList</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="triggerActionTimePopUpButton">
+ <string key="name">triggerActionTimePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="triggerEventPopUpButton">
+ <string key="name">triggerEventPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="triggerNameTextField">
+ <string key="name">triggerNameTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="triggerStatementTextView">
+ <string key="name">triggerStatementTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="triggersTableView">
+ <string key="name">triggersTableView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableTriggers.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableTriggers</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTrigger:">id</string>
+ <string key="closeTriggerSheet:">id</string>
+ <string key="confirmAddTrigger:">id</string>
+ <string key="editTrigger:">id</string>
+ <string key="refreshTriggers:">id</string>
+ <string key="removeTrigger:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTrigger:">
+ <string key="name">addTrigger:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeTriggerSheet:">
+ <string key="name">closeTriggerSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="confirmAddTrigger:">
+ <string key="name">confirmAddTrigger:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="editTrigger:">
+ <string key="name">editTrigger:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTriggers:">
+ <string key="name">refreshTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTrigger:">
+ <string key="name">removeTrigger:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableTriggers.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableView</string>
+ <string key="superclassName">NSTableView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTablesList</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addTableButton">id</string>
+ <string key="copyCreateSyntaxContextMenuItem">NSMenuItem</string>
+ <string key="copyCreateSyntaxMenuItem">NSMenuItem</string>
+ <string key="copyTableButton">id</string>
+ <string key="copyTableContentSwitch">NSButton</string>
+ <string key="copyTableMessageField">id</string>
+ <string key="copyTableNameField">id</string>
+ <string key="copyTableSheet">id</string>
+ <string key="customQueryInstance">id</string>
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="duplicateTableContextMenuItem">NSMenuItem</string>
+ <string key="duplicateTableMenuItem">NSMenuItem</string>
+ <string key="extendedTableInfoInstance">id</string>
+ <string key="listFilterField">NSSearchField</string>
+ <string key="openTableInNewTabContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewTabMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowMenuItem">NSMenuItem</string>
+ <string key="removeTableContextMenuItem">NSMenuItem</string>
+ <string key="removeTableMenuItem">NSMenuItem</string>
+ <string key="renameTableContextMenuItem">NSMenuItem</string>
+ <string key="renameTableMenuItem">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem2">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem3">NSMenuItem</string>
+ <string key="separatorTableMenuItem">NSMenuItem</string>
+ <string key="separatorTableMenuItem2">NSMenuItem</string>
+ <string key="separatorTableMenuItem3">NSMenuItem</string>
+ <string key="showCreateSyntaxContextMenuItem">NSMenuItem</string>
+ <string key="showCreateSyntaxMenuItem">NSMenuItem</string>
+ <string key="spHistoryControllerInstance">SPHistoryController</string>
+ <string key="tableCollationButton">id</string>
+ <string key="tableContentInstance">SPTableContent</string>
+ <string key="tableDataInstance">id</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableDumpInstance">id</string>
+ <string key="tableEncodingButton">id</string>
+ <string key="tableInfoInstance">id</string>
+ <string key="tableListFilterSplitView">SPSplitView</string>
+ <string key="tableListSplitView">SPSplitView</string>
+ <string key="tableNameField">id</string>
+ <string key="tableSheet">id</string>
+ <string key="tableSourceInstance">SPTableStructure</string>
+ <string key="tableTriggersInstance">id</string>
+ <string key="tableTypeButton">id</string>
+ <string key="tablesListView">SPTableView</string>
+ <string key="toolbarActionsButton">id</string>
+ <string key="toolbarAddButton">id</string>
+ <string key="toolbarReloadButton">id</string>
+ <string key="truncateTableButton">id</string>
+ <string key="truncateTableContextMenuItem">NSMenuItem</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addTableButton">
+ <string key="name">addTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyCreateSyntaxContextMenuItem">
+ <string key="name">copyCreateSyntaxContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyCreateSyntaxMenuItem">
+ <string key="name">copyCreateSyntaxMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableButton">
+ <string key="name">copyTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableContentSwitch">
+ <string key="name">copyTableContentSwitch</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableMessageField">
+ <string key="name">copyTableMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableNameField">
+ <string key="name">copyTableNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableSheet">
+ <string key="name">copyTableSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateTableContextMenuItem">
+ <string key="name">duplicateTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateTableMenuItem">
+ <string key="name">duplicateTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="listFilterField">
+ <string key="name">listFilterField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewTabContextMenuItem">
+ <string key="name">openTableInNewTabContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewTabMenuItem">
+ <string key="name">openTableInNewTabMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowContextMenuItem">
+ <string key="name">openTableInNewWindowContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowMenuItem">
+ <string key="name">openTableInNewWindowMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeTableContextMenuItem">
+ <string key="name">removeTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeTableMenuItem">
+ <string key="name">removeTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameTableContextMenuItem">
+ <string key="name">renameTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameTableMenuItem">
+ <string key="name">renameTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem">
+ <string key="name">separatorTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem2">
+ <string key="name">separatorTableContextMenuItem2</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem3">
+ <string key="name">separatorTableContextMenuItem3</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem">
+ <string key="name">separatorTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem2">
+ <string key="name">separatorTableMenuItem2</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem3">
+ <string key="name">separatorTableMenuItem3</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="showCreateSyntaxContextMenuItem">
+ <string key="name">showCreateSyntaxContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="showCreateSyntaxMenuItem">
+ <string key="name">showCreateSyntaxMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">SPHistoryController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCollationButton">
+ <string key="name">tableCollationButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentInstance">
+ <string key="name">tableContentInstance</string>
+ <string key="candidateClassName">SPTableContent</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDumpInstance">
+ <string key="name">tableDumpInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableEncodingButton">
+ <string key="name">tableEncodingButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListFilterSplitView">
+ <string key="name">tableListFilterSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListSplitView">
+ <string key="name">tableListSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableNameField">
+ <string key="name">tableNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSheet">
+ <string key="name">tableSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTriggersInstance">
+ <string key="name">tableTriggersInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTypeButton">
+ <string key="name">tableTypeButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListView">
+ <string key="name">tablesListView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarActionsButton">
+ <string key="name">toolbarActionsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarAddButton">
+ <string key="name">toolbarAddButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarReloadButton">
+ <string key="name">toolbarReloadButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="truncateTableButton">
+ <string key="name">truncateTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="truncateTableContextMenuItem">
+ <string key="name">truncateTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTablesList</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="tableEncodingButtonChanged:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableEncodingButtonChanged:">
+ <string key="name">tableEncodingButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <string key="superclassName">NSTextView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="customQueryInstance">SPCustomQuery</string>
+ <string key="scrollView">NSScrollView</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">SPCustomQuery</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="scrollView">
+ <string key="name">scrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="printDocument:">id</string>
+ <string key="showMySQLHelpForCurrentWord:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="printDocument:">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.m</string>
+ </object>
+ </object>
+ </array>
+ <array class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
+ <object class="IBPartialClassDescription">
+ <string key="className">NSActionCell</string>
+ <string key="superclassName">NSCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSApplication</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSBox</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSBox.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSButton</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSButton.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSButtonCell</string>
+ <string key="superclassName">NSActionCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSCell</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSComboBox</string>
+ <string key="superclassName">NSTextField</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSComboBox.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSComboBoxCell</string>
+ <string key="superclassName">NSTextFieldCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSComboBoxCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSControl</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSControl.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSController</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSFormatter</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSImageCell</string>
+ <string key="superclassName">NSCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSImageCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSImageView</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSImageView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenu</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenuItem</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenuItemCell</string>
+ <string key="superclassName">NSButtonCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMovieView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMovieView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSNumberFormatter</string>
+ <string key="superclassName">NSFormatter</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSNumberFormatter.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPanel</string>
+ <string key="superclassName">NSWindow</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPanel.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPopUpButton</string>
+ <string key="superclassName">NSButton</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPopUpButtonCell</string>
+ <string key="superclassName">NSMenuItemCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSProgressIndicator</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSProgressIndicator.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSResponder</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSRuleEditor</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSRuleEditor.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSScrollView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSScrollView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSScroller</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSScroller.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSearchField</string>
+ <string key="superclassName">NSTextField</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSearchField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSearchFieldCell</string>
+ <string key="superclassName">NSTextFieldCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSearchFieldCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSecureTextField</string>
+ <string key="superclassName">NSTextField</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier" id="460542969">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSecureTextField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSecureTextFieldCell</string>
+ <string key="superclassName">NSTextFieldCell</string>
+ <reference key="sourceIdentifier" ref="460542969"/>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSegmentedCell</string>
+ <string key="superclassName">NSActionCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSegmentedCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSegmentedControl</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSplitView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSStepper</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSStepper.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTabView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTabView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTabViewItem</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTabViewItem.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTableColumn</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTableColumn.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTableHeaderView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTableHeaderView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTableView</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSText</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSText.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextField</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextFieldCell</string>
+ <string key="superclassName">NSActionCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <string key="superclassName">NSText</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTokenField</string>
+ <string key="superclassName">NSTextField</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTokenField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSUserDefaultsController</string>
+ <string key="superclassName">NSController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSView</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSViewController</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="NSMutableDictionary" key="outlets">
+ <string key="NS.key.0">view</string>
+ <string key="NS.object.0">NSView</string>
+ </object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <string key="NS.key.0">view</string>
+ <object class="IBToOneOutletInfo" key="NS.object.0">
+ <string key="name">view</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSWindow</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSWindow.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSWindowController</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="NSMutableDictionary" key="actions">
+ <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>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">QCView</string>
+ <string key="superclassName">NSView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="play:">id</string>
+ <string key="start:">id</string>
+ <string key="stop:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="play:">
+ <string key="name">play:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="start:">
+ <string key="name">start:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="stop:">
+ <string key="name">stop:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Quartz.framework/Frameworks/QuartzComposer.framework/Headers/QCView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">WebView</string>
+ <string key="superclassName">NSView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="goBack:">id</string>
+ <string key="goForward:">id</string>
+ <string key="makeTextLarger:">id</string>
+ <string key="makeTextSmaller:">id</string>
+ <string key="makeTextStandardSize:">id</string>
+ <string key="reload:">id</string>
+ <string key="reloadFromOrigin:">id</string>
+ <string key="stopLoading:">id</string>
+ <string key="takeStringURLFrom:">id</string>
+ <string key="toggleContinuousSpellChecking:">id</string>
+ <string key="toggleSmartInsertDelete:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="goBack:">
+ <string key="name">goBack:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="goForward:">
+ <string key="name">goForward:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTextLarger:">
+ <string key="name">makeTextLarger:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTextSmaller:">
+ <string key="name">makeTextSmaller:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTextStandardSize:">
+ <string key="name">makeTextStandardSize:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reload:">
+ <string key="name">reload:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadFromOrigin:">
+ <string key="name">reloadFromOrigin:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="stopLoading:">
+ <string key="name">stopLoading:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="takeStringURLFrom:">
+ <string key="name">takeStringURLFrom:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleContinuousSpellChecking:">
+ <string key="name">toggleContinuousSpellChecking:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSmartInsertDelete:">
+ <string key="name">toggleSmartInsertDelete:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">WebKit.framework/Headers/WebView.h</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
@@ -26754,12 +32711,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
<int key="IBDocument.defaultPropertyAccessControl">3</int>
<dictionary class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">
- <string key="660263D3-793C-406A-89B8-EC5E0D096CD0">{128, 128}</string>
- <string key="729BAD60-B632-470B-BA82-856F39114541">{128, 128}</string>
- <string key="73B69558-349D-4439-B164-B5723719CCFA">{128, 128}</string>
- <string key="8250562F-864D-4E5D-880D-0810E6CC5D58">{128, 128}</string>
- <string key="F1B8C31D-945B-4266-A204-4DAE195D61AE">{128, 128}</string>
- <string key="F6692946-0767-44FB-B4D4-572DCEEFE404">{128, 128}</string>
<string key="NSAdvanced">{32, 32}</string>
<string key="NSApplicationIcon">{128, 128}</string>
<string key="NSGoLeftTemplate">{9, 9}</string>
diff --git a/Interfaces/English.lproj/DataMigrationDialog.xib b/Interfaces/English.lproj/DataMigrationDialog.xib
index 9ad6fa18..740dedcb 100644
--- a/Interfaces/English.lproj/DataMigrationDialog.xib
+++ b/Interfaces/English.lproj/DataMigrationDialog.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSBox</string>
@@ -65,7 +65,7 @@
<nil key="NSUserInterfaceItemIdentifier"/>
<string key="NSWindowContentMinSize">{634, 348}</string>
<object class="NSView" key="NSWindowView" id="78582513">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">274</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSBox" id="412235166">
@@ -77,17 +77,21 @@
<int key="NSvFlags">274</int>
<string key="NSFrame">{{1, 1}, {656, 0}}</string>
<reference key="NSSuperview" ref="412235166"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="834757891"/>
</object>
</array>
<string key="NSFrame">{{-12, 53}, {658, 2}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="196610401"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">0</int>
<string key="NSContents">Box</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -128,13 +132,15 @@
<int key="NSvFlags">271</int>
<string key="NSFrame">{{14, 12}, {604, 17}}</string>
<reference key="NSSuperview" ref="297364507"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="863317681"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="922239869">
<int key="NSCellFlags">68157504</int>
<int key="NSCellFlags2">138413056</int>
<string key="NSContents">CSV Import Field Mapping</string>
<object class="NSFont" key="NSSupport" id="388072550">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -166,6 +172,8 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{512, 51}, {226, 32}}</string>
<reference key="NSSuperview" ref="297364507"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="1052916804"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="712024433">
<int key="NSCellFlags">67108864</int>
@@ -187,6 +195,8 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{664, 1}, {226, 32}}</string>
<reference key="NSSuperview" ref="297364507"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="1021918763"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="240320447">
<int key="NSCellFlags">67108864</int>
@@ -208,6 +218,8 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{668, 1}, {226, 32}}</string>
<reference key="NSSuperview" ref="297364507"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="697948389"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="760384053">
<int key="NSCellFlags">67108864</int>
@@ -227,10 +239,14 @@
</array>
<string key="NSFrame">{{1, 1}, {634, 39}}</string>
<reference key="NSSuperview" ref="617902336"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="436297995"/>
</object>
</array>
<string key="NSFrame">{{-1, 308}, {636, 41}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="297364507"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -266,6 +282,8 @@
<int key="NSvFlags">288</int>
<string key="NSFrameSize">{634, 126}</string>
<reference key="NSSuperview" ref="929465390"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="59350381"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
@@ -274,12 +292,17 @@
<int key="NSvFlags">256</int>
<string key="NSFrameSize">{634, 17}</string>
<reference key="NSSuperview" ref="622202999"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="929465390"/>
<reference key="NSTableView" ref="678921094"/>
</object>
- <object class="_NSCornerView" key="NSCornerView">
- <nil key="NSNextResponder"/>
+ <object class="_NSCornerView" key="NSCornerView" id="1064192022">
+ <reference key="NSNextResponder" ref="495172082"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-22, 0}, {12, 17}}</string>
+ <reference key="NSSuperview" ref="495172082"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="622202999"/>
</object>
<array class="NSMutableArray" key="NSTableColumns">
<object class="NSTableColumn" id="790992768">
@@ -314,32 +337,32 @@
<string key="NSKeyEquivalent"/>
<int key="NSPeriodicDelay">400</int>
<int key="NSPeriodicInterval">75</int>
- <object class="NSMenuItem" key="NSMenuItem" id="922650264">
- <reference key="NSMenu" ref="318206101"/>
- <string key="NSTitle">Pop Up</string>
- <string key="NSKeyEquiv"/>
- <int key="NSKeyEquivModMask">1048576</int>
- <int key="NSMnemonicLoc">2147483647</int>
- <int key="NSState">1</int>
- <object class="NSCustomResource" key="NSOnImage" id="884724275">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">NSMenuCheckmark</string>
- </object>
- <object class="NSCustomResource" key="NSMixedImage" id="1071040955">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">NSMenuMixedState</string>
- </object>
- <string key="NSAction">_popUpItemAction:</string>
- <reference key="NSTarget" ref="130736119"/>
- </object>
+ <nil key="NSMenuItem"/>
<bool key="NSMenuItemRespectAlignment">YES</bool>
<object class="NSMenu" key="NSMenu" id="318206101">
<string key="NSTitle">OtherViews</string>
<array class="NSMutableArray" key="NSMenuItems">
- <reference ref="922650264"/>
+ <object class="NSMenuItem" id="922650264">
+ <reference key="NSMenu" ref="318206101"/>
+ <string key="NSTitle">Pop Up</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSKeyEquivModMask">1048576</int>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <object class="NSCustomResource" key="NSOnImage" id="884724275">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">NSMenuCheckmark</string>
+ </object>
+ <object class="NSCustomResource" key="NSMixedImage" id="1071040955">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">NSMenuMixedState</string>
+ </object>
+ <string key="NSAction">_popUpItemAction:</string>
+ <reference key="NSTarget" ref="130736119"/>
+ </object>
</array>
<reference key="NSMenuFont" ref="26"/>
</object>
+ <int key="NSSelectedIndex">-1</int>
<int key="NSPreferredEdge">3</int>
<bool key="NSUsesItemFromMenu">YES</bool>
<bool key="NSAltersState">YES</bool>
@@ -417,42 +440,15 @@
</object>
<reference key="NSTextColor" ref="186205954"/>
</object>
- <object class="NSPopUpButtonCell" key="NSDataCell" id="201096656">
- <int key="NSCellFlags">-2076180416</int>
- <int key="NSCellFlags2">133120</int>
+ <object class="NSTextFieldCell" key="NSDataCell" id="852180472">
+ <int key="NSCellFlags">337641537</int>
+ <int key="NSCellFlags2">272762880</int>
+ <string key="NSContents">Text</string>
<reference key="NSSupport" ref="26"/>
+ <string key="NSCellIdentifier">_NS:9</string>
<reference key="NSControlView" ref="678921094"/>
- <int key="NSButtonFlags">100679680</int>
- <int key="NSButtonFlags2">129</int>
- <string key="NSAlternateContents"/>
- <string key="NSKeyEquivalent"/>
- <int key="NSPeriodicDelay">400</int>
- <int key="NSPeriodicInterval">75</int>
- <object class="NSMenuItem" key="NSMenuItem" id="683769208">
- <reference key="NSMenu" ref="920630540"/>
- <bool key="NSIsHidden">YES</bool>
- <string key="NSTitle">Pop Up</string>
- <string key="NSKeyEquiv"/>
- <int key="NSKeyEquivModMask">1048576</int>
- <int key="NSMnemonicLoc">2147483647</int>
- <int key="NSState">1</int>
- <reference key="NSOnImage" ref="884724275"/>
- <reference key="NSMixedImage" ref="1071040955"/>
- <string key="NSAction">_popUpItemAction:</string>
- <reference key="NSTarget" ref="201096656"/>
- </object>
- <bool key="NSMenuItemRespectAlignment">YES</bool>
- <object class="NSMenu" key="NSMenu" id="920630540">
- <string key="NSTitle">OtherViews</string>
- <array class="NSMutableArray" key="NSMenuItems">
- <reference ref="683769208"/>
- </array>
- <reference key="NSMenuFont" ref="26"/>
- </object>
- <bool key="NSPullDown">YES</bool>
- <int key="NSPreferredEdge">3</int>
- <bool key="NSUsesItemFromMenu">YES</bool>
- <bool key="NSAltersState">YES</bool>
+ <reference key="NSBackgroundColor" ref="19028295"/>
+ <reference key="NSTextColor" ref="263116164"/>
</object>
<int key="NSResizingMask">3</int>
<bool key="NSIsResizeable">YES</bool>
@@ -521,13 +517,13 @@
<int key="NSDraggingSourceMaskForLocal">15</int>
<int key="NSDraggingSourceMaskForNonLocal">0</int>
<bool key="NSAllowsTypeSelect">YES</bool>
- <int key="NSTableViewSelectionHighlightStyle">1</int>
<int key="NSTableViewDraggingDestinationStyle">1</int>
<int key="NSTableViewGroupRowStyle">1</int>
</object>
</array>
<string key="NSFrame">{{1, 17}, {634, 126}}</string>
<reference key="NSSuperview" ref="495172082"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="678921094"/>
<reference key="NSDocView" ref="678921094"/>
<object class="NSColor" key="NSBGColor" id="518286732">
@@ -538,11 +534,27 @@
</object>
<int key="NScvFlags">6</int>
</object>
+ <object class="NSClipView" id="622202999">
+ <reference key="NSNextResponder" ref="495172082"/>
+ <int key="NSvFlags">2338</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <reference ref="1025336439"/>
+ </array>
+ <string key="NSFrame">{{1, 0}, {634, 17}}</string>
+ <reference key="NSSuperview" ref="495172082"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="1025336439"/>
+ <reference key="NSDocView" ref="1025336439"/>
+ <reference key="NSBGColor" ref="518286732"/>
+ <int key="NScvFlags">4</int>
+ </object>
<object class="NSScroller" id="59350381">
<reference key="NSNextResponder" ref="495172082"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{413, 18}, {11, 140}}</string>
<reference key="NSSuperview" ref="495172082"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="397227507"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">256</int>
<reference key="NSTarget" ref="495172082"/>
@@ -554,6 +566,8 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {227, 11}}</string>
<reference key="NSSuperview" ref="495172082"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="1064192022"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">257</int>
<reference key="NSTarget" ref="495172082"/>
@@ -561,28 +575,18 @@
<double key="NSCurValue">0.035674519836902618</double>
<double key="NSPercent">0.99047619104385376</double>
</object>
- <object class="NSClipView" id="622202999">
- <reference key="NSNextResponder" ref="495172082"/>
- <int key="NSvFlags">2338</int>
- <array class="NSMutableArray" key="NSSubviews">
- <reference ref="1025336439"/>
- </array>
- <string key="NSFrame">{{1, 0}, {634, 17}}</string>
- <reference key="NSSuperview" ref="495172082"/>
- <reference key="NSNextKeyView" ref="1025336439"/>
- <reference key="NSDocView" ref="1025336439"/>
- <reference key="NSBGColor" ref="518286732"/>
- <int key="NScvFlags">4</int>
- </object>
+ <reference ref="1064192022"/>
</array>
<string key="NSFrame">{{-1, 129}, {636, 144}}</string>
<reference key="NSSuperview" ref="78582513"/>
- <reference key="NSNextKeyView" ref="929465390"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="1043729154"/>
<int key="NSsFlags">133650</int>
<reference key="NSVScroller" ref="59350381"/>
<reference key="NSHScroller" ref="1043729154"/>
<reference key="NSContentView" ref="929465390"/>
<reference key="NSHeaderClipView" ref="622202999"/>
+ <reference key="NSCornerView" ref="1064192022"/>
<bytes key="NSScrollAmts">QSAAAEEgAABBkAAAQZAAAA</bytes>
<double key="NSMinMagnification">0.25</double>
<double key="NSMaxMagnification">4</double>
@@ -593,6 +597,8 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{415, 12}, {102, 32}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="341819846"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="977848648">
<int key="NSCellFlags">67108864</int>
@@ -619,6 +625,7 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{517, 12}, {102, 32}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="291690242">
@@ -643,6 +650,8 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{20, 19}, {32, 24}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="116285743"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="87458302">
<int key="NSCellFlags">603979776</int>
@@ -668,6 +677,8 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{51, 19}, {32, 24}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="186404366"/>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="809975974">
@@ -695,6 +706,8 @@
<int key="NSvFlags">294</int>
<string key="NSFrame">{{88, 23}, {195, 14}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="219742831"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="929441265">
<int key="NSCellFlags">67108928</int>
@@ -713,6 +726,8 @@
<int key="NSvFlags">267</int>
<string key="NSFrame">{{361, 278}, {200, 22}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="426092195"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="107647973">
<int key="NSCellFlags">-2076180416</int>
@@ -744,6 +759,8 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{484, 97}, {133, 22}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="42651750"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="1033308908">
<int key="NSCellFlags">-2076180416</int>
@@ -808,6 +825,8 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{302, 102}, {180, 14}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="599385609"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="869323357">
<int key="NSCellFlags">68157504</int>
@@ -830,6 +849,8 @@
</set>
<string key="NSFrame">{{5, 280}, {316, 20}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="549705971"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPathCell" key="NSCell" id="183652084">
<int key="NSCellFlags">69206081</int>
@@ -851,6 +872,8 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{17, 100}, {275, 18}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="228203205"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="413696615">
<int key="NSCellFlags">-2080374784</int>
@@ -879,6 +902,8 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{484, 73}, {133, 22}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="412235166"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="940205369">
<int key="NSCellFlags">-2076180416</int>
@@ -961,6 +986,8 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{302, 79}, {180, 14}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="573115956"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="498123343">
<int key="NSCellFlags">68157504</int>
@@ -979,6 +1006,8 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{326, 12}, {82, 32}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="920273776"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="538595338">
<int key="NSCellFlags">67108864</int>
@@ -1000,6 +1029,8 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{11, 56}, {29, 26}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="317672858"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="1001034034">
<int key="NSCellFlags">67108864</int>
@@ -1026,6 +1057,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 8}, {100, 18}}</string>
<reference key="NSSuperview" ref="892658687"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="367476938"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="385836359">
<int key="NSCellFlags">67108864</int>
@@ -1049,6 +1082,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{132, 8}, {80, 18}}</string>
<reference key="NSSuperview" ref="892658687"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="148795893"/>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="767775548">
@@ -1071,6 +1106,8 @@
</array>
<string key="NSFrame">{{200, 20}, {230, 44}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="799122111"/>
<string key="NSClassName">NSView</string>
</object>
<object class="NSCustomView" id="219742831">
@@ -1082,6 +1119,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{227, 62}, {335, 18}}</string>
<reference key="NSSuperview" ref="219742831"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="952580067"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="843921917">
<int key="NSCellFlags">-2080374784</int>
@@ -1111,8 +1150,29 @@
<object class="NSTextView" id="249839159">
<reference key="NSNextResponder" ref="396898918"/>
<int key="NSvFlags">2322</int>
+ <set class="NSMutableSet" key="NSDragTypes">
+ <string>Apple HTML pasteboard type</string>
+ <string>Apple PDF pasteboard type</string>
+ <string>Apple PICT pasteboard type</string>
+ <string>Apple PNG pasteboard type</string>
+ <string>Apple URL pasteboard type</string>
+ <string>CorePasteboardFlavorType 0x6D6F6F76</string>
+ <string>NSColor pasteboard type</string>
+ <string>NSFilenamesPboardType</string>
+ <string>NSStringPboardType</string>
+ <string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
+ <string>NeXT RTFD pasteboard type</string>
+ <string>NeXT Rich Text Format v1.0 pasteboard type</string>
+ <string>NeXT TIFF v4.0 pasteboard type</string>
+ <string>NeXT font pasteboard type</string>
+ <string>NeXT ruler pasteboard type</string>
+ <string>WebURLsWithTitlesPboardType</string>
+ <string>public.url</string>
+ </set>
<string key="NSFrameSize">{400, 37}</string>
<reference key="NSSuperview" ref="396898918"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="24215372"/>
<object class="NSTextContainer" key="NSTextContainer" id="510363477">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
@@ -1132,7 +1192,7 @@
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
- <int key="NSFlags">67121127</int>
+ <int key="NSFlags">12263</int>
<int key="NSTextCheckingTypes">0</int>
<nil key="NSMarkedAttributes"/>
<reference key="NSBackgroundColor" ref="746040121"/>
@@ -1170,6 +1230,7 @@
</array>
<string key="NSFrame">{{1, 1}, {400, 37}}</string>
<reference key="NSSuperview" ref="952580067"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="249839159"/>
<reference key="NSDocView" ref="249839159"/>
<reference key="NSBGColor" ref="746040121"/>
@@ -1199,6 +1260,8 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{386, 1}, {15, 37}}</string>
<reference key="NSSuperview" ref="952580067"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="471578497"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">512</int>
<reference key="NSTarget" ref="952580067"/>
@@ -1211,6 +1274,8 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {87, 15}}</string>
<reference key="NSSuperview" ref="952580067"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="396898918"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">513</int>
<reference key="NSTarget" ref="952580067"/>
@@ -1221,7 +1286,8 @@
</array>
<string key="NSFrame">{{20, 20}, {402, 39}}</string>
<reference key="NSSuperview" ref="219742831"/>
- <reference key="NSNextKeyView" ref="396898918"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="475133483"/>
<int key="NSsFlags">133650</int>
<reference key="NSVScroller" ref="24215372"/>
<reference key="NSHScroller" ref="475133483"/>
@@ -1235,6 +1301,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{227, 85}, {104, 18}}</string>
<reference key="NSSuperview" ref="219742831"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="403613444"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="776859395">
<int key="NSCellFlags">67108864</int>
@@ -1258,6 +1326,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 85}, {100, 18}}</string>
<reference key="NSSuperview" ref="219742831"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="1014387480"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="666818493">
<int key="NSCellFlags">67108864</int>
@@ -1281,6 +1351,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 62}, {181, 18}}</string>
<reference key="NSSuperview" ref="219742831"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="80724644"/>
<int key="NSTag">2</int>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="265447544">
@@ -1305,6 +1377,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{137, 85}, {80, 18}}</string>
<reference key="NSSuperview" ref="219742831"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="16766984"/>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="548754049">
@@ -1329,6 +1403,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{354, 85}, {70, 18}}</string>
<reference key="NSSuperview" ref="219742831"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="630547726"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="115350738">
<int key="NSCellFlags">67108864</int>
@@ -1350,6 +1426,8 @@
</array>
<string key="NSFrame">{{93, -57}, {442, 121}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="796449267"/>
<string key="NSClassName">NSView</string>
</object>
<object class="NSCustomView" id="471578497">
@@ -1361,6 +1439,8 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{212, 8}, {335, 18}}</string>
<reference key="NSSuperview" ref="471578497"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="892658687"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="450486129">
<int key="NSCellFlags">67108864</int>
@@ -1384,6 +1464,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 8}, {100, 18}}</string>
<reference key="NSSuperview" ref="471578497"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="446881673"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="162288118">
<int key="NSCellFlags">67108864</int>
@@ -1407,6 +1489,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{132, 8}, {70, 18}}</string>
<reference key="NSSuperview" ref="471578497"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="346675130"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="591185810">
<int key="NSCellFlags">67108864</int>
@@ -1428,6 +1512,8 @@
</array>
<string key="NSFrame">{{110, 20}, {390, 44}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="388473976"/>
<string key="NSClassName">NSView</string>
</object>
<object class="NSButton" id="317672858">
@@ -1435,6 +1521,8 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{34, 58}, {58, 23}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="155260473"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="365850666">
<int key="NSCellFlags">-2080374784</int>
@@ -1456,6 +1544,8 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{487, 280}, {106, 19}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="720243489"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="752604777">
<int key="NSCellFlags">-1804599231</int>
@@ -1480,6 +1570,8 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{402, 283}, {80, 14}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="806234307"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="696977787">
<int key="NSCellFlags">68157504</int>
@@ -1498,6 +1590,8 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{599, 280}, {20, 20}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="495172082"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="544229418">
<int key="NSCellFlags">67108864</int>
@@ -1523,6 +1617,8 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{566, 281}, {61, 17}}</string>
<reference key="NSSuperview" ref="78582513"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="584318360"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="1019413032">
<int key="NSCellFlags">-2080374784</int>
@@ -1541,8 +1637,11 @@
</object>
</array>
<string key="NSFrameSize">{634, 348}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="617902336"/>
</object>
- <string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
+ <string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
<string key="NSMinSize">{634, 370}</string>
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
<string key="NSFrameAutosaveName">SPCSVFieldMappingSheet</string>
@@ -1954,7 +2053,7 @@
</array>
<string key="NSFrameSize">{311, 210}</string>
</object>
- <string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
+ <string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
<string key="NSMinSize">{311, 208}</string>
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
<string key="NSFrameAutosaveName"/>
@@ -1978,7 +2077,7 @@
<object class="NSComboTableView" key="NSTableView" id="80897582">
<reference key="NSNextResponder"/>
<int key="NSvFlags">274</int>
- <string key="NSFrameSize">{13, 0}</string>
+ <string key="NSFrameSize">{15, 0}</string>
<reference key="NSSuperview"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
@@ -1986,7 +2085,7 @@
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
<array class="NSMutableArray" key="NSTableColumns">
<object class="NSTableColumn">
- <double key="NSWidth">10</double>
+ <double key="NSWidth">12</double>
<double key="NSMinWidth">10</double>
<double key="NSMaxWidth">1000</double>
<object class="NSTableHeaderCell" key="NSHeaderCell">
@@ -2024,7 +2123,7 @@
<reference key="NSGridColor" ref="406268685"/>
<double key="NSRowHeight">16</double>
<string key="NSAction">tableViewAction:</string>
- <int key="NSTvFlags">-765427712</int>
+ <int key="NSTvFlags">-767524864</int>
<reference key="NSDelegate" ref="530703452"/>
<reference key="NSTarget" ref="530703452"/>
<int key="NSColumnAutoresizingStyle">1</int>
@@ -2262,7 +2361,7 @@
</array>
<string key="NSFrameSize">{269, 120}</string>
</object>
- <string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
+ <string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
<string key="NSMinSize">{269, 142}</string>
<string key="NSMaxSize">{269, 142}</string>
<bool key="NSWindowIsRestorable">YES</bool>
@@ -2270,7 +2369,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">tableTargetPopup</string>
@@ -2994,6 +3093,14 @@
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">delegate</string>
+ <reference key="source" ref="318206101"/>
+ <reference key="destination" ref="1001"/>
+ </object>
+ <string key="id">9Jp-DU-vql</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">delegate</string>
<reference key="source" ref="280523396"/>
<reference key="destination" ref="1001"/>
</object>
@@ -4079,7 +4186,7 @@
<string key="id">48</string>
<reference key="object" ref="185178480"/>
<array class="NSMutableArray" key="children">
- <reference ref="201096656"/>
+ <reference ref="852180472"/>
</array>
<reference key="parent" ref="678921094"/>
</object>
@@ -4097,27 +4204,6 @@
<reference key="parent" ref="221439252"/>
</object>
<object class="IBObjectRecord">
- <string key="id">92</string>
- <reference key="object" ref="201096656"/>
- <array class="NSMutableArray" key="children">
- <reference ref="920630540"/>
- </array>
- <reference key="parent" ref="185178480"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">93</string>
- <reference key="object" ref="920630540"/>
- <array class="NSMutableArray" key="children">
- <reference ref="683769208"/>
- </array>
- <reference key="parent" ref="201096656"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">94</string>
- <reference key="object" ref="683769208"/>
- <reference key="parent" ref="920630540"/>
- </object>
- <object class="IBObjectRecord">
<string key="id">89</string>
<reference key="object" ref="130736119"/>
<array class="NSMutableArray" key="children">
@@ -4213,6 +4299,11 @@
<reference key="object" ref="249839159"/>
<reference key="parent" ref="952580067"/>
</object>
+ <object class="IBObjectRecord">
+ <string key="id">1SY-mK-knt</string>
+ <reference key="object" ref="852180472"/>
+ <reference key="parent" ref="185178480"/>
+ </object>
</array>
</object>
<dictionary class="NSMutableDictionary" key="flattenedProperties">
@@ -4328,6 +4419,7 @@
<string key="19.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="190.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="191.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="1SY-mK-knt.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSMutableDictionary" key="20.IBAttributePlaceholdersKey">
<string key="NS.key.0">ToolTip</string>
<object class="IBToolTipAttribute" key="NS.object.0">
@@ -4523,9 +4615,6 @@
<string key="89.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="90.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="91.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="92.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="93.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="94.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="95.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="96.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="97.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -4536,14 +4625,4030 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <string key="superclassName">SPTableView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="affectedRowsText">id</string>
+ <string key="autohelpMenuItem">NSMenuItem</string>
+ <string key="autoindentMenuItem">NSMenuItem</string>
+ <string key="autopairMenuItem">NSMenuItem</string>
+ <string key="autouppercaseKeywordsMenuItem">NSMenuItem</string>
+ <string key="clearHistoryMenuItem">NSMenuItem</string>
+ <string key="commentCurrentQueryMenuItem">NSMenuItem</string>
+ <string key="commentLineOrSelectionMenuItem">NSMenuItem</string>
+ <string key="completionListMenuItem">NSMenuItem</string>
+ <string key="copyHistoryMenuItem">NSMenuItem</string>
+ <string key="customQueryScrollView">NSScrollView</string>
+ <string key="customQueryView">SPCopyTable</string>
+ <string key="editorFontMenuItem">NSMenuItem</string>
+ <string key="encodingPopUp">NSPopUpButton</string>
+ <string key="errorText">id</string>
+ <string key="errorTextScrollView">NSScrollView</string>
+ <string key="errorTextTitle">NSTextField</string>
+ <string key="helpNavigator">NSSegmentedControl</string>
+ <string key="helpSearchField">NSSearchField</string>
+ <string key="helpSearchFieldCell">NSSearchFieldCell</string>
+ <string key="helpTargetSelector">NSSegmentedControl</string>
+ <string key="helpWebView">WebView</string>
+ <string key="helpWebViewWindow">NSWindow</string>
+ <string key="nextHistoryMenuItem">NSMenuItem</string>
+ <string key="previousHistoryMenuItem">NSMenuItem</string>
+ <string key="queryEditorSplitView">SPSplitView</string>
+ <string key="queryFavoriteNameTextField">NSTextField</string>
+ <string key="queryFavoritesButton">id</string>
+ <string key="queryFavoritesSaveAllMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSaveAsMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSearchField">NSSearchField</string>
+ <string key="queryFavoritesSearchFieldView">id</string>
+ <string key="queryFavoritesSearchMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSheet">NSWindow</string>
+ <string key="queryHistoryButton">id</string>
+ <string key="queryHistorySearchField">NSSearchField</string>
+ <string key="queryHistorySearchFieldView">id</string>
+ <string key="queryHistorySearchMenuItem">NSMenuItem</string>
+ <string key="queryInfoButton">NSButton</string>
+ <string key="queryInfoPaneSplitView">SPSplitView</string>
+ <string key="runAllButton">id</string>
+ <string key="runPrimaryActionButton">id</string>
+ <string key="runPrimaryActionButtonAsSelection">id</string>
+ <string key="runPrimaryActionMenuItem">NSMenuItem</string>
+ <string key="runSecondaryActionMenuItem">NSMenuItem</string>
+ <string key="saveHistoryMenuItem">NSMenuItem</string>
+ <string key="saveQueryFavoriteButton">NSButton</string>
+ <string key="saveQueryFavoriteGlobal">NSButton</string>
+ <string key="shiftLeftMenuItem">NSMenuItem</string>
+ <string key="shiftRightMenuItem">NSMenuItem</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tablesListInstance">id</string>
+ <string key="textView">SPTextView</string>
+ <string key="valueSheet">id</string>
+ <string key="valueTextField">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="affectedRowsText">
+ <string key="name">affectedRowsText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autohelpMenuItem">
+ <string key="name">autohelpMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autoindentMenuItem">
+ <string key="name">autoindentMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autopairMenuItem">
+ <string key="name">autopairMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autouppercaseKeywordsMenuItem">
+ <string key="name">autouppercaseKeywordsMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="clearHistoryMenuItem">
+ <string key="name">clearHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="commentCurrentQueryMenuItem">
+ <string key="name">commentCurrentQueryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="commentLineOrSelectionMenuItem">
+ <string key="name">commentLineOrSelectionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="completionListMenuItem">
+ <string key="name">completionListMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyHistoryMenuItem">
+ <string key="name">copyHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryScrollView">
+ <string key="name">customQueryScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryView">
+ <string key="name">customQueryView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editorFontMenuItem">
+ <string key="name">editorFontMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopUp">
+ <string key="name">encodingPopUp</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorText">
+ <string key="name">errorText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorTextScrollView">
+ <string key="name">errorTextScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorTextTitle">
+ <string key="name">errorTextTitle</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpNavigator">
+ <string key="name">helpNavigator</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpSearchField">
+ <string key="name">helpSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpSearchFieldCell">
+ <string key="name">helpSearchFieldCell</string>
+ <string key="candidateClassName">NSSearchFieldCell</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpTargetSelector">
+ <string key="name">helpTargetSelector</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpWebView">
+ <string key="name">helpWebView</string>
+ <string key="candidateClassName">WebView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpWebViewWindow">
+ <string key="name">helpWebViewWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="nextHistoryMenuItem">
+ <string key="name">nextHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="previousHistoryMenuItem">
+ <string key="name">previousHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryEditorSplitView">
+ <string key="name">queryEditorSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoriteNameTextField">
+ <string key="name">queryFavoriteNameTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesButton">
+ <string key="name">queryFavoritesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSaveAllMenuItem">
+ <string key="name">queryFavoritesSaveAllMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSaveAsMenuItem">
+ <string key="name">queryFavoritesSaveAsMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchField">
+ <string key="name">queryFavoritesSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchFieldView">
+ <string key="name">queryFavoritesSearchFieldView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchMenuItem">
+ <string key="name">queryFavoritesSearchMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSheet">
+ <string key="name">queryFavoritesSheet</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistoryButton">
+ <string key="name">queryHistoryButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchField">
+ <string key="name">queryHistorySearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchFieldView">
+ <string key="name">queryHistorySearchFieldView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchMenuItem">
+ <string key="name">queryHistorySearchMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryInfoButton">
+ <string key="name">queryInfoButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryInfoPaneSplitView">
+ <string key="name">queryInfoPaneSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runAllButton">
+ <string key="name">runAllButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionButton">
+ <string key="name">runPrimaryActionButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionButtonAsSelection">
+ <string key="name">runPrimaryActionButtonAsSelection</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionMenuItem">
+ <string key="name">runPrimaryActionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runSecondaryActionMenuItem">
+ <string key="name">runSecondaryActionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveHistoryMenuItem">
+ <string key="name">saveHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveQueryFavoriteButton">
+ <string key="name">saveQueryFavoriteButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveQueryFavoriteGlobal">
+ <string key="name">saveQueryFavoriteGlobal</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="shiftLeftMenuItem">
+ <string key="name">shiftLeftMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="shiftRightMenuItem">
+ <string key="name">shiftRightMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="textView">
+ <string key="name">textView</string>
+ <string key="candidateClassName">SPTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="valueSheet">
+ <string key="name">valueSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="valueTextField">
+ <string key="name">valueTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="searchInDocForWebViewSelection:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="showHelpForWebViewSelection:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
+ <string key="name">searchInDocForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForWebViewSelection:">
+ <string key="name">showHelpForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseData</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">closeErrorConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionDelegate.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addDatabaseButton">id</string>
+ <string key="chooseDatabaseButton">id</string>
+ <string key="connectionErrorDialog">NSWindow</string>
+ <string key="contentViewSplitter">SPSplitView</string>
+ <string key="copyDatabaseButton">id</string>
+ <string key="copyDatabaseDataButton">NSButton</string>
+ <string key="copyDatabaseMessageField">id</string>
+ <string key="createTableSyntaxTextField">NSTextField</string>
+ <string key="createTableSyntaxTextView">NSTextView</string>
+ <string key="createTableSyntaxWindow">NSWindow</string>
+ <string key="customQueryInstance">id</string>
+ <string key="customQueryTextView">NSTextView</string>
+ <string key="databaseAlterCollationButton">NSPopUpButton</string>
+ <string key="databaseAlterEncodingButton">NSPopUpButton</string>
+ <string key="databaseAlterSheet">id</string>
+ <string key="databaseCollationButton">id</string>
+ <string key="databaseCopyNameField">id</string>
+ <string key="databaseCopySheet">id</string>
+ <string key="databaseDataInstance">id</string>
+ <string key="databaseEncodingButton">id</string>
+ <string key="databaseNameField">id</string>
+ <string key="databaseRenameNameField">id</string>
+ <string key="databaseRenameSheet">id</string>
+ <string key="databaseSheet">id</string>
+ <string key="dbTablesTableView">NSTableView</string>
+ <string key="documentActivityScrollView">NSScrollView</string>
+ <string key="encodingPopUp">NSPopUpButton</string>
+ <string key="exportControllerInstance">id</string>
+ <string key="extendedTableInfoInstance">id</string>
+ <string key="favoritesButton">id</string>
+ <string key="historyControl">id</string>
+ <string key="inputTextWindow">id</string>
+ <string key="inputTextWindowHeader">id</string>
+ <string key="inputTextWindowMessage">id</string>
+ <string key="inputTextWindowSecureTextField">id</string>
+ <string key="listFilterField">NSSearchField</string>
+ <string key="parentView">NSView</string>
+ <string key="queryProgressBar">NSProgressIndicator</string>
+ <string key="renameDatabaseButton">id</string>
+ <string key="renameDatabaseMessageField">id</string>
+ <string key="saveConnectionAccessory">id</string>
+ <string key="saveConnectionAutoConnect">NSButton</string>
+ <string key="saveConnectionEncrypt">NSButton</string>
+ <string key="saveConnectionEncryptString">NSSecureTextField</string>
+ <string key="saveConnectionIncludeData">NSButton</string>
+ <string key="saveConnectionIncludeQuery">NSButton</string>
+ <string key="saveConnectionSavePassword">NSButton</string>
+ <string key="saveConnectionSavePasswordAlert">id</string>
+ <string key="spHistoryControllerInstance">id</string>
+ <string key="statusTableAccessoryView">id</string>
+ <string key="statusTableCopyChecksum">id</string>
+ <string key="statusTableView">id</string>
+ <string key="tableContentInstance">SPTableContent</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDumpInstance">id</string>
+ <string key="tableInfoScrollView">NSScrollView</string>
+ <string key="tableInfoTable">NSTableView</string>
+ <string key="tableRelationsInstance">id</string>
+ <string key="tableSourceInstance">SPTableStructure</string>
+ <string key="tableTabView">NSTabView</string>
+ <string key="tableTriggersInstance">id</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ <string key="taskCancelButton">NSButton</string>
+ <string key="taskDescriptionText">id</string>
+ <string key="taskProgressIndicator">id</string>
+ <string key="taskProgressLayer">NSBox</string>
+ <string key="titleAccessoryView">id</string>
+ <string key="titleImageView">id</string>
+ <string key="titleStringView">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addDatabaseButton">
+ <string key="name">addDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="chooseDatabaseButton">
+ <string key="name">chooseDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="connectionErrorDialog">
+ <string key="name">connectionErrorDialog</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentViewSplitter">
+ <string key="name">contentViewSplitter</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseButton">
+ <string key="name">copyDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseDataButton">
+ <string key="name">copyDatabaseDataButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseMessageField">
+ <string key="name">copyDatabaseMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxTextField">
+ <string key="name">createTableSyntaxTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxTextView">
+ <string key="name">createTableSyntaxTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxWindow">
+ <string key="name">createTableSyntaxWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryTextView">
+ <string key="name">customQueryTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterCollationButton">
+ <string key="name">databaseAlterCollationButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterEncodingButton">
+ <string key="name">databaseAlterEncodingButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterSheet">
+ <string key="name">databaseAlterSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCollationButton">
+ <string key="name">databaseCollationButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCopyNameField">
+ <string key="name">databaseCopyNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCopySheet">
+ <string key="name">databaseCopySheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseEncodingButton">
+ <string key="name">databaseEncodingButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseNameField">
+ <string key="name">databaseNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseRenameNameField">
+ <string key="name">databaseRenameNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseRenameSheet">
+ <string key="name">databaseRenameSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseSheet">
+ <string key="name">databaseSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="dbTablesTableView">
+ <string key="name">dbTablesTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="documentActivityScrollView">
+ <string key="name">documentActivityScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopUp">
+ <string key="name">encodingPopUp</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportControllerInstance">
+ <string key="name">exportControllerInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="favoritesButton">
+ <string key="name">favoritesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="historyControl">
+ <string key="name">historyControl</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindow">
+ <string key="name">inputTextWindow</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowHeader">
+ <string key="name">inputTextWindowHeader</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowMessage">
+ <string key="name">inputTextWindowMessage</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowSecureTextField">
+ <string key="name">inputTextWindowSecureTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="listFilterField">
+ <string key="name">listFilterField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="parentView">
+ <string key="name">parentView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryProgressBar">
+ <string key="name">queryProgressBar</string>
+ <string key="candidateClassName">NSProgressIndicator</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameDatabaseButton">
+ <string key="name">renameDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameDatabaseMessageField">
+ <string key="name">renameDatabaseMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionAccessory">
+ <string key="name">saveConnectionAccessory</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionAutoConnect">
+ <string key="name">saveConnectionAutoConnect</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionEncrypt">
+ <string key="name">saveConnectionEncrypt</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionEncryptString">
+ <string key="name">saveConnectionEncryptString</string>
+ <string key="candidateClassName">NSSecureTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionIncludeData">
+ <string key="name">saveConnectionIncludeData</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionIncludeQuery">
+ <string key="name">saveConnectionIncludeQuery</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionSavePassword">
+ <string key="name">saveConnectionSavePassword</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionSavePasswordAlert">
+ <string key="name">saveConnectionSavePasswordAlert</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableAccessoryView">
+ <string key="name">statusTableAccessoryView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableCopyChecksum">
+ <string key="name">statusTableCopyChecksum</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableView">
+ <string key="name">statusTableView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentInstance">
+ <string key="name">tableContentInstance</string>
+ <string key="candidateClassName">SPTableContent</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDumpInstance">
+ <string key="name">tableDumpInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoScrollView">
+ <string key="name">tableInfoScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoTable">
+ <string key="name">tableInfoTable</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRelationsInstance">
+ <string key="name">tableRelationsInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTabView">
+ <string key="name">tableTabView</string>
+ <string key="candidateClassName">NSTabView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTriggersInstance">
+ <string key="name">tableTriggersInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskCancelButton">
+ <string key="name">taskCancelButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskDescriptionText">
+ <string key="name">taskDescriptionText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskProgressIndicator">
+ <string key="name">taskProgressIndicator</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskProgressLayer">
+ <string key="name">taskProgressLayer</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleAccessoryView">
+ <string key="name">titleAccessoryView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleImageView">
+ <string key="name">titleImageView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleStringView">
+ <string key="name">titleStringView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPrintController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="resetAutoIncrementResetButton">id</string>
+ <string key="tableCollationPopUpButton">NSPopUpButton</string>
+ <string key="tableCommentsTextView">NSTextView</string>
+ <string key="tableCreateSyntaxTextView">NSTextView</string>
+ <string key="tableCreatedAt">NSTextField</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDataSize">NSTextField</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tableEncodingPopUpButton">NSPopUpButton</string>
+ <string key="tableIndexSize">NSTextField</string>
+ <string key="tableMaxDataSize">NSTextField</string>
+ <string key="tableRowAutoIncrement">NSTextField</string>
+ <string key="tableRowAvgLength">NSTextField</string>
+ <string key="tableRowFormat">NSTextField</string>
+ <string key="tableRowNumber">NSTextField</string>
+ <string key="tableSizeFree">NSTextField</string>
+ <string key="tableSourceInstance">id</string>
+ <string key="tableTypePopUpButton">NSPopUpButton</string>
+ <string key="tableUpdatedAt">NSTextField</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementResetButton">
+ <string key="name">resetAutoIncrementResetButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCollationPopUpButton">
+ <string key="name">tableCollationPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCommentsTextView">
+ <string key="name">tableCommentsTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCreateSyntaxTextView">
+ <string key="name">tableCreateSyntaxTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCreatedAt">
+ <string key="name">tableCreatedAt</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataSize">
+ <string key="name">tableDataSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableEncodingPopUpButton">
+ <string key="name">tableEncodingPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableIndexSize">
+ <string key="name">tableIndexSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableMaxDataSize">
+ <string key="name">tableMaxDataSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowAutoIncrement">
+ <string key="name">tableRowAutoIncrement</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowAvgLength">
+ <string key="name">tableRowAvgLength</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowFormat">
+ <string key="name">tableRowFormat</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowNumber">
+ <string key="name">tableRowNumber</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSizeFree">
+ <string key="name">tableSizeFree</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTypePopUpButton">
+ <string key="name">tableTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableUpdatedAt">
+ <string key="name">tableUpdatedAt</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPFieldMapperController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addGlobalSourceVariable:">id</string>
+ <string key="addGlobalValue:">id</string>
+ <string key="addNewColumn:">id</string>
+ <string key="advancedCheckboxValidation:">id</string>
+ <string key="changeFieldAlignment:">id</string>
+ <string key="changeHasHeaderCheckbox:">id</string>
+ <string key="changeImportMethod:">id</string>
+ <string key="changeTableTarget:">id</string>
+ <string key="closeGlobalValuesSheet:">id</string>
+ <string key="closeInfoSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="goBackToFileChooser:">id</string>
+ <string key="goBackToFileChooserFromPathControl:">id</string>
+ <string key="insertNULLValue:">id</string>
+ <string key="insertPulldownValue:">id</string>
+ <string key="insertRecentGlobalValue:">id</string>
+ <string key="newTable:">id</string>
+ <string key="newTableInfo:">id</string>
+ <string key="openAdvancedSheet:">id</string>
+ <string key="removeGlobalValue:">id</string>
+ <string key="removeNewColumn:">id</string>
+ <string key="setAllTypesTo:">id</string>
+ <string key="stepRow:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addGlobalSourceVariable:">
+ <string key="name">addGlobalSourceVariable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addGlobalValue:">
+ <string key="name">addGlobalValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addNewColumn:">
+ <string key="name">addNewColumn:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="advancedCheckboxValidation:">
+ <string key="name">advancedCheckboxValidation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeFieldAlignment:">
+ <string key="name">changeFieldAlignment:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeHasHeaderCheckbox:">
+ <string key="name">changeHasHeaderCheckbox:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeImportMethod:">
+ <string key="name">changeImportMethod:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeTableTarget:">
+ <string key="name">changeTableTarget:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeGlobalValuesSheet:">
+ <string key="name">closeGlobalValuesSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeInfoSheet:">
+ <string key="name">closeInfoSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="goBackToFileChooser:">
+ <string key="name">goBackToFileChooser:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="goBackToFileChooserFromPathControl:">
+ <string key="name">goBackToFileChooserFromPathControl:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLValue:">
+ <string key="name">insertNULLValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertPulldownValue:">
+ <string key="name">insertPulldownValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertRecentGlobalValue:">
+ <string key="name">insertRecentGlobalValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="newTable:">
+ <string key="name">newTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="newTableInfo:">
+ <string key="name">newTableInfo:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openAdvancedSheet:">
+ <string key="name">openAdvancedSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeGlobalValue:">
+ <string key="name">removeGlobalValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeNewColumn:">
+ <string key="name">removeNewColumn:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setAllTypesTo:">
+ <string key="name">setAllTypesTo:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="stepRow:">
+ <string key="name">stepRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addGlobalValueButton">NSButton</string>
+ <string key="addNewColumnMenuItem">NSMenuItem</string>
+ <string key="addRemainingDataSwitch">NSButton</string>
+ <string key="advancedBox">NSBox</string>
+ <string key="advancedButton">NSButton</string>
+ <string key="advancedInsertView">NSView</string>
+ <string key="advancedLabel">NSTextField</string>
+ <string key="advancedReplaceView">NSView</string>
+ <string key="advancedUpdateView">NSView</string>
+ <string key="alignByPopup">NSPopUpButton</string>
+ <string key="alignByPopupLabel">NSTextField</string>
+ <string key="delayedCheckBox">NSButton</string>
+ <string key="delayedReplaceCheckBox">NSButton</string>
+ <string key="fieldMapperTableScrollView">NSScrollView</string>
+ <string key="fieldMapperTableView">SPTableView</string>
+ <string key="fileSourcePath">NSPathControl</string>
+ <string key="globalValuesSheet">NSWindow</string>
+ <string key="globalValuesTableView">NSTableView</string>
+ <string key="gobackButton">NSButton</string>
+ <string key="highPriorityCheckBox">NSButton</string>
+ <string key="ignoreCheckBox">NSButton</string>
+ <string key="ignoreUpdateCheckBox">NSButton</string>
+ <string key="importButton">NSButton</string>
+ <string key="importFieldNamesHeaderSwitch">NSButton</string>
+ <string key="importMethodLabel">NSTextField</string>
+ <string key="importMethodPopup">NSPopUpButton</string>
+ <string key="insertNULLValueButton">NSButton</string>
+ <string key="insertPullDownButton">NSPopUpButton</string>
+ <string key="lowPriorityCheckBox">NSButton</string>
+ <string key="lowPriorityReplaceCheckBox">NSButton</string>
+ <string key="lowPriorityUpdateCheckBox">NSButton</string>
+ <string key="matchingNameMenuItem">NSMenuItem</string>
+ <string key="newTableButton">NSButton</string>
+ <string key="newTableInfoEncodingPopup">NSPopUpButton</string>
+ <string key="newTableInfoEnginePopup">NSPopUpButton</string>
+ <string key="newTableInfoWindow">NSWindow</string>
+ <string key="newTableNameInfoButton">NSButton</string>
+ <string key="newTableNameLabel">NSTextField</string>
+ <string key="newTableNameTextField">NSTextField</string>
+ <string key="onupdateCheckBox">NSButton</string>
+ <string key="onupdateTextView">SPTextView</string>
+ <string key="recentGlobalValueMenu">NSMenu</string>
+ <string key="recordCountLabel">NSTextField</string>
+ <string key="removeGlobalValueButton">NSButton</string>
+ <string key="replaceAfterSavingCheckBox">NSButton</string>
+ <string key="rowDownButton">NSButton</string>
+ <string key="rowUpButton">NSButton</string>
+ <string key="setAllTypesToMenuItem">NSMenuItem</string>
+ <string key="skipexistingRowsCheckBox">NSButton</string>
+ <string key="tableTargetPopup">NSPopUpButton</string>
+ <string key="typeComboxBox">NSComboBoxCell</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addGlobalValueButton">
+ <string key="name">addGlobalValueButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addNewColumnMenuItem">
+ <string key="name">addNewColumnMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addRemainingDataSwitch">
+ <string key="name">addRemainingDataSwitch</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="advancedBox">
+ <string key="name">advancedBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="advancedButton">
+ <string key="name">advancedButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="advancedInsertView">
+ <string key="name">advancedInsertView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="advancedLabel">
+ <string key="name">advancedLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="advancedReplaceView">
+ <string key="name">advancedReplaceView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="advancedUpdateView">
+ <string key="name">advancedUpdateView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="alignByPopup">
+ <string key="name">alignByPopup</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="alignByPopupLabel">
+ <string key="name">alignByPopupLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="delayedCheckBox">
+ <string key="name">delayedCheckBox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="delayedReplaceCheckBox">
+ <string key="name">delayedReplaceCheckBox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="fieldMapperTableScrollView">
+ <string key="name">fieldMapperTableScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="fieldMapperTableView">
+ <string key="name">fieldMapperTableView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="fileSourcePath">
+ <string key="name">fileSourcePath</string>
+ <string key="candidateClassName">NSPathControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="globalValuesSheet">
+ <string key="name">globalValuesSheet</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="globalValuesTableView">
+ <string key="name">globalValuesTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="gobackButton">
+ <string key="name">gobackButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="highPriorityCheckBox">
+ <string key="name">highPriorityCheckBox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="ignoreCheckBox">
+ <string key="name">ignoreCheckBox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="ignoreUpdateCheckBox">
+ <string key="name">ignoreUpdateCheckBox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importButton">
+ <string key="name">importButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFieldNamesHeaderSwitch">
+ <string key="name">importFieldNamesHeaderSwitch</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importMethodLabel">
+ <string key="name">importMethodLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importMethodPopup">
+ <string key="name">importMethodPopup</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="insertNULLValueButton">
+ <string key="name">insertNULLValueButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="insertPullDownButton">
+ <string key="name">insertPullDownButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="lowPriorityCheckBox">
+ <string key="name">lowPriorityCheckBox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="lowPriorityReplaceCheckBox">
+ <string key="name">lowPriorityReplaceCheckBox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="lowPriorityUpdateCheckBox">
+ <string key="name">lowPriorityUpdateCheckBox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="matchingNameMenuItem">
+ <string key="name">matchingNameMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="newTableButton">
+ <string key="name">newTableButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="newTableInfoEncodingPopup">
+ <string key="name">newTableInfoEncodingPopup</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="newTableInfoEnginePopup">
+ <string key="name">newTableInfoEnginePopup</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="newTableInfoWindow">
+ <string key="name">newTableInfoWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="newTableNameInfoButton">
+ <string key="name">newTableNameInfoButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="newTableNameLabel">
+ <string key="name">newTableNameLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="newTableNameTextField">
+ <string key="name">newTableNameTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="onupdateCheckBox">
+ <string key="name">onupdateCheckBox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="onupdateTextView">
+ <string key="name">onupdateTextView</string>
+ <string key="candidateClassName">SPTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="recentGlobalValueMenu">
+ <string key="name">recentGlobalValueMenu</string>
+ <string key="candidateClassName">NSMenu</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="recordCountLabel">
+ <string key="name">recordCountLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeGlobalValueButton">
+ <string key="name">removeGlobalValueButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="replaceAfterSavingCheckBox">
+ <string key="name">replaceAfterSavingCheckBox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="rowDownButton">
+ <string key="name">rowDownButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="rowUpButton">
+ <string key="name">rowUpButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="setAllTypesToMenuItem">
+ <string key="name">setAllTypesToMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="skipexistingRowsCheckBox">
+ <string key="name">skipexistingRowsCheckBox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTargetPopup">
+ <string key="name">tableTargetPopup</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="typeComboxBox">
+ <string key="name">typeComboxBox</string>
+ <string key="candidateClassName">NSComboBoxCell</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPFieldMapperController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPFieldMapperController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addGlobalSourceVariable:">id</string>
+ <string key="addGlobalValue:">id</string>
+ <string key="addNewColumn:">id</string>
+ <string key="advancedCheckboxValidation:">id</string>
+ <string key="changeFieldAlignment:">id</string>
+ <string key="changeHasHeaderCheckbox:">id</string>
+ <string key="changeImportMethod:">id</string>
+ <string key="changeTableTarget:">id</string>
+ <string key="closeGlobalValuesSheet:">id</string>
+ <string key="closeInfoSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="goBackToFileChooser:">id</string>
+ <string key="goBackToFileChooserFromPathControl:">id</string>
+ <string key="insertNULLValue:">id</string>
+ <string key="insertPulldownValue:">id</string>
+ <string key="insertRecentGlobalValue:">id</string>
+ <string key="newTable:">id</string>
+ <string key="newTableInfo:">id</string>
+ <string key="openAdvancedSheet:">id</string>
+ <string key="removeGlobalValue:">id</string>
+ <string key="removeNewColumn:">id</string>
+ <string key="setAllTypesTo:">id</string>
+ <string key="stepRow:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addGlobalSourceVariable:">
+ <string key="name">addGlobalSourceVariable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addGlobalValue:">
+ <string key="name">addGlobalValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addNewColumn:">
+ <string key="name">addNewColumn:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="advancedCheckboxValidation:">
+ <string key="name">advancedCheckboxValidation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeFieldAlignment:">
+ <string key="name">changeFieldAlignment:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeHasHeaderCheckbox:">
+ <string key="name">changeHasHeaderCheckbox:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeImportMethod:">
+ <string key="name">changeImportMethod:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeTableTarget:">
+ <string key="name">changeTableTarget:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeGlobalValuesSheet:">
+ <string key="name">closeGlobalValuesSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeInfoSheet:">
+ <string key="name">closeInfoSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="goBackToFileChooser:">
+ <string key="name">goBackToFileChooser:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="goBackToFileChooserFromPathControl:">
+ <string key="name">goBackToFileChooserFromPathControl:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLValue:">
+ <string key="name">insertNULLValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertPulldownValue:">
+ <string key="name">insertPulldownValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertRecentGlobalValue:">
+ <string key="name">insertRecentGlobalValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="newTable:">
+ <string key="name">newTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="newTableInfo:">
+ <string key="name">newTableInfo:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openAdvancedSheet:">
+ <string key="name">openAdvancedSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeGlobalValue:">
+ <string key="name">removeGlobalValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeNewColumn:">
+ <string key="name">removeNewColumn:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setAllTypesTo:">
+ <string key="name">setAllTypesTo:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="stepRow:">
+ <string key="name">stepRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPFieldMapperController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <string key="superclassName">NSObject</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="historyControl">NSSegmentedControl</string>
+ <string key="theDocument">SPDatabaseDocument</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="historyControl">
+ <string key="name">historyControl</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="theDocument">
+ <string key="name">theDocument</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addIndexButton">NSButton</string>
+ <string key="addIndexedColumnButton">NSButton</string>
+ <string key="anchoredButtonBar">NSBox</string>
+ <string key="confirmAddIndexButton">NSButton</string>
+ <string key="dbDocument">SPDatabaseDocument</string>
+ <string key="indexAdvancedOptionsView">NSView</string>
+ <string key="indexAdvancedOptionsViewButton">NSButton</string>
+ <string key="indexAdvancedOptionsViewLabelButton">NSButton</string>
+ <string key="indexKeyBlockSizeTextField">NSTextField</string>
+ <string key="indexNameLabel">NSTextField</string>
+ <string key="indexNameTextField">NSTextField</string>
+ <string key="indexSizeTableColumn">NSTableColumn</string>
+ <string key="indexStorageTypePopUpButton">NSPopUpButton</string>
+ <string key="indexTypeLabel">NSTextField</string>
+ <string key="indexTypePopUpButton">NSPopUpButton</string>
+ <string key="indexedColumnsScrollView">NSScrollView</string>
+ <string key="indexedColumnsTableView">NSTableView</string>
+ <string key="indexesTableView">SPTableView</string>
+ <string key="removeIndexButton">NSButton</string>
+ <string key="removeIndexedColumnButton">NSButton</string>
+ <string key="tableData">SPTableData</string>
+ <string key="tableStructure">SPTableStructure</string>
+ <string key="tablesList">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addIndexButton">
+ <string key="name">addIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addIndexedColumnButton">
+ <string key="name">addIndexedColumnButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="anchoredButtonBar">
+ <string key="name">anchoredButtonBar</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="confirmAddIndexButton">
+ <string key="name">confirmAddIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="dbDocument">
+ <string key="name">dbDocument</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsView">
+ <string key="name">indexAdvancedOptionsView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsViewButton">
+ <string key="name">indexAdvancedOptionsViewButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsViewLabelButton">
+ <string key="name">indexAdvancedOptionsViewLabelButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexKeyBlockSizeTextField">
+ <string key="name">indexKeyBlockSizeTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexNameLabel">
+ <string key="name">indexNameLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexNameTextField">
+ <string key="name">indexNameTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexSizeTableColumn">
+ <string key="name">indexSizeTableColumn</string>
+ <string key="candidateClassName">NSTableColumn</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexStorageTypePopUpButton">
+ <string key="name">indexStorageTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexTypeLabel">
+ <string key="name">indexTypeLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexTypePopUpButton">
+ <string key="name">indexTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexedColumnsScrollView">
+ <string key="name">indexedColumnsScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexedColumnsTableView">
+ <string key="name">indexedColumnsTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesTableView">
+ <string key="name">indexesTableView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexButton">
+ <string key="name">removeIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexedColumnButton">
+ <string key="name">removeIndexedColumnButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableData">
+ <string key="name">tableData</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableStructure">
+ <string key="name">tableStructure</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesList">
+ <string key="name">tablesList</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <string key="superclassName">NSSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="additionalDragHandleView">NSView</string>
+ <string key="collapseToggleButton">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="additionalDragHandleView">
+ <string key="name">additionalDragHandleView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="collapseToggleButton">
+ <string key="name">collapseToggleButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addButton">id</string>
+ <string key="argumentField">id</string>
+ <string key="betweenTextField">id</string>
+ <string key="compareField">id</string>
+ <string key="contentSplitView">SPSplitView</string>
+ <string key="contentViewPane">NSView</string>
+ <string key="countText">id</string>
+ <string key="duplicateButton">id</string>
+ <string key="fieldField">NSPopUpButton</string>
+ <string key="filterButton">id</string>
+ <string key="filterControllerInstance">SPTableContentFilterController</string>
+ <string key="filterTableClearButton">NSButton</string>
+ <string key="filterTableDistinctCheckbox">NSButton</string>
+ <string key="filterTableFilterButton">NSButton</string>
+ <string key="filterTableLiveSearchCheckbox">NSButton</string>
+ <string key="filterTableNegateCheckbox">NSButton</string>
+ <string key="filterTableQueryTitle">NSTextField</string>
+ <string key="filterTableSearchAllFields">NSButton</string>
+ <string key="filterTableSetDefaultOperatorSheet">NSPanel</string>
+ <string key="filterTableSetDefaultOperatorValue">NSComboBox</string>
+ <string key="filterTableSplitView">SPSplitView</string>
+ <string key="filterTableView">SPCopyTable</string>
+ <string key="filterTableWhereClause">SPTextView</string>
+ <string key="filterTableWindow">NSPanel</string>
+ <string key="firstBetweenField">id</string>
+ <string key="limitRowsButton">id</string>
+ <string key="limitRowsField">id</string>
+ <string key="limitRowsStepper">id</string>
+ <string key="multipleLineEditingButton">NSButton</string>
+ <string key="paginationBox">NSBox</string>
+ <string key="paginationButton">NSButton</string>
+ <string key="paginationGoButton">NSButton</string>
+ <string key="paginationNextButton">NSButton</string>
+ <string key="paginationPageField">NSTextField</string>
+ <string key="paginationPageStepper">NSStepper</string>
+ <string key="paginationPreviousButton">NSButton</string>
+ <string key="paginationView">NSView</string>
+ <string key="paginationViewController">NSViewController</string>
+ <string key="reloadButton">id</string>
+ <string key="removeButton">id</string>
+ <string key="secondBetweenField">id</string>
+ <string key="spHistoryControllerInstance">SPHistoryController</string>
+ <string key="tableContentView">SPCopyTable</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableInfoInstance">SPTableInfo</string>
+ <string key="tableSourceInstance">id</string>
+ <string key="tablesListInstance">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addButton">
+ <string key="name">addButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="argumentField">
+ <string key="name">argumentField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="betweenTextField">
+ <string key="name">betweenTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="compareField">
+ <string key="name">compareField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentSplitView">
+ <string key="name">contentSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentViewPane">
+ <string key="name">contentViewPane</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="countText">
+ <string key="name">countText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateButton">
+ <string key="name">duplicateButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="fieldField">
+ <string key="name">fieldField</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterButton">
+ <string key="name">filterButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterControllerInstance">
+ <string key="name">filterControllerInstance</string>
+ <string key="candidateClassName">SPTableContentFilterController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableClearButton">
+ <string key="name">filterTableClearButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableDistinctCheckbox">
+ <string key="name">filterTableDistinctCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableFilterButton">
+ <string key="name">filterTableFilterButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableLiveSearchCheckbox">
+ <string key="name">filterTableLiveSearchCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableNegateCheckbox">
+ <string key="name">filterTableNegateCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableQueryTitle">
+ <string key="name">filterTableQueryTitle</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSearchAllFields">
+ <string key="name">filterTableSearchAllFields</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSetDefaultOperatorSheet">
+ <string key="name">filterTableSetDefaultOperatorSheet</string>
+ <string key="candidateClassName">NSPanel</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSetDefaultOperatorValue">
+ <string key="name">filterTableSetDefaultOperatorValue</string>
+ <string key="candidateClassName">NSComboBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSplitView">
+ <string key="name">filterTableSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableView">
+ <string key="name">filterTableView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableWhereClause">
+ <string key="name">filterTableWhereClause</string>
+ <string key="candidateClassName">SPTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableWindow">
+ <string key="name">filterTableWindow</string>
+ <string key="candidateClassName">NSPanel</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="firstBetweenField">
+ <string key="name">firstBetweenField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsButton">
+ <string key="name">limitRowsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsField">
+ <string key="name">limitRowsField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsStepper">
+ <string key="name">limitRowsStepper</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="multipleLineEditingButton">
+ <string key="name">multipleLineEditingButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationBox">
+ <string key="name">paginationBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationButton">
+ <string key="name">paginationButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationGoButton">
+ <string key="name">paginationGoButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationNextButton">
+ <string key="name">paginationNextButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPageField">
+ <string key="name">paginationPageField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPageStepper">
+ <string key="name">paginationPageStepper</string>
+ <string key="candidateClassName">NSStepper</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPreviousButton">
+ <string key="name">paginationPreviousButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationView">
+ <string key="name">paginationView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationViewController">
+ <string key="name">paginationViewController</string>
+ <string key="candidateClassName">NSViewController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="reloadButton">
+ <string key="name">reloadButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeButton">
+ <string key="name">removeButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="secondBetweenField">
+ <string key="name">secondBetweenField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">SPHistoryController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentView">
+ <string key="name">tableContentView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">SPTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContentFilterController</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="contentSplitView">SPSplitView</string>
+ <string key="filterRuleEditor">NSRuleEditor</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="contentSplitView">
+ <string key="name">contentSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterRuleEditor">
+ <string key="name">filterRuleEditor</string>
+ <string key="candidateClassName">NSRuleEditor</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContentFilterController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableData</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListInstance">
+ <string key="name">tableListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableInfo</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="activitiesTable">NSTableView</string>
+ <string key="infoTable">id</string>
+ <string key="tableDataInstance">id</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tableInfoScrollView">NSScrollView</string>
+ <string key="tableList">id</string>
+ <string key="tableListInstance">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="activitiesTable">
+ <string key="name">activitiesTable</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="infoTable">
+ <string key="name">infoTable</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoScrollView">
+ <string key="name">tableInfoScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableList">
+ <string key="name">tableList</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListInstance">
+ <string key="name">tableListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addFieldButton">id</string>
+ <string key="addIndexButton">id</string>
+ <string key="chooseKeyButton">id</string>
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="duplicateFieldButton">id</string>
+ <string key="editTableButton">id</string>
+ <string key="encodingPopupCell">NSPopUpButtonCell</string>
+ <string key="extendedTableInfoInstance">SPExtendedTableInfo</string>
+ <string key="indexesController">SPIndexesController</string>
+ <string key="indexesShowButton">NSButton</string>
+ <string key="indexesTableView">SPTableView</string>
+ <string key="keySheet">id</string>
+ <string key="refreshIndexesButton">id</string>
+ <string key="reloadFieldsButton">id</string>
+ <string key="removeFieldButton">id</string>
+ <string key="removeIndexButton">id</string>
+ <string key="resetAutoIncrementLine">id</string>
+ <string key="resetAutoIncrementSheet">id</string>
+ <string key="resetAutoIncrementValue">id</string>
+ <string key="structureGrabber">id</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableInfoInstance">SPTableInfo</string>
+ <string key="tableSourceView">SPTableView</string>
+ <string key="tablesIndexesSplitView">NSSplitView</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ <string key="viewColumnsMenu">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addFieldButton">
+ <string key="name">addFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addIndexButton">
+ <string key="name">addIndexButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="chooseKeyButton">
+ <string key="name">chooseKeyButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateFieldButton">
+ <string key="name">duplicateFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editTableButton">
+ <string key="name">editTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopupCell">
+ <string key="name">encodingPopupCell</string>
+ <string key="candidateClassName">NSPopUpButtonCell</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">SPExtendedTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesController">
+ <string key="name">indexesController</string>
+ <string key="candidateClassName">SPIndexesController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesShowButton">
+ <string key="name">indexesShowButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesTableView">
+ <string key="name">indexesTableView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="keySheet">
+ <string key="name">keySheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="refreshIndexesButton">
+ <string key="name">refreshIndexesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="reloadFieldsButton">
+ <string key="name">reloadFieldsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeFieldButton">
+ <string key="name">removeFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexButton">
+ <string key="name">removeIndexButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementLine">
+ <string key="name">resetAutoIncrementLine</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementSheet">
+ <string key="name">resetAutoIncrementSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementValue">
+ <string key="name">resetAutoIncrementValue</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="structureGrabber">
+ <string key="name">structureGrabber</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">SPTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceView">
+ <string key="name">tableSourceView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesIndexesSplitView">
+ <string key="name">tablesIndexesSplitView</string>
+ <string key="candidateClassName">NSSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="viewColumnsMenu">
+ <string key="name">viewColumnsMenu</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableView</string>
+ <string key="superclassName">NSTableView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTablesList</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addTableButton">id</string>
+ <string key="copyCreateSyntaxContextMenuItem">NSMenuItem</string>
+ <string key="copyCreateSyntaxMenuItem">NSMenuItem</string>
+ <string key="copyTableButton">id</string>
+ <string key="copyTableContentSwitch">NSButton</string>
+ <string key="copyTableMessageField">id</string>
+ <string key="copyTableNameField">id</string>
+ <string key="copyTableSheet">id</string>
+ <string key="customQueryInstance">id</string>
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="duplicateTableContextMenuItem">NSMenuItem</string>
+ <string key="duplicateTableMenuItem">NSMenuItem</string>
+ <string key="extendedTableInfoInstance">id</string>
+ <string key="listFilterField">NSSearchField</string>
+ <string key="openTableInNewTabContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewTabMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowMenuItem">NSMenuItem</string>
+ <string key="removeTableContextMenuItem">NSMenuItem</string>
+ <string key="removeTableMenuItem">NSMenuItem</string>
+ <string key="renameTableContextMenuItem">NSMenuItem</string>
+ <string key="renameTableMenuItem">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem2">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem3">NSMenuItem</string>
+ <string key="separatorTableMenuItem">NSMenuItem</string>
+ <string key="separatorTableMenuItem2">NSMenuItem</string>
+ <string key="separatorTableMenuItem3">NSMenuItem</string>
+ <string key="showCreateSyntaxContextMenuItem">NSMenuItem</string>
+ <string key="showCreateSyntaxMenuItem">NSMenuItem</string>
+ <string key="spHistoryControllerInstance">SPHistoryController</string>
+ <string key="tableCollationButton">id</string>
+ <string key="tableContentInstance">SPTableContent</string>
+ <string key="tableDataInstance">id</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableDumpInstance">id</string>
+ <string key="tableEncodingButton">id</string>
+ <string key="tableInfoInstance">id</string>
+ <string key="tableListFilterSplitView">SPSplitView</string>
+ <string key="tableListSplitView">SPSplitView</string>
+ <string key="tableNameField">id</string>
+ <string key="tableSheet">id</string>
+ <string key="tableSourceInstance">SPTableStructure</string>
+ <string key="tableTriggersInstance">id</string>
+ <string key="tableTypeButton">id</string>
+ <string key="tablesListView">SPTableView</string>
+ <string key="toolbarActionsButton">id</string>
+ <string key="toolbarAddButton">id</string>
+ <string key="toolbarReloadButton">id</string>
+ <string key="truncateTableButton">id</string>
+ <string key="truncateTableContextMenuItem">NSMenuItem</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addTableButton">
+ <string key="name">addTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyCreateSyntaxContextMenuItem">
+ <string key="name">copyCreateSyntaxContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyCreateSyntaxMenuItem">
+ <string key="name">copyCreateSyntaxMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableButton">
+ <string key="name">copyTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableContentSwitch">
+ <string key="name">copyTableContentSwitch</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableMessageField">
+ <string key="name">copyTableMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableNameField">
+ <string key="name">copyTableNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableSheet">
+ <string key="name">copyTableSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateTableContextMenuItem">
+ <string key="name">duplicateTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateTableMenuItem">
+ <string key="name">duplicateTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="listFilterField">
+ <string key="name">listFilterField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewTabContextMenuItem">
+ <string key="name">openTableInNewTabContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewTabMenuItem">
+ <string key="name">openTableInNewTabMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowContextMenuItem">
+ <string key="name">openTableInNewWindowContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowMenuItem">
+ <string key="name">openTableInNewWindowMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeTableContextMenuItem">
+ <string key="name">removeTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeTableMenuItem">
+ <string key="name">removeTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameTableContextMenuItem">
+ <string key="name">renameTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameTableMenuItem">
+ <string key="name">renameTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem">
+ <string key="name">separatorTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem2">
+ <string key="name">separatorTableContextMenuItem2</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem3">
+ <string key="name">separatorTableContextMenuItem3</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem">
+ <string key="name">separatorTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem2">
+ <string key="name">separatorTableMenuItem2</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem3">
+ <string key="name">separatorTableMenuItem3</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="showCreateSyntaxContextMenuItem">
+ <string key="name">showCreateSyntaxContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="showCreateSyntaxMenuItem">
+ <string key="name">showCreateSyntaxMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">SPHistoryController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCollationButton">
+ <string key="name">tableCollationButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentInstance">
+ <string key="name">tableContentInstance</string>
+ <string key="candidateClassName">SPTableContent</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDumpInstance">
+ <string key="name">tableDumpInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableEncodingButton">
+ <string key="name">tableEncodingButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListFilterSplitView">
+ <string key="name">tableListFilterSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListSplitView">
+ <string key="name">tableListSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableNameField">
+ <string key="name">tableNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSheet">
+ <string key="name">tableSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTriggersInstance">
+ <string key="name">tableTriggersInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTypeButton">
+ <string key="name">tableTypeButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListView">
+ <string key="name">tablesListView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarActionsButton">
+ <string key="name">toolbarActionsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarAddButton">
+ <string key="name">toolbarAddButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarReloadButton">
+ <string key="name">toolbarReloadButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="truncateTableButton">
+ <string key="name">truncateTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="truncateTableContextMenuItem">
+ <string key="name">truncateTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTablesList</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="tableEncodingButtonChanged:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableEncodingButtonChanged:">
+ <string key="name">tableEncodingButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <string key="superclassName">NSTextView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="customQueryInstance">SPCustomQuery</string>
+ <string key="scrollView">NSScrollView</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">SPCustomQuery</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="scrollView">
+ <string key="name">scrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="printDocument:">id</string>
+ <string key="showMySQLHelpForCurrentWord:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="printDocument:">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.m</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/DatabaseProcessList.xib b/Interfaces/English.lproj/DatabaseProcessList.xib
index 64cc67ce..7b271a72 100644
--- a/Interfaces/English.lproj/DatabaseProcessList.xib
+++ b/Interfaces/English.lproj/DatabaseProcessList.xib
@@ -3,12 +3,12 @@
<data>
<int key="IBDocument.SystemTarget">1060</int>
<string key="IBDocument.SystemVersion">13F34</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
<string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">5056</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSButton</string>
@@ -111,7 +111,7 @@
<int key="NSCellFlags2">2048</int>
<string key="NSContents">ID</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -607,7 +607,7 @@
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Clear</string>
<object class="NSFont" key="NSSupport" id="421083426">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -1092,7 +1092,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">window</string>
@@ -2079,7 +2079,6 @@
<string key="saveServerProcesses:">id</string>
<string key="setAutoRefreshInterval:">id</string>
<string key="setCustomAutoRefreshInterval:">id</string>
- <string key="showWindow:">id</string>
<string key="toggeleShowFullProcessList:">NSMenuItem</string>
<string key="toggleProcessListAutoRefresh:">NSButton</string>
<string key="toggleShowProcessID:">NSMenuItem</string>
@@ -2117,10 +2116,6 @@
<string key="name">setCustomAutoRefreshInterval:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showWindow:">
- <string key="name">showWindow:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="toggeleShowFullProcessList:">
<string key="name">toggeleShowFullProcessList:</string>
<string key="candidateClassName">NSMenuItem</string>
@@ -2195,7 +2190,73 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPProcessListController.h</string>
+ <string key="minorKey">../Source/SPProcessListController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPProcessListController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeSheet:">id</string>
+ <string key="copy:">id</string>
+ <string key="killProcessConnection:">id</string>
+ <string key="killProcessQuery:">id</string>
+ <string key="refreshProcessList:">id</string>
+ <string key="saveServerProcesses:">id</string>
+ <string key="setAutoRefreshInterval:">id</string>
+ <string key="setCustomAutoRefreshInterval:">id</string>
+ <string key="toggeleShowFullProcessList:">NSMenuItem</string>
+ <string key="toggleProcessListAutoRefresh:">NSButton</string>
+ <string key="toggleShowProcessID:">NSMenuItem</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copy:">
+ <string key="name">copy:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="killProcessConnection:">
+ <string key="name">killProcessConnection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="killProcessQuery:">
+ <string key="name">killProcessQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshProcessList:">
+ <string key="name">refreshProcessList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveServerProcesses:">
+ <string key="name">saveServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setAutoRefreshInterval:">
+ <string key="name">setAutoRefreshInterval:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCustomAutoRefreshInterval:">
+ <string key="name">setCustomAutoRefreshInterval:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggeleShowFullProcessList:">
+ <string key="name">toggeleShowFullProcessList:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="toggleProcessListAutoRefresh:">
+ <string key="name">toggleProcessListAutoRefresh:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowProcessID:">
+ <string key="name">toggleShowProcessID:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPProcessListController.m</string>
</object>
</object>
</array>
@@ -2203,10 +2264,6 @@
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/DatabaseServerVariables.xib b/Interfaces/English.lproj/DatabaseServerVariables.xib
index 406cf466..e32ec48c 100644
--- a/Interfaces/English.lproj/DatabaseServerVariables.xib
+++ b/Interfaces/English.lproj/DatabaseServerVariables.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSButton</string>
@@ -58,7 +58,7 @@
<nil key="NSUserInterfaceItemIdentifier"/>
<string key="NSWindowContentMinSize">{433, 341}</string>
<object class="NSView" key="NSWindowView" id="605976451">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSScrollView" id="365271629">
@@ -72,27 +72,31 @@
<object class="NSTableView" id="567086457">
<reference key="NSNextResponder" ref="892724959"/>
<int key="NSvFlags">256</int>
- <string key="NSFrameSize">{432, 251}</string>
+ <string key="NSFrameSize">{421, 251}</string>
<reference key="NSSuperview" ref="892724959"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
<object class="NSTableHeaderView" key="NSHeaderView" id="710723896">
<reference key="NSNextResponder" ref="551149994"/>
<int key="NSvFlags">256</int>
- <string key="NSFrameSize">{432, 17}</string>
+ <string key="NSFrameSize">{421, 17}</string>
<reference key="NSSuperview" ref="551149994"/>
+ <reference key="NSWindow"/>
<reference key="NSTableView" ref="567086457"/>
</object>
- <object class="_NSCornerView" key="NSCornerView">
- <nil key="NSNextResponder"/>
+ <object class="_NSCornerView" key="NSCornerView" id="186149490">
+ <reference key="NSNextResponder" ref="365271629"/>
<int key="NSvFlags">256</int>
<string key="NSFrame">{{422, 0}, {12, 17}}</string>
+ <reference key="NSSuperview" ref="365271629"/>
+ <reference key="NSWindow"/>
</object>
<array class="NSMutableArray" key="NSTableColumns">
<object class="NSTableColumn" id="1016923668">
<string key="NSIdentifier">Variable_name</string>
- <double key="NSWidth">230</double>
+ <double key="NSWidth">224</double>
<double key="NSMinWidth">40</double>
<double key="NSMaxWidth">1000</double>
<object class="NSTableHeaderCell" key="NSHeaderCell">
@@ -100,7 +104,7 @@
<int key="NSCellFlags2">2048</int>
<string key="NSContents">Variable Name</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -141,7 +145,7 @@
</object>
<object class="NSTableColumn" id="256631186">
<string key="NSIdentifier">Value</string>
- <double key="NSWidth">196</double>
+ <double key="NSWidth">191</double>
<double key="NSMinWidth">40</double>
<double key="NSMaxWidth">1000</double>
<object class="NSTableHeaderCell" key="NSHeaderCell">
@@ -198,18 +202,34 @@
<int key="NSTableViewGroupRowStyle">1</int>
</object>
</array>
- <string key="NSFrame">{{1, 17}, {432, 251}}</string>
+ <string key="NSFrame">{{1, 17}, {421, 251}}</string>
<reference key="NSSuperview" ref="365271629"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="567086457"/>
<reference key="NSDocView" ref="567086457"/>
<reference key="NSBGColor" ref="30234059"/>
<int key="NScvFlags">4</int>
</object>
+ <object class="NSClipView" id="551149994">
+ <reference key="NSNextResponder" ref="365271629"/>
+ <int key="NSvFlags">2338</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <reference ref="710723896"/>
+ </array>
+ <string key="NSFrame">{{1, 0}, {421, 17}}</string>
+ <reference key="NSSuperview" ref="365271629"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="710723896"/>
+ <reference key="NSDocView" ref="710723896"/>
+ <reference key="NSBGColor" ref="30234059"/>
+ <int key="NScvFlags">4</int>
+ </object>
<object class="NSScroller" id="935382091">
<reference key="NSNextResponder" ref="365271629"/>
<int key="NSvFlags">256</int>
- <string key="NSFrame">{{419, 17}, {14, 251}}</string>
+ <string key="NSFrame">{{422, 17}, {11, 251}}</string>
<reference key="NSSuperview" ref="365271629"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">256</int>
<reference key="NSTarget" ref="365271629"/>
@@ -221,34 +241,25 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {358, 11}}</string>
<reference key="NSSuperview" ref="365271629"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">257</int>
<reference key="NSTarget" ref="365271629"/>
<string key="NSAction">_doScroller:</string>
<double key="NSPercent">0.99721449613571167</double>
</object>
- <object class="NSClipView" id="551149994">
- <reference key="NSNextResponder" ref="365271629"/>
- <int key="NSvFlags">2338</int>
- <array class="NSMutableArray" key="NSSubviews">
- <reference ref="710723896"/>
- </array>
- <string key="NSFrame">{{1, 0}, {432, 17}}</string>
- <reference key="NSSuperview" ref="365271629"/>
- <reference key="NSNextKeyView" ref="710723896"/>
- <reference key="NSDocView" ref="710723896"/>
- <reference key="NSBGColor" ref="30234059"/>
- <int key="NScvFlags">4</int>
- </object>
+ <reference ref="186149490"/>
</array>
<string key="NSFrame">{{-1, 39}, {434, 269}}</string>
<reference key="NSSuperview" ref="605976451"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="892724959"/>
<int key="NSsFlags">133138</int>
<reference key="NSVScroller" ref="935382091"/>
<reference key="NSHScroller" ref="95583939"/>
<reference key="NSContentView" ref="892724959"/>
<reference key="NSHeaderClipView" ref="551149994"/>
+ <reference key="NSCornerView" ref="186149490"/>
<bytes key="NSScrollAmts">QSAAAEEgAABBkAAAQZAAAA</bytes>
<double key="NSMinMagnification">0.25</double>
<double key="NSMaxMagnification">4</double>
@@ -259,6 +270,7 @@
<int key="NSvFlags">257</int>
<string key="NSFrame">{{342, 5}, {77, 28}}</string>
<reference key="NSSuperview" ref="605976451"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="183553689">
<int key="NSCellFlags">67108864</int>
@@ -285,6 +297,7 @@
<int key="NSvFlags">260</int>
<string key="NSFrame">{{12, 5}, {125, 28}}</string>
<reference key="NSSuperview" ref="605976451"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="397417497">
<int key="NSCellFlags">-2080374784</int>
@@ -306,13 +319,14 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{9, 316}, {156, 14}}</string>
<reference key="NSSuperview" ref="605976451"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="395355434">
<int key="NSCellFlags">68157504</int>
<int key="NSCellFlags2">272761856</int>
<string key="NSContents">Server Variables</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI-Bold</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3357</int>
</object>
@@ -333,6 +347,7 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{251, 314}, {170, 19}}</string>
<reference key="NSSuperview" ref="605976451"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSSearchFieldCell" key="NSCell" id="623709875">
<int key="NSCellFlags">342884416</int>
@@ -393,6 +408,7 @@
<int key="NSvFlags">-2147483382</int>
<string key="NSFrame">{{167, 316}, {79, 14}}</string>
<reference key="NSSuperview" ref="605976451"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="690211055">
<int key="NSCellFlags">68157504</int>
@@ -408,6 +424,8 @@
</object>
</array>
<string key="NSFrameSize">{433, 341}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
<string key="NSMinSize">{433, 363}</string>
@@ -462,7 +480,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">window</string>
@@ -834,14 +852,110 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">SPServerVariablesController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeSheet:">id</string>
+ <string key="copy:">id</string>
+ <string key="copyServerVariableName:">id</string>
+ <string key="copyServerVariableValue:">id</string>
+ <string key="saveServerVariables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copy:">
+ <string key="name">copy:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyServerVariableName:">
+ <string key="name">copyServerVariableName:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyServerVariableValue:">
+ <string key="name">copyServerVariableValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveServerVariables:">
+ <string key="name">saveServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="filterVariablesSearchField">NSSearchField</string>
+ <string key="saveVariablesButton">NSButton</string>
+ <string key="variablesCountTextField">NSTextField</string>
+ <string key="variablesTableView">NSTableView</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="filterVariablesSearchField">
+ <string key="name">filterVariablesSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveVariablesButton">
+ <string key="name">saveVariablesButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="variablesCountTextField">
+ <string key="name">variablesCountTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="variablesTableView">
+ <string key="name">variablesTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPServerVariablesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPServerVariablesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeSheet:">id</string>
+ <string key="copy:">id</string>
+ <string key="copyServerVariableName:">id</string>
+ <string key="copyServerVariableValue:">id</string>
+ <string key="saveServerVariables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copy:">
+ <string key="name">copy:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyServerVariableName:">
+ <string key="name">copyServerVariableName:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyServerVariableValue:">
+ <string key="name">copyServerVariableValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveServerVariables:">
+ <string key="name">saveServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPServerVariablesController.m</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/EncodingPopupView.xib b/Interfaces/English.lproj/EncodingPopupView.xib
index 3114bbc5..2d74cd25 100644
--- a/Interfaces/English.lproj/EncodingPopupView.xib
+++ b/Interfaces/English.lproj/EncodingPopupView.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSCustomObject</string>
@@ -38,7 +38,7 @@
<string key="NSClassName">NSApplication</string>
</object>
<object class="NSCustomView" id="894430783">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">268</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextField" id="501037079">
@@ -46,13 +46,14 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{6, 10}, {143, 14}}</string>
<reference key="NSSuperview" ref="894430783"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="756380239">
<int key="NSCellFlags">68157504</int>
<int key="NSCellFlags2">71435264</int>
<string key="NSContents">File Encoding:</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -84,6 +85,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{151, 5}, {180, 22}}</string>
<reference key="NSSuperview" ref="894430783"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="835264672">
<int key="NSCellFlags">-1539309504</int>
@@ -154,12 +156,14 @@
</object>
</array>
<string key="NSFrameSize">{348, 34}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<string key="NSClassName">NSView</string>
</object>
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">encodingPopUp</string>
@@ -288,14 +292,35 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">SPEncodingPopupAccessory</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="encodingAccessoryView">NSView</string>
+ <string key="encodingPopUp">NSPopUpButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="encodingAccessoryView">
+ <string key="name">encodingAccessoryView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopUp">
+ <string key="name">encodingPopUp</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPEncodingPopupAccessory.h</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/ExportDialog.xib b/Interfaces/English.lproj/ExportDialog.xib
index 09ee1ec1..3c3d6a2f 100644
--- a/Interfaces/English.lproj/ExportDialog.xib
+++ b/Interfaces/English.lproj/ExportDialog.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSBox</string>
@@ -136,7 +136,7 @@
</array>
<reference key="NSSelectedTabViewItem" ref="397902451"/>
<object class="NSFont" key="NSFont" id="695505032">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -215,7 +215,7 @@
<int key="NSCellFlags2">131072</int>
<string key="NSContents">Low memory export (may block server)</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -571,7 +571,7 @@
<int key="NSCellFlags2">4196352</int>
<string key="NSContents">Doing Stuff…</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI-Bold</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">2072</int>
</object>
@@ -646,7 +646,7 @@
<int key="NSCellFlags2">4194304</int>
<string key="NSContents">The following export errors occurred:</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI-Bold</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3357</int>
</object>
@@ -689,7 +689,7 @@
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
- <int key="NSFlags">67111169</int>
+ <int key="NSFlags">2305</int>
<int key="NSTextCheckingTypes">0</int>
<nil key="NSMarkedAttributes"/>
<reference key="NSBackgroundColor" ref="628696263"/>
@@ -3026,7 +3026,7 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">exportProgressWindow</string>
@@ -5556,11 +5556,9 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="insertNULLvalue:">id</string>
<string key="moveSelectionLineDown:">id</string>
<string key="moveSelectionLineUp:">id</string>
- <string key="orderFrontSharingServicePicker:">id</string>
<string key="selectCurrentLine:">id</string>
<string key="selectCurrentWord:">id</string>
<string key="selectEnclosingBrackets:">id</string>
- <string key="toggleQuickLookPreviewPanel:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
@@ -5615,10 +5613,6 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="name">moveSelectionLineUp:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="orderFrontSharingServicePicker:">
- <string key="name">orderFrontSharingServicePicker:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="selectCurrentLine:">
<string key="name">selectCurrentLine:</string>
<string key="candidateClassName">id</string>
@@ -5631,14 +5625,101 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="name">selectEnclosingBrackets:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="toggleQuickLookPreviewPanel:">
- <string key="name">toggleQuickLookPreviewPanel:</string>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/NSTextView.h</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -5657,7 +5738,25 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCopyTable.h</string>
+ <string key="minorKey">../Source/SPCopyTable.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -5684,11 +5783,9 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="runSecondaryQueryAction:">id</string>
<string key="runSelectedQueries:">id</string>
<string key="saveQueryHistory:">id</string>
- <string key="searchInDocForWebViewSelection:">id</string>
<string key="showCompletionList:">id</string>
<string key="showHelpForCurrentWord:">id</string>
<string key="showHelpForSearchString:">id</string>
- <string key="showHelpForWebViewSelection:">id</string>
<string key="switchDefaultQueryAction:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
@@ -5772,10 +5869,6 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="name">saveQueryHistory:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
- <string key="name">searchInDocForWebViewSelection:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="showCompletionList:">
<string key="name">showCompletionList:</string>
<string key="candidateClassName">id</string>
@@ -5788,10 +5881,6 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="name">showHelpForSearchString:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showHelpForWebViewSelection:">
- <string key="name">showHelpForWebViewSelection:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="switchDefaultQueryAction:">
<string key="name">switchDefaultQueryAction:</string>
<string key="candidateClassName">id</string>
@@ -6078,7 +6167,148 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCustomQuery.h</string>
+ <string key="minorKey">../Source/SPCustomQuery.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="searchInDocForWebViewSelection:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="showHelpForWebViewSelection:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
+ <string key="name">searchInDocForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForWebViewSelection:">
+ <string key="name">showHelpForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -6086,7 +6316,25 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseData.h</string>
+ <string key="minorKey">../Source/SPDatabaseData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">closeErrorConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionDelegate.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -6129,6 +6377,7 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="setDatabases:">id</string>
<string key="showCreateTableSyntax:">id</string>
<string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
<string key="showMySQLHelp:">id</string>
<string key="showNavigator:">id</string>
<string key="showServerProcesses:">id</string>
@@ -6136,12 +6385,6 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="showUserManager:">id</string>
<string key="toggleNavigator:">id</string>
<string key="validateSaveConnectionAccessory:">id</string>
- <string key="viewContent:">id</string>
- <string key="viewQuery:">id</string>
- <string key="viewRelations:">id</string>
- <string key="viewStatus:">id</string>
- <string key="viewStructure:">id</string>
- <string key="viewTriggers:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="addConnectionToFavorites:">
@@ -6288,6 +6531,10 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="name">showFilterTable:</string>
<string key="candidateClassName">id</string>
</object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
<object class="IBActionInfo" key="showMySQLHelp:">
<string key="name">showMySQLHelp:</string>
<string key="candidateClassName">id</string>
@@ -6316,30 +6563,6 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="name">validateSaveConnectionAccessory:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="viewContent:">
- <string key="name">viewContent:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewQuery:">
- <string key="name">viewQuery:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewRelations:">
- <string key="name">viewRelations:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStatus:">
- <string key="name">viewStatus:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStructure:">
- <string key="name">viewStructure:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewTriggers:">
- <string key="name">viewTriggers:</string>
- <string key="candidateClassName">id</string>
- </object>
</dictionary>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="addDatabaseButton">id</string>
@@ -6692,7 +6915,338 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseDocument.h</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPrintController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -7068,7 +7622,98 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPExportController.h</string>
+ <string key="minorKey">../Source/SPExportController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExportController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="cancelExport:">id</string>
+ <string key="changeExportCompressionFormat:">id</string>
+ <string key="changeExportOutputPath:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="export:">id</string>
+ <string key="exportCustomQueryResultAsFormat:">id</string>
+ <string key="refreshTableList:">id</string>
+ <string key="selectDeselectAllTables:">id</string>
+ <string key="switchInput:">id</string>
+ <string key="toggleAdvancedExportOptionsView:">id</string>
+ <string key="toggleCustomFilenameFormatView:">id</string>
+ <string key="toggleNewFilePerTable:">NSButton</string>
+ <string key="toggleSQLIncludeContent:">NSButton</string>
+ <string key="toggleSQLIncludeDropSyntax:">NSButton</string>
+ <string key="toggleSQLIncludeStructure:">NSButton</string>
+ <string key="toggleXMLOutputFormat:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="cancelExport:">
+ <string key="name">cancelExport:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeExportCompressionFormat:">
+ <string key="name">changeExportCompressionFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeExportOutputPath:">
+ <string key="name">changeExportOutputPath:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportCustomQueryResultAsFormat:">
+ <string key="name">exportCustomQueryResultAsFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTableList:">
+ <string key="name">refreshTableList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectDeselectAllTables:">
+ <string key="name">selectDeselectAllTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchInput:">
+ <string key="name">switchInput:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedExportOptionsView:">
+ <string key="name">toggleAdvancedExportOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleCustomFilenameFormatView:">
+ <string key="name">toggleCustomFilenameFormatView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNewFilePerTable:">
+ <string key="name">toggleNewFilePerTable:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeContent:">
+ <string key="name">toggleSQLIncludeContent:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeDropSyntax:">
+ <string key="name">toggleSQLIncludeDropSyntax:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeStructure:">
+ <string key="name">toggleSQLIncludeStructure:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleXMLOutputFormat:">
+ <string key="name">toggleXMLOutputFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExportController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -7219,7 +7864,48 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPExtendedTableInfo.h</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -7252,7 +7938,25 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPHistoryController.h</string>
+ <string key="minorKey">../Source/SPHistoryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -7418,7 +8122,53 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPIndexesController.h</string>
+ <string key="minorKey">../Source/SPIndexesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -7451,7 +8201,25 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPSplitView.h</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -7575,6 +8343,7 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="limitRowsField">id</string>
<string key="limitRowsStepper">id</string>
<string key="multipleLineEditingButton">NSButton</string>
+ <string key="paginationBox">NSBox</string>
<string key="paginationButton">NSButton</string>
<string key="paginationGoButton">NSButton</string>
<string key="paginationNextButton">NSButton</string>
@@ -7582,6 +8351,7 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="paginationPageStepper">NSStepper</string>
<string key="paginationPreviousButton">NSButton</string>
<string key="paginationView">NSView</string>
+ <string key="paginationViewController">NSViewController</string>
<string key="reloadButton">id</string>
<string key="removeButton">id</string>
<string key="secondBetweenField">id</string>
@@ -7706,6 +8476,10 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="name">multipleLineEditingButton</string>
<string key="candidateClassName">NSButton</string>
</object>
+ <object class="IBToOneOutletInfo" key="paginationBox">
+ <string key="name">paginationBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
<object class="IBToOneOutletInfo" key="paginationButton">
<string key="name">paginationButton</string>
<string key="candidateClassName">NSButton</string>
@@ -7734,6 +8508,10 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="name">paginationView</string>
<string key="candidateClassName">NSView</string>
</object>
+ <object class="IBToOneOutletInfo" key="paginationViewController">
+ <string key="name">paginationViewController</string>
+ <string key="candidateClassName">NSViewController</string>
+ </object>
<object class="IBToOneOutletInfo" key="reloadButton">
<string key="name">reloadButton</string>
<string key="candidateClassName">id</string>
@@ -7777,7 +8555,103 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableContent.h</string>
+ <string key="minorKey">../Source/SPTableContent.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -7799,7 +8673,7 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableData.h</string>
+ <string key="minorKey">../Source/SPTableData.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -7846,7 +8720,7 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableInfo.h</string>
+ <string key="minorKey">../Source/SPTableInfo.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -7856,7 +8730,6 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="addField:">id</string>
<string key="closeSheet:">id</string>
<string key="duplicateField:">id</string>
- <string key="reloadTable:">id</string>
<string key="removeField:">id</string>
<string key="resetAutoIncrement:">id</string>
<string key="showOptimizedFieldType:">id</string>
@@ -7876,10 +8749,6 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="name">duplicateField:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="reloadTable:">
- <string key="name">reloadTable:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="removeField:">
<string key="name">removeField:</string>
<string key="candidateClassName">id</string>
@@ -8042,7 +8911,94 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableStructure.h</string>
+ <string key="minorKey">../Source/SPTableStructure.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8050,7 +9006,7 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="superclassName">NSTableView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableView.h</string>
+ <string key="minorKey">../Source/SPTableView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8061,6 +9017,7 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="closeSheet:">id</string>
<string key="copyTable:">id</string>
<string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
<string key="removeTable:">id</string>
<string key="renameTable:">id</string>
<string key="togglePaneCollapse:">id</string>
@@ -8085,6 +9042,10 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="name">openTableInNewTab:</string>
<string key="candidateClassName">id</string>
</object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
<object class="IBActionInfo" key="removeTable:">
<string key="name">removeTable:</string>
<string key="candidateClassName">id</string>
@@ -8127,6 +9088,8 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="listFilterField">NSSearchField</string>
<string key="openTableInNewTabContextMenuItem">NSMenuItem</string>
<string key="openTableInNewTabMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowMenuItem">NSMenuItem</string>
<string key="removeTableContextMenuItem">NSMenuItem</string>
<string key="removeTableMenuItem">NSMenuItem</string>
<string key="renameTableContextMenuItem">NSMenuItem</string>
@@ -8226,6 +9189,14 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<string key="name">openTableInNewTabMenuItem</string>
<string key="candidateClassName">NSMenuItem</string>
</object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowContextMenuItem">
+ <string key="name">openTableInNewWindowContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowMenuItem">
+ <string key="name">openTableInNewWindowMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
<object class="IBToOneOutletInfo" key="removeTableContextMenuItem">
<string key="name">removeTableContextMenuItem</string>
<string key="candidateClassName">NSMenuItem</string>
@@ -8361,7 +9332,78 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTablesList.h</string>
+ <string key="minorKey">../Source/SPTablesList.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTablesList</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="tableEncodingButtonChanged:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableEncodingButtonChanged:">
+ <string key="name">tableEncodingButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8404,7 +9446,28 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTextView.h</string>
+ <string key="minorKey">../Source/SPTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="printDocument:">id</string>
+ <string key="showMySQLHelpForCurrentWord:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="printDocument:">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.m</string>
</object>
</object>
</array>
@@ -8412,10 +9475,6 @@ y7bMNcy1zTXNtc42zrbPN8+40DnQutE80b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp2
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/FieldEditorSheet.xib b/Interfaces/English.lproj/FieldEditorSheet.xib
index f88bcc27..45c07288 100644
--- a/Interfaces/English.lproj/FieldEditorSheet.xib
+++ b/Interfaces/English.lproj/FieldEditorSheet.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSBox</string>
@@ -60,7 +60,7 @@
<nil key="NSViewClass"/>
<nil key="NSUserInterfaceItemIdentifier"/>
<object class="NSView" key="NSWindowView" id="74424767">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">4370</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSBox" id="326830185">
@@ -69,6 +69,7 @@
<array class="NSMutableArray" key="NSSubviews"/>
<string key="NSFrame">{{0, 48}, {667, 5}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<string key="NSHuggingPriority">{250, 750}</string>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
@@ -76,7 +77,7 @@
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Box</string>
<object class="NSFont" key="NSSupport" id="1059423532">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -104,6 +105,7 @@
<int key="NSvFlags">257</int>
<string key="NSFrame">{{581, 13}, {66, 25}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<string key="NSHuggingPriority">{250, 750}</string>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
@@ -112,7 +114,7 @@
<int key="NSCellFlags2">134348800</int>
<string key="NSContents">OK</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -137,6 +139,7 @@
<int key="NSvFlags">-2147483391</int>
<string key="NSFrame">{{581, 13}, {66, 25}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<string key="NSHuggingPriority">{250, 750}</string>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
@@ -162,6 +165,7 @@
<int key="NSvFlags">257</int>
<string key="NSFrame">{{498, 13}, {75, 25}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<string key="NSHuggingPriority">{250, 750}</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="377140862">
@@ -185,6 +189,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{102, 13}, {82, 25}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<string key="NSHuggingPriority">{250, 750}</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="894489903">
@@ -208,6 +213,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{12, 13}, {82, 25}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<string key="NSHuggingPriority">{250, 750}</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="619671673">
@@ -231,6 +237,7 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{401, 12}, {48, 25}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="131025635">
<int key="NSCellFlags">71303232</int>
@@ -254,14 +261,6 @@
<string key="NSClassName">NSImage</string>
<string key="NSResourceName">NSQuickLookTemplate</string>
</object>
- <object class="NSCustomResource" key="NSOnImage">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">0DC49F39-0140-4712-A530-2E252E2A7E0C</string>
- </object>
- <object class="NSCustomResource" key="NSMixedImage">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">C9E4BFB5-33F9-4FBA-8F09-BD08CCB0F9CA</string>
- </object>
<string key="NSAction">_popUpItemAction:</string>
<reference key="NSTarget" ref="131025635"/>
</object>
@@ -285,9 +284,10 @@
<int key="NSvFlags">292</int>
<string key="NSFrame">{{230, 15}, {163, 19}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSSegmentedCell" key="NSCell" id="623590172">
- <int key="NSCellFlags">-2080374784</int>
+ <int key="NSCellFlags">-2071986176</int>
<int key="NSCellFlags2">131072</int>
<reference key="NSSupport" ref="26"/>
<reference key="NSControlView" ref="687654837"/>
@@ -331,6 +331,7 @@
<int key="NSvFlags">2322</int>
<string key="NSFrameSize">{667, 349}</string>
<reference key="NSSuperview" ref="741882800"/>
+ <reference key="NSWindow"/>
<object class="NSTextContainer" key="NSTextContainer" id="57504100">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
@@ -350,7 +351,7 @@
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
- <int key="NSFlags">67111781</int>
+ <int key="NSFlags">2917</int>
<int key="NSTextCheckingTypes">0</int>
<nil key="NSMarkedAttributes"/>
<reference key="NSBackgroundColor" ref="763803775"/>
@@ -397,6 +398,7 @@
</array>
<string key="NSFrameSize">{667, 349}</string>
<reference key="NSSuperview" ref="681995991"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="132416365"/>
<reference key="NSDocView" ref="132416365"/>
<reference key="NSBGColor" ref="763803775"/>
@@ -411,6 +413,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {87, 18}}</string>
<reference key="NSSuperview" ref="681995991"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">257</int>
<reference key="NSTarget" ref="681995991"/>
@@ -422,6 +425,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{220, 1}, {11, 141}}</string>
<reference key="NSSuperview" ref="681995991"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">256</int>
<reference key="NSTarget" ref="681995991"/>
@@ -430,6 +434,7 @@
</array>
<string key="NSFrame">{{0, 51}, {667, 349}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="741882800"/>
<int key="NSsFlags">133648</int>
<reference key="NSVScroller" ref="493624509"/>
@@ -452,6 +457,7 @@
</set>
<string key="NSFrame">{{0, 51}, {667, 349}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="72799805">
<int key="NSCellFlags">270532609</int>
@@ -475,8 +481,28 @@
<object class="NSTextView" id="834935958">
<reference key="NSNextResponder" ref="97539994"/>
<int key="NSvFlags">2322</int>
+ <set class="NSMutableSet" key="NSDragTypes">
+ <string>Apple HTML pasteboard type</string>
+ <string>Apple PDF pasteboard type</string>
+ <string>Apple PICT pasteboard type</string>
+ <string>Apple PNG pasteboard type</string>
+ <string>Apple URL pasteboard type</string>
+ <string>CorePasteboardFlavorType 0x6D6F6F76</string>
+ <string>NSColor pasteboard type</string>
+ <string>NSFilenamesPboardType</string>
+ <string>NSStringPboardType</string>
+ <string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
+ <string>NeXT RTFD pasteboard type</string>
+ <string>NeXT Rich Text Format v1.0 pasteboard type</string>
+ <string>NeXT TIFF v4.0 pasteboard type</string>
+ <string>NeXT font pasteboard type</string>
+ <string>NeXT ruler pasteboard type</string>
+ <string>WebURLsWithTitlesPboardType</string>
+ <string>public.url</string>
+ </set>
<string key="NSFrameSize">{667, 349}</string>
<reference key="NSSuperview" ref="97539994"/>
+ <reference key="NSWindow"/>
<object class="NSTextContainer" key="NSTextContainer" id="222726972">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
@@ -496,7 +522,7 @@
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
- <int key="NSFlags">67121123</int>
+ <int key="NSFlags">12259</int>
<int key="NSTextCheckingTypes">0</int>
<nil key="NSMarkedAttributes"/>
<reference key="NSBackgroundColor" ref="763803775"/>
@@ -521,6 +547,7 @@
</array>
<string key="NSFrameSize">{667, 349}</string>
<reference key="NSSuperview" ref="790604124"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="834935958"/>
<reference key="NSDocView" ref="834935958"/>
<reference key="NSBGColor" ref="763803775"/>
@@ -532,6 +559,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {87, 18}}</string>
<reference key="NSSuperview" ref="790604124"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">257</int>
<reference key="NSTarget" ref="790604124"/>
@@ -543,6 +571,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{639, 2}, {11, 359}}</string>
<reference key="NSSuperview" ref="790604124"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">256</int>
<reference key="NSTarget" ref="790604124"/>
@@ -551,6 +580,7 @@
</array>
<string key="NSFrame">{{0, 51}, {667, 349}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="97539994"/>
<int key="NSsFlags">133648</int>
<reference key="NSVScroller" ref="990500102"/>
@@ -565,6 +595,7 @@
<int key="NSvFlags">301</int>
<string key="NSFrame">{{325, 232}, {32, 32}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<string key="NSHuggingPriority">{750, 750}</string>
<int key="NSpiFlags">28686</int>
<double key="NSMinValue">16</double>
@@ -576,6 +607,7 @@
<array class="NSMutableArray" key="NSSubviews"/>
<string key="NSFrame">{{0, 398}, {667, 5}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<string key="NSHuggingPriority">{250, 750}</string>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
@@ -599,6 +631,7 @@
<int key="NSvFlags">266</int>
<string key="NSFrame">{{9, 408}, {459, 14}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="6880799">
<int key="NSCellFlags">67108928</int>
@@ -627,6 +660,7 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{470, 406}, {185, 18}}</string>
<reference key="NSSuperview" ref="74424767"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="213875702">
<int key="NSCellFlags">67108864</int>
@@ -652,6 +686,8 @@
</object>
</array>
<string key="NSFrameSize">{667, 428}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
@@ -685,7 +721,7 @@
<int key="NSCellFlags2">134479872</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport" id="22">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">9</double>
<int key="NSfFlags">3614</int>
</object>
@@ -2907,7 +2943,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">bitSheet</string>
@@ -7345,14 +7381,858 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPEditSheetTextView</string>
+ <string key="superclassName">NSTextView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPEditSheetTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPEditSheetTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="cut:">id</string>
+ <string key="paste:">id</string>
+ <string key="redo:">id</string>
+ <string key="undo:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="cut:">
+ <string key="name">cut:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="paste:">
+ <string key="name">paste:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="redo:">
+ <string key="name">redo:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="undo:">
+ <string key="name">undo:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPEditSheetTextView.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPFieldEditorController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="bitSheetBitButtonWasClicked:">id</string>
+ <string key="bitSheetOperatorButtonWasClicked:">id</string>
+ <string key="bitSheetSelectBit0:">id</string>
+ <string key="closeEditSheet:">id</string>
+ <string key="dropImage:">id</string>
+ <string key="openEditSheet:">id</string>
+ <string key="quickLookFormatButton:">id</string>
+ <string key="saveEditSheet:">id</string>
+ <string key="segmentControllerChanged:">id</string>
+ <string key="setToNull:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="bitSheetBitButtonWasClicked:">
+ <string key="name">bitSheetBitButtonWasClicked:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="bitSheetOperatorButtonWasClicked:">
+ <string key="name">bitSheetOperatorButtonWasClicked:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="bitSheetSelectBit0:">
+ <string key="name">bitSheetSelectBit0:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeEditSheet:">
+ <string key="name">closeEditSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="dropImage:">
+ <string key="name">dropImage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openEditSheet:">
+ <string key="name">openEditSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="quickLookFormatButton:">
+ <string key="name">quickLookFormatButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveEditSheet:">
+ <string key="name">saveEditSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="segmentControllerChanged:">
+ <string key="name">segmentControllerChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setToNull:">
+ <string key="name">setToNull:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="bitSheet">id</string>
+ <string key="bitSheetBitButton0">NSButton</string>
+ <string key="bitSheetBitButton1">NSButton</string>
+ <string key="bitSheetBitButton10">NSButton</string>
+ <string key="bitSheetBitButton11">NSButton</string>
+ <string key="bitSheetBitButton12">NSButton</string>
+ <string key="bitSheetBitButton13">NSButton</string>
+ <string key="bitSheetBitButton14">NSButton</string>
+ <string key="bitSheetBitButton15">NSButton</string>
+ <string key="bitSheetBitButton16">NSButton</string>
+ <string key="bitSheetBitButton17">NSButton</string>
+ <string key="bitSheetBitButton18">NSButton</string>
+ <string key="bitSheetBitButton19">NSButton</string>
+ <string key="bitSheetBitButton2">NSButton</string>
+ <string key="bitSheetBitButton20">NSButton</string>
+ <string key="bitSheetBitButton21">NSButton</string>
+ <string key="bitSheetBitButton22">NSButton</string>
+ <string key="bitSheetBitButton23">NSButton</string>
+ <string key="bitSheetBitButton24">NSButton</string>
+ <string key="bitSheetBitButton25">NSButton</string>
+ <string key="bitSheetBitButton26">NSButton</string>
+ <string key="bitSheetBitButton27">NSButton</string>
+ <string key="bitSheetBitButton28">NSButton</string>
+ <string key="bitSheetBitButton29">NSButton</string>
+ <string key="bitSheetBitButton3">NSButton</string>
+ <string key="bitSheetBitButton30">NSButton</string>
+ <string key="bitSheetBitButton31">NSButton</string>
+ <string key="bitSheetBitButton32">NSButton</string>
+ <string key="bitSheetBitButton33">NSButton</string>
+ <string key="bitSheetBitButton34">NSButton</string>
+ <string key="bitSheetBitButton35">NSButton</string>
+ <string key="bitSheetBitButton36">NSButton</string>
+ <string key="bitSheetBitButton37">NSButton</string>
+ <string key="bitSheetBitButton38">NSButton</string>
+ <string key="bitSheetBitButton39">NSButton</string>
+ <string key="bitSheetBitButton4">NSButton</string>
+ <string key="bitSheetBitButton40">NSButton</string>
+ <string key="bitSheetBitButton41">NSButton</string>
+ <string key="bitSheetBitButton42">NSButton</string>
+ <string key="bitSheetBitButton43">NSButton</string>
+ <string key="bitSheetBitButton44">NSButton</string>
+ <string key="bitSheetBitButton45">NSButton</string>
+ <string key="bitSheetBitButton46">NSButton</string>
+ <string key="bitSheetBitButton47">NSButton</string>
+ <string key="bitSheetBitButton48">NSButton</string>
+ <string key="bitSheetBitButton49">NSButton</string>
+ <string key="bitSheetBitButton5">NSButton</string>
+ <string key="bitSheetBitButton50">NSButton</string>
+ <string key="bitSheetBitButton51">NSButton</string>
+ <string key="bitSheetBitButton52">NSButton</string>
+ <string key="bitSheetBitButton53">NSButton</string>
+ <string key="bitSheetBitButton54">NSButton</string>
+ <string key="bitSheetBitButton55">NSButton</string>
+ <string key="bitSheetBitButton56">NSButton</string>
+ <string key="bitSheetBitButton57">NSButton</string>
+ <string key="bitSheetBitButton58">NSButton</string>
+ <string key="bitSheetBitButton59">NSButton</string>
+ <string key="bitSheetBitButton6">NSButton</string>
+ <string key="bitSheetBitButton60">NSButton</string>
+ <string key="bitSheetBitButton61">NSButton</string>
+ <string key="bitSheetBitButton62">NSButton</string>
+ <string key="bitSheetBitButton63">NSButton</string>
+ <string key="bitSheetBitButton7">NSButton</string>
+ <string key="bitSheetBitButton8">NSButton</string>
+ <string key="bitSheetBitButton9">NSButton</string>
+ <string key="bitSheetBitLabel0">NSTextField</string>
+ <string key="bitSheetBitLabel16">NSTextField</string>
+ <string key="bitSheetBitLabel24">NSTextField</string>
+ <string key="bitSheetBitLabel32">NSTextField</string>
+ <string key="bitSheetBitLabel40">NSTextField</string>
+ <string key="bitSheetBitLabel48">NSTextField</string>
+ <string key="bitSheetBitLabel56">NSTextField</string>
+ <string key="bitSheetBitLabel8">NSTextField</string>
+ <string key="bitSheetCloseButton">NSButton</string>
+ <string key="bitSheetFieldName">NSTextField</string>
+ <string key="bitSheetHexTextField">NSTextField</string>
+ <string key="bitSheetIntegerTextField">NSTextField</string>
+ <string key="bitSheetNULLButton">NSButton</string>
+ <string key="bitSheetOctalTextField">NSTextField</string>
+ <string key="bitSheetOkButton">NSButton</string>
+ <string key="editImage">id</string>
+ <string key="editSheet">SPWindow</string>
+ <string key="editSheetCancelButton">id</string>
+ <string key="editSheetFieldName">id</string>
+ <string key="editSheetIsNotEditableCancelButton">id</string>
+ <string key="editSheetOkButton">id</string>
+ <string key="editSheetOpenButton">id</string>
+ <string key="editSheetProgressBar">id</string>
+ <string key="editSheetQuickLookButton">id</string>
+ <string key="editSheetSegmentControl">id</string>
+ <string key="editTextScrollView">id</string>
+ <string key="editTextView">id</string>
+ <string key="hexTextScrollView">id</string>
+ <string key="hexTextView">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="bitSheet">
+ <string key="name">bitSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton0">
+ <string key="name">bitSheetBitButton0</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton1">
+ <string key="name">bitSheetBitButton1</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton10">
+ <string key="name">bitSheetBitButton10</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton11">
+ <string key="name">bitSheetBitButton11</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton12">
+ <string key="name">bitSheetBitButton12</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton13">
+ <string key="name">bitSheetBitButton13</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton14">
+ <string key="name">bitSheetBitButton14</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton15">
+ <string key="name">bitSheetBitButton15</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton16">
+ <string key="name">bitSheetBitButton16</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton17">
+ <string key="name">bitSheetBitButton17</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton18">
+ <string key="name">bitSheetBitButton18</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton19">
+ <string key="name">bitSheetBitButton19</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton2">
+ <string key="name">bitSheetBitButton2</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton20">
+ <string key="name">bitSheetBitButton20</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton21">
+ <string key="name">bitSheetBitButton21</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton22">
+ <string key="name">bitSheetBitButton22</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton23">
+ <string key="name">bitSheetBitButton23</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton24">
+ <string key="name">bitSheetBitButton24</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton25">
+ <string key="name">bitSheetBitButton25</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton26">
+ <string key="name">bitSheetBitButton26</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton27">
+ <string key="name">bitSheetBitButton27</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton28">
+ <string key="name">bitSheetBitButton28</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton29">
+ <string key="name">bitSheetBitButton29</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton3">
+ <string key="name">bitSheetBitButton3</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton30">
+ <string key="name">bitSheetBitButton30</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton31">
+ <string key="name">bitSheetBitButton31</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton32">
+ <string key="name">bitSheetBitButton32</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton33">
+ <string key="name">bitSheetBitButton33</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton34">
+ <string key="name">bitSheetBitButton34</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton35">
+ <string key="name">bitSheetBitButton35</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton36">
+ <string key="name">bitSheetBitButton36</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton37">
+ <string key="name">bitSheetBitButton37</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton38">
+ <string key="name">bitSheetBitButton38</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton39">
+ <string key="name">bitSheetBitButton39</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton4">
+ <string key="name">bitSheetBitButton4</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton40">
+ <string key="name">bitSheetBitButton40</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton41">
+ <string key="name">bitSheetBitButton41</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton42">
+ <string key="name">bitSheetBitButton42</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton43">
+ <string key="name">bitSheetBitButton43</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton44">
+ <string key="name">bitSheetBitButton44</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton45">
+ <string key="name">bitSheetBitButton45</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton46">
+ <string key="name">bitSheetBitButton46</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton47">
+ <string key="name">bitSheetBitButton47</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton48">
+ <string key="name">bitSheetBitButton48</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton49">
+ <string key="name">bitSheetBitButton49</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton5">
+ <string key="name">bitSheetBitButton5</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton50">
+ <string key="name">bitSheetBitButton50</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton51">
+ <string key="name">bitSheetBitButton51</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton52">
+ <string key="name">bitSheetBitButton52</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton53">
+ <string key="name">bitSheetBitButton53</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton54">
+ <string key="name">bitSheetBitButton54</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton55">
+ <string key="name">bitSheetBitButton55</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton56">
+ <string key="name">bitSheetBitButton56</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton57">
+ <string key="name">bitSheetBitButton57</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton58">
+ <string key="name">bitSheetBitButton58</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton59">
+ <string key="name">bitSheetBitButton59</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton6">
+ <string key="name">bitSheetBitButton6</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton60">
+ <string key="name">bitSheetBitButton60</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton61">
+ <string key="name">bitSheetBitButton61</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton62">
+ <string key="name">bitSheetBitButton62</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton63">
+ <string key="name">bitSheetBitButton63</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton7">
+ <string key="name">bitSheetBitButton7</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton8">
+ <string key="name">bitSheetBitButton8</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitButton9">
+ <string key="name">bitSheetBitButton9</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitLabel0">
+ <string key="name">bitSheetBitLabel0</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitLabel16">
+ <string key="name">bitSheetBitLabel16</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitLabel24">
+ <string key="name">bitSheetBitLabel24</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitLabel32">
+ <string key="name">bitSheetBitLabel32</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitLabel40">
+ <string key="name">bitSheetBitLabel40</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitLabel48">
+ <string key="name">bitSheetBitLabel48</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitLabel56">
+ <string key="name">bitSheetBitLabel56</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetBitLabel8">
+ <string key="name">bitSheetBitLabel8</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetCloseButton">
+ <string key="name">bitSheetCloseButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetFieldName">
+ <string key="name">bitSheetFieldName</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetHexTextField">
+ <string key="name">bitSheetHexTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetIntegerTextField">
+ <string key="name">bitSheetIntegerTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetNULLButton">
+ <string key="name">bitSheetNULLButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetOctalTextField">
+ <string key="name">bitSheetOctalTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="bitSheetOkButton">
+ <string key="name">bitSheetOkButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editImage">
+ <string key="name">editImage</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editSheet">
+ <string key="name">editSheet</string>
+ <string key="candidateClassName">SPWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editSheetCancelButton">
+ <string key="name">editSheetCancelButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editSheetFieldName">
+ <string key="name">editSheetFieldName</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editSheetIsNotEditableCancelButton">
+ <string key="name">editSheetIsNotEditableCancelButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editSheetOkButton">
+ <string key="name">editSheetOkButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editSheetOpenButton">
+ <string key="name">editSheetOpenButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editSheetProgressBar">
+ <string key="name">editSheetProgressBar</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editSheetQuickLookButton">
+ <string key="name">editSheetQuickLookButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editSheetSegmentControl">
+ <string key="name">editSheetSegmentControl</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editTextScrollView">
+ <string key="name">editTextScrollView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editTextView">
+ <string key="name">editTextView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="hexTextScrollView">
+ <string key="name">hexTextScrollView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="hexTextView">
+ <string key="name">hexTextView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPFieldEditorController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPFieldEditorController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="bitSheetBitButtonWasClicked:">id</string>
+ <string key="bitSheetOperatorButtonWasClicked:">id</string>
+ <string key="bitSheetSelectBit0:">id</string>
+ <string key="closeEditSheet:">id</string>
+ <string key="dropImage:">id</string>
+ <string key="openEditSheet:">id</string>
+ <string key="quickLookFormatButton:">id</string>
+ <string key="saveEditSheet:">id</string>
+ <string key="segmentControllerChanged:">id</string>
+ <string key="setToNull:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="bitSheetBitButtonWasClicked:">
+ <string key="name">bitSheetBitButtonWasClicked:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="bitSheetOperatorButtonWasClicked:">
+ <string key="name">bitSheetOperatorButtonWasClicked:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="bitSheetSelectBit0:">
+ <string key="name">bitSheetSelectBit0:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeEditSheet:">
+ <string key="name">closeEditSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="dropImage:">
+ <string key="name">dropImage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openEditSheet:">
+ <string key="name">openEditSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="quickLookFormatButton:">
+ <string key="name">quickLookFormatButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveEditSheet:">
+ <string key="name">saveEditSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="segmentControllerChanged:">
+ <string key="name">segmentControllerChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setToNull:">
+ <string key="name">setToNull:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPFieldEditorController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPImageView</string>
+ <string key="superclassName">NSImageView</string>
+ <object class="NSMutableDictionary" key="outlets">
+ <string key="NS.key.0">delegate</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <string key="NS.key.0">delegate</string>
+ <object class="IBToOneOutletInfo" key="NS.object.0">
+ <string key="name">delegate</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPImageView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPWindow</string>
+ <string key="superclassName">NSWindow</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPWindow.h</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
@@ -7360,8 +8240,6 @@
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
<int key="IBDocument.defaultPropertyAccessControl">3</int>
<dictionary class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">
- <string key="0DC49F39-0140-4712-A530-2E252E2A7E0C">{128, 128}</string>
- <string key="C9E4BFB5-33F9-4FBA-8F09-BD08CCB0F9CA">{128, 128}</string>
<string key="NSQuickLookTemplate">{21, 16}</string>
<string key="NSSwitch">{15, 15}</string>
</dictionary>
diff --git a/Interfaces/English.lproj/GotoDatabaseDialog.xib b/Interfaces/English.lproj/GotoDatabaseDialog.xib
index 89fe61e9..590ed579 100644
--- a/Interfaces/English.lproj/GotoDatabaseDialog.xib
+++ b/Interfaces/English.lproj/GotoDatabaseDialog.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13D65</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
- <string key="IBDocument.AppKitVersion">1265.20</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">5056</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSButton</string>
@@ -68,7 +68,7 @@
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">OK</string>
<object class="NSFont" key="NSSupport" id="443430587">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -160,6 +160,7 @@
<object class="NSButtonCell" key="NSCancelButtonCell">
<int key="NSCellFlags">-2147483648</int>
<int key="NSCellFlags2">0</int>
+ <string key="NSContents">clear</string>
<array class="NSMutableArray" key="NSAccessibilityOverriddenAttributes">
<dictionary class="NSMutableDictionary">
<string key="AXDescription">cancel</string>
@@ -212,7 +213,7 @@
<int key="NSCellFlags2">2048</int>
<string key="NSContents">Database</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -343,7 +344,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">cancelButton</string>
@@ -614,25 +615,6 @@
<object class="IBPartialClassDescription">
<string key="className">SPGotoDatabaseController</string>
<string key="superclassName">NSWindowController</string>
- <dictionary class="NSMutableDictionary" key="actions">
- <string key="cancelClicked:">id</string>
- <string key="okClicked:">id</string>
- <string key="searchChanged:">id</string>
- </dictionary>
- <dictionary class="NSMutableDictionary" key="actionInfosByName">
- <object class="IBActionInfo" key="cancelClicked:">
- <string key="name">cancelClicked:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="okClicked:">
- <string key="name">okClicked:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="searchChanged:">
- <string key="name">searchChanged:</string>
- <string key="candidateClassName">id</string>
- </object>
- </dictionary>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="cancelButton">NSButton</string>
<string key="databaseListView">NSTableView</string>
@@ -659,7 +641,33 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPGotoDatabaseController.h</string>
+ <string key="minorKey">../Source/SPGotoDatabaseController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPGotoDatabaseController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="cancelClicked:">id</string>
+ <string key="okClicked:">id</string>
+ <string key="searchChanged:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="cancelClicked:">
+ <string key="name">cancelClicked:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="okClicked:">
+ <string key="name">okClicked:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="searchChanged:">
+ <string key="name">searchChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPGotoDatabaseController.m</string>
</object>
</object>
</array>
@@ -667,10 +675,6 @@
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/ImportAccessory.xib b/Interfaces/English.lproj/ImportAccessory.xib
index 7f3ccac0..2ddd8d6b 100644
--- a/Interfaces/English.lproj/ImportAccessory.xib
+++ b/Interfaces/English.lproj/ImportAccessory.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSBox</string>
@@ -51,7 +51,7 @@
<string key="NSClassName">NSApplication</string>
</object>
<object class="NSCustomView" id="768243701">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">274</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTabView" id="350183787">
@@ -59,6 +59,7 @@
<int key="NSvFlags">266</int>
<string key="NSFrame">{{-7, -9}, {464, 96}}</string>
<reference key="NSSuperview" ref="768243701"/>
+ <reference key="NSWindow"/>
<array class="NSMutableArray" key="NSTabViewItems">
<object class="NSTabViewItem" id="773828405">
<string key="NSIdentifier">1</string>
@@ -71,6 +72,7 @@
<int key="NSvFlags">264</int>
<string key="NSFrame">{{28, 47}, {411, 18}}</string>
<reference key="NSSuperview" ref="838432414"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="980919427"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="382295631">
@@ -78,7 +80,7 @@
<int key="NSCellFlags2">131072</int>
<string key="NSContents">First line contains field names</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -100,6 +102,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{175, -5}, {54, 22}}</string>
<reference key="NSSuperview" ref="838432414"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="381931944"/>
<bool key="NSEnabled">YES</bool>
<object class="NSComboBoxCell" key="NSCell" id="224560182">
@@ -222,6 +225,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{8, 0}, {162, 14}}</string>
<reference key="NSSuperview" ref="838432414"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="455670945"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="206342718">
@@ -246,6 +250,7 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{386, 20}, {54, 22}}</string>
<reference key="NSSuperview" ref="838432414"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="88279563"/>
<bool key="NSEnabled">YES</bool>
<object class="NSComboBoxCell" key="NSCell" id="762842881">
@@ -333,6 +338,7 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{238, 25}, {143, 14}}</string>
<reference key="NSSuperview" ref="838432414"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="595983007"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="82042584">
@@ -352,6 +358,7 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{386, -5}, {54, 22}}</string>
<reference key="NSSuperview" ref="838432414"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="508807740"/>
<bool key="NSEnabled">YES</bool>
<object class="NSComboBoxCell" key="NSCell" id="658483425">
@@ -439,6 +446,7 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{238, 0}, {143, 14}}</string>
<reference key="NSSuperview" ref="838432414"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="704974988"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="391954730">
@@ -458,6 +466,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{175, 20}, {54, 22}}</string>
<reference key="NSSuperview" ref="838432414"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="201675078"/>
<bool key="NSEnabled">YES</bool>
<object class="NSComboBoxCell" key="NSCell" id="674293841">
@@ -546,6 +555,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{8, 25}, {162, 14}}</string>
<reference key="NSSuperview" ref="838432414"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="557825428"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="556711750">
@@ -563,6 +573,7 @@
</array>
<string key="NSFrame">{{10, 7}, {444, 70}}</string>
<reference key="NSSuperview" ref="350183787"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="321311538"/>
</object>
<string key="NSLabel">CSV</string>
@@ -586,7 +597,7 @@
<int key="NSCellFlags2">71304192</int>
<string key="NSContents">On SQL Error:</string>
<object class="NSFont" key="NSSupport" id="857116476">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -669,7 +680,7 @@
</array>
<reference key="NSSelectedTabViewItem" ref="773828405"/>
<object class="NSFont" key="NSFont">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">9</double>
<int key="NSfFlags">3614</int>
</object>
@@ -684,6 +695,7 @@
<int key="NSvFlags">264</int>
<string key="NSFrame">{{208, 85}, {206, 26}}</string>
<reference key="NSSuperview" ref="768243701"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="142158431">
<int key="NSCellFlags">-2076180416</int>
@@ -727,6 +739,7 @@
<int key="NSvFlags">264</int>
<string key="NSFrame">{{36, 91}, {170, 17}}</string>
<reference key="NSSuperview" ref="768243701"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="350183787"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="7839352">
@@ -746,6 +759,7 @@
<int key="NSvFlags">264</int>
<string key="NSFrame">{{208, 113}, {206, 26}}</string>
<reference key="NSSuperview" ref="768243701"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="621426894"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="1032099677">
@@ -801,6 +815,7 @@
<int key="NSvFlags">264</int>
<string key="NSFrame">{{36, 119}, {170, 17}}</string>
<reference key="NSSuperview" ref="768243701"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="841218020"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="379355660">
@@ -817,6 +832,8 @@
</object>
</array>
<string key="NSFrameSize">{450, 144}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="640853005"/>
<object class="NSMutableString" key="NSClassName">
<characters key="NS.bytes">NSView</characters>
@@ -872,7 +889,7 @@
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
- <int key="NSFlags">67111169</int>
+ <int key="NSFlags">2305</int>
<int key="NSTextCheckingTypes">0</int>
<nil key="NSMarkedAttributes"/>
<reference key="NSBackgroundColor" ref="51181249"/>
@@ -1083,7 +1100,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">importFieldsEscapedField</string>
@@ -1839,14 +1856,427 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDataImport</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="cancelProgressBar:">id</string>
+ <string key="changeFormat:">id</string>
+ <string key="closeSheet:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="cancelProgressBar:">
+ <string key="name">cancelProgressBar:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeFormat:">
+ <string key="name">changeFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addCreateTableSwitch">id</string>
+ <string key="addDropTableSwitch">id</string>
+ <string key="addErrorsSwitch">id</string>
+ <string key="addTableContentSwitch">id</string>
+ <string key="csvFullStreamingSwitch">id</string>
+ <string key="customQueryInstance">id</string>
+ <string key="errorsSheet">id</string>
+ <string key="errorsView">id</string>
+ <string key="importEncodingPopup">NSPopUpButton</string>
+ <string key="importFieldMapperSheetWindow">id</string>
+ <string key="importFieldNamesSwitch">NSButton</string>
+ <string key="importFieldsEnclosedField">id</string>
+ <string key="importFieldsEscapedField">id</string>
+ <string key="importFieldsTerminatedField">id</string>
+ <string key="importFormatPopup">NSPopUpButton</string>
+ <string key="importFromClipboardAccessoryView">id</string>
+ <string key="importFromClipboardSheet">id</string>
+ <string key="importFromClipboardTextView">NSTextView</string>
+ <string key="importLinesTerminatedField">id</string>
+ <string key="importSQLErrorHandlingPopup">NSPopUpButton</string>
+ <string key="importTabView">id</string>
+ <string key="importView">id</string>
+ <string key="multiCSVFullStreamingSwitch">id</string>
+ <string key="multiXMLFullStreamingSwitch">id</string>
+ <string key="singleProgressBar">id</string>
+ <string key="singleProgressSheet">id</string>
+ <string key="singleProgressText">id</string>
+ <string key="singleProgressTitle">id</string>
+ <string key="sqlCompressionSwitch">id</string>
+ <string key="sqlFullStreamingSwitch">id</string>
+ <string key="tableContentInstance">id</string>
+ <string key="tableDataInstance">id</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tableSourceInstance">id</string>
+ <string key="tablesListInstance">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addCreateTableSwitch">
+ <string key="name">addCreateTableSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addDropTableSwitch">
+ <string key="name">addDropTableSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addErrorsSwitch">
+ <string key="name">addErrorsSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addTableContentSwitch">
+ <string key="name">addTableContentSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="csvFullStreamingSwitch">
+ <string key="name">csvFullStreamingSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorsSheet">
+ <string key="name">errorsSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorsView">
+ <string key="name">errorsView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importEncodingPopup">
+ <string key="name">importEncodingPopup</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFieldMapperSheetWindow">
+ <string key="name">importFieldMapperSheetWindow</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFieldNamesSwitch">
+ <string key="name">importFieldNamesSwitch</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFieldsEnclosedField">
+ <string key="name">importFieldsEnclosedField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFieldsEscapedField">
+ <string key="name">importFieldsEscapedField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFieldsTerminatedField">
+ <string key="name">importFieldsTerminatedField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFormatPopup">
+ <string key="name">importFormatPopup</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFromClipboardAccessoryView">
+ <string key="name">importFromClipboardAccessoryView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFromClipboardSheet">
+ <string key="name">importFromClipboardSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importFromClipboardTextView">
+ <string key="name">importFromClipboardTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importLinesTerminatedField">
+ <string key="name">importLinesTerminatedField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importSQLErrorHandlingPopup">
+ <string key="name">importSQLErrorHandlingPopup</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importTabView">
+ <string key="name">importTabView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="importView">
+ <string key="name">importView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="multiCSVFullStreamingSwitch">
+ <string key="name">multiCSVFullStreamingSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="multiXMLFullStreamingSwitch">
+ <string key="name">multiXMLFullStreamingSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="singleProgressBar">
+ <string key="name">singleProgressBar</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="singleProgressSheet">
+ <string key="name">singleProgressSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="singleProgressText">
+ <string key="name">singleProgressText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="singleProgressTitle">
+ <string key="name">singleProgressTitle</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sqlCompressionSwitch">
+ <string key="name">sqlCompressionSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sqlFullStreamingSwitch">
+ <string key="name">sqlFullStreamingSwitch</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentInstance">
+ <string key="name">tableContentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDataImport.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDataImport</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="cancelProgressBar:">id</string>
+ <string key="changeFormat:">id</string>
+ <string key="closeSheet:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="cancelProgressBar:">
+ <string key="name">cancelProgressBar:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeFormat:">
+ <string key="name">changeFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDataImport.m</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/IndexesView.xib b/Interfaces/English.lproj/IndexesView.xib
index 264e8e4f..0de04c01 100644
--- a/Interfaces/English.lproj/IndexesView.xib
+++ b/Interfaces/English.lproj/IndexesView.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSBox</string>
@@ -78,7 +78,7 @@
<int key="NSCellFlags">-2076180416</int>
<int key="NSCellFlags2">132096</int>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -264,10 +264,12 @@
<reference key="NSWindow"/>
<reference key="NSTableView" ref="633969417"/>
</object>
- <object class="_NSCornerView" key="NSCornerView">
- <nil key="NSNextResponder"/>
+ <object class="_NSCornerView" key="NSCornerView" id="852569521">
+ <reference key="NSNextResponder" ref="561916229"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{224, 0}, {16, 17}}</string>
+ <reference key="NSSuperview" ref="561916229"/>
+ <reference key="NSWindow"/>
</object>
<array class="NSMutableArray" key="NSTableColumns">
<object class="NSTableColumn" id="785937115">
@@ -306,7 +308,7 @@
<object class="NSComboTableView" key="NSTableView" id="1069941899">
<reference key="NSNextResponder"/>
<int key="NSvFlags">274</int>
- <string key="NSFrameSize">{13, 0}</string>
+ <string key="NSFrameSize">{15, 0}</string>
<reference key="NSSuperview"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
@@ -314,7 +316,7 @@
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
<array class="NSMutableArray" key="NSTableColumns">
<object class="NSTableColumn">
- <double key="NSWidth">10</double>
+ <double key="NSWidth">12</double>
<double key="NSMinWidth">10</double>
<double key="NSMaxWidth">1000</double>
<object class="NSTableHeaderCell" key="NSHeaderCell">
@@ -365,7 +367,7 @@
</object>
<double key="NSRowHeight">16</double>
<string key="NSAction">tableViewAction:</string>
- <int key="NSTvFlags">-765427712</int>
+ <int key="NSTvFlags">-767524864</int>
<reference key="NSDelegate" ref="996805300"/>
<reference key="NSTarget" ref="996805300"/>
<int key="NSColumnAutoresizingStyle">1</int>
@@ -478,6 +480,20 @@
<reference key="NSBGColor" ref="433719363"/>
<int key="NScvFlags">4</int>
</object>
+ <object class="NSClipView" id="218049294">
+ <reference key="NSNextResponder" ref="561916229"/>
+ <int key="NSvFlags">2338</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <reference ref="1016340205"/>
+ </array>
+ <string key="NSFrame">{{1, 0}, {330, 17}}</string>
+ <reference key="NSSuperview" ref="561916229"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="1016340205"/>
+ <reference key="NSDocView" ref="1016340205"/>
+ <reference key="NSBGColor" ref="433719363"/>
+ <int key="NScvFlags">4</int>
+ </object>
<object class="NSScroller" id="181568637">
<reference key="NSNextResponder" ref="561916229"/>
<int key="NSvFlags">-2147483392</int>
@@ -501,20 +517,7 @@
<string key="NSAction">_doScroller:</string>
<double key="NSPercent">0.99557524919509888</double>
</object>
- <object class="NSClipView" id="218049294">
- <reference key="NSNextResponder" ref="561916229"/>
- <int key="NSvFlags">2338</int>
- <array class="NSMutableArray" key="NSSubviews">
- <reference ref="1016340205"/>
- </array>
- <string key="NSFrame">{{1, 0}, {330, 17}}</string>
- <reference key="NSSuperview" ref="561916229"/>
- <reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="1016340205"/>
- <reference key="NSDocView" ref="1016340205"/>
- <reference key="NSBGColor" ref="433719363"/>
- <int key="NScvFlags">4</int>
- </object>
+ <reference ref="852569521"/>
</array>
<string key="NSFrame">{{-1, 97}, {332, 98}}</string>
<reference key="NSSuperview" ref="762677578"/>
@@ -525,6 +528,7 @@
<reference key="NSHScroller" ref="673873503"/>
<reference key="NSContentView" ref="726923866"/>
<reference key="NSHeaderClipView" ref="218049294"/>
+ <reference key="NSCornerView" ref="852569521"/>
<bytes key="NSScrollAmts">QSAAAEEgAABBgAAAQYAAAA</bytes>
<double key="NSMinMagnification">0.25</double>
<double key="NSMaxMagnification">4</double>
@@ -632,7 +636,7 @@
</object>
</array>
<object class="NSFont" key="NSMenuFont" id="18667027">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -748,35 +752,6 @@
<int key="NSTitlePosition">0</int>
<bool key="NSTransparent">NO</bool>
</object>
- <object class="NSButton" id="226972970">
- <reference key="NSNextResponder" ref="30022357"/>
- <int key="NSvFlags">268</int>
- <string key="NSFrame">{{-83, 41}, {100, 18}}</string>
- <reference key="NSSuperview" ref="30022357"/>
- <reference key="NSWindow"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSButtonCell" key="NSCell" id="708153532">
- <int key="NSCellFlags">67108864</int>
- <int key="NSCellFlags2">131072</int>
- <string key="NSContents"/>
- <reference key="NSSupport" ref="26"/>
- <reference key="NSControlView" ref="226972970"/>
- <int key="NSButtonFlags">1211912448</int>
- <int key="NSButtonFlags2">2</int>
- <object class="NSCustomResource" key="NSNormalImage">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">NSSwitch</string>
- </object>
- <object class="NSButtonImageSource" key="NSAlternateImage">
- <string key="NSImageName">NSSwitch</string>
- </object>
- <string key="NSAlternateContents"/>
- <string key="NSKeyEquivalent"/>
- <int key="NSPeriodicDelay">200</int>
- <int key="NSPeriodicInterval">25</int>
- </object>
- <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
- </object>
</array>
<string key="NSFrame">{{-2, -30}, {335, 67}}</string>
<reference key="NSSuperview" ref="762677578"/>
@@ -1032,7 +1007,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">window</string>
@@ -1444,7 +1419,6 @@
<reference key="object" ref="30022357"/>
<array class="NSMutableArray" key="children">
<reference ref="197030792"/>
- <reference ref="226972970"/>
</array>
<reference key="parent" ref="762677578"/>
<string key="objectName">Advanced View for INSERT</string>
@@ -1474,19 +1448,6 @@
<reference key="parent" ref="30022357"/>
</object>
<object class="IBObjectRecord">
- <string key="id">68</string>
- <reference key="object" ref="226972970"/>
- <array class="NSMutableArray" key="children">
- <reference ref="708153532"/>
- </array>
- <reference key="parent" ref="30022357"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">69</string>
- <reference key="object" ref="708153532"/>
- <reference key="parent" ref="226972970"/>
- </object>
- <object class="IBObjectRecord">
<string key="id">64</string>
<reference key="object" ref="928710921"/>
<array class="NSMutableArray" key="children">
@@ -1838,8 +1799,6 @@
<string key="65.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="66.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="67.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="68.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="69.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="7.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="80.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="81.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -1949,7 +1908,98 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/NSTextView.h</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -1968,7 +2018,25 @@
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCopyTable.h</string>
+ <string key="minorKey">../Source/SPCopyTable.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2379,7 +2447,148 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCustomQuery.h</string>
+ <string key="minorKey">../Source/SPCustomQuery.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="searchInDocForWebViewSelection:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="showHelpForWebViewSelection:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
+ <string key="name">searchInDocForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForWebViewSelection:">
+ <string key="name">showHelpForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2387,7 +2596,25 @@
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseData.h</string>
+ <string key="minorKey">../Source/SPDatabaseData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">closeErrorConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionDelegate.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2430,6 +2657,7 @@
<string key="setDatabases:">id</string>
<string key="showCreateTableSyntax:">id</string>
<string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
<string key="showMySQLHelp:">id</string>
<string key="showNavigator:">id</string>
<string key="showServerProcesses:">id</string>
@@ -2437,12 +2665,6 @@
<string key="showUserManager:">id</string>
<string key="toggleNavigator:">id</string>
<string key="validateSaveConnectionAccessory:">id</string>
- <string key="viewContent:">id</string>
- <string key="viewQuery:">id</string>
- <string key="viewRelations:">id</string>
- <string key="viewStatus:">id</string>
- <string key="viewStructure:">id</string>
- <string key="viewTriggers:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="addConnectionToFavorites:">
@@ -2589,6 +2811,10 @@
<string key="name">showFilterTable:</string>
<string key="candidateClassName">id</string>
</object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
<object class="IBActionInfo" key="showMySQLHelp:">
<string key="name">showMySQLHelp:</string>
<string key="candidateClassName">id</string>
@@ -2617,30 +2843,6 @@
<string key="name">validateSaveConnectionAccessory:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="viewContent:">
- <string key="name">viewContent:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewQuery:">
- <string key="name">viewQuery:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewRelations:">
- <string key="name">viewRelations:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStatus:">
- <string key="name">viewStatus:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStructure:">
- <string key="name">viewStructure:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewTriggers:">
- <string key="name">viewTriggers:</string>
- <string key="candidateClassName">id</string>
- </object>
</dictionary>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="addDatabaseButton">id</string>
@@ -2993,7 +3195,338 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseDocument.h</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPrintController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3144,7 +3677,48 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPExtendedTableInfo.h</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3177,7 +3751,25 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPHistoryController.h</string>
+ <string key="minorKey">../Source/SPHistoryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3343,7 +3935,53 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPIndexesController.h</string>
+ <string key="minorKey">../Source/SPIndexesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3376,7 +4014,25 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPSplitView.h</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3500,6 +4156,7 @@
<string key="limitRowsField">id</string>
<string key="limitRowsStepper">id</string>
<string key="multipleLineEditingButton">NSButton</string>
+ <string key="paginationBox">NSBox</string>
<string key="paginationButton">NSButton</string>
<string key="paginationGoButton">NSButton</string>
<string key="paginationNextButton">NSButton</string>
@@ -3507,6 +4164,7 @@
<string key="paginationPageStepper">NSStepper</string>
<string key="paginationPreviousButton">NSButton</string>
<string key="paginationView">NSView</string>
+ <string key="paginationViewController">NSViewController</string>
<string key="reloadButton">id</string>
<string key="removeButton">id</string>
<string key="secondBetweenField">id</string>
@@ -3631,6 +4289,10 @@
<string key="name">multipleLineEditingButton</string>
<string key="candidateClassName">NSButton</string>
</object>
+ <object class="IBToOneOutletInfo" key="paginationBox">
+ <string key="name">paginationBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
<object class="IBToOneOutletInfo" key="paginationButton">
<string key="name">paginationButton</string>
<string key="candidateClassName">NSButton</string>
@@ -3659,6 +4321,10 @@
<string key="name">paginationView</string>
<string key="candidateClassName">NSView</string>
</object>
+ <object class="IBToOneOutletInfo" key="paginationViewController">
+ <string key="name">paginationViewController</string>
+ <string key="candidateClassName">NSViewController</string>
+ </object>
<object class="IBToOneOutletInfo" key="reloadButton">
<string key="name">reloadButton</string>
<string key="candidateClassName">id</string>
@@ -3702,7 +4368,103 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableContent.h</string>
+ <string key="minorKey">../Source/SPTableContent.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3724,7 +4486,7 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableData.h</string>
+ <string key="minorKey">../Source/SPTableData.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3771,7 +4533,7 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableInfo.h</string>
+ <string key="minorKey">../Source/SPTableInfo.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3781,7 +4543,6 @@
<string key="addField:">id</string>
<string key="closeSheet:">id</string>
<string key="duplicateField:">id</string>
- <string key="reloadTable:">id</string>
<string key="removeField:">id</string>
<string key="resetAutoIncrement:">id</string>
<string key="showOptimizedFieldType:">id</string>
@@ -3801,10 +4562,6 @@
<string key="name">duplicateField:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="reloadTable:">
- <string key="name">reloadTable:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="removeField:">
<string key="name">removeField:</string>
<string key="candidateClassName">id</string>
@@ -3967,7 +4724,94 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableStructure.h</string>
+ <string key="minorKey">../Source/SPTableStructure.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3975,7 +4819,7 @@
<string key="superclassName">NSTableView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableView.h</string>
+ <string key="minorKey">../Source/SPTableView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3986,6 +4830,7 @@
<string key="closeSheet:">id</string>
<string key="copyTable:">id</string>
<string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
<string key="removeTable:">id</string>
<string key="renameTable:">id</string>
<string key="togglePaneCollapse:">id</string>
@@ -4010,6 +4855,10 @@
<string key="name">openTableInNewTab:</string>
<string key="candidateClassName">id</string>
</object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
<object class="IBActionInfo" key="removeTable:">
<string key="name">removeTable:</string>
<string key="candidateClassName">id</string>
@@ -4052,6 +4901,8 @@
<string key="listFilterField">NSSearchField</string>
<string key="openTableInNewTabContextMenuItem">NSMenuItem</string>
<string key="openTableInNewTabMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowMenuItem">NSMenuItem</string>
<string key="removeTableContextMenuItem">NSMenuItem</string>
<string key="removeTableMenuItem">NSMenuItem</string>
<string key="renameTableContextMenuItem">NSMenuItem</string>
@@ -4151,6 +5002,14 @@
<string key="name">openTableInNewTabMenuItem</string>
<string key="candidateClassName">NSMenuItem</string>
</object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowContextMenuItem">
+ <string key="name">openTableInNewWindowContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowMenuItem">
+ <string key="name">openTableInNewWindowMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
<object class="IBToOneOutletInfo" key="removeTableContextMenuItem">
<string key="name">removeTableContextMenuItem</string>
<string key="candidateClassName">NSMenuItem</string>
@@ -4286,7 +5145,78 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTablesList.h</string>
+ <string key="minorKey">../Source/SPTablesList.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTablesList</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="tableEncodingButtonChanged:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableEncodingButtonChanged:">
+ <string key="name">tableEncodingButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4329,25 +5259,28 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTextView.h</string>
+ <string key="minorKey">../Source/SPTextView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
- <string key="className">WebView</string>
- <object class="NSMutableDictionary" key="actions">
- <string key="NS.key.0">reloadFromOrigin:</string>
- <string key="NS.object.0">id</string>
- </object>
- <object class="NSMutableDictionary" key="actionInfosByName">
- <string key="NS.key.0">reloadFromOrigin:</string>
- <object class="IBActionInfo" key="NS.object.0">
- <string key="name">reloadFromOrigin:</string>
+ <string key="className">SPTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="printDocument:">id</string>
+ <string key="showMySQLHelpForCurrentWord:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="printDocument:">
+ <string key="name">printDocument:</string>
<string key="candidateClassName">id</string>
</object>
- </object>
+ <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/WebView.h</string>
+ <string key="minorKey">../Source/SPTextView.m</string>
</object>
</object>
</array>
@@ -4355,10 +5288,6 @@
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
@@ -4368,7 +5297,6 @@
<dictionary class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">
<string key="NSMenuCheckmark">{11, 11}</string>
<string key="NSMenuMixedState">{10, 3}</string>
- <string key="NSSwitch">{15, 15}</string>
<string key="button_add">{32, 23}</string>
<string key="button_bar_spacer">{10, 23}</string>
<string key="button_remove">{32, 23}</string>
diff --git a/Interfaces/English.lproj/MainMenu.xib b/Interfaces/English.lproj/MainMenu.xib
index a8639839..54bebacb 100644
--- a/Interfaces/English.lproj/MainMenu.xib
+++ b/Interfaces/English.lproj/MainMenu.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13E28</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6751</string>
<string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">5056</string>
+ <string key="NS.object.0">6751</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSCustomObject</string>
@@ -1230,7 +1230,7 @@
<object class="NSMenuItem" id="859280893">
<reference key="NSMenu" ref="762880388"/>
<string key="NSTitle">Go to Database…</string>
- <string key="NSKeyEquiv">d</string>
+ <string key="NSKeyEquiv">D</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="325032718"/>
@@ -1412,7 +1412,7 @@
</object>
<object class="NSMenuItem" id="85590918">
<reference key="NSMenu" ref="315159986"/>
- <string key="NSTitle">UTF-8 Unicode (utf8)</string>
+ <string key="NSTitle">UTF-8 Unicode BMP (utf8)</string>
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
@@ -1420,6 +1420,16 @@
<reference key="NSMixedImage" ref="674471825"/>
<int key="NSTag">20</int>
</object>
+ <object class="NSMenuItem" id="383065474">
+ <reference key="NSMenu" ref="315159986"/>
+ <string key="NSTitle">UTF-8 Full Unicode (utf8mb4)</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSKeyEquivModMask">1048576</int>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="325032718"/>
+ <reference key="NSMixedImage" ref="674471825"/>
+ <int key="NSTag">190</int>
+ </object>
<object class="NSMenuItem" id="162776781">
<reference key="NSMenu" ref="315159986"/>
<string key="NSTitle">UTF-8 Unicode via Latin 1</string>
@@ -2152,7 +2162,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">delegate</string>
@@ -3178,6 +3188,14 @@
<string key="id">jS0-aP-Y7o</string>
</object>
<object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">chooseEncoding:</string>
+ <reference key="source" ref="1005713010"/>
+ <reference key="destination" ref="383065474"/>
+ </object>
+ <string key="id">KxK-Oo-Rsq</string>
+ </object>
+ <object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">delegate</string>
<reference key="source" ref="524643114"/>
@@ -4288,6 +4306,7 @@
<reference ref="175960689"/>
<reference ref="267577241"/>
<reference ref="204188122"/>
+ <reference ref="383065474"/>
</array>
<reference key="parent" ref="683120971"/>
</object>
@@ -4772,6 +4791,11 @@
<reference key="object" ref="346403677"/>
<reference key="parent" ref="762880388"/>
</object>
+ <object class="IBObjectRecord">
+ <string key="id">JtW-Ko-SuZ</string>
+ <reference key="object" ref="383065474"/>
+ <reference key="parent" ref="315159986"/>
+ </object>
</array>
</object>
<dictionary class="NSMutableDictionary" key="flattenedProperties">
@@ -5402,6 +5426,7 @@
</object>
<string key="998.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="998.showNotes"/>
+ <string key="JtW-Ko-SuZ.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="Yzp-Qk-v7Y.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="nXE-rI-RyI.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
</dictionary>
@@ -5500,7 +5525,98 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/NSTextView.h</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -5527,7 +5643,7 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/PSMTabBarControl.h</string>
+ <string key="minorKey">../Frameworks/PSMTabBar/PSMTabBarControl.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -5536,10 +5652,7 @@
<dictionary class="NSMutableDictionary" key="actions">
<string key="bundleCommandDispatcher:">id</string>
<string key="donate:">id</string>
- <string key="duplicateTab:">id</string>
<string key="executeBundleItemForApp:">id</string>
- <string key="newTab:">id</string>
- <string key="newWindow:">id</string>
<string key="openAboutPanel:">id</string>
<string key="openBundleEditor:">id</string>
<string key="openConnectionSheet:">id</string>
@@ -5561,22 +5674,10 @@
<string key="name">donate:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="duplicateTab:">
- <string key="name">duplicateTab:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="executeBundleItemForApp:">
<string key="name">executeBundleItemForApp:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="newTab:">
- <string key="name">newTab:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="newWindow:">
- <string key="name">newWindow:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="openAboutPanel:">
<string key="name">openAboutPanel:</string>
<string key="candidateClassName">id</string>
@@ -5635,12 +5736,163 @@
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPAppController.h</string>
+ <string key="minorKey">../Source/SPAppController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPAppController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="bundleCommandDispatcher:">id</string>
+ <string key="donate:">id</string>
+ <string key="executeBundleItemForApp:">id</string>
+ <string key="openAboutPanel:">id</string>
+ <string key="openBundleEditor:">id</string>
+ <string key="openConnectionSheet:">id</string>
+ <string key="openPreferences:">id</string>
+ <string key="provideFeedback:">id</string>
+ <string key="provideTranslationFeedback:">id</string>
+ <string key="reloadBundles:">id</string>
+ <string key="viewKeyboardShortcuts:">id</string>
+ <string key="visitFAQWebsite:">id</string>
+ <string key="visitHelpWebsite:">id</string>
+ <string key="visitWebsite:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="bundleCommandDispatcher:">
+ <string key="name">bundleCommandDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="donate:">
+ <string key="name">donate:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForApp:">
+ <string key="name">executeBundleItemForApp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openAboutPanel:">
+ <string key="name">openAboutPanel:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openBundleEditor:">
+ <string key="name">openBundleEditor:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openConnectionSheet:">
+ <string key="name">openConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openPreferences:">
+ <string key="name">openPreferences:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="provideFeedback:">
+ <string key="name">provideFeedback:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="provideTranslationFeedback:">
+ <string key="name">provideTranslationFeedback:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadBundles:">
+ <string key="name">reloadBundles:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewKeyboardShortcuts:">
+ <string key="name">viewKeyboardShortcuts:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="visitFAQWebsite:">
+ <string key="name">visitFAQWebsite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="visitHelpWebsite:">
+ <string key="name">visitHelpWebsite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="visitWebsite:">
+ <string key="name">visitWebsite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPAppController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPAppController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="duplicateTab:">id</string>
+ <string key="newTab:">id</string>
+ <string key="newWindow:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="duplicateTab:">
+ <string key="name">duplicateTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="newTab:">
+ <string key="name">newTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="newWindow:">
+ <string key="name">newWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPWindowManagement.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPAppController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="duplicateTab:">id</string>
+ <string key="newTab:">id</string>
+ <string key="newWindow:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="duplicateTab:">
+ <string key="name">duplicateTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="newTab:">
+ <string key="name">newTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="newWindow:">
+ <string key="name">newWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPWindowManagement.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">SPBundleCommandTextView</string>
<string key="superclassName">NSTextView</string>
+ <object class="NSMutableDictionary" key="outlets">
+ <string key="NS.key.0">commandScrollView</string>
+ <string key="NS.object.0">NSScrollView</string>
+ </object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <string key="NS.key.0">commandScrollView</string>
+ <object class="IBToOneOutletInfo" key="NS.object.0">
+ <string key="name">commandScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPBundleCommandTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPBundleCommandTextView</string>
<dictionary class="NSMutableDictionary" key="actions">
<string key="cut:">id</string>
<string key="paste:">id</string>
@@ -5665,20 +5917,9 @@
<string key="candidateClassName">id</string>
</object>
</dictionary>
- <object class="NSMutableDictionary" key="outlets">
- <string key="NS.key.0">commandScrollView</string>
- <string key="NS.object.0">NSScrollView</string>
- </object>
- <object class="NSMutableDictionary" key="toOneOutletInfosByName">
- <string key="NS.key.0">commandScrollView</string>
- <object class="IBToOneOutletInfo" key="NS.object.0">
- <string key="name">commandScrollView</string>
- <string key="candidateClassName">NSScrollView</string>
- </object>
- </object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPBundleCommandTextView.h</string>
+ <string key="minorKey">../Source/SPBundleCommandTextView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -5701,7 +5942,6 @@
<string key="saveBundle:">id</string>
<string key="scopeButtonChanged:">id</string>
<string key="showHelp:">id</string>
- <string key="showWindow:">id</string>
<string key="triggerButtonChanged:">id</string>
<string key="undeleteDefaultBundles:">id</string>
<string key="withBlobButtonChanged:">id</string>
@@ -5771,10 +6011,6 @@
<string key="name">showHelp:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showWindow:">
- <string key="name">showWindow:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="triggerButtonChanged:">
<string key="name">triggerButtonChanged:</string>
<string key="candidateClassName">id</string>
@@ -5964,7 +6200,118 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPBundleEditorController.h</string>
+ <string key="minorKey">../Source/SPBundleEditorController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPBundleEditorController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addCommandBundle:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="closeUndeleteDefaultBundlesSheet:">id</string>
+ <string key="displayBundleMetaInfo:">id</string>
+ <string key="duplicateCommandBundle:">id</string>
+ <string key="inputFallbackPopupButtonChanged:">id</string>
+ <string key="inputPopupButtonChanged:">id</string>
+ <string key="outputPopupButtonChanged:">id</string>
+ <string key="performClose:">id</string>
+ <string key="reloadBundles:">id</string>
+ <string key="removeCommandBundle:">id</string>
+ <string key="revealCommandBundleInFinder:">id</string>
+ <string key="saveAndCloseWindow:">id</string>
+ <string key="saveBundle:">id</string>
+ <string key="scopeButtonChanged:">id</string>
+ <string key="showHelp:">id</string>
+ <string key="showWindow:">id</string>
+ <string key="triggerButtonChanged:">id</string>
+ <string key="undeleteDefaultBundles:">id</string>
+ <string key="withBlobButtonChanged:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addCommandBundle:">
+ <string key="name">addCommandBundle:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeUndeleteDefaultBundlesSheet:">
+ <string key="name">closeUndeleteDefaultBundlesSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="displayBundleMetaInfo:">
+ <string key="name">displayBundleMetaInfo:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateCommandBundle:">
+ <string key="name">duplicateCommandBundle:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="inputFallbackPopupButtonChanged:">
+ <string key="name">inputFallbackPopupButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="inputPopupButtonChanged:">
+ <string key="name">inputPopupButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="outputPopupButtonChanged:">
+ <string key="name">outputPopupButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="performClose:">
+ <string key="name">performClose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadBundles:">
+ <string key="name">reloadBundles:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeCommandBundle:">
+ <string key="name">removeCommandBundle:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="revealCommandBundleInFinder:">
+ <string key="name">revealCommandBundleInFinder:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveAndCloseWindow:">
+ <string key="name">saveAndCloseWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveBundle:">
+ <string key="name">saveBundle:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="scopeButtonChanged:">
+ <string key="name">scopeButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelp:">
+ <string key="name">showHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showWindow:">
+ <string key="name">showWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="triggerButtonChanged:">
+ <string key="name">triggerButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="undeleteDefaultBundles:">
+ <string key="name">undeleteDefaultBundles:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="withBlobButtonChanged:">
+ <string key="name">withBlobButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPBundleEditorController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -5994,7 +6341,25 @@
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPBundleHTMLOutputController.h</string>
+ <string key="minorKey">../Source/SPBundleHTMLOutputController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPBundleHTMLOutputController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPBundleHTMLOutputController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -6013,7 +6378,7 @@
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPColorSelectorView.h</string>
+ <string key="minorKey">../Source/SPColorSelectorView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -6024,7 +6389,7 @@
<string key="addFavoriteUsingCurrentDetails:">id</string>
<string key="addGroup:">id</string>
<string key="cancelConnection:">id</string>
- <string key="chooseKeyLocation:">NSButton</string>
+ <string key="chooseKeyLocation:">id</string>
<string key="duplicateFavorite:">id</string>
<string key="exportFavorites:">id</string>
<string key="importFavorites:">id</string>
@@ -6059,7 +6424,7 @@
</object>
<object class="IBActionInfo" key="chooseKeyLocation:">
<string key="name">chooseKeyLocation:</string>
- <string key="candidateClassName">NSButton</string>
+ <string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo" key="duplicateFavorite:">
<string key="name">duplicateFavorite:</string>
@@ -6384,7 +6749,103 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPConnectionController.h</string>
+ <string key="minorKey">../Source/SPConnectionController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPConnectionController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addFavorite:">id</string>
+ <string key="addFavoriteUsingCurrentDetails:">id</string>
+ <string key="addGroup:">id</string>
+ <string key="cancelConnection:">id</string>
+ <string key="chooseKeyLocation:">NSButton</string>
+ <string key="duplicateFavorite:">id</string>
+ <string key="exportFavorites:">id</string>
+ <string key="importFavorites:">id</string>
+ <string key="initiateConnection:">id</string>
+ <string key="makeSelectedFavoriteDefault:">id</string>
+ <string key="nodeDoubleClicked:">id</string>
+ <string key="removeNode:">id</string>
+ <string key="renameNode:">id</string>
+ <string key="saveFavorite:">id</string>
+ <string key="showHelp:">id</string>
+ <string key="updateKeyLocationFileVisibility:">id</string>
+ <string key="updateSSLInterface:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addFavorite:">
+ <string key="name">addFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addFavoriteUsingCurrentDetails:">
+ <string key="name">addFavoriteUsingCurrentDetails:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addGroup:">
+ <string key="name">addGroup:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelConnection:">
+ <string key="name">cancelConnection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseKeyLocation:">
+ <string key="name">chooseKeyLocation:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateFavorite:">
+ <string key="name">duplicateFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportFavorites:">
+ <string key="name">exportFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFavorites:">
+ <string key="name">importFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="initiateConnection:">
+ <string key="name">initiateConnection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeSelectedFavoriteDefault:">
+ <string key="name">makeSelectedFavoriteDefault:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="nodeDoubleClicked:">
+ <string key="name">nodeDoubleClicked:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeNode:">
+ <string key="name">removeNode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameNode:">
+ <string key="name">renameNode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveFavorite:">
+ <string key="name">saveFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelp:">
+ <string key="name">showHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateKeyLocationFileVisibility:">
+ <string key="name">updateKeyLocationFileVisibility:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateSSLInterface:">
+ <string key="name">updateSSLInterface:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -6403,7 +6864,25 @@
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCopyTable.h</string>
+ <string key="minorKey">../Source/SPCopyTable.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -6430,11 +6909,9 @@
<string key="runSecondaryQueryAction:">id</string>
<string key="runSelectedQueries:">id</string>
<string key="saveQueryHistory:">id</string>
- <string key="searchInDocForWebViewSelection:">id</string>
<string key="showCompletionList:">id</string>
<string key="showHelpForCurrentWord:">id</string>
<string key="showHelpForSearchString:">id</string>
- <string key="showHelpForWebViewSelection:">id</string>
<string key="switchDefaultQueryAction:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
@@ -6518,10 +6995,6 @@
<string key="name">saveQueryHistory:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
- <string key="name">searchInDocForWebViewSelection:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="showCompletionList:">
<string key="name">showCompletionList:</string>
<string key="candidateClassName">id</string>
@@ -6534,10 +7007,6 @@
<string key="name">showHelpForSearchString:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showHelpForWebViewSelection:">
- <string key="name">showHelpForWebViewSelection:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="switchDefaultQueryAction:">
<string key="name">switchDefaultQueryAction:</string>
<string key="candidateClassName">id</string>
@@ -6824,7 +7293,148 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCustomQuery.h</string>
+ <string key="minorKey">../Source/SPCustomQuery.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="searchInDocForWebViewSelection:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="showHelpForWebViewSelection:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
+ <string key="name">searchInDocForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForWebViewSelection:">
+ <string key="name">showHelpForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -6832,7 +7442,25 @@
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseData.h</string>
+ <string key="minorKey">../Source/SPDatabaseData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">closeErrorConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionDelegate.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -6849,7 +7477,6 @@
<string key="checksumTable:">id</string>
<string key="chooseDatabase:">id</string>
<string key="chooseEncoding:">id</string>
- <string key="closeErrorConnectionSheet:">id</string>
<string key="closePanelSheet:">id</string>
<string key="closePasswordSheet:">id</string>
<string key="closeSheet:">id</string>
@@ -6867,7 +7494,6 @@
<string key="openCurrentConnectionInNewWindow:">id</string>
<string key="openDatabaseInNewTab:">id</string>
<string key="optimizeTable:">id</string>
- <string key="printDocument:">id</string>
<string key="refreshTables:">id</string>
<string key="removeDatabase:">id</string>
<string key="renameDatabase:">id</string>
@@ -6885,12 +7511,6 @@
<string key="showUserManager:">id</string>
<string key="toggleNavigator:">id</string>
<string key="validateSaveConnectionAccessory:">id</string>
- <string key="viewContent:">id</string>
- <string key="viewQuery:">id</string>
- <string key="viewRelations:">id</string>
- <string key="viewStatus:">id</string>
- <string key="viewStructure:">id</string>
- <string key="viewTriggers:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="addConnectionToFavorites:">
@@ -6933,10 +7553,6 @@
<string key="name">chooseEncoding:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="closeErrorConnectionSheet:">
- <string key="name">closeErrorConnectionSheet:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="closePanelSheet:">
<string key="name">closePanelSheet:</string>
<string key="candidateClassName">id</string>
@@ -7005,10 +7621,6 @@
<string key="name">optimizeTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="printDocument:">
- <string key="name">printDocument:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="refreshTables:">
<string key="name">refreshTables:</string>
<string key="candidateClassName">id</string>
@@ -7077,30 +7689,6 @@
<string key="name">validateSaveConnectionAccessory:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="viewContent:">
- <string key="name">viewContent:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewQuery:">
- <string key="name">viewQuery:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewRelations:">
- <string key="name">viewRelations:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStatus:">
- <string key="name">viewStatus:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStructure:">
- <string key="name">viewStructure:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewTriggers:">
- <string key="name">viewTriggers:</string>
- <string key="candidateClassName">id</string>
- </object>
</dictionary>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="addDatabaseButton">id</string>
@@ -7453,12 +8041,350 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseDocument.h</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPrintController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">SPEditSheetTextView</string>
<string key="superclassName">NSTextView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPEditSheetTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPEditSheetTextView</string>
<dictionary class="NSMutableDictionary" key="actions">
<string key="cut:">id</string>
<string key="paste:">id</string>
@@ -7485,7 +8411,7 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPEditSheetTextView.h</string>
+ <string key="minorKey">../Source/SPEditSheetTextView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -7861,7 +8787,98 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPExportController.h</string>
+ <string key="minorKey">../Source/SPExportController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExportController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="cancelExport:">id</string>
+ <string key="changeExportCompressionFormat:">id</string>
+ <string key="changeExportOutputPath:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="export:">id</string>
+ <string key="exportCustomQueryResultAsFormat:">id</string>
+ <string key="refreshTableList:">id</string>
+ <string key="selectDeselectAllTables:">id</string>
+ <string key="switchInput:">id</string>
+ <string key="toggleAdvancedExportOptionsView:">id</string>
+ <string key="toggleCustomFilenameFormatView:">id</string>
+ <string key="toggleNewFilePerTable:">NSButton</string>
+ <string key="toggleSQLIncludeContent:">NSButton</string>
+ <string key="toggleSQLIncludeDropSyntax:">NSButton</string>
+ <string key="toggleSQLIncludeStructure:">NSButton</string>
+ <string key="toggleXMLOutputFormat:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="cancelExport:">
+ <string key="name">cancelExport:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeExportCompressionFormat:">
+ <string key="name">changeExportCompressionFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="changeExportOutputPath:">
+ <string key="name">changeExportOutputPath:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportCustomQueryResultAsFormat:">
+ <string key="name">exportCustomQueryResultAsFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTableList:">
+ <string key="name">refreshTableList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectDeselectAllTables:">
+ <string key="name">selectDeselectAllTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchInput:">
+ <string key="name">switchInput:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedExportOptionsView:">
+ <string key="name">toggleAdvancedExportOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleCustomFilenameFormatView:">
+ <string key="name">toggleCustomFilenameFormatView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNewFilePerTable:">
+ <string key="name">toggleNewFilePerTable:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeContent:">
+ <string key="name">toggleSQLIncludeContent:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeDropSyntax:">
+ <string key="name">toggleSQLIncludeDropSyntax:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSQLIncludeStructure:">
+ <string key="name">toggleSQLIncludeStructure:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleXMLOutputFormat:">
+ <string key="name">toggleXMLOutputFormat:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExportController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8012,7 +9029,48 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPExtendedTableInfo.h</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8020,7 +9078,7 @@
<string key="superclassName">NSOutlineView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPFavoritesOutlineView.h</string>
+ <string key="minorKey">../Source/SPFavoritesOutlineView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8053,7 +9111,25 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPHistoryController.h</string>
+ <string key="minorKey">../Source/SPHistoryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8219,7 +9295,53 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPIndexesController.h</string>
+ <string key="minorKey">../Source/SPIndexesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8227,7 +9349,7 @@
<string key="superclassName">NSOutlineView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPOutlineView.h</string>
+ <string key="minorKey">../Source/SPOutlineView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8353,7 +9475,73 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPProcessListController.h</string>
+ <string key="minorKey">../Source/SPProcessListController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPProcessListController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeSheet:">id</string>
+ <string key="copy:">id</string>
+ <string key="killProcessConnection:">id</string>
+ <string key="killProcessQuery:">id</string>
+ <string key="refreshProcessList:">id</string>
+ <string key="saveServerProcesses:">id</string>
+ <string key="setAutoRefreshInterval:">id</string>
+ <string key="setCustomAutoRefreshInterval:">id</string>
+ <string key="toggeleShowFullProcessList:">NSMenuItem</string>
+ <string key="toggleProcessListAutoRefresh:">NSButton</string>
+ <string key="toggleShowProcessID:">NSMenuItem</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copy:">
+ <string key="name">copy:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="killProcessConnection:">
+ <string key="name">killProcessConnection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="killProcessQuery:">
+ <string key="name">killProcessQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshProcessList:">
+ <string key="name">refreshProcessList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveServerProcesses:">
+ <string key="name">saveServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setAutoRefreshInterval:">
+ <string key="name">setAutoRefreshInterval:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCustomAutoRefreshInterval:">
+ <string key="name">setCustomAutoRefreshInterval:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggeleShowFullProcessList:">
+ <string key="name">toggeleShowFullProcessList:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="toggleProcessListAutoRefresh:">
+ <string key="name">toggleProcessListAutoRefresh:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowProcessID:">
+ <string key="name">toggleShowProcessID:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPProcessListController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8459,7 +9647,53 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPQueryController.h</string>
+ <string key="minorKey">../Source/SPQueryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPQueryController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="clearConsole:">id</string>
+ <string key="saveConsoleAs:">id</string>
+ <string key="toggleShowConnections:">id</string>
+ <string key="toggleShowDatabases:">id</string>
+ <string key="toggleShowHelpStatements:">id</string>
+ <string key="toggleShowSelectShowStatements:">id</string>
+ <string key="toggleShowTimeStamps:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="clearConsole:">
+ <string key="name">clearConsole:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConsoleAs:">
+ <string key="name">saveConsoleAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowConnections:">
+ <string key="name">toggleShowConnections:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowDatabases:">
+ <string key="name">toggleShowDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowHelpStatements:">
+ <string key="name">toggleShowHelpStatements:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowSelectShowStatements:">
+ <string key="name">toggleShowSelectShowStatements:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleShowTimeStamps:">
+ <string key="name">toggleShowTimeStamps:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPQueryController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8570,7 +9804,73 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPQueryFavoriteManager.h</string>
+ <string key="minorKey">../Source/SPQueryFavoriteManager.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPQueryFavoriteManager</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addQueryFavorite:">id</string>
+ <string key="closeQueryManagerSheet:">id</string>
+ <string key="duplicateQueryFavorite:">id</string>
+ <string key="exportFavorites:">id</string>
+ <string key="importFavoritesByAdding:">id</string>
+ <string key="importFavoritesByReplacing:">id</string>
+ <string key="insertPlaceholder:">id</string>
+ <string key="removeAllQueryFavorites:">id</string>
+ <string key="removeQueryFavorite:">id</string>
+ <string key="saveFavoriteToFile:">id</string>
+ <string key="showHelp:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addQueryFavorite:">
+ <string key="name">addQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeQueryManagerSheet:">
+ <string key="name">closeQueryManagerSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateQueryFavorite:">
+ <string key="name">duplicateQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportFavorites:">
+ <string key="name">exportFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFavoritesByAdding:">
+ <string key="name">importFavoritesByAdding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFavoritesByReplacing:">
+ <string key="name">importFavoritesByReplacing:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertPlaceholder:">
+ <string key="name">insertPlaceholder:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeAllQueryFavorites:">
+ <string key="name">removeAllQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeQueryFavorite:">
+ <string key="name">removeQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveFavoriteToFile:">
+ <string key="name">saveFavoriteToFile:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelp:">
+ <string key="name">showHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPQueryFavoriteManager.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8631,7 +9931,43 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPServerVariablesController.h</string>
+ <string key="minorKey">../Source/SPServerVariablesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPServerVariablesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeSheet:">id</string>
+ <string key="copy:">id</string>
+ <string key="copyServerVariableName:">id</string>
+ <string key="copyServerVariableValue:">id</string>
+ <string key="saveServerVariables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copy:">
+ <string key="name">copy:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyServerVariableName:">
+ <string key="name">copyServerVariableName:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyServerVariableValue:">
+ <string key="name">copyServerVariableValue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveServerVariables:">
+ <string key="name">saveServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPServerVariablesController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8664,7 +10000,25 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPSplitView.h</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8770,6 +10124,7 @@
<string key="duplicateButton">id</string>
<string key="fieldField">NSPopUpButton</string>
<string key="filterButton">id</string>
+ <string key="filterControllerInstance">SPTableContentFilterController</string>
<string key="filterTableClearButton">NSButton</string>
<string key="filterTableDistinctCheckbox">NSButton</string>
<string key="filterTableFilterButton">NSButton</string>
@@ -8788,6 +10143,7 @@
<string key="limitRowsField">id</string>
<string key="limitRowsStepper">id</string>
<string key="multipleLineEditingButton">NSButton</string>
+ <string key="paginationBox">NSBox</string>
<string key="paginationButton">NSButton</string>
<string key="paginationGoButton">NSButton</string>
<string key="paginationNextButton">NSButton</string>
@@ -8795,6 +10151,7 @@
<string key="paginationPageStepper">NSStepper</string>
<string key="paginationPreviousButton">NSButton</string>
<string key="paginationView">NSView</string>
+ <string key="paginationViewController">NSViewController</string>
<string key="reloadButton">id</string>
<string key="removeButton">id</string>
<string key="secondBetweenField">id</string>
@@ -8847,6 +10204,10 @@
<string key="name">filterButton</string>
<string key="candidateClassName">id</string>
</object>
+ <object class="IBToOneOutletInfo" key="filterControllerInstance">
+ <string key="name">filterControllerInstance</string>
+ <string key="candidateClassName">SPTableContentFilterController</string>
+ </object>
<object class="IBToOneOutletInfo" key="filterTableClearButton">
<string key="name">filterTableClearButton</string>
<string key="candidateClassName">NSButton</string>
@@ -8919,6 +10280,10 @@
<string key="name">multipleLineEditingButton</string>
<string key="candidateClassName">NSButton</string>
</object>
+ <object class="IBToOneOutletInfo" key="paginationBox">
+ <string key="name">paginationBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
<object class="IBToOneOutletInfo" key="paginationButton">
<string key="name">paginationButton</string>
<string key="candidateClassName">NSButton</string>
@@ -8947,6 +10312,10 @@
<string key="name">paginationView</string>
<string key="candidateClassName">NSView</string>
</object>
+ <object class="IBToOneOutletInfo" key="paginationViewController">
+ <string key="name">paginationViewController</string>
+ <string key="candidateClassName">NSViewController</string>
+ </object>
<object class="IBToOneOutletInfo" key="reloadButton">
<string key="name">reloadButton</string>
<string key="candidateClassName">id</string>
@@ -8990,7 +10359,140 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableContent.h</string>
+ <string key="minorKey">../Source/SPTableContent.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContentFilterController</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="contentSplitView">SPSplitView</string>
+ <string key="filterRuleEditor">NSRuleEditor</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="contentSplitView">
+ <string key="name">contentSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterRuleEditor">
+ <string key="name">filterRuleEditor</string>
+ <string key="candidateClassName">NSRuleEditor</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContentFilterController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -9012,7 +10514,7 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableData.h</string>
+ <string key="minorKey">../Source/SPTableData.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -9059,7 +10561,7 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableInfo.h</string>
+ <string key="minorKey">../Source/SPTableInfo.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -9069,7 +10571,6 @@
<string key="addField:">id</string>
<string key="closeSheet:">id</string>
<string key="duplicateField:">id</string>
- <string key="reloadTable:">id</string>
<string key="removeField:">id</string>
<string key="resetAutoIncrement:">id</string>
<string key="showOptimizedFieldType:">id</string>
@@ -9089,10 +10590,6 @@
<string key="name">duplicateField:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="reloadTable:">
- <string key="name">reloadTable:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="removeField:">
<string key="name">removeField:</string>
<string key="candidateClassName">id</string>
@@ -9255,7 +10752,94 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableStructure.h</string>
+ <string key="minorKey">../Source/SPTableStructure.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -9263,7 +10847,7 @@
<string key="superclassName">NSTableView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableView.h</string>
+ <string key="minorKey">../Source/SPTableView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -9274,9 +10858,9 @@
<string key="closeSheet:">id</string>
<string key="copyTable:">id</string>
<string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
<string key="removeTable:">id</string>
<string key="renameTable:">id</string>
- <string key="tableEncodingButtonChanged:">id</string>
<string key="togglePaneCollapse:">id</string>
<string key="truncateTable:">id</string>
<string key="updateFilter:">id</string>
@@ -9299,6 +10883,10 @@
<string key="name">openTableInNewTab:</string>
<string key="candidateClassName">id</string>
</object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
<object class="IBActionInfo" key="removeTable:">
<string key="name">removeTable:</string>
<string key="candidateClassName">id</string>
@@ -9307,10 +10895,6 @@
<string key="name">renameTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="tableEncodingButtonChanged:">
- <string key="name">tableEncodingButtonChanged:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="togglePaneCollapse:">
<string key="name">togglePaneCollapse:</string>
<string key="candidateClassName">id</string>
@@ -9345,6 +10929,8 @@
<string key="listFilterField">NSSearchField</string>
<string key="openTableInNewTabContextMenuItem">NSMenuItem</string>
<string key="openTableInNewTabMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowMenuItem">NSMenuItem</string>
<string key="removeTableContextMenuItem">NSMenuItem</string>
<string key="removeTableMenuItem">NSMenuItem</string>
<string key="renameTableContextMenuItem">NSMenuItem</string>
@@ -9444,6 +11030,14 @@
<string key="name">openTableInNewTabMenuItem</string>
<string key="candidateClassName">NSMenuItem</string>
</object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowContextMenuItem">
+ <string key="name">openTableInNewWindowContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowMenuItem">
+ <string key="name">openTableInNewWindowMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
<object class="IBToOneOutletInfo" key="removeTableContextMenuItem">
<string key="name">removeTableContextMenuItem</string>
<string key="candidateClassName">NSMenuItem</string>
@@ -9579,26 +11173,94 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTablesList.h</string>
+ <string key="minorKey">../Source/SPTablesList.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
- <string key="className">SPTextView</string>
- <string key="superclassName">NSTextView</string>
+ <string key="className">SPTablesList</string>
<dictionary class="NSMutableDictionary" key="actions">
- <string key="printDocument:">id</string>
- <string key="showMySQLHelpForCurrentWord:">id</string>
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="tableEncodingButtonChanged:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
- <object class="IBActionInfo" key="printDocument:">
- <string key="name">printDocument:</string>
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
- <string key="name">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableEncodingButtonChanged:">
+ <string key="name">tableEncodingButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <string key="superclassName">NSTextView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="customQueryInstance">SPCustomQuery</string>
<string key="scrollView">NSScrollView</string>
@@ -9625,7 +11287,28 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTextView.h</string>
+ <string key="minorKey">../Source/SPTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="printDocument:">id</string>
+ <string key="showMySQLHelpForCurrentWord:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="printDocument:">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -9681,7 +11364,644 @@
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPWindowController.h</string>
+ <string key="minorKey">../Source/SPWindowController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addNewConnection:">id</string>
+ <string key="closeTab:">id</string>
+ <string key="moveSelectedTabInNewWindow:">id</string>
+ <string key="selectNextDocumentTab:">id</string>
+ <string key="selectPreviousDocumentTab:">id</string>
+ <string key="toggleTabBarShown:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addNewConnection:">
+ <string key="name">addNewConnection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeTab:">
+ <string key="name">closeTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectedTabInNewWindow:">
+ <string key="name">moveSelectedTabInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectNextDocumentTab:">
+ <string key="name">selectNextDocumentTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectPreviousDocumentTab:">
+ <string key="name">selectPreviousDocumentTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleTabBarShown:">
+ <string key="name">toggleTabBarShown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPWindowController.m</string>
+ </object>
+ </object>
+ </array>
+ <array class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
+ <object class="IBPartialClassDescription">
+ <string key="className">NSActionCell</string>
+ <string key="superclassName">NSCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSApplication</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSArrayController</string>
+ <string key="superclassName">NSObjectController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSArrayController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSBox</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSBox.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSBrowser</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSBrowser.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSButton</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSButton.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSButtonCell</string>
+ <string key="superclassName">NSActionCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSCell</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSComboBox</string>
+ <string key="superclassName">NSTextField</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSComboBox.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSControl</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSControl.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSController</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSDocument</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="printDocument:">id</string>
+ <string key="revertDocumentToSaved:">id</string>
+ <string key="runPageLayout:">id</string>
+ <string key="saveDocument:">id</string>
+ <string key="saveDocumentAs:">id</string>
+ <string key="saveDocumentTo:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="printDocument:">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="revertDocumentToSaved:">
+ <string key="name">revertDocumentToSaved:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPageLayout:">
+ <string key="name">runPageLayout:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveDocument:">
+ <string key="name">saveDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveDocumentAs:">
+ <string key="name">saveDocumentAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveDocumentTo:">
+ <string key="name">saveDocumentTo:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSDocument.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSDocumentController</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="clearRecentDocuments:">id</string>
+ <string key="newDocument:">id</string>
+ <string key="openDocument:">id</string>
+ <string key="saveAllDocuments:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="clearRecentDocuments:">
+ <string key="name">clearRecentDocuments:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="newDocument:">
+ <string key="name">newDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDocument:">
+ <string key="name">openDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveAllDocuments:">
+ <string key="name">saveAllDocuments:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSDocumentController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSFormatter</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSManagedObjectContext</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">CoreData.framework/Headers/NSManagedObjectContext.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMatrix</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMatrix.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenu</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenuItem</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenuItemCell</string>
+ <string key="superclassName">NSButtonCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMovieView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMovieView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObjectController</string>
+ <string key="superclassName">NSController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSObjectController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSOutlineView</string>
+ <string key="superclassName">NSTableView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPanel</string>
+ <string key="superclassName">NSWindow</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPanel.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPopUpButton</string>
+ <string key="superclassName">NSButton</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPopUpButtonCell</string>
+ <string key="superclassName">NSMenuItemCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPopover</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">performClose:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">performClose:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">performClose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="contentViewController">NSViewController</string>
+ <string key="delegate">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="contentViewController">
+ <string key="name">contentViewController</string>
+ <string key="candidateClassName">NSViewController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="delegate">
+ <string key="name">delegate</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPopover.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSProgressIndicator</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSProgressIndicator.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSResponder</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSRuleEditor</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSRuleEditor.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSScrollView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSScrollView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSearchField</string>
+ <string key="superclassName">NSTextField</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSearchField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSearchFieldCell</string>
+ <string key="superclassName">NSTextFieldCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSearchFieldCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSecureTextField</string>
+ <string key="superclassName">NSTextField</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSecureTextField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSegmentedControl</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSSplitView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSStepper</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSStepper.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTabView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTabView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTableColumn</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTableColumn.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTableView</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSText</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSText.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextField</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextFieldCell</string>
+ <string key="superclassName">NSActionCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <string key="superclassName">NSText</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTokenField</string>
+ <string key="superclassName">NSTextField</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTokenField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTreeController</string>
+ <string key="superclassName">NSObjectController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTreeController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSUserDefaultsController</string>
+ <string key="superclassName">NSController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSView</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSViewController</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="NSMutableDictionary" key="outlets">
+ <string key="NS.key.0">view</string>
+ <string key="NS.object.0">NSView</string>
+ </object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <string key="NS.key.0">view</string>
+ <object class="IBToOneOutletInfo" key="NS.object.0">
+ <string key="name">view</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSWindow</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSWindow.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSWindowController</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="NSMutableDictionary" key="actions">
+ <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>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">PDFView</string>
+ <string key="superclassName">NSView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="goBack:">id</string>
+ <string key="goForward:">id</string>
+ <string key="goToFirstPage:">id</string>
+ <string key="goToLastPage:">id</string>
+ <string key="goToNextPage:">id</string>
+ <string key="goToPreviousPage:">id</string>
+ <string key="selectAll:">id</string>
+ <string key="takeBackgroundColorFrom:">id</string>
+ <string key="zoomIn:">id</string>
+ <string key="zoomOut:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="goBack:">
+ <string key="name">goBack:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="goForward:">
+ <string key="name">goForward:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="goToFirstPage:">
+ <string key="name">goToFirstPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="goToLastPage:">
+ <string key="name">goToLastPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="goToNextPage:">
+ <string key="name">goToNextPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="goToPreviousPage:">
+ <string key="name">goToPreviousPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectAll:">
+ <string key="name">selectAll:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="takeBackgroundColorFrom:">
+ <string key="name">takeBackgroundColorFrom:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="zoomIn:">
+ <string key="name">zoomIn:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="zoomOut:">
+ <string key="name">zoomOut:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Quartz.framework/Frameworks/PDFKit.framework/Headers/PDFView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">QCView</string>
+ <string key="superclassName">NSView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="play:">id</string>
+ <string key="start:">id</string>
+ <string key="stop:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="play:">
+ <string key="name">play:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="start:">
+ <string key="name">start:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="stop:">
+ <string key="name">stop:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Quartz.framework/Frameworks/QuartzComposer.framework/Headers/QCView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -9699,8 +12019,8 @@
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SRRecorderControl.h</string>
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -9729,8 +12049,75 @@
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SUUpdater.h</string>
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Sparkle.framework/Headers/SUUpdater.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">WebView</string>
+ <string key="superclassName">NSView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="goBack:">id</string>
+ <string key="goForward:">id</string>
+ <string key="makeTextLarger:">id</string>
+ <string key="makeTextSmaller:">id</string>
+ <string key="makeTextStandardSize:">id</string>
+ <string key="reload:">id</string>
+ <string key="reloadFromOrigin:">id</string>
+ <string key="stopLoading:">id</string>
+ <string key="takeStringURLFrom:">id</string>
+ <string key="toggleContinuousSpellChecking:">id</string>
+ <string key="toggleSmartInsertDelete:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="goBack:">
+ <string key="name">goBack:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="goForward:">
+ <string key="name">goForward:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTextLarger:">
+ <string key="name">makeTextLarger:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTextSmaller:">
+ <string key="name">makeTextSmaller:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTextStandardSize:">
+ <string key="name">makeTextStandardSize:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reload:">
+ <string key="name">reload:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadFromOrigin:">
+ <string key="name">reloadFromOrigin:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="stopLoading:">
+ <string key="name">stopLoading:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="takeStringURLFrom:">
+ <string key="name">takeStringURLFrom:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleContinuousSpellChecking:">
+ <string key="name">toggleContinuousSpellChecking:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleSmartInsertDelete:">
+ <string key="name">toggleSmartInsertDelete:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">WebKit.framework/Headers/WebView.h</string>
</object>
</object>
</array>
@@ -9738,10 +12125,6 @@
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/MainWindow.xib b/Interfaces/English.lproj/MainWindow.xib
index a111273c..89dce7c2 100644
--- a/Interfaces/English.lproj/MainWindow.xib
+++ b/Interfaces/English.lproj/MainWindow.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSCustomObject</string>
@@ -45,7 +45,7 @@
<nil key="NSUserInterfaceItemIdentifier"/>
<string key="NSWindowContentMinSize">{705, 400}</string>
<object class="NSView" key="NSWindowView" id="1006">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSCustomView" id="1010102095">
@@ -53,6 +53,7 @@
<int key="NSvFlags">266</int>
<string key="NSFrame">{{0, 533}, {948, 22}}</string>
<reference key="NSSuperview" ref="1006"/>
+ <reference key="NSWindow"/>
<string key="NSClassName">PSMTabBarControl</string>
</object>
<object class="NSTabView" id="372524807">
@@ -60,9 +61,10 @@
<int key="NSvFlags">274</int>
<string key="NSFrameSize">{948, 533}</string>
<reference key="NSSuperview" ref="1006"/>
+ <reference key="NSWindow"/>
<array class="NSMutableArray" key="NSTabViewItems"/>
<object class="NSFont" key="NSFont">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -71,6 +73,8 @@
</object>
</array>
<string key="NSFrameSize">{948, 555}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
<string key="NSMinSize">{705, 422}</string>
@@ -80,7 +84,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">tabBar</string>
@@ -210,14 +214,174 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">PSMTabBarControl</string>
+ <string key="superclassName">NSControl</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="delegate">id</string>
+ <string key="partnerView">id</string>
+ <string key="tabView">NSTabView</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="delegate">
+ <string key="name">delegate</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="partnerView">
+ <string key="name">partnerView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tabView">
+ <string key="name">tabView</string>
+ <string key="candidateClassName">NSTabView</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Frameworks/PSMTabBar/PSMTabBarControl.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPWindow</string>
+ <string key="superclassName">NSWindow</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPWindow.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPWindowController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addNewConnection:">id</string>
+ <string key="closeTab:">id</string>
+ <string key="moveSelectedTabInNewWindow:">id</string>
+ <string key="selectNextDocumentTab:">id</string>
+ <string key="selectPreviousDocumentTab:">id</string>
+ <string key="toggleTabBarShown:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addNewConnection:">
+ <string key="name">addNewConnection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeTab:">
+ <string key="name">closeTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectedTabInNewWindow:">
+ <string key="name">moveSelectedTabInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectNextDocumentTab:">
+ <string key="name">selectNextDocumentTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectPreviousDocumentTab:">
+ <string key="name">selectPreviousDocumentTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleTabBarShown:">
+ <string key="name">toggleTabBarShown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="tabBar">PSMTabBarControl</string>
+ <string key="tabView">NSTabView</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="tabBar">
+ <string key="name">tabBar</string>
+ <string key="candidateClassName">PSMTabBarControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tabView">
+ <string key="name">tabView</string>
+ <string key="candidateClassName">NSTabView</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPWindowController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addNewConnection:">id</string>
+ <string key="closeTab:">id</string>
+ <string key="moveSelectedTabInNewWindow:">id</string>
+ <string key="selectNextDocumentTab:">id</string>
+ <string key="selectPreviousDocumentTab:">id</string>
+ <string key="toggleTabBarShown:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addNewConnection:">
+ <string key="name">addNewConnection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeTab:">
+ <string key="name">closeTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectedTabInNewWindow:">
+ <string key="name">moveSelectedTabInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectNextDocumentTab:">
+ <string key="name">selectNextDocumentTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectPreviousDocumentTab:">
+ <string key="name">selectPreviousDocumentTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleTabBarShown:">
+ <string key="name">toggleTabBarShown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPWindowController.m</string>
+ </object>
+ </object>
+ </array>
+ <array class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
+ <object class="IBPartialClassDescription">
+ <string key="className">PSMTabBarControl</string>
+ <string key="superclassName">NSControl</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="delegate">id</string>
+ <string key="partnerView">id</string>
+ <string key="tabView">NSTabView</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="delegate">
+ <string key="name">delegate</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="partnerView">
+ <string key="name">partnerView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tabView">
+ <string key="name">tabView</string>
+ <string key="candidateClassName">NSTabView</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">PSMTabBar.framework/Headers/PSMTabBarControl.h</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/Navigator.xib b/Interfaces/English.lproj/Navigator.xib
index 250c4621..0ae61c2c 100644
--- a/Interfaces/English.lproj/Navigator.xib
+++ b/Interfaces/English.lproj/Navigator.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSButton</string>
@@ -55,7 +55,7 @@
<nil key="NSUserInterfaceItemIdentifier"/>
<string key="NSWindowContentMinSize">{200, 200}</string>
<object class="NSView" key="NSWindowView" id="881437593">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSButton" id="78295967">
@@ -63,13 +63,14 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{149, 163}, {96, 32}}</string>
<reference key="NSSuperview" ref="881437593"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="56918212">
<int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Button</string>
<object class="NSFont" key="NSSupport" id="311402772">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -88,13 +89,14 @@
<int key="NSvFlags">270</int>
<string key="NSFrame">{{20, 336}, {174, 19}}</string>
<reference key="NSSuperview" ref="881437593"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSSearchFieldCell" key="NSCell" id="753691092">
<int key="NSCellFlags">342884416</int>
<int key="NSCellFlags2">268600320</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -177,6 +179,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrameSize">{394, 215}</string>
<reference key="NSSuperview" ref="776459064"/>
+ <reference key="NSWindow"/>
<bool key="NSViewCanDrawConcurrently">YES</bool>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
@@ -186,12 +189,15 @@
<int key="NSvFlags">256</int>
<string key="NSFrameSize">{394, 17}</string>
<reference key="NSSuperview" ref="793944011"/>
+ <reference key="NSWindow"/>
<reference key="NSTableView" ref="953143939"/>
</object>
- <object class="_NSCornerView" key="NSCornerView">
- <nil key="NSNextResponder"/>
+ <object class="_NSCornerView" key="NSCornerView" id="990146627">
+ <reference key="NSNextResponder" ref="871868181"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{224, 0}, {16, 17}}</string>
+ <reference key="NSSuperview" ref="871868181"/>
+ <reference key="NSWindow"/>
</object>
<array class="NSMutableArray" key="NSTableColumns">
<object class="NSTableColumn" id="1037142979">
@@ -307,16 +313,32 @@
</array>
<string key="NSFrame">{{1, 17}, {394, 215}}</string>
<reference key="NSSuperview" ref="871868181"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="953143939"/>
<reference key="NSDocView" ref="953143939"/>
<reference key="NSBGColor" ref="119013737"/>
<int key="NScvFlags">4</int>
</object>
+ <object class="NSClipView" id="793944011">
+ <reference key="NSNextResponder" ref="871868181"/>
+ <int key="NSvFlags">2338</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <reference ref="933441825"/>
+ </array>
+ <string key="NSFrame">{{1, 0}, {394, 17}}</string>
+ <reference key="NSSuperview" ref="871868181"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="933441825"/>
+ <reference key="NSDocView" ref="933441825"/>
+ <reference key="NSBGColor" ref="119013737"/>
+ <int key="NScvFlags">4</int>
+ </object>
<object class="NSScroller" id="1053144917">
<reference key="NSNextResponder" ref="871868181"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{224, 17}, {11, 102}}</string>
<reference key="NSSuperview" ref="871868181"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">256</int>
<reference key="NSTarget" ref="871868181"/>
@@ -328,34 +350,25 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{1, 65}, {120, 11}}</string>
<reference key="NSSuperview" ref="871868181"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">257</int>
<reference key="NSTarget" ref="871868181"/>
<string key="NSAction">_doScroller:</string>
<double key="NSPercent">0.99746835231781006</double>
</object>
- <object class="NSClipView" id="793944011">
- <reference key="NSNextResponder" ref="871868181"/>
- <int key="NSvFlags">2338</int>
- <array class="NSMutableArray" key="NSSubviews">
- <reference ref="933441825"/>
- </array>
- <string key="NSFrame">{{1, 0}, {394, 17}}</string>
- <reference key="NSSuperview" ref="871868181"/>
- <reference key="NSNextKeyView" ref="933441825"/>
- <reference key="NSDocView" ref="933441825"/>
- <reference key="NSBGColor" ref="119013737"/>
- <int key="NScvFlags">4</int>
- </object>
+ <reference ref="990146627"/>
</array>
<string key="NSFrameSize">{396, 233}</string>
<reference key="NSSuperview" ref="464250149"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="776459064"/>
<int key="NSsFlags">133682</int>
<reference key="NSVScroller" ref="1053144917"/>
<reference key="NSHScroller" ref="214181863"/>
<reference key="NSContentView" ref="776459064"/>
<reference key="NSHeaderClipView" ref="793944011"/>
+ <reference key="NSCornerView" ref="990146627"/>
<bytes key="NSScrollAmts">QSAAAEEgAABBYAAAQWAAAA</bytes>
<double key="NSMinMagnification">0.25</double>
<double key="NSMaxMagnification">4</double>
@@ -364,6 +377,7 @@
</array>
<string key="NSFrameSize">{395, 233}</string>
<reference key="NSSuperview" ref="112878735"/>
+ <reference key="NSWindow"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
</object>
<object class="NSView" id="65471749">
@@ -383,6 +397,7 @@
<int key="NSvFlags">274</int>
<string key="NSFrameSize">{394, 82}</string>
<reference key="NSSuperview" ref="156652012"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
@@ -391,12 +406,15 @@
<int key="NSvFlags">256</int>
<string key="NSFrameSize">{394, 17}</string>
<reference key="NSSuperview" ref="274665296"/>
+ <reference key="NSWindow"/>
<reference key="NSTableView" ref="830726222"/>
</object>
- <object class="_NSCornerView" key="NSCornerView">
- <nil key="NSNextResponder"/>
+ <object class="_NSCornerView" key="NSCornerView" id="377618598">
+ <reference key="NSNextResponder" ref="959301442"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{224, 0}, {16, 17}}</string>
+ <reference key="NSSuperview" ref="959301442"/>
+ <reference key="NSWindow"/>
</object>
<array class="NSMutableArray" key="NSTableColumns">
<object class="NSTableColumn" id="673003491">
@@ -452,16 +470,32 @@
</array>
<string key="NSFrame">{{1, 17}, {394, 82}}</string>
<reference key="NSSuperview" ref="959301442"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="830726222"/>
<reference key="NSDocView" ref="830726222"/>
<reference key="NSBGColor" ref="119013737"/>
<int key="NScvFlags">4</int>
</object>
+ <object class="NSClipView" id="274665296">
+ <reference key="NSNextResponder" ref="959301442"/>
+ <int key="NSvFlags">2338</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <reference ref="794731912"/>
+ </array>
+ <string key="NSFrame">{{1, 0}, {394, 17}}</string>
+ <reference key="NSSuperview" ref="959301442"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="794731912"/>
+ <reference key="NSDocView" ref="794731912"/>
+ <reference key="NSBGColor" ref="119013737"/>
+ <int key="NScvFlags">4</int>
+ </object>
<object class="NSScroller" id="4516205">
<reference key="NSNextResponder" ref="959301442"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{224, 17}, {11, 102}}</string>
<reference key="NSSuperview" ref="959301442"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">256</int>
<reference key="NSTarget" ref="959301442"/>
@@ -473,34 +507,25 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{1, 38}, {393, 11}}</string>
<reference key="NSSuperview" ref="959301442"/>
+ <reference key="NSWindow"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">257</int>
<reference key="NSTarget" ref="959301442"/>
<string key="NSAction">_doScroller:</string>
<double key="NSPercent">0.99746191501617432</double>
</object>
- <object class="NSClipView" id="274665296">
- <reference key="NSNextResponder" ref="959301442"/>
- <int key="NSvFlags">2338</int>
- <array class="NSMutableArray" key="NSSubviews">
- <reference ref="794731912"/>
- </array>
- <string key="NSFrame">{{1, 0}, {394, 17}}</string>
- <reference key="NSSuperview" ref="959301442"/>
- <reference key="NSNextKeyView" ref="794731912"/>
- <reference key="NSDocView" ref="794731912"/>
- <reference key="NSBGColor" ref="119013737"/>
- <int key="NScvFlags">4</int>
- </object>
+ <reference ref="377618598"/>
</array>
<string key="NSFrameSize">{396, 100}</string>
<reference key="NSSuperview" ref="65471749"/>
+ <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="156652012"/>
<int key="NSsFlags">133682</int>
<reference key="NSVScroller" ref="4516205"/>
<reference key="NSHScroller" ref="1071414008"/>
<reference key="NSContentView" ref="156652012"/>
<reference key="NSHeaderClipView" ref="274665296"/>
+ <reference key="NSCornerView" ref="377618598"/>
<bytes key="NSScrollAmts">QSAAAEEgAABBoAAAQaAAAA</bytes>
<double key="NSMinMagnification">0.25</double>
<double key="NSMaxMagnification">4</double>
@@ -509,11 +534,13 @@
</array>
<string key="NSFrame">{{0, 234}, {395, 100}}</string>
<reference key="NSSuperview" ref="112878735"/>
+ <reference key="NSWindow"/>
<bool key="NSDoNotTranslateAutoresizingMask">YES</bool>
</object>
</array>
<string key="NSFrameSize">{395, 334}</string>
<reference key="NSSuperview" ref="881437593"/>
+ <reference key="NSWindow"/>
<int key="NSDividerStyle">2</int>
<string key="NSAutosaveName">SPNavigatorSchemaStatus</string>
</object>
@@ -522,6 +549,7 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{354.99999942450683, 337}, {20, 20}}</string>
<reference key="NSSuperview" ref="881437593"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="1031400862">
<int key="NSCellFlags">-2080374784</int>
@@ -547,13 +575,14 @@
<int key="NSvFlags">265</int>
<string key="NSFrame">{{252, 337}, {95, 17}}</string>
<reference key="NSSuperview" ref="881437593"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="541102869">
<int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">134348800</int>
<string key="NSContents">sync</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI-Bold</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">12</double>
<int key="NSfFlags">2072</int>
</object>
@@ -569,6 +598,8 @@
</object>
</array>
<string key="NSFrameSize">{395, 359}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
<string key="NSMinSize">{200, 222}</string>
@@ -579,7 +610,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">window</string>
@@ -1042,14 +1073,190 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">ImageAndTextCell</string>
+ <string key="superclassName">NSTextFieldCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/ImageAndTextCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPNavigatorController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="filterTree:">id</string>
+ <string key="outlineViewAction:">id</string>
+ <string key="reloadAllStructures:">id</string>
+ <string key="syncButtonAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="filterTree:">
+ <string key="name">filterTree:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="outlineViewAction:">
+ <string key="name">outlineViewAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadAllStructures:">
+ <string key="name">reloadAllStructures:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="syncButtonAction:">
+ <string key="name">syncButtonAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="infoTable">id</string>
+ <string key="navigatorWindow">id</string>
+ <string key="outlineSchema2">SPNavigatorOutlineView</string>
+ <string key="schema12SplitView">id</string>
+ <string key="schemaStatusSplitView">SPSplitView</string>
+ <string key="searchField">id</string>
+ <string key="syncButton">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="infoTable">
+ <string key="name">infoTable</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="navigatorWindow">
+ <string key="name">navigatorWindow</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="outlineSchema2">
+ <string key="name">outlineSchema2</string>
+ <string key="candidateClassName">SPNavigatorOutlineView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="schema12SplitView">
+ <string key="name">schema12SplitView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="schemaStatusSplitView">
+ <string key="name">schemaStatusSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="searchField">
+ <string key="name">searchField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="syncButton">
+ <string key="name">syncButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPNavigatorController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPNavigatorController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="filterTree:">id</string>
+ <string key="outlineViewAction:">id</string>
+ <string key="reloadAllStructures:">id</string>
+ <string key="syncButtonAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="filterTree:">
+ <string key="name">filterTree:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="outlineViewAction:">
+ <string key="name">outlineViewAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadAllStructures:">
+ <string key="name">reloadAllStructures:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="syncButtonAction:">
+ <string key="name">syncButtonAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPNavigatorController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPNavigatorOutlineView</string>
+ <string key="superclassName">NSOutlineView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPNavigatorOutlineView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <string key="superclassName">NSSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="additionalDragHandleView">NSView</string>
+ <string key="collapseToggleButton">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="additionalDragHandleView">
+ <string key="name">additionalDragHandleView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="collapseToggleButton">
+ <string key="name">collapseToggleButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableTextFieldCell</string>
+ <string key="superclassName">ImageAndTextCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableTextFieldCell.h</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/Preferences.xib b/Interfaces/English.lproj/Preferences.xib
index 1af9ce1a..28387db8 100644
--- a/Interfaces/English.lproj/Preferences.xib
+++ b/Interfaces/English.lproj/Preferences.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13E28</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6751</string>
<string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">5056</string>
+ <string key="NS.object.0">6751</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSBox</string>
@@ -88,11 +88,13 @@
<nil key="NSUserInterfaceItemIdentifier"/>
<string key="NSWindowContentMinSize">{580, 50}</string>
<object class="NSView" key="NSWindowView" id="1006">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<string key="NSFrameSize">{580, 172}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
</object>
- <string key="NSScreenRect">{{0, 0}, {2560, 1418}}</string>
+ <string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
<string key="NSMinSize">{580, 72}</string>
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
<bool key="NSWindowIsRestorable">YES</bool>
@@ -111,21 +113,22 @@
<string key="NSWindowContentMaxSize">{247, 124}</string>
<string key="NSWindowContentMinSize">{227, 114}</string>
<object class="NSView" key="NSWindowView" id="985350347">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextField" id="294234359">
<reference key="NSNextResponder" ref="985350347"/>
- <int key="NSvFlags">256</int>
- <string key="NSFrame">{{17, 86}, {213, 14}}</string>
+ <int key="NSvFlags">266</int>
+ <string key="NSFrame">{{17, 86}, {192, 14}}</string>
<reference key="NSSuperview" ref="985350347"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="276434863">
<int key="NSCellFlags">68157504</int>
<int key="NSCellFlags2">4195328</int>
<string key="NSContents">Name:</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -154,16 +157,17 @@
</object>
<object class="NSTextField" id="202566886">
<reference key="NSNextResponder" ref="985350347"/>
- <int key="NSvFlags">256</int>
- <string key="NSFrame">{{18, 45}, {212, 11}}</string>
+ <int key="NSvFlags">266</int>
+ <string key="NSFrame">{{18, 45}, {191, 11}}</string>
<reference key="NSSuperview" ref="985350347"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="803513953">
<int key="NSCellFlags">68157504</int>
<int key="NSCellFlags2">4457472</int>
<string key="NSContents">Already exists and will be overwritten!</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">9</double>
<int key="NSfFlags">3614</int>
</object>
@@ -176,9 +180,10 @@
</object>
<object class="NSTextField" id="336557380">
<reference key="NSNextResponder" ref="985350347"/>
- <int key="NSvFlags">258</int>
+ <int key="NSvFlags">266</int>
<string key="NSFrame">{{20, 60}, {187, 18}}</string>
<reference key="NSSuperview" ref="985350347"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="17465994">
<int key="NSCellFlags">-1804599231</int>
@@ -191,7 +196,7 @@
<int key="NSColorSpace">6</int>
<string key="NSCatalogName">System</string>
<string key="NSColorName">textBackgroundColor</string>
- <object class="NSColor" key="NSColor">
+ <object class="NSColor" key="NSColor" id="775577076">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MQA</bytes>
</object>
@@ -208,9 +213,10 @@
</object>
<object class="NSButton" id="107835671">
<reference key="NSNextResponder" ref="985350347"/>
- <int key="NSvFlags">259</int>
+ <int key="NSvFlags">265</int>
<string key="NSFrame">{{112, 13}, {100, 28}}</string>
<reference key="NSSuperview" ref="985350347"/>
+ <reference key="NSWindow"/>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="460571945">
@@ -236,9 +242,10 @@
</object>
<object class="NSButton" id="76427887">
<reference key="NSNextResponder" ref="985350347"/>
- <int key="NSvFlags">259</int>
+ <int key="NSvFlags">265</int>
<string key="NSFrame">{{15, 13}, {99, 28}}</string>
<reference key="NSSuperview" ref="985350347"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="748282128">
<int key="NSCellFlags">67108864</int>
@@ -258,8 +265,10 @@
</object>
</array>
<string key="NSFrameSize">{227, 114}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
</object>
- <string key="NSScreenRect">{{0, 0}, {2560, 1418}}</string>
+ <string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
<string key="NSMinSize">{227, 136}</string>
<string key="NSMaxSize">{247, 146}</string>
<bool key="NSWindowIsRestorable">YES</bool>
@@ -350,7 +359,7 @@
<int key="NSCellFlags2">2048</int>
<string key="NSContents">Text Cell</string>
<object class="NSFont" key="NSSupport" id="320262838">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -554,7 +563,7 @@
</array>
<string key="NSFrameSize">{264, 225}</string>
</object>
- <string key="NSScreenRect">{{0, 0}, {2560, 1418}}</string>
+ <string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
<string key="NSMinSize">{264, 247}</string>
<string key="NSMaxSize">{264, 296}</string>
<bool key="NSWindowIsRestorable">YES</bool>
@@ -568,6 +577,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{201, 121}, {254, 26}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="666474856"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="562129977">
<int key="NSCellFlags">-2076180416</int>
@@ -638,7 +648,7 @@
</object>
<object class="NSMenuItem" id="658105746">
<reference key="NSMenu" ref="1035849972"/>
- <string key="NSTitle">UTF-8 Unicode (utf8)</string>
+ <string key="NSTitle">UTF-8 Unicode BMP (utf8)</string>
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
@@ -648,6 +658,18 @@
<int key="NSTag">20</int>
<reference key="NSTarget" ref="562129977"/>
</object>
+ <object class="NSMenuItem" id="89605484">
+ <reference key="NSMenu" ref="1035849972"/>
+ <string key="NSTitle">UTF-8 Full Unicode (utf8mb4)</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSKeyEquivModMask">1048576</int>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="1039721224"/>
+ <reference key="NSMixedImage" ref="720177216"/>
+ <string key="NSAction">_popUpItemAction:</string>
+ <int key="NSTag">190</int>
+ <reference key="NSTarget" ref="562129977"/>
+ </object>
<object class="NSMenuItem" id="803859810">
<reference key="NSMenu" ref="1035849972"/>
<bool key="NSIsDisabled">YES</bool>
@@ -913,6 +935,7 @@
</object>
</array>
</object>
+ <int key="NSSelectedIndex">-1</int>
<int key="NSPreferredEdge">3</int>
<bool key="NSUsesItemFromMenu">YES</bool>
<bool key="NSAltersState">YES</bool>
@@ -925,6 +948,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{202, 214}, {362, 18}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="502540430"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="964808674">
<int key="NSCellFlags">67108864</int>
@@ -953,6 +977,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{11, 242}, {187, 17}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="331339372"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="996600667">
<int key="NSCellFlags">68157504</int>
@@ -971,6 +996,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{201, 236}, {254, 26}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="521332722"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="406329678">
<int key="NSCellFlags">-2076180416</int>
@@ -1003,6 +1029,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 85}, {182, 17}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="929785803"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="513222356">
<int key="NSCellFlags">68157504</int>
@@ -1021,6 +1048,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 127}, {182, 17}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="258765966"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="163779676">
<int key="NSCellFlags">68157504</int>
@@ -1039,6 +1067,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{202, 84}, {360, 18}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="302000957"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="530413242">
<int key="NSCellFlags">67108864</int>
@@ -1062,6 +1091,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{202, 62}, {360, 18}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="997817518"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="218042555">
<int key="NSCellFlags">67108864</int>
@@ -1085,6 +1115,7 @@
<int key="NSvFlags">1036</int>
<string key="NSFrame">{{202, 156}, {360, 5}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="63384418"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -1107,6 +1138,7 @@
<int key="NSvFlags">12</int>
<string key="NSFrame">{{204, 108}, {358, 5}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="227167312"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -1129,6 +1161,7 @@
<int key="NSvFlags">12</int>
<string key="NSFrame">{{204, 53}, {357, 5}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="326562367"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -1151,6 +1184,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 23}, {181, 17}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="155059"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="899935643">
<int key="NSCellFlags">68157504</int>
@@ -1169,6 +1203,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{203, 20}, {38, 22}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="95243153"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="875775803">
<int key="NSCellFlags">-1804599231</int>
@@ -1241,6 +1276,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{201, 169}, {254, 26}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="101736468"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="404009397">
<int key="NSCellFlags">-2076180416</int>
@@ -1364,6 +1400,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 175}, {182, 17}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="649933712"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="840580273">
<int key="NSCellFlags">68157504</int>
@@ -1382,6 +1419,7 @@
<int key="NSvFlags">12</int>
<string key="NSFrame">{{202, 204}, {360, 5}}</string>
<reference key="NSSuperview" ref="594324362"/>
+ <reference key="NSNextKeyView" ref="343898725"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -1401,6 +1439,7 @@
</object>
</array>
<string key="NSFrameSize">{580, 280}</string>
+ <reference key="NSNextKeyView" ref="140067361"/>
<string key="NSClassName">NSView</string>
</object>
<object class="NSCustomView" id="395894064">
@@ -1433,6 +1472,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{205, 20}, {194, 22}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="401684657"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="82174450">
<int key="NSCellFlags">-2076180416</int>
@@ -1452,6 +1492,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{202, 59}, {361, 26}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="238389133"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="323591102">
<int key="NSCellFlags">-2076180416</int>
@@ -1521,6 +1562,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 25}, {181, 17}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="416182097"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="578929076">
<int key="NSCellFlags">68157504</int>
@@ -1539,6 +1581,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 65}, {182, 17}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="67060802"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="449580049">
<int key="NSCellFlags">68157504</int>
@@ -1557,6 +1600,7 @@
<int key="NSvFlags">12</int>
<string key="NSFrame">{{205, 89}, {355, 5}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="743152467"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -1579,6 +1623,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{203, 241}, {359, 18}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="692531763"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="7693853">
<int key="NSCellFlags">67108864</int>
@@ -1602,6 +1647,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 280}, {183, 17}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="625748362"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="524603578">
<int key="NSCellFlags">67108928</int>
@@ -1620,6 +1666,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{499, 147}, {64, 17}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="17983744"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="596167553">
<int key="NSCellFlags">67108928</int>
@@ -1638,6 +1685,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{203, 281}, {359, 18}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="563352266"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="29938940">
<int key="NSCellFlags">-2080374784</int>
@@ -1661,6 +1709,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{203, 146}, {189, 18}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="479121914"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="920748663">
<int key="NSCellFlags">67108864</int>
@@ -1684,6 +1733,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{203, 261}, {359, 18}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="282702408"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="516443326">
<int key="NSCellFlags">-2080374784</int>
@@ -1707,6 +1757,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{478, 141}, {19, 27}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="265036898"/>
<bool key="NSEnabled">YES</bool>
<object class="NSStepperCell" key="NSCell" id="1061407286">
<int key="NSCellFlags">786464</int>
@@ -1726,6 +1777,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{398, 144}, {75, 22}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="813674245"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="585678618">
<int key="NSCellFlags">-1804599232</int>
@@ -1782,6 +1834,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 102}, {182, 17}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="423928419"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="609090823">
<int key="NSCellFlags">68157504</int>
@@ -1800,6 +1853,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{205, 100}, {75, 22}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="169616697"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="82744709">
<int key="NSCellFlags">-1804599231</int>
@@ -1820,6 +1874,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{203, 201}, {359, 18}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="761347322"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="441275">
<int key="NSCellFlags">67108864</int>
@@ -1843,6 +1898,7 @@
<int key="NSvFlags">12</int>
<string key="NSFrame">{{205, 48}, {355, 5}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="418062206"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -1865,6 +1921,7 @@
<int key="NSvFlags">12</int>
<string key="NSFrame">{{205, 227}, {355, 5}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="41303511"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -1887,6 +1944,7 @@
<int key="NSvFlags">12</int>
<string key="NSFrame">{{205, 172}, {355, 5}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="728219401"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -1909,6 +1967,7 @@
<int key="NSvFlags">12</int>
<string key="NSFrame">{{205, 133}, {355, 5}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="618764971"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -1931,6 +1990,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{203, 181}, {359, 18}}</string>
<reference key="NSSuperview" ref="395894064"/>
+ <reference key="NSNextKeyView" ref="205950287"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="542131730">
<int key="NSCellFlags">-2080374784</int>
@@ -1951,22 +2011,57 @@
</object>
</array>
<string key="NSFrameSize">{580, 319}</string>
+ <reference key="NSNextKeyView" ref="302141262"/>
<string key="NSClassName">NSView</string>
</object>
<object class="NSCustomView" id="1041614321">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">268</int>
<array class="NSMutableArray" key="NSSubviews">
+ <object class="NSTextField" id="922939699">
+ <reference key="NSNextResponder" ref="1041614321"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{202, 174}, {360, 28}}</string>
+ <reference key="NSSuperview" ref="1041614321"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="385216684"/>
+ <string key="NSReuseIdentifierKey">_NS:9</string>
+ <string key="NSAntiCompressionPriority">{250, 750}</string>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="1675491">
+ <int key="NSCellFlags">67108864</int>
+ <int key="NSCellFlags2">272630016</int>
+ <string type="base64-UTF8" key="NSContents">JEdyb3dsIFN0YXR1cyBUZXh0JApMaW5lIDI</string>
+ <reference key="NSSupport" ref="26"/>
+ <string key="NSCellIdentifier">_NS:9</string>
+ <reference key="NSControlView" ref="922939699"/>
+ <reference key="NSBackgroundColor" ref="700609571"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">disabledControlTextColor</string>
+ <object class="NSColor" key="NSColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MC4zMzMzMzMzMzMzAA</bytes>
+ </object>
+ </object>
+ </object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <bool key="NSControlAutosetMaxLayoutWidth">YES</bool>
+ <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
+ </object>
<object class="NSButton" id="624078196">
<reference key="NSNextResponder" ref="1041614321"/>
<int key="NSvFlags">268</int>
- <string key="NSFrame">{{202, 173}, {360, 18}}</string>
+ <string key="NSFrame">{{202, 208}, {360, 18}}</string>
<reference key="NSSuperview" ref="1041614321"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="922939699"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="1060471631">
<int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">0</int>
- <string key="NSContents">Enable Growl notifications</string>
+ <string key="NSContents">Enable notifications</string>
<reference key="NSSupport" ref="320262838"/>
<reference key="NSControlView" ref="624078196"/>
<int key="NSButtonFlags">1211912448</int>
@@ -1985,6 +2080,8 @@
<int key="NSvFlags">12</int>
<string key="NSFrame">{{202, 136}, {360, 5}}</string>
<reference key="NSSuperview" ref="1041614321"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="894039889"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -2007,6 +2104,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{202, 150}, {360, 18}}</string>
<reference key="NSSuperview" ref="1041614321"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="122803528"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="695439962">
<int key="NSCellFlags">67108864</int>
@@ -2030,6 +2129,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{202, 110}, {360, 18}}</string>
<reference key="NSSuperview" ref="1041614321"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="638138321"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="641765383">
<int key="NSCellFlags">67108864</int>
@@ -2053,6 +2154,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{230, 87}, {332, 18}}</string>
<reference key="NSSuperview" ref="1041614321"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="705623520"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="135236421">
<int key="NSCellFlags">67108864</int>
@@ -2076,6 +2179,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{230, 41}, {332, 18}}</string>
<reference key="NSSuperview" ref="1041614321"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="184242117"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="510254021">
<int key="NSCellFlags">67108864</int>
@@ -2099,6 +2204,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{230, 64}, {332, 18}}</string>
<reference key="NSSuperview" ref="1041614321"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="967639780"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="29352039">
<int key="NSCellFlags">67108864</int>
@@ -2122,6 +2229,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{230, 18}, {332, 18}}</string>
<reference key="NSSuperview" ref="1041614321"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="545580787">
<int key="NSCellFlags">67108864</int>
@@ -2141,7 +2249,10 @@
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
</array>
- <string key="NSFrameSize">{580, 209}</string>
+ <string key="NSFrameSize">{580, 244}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="624078196"/>
<string key="NSClassName">NSView</string>
</object>
<object class="NSCustomView" id="369742224">
@@ -2292,7 +2403,7 @@ AQAAAAA</bytes>
<integer value="1040" key="formatterBehavior"/>
<integer value="2" key="timeStyle"/>
</dictionary>
- <string key="NS.format">EEEE, d MMMM y h:mm:ss a</string>
+ <string key="NS.format">EEEE, d. MMMM y HH:mm:ss</string>
<bool key="NS.natural">NO</bool>
</object>
<reference key="NSControlView" ref="29700160"/>
@@ -2416,14 +2527,286 @@ AQAAAAA</bytes>
<string key="NSClassName">NSView</string>
</object>
<object class="NSCustomView" id="769132533">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">268</int>
<array class="NSMutableArray" key="NSSubviews">
+ <object class="NSButton" id="999997125">
+ <reference key="NSNextResponder" ref="769132533"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{226, 22}, {32, 25}}</string>
+ <reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="592419929"/>
+ <string key="NSReuseIdentifierKey">_NS:22</string>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSButtonCell" key="NSCell" id="194119860">
+ <int key="NSCellFlags">-2080374784</int>
+ <int key="NSCellFlags2">134217728</int>
+ <string key="NSContents"/>
+ <reference key="NSSupport" ref="320262838"/>
+ <string key="NSCellIdentifier">_NS:22</string>
+ <reference key="NSControlView" ref="999997125"/>
+ <int key="NSButtonFlags">-2033434624</int>
+ <int key="NSButtonFlags2">162</int>
+ <object class="NSCustomResource" key="NSNormalImage">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">reset</string>
+ </object>
+ <string key="NSAlternateContents"/>
+ <string key="NSKeyEquivalent"/>
+ <int key="NSPeriodicDelay">400</int>
+ <int key="NSPeriodicInterval">75</int>
+ </object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ </object>
+ <object class="NSTextField" id="592419929">
+ <reference key="NSNextResponder" ref="769132533"/>
+ <int key="NSvFlags">289</int>
+ <string key="NSFrame">{{264, 20}, {298, 28}}</string>
+ <reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <string key="NSReuseIdentifierKey">_NS:526</string>
+ <string key="NSHuggingPriority">{251, 750}</string>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="248153804">
+ <int key="NSCellFlags">67108864</int>
+ <int key="NSCellFlags2">272629760</int>
+ <string key="NSContents">Drag the items in the list to reorder their preference and/or disable them.</string>
+ <reference key="NSSupport" ref="26"/>
+ <string key="NSCellIdentifier">_NS:526</string>
+ <reference key="NSControlView" ref="592419929"/>
+ <reference key="NSBackgroundColor" ref="700609571"/>
+ <reference key="NSTextColor" ref="1035618107"/>
+ </object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <bool key="NSControlAutosetMaxLayoutWidth">YES</bool>
+ <double key="NSPreferredMaxLayoutWidth">404</double>
+ <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
+ </object>
+ <object class="NSScrollView" id="746696287">
+ <reference key="NSNextResponder" ref="769132533"/>
+ <int key="NSvFlags">276</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <object class="NSClipView" id="1020957402">
+ <reference key="NSNextResponder" ref="746696287"/>
+ <int key="NSvFlags">2322</int>
+ <array class="NSMutableArray" key="NSSubviews">
+ <object class="NSTableView" id="44018309">
+ <reference key="NSNextResponder" ref="1020957402"/>
+ <int key="NSvFlags">256</int>
+ <array class="NSMutableArray" key="NSSubviews"/>
+ <string key="NSFrameSize">{332, 126}</string>
+ <reference key="NSSuperview" ref="1020957402"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="8582709"/>
+ <string key="NSReuseIdentifierKey">_NS:13</string>
+ <bool key="NSEnabled">YES</bool>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <bool key="NSControlAllowsExpansionToolTips">YES</bool>
+ <object class="_NSCornerView" key="NSCornerView">
+ <nil key="NSNextResponder"/>
+ <int key="NSvFlags">-2147483392</int>
+ <string key="NSFrameSize">{15, 20}</string>
+ <string key="NSReuseIdentifierKey">_NS:19</string>
+ </object>
+ <array class="NSMutableArray" key="NSTableColumns">
+ <object class="NSTableColumn" id="185540149">
+ <double key="NSWidth">329</double>
+ <double key="NSMinWidth">40</double>
+ <double key="NSMaxWidth">1000</double>
+ <object class="NSTableHeaderCell" key="NSHeaderCell">
+ <int key="NSCellFlags">75497536</int>
+ <int key="NSCellFlags2">2048</int>
+ <string key="NSContents">Cipher Suite</string>
+ <reference key="NSSupport" ref="26"/>
+ <object class="NSColor" key="NSBackgroundColor">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">headerColor</string>
+ <reference key="NSColor" ref="775577076"/>
+ </object>
+ <reference key="NSTextColor" ref="263643234"/>
+ </object>
+ <object class="NSTextFieldCell" key="NSDataCell" id="1015285981">
+ <int key="NSCellFlags">337641537</int>
+ <int key="NSCellFlags2">2048</int>
+ <string key="NSContents">Text Cell</string>
+ <reference key="NSSupport" ref="320262838"/>
+ <reference key="NSControlView" ref="44018309"/>
+ <reference key="NSBackgroundColor" ref="887465699"/>
+ <reference key="NSTextColor" ref="1035618107"/>
+ </object>
+ <int key="NSResizingMask">3</int>
+ <bool key="NSIsResizeable">YES</bool>
+ <reference key="NSTableView" ref="44018309"/>
+ </object>
+ </array>
+ <double key="NSIntercellSpacingWidth">3</double>
+ <double key="NSIntercellSpacingHeight">2</double>
+ <reference key="NSBackgroundColor" ref="775577076"/>
+ <reference key="NSGridColor" ref="651588562"/>
+ <double key="NSRowHeight">17</double>
+ <int key="NSTvFlags">448790528</int>
+ <reference key="NSDelegate"/>
+ <reference key="NSDataSource"/>
+ <int key="NSColumnAutoresizingStyle">4</int>
+ <int key="NSDraggingSourceMaskForLocal">-1</int>
+ <int key="NSDraggingSourceMaskForNonLocal">0</int>
+ <bool key="NSAllowsTypeSelect">YES</bool>
+ <int key="NSTableViewDraggingDestinationStyle">0</int>
+ <int key="NSTableViewGroupRowStyle">1</int>
+ </object>
+ </array>
+ <string key="NSFrame">{{1, 1}, {332, 126}}</string>
+ <reference key="NSSuperview" ref="746696287"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="44018309"/>
+ <string key="NSReuseIdentifierKey">_NS:11</string>
+ <reference key="NSDocView" ref="44018309"/>
+ <reference key="NSBGColor" ref="887465699"/>
+ <int key="NScvFlags">4</int>
+ </object>
+ <object class="NSScroller" id="8582709">
+ <reference key="NSNextResponder" ref="746696287"/>
+ <int key="NSvFlags">-2147483392</int>
+ <string key="NSFrame">{{224, 17}, {15, 102}}</string>
+ <reference key="NSSuperview" ref="746696287"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="592328431"/>
+ <string key="NSReuseIdentifierKey">_NS:65</string>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <reference key="NSTarget" ref="746696287"/>
+ <string key="NSAction">_doScroller:</string>
+ <double key="NSPercent">0.99212598425196852</double>
+ </object>
+ <object class="NSScroller" id="592328431">
+ <reference key="NSNextResponder" ref="746696287"/>
+ <int key="NSvFlags">-2147483392</int>
+ <string key="NSFrame">{{1, 119}, {223, 15}}</string>
+ <reference key="NSSuperview" ref="746696287"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="999997125"/>
+ <string key="NSReuseIdentifierKey">_NS:61</string>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <int key="NSsFlags">1</int>
+ <reference key="NSTarget" ref="746696287"/>
+ <string key="NSAction">_doScroller:</string>
+ <double key="NSPercent">0.99699699699699695</double>
+ </object>
+ </array>
+ <string key="NSFrame">{{226, 56}, {334, 128}}</string>
+ <reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="1020957402"/>
+ <string key="NSReuseIdentifierKey">_NS:9</string>
+ <int key="NSsFlags">133682</int>
+ <reference key="NSVScroller" ref="8582709"/>
+ <reference key="NSHScroller" ref="592328431"/>
+ <reference key="NSContentView" ref="1020957402"/>
+ <bytes key="NSScrollAmts">QSAAAEEgAABBmAAAQZgAAA</bytes>
+ <double key="NSMinMagnification">0.25</double>
+ <double key="NSMaxMagnification">4</double>
+ <double key="NSMagnification">1</double>
+ </object>
+ <object class="NSTextField" id="364693920">
+ <reference key="NSNextResponder" ref="769132533"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{224, 204}, {222, 19}}</string>
+ <reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="712834659"/>
+ <string key="NSReuseIdentifierKey">_NS:526</string>
+ <string key="NSHuggingPriority">{251, 750}</string>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="281388102">
+ <int key="NSCellFlags">67108928</int>
+ <int key="NSCellFlags2">272632320</int>
+ <string key="NSContents">/path/to/ssh/binary</string>
+ <reference key="NSSupport" ref="320262838"/>
+ <string key="NSCellIdentifier">_NS:526</string>
+ <reference key="NSControlView" ref="364693920"/>
+ <reference key="NSBackgroundColor" ref="700609571"/>
+ <reference key="NSTextColor" ref="1035618107"/>
+ </object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
+ </object>
+ <object class="NSButton" id="712834659">
+ <reference key="NSNextResponder" ref="769132533"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{452, 204}, {109, 19}}</string>
+ <reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="76504092"/>
+ <string key="NSReuseIdentifierKey">_NS:9</string>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSButtonCell" key="NSCell" id="302774200">
+ <int key="NSCellFlags">-2080374784</int>
+ <int key="NSCellFlags2">134217728</int>
+ <string key="NSContents">Change…</string>
+ <object class="NSFont" key="NSSupport">
+ <bool key="IBIsSystemFont">YES</bool>
+ <double key="NSSize">12</double>
+ <int key="NSfFlags">2586</int>
+ </object>
+ <string key="NSCellIdentifier">_NS:9</string>
+ <reference key="NSControlView" ref="712834659"/>
+ <int key="NSButtonFlags">-2038153216</int>
+ <int key="NSButtonFlags2">164</int>
+ <string key="NSAlternateContents"/>
+ <string key="NSKeyEquivalent"/>
+ <int key="NSPeriodicDelay">400</int>
+ <int key="NSPeriodicInterval">75</int>
+ </object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ </object>
+ <object class="NSTextField" id="738896411">
+ <reference key="NSNextResponder" ref="769132533"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{16, 165}, {204, 19}}</string>
+ <reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="746696287"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="300938227">
+ <int key="NSCellFlags">67108928</int>
+ <int key="NSCellFlags2">71304192</int>
+ <string key="NSContents">SSL Cipher Suites:</string>
+ <reference key="NSSupport" ref="320262838"/>
+ <reference key="NSControlView" ref="738896411"/>
+ <reference key="NSBackgroundColor" ref="700609571"/>
+ <reference key="NSTextColor" ref="1035618107"/>
+ </object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
+ </object>
+ <object class="NSTextField" id="280525512">
+ <reference key="NSNextResponder" ref="769132533"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{16, 204}, {204, 19}}</string>
+ <reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="364693920"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="835150536">
+ <int key="NSCellFlags">67108928</int>
+ <int key="NSCellFlags2">71304192</int>
+ <string key="NSContents">SSH Client:</string>
+ <reference key="NSSupport" ref="320262838"/>
+ <reference key="NSControlView" ref="280525512"/>
+ <reference key="NSBackgroundColor" ref="700609571"/>
+ <reference key="NSTextColor" ref="1035618107"/>
+ </object>
+ <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
+ </object>
<object class="NSTextField" id="746894224">
<reference key="NSNextResponder" ref="769132533"/>
<int key="NSvFlags">268</int>
- <string key="NSFrame">{{17, 56}, {204, 17}}</string>
+ <string key="NSFrame">{{17, 275}, {204, 17}}</string>
<reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="591009529"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="1057393276">
<int key="NSCellFlags">67108928</int>
@@ -2440,8 +2823,10 @@ AQAAAAA</bytes>
<object class="NSButton" id="64545568">
<reference key="NSNextResponder" ref="769132533"/>
<int key="NSvFlags">268</int>
- <string key="NSFrame">{{224, 19}, {338, 18}}</string>
+ <string key="NSFrame">{{224, 238}, {338, 18}}</string>
<reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="160526122"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="151662644">
<int key="NSCellFlags">-2080374784</int>
@@ -2463,8 +2848,10 @@ AQAAAAA</bytes>
<object class="NSTextField" id="591009529">
<reference key="NSNextResponder" ref="769132533"/>
<int key="NSvFlags">268</int>
- <string key="NSFrame">{{226, 54}, {50, 22}}</string>
+ <string key="NSFrame">{{226, 273}, {50, 22}}</string>
<reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="794722267"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="170658213">
<int key="NSCellFlags">-1804599231</int>
@@ -2515,8 +2902,10 @@ AQAAAAA</bytes>
<object class="NSTextField" id="794722267">
<reference key="NSNextResponder" ref="769132533"/>
<int key="NSvFlags">268</int>
- <string key="NSFrame">{{281, 57}, {282, 17}}</string>
+ <string key="NSFrame">{{281, 276}, {282, 17}}</string>
<reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="688014148"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="619604330">
<int key="NSCellFlags">67108928</int>
@@ -2530,11 +2919,61 @@ AQAAAAA</bytes>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
+ <object class="NSBox" id="76504092">
+ <reference key="NSNextResponder" ref="769132533"/>
+ <int key="NSvFlags">12</int>
+ <string key="NSFrame">{{226, 193}, {334, 5}}</string>
+ <reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="738896411"/>
+ <string key="NSOffsets">{0, 0}</string>
+ <object class="NSTextFieldCell" key="NSTitleCell">
+ <int key="NSCellFlags">67108864</int>
+ <int key="NSCellFlags2">0</int>
+ <string key="NSContents">Box</string>
+ <reference key="NSSupport" ref="320262838"/>
+ <reference key="NSBackgroundColor" ref="1001357688"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgwMDAwMDAxMTkAA</bytes>
+ </object>
+ </object>
+ <int key="NSBorderType">3</int>
+ <int key="NSBoxType">2</int>
+ <int key="NSTitlePosition">0</int>
+ <bool key="NSTransparent">NO</bool>
+ </object>
+ <object class="NSBox" id="160526122">
+ <reference key="NSNextResponder" ref="769132533"/>
+ <int key="NSvFlags">12</int>
+ <string key="NSFrame">{{226, 229}, {334, 5}}</string>
+ <reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="280525512"/>
+ <string key="NSOffsets">{0, 0}</string>
+ <object class="NSTextFieldCell" key="NSTitleCell">
+ <int key="NSCellFlags">67108864</int>
+ <int key="NSCellFlags2">0</int>
+ <string key="NSContents">Box</string>
+ <reference key="NSSupport" ref="320262838"/>
+ <reference key="NSBackgroundColor" ref="1001357688"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgwMDAwMDAxMTkAA</bytes>
+ </object>
+ </object>
+ <int key="NSBorderType">3</int>
+ <int key="NSBoxType">2</int>
+ <int key="NSTitlePosition">0</int>
+ <bool key="NSTransparent">NO</bool>
+ </object>
<object class="NSBox" id="688014148">
<reference key="NSNextResponder" ref="769132533"/>
<int key="NSvFlags">12</int>
- <string key="NSFrame">{{226, 43}, {334, 5}}</string>
+ <string key="NSFrame">{{226, 262}, {334, 5}}</string>
<reference key="NSSuperview" ref="769132533"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="64545568"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -2553,11 +2992,14 @@ AQAAAAA</bytes>
<bool key="NSTransparent">NO</bool>
</object>
</array>
- <string key="NSFrameSize">{580, 93}</string>
+ <string key="NSFrameSize">{580, 312}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="746894224"/>
<string key="NSClassName">NSView</string>
</object>
<object class="NSCustomView" id="1033452264">
- <reference key="NSNextResponder"/>
+ <nil key="NSNextResponder"/>
<int key="NSvFlags">268</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSStepper" id="720862952">
@@ -2565,7 +3007,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{469, 291}, {15, 22}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="571822117"/>
<bool key="NSEnabled">YES</bool>
<object class="NSStepperCell" key="NSCell" id="241334663">
@@ -2586,7 +3027,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{439, 293}, {23, 19}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="720862952"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="546511116">
@@ -2644,7 +3084,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{270, 294}, {162, 18}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="277335147"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="1729">
@@ -2669,7 +3108,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{144, 24}, {101, 14}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="304684720"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="983858855">
@@ -2689,7 +3127,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{49, 24}, {93, 14}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="187965597"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="133660147">
@@ -2717,8 +3154,7 @@ AQAAAAA</bytes>
<int key="NSvFlags">256</int>
<string key="NSFrameSize">{220, 286}</string>
<reference key="NSSuperview" ref="25515031"/>
- <reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="7445657"/>
+ <reference key="NSNextKeyView" ref="662661535"/>
<bool key="NSEnabled">YES</bool>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<bool key="NSControlAllowsExpansionToolTips">YES</bool>
@@ -2803,7 +3239,6 @@ AQAAAAA</bytes>
</array>
<string key="NSFrame">{{1, 1}, {220, 286}}</string>
<reference key="NSSuperview" ref="288292400"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="953919633"/>
<reference key="NSDocView" ref="953919633"/>
<reference key="NSBGColor" ref="887465699"/>
@@ -2814,7 +3249,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {15, 102}}</string>
<reference key="NSSuperview" ref="288292400"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="913479800"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<reference key="NSTarget" ref="288292400"/>
@@ -2826,7 +3260,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {223, 15}}</string>
<reference key="NSSuperview" ref="288292400"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="25515031"/>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">1</int>
@@ -2837,8 +3270,7 @@ AQAAAAA</bytes>
</array>
<string key="NSFrame">{{20, 50}, {222, 288}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="662661535"/>
+ <reference key="NSNextKeyView" ref="25515031"/>
<int key="NSsFlags">133122</int>
<reference key="NSVScroller" ref="662661535"/>
<reference key="NSHScroller" ref="913479800"/>
@@ -2853,7 +3285,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 19}, {24, 24}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="919512780"/>
<bool key="NSEnabled">YES</bool>
<object class="NSPopUpButtonCell" key="NSCell" id="373813305">
@@ -2978,7 +3409,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{439, 20}, {23, 19}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="774563613"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="248584789">
@@ -3037,7 +3467,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{269, 22}, {164, 16}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1018119488"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="273262177">
@@ -3057,8 +3486,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{469, 18}, {15, 22}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
- <reference key="NSNextKeyView"/>
<bool key="NSEnabled">YES</bool>
<object class="NSStepperCell" key="NSCell" id="93125704">
<int key="NSCellFlags">67895328</int>
@@ -3078,7 +3505,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 362}, {182, 17}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="751188139"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="10706281">
@@ -3098,7 +3524,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{433, 353}, {133, 32}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="288292400"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="345790946">
@@ -3121,7 +3546,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{204, 360}, {207, 22}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="863604695"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="66452133">
@@ -3142,7 +3566,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{270, 322}, {292, 18}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="378838807"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="823431848">
@@ -3167,7 +3590,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{270, 267}, {292, 18}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="397485802"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="743257684">
@@ -3192,7 +3614,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{270, 209}, {292, 18}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="140155660"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="231642073">
@@ -3217,7 +3638,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{270, 238}, {292, 18}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1030846368"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="491730308">
@@ -3242,7 +3662,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{270, 162}, {292, 18}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="827082642"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="496801621">
@@ -3267,7 +3686,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{270, 51}, {292, 18}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="748242000"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="131748905">
@@ -3292,7 +3710,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{270, 79}, {292, 18}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="782193237"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="357514733">
@@ -3317,7 +3734,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{270, 134}, {292, 18}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="892250776"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="92164221">
@@ -3342,7 +3758,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{370, 109}, {29, 19}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="107658761"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="409964321">
@@ -3401,7 +3816,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{269, 111}, {96, 14}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="184945490"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="1060023867">
@@ -3421,7 +3835,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{405, 107}, {15, 22}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1009372112"/>
<bool key="NSEnabled">YES</bool>
<object class="NSStepperCell" key="NSCell" id="171005061">
@@ -3442,7 +3855,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{423, 111}, {140, 14}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="961372492"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="201150384">
@@ -3462,7 +3874,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">-2147483380</int>
<string key="NSFrame">{{269, 1}, {292, 18}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="161634003"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="420702000">
@@ -3487,7 +3898,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{370, 184}, {29, 19}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="682694750"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="992523117">
@@ -3546,7 +3956,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{269, 186}, {96, 14}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="16021182"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="499174965">
@@ -3566,7 +3975,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{405, 182}, {15, 22}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="659498064"/>
<bool key="NSEnabled">YES</bool>
<object class="NSStepperCell" key="NSCell" id="266600395">
@@ -3587,7 +3995,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{423, 186}, {140, 14}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="787536920"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="516695546">
@@ -3607,7 +4014,6 @@ AQAAAAA</bytes>
<int key="NSvFlags">12</int>
<string key="NSFrame">{{204, 349}, {356, 5}}</string>
<reference key="NSSuperview" ref="1033452264"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="742042283"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
@@ -3628,80 +4034,70 @@ AQAAAAA</bytes>
</object>
</array>
<string key="NSFrameSize">{580, 400}</string>
- <reference key="NSSuperview"/>
- <reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="676806550"/>
<string key="NSClassName">NSView</string>
</object>
- <object class="NSCustomView" id="301032184">
- <nil key="NSNextResponder"/>
- <int key="NSvFlags">274</int>
- <array class="NSMutableArray" key="NSSubviews">
- <object class="NSButton" id="805072777">
- <reference key="NSNextResponder" ref="301032184"/>
- <int key="NSvFlags">292</int>
- <string key="NSFrame">{{14, 14}, {273, 18}}</string>
- <reference key="NSSuperview" ref="301032184"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSButtonCell" key="NSCell" id="213820001">
- <int key="NSCellFlags">67108864</int>
- <int key="NSCellFlags2">0</int>
- <string key="NSContents">Show hidden files</string>
- <reference key="NSSupport" ref="320262838"/>
- <reference key="NSControlView" ref="805072777"/>
- <int key="NSButtonFlags">1211912448</int>
- <int key="NSButtonFlags2">2</int>
- <reference key="NSNormalImage" ref="752798171"/>
- <reference key="NSAlternateImage" ref="888311049"/>
- <string key="NSAlternateContents"/>
- <string key="NSKeyEquivalent"/>
- <int key="NSPeriodicDelay">200</int>
- <int key="NSPeriodicInterval">25</int>
- </object>
- <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <object class="NSMenu" id="982657201">
+ <string key="NSTitle"/>
+ <array class="NSMutableArray" key="NSMenuItems">
+ <object class="NSMenuItem" id="30395779">
+ <reference key="NSMenu" ref="982657201"/>
+ <string key="NSTitle">Remove</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="1039721224"/>
+ <reference key="NSMixedImage" ref="720177216"/>
</object>
- <object class="NSTextField" id="200831972">
- <reference key="NSNextResponder" ref="301032184"/>
- <int key="NSvFlags">274</int>
- <string key="NSFrame">{{2, 42}, {575, 34}}</string>
- <reference key="NSSuperview" ref="301032184"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSTextFieldCell" key="NSCell" id="219723569">
- <int key="NSCellFlags">67108864</int>
- <int key="NSCellFlags2">138674176</int>
- <string key="NSContents">Choose a custom SSH key file to use with this connection. Note that standard locations like ~/.ssh are checked automatically, as are any files in your SSH configuration.</string>
- <reference key="NSSupport" ref="320262838"/>
- <reference key="NSControlView" ref="200831972"/>
- <reference key="NSBackgroundColor" ref="700609571"/>
- <reference key="NSTextColor" ref="1035618107"/>
- </object>
- <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
- <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
+ <object class="NSMenuItem" id="580038192">
+ <reference key="NSMenu" ref="982657201"/>
+ <string key="NSTitle">Duplicate</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="1039721224"/>
+ <reference key="NSMixedImage" ref="720177216"/>
+ </object>
+ <object class="NSMenuItem" id="102426580">
+ <reference key="NSMenu" ref="982657201"/>
+ <bool key="NSIsDisabled">YES</bool>
+ <bool key="NSIsSeparator">YES</bool>
+ <string key="NSTitle"/>
+ <string key="NSKeyEquiv"/>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="1039721224"/>
+ <reference key="NSMixedImage" ref="720177216"/>
+ </object>
+ <object class="NSMenuItem" id="512106570">
+ <reference key="NSMenu" ref="982657201"/>
+ <string key="NSTitle">Make Default</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="1039721224"/>
+ <reference key="NSMixedImage" ref="720177216"/>
</object>
</array>
- <string key="NSFrameSize">{579, 83}</string>
- <string key="NSClassName">NSView</string>
</object>
- <object class="NSCustomView" id="46104894">
- <nil key="NSNextResponder"/>
- <int key="NSvFlags">274</int>
+ <object class="NSCustomView" id="116529304">
+ <reference key="NSNextResponder"/>
+ <int key="NSvFlags">268</int>
<array class="NSMutableArray" key="NSSubviews">
- <object class="NSButton" id="184032614">
- <reference key="NSNextResponder" ref="46104894"/>
- <int key="NSvFlags">292</int>
- <string key="NSFrame">{{14, 14}, {273, 18}}</string>
- <reference key="NSSuperview" ref="46104894"/>
+ <object class="NSButton" id="447584867">
+ <reference key="NSNextResponder" ref="116529304"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{275, 16}, {135, 32}}</string>
+ <reference key="NSSuperview" ref="116529304"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="28916292"/>
+ <string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
- <object class="NSButtonCell" key="NSCell" id="852385280">
+ <object class="NSButtonCell" key="NSCell" id="698868016">
<int key="NSCellFlags">67108864</int>
- <int key="NSCellFlags2">0</int>
- <string key="NSContents">Show hidden files</string>
+ <int key="NSCellFlags2">134217728</int>
+ <string key="NSContents">Change…</string>
<reference key="NSSupport" ref="320262838"/>
- <reference key="NSControlView" ref="184032614"/>
- <int key="NSButtonFlags">1211912448</int>
- <int key="NSButtonFlags2">2</int>
- <reference key="NSNormalImage" ref="752798171"/>
- <reference key="NSAlternateImage" ref="888311049"/>
+ <string key="NSCellIdentifier">_NS:9</string>
+ <reference key="NSControlView" ref="447584867"/>
+ <int key="NSButtonFlags">-2038284288</int>
+ <int key="NSButtonFlags2">129</int>
<string key="NSAlternateContents"/>
<string key="NSKeyEquivalent"/>
<int key="NSPeriodicDelay">200</int>
@@ -3709,93 +4105,78 @@ AQAAAAA</bytes>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
- <object class="NSTextField" id="532539071">
- <reference key="NSNextResponder" ref="46104894"/>
- <int key="NSvFlags">274</int>
- <string key="NSFrame">{{2, 42}, {575, 17}}</string>
- <reference key="NSSuperview" ref="46104894"/>
+ <object class="NSTextField" id="28916292">
+ <reference key="NSNextResponder" ref="116529304"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{-2, 0}, {408, 14}}</string>
+ <reference key="NSSuperview" ref="116529304"/>
+ <reference key="NSWindow"/>
+ <string key="NSReuseIdentifierKey">_NS:526</string>
+ <string key="NSHuggingPriority">{251, 750}</string>
<bool key="NSEnabled">YES</bool>
- <object class="NSTextFieldCell" key="NSCell" id="925838195">
+ <object class="NSTextFieldCell" key="NSCell" id="374684924">
<int key="NSCellFlags">67108864</int>
- <int key="NSCellFlags2">138674176</int>
- <string key="NSContents">Please select the SSL key file to use when establishing a secure connection.</string>
- <reference key="NSSupport" ref="320262838"/>
- <reference key="NSControlView" ref="532539071"/>
+ <int key="NSCellFlags2">272629760</int>
+ <string key="NSContents">Enter the full absolute path to your SSH binary.</string>
+ <reference key="NSSupport" ref="26"/>
+ <string key="NSCellIdentifier">_NS:526</string>
+ <reference key="NSControlView" ref="28916292"/>
<reference key="NSBackgroundColor" ref="700609571"/>
<reference key="NSTextColor" ref="1035618107"/>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
+ <bool key="NSControlAutosetMaxLayoutWidth">YES</bool>
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
- </array>
- <string key="NSFrameSize">{579, 66}</string>
- <string key="NSClassName">NSView</string>
- </object>
- <object class="NSCustomView" id="962978272">
- <nil key="NSNextResponder"/>
- <int key="NSvFlags">274</int>
- <array class="NSMutableArray" key="NSSubviews">
- <object class="NSButton" id="609468242">
- <reference key="NSNextResponder" ref="962978272"/>
- <int key="NSvFlags">292</int>
- <string key="NSFrame">{{14, 14}, {273, 18}}</string>
- <reference key="NSSuperview" ref="962978272"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSButtonCell" key="NSCell" id="738898857">
- <int key="NSCellFlags">67108864</int>
- <int key="NSCellFlags2">0</int>
- <string key="NSContents">Show hidden files</string>
- <reference key="NSSupport" ref="320262838"/>
- <reference key="NSControlView" ref="609468242"/>
- <int key="NSButtonFlags">1211912448</int>
- <int key="NSButtonFlags2">2</int>
- <reference key="NSNormalImage" ref="752798171"/>
- <reference key="NSAlternateImage" ref="888311049"/>
- <string key="NSAlternateContents"/>
- <string key="NSKeyEquivalent"/>
- <int key="NSPeriodicDelay">200</int>
- <int key="NSPeriodicInterval">25</int>
- </object>
- <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
- </object>
- <object class="NSTextField" id="624133663">
- <reference key="NSNextResponder" ref="962978272"/>
- <int key="NSvFlags">274</int>
- <string key="NSFrame">{{6, 42}, {575, 17}}</string>
- <reference key="NSSuperview" ref="962978272"/>
+ <object class="NSTextField" id="564182577">
+ <reference key="NSNextResponder" ref="116529304"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{0, 22}, {273, 22}}</string>
+ <reference key="NSSuperview" ref="116529304"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="447584867"/>
+ <string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
- <object class="NSTextFieldCell" key="NSCell" id="602926229">
- <int key="NSCellFlags">67108864</int>
- <int key="NSCellFlags2">138674176</int>
- <string key="NSContents">Please select the client SSL certificate file to use when establishing a secure connection.</string>
+ <object class="NSTextFieldCell" key="NSCell" id="749914587">
+ <int key="NSCellFlags">-1804599231</int>
+ <int key="NSCellFlags2">272630784</int>
+ <string key="NSContents"/>
<reference key="NSSupport" ref="320262838"/>
- <reference key="NSControlView" ref="624133663"/>
- <reference key="NSBackgroundColor" ref="700609571"/>
- <reference key="NSTextColor" ref="1035618107"/>
+ <string key="NSPlaceholderString">System default</string>
+ <string key="NSCellIdentifier">_NS:9</string>
+ <reference key="NSControlView" ref="564182577"/>
+ <bool key="NSDrawsBackground">YES</bool>
+ <reference key="NSBackgroundColor" ref="1001357688"/>
+ <reference key="NSTextColor" ref="6928728"/>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
</object>
</array>
- <string key="NSFrameSize">{598, 66}</string>
+ <string key="NSFrameSize">{404, 44}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="564182577"/>
+ <string key="NSReuseIdentifierKey">_NS:9</string>
<string key="NSClassName">NSView</string>
</object>
- <object class="NSCustomView" id="453507512">
- <nil key="NSNextResponder"/>
- <int key="NSvFlags">274</int>
+ <object class="NSCustomView" id="293657116">
+ <reference key="NSNextResponder"/>
+ <int key="NSvFlags">268</int>
<array class="NSMutableArray" key="NSSubviews">
- <object class="NSButton" id="416257480">
- <reference key="NSNextResponder" ref="453507512"/>
- <int key="NSvFlags">292</int>
- <string key="NSFrame">{{14, 14}, {273, 18}}</string>
- <reference key="NSSuperview" ref="453507512"/>
+ <object class="NSButton" id="305172854">
+ <reference key="NSNextResponder" ref="293657116"/>
+ <int key="NSvFlags">266</int>
+ <string key="NSFrame">{{18, 18}, {273, 18}}</string>
+ <reference key="NSSuperview" ref="293657116"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
- <object class="NSButtonCell" key="NSCell" id="904544914">
+ <object class="NSButtonCell" key="NSCell" id="268590693">
<int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">0</int>
<string key="NSContents">Show hidden files</string>
<reference key="NSSupport" ref="320262838"/>
- <reference key="NSControlView" ref="416257480"/>
+ <reference key="NSControlView" ref="305172854"/>
<int key="NSButtonFlags">1211912448</int>
<int key="NSButtonFlags2">2</int>
<reference key="NSNormalImage" ref="752798171"/>
@@ -3807,71 +4188,18 @@ AQAAAAA</bytes>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
- <object class="NSTextField" id="534911197">
- <reference key="NSNextResponder" ref="453507512"/>
- <int key="NSvFlags">274</int>
- <string key="NSFrame">{{0, 42}, {575, 34}}</string>
- <reference key="NSSuperview" ref="453507512"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSTextFieldCell" key="NSCell" id="921051913">
- <int key="NSCellFlags">67108864</int>
- <int key="NSCellFlags2">138674176</int>
- <string key="NSContents">Please select the client SSL Certificate Authority certificate to use when establishing a secure connection. This must be the same as the server CA certificate.</string>
- <reference key="NSSupport" ref="320262838"/>
- <reference key="NSControlView" ref="534911197"/>
- <reference key="NSBackgroundColor" ref="700609571"/>
- <reference key="NSTextColor" ref="1035618107"/>
- </object>
- <bool key="NSAllowsLogicalLayoutDirection">NO</bool>
- <int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
- </object>
</array>
- <string key="NSFrameSize">{579, 83}</string>
+ <string key="NSFrameSize">{309, 54}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
+ <reference key="NSNextKeyView" ref="305172854"/>
+ <string key="NSReuseIdentifierKey">_NS:9</string>
<string key="NSClassName">NSView</string>
</object>
- <object class="NSMenu" id="982657201">
- <string key="NSTitle"/>
- <array class="NSMutableArray" key="NSMenuItems">
- <object class="NSMenuItem" id="30395779">
- <reference key="NSMenu" ref="982657201"/>
- <string key="NSTitle">Remove</string>
- <string key="NSKeyEquiv"/>
- <int key="NSMnemonicLoc">2147483647</int>
- <reference key="NSOnImage" ref="1039721224"/>
- <reference key="NSMixedImage" ref="720177216"/>
- </object>
- <object class="NSMenuItem" id="580038192">
- <reference key="NSMenu" ref="982657201"/>
- <string key="NSTitle">Duplicate</string>
- <string key="NSKeyEquiv"/>
- <int key="NSMnemonicLoc">2147483647</int>
- <reference key="NSOnImage" ref="1039721224"/>
- <reference key="NSMixedImage" ref="720177216"/>
- </object>
- <object class="NSMenuItem" id="102426580">
- <reference key="NSMenu" ref="982657201"/>
- <bool key="NSIsDisabled">YES</bool>
- <bool key="NSIsSeparator">YES</bool>
- <string key="NSTitle"/>
- <string key="NSKeyEquiv"/>
- <int key="NSMnemonicLoc">2147483647</int>
- <reference key="NSOnImage" ref="1039721224"/>
- <reference key="NSMixedImage" ref="720177216"/>
- </object>
- <object class="NSMenuItem" id="512106570">
- <reference key="NSMenu" ref="982657201"/>
- <string key="NSTitle">Make Default</string>
- <string key="NSKeyEquiv"/>
- <int key="NSMnemonicLoc">2147483647</int>
- <reference key="NSOnImage" ref="1039721224"/>
- <reference key="NSMixedImage" ref="720177216"/>
- </object>
- </array>
- </object>
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">window</string>
@@ -5142,6 +5470,14 @@ AQAAAAA</bytes>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
+ <string key="label">growlStatusLabel</string>
+ <reference key="source" ref="953509484"/>
+ <reference key="destination" ref="922939699"/>
+ </object>
+ <string key="id">X0U-Qs-77g</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
<string key="label">view</string>
<reference key="source" ref="153863061"/>
<reference key="destination" ref="1033452264"/>
@@ -5349,6 +5685,62 @@ AQAAAAA</bytes>
<string key="id">2154</string>
</object>
<object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">sshClientPickerView</string>
+ <reference key="source" ref="424937675"/>
+ <reference key="destination" ref="116529304"/>
+ </object>
+ <string key="id">gUn-jl-Tfb</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">sshClientPath</string>
+ <reference key="source" ref="424937675"/>
+ <reference key="destination" ref="564182577"/>
+ </object>
+ <string key="id">eUn-5b-NBa</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">pickSSHClient:</string>
+ <reference key="source" ref="424937675"/>
+ <reference key="destination" ref="712834659"/>
+ </object>
+ <string key="id">zcA-5j-KFq</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">pickSSHClientViaFileBrowser:</string>
+ <reference key="source" ref="424937675"/>
+ <reference key="destination" ref="447584867"/>
+ </object>
+ <string key="id">w0e-lI-UbS</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">hiddenFileView</string>
+ <reference key="source" ref="424937675"/>
+ <reference key="destination" ref="293657116"/>
+ </object>
+ <string key="id">r1S-eS-uJK</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">sslCipherView</string>
+ <reference key="source" ref="424937675"/>
+ <reference key="destination" ref="44018309"/>
+ </object>
+ <string key="id">pF5-VG-sY0</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">resetCipherList:</string>
+ <reference key="source" ref="424937675"/>
+ <reference key="destination" ref="999997125"/>
+ </object>
+ <string key="id">czy-4m-Kuo</string>
+ </object>
+ <object class="IBConnectionRecord">
<object class="IBBindingConnection" key="connection">
<string key="label">value: values.CustomQuerySoftIndent</string>
<reference key="source" ref="378838807"/>
@@ -5405,56 +5797,64 @@ AQAAAAA</bytes>
<string key="id">2205</string>
</object>
<object class="IBConnectionRecord">
- <object class="IBBindingConnection" key="connection">
- <string key="label">value: values.KeySelectionHiddenFilesVisibility</string>
- <reference key="source" ref="805072777"/>
- <reference key="destination" ref="151174232"/>
- <object class="NSNibBindingConnector" key="connector">
- <reference key="NSSource" ref="805072777"/>
- <reference key="NSDestination" ref="151174232"/>
- <string key="NSLabel">value: values.KeySelectionHiddenFilesVisibility</string>
- <string key="NSBinding">value</string>
- <string key="NSKeyPath">values.KeySelectionHiddenFilesVisibility</string>
- <dictionary key="NSOptions">
- <integer value="0" key="NSMultipleValuesPlaceholder"/>
- <integer value="0" key="NSNoSelectionPlaceholder"/>
- <integer value="0" key="NSNotApplicablePlaceholder"/>
- <integer value="0" key="NSNullPlaceholder"/>
- </dictionary>
- <int key="NSNibBindingConnectorVersion">2</int>
- </object>
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">nextKeyView</string>
+ <reference key="source" ref="973608652"/>
+ <reference key="destination" ref="787474595"/>
</object>
- <string key="id">2239</string>
+ <string key="id">2259</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">nextKeyView</string>
+ <reference key="source" ref="787474595"/>
+ <reference key="destination" ref="514064864"/>
+ </object>
+ <string key="id">2263</string>
</object>
<object class="IBConnectionRecord">
<object class="IBBindingConnection" key="connection">
- <string key="label">value: values.KeySelectionHiddenFilesVisibility</string>
- <reference key="source" ref="184032614"/>
+ <string key="label">value: values.SSHClientPath</string>
+ <reference key="source" ref="364693920"/>
<reference key="destination" ref="151174232"/>
<object class="NSNibBindingConnector" key="connector">
- <reference key="NSSource" ref="184032614"/>
+ <reference key="NSSource" ref="364693920"/>
<reference key="NSDestination" ref="151174232"/>
- <string key="NSLabel">value: values.KeySelectionHiddenFilesVisibility</string>
+ <string key="NSLabel">value: values.SSHClientPath</string>
<string key="NSBinding">value</string>
- <string key="NSKeyPath">values.KeySelectionHiddenFilesVisibility</string>
- <dictionary key="NSOptions">
- <integer value="0" key="NSMultipleValuesPlaceholder"/>
- <integer value="0" key="NSNoSelectionPlaceholder"/>
- <integer value="0" key="NSNotApplicablePlaceholder"/>
- <integer value="0" key="NSNullPlaceholder"/>
- </dictionary>
+ <string key="NSKeyPath">values.SSHClientPath</string>
+ <object class="NSDictionary" key="NSOptions">
+ <string key="NS.key.0">NSNullPlaceholder</string>
+ <string key="NS.object.0">System default</string>
+ </object>
<int key="NSNibBindingConnectorVersion">2</int>
</object>
</object>
- <string key="id">2243</string>
+ <string key="id">89d-3h-dgq</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">dataSource</string>
+ <reference key="source" ref="44018309"/>
+ <reference key="destination" ref="424937675"/>
+ </object>
+ <string key="id">rQW-7Y-Mrg</string>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">delegate</string>
+ <reference key="source" ref="44018309"/>
+ <reference key="destination" ref="424937675"/>
+ </object>
+ <string key="id">ptn-Zs-Gd6</string>
</object>
<object class="IBConnectionRecord">
<object class="IBBindingConnection" key="connection">
<string key="label">value: values.KeySelectionHiddenFilesVisibility</string>
- <reference key="source" ref="609468242"/>
+ <reference key="source" ref="305172854"/>
<reference key="destination" ref="151174232"/>
<object class="NSNibBindingConnector" key="connector">
- <reference key="NSSource" ref="609468242"/>
+ <reference key="NSSource" ref="305172854"/>
<reference key="NSDestination" ref="151174232"/>
<string key="NSLabel">value: values.KeySelectionHiddenFilesVisibility</string>
<string key="NSBinding">value</string>
@@ -5468,45 +5868,27 @@ AQAAAAA</bytes>
<int key="NSNibBindingConnectorVersion">2</int>
</object>
</object>
- <string key="id">2247</string>
+ <string key="id">WP6-C7-FqP</string>
</object>
<object class="IBConnectionRecord">
<object class="IBBindingConnection" key="connection">
- <string key="label">value: values.KeySelectionHiddenFilesVisibility</string>
- <reference key="source" ref="416257480"/>
+ <string key="label">enabled: values.SSLCipherList</string>
+ <reference key="source" ref="999997125"/>
<reference key="destination" ref="151174232"/>
<object class="NSNibBindingConnector" key="connector">
- <reference key="NSSource" ref="416257480"/>
+ <reference key="NSSource" ref="999997125"/>
<reference key="NSDestination" ref="151174232"/>
- <string key="NSLabel">value: values.KeySelectionHiddenFilesVisibility</string>
- <string key="NSBinding">value</string>
- <string key="NSKeyPath">values.KeySelectionHiddenFilesVisibility</string>
- <dictionary key="NSOptions">
- <integer value="0" key="NSMultipleValuesPlaceholder"/>
- <integer value="0" key="NSNoSelectionPlaceholder"/>
- <integer value="0" key="NSNotApplicablePlaceholder"/>
- <integer value="0" key="NSNullPlaceholder"/>
- </dictionary>
+ <string key="NSLabel">enabled: values.SSLCipherList</string>
+ <string key="NSBinding">enabled</string>
+ <string key="NSKeyPath">values.SSLCipherList</string>
+ <object class="NSDictionary" key="NSOptions">
+ <string key="NS.key.0">NSValueTransformerName</string>
+ <string key="NS.object.0">NSIsNotNil</string>
+ </object>
<int key="NSNibBindingConnectorVersion">2</int>
</object>
</object>
- <string key="id">2251</string>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
- <string key="label">nextKeyView</string>
- <reference key="source" ref="973608652"/>
- <reference key="destination" ref="787474595"/>
- </object>
- <string key="id">2259</string>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
- <string key="label">nextKeyView</string>
- <reference key="source" ref="787474595"/>
- <reference key="destination" ref="514064864"/>
- </object>
- <string key="id">2263</string>
+ <string key="id">8HU-V9-I2q</string>
</object>
<object class="IBConnectionRecord">
<object class="IBBindingConnection" key="connection">
@@ -5597,6 +5979,7 @@ AQAAAAA</bytes>
<reference ref="562129977"/>
</array>
<reference key="parent" ref="594324362"/>
+ <string key="objectName">Default Encoding Dropdown</string>
</object>
<object class="IBObjectRecord">
<string key="id">25</string>
@@ -5635,6 +6018,7 @@ AQAAAAA</bytes>
<reference ref="1038898132"/>
<reference ref="154349211"/>
<reference ref="286777225"/>
+ <reference ref="89605484"/>
</array>
<reference key="parent" ref="562129977"/>
</object>
@@ -5763,12 +6147,13 @@ AQAAAAA</bytes>
<reference key="object" ref="1041614321"/>
<array class="NSMutableArray" key="children">
<reference ref="624078196"/>
- <reference ref="385216684"/>
- <reference ref="894039889"/>
- <reference ref="638138321"/>
- <reference ref="967639780"/>
- <reference ref="705623520"/>
+ <reference ref="922939699"/>
<reference ref="184242117"/>
+ <reference ref="705623520"/>
+ <reference ref="967639780"/>
+ <reference ref="638138321"/>
+ <reference ref="894039889"/>
+ <reference ref="385216684"/>
<reference ref="122803528"/>
</array>
<reference key="parent" ref="0"/>
@@ -6177,6 +6562,15 @@ AQAAAAA</bytes>
<reference ref="794722267"/>
<reference ref="591009529"/>
<reference ref="64545568"/>
+ <reference ref="160526122"/>
+ <reference ref="712834659"/>
+ <reference ref="364693920"/>
+ <reference ref="280525512"/>
+ <reference ref="76504092"/>
+ <reference ref="738896411"/>
+ <reference ref="746696287"/>
+ <reference ref="592419929"/>
+ <reference ref="999997125"/>
</array>
<reference key="parent" ref="0"/>
<string key="objectName">Network</string>
@@ -7321,98 +7715,6 @@ AQAAAAA</bytes>
<reference key="parent" ref="202566886"/>
</object>
<object class="IBObjectRecord">
- <string key="id">1873</string>
- <reference key="object" ref="301032184"/>
- <array class="NSMutableArray" key="children">
- <reference ref="200831972"/>
- <reference ref="805072777"/>
- </array>
- <reference key="parent" ref="0"/>
- <string key="objectName">SSH Key Selection Help</string>
- </object>
- <object class="IBObjectRecord">
- <string key="id">1874</string>
- <reference key="object" ref="200831972"/>
- <array class="NSMutableArray" key="children">
- <reference ref="219723569"/>
- </array>
- <reference key="parent" ref="301032184"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">1875</string>
- <reference key="object" ref="219723569"/>
- <reference key="parent" ref="200831972"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2040</string>
- <reference key="object" ref="453507512"/>
- <array class="NSMutableArray" key="children">
- <reference ref="534911197"/>
- <reference ref="416257480"/>
- </array>
- <reference key="parent" ref="0"/>
- <string key="objectName">SSL CA Cert File Selection Help</string>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2041</string>
- <reference key="object" ref="46104894"/>
- <array class="NSMutableArray" key="children">
- <reference ref="532539071"/>
- <reference ref="184032614"/>
- </array>
- <reference key="parent" ref="0"/>
- <string key="objectName">SSL Key File Selection Help</string>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2042</string>
- <reference key="object" ref="962978272"/>
- <array class="NSMutableArray" key="children">
- <reference ref="624133663"/>
- <reference ref="609468242"/>
- </array>
- <reference key="parent" ref="0"/>
- <string key="objectName">SSL Certificate File Selection Help</string>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2043</string>
- <reference key="object" ref="624133663"/>
- <array class="NSMutableArray" key="children">
- <reference ref="602926229"/>
- </array>
- <reference key="parent" ref="962978272"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2044</string>
- <reference key="object" ref="602926229"/>
- <reference key="parent" ref="624133663"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2045</string>
- <reference key="object" ref="532539071"/>
- <array class="NSMutableArray" key="children">
- <reference ref="925838195"/>
- </array>
- <reference key="parent" ref="46104894"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2046</string>
- <reference key="object" ref="925838195"/>
- <reference key="parent" ref="532539071"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2047</string>
- <reference key="object" ref="534911197"/>
- <array class="NSMutableArray" key="children">
- <reference ref="921051913"/>
- </array>
- <reference key="parent" ref="453507512"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2048</string>
- <reference key="object" ref="921051913"/>
- <reference key="parent" ref="534911197"/>
- </object>
- <object class="IBObjectRecord">
<string key="id">2074</string>
<reference key="object" ref="343720994"/>
<reference key="parent" ref="0"/>
@@ -7501,58 +7803,6 @@ AQAAAAA</bytes>
<reference key="parent" ref="28667448"/>
</object>
<object class="IBObjectRecord">
- <string key="id">2229</string>
- <reference key="object" ref="805072777"/>
- <array class="NSMutableArray" key="children">
- <reference ref="213820001"/>
- </array>
- <reference key="parent" ref="301032184"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2230</string>
- <reference key="object" ref="213820001"/>
- <reference key="parent" ref="805072777"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2240</string>
- <reference key="object" ref="184032614"/>
- <array class="NSMutableArray" key="children">
- <reference ref="852385280"/>
- </array>
- <reference key="parent" ref="46104894"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2241</string>
- <reference key="object" ref="852385280"/>
- <reference key="parent" ref="184032614"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2244</string>
- <reference key="object" ref="609468242"/>
- <array class="NSMutableArray" key="children">
- <reference ref="738898857"/>
- </array>
- <reference key="parent" ref="962978272"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2245</string>
- <reference key="object" ref="738898857"/>
- <reference key="parent" ref="609468242"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2248</string>
- <reference key="object" ref="416257480"/>
- <array class="NSMutableArray" key="children">
- <reference ref="904544914"/>
- </array>
- <reference key="parent" ref="453507512"/>
- </object>
- <object class="IBObjectRecord">
- <string key="id">2249</string>
- <reference key="object" ref="904544914"/>
- <reference key="parent" ref="416257480"/>
- </object>
- <object class="IBObjectRecord">
<string key="id">2252</string>
<reference key="object" ref="1006653014"/>
<array class="NSMutableArray" key="children">
@@ -7670,6 +7920,225 @@ AQAAAAA</bytes>
<reference key="object" ref="357514733"/>
<reference key="parent" ref="961372492"/>
</object>
+ <object class="IBObjectRecord">
+ <string key="id">7W6-DM-PG1</string>
+ <reference key="object" ref="89605484"/>
+ <reference key="parent" ref="1035849972"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">cv6-Te-MPL</string>
+ <reference key="object" ref="922939699"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="1675491"/>
+ </array>
+ <reference key="parent" ref="1041614321"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">JMS-lH-5Te</string>
+ <reference key="object" ref="1675491"/>
+ <reference key="parent" ref="922939699"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">HWX-AV-xGx</string>
+ <reference key="object" ref="160526122"/>
+ <reference key="parent" ref="769132533"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">9CM-2a-2JU</string>
+ <reference key="object" ref="280525512"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="835150536"/>
+ </array>
+ <reference key="parent" ref="769132533"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">4Us-KF-Ysj</string>
+ <reference key="object" ref="835150536"/>
+ <reference key="parent" ref="280525512"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">Rsg-4x-YV2</string>
+ <reference key="object" ref="712834659"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="302774200"/>
+ </array>
+ <reference key="parent" ref="769132533"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">MhF-tS-nrE</string>
+ <reference key="object" ref="302774200"/>
+ <reference key="parent" ref="712834659"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">GcY-yy-sZn</string>
+ <reference key="object" ref="364693920"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="281388102"/>
+ </array>
+ <reference key="parent" ref="769132533"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">29D-bG-y15</string>
+ <reference key="object" ref="281388102"/>
+ <reference key="parent" ref="364693920"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">D6L-76-0Ik</string>
+ <reference key="object" ref="116529304"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="564182577"/>
+ <reference ref="28916292"/>
+ <reference ref="447584867"/>
+ </array>
+ <reference key="parent" ref="0"/>
+ <string key="objectName">Pick SSH client binary Accessory View</string>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">yQV-9I-7us</string>
+ <reference key="object" ref="564182577"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="749914587"/>
+ </array>
+ <reference key="parent" ref="116529304"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">eS9-G4-zgt</string>
+ <reference key="object" ref="749914587"/>
+ <reference key="parent" ref="564182577"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">ZHD-xB-ee1</string>
+ <reference key="object" ref="28916292"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="374684924"/>
+ </array>
+ <reference key="parent" ref="116529304"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">yLf-F5-exv</string>
+ <reference key="object" ref="374684924"/>
+ <reference key="parent" ref="28916292"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">hEB-5Q-jZ8</string>
+ <reference key="object" ref="447584867"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="698868016"/>
+ </array>
+ <reference key="parent" ref="116529304"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">1nt-aH-gM4</string>
+ <reference key="object" ref="698868016"/>
+ <reference key="parent" ref="447584867"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">GEn-6y-U3F</string>
+ <reference key="object" ref="293657116"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="305172854"/>
+ </array>
+ <reference key="parent" ref="0"/>
+ <string key="objectName">Show Hidden Files Accessory View</string>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">bAQ-gF-4V2</string>
+ <reference key="object" ref="305172854"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="268590693"/>
+ </array>
+ <reference key="parent" ref="293657116"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">apR-gz-ej3</string>
+ <reference key="object" ref="268590693"/>
+ <reference key="parent" ref="305172854"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">3Fg-G1-BWj</string>
+ <reference key="object" ref="76504092"/>
+ <reference key="parent" ref="769132533"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">4Aw-q4-73u</string>
+ <reference key="object" ref="738896411"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="300938227"/>
+ </array>
+ <reference key="parent" ref="769132533"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">PDB-0g-8jg</string>
+ <reference key="object" ref="300938227"/>
+ <reference key="parent" ref="738896411"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">9lg-Fd-6u7</string>
+ <reference key="object" ref="746696287"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="44018309"/>
+ <reference ref="592328431"/>
+ <reference ref="8582709"/>
+ </array>
+ <reference key="parent" ref="769132533"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">RuH-Yq-cdH</string>
+ <reference key="object" ref="44018309"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="185540149"/>
+ </array>
+ <reference key="parent" ref="746696287"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">ZqJ-4c-bqV</string>
+ <reference key="object" ref="592328431"/>
+ <reference key="parent" ref="746696287"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">fcH-lG-egx</string>
+ <reference key="object" ref="8582709"/>
+ <reference key="parent" ref="746696287"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">2w5-RF-2LR</string>
+ <reference key="object" ref="185540149"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="1015285981"/>
+ </array>
+ <reference key="parent" ref="44018309"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">NtR-tj-yZm</string>
+ <reference key="object" ref="1015285981"/>
+ <reference key="parent" ref="185540149"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">TG6-Q3-g30</string>
+ <reference key="object" ref="592419929"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="248153804"/>
+ </array>
+ <reference key="parent" ref="769132533"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">Ukm-oW-lSS</string>
+ <reference key="object" ref="248153804"/>
+ <reference key="parent" ref="592419929"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">jJw-LF-gtW</string>
+ <reference key="object" ref="999997125"/>
+ <array class="NSMutableArray" key="children">
+ <reference ref="194119860"/>
+ </array>
+ <reference key="parent" ref="769132533"/>
+ </object>
+ <object class="IBObjectRecord">
+ <string key="id">7JN-Nf-GsD</string>
+ <reference key="object" ref="194119860"/>
+ <reference key="parent" ref="999997125"/>
+ </object>
</array>
</object>
<dictionary class="NSMutableDictionary" key="flattenedProperties">
@@ -7839,6 +8308,7 @@ AQAAAAA</bytes>
<string key="1688.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="1689.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="1690.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="17.IBPersistedLastKnownCanvasPosition">{230, 459}</string>
<string key="17.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array class="NSMutableArray" key="17.IBUserGuides">
<object class="IBUserGuide">
@@ -7895,19 +8365,8 @@ AQAAAAA</bytes>
<string key="1796.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="1824.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="1825.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="1873.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="1874.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="1875.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="1nt-aH-gM4.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2040.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2041.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2042.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2043.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2044.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2045.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2046.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2047.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2048.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2074.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2080.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2143.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -7924,14 +8383,6 @@ AQAAAAA</bytes>
<boolean value="YES" key="2203.IBNumberFormatterLocalizesFormatMetadataKey"/>
<string key="2203.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2215.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2229.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2230.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2240.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2241.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2244.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2245.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2248.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="2249.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2252.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<object class="NSMutableDictionary" key="2253.IBAttributePlaceholdersKey">
<string key="NS.key.0">ToolTip</string>
@@ -7961,6 +8412,8 @@ AQAAAAA</bytes>
<string key="27.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="28.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="29.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="29D-bG-y15.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="2w5-RF-2LR.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="30.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="31.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="32.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -7974,6 +8427,7 @@ AQAAAAA</bytes>
<string key="37.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="38.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="39.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="3Fg-G1-BWj.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="40.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="41.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="42.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -7984,6 +8438,20 @@ AQAAAAA</bytes>
<string key="47.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="48.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="49.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <object class="NSMutableDictionary" key="4Aw-q4-73u.IBAttributePlaceholdersKey">
+ <string key="NS.key.0">ToolTip</string>
+ <object class="IBToolTipAttribute" key="NS.object.0">
+ <string key="name">ToolTip</string>
+ <reference key="object" ref="738896411"/>
+ <string type="base64-UTF8" key="toolTip">VGhlIGNpcGhlciBzdWl0ZXMgYXJlIHVzZWQgZm9yIFNTTC9UTFMtc2VjdXJlZCBjb25uZWN0aW9ucyBh
+bmQgc3BlY2lmeSB3aGljaCBhbGdvcml0aG1zIFNlcXVlbCBQcm8gd2lsbCB1c2UgdG8gZW5jcnlwdCBh
+IGNvbm5lY3Rpb24sIGFzIHdlbGwgYXMgdGhlaXIgcHJlZmVyZW5jZS4gCldhcm5pbmc6IElmIFNlcXVl
+bCBQcm8gYW5kIHRoZSBzZXJ2ZXIgZG8gbm90IGhhdmUgYXQgbGVhc3Qgb25lIGNpcGhlciBzdWl0ZSBp
+biBjb21tb24sIHlvdSB3aWxsIG5vIGxvbmdlciBiZSBhYmxlIHRvIGNvbm5lY3QhA</string>
+ </object>
+ </object>
+ <string key="4Aw-q4-73u.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="4Us-KF-Ysj.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="50.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="512.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array class="NSMutableArray" key="512.IBUserGuides">
@@ -8020,6 +8488,8 @@ AQAAAAA</bytes>
<string key="552.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="553.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="554.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference key="56.IBNSViewMetadataGestureRecognizers" ref="0"/>
+ <string key="56.IBPersistedLastKnownCanvasPosition">{200, 537}</string>
<string key="56.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array class="NSMutableArray" key="56.IBUserGuides">
<object class="IBUserGuide">
@@ -8050,6 +8520,8 @@ AQAAAAA</bytes>
<int key="affinity">0</int>
</object>
</array>
+ <reference key="641.IBNSViewMetadataGestureRecognizers" ref="0"/>
+ <string key="641.IBPersistedLastKnownCanvasPosition">{200, 870}</string>
<string key="641.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array class="NSMutableArray" key="641.IBUserGuides"/>
<string key="642.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -8097,6 +8569,8 @@ AQAAAAA</bytes>
<string key="791.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="YES" key="792.IBNumberFormatterLocalizesFormatMetadataKey"/>
<string key="792.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="7JN-Nf-GsD.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="7W6-DM-PG1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="802.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array class="NSMutableArray" key="802.IBUserGuides">
<object class="IBUserGuide">
@@ -8121,8 +8595,49 @@ AQAAAAA</bytes>
<string key="97.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="98.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="99.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="9CM-2a-2JU.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="9lg-Fd-6u7.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference key="D6L-76-0Ik.IBNSViewMetadataGestureRecognizers" ref="0"/>
+ <string key="D6L-76-0Ik.IBPersistedLastKnownCanvasPosition">{-482, -2}</string>
+ <string key="D6L-76-0Ik.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference key="GEn-6y-U3F.IBNSViewMetadataGestureRecognizers" ref="0"/>
+ <string key="GEn-6y-U3F.IBPersistedLastKnownCanvasPosition">{-609.5, 138}</string>
+ <string key="GEn-6y-U3F.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <boolean value="NO" key="GcY-yy-sZn.IBNSControlSetsMaxLayoutWidthAtFirstLayoutMetadataKey"/>
+ <string key="GcY-yy-sZn.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="HWX-AV-xGx.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="JMS-lH-5Te.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="MhF-tS-nrE.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="NtR-tj-yZm.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="PDB-0g-8jg.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="Rsg-4x-YV2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="RuH-Yq-cdH.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <boolean value="YES" key="TG6-Q3-g30.IBNSControlSetsMaxLayoutWidthAtFirstLayoutMetadataKey"/>
+ <string key="TG6-Q3-g30.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="Ukm-oW-lSS.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <boolean value="YES" key="ZHD-xB-ee1.IBNSControlSetsMaxLayoutWidthAtFirstLayoutMetadataKey"/>
+ <string key="ZHD-xB-ee1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="ZqJ-4c-bqV.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="apR-gz-ej3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="bAQ-gF-4V2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <boolean value="YES" key="cv6-Te-MPL.IBNSControlSetsMaxLayoutWidthAtFirstLayoutMetadataKey"/>
+ <string key="cv6-Te-MPL.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="eS9-G4-zgt.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="fcH-lG-egx.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="hEB-5Q-jZ8.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <object class="NSMutableDictionary" key="jJw-LF-gtW.IBAttributePlaceholdersKey">
+ <string key="NS.key.0">ToolTip</string>
+ <object class="IBToolTipAttribute" key="NS.object.0">
+ <string key="name">ToolTip</string>
+ <reference key="object" ref="999997125"/>
+ <string key="toolTip">Reset the cipher list to the default configuration</string>
+ </object>
+ </object>
+ <string key="jJw-LF-gtW.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="q6h-n2-3a8.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="vGo-VU-lIt.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="yLf-F5-exv.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string key="yQV-9I-7us.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
<nil key="activeLocalization"/>
@@ -8136,7 +8651,7 @@ AQAAAAA</bytes>
<string key="superclassName">SPPreferencePane</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPAutoUpdatePreferencePane.h</string>
+ <string key="minorKey">../Source/SPAutoUpdatePreferencePane.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8277,7 +8792,68 @@ AQAAAAA</bytes>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPEditorPreferencePane.h</string>
+ <string key="minorKey">../Source/SPEditorPreferencePane.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPEditorPreferencePane</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closePanelSheet:">id</string>
+ <string key="duplicateTheme:">id</string>
+ <string key="editThemeList:">id</string>
+ <string key="exportColorScheme:">id</string>
+ <string key="importColorScheme:">id</string>
+ <string key="loadColorScheme:">id</string>
+ <string key="removeTheme:">id</string>
+ <string key="saveAsColorScheme:">id</string>
+ <string key="setDefaultColors:">id</string>
+ <string key="showCustomQueryFontPanel:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateTheme:">
+ <string key="name">duplicateTheme:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="editThemeList:">
+ <string key="name">editThemeList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportColorScheme:">
+ <string key="name">exportColorScheme:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importColorScheme:">
+ <string key="name">importColorScheme:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="loadColorScheme:">
+ <string key="name">loadColorScheme:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTheme:">
+ <string key="name">removeTheme:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveAsColorScheme:">
+ <string key="name">saveAsColorScheme:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultColors:">
+ <string key="name">setDefaultColors:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCustomQueryFontPanel:">
+ <string key="name">showCustomQueryFontPanel:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPEditorPreferencePane.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8285,7 +8861,7 @@ AQAAAAA</bytes>
<string key="superclassName">NSTextField</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPFontPreviewTextField.h</string>
+ <string key="minorKey">../Source/SPFontPreviewTextField.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8315,47 +8891,137 @@ AQAAAAA</bytes>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPGeneralPreferencePane.h</string>
+ <string key="minorKey">../Source/SPGeneralPreferencePane.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
- <string key="className">SPNetworkPreferencePane</string>
- <string key="superclassName">SPPreferencePane</string>
+ <string key="className">SPGeneralPreferencePane</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">updateDefaultFavorite:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">updateDefaultFavorite:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">updateDefaultFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPNetworkPreferencePane.h</string>
+ <string key="minorKey">../Source/SPGeneralPreferencePane.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
- <string key="className">SPNotificationsPreferencePane</string>
+ <string key="className">SPNetworkPreferencePane</string>
<string key="superclassName">SPPreferencePane</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="pickSSHClient:">id</string>
+ <string key="pickSSHClientViaFileBrowser:">id</string>
+ <string key="resetCipherList:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="pickSSHClient:">
+ <string key="name">pickSSHClient:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="pickSSHClientViaFileBrowser:">
+ <string key="name">pickSSHClientViaFileBrowser:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetCipherList:">
+ <string key="name">resetCipherList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="hiddenFileView">NSView</string>
+ <string key="sshClientPath">NSTextField</string>
+ <string key="sshClientPickerView">NSView</string>
+ <string key="sslCipherView">NSTableView</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="hiddenFileView">
+ <string key="name">hiddenFileView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sshClientPath">
+ <string key="name">sshClientPath</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sshClientPickerView">
+ <string key="name">sshClientPickerView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sslCipherView">
+ <string key="name">sslCipherView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ </dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPNotificationsPreferencePane.h</string>
+ <string key="minorKey">../Source/SPNetworkPreferencePane.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
- <string key="className">SPPreferenceController</string>
- <string key="superclassName">NSWindowController</string>
+ <string key="className">SPNetworkPreferencePane</string>
<dictionary class="NSMutableDictionary" key="actions">
- <string key="displayEditorPreferences:">id</string>
- <string key="displayPreferencePane:">id</string>
- <string key="displayTablePreferences:">id</string>
+ <string key="pickSSHClient:">id</string>
+ <string key="pickSSHClientViaFileBrowser:">id</string>
+ <string key="resetCipherList:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
- <object class="IBActionInfo" key="displayEditorPreferences:">
- <string key="name">displayEditorPreferences:</string>
+ <object class="IBActionInfo" key="pickSSHClient:">
+ <string key="name">pickSSHClient:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="displayPreferencePane:">
- <string key="name">displayPreferencePane:</string>
+ <object class="IBActionInfo" key="pickSSHClientViaFileBrowser:">
+ <string key="name">pickSSHClientViaFileBrowser:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="displayTablePreferences:">
- <string key="name">displayTablePreferences:</string>
+ <object class="IBActionInfo" key="resetCipherList:">
+ <string key="name">resetCipherList:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPNetworkPreferencePane.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPNotificationsPreferencePane</string>
+ <string key="superclassName">SPPreferencePane</string>
+ <object class="NSMutableDictionary" key="outlets">
+ <string key="NS.key.0">growlStatusLabel</string>
+ <string key="NS.object.0">NSTextField</string>
+ </object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <string key="NS.key.0">growlStatusLabel</string>
+ <object class="IBToOneOutletInfo" key="NS.object.0">
+ <string key="name">growlStatusLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPNotificationsPreferencePane.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPPreferenceController</string>
+ <string key="superclassName">NSWindowController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">displayPreferencePane:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">displayPreferencePane:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">displayPreferencePane:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="autoUpdatePreferencePane">SPAutoUpdatePreferencePane</string>
<string key="editorPreferencePane">SPEditorPreferencePane</string>
@@ -8392,7 +9058,25 @@ AQAAAAA</bytes>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPPreferenceController.h</string>
+ <string key="minorKey">../Source/SPPreferenceController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPPreferenceController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">displayPreferencePane:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">displayPreferencePane:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">displayPreferencePane:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPreferenceController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8400,7 +9084,7 @@ AQAAAAA</bytes>
<string key="superclassName">NSViewController</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPPreferencePane.h</string>
+ <string key="minorKey">../Source/SPPreferencePane.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8430,7 +9114,305 @@ AQAAAAA</bytes>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTablesPreferencePane.h</string>
+ <string key="minorKey">../Source/SPTablesPreferencePane.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTablesPreferencePane</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">showGlobalResultTableFontPanel:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">showGlobalResultTableFontPanel:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">showGlobalResultTableFontPanel:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesPreferencePane.m</string>
+ </object>
+ </object>
+ </array>
+ <array class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
+ <object class="IBPartialClassDescription">
+ <string key="className">NSActionCell</string>
+ <string key="superclassName">NSCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSApplication</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSBox</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSBox.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSButton</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSButton.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSButtonCell</string>
+ <string key="superclassName">NSActionCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSCell</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSControl</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSControl.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSController</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSDateFormatter</string>
+ <string key="superclassName">NSFormatter</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSDateFormatter.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSFormatter</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSImageCell</string>
+ <string key="superclassName">NSCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSImageCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSImageView</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSImageView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenu</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenuItem</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSMenuItemCell</string>
+ <string key="superclassName">NSButtonCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSNumberFormatter</string>
+ <string key="superclassName">NSFormatter</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Foundation.framework/Headers/NSNumberFormatter.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPopUpButton</string>
+ <string key="superclassName">NSButton</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSPopUpButtonCell</string>
+ <string key="superclassName">NSMenuItemCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSResponder</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSScrollView</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSScrollView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSScroller</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSScroller.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSStepper</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSStepper.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSStepperCell</string>
+ <string key="superclassName">NSActionCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSStepperCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTableColumn</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTableColumn.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTableView</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextField</string>
+ <string key="superclassName">NSControl</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextFieldCell</string>
+ <string key="superclassName">NSActionCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSUserDefaultsController</string>
+ <string key="superclassName">NSController</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSView</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSViewController</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="NSMutableDictionary" key="outlets">
+ <string key="NS.key.0">view</string>
+ <string key="NS.object.0">NSView</string>
+ </object>
+ <object class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <string key="NS.key.0">view</string>
+ <object class="IBToOneOutletInfo" key="NS.object.0">
+ <string key="name">view</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSWindow</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">AppKit.framework/Headers/NSWindow.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSWindowController</string>
+ <string key="superclassName">NSResponder</string>
+ <object class="NSMutableDictionary" key="actions">
+ <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>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -8459,8 +9441,8 @@ AQAAAAA</bytes>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SUUpdater.h</string>
+ <string key="majorKey">IBFrameworkSource</string>
+ <string key="minorKey">Sparkle.framework/Headers/SUUpdater.h</string>
</object>
</object>
</array>
@@ -8468,10 +9450,6 @@ AQAAAAA</bytes>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
@@ -8486,6 +9464,7 @@ AQAAAAA</bytes>
<string key="button_bar_spacer">{10, 23}</string>
<string key="button_duplicate">{33, 23}</string>
<string key="button_remove">{32, 23}</string>
+ <string key="reset">{16, 16}</string>
</dictionary>
</data>
</archive>
diff --git a/Interfaces/English.lproj/PrintAccessory.xib b/Interfaces/English.lproj/PrintAccessory.xib
index d19f411c..8093eee0 100644
--- a/Interfaces/English.lproj/PrintAccessory.xib
+++ b/Interfaces/English.lproj/PrintAccessory.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSButton</string>
@@ -35,7 +35,7 @@
<string key="NSClassName">NSApplication</string>
</object>
<object class="NSCustomView" id="753469230">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">268</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSButton" id="522835044">
@@ -43,13 +43,14 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{158, 18}, {226, 18}}</string>
<reference key="NSSuperview" ref="753469230"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="482038798">
<int key="NSCellFlags">-2080374784</int>
<int key="NSCellFlags2">0</int>
<string key="NSContents">Print Backgrounds</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -72,6 +73,8 @@
</object>
</array>
<string key="NSFrameSize">{400, 54}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<string key="NSClassName">NSView</string>
</object>
<object class="NSUserDefaultsController" id="1038709952">
@@ -80,7 +83,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">printAccessoryView</string>
@@ -186,14 +189,35 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">SPPrintAccessory</string>
+ <string key="superclassName">NSViewController</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="defaultsController">NSUserDefaultsController</string>
+ <string key="printAccessoryView">NSView</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="defaultsController">
+ <string key="name">defaultsController</string>
+ <string key="candidateClassName">NSUserDefaultsController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="printAccessoryView">
+ <string key="name">printAccessoryView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPrintAccessory.h</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/ProgressIndicatorLayer.xib b/Interfaces/English.lproj/ProgressIndicatorLayer.xib
index c2f830ad..fd813367 100644
--- a/Interfaces/English.lproj/ProgressIndicatorLayer.xib
+++ b/Interfaces/English.lproj/ProgressIndicatorLayer.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSBox</string>
@@ -37,7 +37,7 @@
<string key="NSClassName">NSApplication</string>
</object>
<object class="NSCustomView" id="1005">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">301</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSBox" id="450247213">
@@ -61,13 +61,14 @@
<int key="NSvFlags">290</int>
<string key="NSFrame">{{97, 30}, {326, 49}}</string>
<reference key="NSSuperview" ref="172592959"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="39991509">
<int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">4460544</int>
<string key="NSContents">Multiline Label</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI-Bold</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">2072</int>
</object>
@@ -89,6 +90,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{251, 10}, {175, 19}}</string>
<reference key="NSSuperview" ref="172592959"/>
+ <reference key="NSWindow"/>
<string key="NSReuseIdentifierKey">_NS:2444</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="983702716">
@@ -96,9 +98,9 @@
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Cancel</string>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">12</double>
- <int key="NSfFlags">4883</int>
+ <int key="NSfFlags">787</int>
</object>
<string key="NSCellIdentifier">_NS:2444</string>
<reference key="NSControlView" ref="148804002"/>
@@ -119,17 +121,19 @@
</array>
<string key="NSFrameSize">{436, 90}</string>
<reference key="NSSuperview" ref="234202374"/>
+ <reference key="NSWindow"/>
</object>
</array>
<string key="NSFrame">{{0, 70}, {436, 90}}</string>
<reference key="NSSuperview" ref="950529842"/>
+ <reference key="NSWindow"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">0</int>
<string key="NSContents">Box</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -160,15 +164,18 @@
<int key="NSvFlags">274</int>
<string key="NSFrame">{{13, 79}, {73, 73}}</string>
<reference key="NSSuperview" ref="950529842"/>
+ <reference key="NSWindow"/>
<string key="NSClassName">YRKSpinningProgressIndicator</string>
</object>
</array>
<string key="NSFrameSize">{437, 160}</string>
<reference key="NSSuperview" ref="450247213"/>
+ <reference key="NSWindow"/>
</object>
</array>
<string key="NSFrame">{{0, -70}, {437, 160}}</string>
<reference key="NSSuperview" ref="1005"/>
+ <reference key="NSWindow"/>
<string key="NSOffsets">{0, 0}</string>
<object class="NSTextFieldCell" key="NSTitleCell">
<int key="NSCellFlags">67108864</int>
@@ -196,12 +203,14 @@
</object>
</array>
<string key="NSFrameSize">{437, 90}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<string key="NSClassName">NSView</string>
</object>
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">taskProgressIndicator</string>
@@ -362,14 +371,3492 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">BGHUDButtonCell</string>
+ <string key="superclassName">NSButtonCell</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/BGHUDButtonCell.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <string key="superclassName">SPTableView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="affectedRowsText">id</string>
+ <string key="autohelpMenuItem">NSMenuItem</string>
+ <string key="autoindentMenuItem">NSMenuItem</string>
+ <string key="autopairMenuItem">NSMenuItem</string>
+ <string key="autouppercaseKeywordsMenuItem">NSMenuItem</string>
+ <string key="clearHistoryMenuItem">NSMenuItem</string>
+ <string key="commentCurrentQueryMenuItem">NSMenuItem</string>
+ <string key="commentLineOrSelectionMenuItem">NSMenuItem</string>
+ <string key="completionListMenuItem">NSMenuItem</string>
+ <string key="copyHistoryMenuItem">NSMenuItem</string>
+ <string key="customQueryScrollView">NSScrollView</string>
+ <string key="customQueryView">SPCopyTable</string>
+ <string key="editorFontMenuItem">NSMenuItem</string>
+ <string key="encodingPopUp">NSPopUpButton</string>
+ <string key="errorText">id</string>
+ <string key="errorTextScrollView">NSScrollView</string>
+ <string key="errorTextTitle">NSTextField</string>
+ <string key="helpNavigator">NSSegmentedControl</string>
+ <string key="helpSearchField">NSSearchField</string>
+ <string key="helpSearchFieldCell">NSSearchFieldCell</string>
+ <string key="helpTargetSelector">NSSegmentedControl</string>
+ <string key="helpWebView">WebView</string>
+ <string key="helpWebViewWindow">NSWindow</string>
+ <string key="nextHistoryMenuItem">NSMenuItem</string>
+ <string key="previousHistoryMenuItem">NSMenuItem</string>
+ <string key="queryEditorSplitView">SPSplitView</string>
+ <string key="queryFavoriteNameTextField">NSTextField</string>
+ <string key="queryFavoritesButton">id</string>
+ <string key="queryFavoritesSaveAllMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSaveAsMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSearchField">NSSearchField</string>
+ <string key="queryFavoritesSearchFieldView">id</string>
+ <string key="queryFavoritesSearchMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSheet">NSWindow</string>
+ <string key="queryHistoryButton">id</string>
+ <string key="queryHistorySearchField">NSSearchField</string>
+ <string key="queryHistorySearchFieldView">id</string>
+ <string key="queryHistorySearchMenuItem">NSMenuItem</string>
+ <string key="queryInfoButton">NSButton</string>
+ <string key="queryInfoPaneSplitView">SPSplitView</string>
+ <string key="runAllButton">id</string>
+ <string key="runPrimaryActionButton">id</string>
+ <string key="runPrimaryActionButtonAsSelection">id</string>
+ <string key="runPrimaryActionMenuItem">NSMenuItem</string>
+ <string key="runSecondaryActionMenuItem">NSMenuItem</string>
+ <string key="saveHistoryMenuItem">NSMenuItem</string>
+ <string key="saveQueryFavoriteButton">NSButton</string>
+ <string key="saveQueryFavoriteGlobal">NSButton</string>
+ <string key="shiftLeftMenuItem">NSMenuItem</string>
+ <string key="shiftRightMenuItem">NSMenuItem</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tablesListInstance">id</string>
+ <string key="textView">SPTextView</string>
+ <string key="valueSheet">id</string>
+ <string key="valueTextField">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="affectedRowsText">
+ <string key="name">affectedRowsText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autohelpMenuItem">
+ <string key="name">autohelpMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autoindentMenuItem">
+ <string key="name">autoindentMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autopairMenuItem">
+ <string key="name">autopairMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autouppercaseKeywordsMenuItem">
+ <string key="name">autouppercaseKeywordsMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="clearHistoryMenuItem">
+ <string key="name">clearHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="commentCurrentQueryMenuItem">
+ <string key="name">commentCurrentQueryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="commentLineOrSelectionMenuItem">
+ <string key="name">commentLineOrSelectionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="completionListMenuItem">
+ <string key="name">completionListMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyHistoryMenuItem">
+ <string key="name">copyHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryScrollView">
+ <string key="name">customQueryScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryView">
+ <string key="name">customQueryView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editorFontMenuItem">
+ <string key="name">editorFontMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopUp">
+ <string key="name">encodingPopUp</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorText">
+ <string key="name">errorText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorTextScrollView">
+ <string key="name">errorTextScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorTextTitle">
+ <string key="name">errorTextTitle</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpNavigator">
+ <string key="name">helpNavigator</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpSearchField">
+ <string key="name">helpSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpSearchFieldCell">
+ <string key="name">helpSearchFieldCell</string>
+ <string key="candidateClassName">NSSearchFieldCell</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpTargetSelector">
+ <string key="name">helpTargetSelector</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpWebView">
+ <string key="name">helpWebView</string>
+ <string key="candidateClassName">WebView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpWebViewWindow">
+ <string key="name">helpWebViewWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="nextHistoryMenuItem">
+ <string key="name">nextHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="previousHistoryMenuItem">
+ <string key="name">previousHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryEditorSplitView">
+ <string key="name">queryEditorSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoriteNameTextField">
+ <string key="name">queryFavoriteNameTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesButton">
+ <string key="name">queryFavoritesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSaveAllMenuItem">
+ <string key="name">queryFavoritesSaveAllMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSaveAsMenuItem">
+ <string key="name">queryFavoritesSaveAsMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchField">
+ <string key="name">queryFavoritesSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchFieldView">
+ <string key="name">queryFavoritesSearchFieldView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchMenuItem">
+ <string key="name">queryFavoritesSearchMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSheet">
+ <string key="name">queryFavoritesSheet</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistoryButton">
+ <string key="name">queryHistoryButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchField">
+ <string key="name">queryHistorySearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchFieldView">
+ <string key="name">queryHistorySearchFieldView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchMenuItem">
+ <string key="name">queryHistorySearchMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryInfoButton">
+ <string key="name">queryInfoButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryInfoPaneSplitView">
+ <string key="name">queryInfoPaneSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runAllButton">
+ <string key="name">runAllButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionButton">
+ <string key="name">runPrimaryActionButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionButtonAsSelection">
+ <string key="name">runPrimaryActionButtonAsSelection</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionMenuItem">
+ <string key="name">runPrimaryActionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runSecondaryActionMenuItem">
+ <string key="name">runSecondaryActionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveHistoryMenuItem">
+ <string key="name">saveHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveQueryFavoriteButton">
+ <string key="name">saveQueryFavoriteButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveQueryFavoriteGlobal">
+ <string key="name">saveQueryFavoriteGlobal</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="shiftLeftMenuItem">
+ <string key="name">shiftLeftMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="shiftRightMenuItem">
+ <string key="name">shiftRightMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="textView">
+ <string key="name">textView</string>
+ <string key="candidateClassName">SPTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="valueSheet">
+ <string key="name">valueSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="valueTextField">
+ <string key="name">valueTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="searchInDocForWebViewSelection:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="showHelpForWebViewSelection:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
+ <string key="name">searchInDocForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForWebViewSelection:">
+ <string key="name">showHelpForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseData</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">closeErrorConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionDelegate.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addDatabaseButton">id</string>
+ <string key="chooseDatabaseButton">id</string>
+ <string key="connectionErrorDialog">NSWindow</string>
+ <string key="contentViewSplitter">SPSplitView</string>
+ <string key="copyDatabaseButton">id</string>
+ <string key="copyDatabaseDataButton">NSButton</string>
+ <string key="copyDatabaseMessageField">id</string>
+ <string key="createTableSyntaxTextField">NSTextField</string>
+ <string key="createTableSyntaxTextView">NSTextView</string>
+ <string key="createTableSyntaxWindow">NSWindow</string>
+ <string key="customQueryInstance">id</string>
+ <string key="customQueryTextView">NSTextView</string>
+ <string key="databaseAlterCollationButton">NSPopUpButton</string>
+ <string key="databaseAlterEncodingButton">NSPopUpButton</string>
+ <string key="databaseAlterSheet">id</string>
+ <string key="databaseCollationButton">id</string>
+ <string key="databaseCopyNameField">id</string>
+ <string key="databaseCopySheet">id</string>
+ <string key="databaseDataInstance">id</string>
+ <string key="databaseEncodingButton">id</string>
+ <string key="databaseNameField">id</string>
+ <string key="databaseRenameNameField">id</string>
+ <string key="databaseRenameSheet">id</string>
+ <string key="databaseSheet">id</string>
+ <string key="dbTablesTableView">NSTableView</string>
+ <string key="documentActivityScrollView">NSScrollView</string>
+ <string key="encodingPopUp">NSPopUpButton</string>
+ <string key="exportControllerInstance">id</string>
+ <string key="extendedTableInfoInstance">id</string>
+ <string key="favoritesButton">id</string>
+ <string key="historyControl">id</string>
+ <string key="inputTextWindow">id</string>
+ <string key="inputTextWindowHeader">id</string>
+ <string key="inputTextWindowMessage">id</string>
+ <string key="inputTextWindowSecureTextField">id</string>
+ <string key="listFilterField">NSSearchField</string>
+ <string key="parentView">NSView</string>
+ <string key="queryProgressBar">NSProgressIndicator</string>
+ <string key="renameDatabaseButton">id</string>
+ <string key="renameDatabaseMessageField">id</string>
+ <string key="saveConnectionAccessory">id</string>
+ <string key="saveConnectionAutoConnect">NSButton</string>
+ <string key="saveConnectionEncrypt">NSButton</string>
+ <string key="saveConnectionEncryptString">NSSecureTextField</string>
+ <string key="saveConnectionIncludeData">NSButton</string>
+ <string key="saveConnectionIncludeQuery">NSButton</string>
+ <string key="saveConnectionSavePassword">NSButton</string>
+ <string key="saveConnectionSavePasswordAlert">id</string>
+ <string key="spHistoryControllerInstance">id</string>
+ <string key="statusTableAccessoryView">id</string>
+ <string key="statusTableCopyChecksum">id</string>
+ <string key="statusTableView">id</string>
+ <string key="tableContentInstance">SPTableContent</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDumpInstance">id</string>
+ <string key="tableInfoScrollView">NSScrollView</string>
+ <string key="tableInfoTable">NSTableView</string>
+ <string key="tableRelationsInstance">id</string>
+ <string key="tableSourceInstance">SPTableStructure</string>
+ <string key="tableTabView">NSTabView</string>
+ <string key="tableTriggersInstance">id</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ <string key="taskCancelButton">NSButton</string>
+ <string key="taskDescriptionText">id</string>
+ <string key="taskProgressIndicator">id</string>
+ <string key="taskProgressLayer">NSBox</string>
+ <string key="titleAccessoryView">id</string>
+ <string key="titleImageView">id</string>
+ <string key="titleStringView">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addDatabaseButton">
+ <string key="name">addDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="chooseDatabaseButton">
+ <string key="name">chooseDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="connectionErrorDialog">
+ <string key="name">connectionErrorDialog</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentViewSplitter">
+ <string key="name">contentViewSplitter</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseButton">
+ <string key="name">copyDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseDataButton">
+ <string key="name">copyDatabaseDataButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseMessageField">
+ <string key="name">copyDatabaseMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxTextField">
+ <string key="name">createTableSyntaxTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxTextView">
+ <string key="name">createTableSyntaxTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxWindow">
+ <string key="name">createTableSyntaxWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryTextView">
+ <string key="name">customQueryTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterCollationButton">
+ <string key="name">databaseAlterCollationButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterEncodingButton">
+ <string key="name">databaseAlterEncodingButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterSheet">
+ <string key="name">databaseAlterSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCollationButton">
+ <string key="name">databaseCollationButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCopyNameField">
+ <string key="name">databaseCopyNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCopySheet">
+ <string key="name">databaseCopySheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseEncodingButton">
+ <string key="name">databaseEncodingButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseNameField">
+ <string key="name">databaseNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseRenameNameField">
+ <string key="name">databaseRenameNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseRenameSheet">
+ <string key="name">databaseRenameSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseSheet">
+ <string key="name">databaseSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="dbTablesTableView">
+ <string key="name">dbTablesTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="documentActivityScrollView">
+ <string key="name">documentActivityScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopUp">
+ <string key="name">encodingPopUp</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportControllerInstance">
+ <string key="name">exportControllerInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="favoritesButton">
+ <string key="name">favoritesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="historyControl">
+ <string key="name">historyControl</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindow">
+ <string key="name">inputTextWindow</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowHeader">
+ <string key="name">inputTextWindowHeader</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowMessage">
+ <string key="name">inputTextWindowMessage</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowSecureTextField">
+ <string key="name">inputTextWindowSecureTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="listFilterField">
+ <string key="name">listFilterField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="parentView">
+ <string key="name">parentView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryProgressBar">
+ <string key="name">queryProgressBar</string>
+ <string key="candidateClassName">NSProgressIndicator</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameDatabaseButton">
+ <string key="name">renameDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameDatabaseMessageField">
+ <string key="name">renameDatabaseMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionAccessory">
+ <string key="name">saveConnectionAccessory</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionAutoConnect">
+ <string key="name">saveConnectionAutoConnect</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionEncrypt">
+ <string key="name">saveConnectionEncrypt</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionEncryptString">
+ <string key="name">saveConnectionEncryptString</string>
+ <string key="candidateClassName">NSSecureTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionIncludeData">
+ <string key="name">saveConnectionIncludeData</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionIncludeQuery">
+ <string key="name">saveConnectionIncludeQuery</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionSavePassword">
+ <string key="name">saveConnectionSavePassword</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionSavePasswordAlert">
+ <string key="name">saveConnectionSavePasswordAlert</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableAccessoryView">
+ <string key="name">statusTableAccessoryView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableCopyChecksum">
+ <string key="name">statusTableCopyChecksum</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableView">
+ <string key="name">statusTableView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentInstance">
+ <string key="name">tableContentInstance</string>
+ <string key="candidateClassName">SPTableContent</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDumpInstance">
+ <string key="name">tableDumpInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoScrollView">
+ <string key="name">tableInfoScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoTable">
+ <string key="name">tableInfoTable</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRelationsInstance">
+ <string key="name">tableRelationsInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTabView">
+ <string key="name">tableTabView</string>
+ <string key="candidateClassName">NSTabView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTriggersInstance">
+ <string key="name">tableTriggersInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskCancelButton">
+ <string key="name">taskCancelButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskDescriptionText">
+ <string key="name">taskDescriptionText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskProgressIndicator">
+ <string key="name">taskProgressIndicator</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskProgressLayer">
+ <string key="name">taskProgressLayer</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleAccessoryView">
+ <string key="name">titleAccessoryView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleImageView">
+ <string key="name">titleImageView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleStringView">
+ <string key="name">titleStringView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPrintController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="resetAutoIncrementResetButton">id</string>
+ <string key="tableCollationPopUpButton">NSPopUpButton</string>
+ <string key="tableCommentsTextView">NSTextView</string>
+ <string key="tableCreateSyntaxTextView">NSTextView</string>
+ <string key="tableCreatedAt">NSTextField</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDataSize">NSTextField</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tableEncodingPopUpButton">NSPopUpButton</string>
+ <string key="tableIndexSize">NSTextField</string>
+ <string key="tableMaxDataSize">NSTextField</string>
+ <string key="tableRowAutoIncrement">NSTextField</string>
+ <string key="tableRowAvgLength">NSTextField</string>
+ <string key="tableRowFormat">NSTextField</string>
+ <string key="tableRowNumber">NSTextField</string>
+ <string key="tableSizeFree">NSTextField</string>
+ <string key="tableSourceInstance">id</string>
+ <string key="tableTypePopUpButton">NSPopUpButton</string>
+ <string key="tableUpdatedAt">NSTextField</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementResetButton">
+ <string key="name">resetAutoIncrementResetButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCollationPopUpButton">
+ <string key="name">tableCollationPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCommentsTextView">
+ <string key="name">tableCommentsTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCreateSyntaxTextView">
+ <string key="name">tableCreateSyntaxTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCreatedAt">
+ <string key="name">tableCreatedAt</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataSize">
+ <string key="name">tableDataSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableEncodingPopUpButton">
+ <string key="name">tableEncodingPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableIndexSize">
+ <string key="name">tableIndexSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableMaxDataSize">
+ <string key="name">tableMaxDataSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowAutoIncrement">
+ <string key="name">tableRowAutoIncrement</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowAvgLength">
+ <string key="name">tableRowAvgLength</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowFormat">
+ <string key="name">tableRowFormat</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowNumber">
+ <string key="name">tableRowNumber</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSizeFree">
+ <string key="name">tableSizeFree</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTypePopUpButton">
+ <string key="name">tableTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableUpdatedAt">
+ <string key="name">tableUpdatedAt</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <string key="superclassName">NSObject</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="historyControl">NSSegmentedControl</string>
+ <string key="theDocument">SPDatabaseDocument</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="historyControl">
+ <string key="name">historyControl</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="theDocument">
+ <string key="name">theDocument</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addIndexButton">NSButton</string>
+ <string key="addIndexedColumnButton">NSButton</string>
+ <string key="anchoredButtonBar">NSBox</string>
+ <string key="confirmAddIndexButton">NSButton</string>
+ <string key="dbDocument">SPDatabaseDocument</string>
+ <string key="indexAdvancedOptionsView">NSView</string>
+ <string key="indexAdvancedOptionsViewButton">NSButton</string>
+ <string key="indexAdvancedOptionsViewLabelButton">NSButton</string>
+ <string key="indexKeyBlockSizeTextField">NSTextField</string>
+ <string key="indexNameLabel">NSTextField</string>
+ <string key="indexNameTextField">NSTextField</string>
+ <string key="indexSizeTableColumn">NSTableColumn</string>
+ <string key="indexStorageTypePopUpButton">NSPopUpButton</string>
+ <string key="indexTypeLabel">NSTextField</string>
+ <string key="indexTypePopUpButton">NSPopUpButton</string>
+ <string key="indexedColumnsScrollView">NSScrollView</string>
+ <string key="indexedColumnsTableView">NSTableView</string>
+ <string key="indexesTableView">SPTableView</string>
+ <string key="removeIndexButton">NSButton</string>
+ <string key="removeIndexedColumnButton">NSButton</string>
+ <string key="tableData">SPTableData</string>
+ <string key="tableStructure">SPTableStructure</string>
+ <string key="tablesList">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addIndexButton">
+ <string key="name">addIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addIndexedColumnButton">
+ <string key="name">addIndexedColumnButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="anchoredButtonBar">
+ <string key="name">anchoredButtonBar</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="confirmAddIndexButton">
+ <string key="name">confirmAddIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="dbDocument">
+ <string key="name">dbDocument</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsView">
+ <string key="name">indexAdvancedOptionsView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsViewButton">
+ <string key="name">indexAdvancedOptionsViewButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsViewLabelButton">
+ <string key="name">indexAdvancedOptionsViewLabelButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexKeyBlockSizeTextField">
+ <string key="name">indexKeyBlockSizeTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexNameLabel">
+ <string key="name">indexNameLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexNameTextField">
+ <string key="name">indexNameTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexSizeTableColumn">
+ <string key="name">indexSizeTableColumn</string>
+ <string key="candidateClassName">NSTableColumn</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexStorageTypePopUpButton">
+ <string key="name">indexStorageTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexTypeLabel">
+ <string key="name">indexTypeLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexTypePopUpButton">
+ <string key="name">indexTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexedColumnsScrollView">
+ <string key="name">indexedColumnsScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexedColumnsTableView">
+ <string key="name">indexedColumnsTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesTableView">
+ <string key="name">indexesTableView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexButton">
+ <string key="name">removeIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexedColumnButton">
+ <string key="name">removeIndexedColumnButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableData">
+ <string key="name">tableData</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableStructure">
+ <string key="name">tableStructure</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesList">
+ <string key="name">tablesList</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <string key="superclassName">NSSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="additionalDragHandleView">NSView</string>
+ <string key="collapseToggleButton">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="additionalDragHandleView">
+ <string key="name">additionalDragHandleView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="collapseToggleButton">
+ <string key="name">collapseToggleButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addButton">id</string>
+ <string key="argumentField">id</string>
+ <string key="betweenTextField">id</string>
+ <string key="compareField">id</string>
+ <string key="contentSplitView">SPSplitView</string>
+ <string key="contentViewPane">NSView</string>
+ <string key="countText">id</string>
+ <string key="duplicateButton">id</string>
+ <string key="fieldField">NSPopUpButton</string>
+ <string key="filterButton">id</string>
+ <string key="filterTableClearButton">NSButton</string>
+ <string key="filterTableDistinctCheckbox">NSButton</string>
+ <string key="filterTableFilterButton">NSButton</string>
+ <string key="filterTableLiveSearchCheckbox">NSButton</string>
+ <string key="filterTableNegateCheckbox">NSButton</string>
+ <string key="filterTableQueryTitle">NSTextField</string>
+ <string key="filterTableSearchAllFields">NSButton</string>
+ <string key="filterTableSetDefaultOperatorSheet">NSPanel</string>
+ <string key="filterTableSetDefaultOperatorValue">NSComboBox</string>
+ <string key="filterTableSplitView">SPSplitView</string>
+ <string key="filterTableView">SPCopyTable</string>
+ <string key="filterTableWhereClause">SPTextView</string>
+ <string key="filterTableWindow">NSPanel</string>
+ <string key="firstBetweenField">id</string>
+ <string key="limitRowsButton">id</string>
+ <string key="limitRowsField">id</string>
+ <string key="limitRowsStepper">id</string>
+ <string key="multipleLineEditingButton">NSButton</string>
+ <string key="paginationBox">NSBox</string>
+ <string key="paginationButton">NSButton</string>
+ <string key="paginationGoButton">NSButton</string>
+ <string key="paginationNextButton">NSButton</string>
+ <string key="paginationPageField">NSTextField</string>
+ <string key="paginationPageStepper">NSStepper</string>
+ <string key="paginationPreviousButton">NSButton</string>
+ <string key="paginationView">NSView</string>
+ <string key="paginationViewController">NSViewController</string>
+ <string key="reloadButton">id</string>
+ <string key="removeButton">id</string>
+ <string key="secondBetweenField">id</string>
+ <string key="spHistoryControllerInstance">SPHistoryController</string>
+ <string key="tableContentView">SPCopyTable</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableInfoInstance">SPTableInfo</string>
+ <string key="tableSourceInstance">id</string>
+ <string key="tablesListInstance">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addButton">
+ <string key="name">addButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="argumentField">
+ <string key="name">argumentField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="betweenTextField">
+ <string key="name">betweenTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="compareField">
+ <string key="name">compareField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentSplitView">
+ <string key="name">contentSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentViewPane">
+ <string key="name">contentViewPane</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="countText">
+ <string key="name">countText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateButton">
+ <string key="name">duplicateButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="fieldField">
+ <string key="name">fieldField</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterButton">
+ <string key="name">filterButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableClearButton">
+ <string key="name">filterTableClearButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableDistinctCheckbox">
+ <string key="name">filterTableDistinctCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableFilterButton">
+ <string key="name">filterTableFilterButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableLiveSearchCheckbox">
+ <string key="name">filterTableLiveSearchCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableNegateCheckbox">
+ <string key="name">filterTableNegateCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableQueryTitle">
+ <string key="name">filterTableQueryTitle</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSearchAllFields">
+ <string key="name">filterTableSearchAllFields</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSetDefaultOperatorSheet">
+ <string key="name">filterTableSetDefaultOperatorSheet</string>
+ <string key="candidateClassName">NSPanel</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSetDefaultOperatorValue">
+ <string key="name">filterTableSetDefaultOperatorValue</string>
+ <string key="candidateClassName">NSComboBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSplitView">
+ <string key="name">filterTableSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableView">
+ <string key="name">filterTableView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableWhereClause">
+ <string key="name">filterTableWhereClause</string>
+ <string key="candidateClassName">SPTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableWindow">
+ <string key="name">filterTableWindow</string>
+ <string key="candidateClassName">NSPanel</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="firstBetweenField">
+ <string key="name">firstBetweenField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsButton">
+ <string key="name">limitRowsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsField">
+ <string key="name">limitRowsField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsStepper">
+ <string key="name">limitRowsStepper</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="multipleLineEditingButton">
+ <string key="name">multipleLineEditingButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationBox">
+ <string key="name">paginationBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationButton">
+ <string key="name">paginationButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationGoButton">
+ <string key="name">paginationGoButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationNextButton">
+ <string key="name">paginationNextButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPageField">
+ <string key="name">paginationPageField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPageStepper">
+ <string key="name">paginationPageStepper</string>
+ <string key="candidateClassName">NSStepper</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPreviousButton">
+ <string key="name">paginationPreviousButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationView">
+ <string key="name">paginationView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationViewController">
+ <string key="name">paginationViewController</string>
+ <string key="candidateClassName">NSViewController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="reloadButton">
+ <string key="name">reloadButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeButton">
+ <string key="name">removeButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="secondBetweenField">
+ <string key="name">secondBetweenField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">SPHistoryController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentView">
+ <string key="name">tableContentView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">SPTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableData</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListInstance">
+ <string key="name">tableListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableInfo</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="activitiesTable">NSTableView</string>
+ <string key="infoTable">id</string>
+ <string key="tableDataInstance">id</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tableInfoScrollView">NSScrollView</string>
+ <string key="tableList">id</string>
+ <string key="tableListInstance">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="activitiesTable">
+ <string key="name">activitiesTable</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="infoTable">
+ <string key="name">infoTable</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoScrollView">
+ <string key="name">tableInfoScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableList">
+ <string key="name">tableList</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListInstance">
+ <string key="name">tableListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addFieldButton">id</string>
+ <string key="addIndexButton">id</string>
+ <string key="chooseKeyButton">id</string>
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="duplicateFieldButton">id</string>
+ <string key="editTableButton">id</string>
+ <string key="encodingPopupCell">NSPopUpButtonCell</string>
+ <string key="extendedTableInfoInstance">SPExtendedTableInfo</string>
+ <string key="indexesController">SPIndexesController</string>
+ <string key="indexesShowButton">NSButton</string>
+ <string key="indexesTableView">SPTableView</string>
+ <string key="keySheet">id</string>
+ <string key="refreshIndexesButton">id</string>
+ <string key="reloadFieldsButton">id</string>
+ <string key="removeFieldButton">id</string>
+ <string key="removeIndexButton">id</string>
+ <string key="resetAutoIncrementLine">id</string>
+ <string key="resetAutoIncrementSheet">id</string>
+ <string key="resetAutoIncrementValue">id</string>
+ <string key="structureGrabber">id</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableInfoInstance">SPTableInfo</string>
+ <string key="tableSourceView">SPTableView</string>
+ <string key="tablesIndexesSplitView">NSSplitView</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ <string key="viewColumnsMenu">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addFieldButton">
+ <string key="name">addFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addIndexButton">
+ <string key="name">addIndexButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="chooseKeyButton">
+ <string key="name">chooseKeyButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateFieldButton">
+ <string key="name">duplicateFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editTableButton">
+ <string key="name">editTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopupCell">
+ <string key="name">encodingPopupCell</string>
+ <string key="candidateClassName">NSPopUpButtonCell</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">SPExtendedTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesController">
+ <string key="name">indexesController</string>
+ <string key="candidateClassName">SPIndexesController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesShowButton">
+ <string key="name">indexesShowButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesTableView">
+ <string key="name">indexesTableView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="keySheet">
+ <string key="name">keySheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="refreshIndexesButton">
+ <string key="name">refreshIndexesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="reloadFieldsButton">
+ <string key="name">reloadFieldsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeFieldButton">
+ <string key="name">removeFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexButton">
+ <string key="name">removeIndexButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementLine">
+ <string key="name">resetAutoIncrementLine</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementSheet">
+ <string key="name">resetAutoIncrementSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementValue">
+ <string key="name">resetAutoIncrementValue</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="structureGrabber">
+ <string key="name">structureGrabber</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">SPTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceView">
+ <string key="name">tableSourceView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesIndexesSplitView">
+ <string key="name">tablesIndexesSplitView</string>
+ <string key="candidateClassName">NSSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="viewColumnsMenu">
+ <string key="name">viewColumnsMenu</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableView</string>
+ <string key="superclassName">NSTableView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTablesList</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addTableButton">id</string>
+ <string key="copyCreateSyntaxContextMenuItem">NSMenuItem</string>
+ <string key="copyCreateSyntaxMenuItem">NSMenuItem</string>
+ <string key="copyTableButton">id</string>
+ <string key="copyTableContentSwitch">NSButton</string>
+ <string key="copyTableMessageField">id</string>
+ <string key="copyTableNameField">id</string>
+ <string key="copyTableSheet">id</string>
+ <string key="customQueryInstance">id</string>
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="duplicateTableContextMenuItem">NSMenuItem</string>
+ <string key="duplicateTableMenuItem">NSMenuItem</string>
+ <string key="extendedTableInfoInstance">id</string>
+ <string key="listFilterField">NSSearchField</string>
+ <string key="openTableInNewTabContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewTabMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowMenuItem">NSMenuItem</string>
+ <string key="removeTableContextMenuItem">NSMenuItem</string>
+ <string key="removeTableMenuItem">NSMenuItem</string>
+ <string key="renameTableContextMenuItem">NSMenuItem</string>
+ <string key="renameTableMenuItem">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem2">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem3">NSMenuItem</string>
+ <string key="separatorTableMenuItem">NSMenuItem</string>
+ <string key="separatorTableMenuItem2">NSMenuItem</string>
+ <string key="separatorTableMenuItem3">NSMenuItem</string>
+ <string key="showCreateSyntaxContextMenuItem">NSMenuItem</string>
+ <string key="showCreateSyntaxMenuItem">NSMenuItem</string>
+ <string key="spHistoryControllerInstance">SPHistoryController</string>
+ <string key="tableCollationButton">id</string>
+ <string key="tableContentInstance">SPTableContent</string>
+ <string key="tableDataInstance">id</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableDumpInstance">id</string>
+ <string key="tableEncodingButton">id</string>
+ <string key="tableInfoInstance">id</string>
+ <string key="tableListFilterSplitView">SPSplitView</string>
+ <string key="tableListSplitView">SPSplitView</string>
+ <string key="tableNameField">id</string>
+ <string key="tableSheet">id</string>
+ <string key="tableSourceInstance">SPTableStructure</string>
+ <string key="tableTriggersInstance">id</string>
+ <string key="tableTypeButton">id</string>
+ <string key="tablesListView">SPTableView</string>
+ <string key="toolbarActionsButton">id</string>
+ <string key="toolbarAddButton">id</string>
+ <string key="toolbarReloadButton">id</string>
+ <string key="truncateTableButton">id</string>
+ <string key="truncateTableContextMenuItem">NSMenuItem</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addTableButton">
+ <string key="name">addTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyCreateSyntaxContextMenuItem">
+ <string key="name">copyCreateSyntaxContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyCreateSyntaxMenuItem">
+ <string key="name">copyCreateSyntaxMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableButton">
+ <string key="name">copyTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableContentSwitch">
+ <string key="name">copyTableContentSwitch</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableMessageField">
+ <string key="name">copyTableMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableNameField">
+ <string key="name">copyTableNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableSheet">
+ <string key="name">copyTableSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateTableContextMenuItem">
+ <string key="name">duplicateTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateTableMenuItem">
+ <string key="name">duplicateTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="listFilterField">
+ <string key="name">listFilterField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewTabContextMenuItem">
+ <string key="name">openTableInNewTabContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewTabMenuItem">
+ <string key="name">openTableInNewTabMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowContextMenuItem">
+ <string key="name">openTableInNewWindowContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowMenuItem">
+ <string key="name">openTableInNewWindowMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeTableContextMenuItem">
+ <string key="name">removeTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeTableMenuItem">
+ <string key="name">removeTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameTableContextMenuItem">
+ <string key="name">renameTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameTableMenuItem">
+ <string key="name">renameTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem">
+ <string key="name">separatorTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem2">
+ <string key="name">separatorTableContextMenuItem2</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem3">
+ <string key="name">separatorTableContextMenuItem3</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem">
+ <string key="name">separatorTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem2">
+ <string key="name">separatorTableMenuItem2</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem3">
+ <string key="name">separatorTableMenuItem3</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="showCreateSyntaxContextMenuItem">
+ <string key="name">showCreateSyntaxContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="showCreateSyntaxMenuItem">
+ <string key="name">showCreateSyntaxMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">SPHistoryController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCollationButton">
+ <string key="name">tableCollationButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentInstance">
+ <string key="name">tableContentInstance</string>
+ <string key="candidateClassName">SPTableContent</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDumpInstance">
+ <string key="name">tableDumpInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableEncodingButton">
+ <string key="name">tableEncodingButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListFilterSplitView">
+ <string key="name">tableListFilterSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListSplitView">
+ <string key="name">tableListSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableNameField">
+ <string key="name">tableNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSheet">
+ <string key="name">tableSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTriggersInstance">
+ <string key="name">tableTriggersInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTypeButton">
+ <string key="name">tableTypeButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListView">
+ <string key="name">tablesListView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarActionsButton">
+ <string key="name">toolbarActionsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarAddButton">
+ <string key="name">toolbarAddButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarReloadButton">
+ <string key="name">toolbarReloadButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="truncateTableButton">
+ <string key="name">truncateTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="truncateTableContextMenuItem">
+ <string key="name">truncateTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTablesList</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="tableEncodingButtonChanged:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableEncodingButtonChanged:">
+ <string key="name">tableEncodingButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <string key="superclassName">NSTextView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="customQueryInstance">SPCustomQuery</string>
+ <string key="scrollView">NSScrollView</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">SPCustomQuery</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="scrollView">
+ <string key="name">scrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="printDocument:">id</string>
+ <string key="showMySQLHelpForCurrentWord:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="printDocument:">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">YRKSpinningProgressIndicator</string>
+ <string key="superclassName">NSView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/YRKSpinningProgressIndicator.h</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <real value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/QueryFavoriteManager.xib b/Interfaces/English.lproj/QueryFavoriteManager.xib
index 36ec44e0..336aaad1 100644
--- a/Interfaces/English.lproj/QueryFavoriteManager.xib
+++ b/Interfaces/English.lproj/QueryFavoriteManager.xib
@@ -3,12 +3,12 @@
<data>
<int key="IBDocument.SystemTarget">1060</int>
<string key="IBDocument.SystemVersion">13F34</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
<string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">5056</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSArrayController</string>
@@ -78,7 +78,7 @@
<int key="NSCellFlags2">0</int>
<string key="NSContents">Box</string>
<object class="NSFont" key="NSSupport" id="1071840538">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -182,7 +182,7 @@
<int key="NSCellFlags2">2048</int>
<string key="NSContents">Favorites</string>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -1288,7 +1288,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">window</string>
@@ -2600,7 +2600,7 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="superclassName">NSTextFieldCell</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/ImageAndTextCell.h</string>
+ <string key="minorKey">../Source/ImageAndTextCell.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2691,7 +2691,98 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/NSTextView.h</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2703,7 +2794,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="duplicateContentFilter:">id</string>
<string key="exportContentFilter:">id</string>
<string key="importContentFilterByAdding:">id</string>
- <string key="importFavoritesByReplacing:">id</string>
<string key="insertPlaceholder:">id</string>
<string key="removeContentFilter:">id</string>
<string key="suppressLeadingFiledPlaceholderWasChanged:">id</string>
@@ -2729,10 +2819,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">importContentFilterByAdding:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="importFavoritesByReplacing:">
- <string key="name">importFavoritesByReplacing:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="insertPlaceholder:">
<string key="name">insertPlaceholder:</string>
<string key="candidateClassName">id</string>
@@ -2822,7 +2908,63 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPContentFilterManager.h</string>
+ <string key="minorKey">../Source/SPContentFilterManager.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPContentFilterManager</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addContentFilter:">id</string>
+ <string key="closeContentFilterManagerSheet:">id</string>
+ <string key="duplicateContentFilter:">id</string>
+ <string key="exportContentFilter:">id</string>
+ <string key="importContentFilterByAdding:">id</string>
+ <string key="importFavoritesByReplacing:">id</string>
+ <string key="insertPlaceholder:">id</string>
+ <string key="removeContentFilter:">id</string>
+ <string key="suppressLeadingFiledPlaceholderWasChanged:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addContentFilter:">
+ <string key="name">addContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeContentFilterManagerSheet:">
+ <string key="name">closeContentFilterManagerSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateContentFilter:">
+ <string key="name">duplicateContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportContentFilter:">
+ <string key="name">exportContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importContentFilterByAdding:">
+ <string key="name">importContentFilterByAdding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFavoritesByReplacing:">
+ <string key="name">importFavoritesByReplacing:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertPlaceholder:">
+ <string key="name">insertPlaceholder:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeContentFilter:">
+ <string key="name">removeContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="suppressLeadingFiledPlaceholderWasChanged:">
+ <string key="name">suppressLeadingFiledPlaceholderWasChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPContentFilterManager.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2841,7 +2983,25 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCopyTable.h</string>
+ <string key="minorKey">../Source/SPCopyTable.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -2868,11 +3028,9 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="runSecondaryQueryAction:">id</string>
<string key="runSelectedQueries:">id</string>
<string key="saveQueryHistory:">id</string>
- <string key="searchInDocForWebViewSelection:">id</string>
<string key="showCompletionList:">id</string>
<string key="showHelpForCurrentWord:">id</string>
<string key="showHelpForSearchString:">id</string>
- <string key="showHelpForWebViewSelection:">id</string>
<string key="switchDefaultQueryAction:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
@@ -2956,10 +3114,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">saveQueryHistory:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
- <string key="name">searchInDocForWebViewSelection:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="showCompletionList:">
<string key="name">showCompletionList:</string>
<string key="candidateClassName">id</string>
@@ -2972,10 +3126,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">showHelpForSearchString:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showHelpForWebViewSelection:">
- <string key="name">showHelpForWebViewSelection:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="switchDefaultQueryAction:">
<string key="name">switchDefaultQueryAction:</string>
<string key="candidateClassName">id</string>
@@ -3262,7 +3412,148 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPCustomQuery.h</string>
+ <string key="minorKey">../Source/SPCustomQuery.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="searchInDocForWebViewSelection:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="showHelpForWebViewSelection:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
+ <string key="name">searchInDocForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForWebViewSelection:">
+ <string key="name">showHelpForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3270,7 +3561,25 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseData.h</string>
+ <string key="minorKey">../Source/SPDatabaseData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">closeErrorConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionDelegate.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -3287,7 +3596,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="checksumTable:">id</string>
<string key="chooseDatabase:">id</string>
<string key="chooseEncoding:">id</string>
- <string key="closeErrorConnectionSheet:">id</string>
<string key="closePanelSheet:">id</string>
<string key="closePasswordSheet:">id</string>
<string key="closeSheet:">id</string>
@@ -3305,7 +3613,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="openCurrentConnectionInNewWindow:">id</string>
<string key="openDatabaseInNewTab:">id</string>
<string key="optimizeTable:">id</string>
- <string key="printDocument:">id</string>
<string key="refreshTables:">id</string>
<string key="removeDatabase:">id</string>
<string key="renameDatabase:">id</string>
@@ -3323,12 +3630,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="showUserManager:">id</string>
<string key="toggleNavigator:">id</string>
<string key="validateSaveConnectionAccessory:">id</string>
- <string key="viewContent:">id</string>
- <string key="viewQuery:">id</string>
- <string key="viewRelations:">id</string>
- <string key="viewStatus:">id</string>
- <string key="viewStructure:">id</string>
- <string key="viewTriggers:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="addConnectionToFavorites:">
@@ -3371,10 +3672,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">chooseEncoding:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="closeErrorConnectionSheet:">
- <string key="name">closeErrorConnectionSheet:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="closePanelSheet:">
<string key="name">closePanelSheet:</string>
<string key="candidateClassName">id</string>
@@ -3443,10 +3740,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">optimizeTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="printDocument:">
- <string key="name">printDocument:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="refreshTables:">
<string key="name">refreshTables:</string>
<string key="candidateClassName">id</string>
@@ -3515,30 +3808,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">validateSaveConnectionAccessory:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="viewContent:">
- <string key="name">viewContent:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewQuery:">
- <string key="name">viewQuery:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewRelations:">
- <string key="name">viewRelations:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStatus:">
- <string key="name">viewStatus:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewStructure:">
- <string key="name">viewStructure:</string>
- <string key="candidateClassName">id</string>
- </object>
- <object class="IBActionInfo" key="viewTriggers:">
- <string key="name">viewTriggers:</string>
- <string key="candidateClassName">id</string>
- </object>
</dictionary>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="addDatabaseButton">id</string>
@@ -3891,7 +4160,338 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPDatabaseDocument.h</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPrintController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4042,7 +4642,48 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPExtendedTableInfo.h</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4075,7 +4716,25 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPHistoryController.h</string>
+ <string key="minorKey">../Source/SPHistoryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4241,7 +4900,53 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPIndexesController.h</string>
+ <string key="minorKey">../Source/SPIndexesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4352,7 +5057,73 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPQueryFavoriteManager.h</string>
+ <string key="minorKey">../Source/SPQueryFavoriteManager.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPQueryFavoriteManager</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addQueryFavorite:">id</string>
+ <string key="closeQueryManagerSheet:">id</string>
+ <string key="duplicateQueryFavorite:">id</string>
+ <string key="exportFavorites:">id</string>
+ <string key="importFavoritesByAdding:">id</string>
+ <string key="importFavoritesByReplacing:">id</string>
+ <string key="insertPlaceholder:">id</string>
+ <string key="removeAllQueryFavorites:">id</string>
+ <string key="removeQueryFavorite:">id</string>
+ <string key="saveFavoriteToFile:">id</string>
+ <string key="showHelp:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addQueryFavorite:">
+ <string key="name">addQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeQueryManagerSheet:">
+ <string key="name">closeQueryManagerSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateQueryFavorite:">
+ <string key="name">duplicateQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportFavorites:">
+ <string key="name">exportFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFavoritesByAdding:">
+ <string key="name">importFavoritesByAdding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFavoritesByReplacing:">
+ <string key="name">importFavoritesByReplacing:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertPlaceholder:">
+ <string key="name">insertPlaceholder:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeAllQueryFavorites:">
+ <string key="name">removeAllQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeQueryFavorite:">
+ <string key="name">removeQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveFavoriteToFile:">
+ <string key="name">saveFavoriteToFile:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelp:">
+ <string key="name">showHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPQueryFavoriteManager.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4385,7 +5156,25 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPSplitView.h</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4509,6 +5298,7 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="limitRowsField">id</string>
<string key="limitRowsStepper">id</string>
<string key="multipleLineEditingButton">NSButton</string>
+ <string key="paginationBox">NSBox</string>
<string key="paginationButton">NSButton</string>
<string key="paginationGoButton">NSButton</string>
<string key="paginationNextButton">NSButton</string>
@@ -4516,6 +5306,7 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="paginationPageStepper">NSStepper</string>
<string key="paginationPreviousButton">NSButton</string>
<string key="paginationView">NSView</string>
+ <string key="paginationViewController">NSViewController</string>
<string key="reloadButton">id</string>
<string key="removeButton">id</string>
<string key="secondBetweenField">id</string>
@@ -4640,6 +5431,10 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">multipleLineEditingButton</string>
<string key="candidateClassName">NSButton</string>
</object>
+ <object class="IBToOneOutletInfo" key="paginationBox">
+ <string key="name">paginationBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
<object class="IBToOneOutletInfo" key="paginationButton">
<string key="name">paginationButton</string>
<string key="candidateClassName">NSButton</string>
@@ -4668,6 +5463,10 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">paginationView</string>
<string key="candidateClassName">NSView</string>
</object>
+ <object class="IBToOneOutletInfo" key="paginationViewController">
+ <string key="name">paginationViewController</string>
+ <string key="candidateClassName">NSViewController</string>
+ </object>
<object class="IBToOneOutletInfo" key="reloadButton">
<string key="name">reloadButton</string>
<string key="candidateClassName">id</string>
@@ -4711,7 +5510,103 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableContent.h</string>
+ <string key="minorKey">../Source/SPTableContent.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4733,7 +5628,7 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableData.h</string>
+ <string key="minorKey">../Source/SPTableData.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4780,7 +5675,7 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableInfo.h</string>
+ <string key="minorKey">../Source/SPTableInfo.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4790,7 +5685,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="addField:">id</string>
<string key="closeSheet:">id</string>
<string key="duplicateField:">id</string>
- <string key="reloadTable:">id</string>
<string key="removeField:">id</string>
<string key="resetAutoIncrement:">id</string>
<string key="showOptimizedFieldType:">id</string>
@@ -4810,10 +5704,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">duplicateField:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="reloadTable:">
- <string key="name">reloadTable:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="removeField:">
<string key="name">removeField:</string>
<string key="candidateClassName">id</string>
@@ -4976,7 +5866,94 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableStructure.h</string>
+ <string key="minorKey">../Source/SPTableStructure.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4984,7 +5961,7 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="superclassName">NSTableView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTableView.h</string>
+ <string key="minorKey">../Source/SPTableView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -4995,9 +5972,9 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="closeSheet:">id</string>
<string key="copyTable:">id</string>
<string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
<string key="removeTable:">id</string>
<string key="renameTable:">id</string>
- <string key="tableEncodingButtonChanged:">id</string>
<string key="togglePaneCollapse:">id</string>
<string key="truncateTable:">id</string>
<string key="updateFilter:">id</string>
@@ -5020,6 +5997,10 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">openTableInNewTab:</string>
<string key="candidateClassName">id</string>
</object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
<object class="IBActionInfo" key="removeTable:">
<string key="name">removeTable:</string>
<string key="candidateClassName">id</string>
@@ -5028,10 +6009,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">renameTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="tableEncodingButtonChanged:">
- <string key="name">tableEncodingButtonChanged:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="togglePaneCollapse:">
<string key="name">togglePaneCollapse:</string>
<string key="candidateClassName">id</string>
@@ -5066,6 +6043,8 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="listFilterField">NSSearchField</string>
<string key="openTableInNewTabContextMenuItem">NSMenuItem</string>
<string key="openTableInNewTabMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowMenuItem">NSMenuItem</string>
<string key="removeTableContextMenuItem">NSMenuItem</string>
<string key="removeTableMenuItem">NSMenuItem</string>
<string key="renameTableContextMenuItem">NSMenuItem</string>
@@ -5165,6 +6144,14 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<string key="name">openTableInNewTabMenuItem</string>
<string key="candidateClassName">NSMenuItem</string>
</object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowContextMenuItem">
+ <string key="name">openTableInNewWindowContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowMenuItem">
+ <string key="name">openTableInNewWindowMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
<object class="IBToOneOutletInfo" key="removeTableContextMenuItem">
<string key="name">removeTableContextMenuItem</string>
<string key="candidateClassName">NSMenuItem</string>
@@ -5300,26 +6287,94 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTablesList.h</string>
+ <string key="minorKey">../Source/SPTablesList.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
- <string key="className">SPTextView</string>
- <string key="superclassName">NSTextView</string>
+ <string key="className">SPTablesList</string>
<dictionary class="NSMutableDictionary" key="actions">
- <string key="printDocument:">id</string>
- <string key="showMySQLHelpForCurrentWord:">id</string>
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="tableEncodingButtonChanged:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
- <object class="IBActionInfo" key="printDocument:">
- <string key="name">printDocument:</string>
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
- <string key="name">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableEncodingButtonChanged:">
+ <string key="name">tableEncodingButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <string key="superclassName">NSTextView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="customQueryInstance">SPCustomQuery</string>
<string key="scrollView">NSScrollView</string>
@@ -5346,7 +6401,28 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPTextView.h</string>
+ <string key="minorKey">../Source/SPTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="printDocument:">id</string>
+ <string key="showMySQLHelpForCurrentWord:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="printDocument:">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.m</string>
</object>
</object>
</array>
@@ -5354,10 +6430,6 @@ IG5vdCBiZSB1c2VkIGluc2lkZSBvZiBhIHRhYiBzbmlwcGV0XeKAqA</string>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/SSHQuestionDialog.xib b/Interfaces/English.lproj/SSHQuestionDialog.xib
index d3b5c881..f02f07dc 100644
--- a/Interfaces/English.lproj/SSHQuestionDialog.xib
+++ b/Interfaces/English.lproj/SSHQuestionDialog.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSButton</string>
@@ -50,7 +50,7 @@
<nil key="NSViewClass"/>
<nil key="NSUserInterfaceItemIdentifier"/>
<object class="NSView" key="NSWindowView" id="414427165">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextField" id="958459073">
@@ -58,13 +58,14 @@
<int key="NSvFlags">274</int>
<string key="NSFrame">{{126, 60}, {477, 129}}</string>
<reference key="NSSuperview" ref="414427165"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="296218965">
<int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">272891904</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport" id="313221240">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -96,6 +97,7 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{510, 12}, {96, 32}}</string>
<reference key="NSSuperview" ref="414427165"/>
+ <reference key="NSWindow"/>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="915366670">
@@ -126,6 +128,7 @@
</set>
<string key="NSFrame">{{20, 115}, {75, 74}}</string>
<reference key="NSSuperview" ref="414427165"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="490596046">
<int key="NSCellFlags">134217728</int>
@@ -147,6 +150,7 @@
<int key="NSvFlags">289</int>
<string key="NSFrame">{{414, 12}, {96, 32}}</string>
<reference key="NSSuperview" ref="414427165"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="382904691">
<int key="NSCellFlags">67108864</int>
@@ -176,6 +180,7 @@
</set>
<string key="NSFrame">{{68, 113}, {32, 32}}</string>
<reference key="NSSuperview" ref="414427165"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="406303847">
<int key="NSCellFlags">134217728</int>
@@ -194,6 +199,8 @@
</object>
</array>
<string key="NSFrameSize">{620, 209}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
@@ -223,7 +230,7 @@
<int key="NSCellFlags2">272891904</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport">
- <string key="NSName">.LucidaGrandeUI-Bold</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">2072</int>
</object>
@@ -420,7 +427,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">sshQuestionText</string>
@@ -850,14 +857,90 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSSHTunnel</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeSSHPasswordSheet:">id</string>
+ <string key="closeSSHQuestionSheet:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeSSHPasswordSheet:">
+ <string key="name">closeSSHPasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSSHQuestionSheet:">
+ <string key="name">closeSSHQuestionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="sshPasswordDialog">NSWindow</string>
+ <string key="sshPasswordField">NSSecureTextField</string>
+ <string key="sshPasswordKeychainCheckbox">NSButton</string>
+ <string key="sshPasswordText">NSTextField</string>
+ <string key="sshQuestionDialog">NSWindow</string>
+ <string key="sshQuestionText">NSTextField</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="sshPasswordDialog">
+ <string key="name">sshPasswordDialog</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sshPasswordField">
+ <string key="name">sshPasswordField</string>
+ <string key="candidateClassName">NSSecureTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sshPasswordKeychainCheckbox">
+ <string key="name">sshPasswordKeychainCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sshPasswordText">
+ <string key="name">sshPasswordText</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sshQuestionDialog">
+ <string key="name">sshQuestionDialog</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="sshQuestionText">
+ <string key="name">sshQuestionText</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSSHTunnel.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSSHTunnel</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="closeSSHPasswordSheet:">id</string>
+ <string key="closeSSHQuestionSheet:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="closeSSHPasswordSheet:">
+ <string key="name">closeSSHPasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSSHQuestionSheet:">
+ <string key="name">closeSSHQuestionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSSHTunnel.m</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/SaveSPFAccessory.xib b/Interfaces/English.lproj/SaveSPFAccessory.xib
index 6d8069fc..f9150a70 100644
--- a/Interfaces/English.lproj/SaveSPFAccessory.xib
+++ b/Interfaces/English.lproj/SaveSPFAccessory.xib
@@ -2,13 +2,13 @@
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1060</int>
- <string key="IBDocument.SystemVersion">13B3116</string>
- <string key="IBDocument.InterfaceBuilderVersion">4514</string>
- <string key="IBDocument.AppKitVersion">1265</string>
- <string key="IBDocument.HIToolboxVersion">696.00</string>
+ <string key="IBDocument.SystemVersion">13F34</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
+ <string key="IBDocument.AppKitVersion">1265.21</string>
+ <string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">4514</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSButton</string>
@@ -39,7 +39,7 @@
<string key="NSClassName">NSApplication</string>
</object>
<object class="NSCustomView" id="920946966">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">268</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSButton" id="438732615">
@@ -47,13 +47,14 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{18, 33}, {394, 18}}</string>
<reference key="NSSuperview" ref="920946966"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="916395634">
<int key="NSCellFlags">-2080374784</int>
<int key="NSCellFlags2">0</int>
<string key="NSContents">Remember window state</string>
<object class="NSFont" key="NSSupport" id="113985193">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -79,6 +80,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{18, 7}, {394, 18}}</string>
<reference key="NSSuperview" ref="920946966"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="1023988499">
<int key="NSCellFlags">67108864</int>
@@ -102,6 +104,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{18, 111}, {189, 18}}</string>
<reference key="NSSuperview" ref="920946966"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="54680337">
<int key="NSCellFlags">67108864</int>
@@ -125,6 +128,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{18, 85}, {209, 18}}</string>
<reference key="NSSuperview" ref="920946966"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="793938016">
<int key="NSCellFlags">67108864</int>
@@ -148,13 +152,14 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{233, 84}, {157, 19}}</string>
<reference key="NSSuperview" ref="920946966"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSSecureTextFieldCell" key="NSCell" id="23878540">
<int key="NSCellFlags">342884416</int>
<int key="NSCellFlags2">272761856</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -190,6 +195,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{18, 59}, {394, 18}}</string>
<reference key="NSSuperview" ref="920946966"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="739923402">
<int key="NSCellFlags">-2080374784</int>
@@ -213,6 +219,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{210, 106}, {203, 28}}</string>
<reference key="NSSuperview" ref="920946966"/>
+ <reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="767039719">
<int key="NSCellFlags">67108864</int>
@@ -241,6 +248,8 @@
</object>
</array>
<string key="NSFrameSize">{432, 138}</string>
+ <reference key="NSSuperview"/>
+ <reference key="NSWindow"/>
<string key="NSClassName">NSView</string>
</object>
<object class="NSUserDefaultsController" id="425440671">
@@ -249,7 +258,7 @@
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">saveConnectionAccessory</string>
@@ -567,14 +576,3476 @@
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
</object>
- <object class="IBClassDescriber" key="IBDocument.Classes"/>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <array class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <string key="superclassName">SPTableView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCopyTable</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">executeBundleItemForDataTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">executeBundleItemForDataTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCopyTable.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="affectedRowsText">id</string>
+ <string key="autohelpMenuItem">NSMenuItem</string>
+ <string key="autoindentMenuItem">NSMenuItem</string>
+ <string key="autopairMenuItem">NSMenuItem</string>
+ <string key="autouppercaseKeywordsMenuItem">NSMenuItem</string>
+ <string key="clearHistoryMenuItem">NSMenuItem</string>
+ <string key="commentCurrentQueryMenuItem">NSMenuItem</string>
+ <string key="commentLineOrSelectionMenuItem">NSMenuItem</string>
+ <string key="completionListMenuItem">NSMenuItem</string>
+ <string key="copyHistoryMenuItem">NSMenuItem</string>
+ <string key="customQueryScrollView">NSScrollView</string>
+ <string key="customQueryView">SPCopyTable</string>
+ <string key="editorFontMenuItem">NSMenuItem</string>
+ <string key="encodingPopUp">NSPopUpButton</string>
+ <string key="errorText">id</string>
+ <string key="errorTextScrollView">NSScrollView</string>
+ <string key="errorTextTitle">NSTextField</string>
+ <string key="helpNavigator">NSSegmentedControl</string>
+ <string key="helpSearchField">NSSearchField</string>
+ <string key="helpSearchFieldCell">NSSearchFieldCell</string>
+ <string key="helpTargetSelector">NSSegmentedControl</string>
+ <string key="helpWebView">WebView</string>
+ <string key="helpWebViewWindow">NSWindow</string>
+ <string key="nextHistoryMenuItem">NSMenuItem</string>
+ <string key="previousHistoryMenuItem">NSMenuItem</string>
+ <string key="queryEditorSplitView">SPSplitView</string>
+ <string key="queryFavoriteNameTextField">NSTextField</string>
+ <string key="queryFavoritesButton">id</string>
+ <string key="queryFavoritesSaveAllMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSaveAsMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSearchField">NSSearchField</string>
+ <string key="queryFavoritesSearchFieldView">id</string>
+ <string key="queryFavoritesSearchMenuItem">NSMenuItem</string>
+ <string key="queryFavoritesSheet">NSWindow</string>
+ <string key="queryHistoryButton">id</string>
+ <string key="queryHistorySearchField">NSSearchField</string>
+ <string key="queryHistorySearchFieldView">id</string>
+ <string key="queryHistorySearchMenuItem">NSMenuItem</string>
+ <string key="queryInfoButton">NSButton</string>
+ <string key="queryInfoPaneSplitView">SPSplitView</string>
+ <string key="runAllButton">id</string>
+ <string key="runPrimaryActionButton">id</string>
+ <string key="runPrimaryActionButtonAsSelection">id</string>
+ <string key="runPrimaryActionMenuItem">NSMenuItem</string>
+ <string key="runSecondaryActionMenuItem">NSMenuItem</string>
+ <string key="saveHistoryMenuItem">NSMenuItem</string>
+ <string key="saveQueryFavoriteButton">NSButton</string>
+ <string key="saveQueryFavoriteGlobal">NSButton</string>
+ <string key="shiftLeftMenuItem">NSMenuItem</string>
+ <string key="shiftRightMenuItem">NSMenuItem</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tablesListInstance">id</string>
+ <string key="textView">SPTextView</string>
+ <string key="valueSheet">id</string>
+ <string key="valueTextField">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="affectedRowsText">
+ <string key="name">affectedRowsText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autohelpMenuItem">
+ <string key="name">autohelpMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autoindentMenuItem">
+ <string key="name">autoindentMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autopairMenuItem">
+ <string key="name">autopairMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="autouppercaseKeywordsMenuItem">
+ <string key="name">autouppercaseKeywordsMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="clearHistoryMenuItem">
+ <string key="name">clearHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="commentCurrentQueryMenuItem">
+ <string key="name">commentCurrentQueryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="commentLineOrSelectionMenuItem">
+ <string key="name">commentLineOrSelectionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="completionListMenuItem">
+ <string key="name">completionListMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyHistoryMenuItem">
+ <string key="name">copyHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryScrollView">
+ <string key="name">customQueryScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryView">
+ <string key="name">customQueryView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editorFontMenuItem">
+ <string key="name">editorFontMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopUp">
+ <string key="name">encodingPopUp</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorText">
+ <string key="name">errorText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorTextScrollView">
+ <string key="name">errorTextScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="errorTextTitle">
+ <string key="name">errorTextTitle</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpNavigator">
+ <string key="name">helpNavigator</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpSearchField">
+ <string key="name">helpSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpSearchFieldCell">
+ <string key="name">helpSearchFieldCell</string>
+ <string key="candidateClassName">NSSearchFieldCell</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpTargetSelector">
+ <string key="name">helpTargetSelector</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpWebView">
+ <string key="name">helpWebView</string>
+ <string key="candidateClassName">WebView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="helpWebViewWindow">
+ <string key="name">helpWebViewWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="nextHistoryMenuItem">
+ <string key="name">nextHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="previousHistoryMenuItem">
+ <string key="name">previousHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryEditorSplitView">
+ <string key="name">queryEditorSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoriteNameTextField">
+ <string key="name">queryFavoriteNameTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesButton">
+ <string key="name">queryFavoritesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSaveAllMenuItem">
+ <string key="name">queryFavoritesSaveAllMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSaveAsMenuItem">
+ <string key="name">queryFavoritesSaveAsMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchField">
+ <string key="name">queryFavoritesSearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchFieldView">
+ <string key="name">queryFavoritesSearchFieldView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSearchMenuItem">
+ <string key="name">queryFavoritesSearchMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryFavoritesSheet">
+ <string key="name">queryFavoritesSheet</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistoryButton">
+ <string key="name">queryHistoryButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchField">
+ <string key="name">queryHistorySearchField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchFieldView">
+ <string key="name">queryHistorySearchFieldView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryHistorySearchMenuItem">
+ <string key="name">queryHistorySearchMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryInfoButton">
+ <string key="name">queryInfoButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryInfoPaneSplitView">
+ <string key="name">queryInfoPaneSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runAllButton">
+ <string key="name">runAllButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionButton">
+ <string key="name">runPrimaryActionButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionButtonAsSelection">
+ <string key="name">runPrimaryActionButtonAsSelection</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runPrimaryActionMenuItem">
+ <string key="name">runPrimaryActionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="runSecondaryActionMenuItem">
+ <string key="name">runSecondaryActionMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveHistoryMenuItem">
+ <string key="name">saveHistoryMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveQueryFavoriteButton">
+ <string key="name">saveQueryFavoriteButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveQueryFavoriteGlobal">
+ <string key="name">saveQueryFavoriteGlobal</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="shiftLeftMenuItem">
+ <string key="name">shiftLeftMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="shiftRightMenuItem">
+ <string key="name">shiftRightMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="textView">
+ <string key="name">textView</string>
+ <string key="candidateClassName">SPTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="valueSheet">
+ <string key="name">valueSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="valueTextField">
+ <string key="name">valueTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPCustomQuery</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="chooseQueryFavorite:">id</string>
+ <string key="chooseQueryHistory:">id</string>
+ <string key="clearQueryHistory:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyQueryHistory:">id</string>
+ <string key="filterQueryFavorites:">id</string>
+ <string key="filterQueryHistory:">id</string>
+ <string key="gearMenuItemSelected:">id</string>
+ <string key="helpSearchFindNextInPage:">id</string>
+ <string key="helpSearchFindPreviousInPage:">id</string>
+ <string key="helpSegmentDispatcher:">id</string>
+ <string key="helpSelectHelpTargetMySQL:">id</string>
+ <string key="helpSelectHelpTargetPage:">id</string>
+ <string key="helpSelectHelpTargetWeb:">id</string>
+ <string key="helpTargetDispatcher:">id</string>
+ <string key="runAllQueries:">id</string>
+ <string key="runPrimaryQueryAction:">id</string>
+ <string key="runSecondaryQueryAction:">id</string>
+ <string key="runSelectedQueries:">id</string>
+ <string key="saveQueryHistory:">id</string>
+ <string key="searchInDocForWebViewSelection:">id</string>
+ <string key="showCompletionList:">id</string>
+ <string key="showHelpForCurrentWord:">id</string>
+ <string key="showHelpForSearchString:">id</string>
+ <string key="showHelpForWebViewSelection:">id</string>
+ <string key="switchDefaultQueryAction:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="chooseQueryFavorite:">
+ <string key="name">chooseQueryFavorite:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseQueryHistory:">
+ <string key="name">chooseQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="clearQueryHistory:">
+ <string key="name">clearQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyQueryHistory:">
+ <string key="name">copyQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryFavorites:">
+ <string key="name">filterQueryFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterQueryHistory:">
+ <string key="name">filterQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="gearMenuItemSelected:">
+ <string key="name">gearMenuItemSelected:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindNextInPage:">
+ <string key="name">helpSearchFindNextInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSearchFindPreviousInPage:">
+ <string key="name">helpSearchFindPreviousInPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSegmentDispatcher:">
+ <string key="name">helpSegmentDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetMySQL:">
+ <string key="name">helpSelectHelpTargetMySQL:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetPage:">
+ <string key="name">helpSelectHelpTargetPage:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpSelectHelpTargetWeb:">
+ <string key="name">helpSelectHelpTargetWeb:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="helpTargetDispatcher:">
+ <string key="name">helpTargetDispatcher:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runAllQueries:">
+ <string key="name">runAllQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runPrimaryQueryAction:">
+ <string key="name">runPrimaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSecondaryQueryAction:">
+ <string key="name">runSecondaryQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="runSelectedQueries:">
+ <string key="name">runSelectedQueries:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveQueryHistory:">
+ <string key="name">saveQueryHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="searchInDocForWebViewSelection:">
+ <string key="name">searchInDocForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCompletionList:">
+ <string key="name">showCompletionList:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForCurrentWord:">
+ <string key="name">showHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForSearchString:">
+ <string key="name">showHelpForSearchString:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showHelpForWebViewSelection:">
+ <string key="name">showHelpForWebViewSelection:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="switchDefaultQueryAction:">
+ <string key="name">switchDefaultQueryAction:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPCustomQuery.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseData</string>
+ <string key="superclassName">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">closeErrorConnectionSheet:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">closeErrorConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPConnectionDelegate.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addDatabaseButton">id</string>
+ <string key="chooseDatabaseButton">id</string>
+ <string key="connectionErrorDialog">NSWindow</string>
+ <string key="contentViewSplitter">SPSplitView</string>
+ <string key="copyDatabaseButton">id</string>
+ <string key="copyDatabaseDataButton">NSButton</string>
+ <string key="copyDatabaseMessageField">id</string>
+ <string key="createTableSyntaxTextField">NSTextField</string>
+ <string key="createTableSyntaxTextView">NSTextView</string>
+ <string key="createTableSyntaxWindow">NSWindow</string>
+ <string key="customQueryInstance">id</string>
+ <string key="customQueryTextView">NSTextView</string>
+ <string key="databaseAlterCollationButton">NSPopUpButton</string>
+ <string key="databaseAlterEncodingButton">NSPopUpButton</string>
+ <string key="databaseAlterSheet">id</string>
+ <string key="databaseCollationButton">id</string>
+ <string key="databaseCopyNameField">id</string>
+ <string key="databaseCopySheet">id</string>
+ <string key="databaseDataInstance">id</string>
+ <string key="databaseEncodingButton">id</string>
+ <string key="databaseNameField">id</string>
+ <string key="databaseRenameNameField">id</string>
+ <string key="databaseRenameSheet">id</string>
+ <string key="databaseSheet">id</string>
+ <string key="dbTablesTableView">NSTableView</string>
+ <string key="documentActivityScrollView">NSScrollView</string>
+ <string key="encodingPopUp">NSPopUpButton</string>
+ <string key="exportControllerInstance">id</string>
+ <string key="extendedTableInfoInstance">id</string>
+ <string key="favoritesButton">id</string>
+ <string key="historyControl">id</string>
+ <string key="inputTextWindow">id</string>
+ <string key="inputTextWindowHeader">id</string>
+ <string key="inputTextWindowMessage">id</string>
+ <string key="inputTextWindowSecureTextField">id</string>
+ <string key="listFilterField">NSSearchField</string>
+ <string key="parentView">NSView</string>
+ <string key="queryProgressBar">NSProgressIndicator</string>
+ <string key="renameDatabaseButton">id</string>
+ <string key="renameDatabaseMessageField">id</string>
+ <string key="saveConnectionAccessory">id</string>
+ <string key="saveConnectionAutoConnect">NSButton</string>
+ <string key="saveConnectionEncrypt">NSButton</string>
+ <string key="saveConnectionEncryptString">NSSecureTextField</string>
+ <string key="saveConnectionIncludeData">NSButton</string>
+ <string key="saveConnectionIncludeQuery">NSButton</string>
+ <string key="saveConnectionSavePassword">NSButton</string>
+ <string key="saveConnectionSavePasswordAlert">id</string>
+ <string key="spHistoryControllerInstance">id</string>
+ <string key="statusTableAccessoryView">id</string>
+ <string key="statusTableCopyChecksum">id</string>
+ <string key="statusTableView">id</string>
+ <string key="tableContentInstance">SPTableContent</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDumpInstance">id</string>
+ <string key="tableInfoScrollView">NSScrollView</string>
+ <string key="tableInfoTable">NSTableView</string>
+ <string key="tableRelationsInstance">id</string>
+ <string key="tableSourceInstance">SPTableStructure</string>
+ <string key="tableTabView">NSTabView</string>
+ <string key="tableTriggersInstance">id</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ <string key="taskCancelButton">NSButton</string>
+ <string key="taskDescriptionText">id</string>
+ <string key="taskProgressIndicator">id</string>
+ <string key="taskProgressLayer">NSBox</string>
+ <string key="titleAccessoryView">id</string>
+ <string key="titleImageView">id</string>
+ <string key="titleStringView">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addDatabaseButton">
+ <string key="name">addDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="chooseDatabaseButton">
+ <string key="name">chooseDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="connectionErrorDialog">
+ <string key="name">connectionErrorDialog</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentViewSplitter">
+ <string key="name">contentViewSplitter</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseButton">
+ <string key="name">copyDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseDataButton">
+ <string key="name">copyDatabaseDataButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyDatabaseMessageField">
+ <string key="name">copyDatabaseMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxTextField">
+ <string key="name">createTableSyntaxTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxTextView">
+ <string key="name">createTableSyntaxTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="createTableSyntaxWindow">
+ <string key="name">createTableSyntaxWindow</string>
+ <string key="candidateClassName">NSWindow</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryTextView">
+ <string key="name">customQueryTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterCollationButton">
+ <string key="name">databaseAlterCollationButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterEncodingButton">
+ <string key="name">databaseAlterEncodingButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseAlterSheet">
+ <string key="name">databaseAlterSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCollationButton">
+ <string key="name">databaseCollationButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCopyNameField">
+ <string key="name">databaseCopyNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseCopySheet">
+ <string key="name">databaseCopySheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseEncodingButton">
+ <string key="name">databaseEncodingButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseNameField">
+ <string key="name">databaseNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseRenameNameField">
+ <string key="name">databaseRenameNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseRenameSheet">
+ <string key="name">databaseRenameSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseSheet">
+ <string key="name">databaseSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="dbTablesTableView">
+ <string key="name">dbTablesTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="documentActivityScrollView">
+ <string key="name">documentActivityScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopUp">
+ <string key="name">encodingPopUp</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="exportControllerInstance">
+ <string key="name">exportControllerInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="favoritesButton">
+ <string key="name">favoritesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="historyControl">
+ <string key="name">historyControl</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindow">
+ <string key="name">inputTextWindow</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowHeader">
+ <string key="name">inputTextWindowHeader</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowMessage">
+ <string key="name">inputTextWindowMessage</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="inputTextWindowSecureTextField">
+ <string key="name">inputTextWindowSecureTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="listFilterField">
+ <string key="name">listFilterField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="parentView">
+ <string key="name">parentView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="queryProgressBar">
+ <string key="name">queryProgressBar</string>
+ <string key="candidateClassName">NSProgressIndicator</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameDatabaseButton">
+ <string key="name">renameDatabaseButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameDatabaseMessageField">
+ <string key="name">renameDatabaseMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionAccessory">
+ <string key="name">saveConnectionAccessory</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionAutoConnect">
+ <string key="name">saveConnectionAutoConnect</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionEncrypt">
+ <string key="name">saveConnectionEncrypt</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionEncryptString">
+ <string key="name">saveConnectionEncryptString</string>
+ <string key="candidateClassName">NSSecureTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionIncludeData">
+ <string key="name">saveConnectionIncludeData</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionIncludeQuery">
+ <string key="name">saveConnectionIncludeQuery</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionSavePassword">
+ <string key="name">saveConnectionSavePassword</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="saveConnectionSavePasswordAlert">
+ <string key="name">saveConnectionSavePasswordAlert</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableAccessoryView">
+ <string key="name">statusTableAccessoryView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableCopyChecksum">
+ <string key="name">statusTableCopyChecksum</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="statusTableView">
+ <string key="name">statusTableView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentInstance">
+ <string key="name">tableContentInstance</string>
+ <string key="candidateClassName">SPTableContent</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDumpInstance">
+ <string key="name">tableDumpInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoScrollView">
+ <string key="name">tableInfoScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoTable">
+ <string key="name">tableInfoTable</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRelationsInstance">
+ <string key="name">tableRelationsInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTabView">
+ <string key="name">tableTabView</string>
+ <string key="candidateClassName">NSTabView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTriggersInstance">
+ <string key="name">tableTriggersInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskCancelButton">
+ <string key="name">taskCancelButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskDescriptionText">
+ <string key="name">taskDescriptionText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskProgressIndicator">
+ <string key="name">taskProgressIndicator</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="taskProgressLayer">
+ <string key="name">taskProgressLayer</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleAccessoryView">
+ <string key="name">titleAccessoryView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleImageView">
+ <string key="name">titleImageView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="titleStringView">
+ <string key="name">titleStringView</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addConnectionToFavorites:">id</string>
+ <string key="addDatabase:">id</string>
+ <string key="alterDatabase:">id</string>
+ <string key="analyzeTable:">id</string>
+ <string key="backForwardInHistory:">id</string>
+ <string key="cancelTask:">id</string>
+ <string key="checkTable:">id</string>
+ <string key="checksumTable:">id</string>
+ <string key="chooseDatabase:">id</string>
+ <string key="chooseEncoding:">id</string>
+ <string key="closePanelSheet:">id</string>
+ <string key="closePasswordSheet:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyChecksumFromSheet:">id</string>
+ <string key="copyCreateTableSyntax:">id</string>
+ <string key="copyCreateTableSyntaxFromSheet:">id</string>
+ <string key="copyDatabase:">id</string>
+ <string key="export:">id</string>
+ <string key="exportSelectedTablesAs:">id</string>
+ <string key="flushTable:">id</string>
+ <string key="focusOnTableContentFilter:">id</string>
+ <string key="import:">id</string>
+ <string key="importFromClipboard:">id</string>
+ <string key="makeTableListFilterHaveFocus:">id</string>
+ <string key="openCurrentConnectionInNewWindow:">id</string>
+ <string key="openDatabaseInNewTab:">id</string>
+ <string key="optimizeTable:">id</string>
+ <string key="refreshTables:">id</string>
+ <string key="removeDatabase:">id</string>
+ <string key="renameDatabase:">id</string>
+ <string key="repairTable:">id</string>
+ <string key="saveConnectionSheet:">id</string>
+ <string key="saveCreateSyntax:">id</string>
+ <string key="setDatabases:">id</string>
+ <string key="showCreateTableSyntax:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="showGotoDatabase:">id</string>
+ <string key="showMySQLHelp:">id</string>
+ <string key="showNavigator:">id</string>
+ <string key="showServerProcesses:">id</string>
+ <string key="showServerVariables:">id</string>
+ <string key="showUserManager:">id</string>
+ <string key="toggleNavigator:">id</string>
+ <string key="validateSaveConnectionAccessory:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addConnectionToFavorites:">
+ <string key="name">addConnectionToFavorites:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addDatabase:">
+ <string key="name">addDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="alterDatabase:">
+ <string key="name">alterDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="analyzeTable:">
+ <string key="name">analyzeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="backForwardInHistory:">
+ <string key="name">backForwardInHistory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="cancelTask:">
+ <string key="name">cancelTask:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkTable:">
+ <string key="name">checkTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checksumTable:">
+ <string key="name">checksumTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseDatabase:">
+ <string key="name">chooseDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseEncoding:">
+ <string key="name">chooseEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePanelSheet:">
+ <string key="name">closePanelSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closePasswordSheet:">
+ <string key="name">closePasswordSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyChecksumFromSheet:">
+ <string key="name">copyChecksumFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntax:">
+ <string key="name">copyCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyCreateTableSyntaxFromSheet:">
+ <string key="name">copyCreateTableSyntaxFromSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyDatabase:">
+ <string key="name">copyDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="export:">
+ <string key="name">export:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="exportSelectedTablesAs:">
+ <string key="name">exportSelectedTablesAs:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="flushTable:">
+ <string key="name">flushTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="focusOnTableContentFilter:">
+ <string key="name">focusOnTableContentFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="import:">
+ <string key="name">import:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="importFromClipboard:">
+ <string key="name">importFromClipboard:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="makeTableListFilterHaveFocus:">
+ <string key="name">makeTableListFilterHaveFocus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openCurrentConnectionInNewWindow:">
+ <string key="name">openCurrentConnectionInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openDatabaseInNewTab:">
+ <string key="name">openDatabaseInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="optimizeTable:">
+ <string key="name">optimizeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refreshTables:">
+ <string key="name">refreshTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeDatabase:">
+ <string key="name">removeDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameDatabase:">
+ <string key="name">renameDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="repairTable:">
+ <string key="name">repairTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveConnectionSheet:">
+ <string key="name">saveConnectionSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="saveCreateSyntax:">
+ <string key="name">saveCreateSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDatabases:">
+ <string key="name">setDatabases:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showCreateTableSyntax:">
+ <string key="name">showCreateTableSyntax:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showGotoDatabase:">
+ <string key="name">showGotoDatabase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelp:">
+ <string key="name">showMySQLHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showNavigator:">
+ <string key="name">showNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerProcesses:">
+ <string key="name">showServerProcesses:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showServerVariables:">
+ <string key="name">showServerVariables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showUserManager:">
+ <string key="name">showUserManager:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNavigator:">
+ <string key="name">toggleNavigator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="validateSaveConnectionAccessory:">
+ <string key="name">validateSaveConnectionAccessory:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseDocument.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="viewContent:">id</string>
+ <string key="viewQuery:">id</string>
+ <string key="viewRelations:">id</string>
+ <string key="viewStatus:">id</string>
+ <string key="viewStructure:">id</string>
+ <string key="viewTriggers:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="viewContent:">
+ <string key="name">viewContent:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewQuery:">
+ <string key="name">viewQuery:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewRelations:">
+ <string key="name">viewRelations:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStatus:">
+ <string key="name">viewStatus:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewStructure:">
+ <string key="name">viewStructure:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="viewTriggers:">
+ <string key="name">viewTriggers:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPDatabaseViewController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPDatabaseDocument</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">printDocument:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">printDocument:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPPrintController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="resetAutoIncrementResetButton">id</string>
+ <string key="tableCollationPopUpButton">NSPopUpButton</string>
+ <string key="tableCommentsTextView">NSTextView</string>
+ <string key="tableCreateSyntaxTextView">NSTextView</string>
+ <string key="tableCreatedAt">NSTextField</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDataSize">NSTextField</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tableEncodingPopUpButton">NSPopUpButton</string>
+ <string key="tableIndexSize">NSTextField</string>
+ <string key="tableMaxDataSize">NSTextField</string>
+ <string key="tableRowAutoIncrement">NSTextField</string>
+ <string key="tableRowAvgLength">NSTextField</string>
+ <string key="tableRowFormat">NSTextField</string>
+ <string key="tableRowNumber">NSTextField</string>
+ <string key="tableSizeFree">NSTextField</string>
+ <string key="tableSourceInstance">id</string>
+ <string key="tableTypePopUpButton">NSPopUpButton</string>
+ <string key="tableUpdatedAt">NSTextField</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementResetButton">
+ <string key="name">resetAutoIncrementResetButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCollationPopUpButton">
+ <string key="name">tableCollationPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCommentsTextView">
+ <string key="name">tableCommentsTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCreateSyntaxTextView">
+ <string key="name">tableCreateSyntaxTextView</string>
+ <string key="candidateClassName">NSTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCreatedAt">
+ <string key="name">tableCreatedAt</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataSize">
+ <string key="name">tableDataSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableEncodingPopUpButton">
+ <string key="name">tableEncodingPopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableIndexSize">
+ <string key="name">tableIndexSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableMaxDataSize">
+ <string key="name">tableMaxDataSize</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowAutoIncrement">
+ <string key="name">tableRowAutoIncrement</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowAvgLength">
+ <string key="name">tableRowAvgLength</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowFormat">
+ <string key="name">tableRowFormat</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableRowNumber">
+ <string key="name">tableRowNumber</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSizeFree">
+ <string key="name">tableSizeFree</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTypePopUpButton">
+ <string key="name">tableTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableUpdatedAt">
+ <string key="name">tableUpdatedAt</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPExtendedTableInfo</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="reloadTable:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="resetAutoIncrementValueWasEdited:">id</string>
+ <string key="updateTableCollation:">id</string>
+ <string key="updateTableEncoding:">id</string>
+ <string key="updateTableType:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrementValueWasEdited:">
+ <string key="name">resetAutoIncrementValueWasEdited:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableCollation:">
+ <string key="name">updateTableCollation:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableEncoding:">
+ <string key="name">updateTableEncoding:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTableType:">
+ <string key="name">updateTableType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPExtendedTableInfo.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <string key="superclassName">NSObject</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="historyControl">NSSegmentedControl</string>
+ <string key="theDocument">SPDatabaseDocument</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="historyControl">
+ <string key="name">historyControl</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="theDocument">
+ <string key="name">theDocument</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPHistoryController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <string key="NS.object.0">NSSegmentedControl</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">historyControlClicked:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">historyControlClicked:</string>
+ <string key="candidateClassName">NSSegmentedControl</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPHistoryController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <string key="superclassName">NSWindowController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addIndexButton">NSButton</string>
+ <string key="addIndexedColumnButton">NSButton</string>
+ <string key="anchoredButtonBar">NSBox</string>
+ <string key="confirmAddIndexButton">NSButton</string>
+ <string key="dbDocument">SPDatabaseDocument</string>
+ <string key="indexAdvancedOptionsView">NSView</string>
+ <string key="indexAdvancedOptionsViewButton">NSButton</string>
+ <string key="indexAdvancedOptionsViewLabelButton">NSButton</string>
+ <string key="indexKeyBlockSizeTextField">NSTextField</string>
+ <string key="indexNameLabel">NSTextField</string>
+ <string key="indexNameTextField">NSTextField</string>
+ <string key="indexSizeTableColumn">NSTableColumn</string>
+ <string key="indexStorageTypePopUpButton">NSPopUpButton</string>
+ <string key="indexTypeLabel">NSTextField</string>
+ <string key="indexTypePopUpButton">NSPopUpButton</string>
+ <string key="indexedColumnsScrollView">NSScrollView</string>
+ <string key="indexedColumnsTableView">NSTableView</string>
+ <string key="indexesTableView">SPTableView</string>
+ <string key="removeIndexButton">NSButton</string>
+ <string key="removeIndexedColumnButton">NSButton</string>
+ <string key="tableData">SPTableData</string>
+ <string key="tableStructure">SPTableStructure</string>
+ <string key="tablesList">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addIndexButton">
+ <string key="name">addIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addIndexedColumnButton">
+ <string key="name">addIndexedColumnButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="anchoredButtonBar">
+ <string key="name">anchoredButtonBar</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="confirmAddIndexButton">
+ <string key="name">confirmAddIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="dbDocument">
+ <string key="name">dbDocument</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsView">
+ <string key="name">indexAdvancedOptionsView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsViewButton">
+ <string key="name">indexAdvancedOptionsViewButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexAdvancedOptionsViewLabelButton">
+ <string key="name">indexAdvancedOptionsViewLabelButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexKeyBlockSizeTextField">
+ <string key="name">indexKeyBlockSizeTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexNameLabel">
+ <string key="name">indexNameLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexNameTextField">
+ <string key="name">indexNameTextField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexSizeTableColumn">
+ <string key="name">indexSizeTableColumn</string>
+ <string key="candidateClassName">NSTableColumn</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexStorageTypePopUpButton">
+ <string key="name">indexStorageTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexTypeLabel">
+ <string key="name">indexTypeLabel</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexTypePopUpButton">
+ <string key="name">indexTypePopUpButton</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexedColumnsScrollView">
+ <string key="name">indexedColumnsScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexedColumnsTableView">
+ <string key="name">indexedColumnsTableView</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesTableView">
+ <string key="name">indexesTableView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexButton">
+ <string key="name">removeIndexButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexedColumnButton">
+ <string key="name">removeIndexedColumnButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableData">
+ <string key="name">tableData</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableStructure">
+ <string key="name">tableStructure</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesList">
+ <string key="name">tablesList</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPIndexesController</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addIndex:">id</string>
+ <string key="addIndexedField:">id</string>
+ <string key="chooseIndexType:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="removeIndex:">id</string>
+ <string key="removeIndexedField:">id</string>
+ <string key="toggleAdvancedIndexOptionsView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addIndex:">
+ <string key="name">addIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addIndexedField:">
+ <string key="name">addIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="chooseIndexType:">
+ <string key="name">chooseIndexType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndex:">
+ <string key="name">removeIndex:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeIndexedField:">
+ <string key="name">removeIndexedField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleAdvancedIndexOptionsView:">
+ <string key="name">toggleAdvancedIndexOptionsView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPIndexesController.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <string key="superclassName">NSSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="additionalDragHandleView">NSView</string>
+ <string key="collapseToggleButton">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="additionalDragHandleView">
+ <string key="name">additionalDragHandleView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="collapseToggleButton">
+ <string key="name">collapseToggleButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addButton">id</string>
+ <string key="argumentField">id</string>
+ <string key="betweenTextField">id</string>
+ <string key="compareField">id</string>
+ <string key="contentSplitView">SPSplitView</string>
+ <string key="contentViewPane">NSView</string>
+ <string key="countText">id</string>
+ <string key="duplicateButton">id</string>
+ <string key="fieldField">NSPopUpButton</string>
+ <string key="filterButton">id</string>
+ <string key="filterTableClearButton">NSButton</string>
+ <string key="filterTableDistinctCheckbox">NSButton</string>
+ <string key="filterTableFilterButton">NSButton</string>
+ <string key="filterTableLiveSearchCheckbox">NSButton</string>
+ <string key="filterTableNegateCheckbox">NSButton</string>
+ <string key="filterTableQueryTitle">NSTextField</string>
+ <string key="filterTableSearchAllFields">NSButton</string>
+ <string key="filterTableSetDefaultOperatorSheet">NSPanel</string>
+ <string key="filterTableSetDefaultOperatorValue">NSComboBox</string>
+ <string key="filterTableSplitView">SPSplitView</string>
+ <string key="filterTableView">SPCopyTable</string>
+ <string key="filterTableWhereClause">SPTextView</string>
+ <string key="filterTableWindow">NSPanel</string>
+ <string key="firstBetweenField">id</string>
+ <string key="limitRowsButton">id</string>
+ <string key="limitRowsField">id</string>
+ <string key="limitRowsStepper">id</string>
+ <string key="multipleLineEditingButton">NSButton</string>
+ <string key="paginationBox">NSBox</string>
+ <string key="paginationButton">NSButton</string>
+ <string key="paginationGoButton">NSButton</string>
+ <string key="paginationNextButton">NSButton</string>
+ <string key="paginationPageField">NSTextField</string>
+ <string key="paginationPageStepper">NSStepper</string>
+ <string key="paginationPreviousButton">NSButton</string>
+ <string key="paginationView">NSView</string>
+ <string key="paginationViewController">NSViewController</string>
+ <string key="reloadButton">id</string>
+ <string key="removeButton">id</string>
+ <string key="secondBetweenField">id</string>
+ <string key="spHistoryControllerInstance">SPHistoryController</string>
+ <string key="tableContentView">SPCopyTable</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableInfoInstance">SPTableInfo</string>
+ <string key="tableSourceInstance">id</string>
+ <string key="tablesListInstance">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addButton">
+ <string key="name">addButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="argumentField">
+ <string key="name">argumentField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="betweenTextField">
+ <string key="name">betweenTextField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="compareField">
+ <string key="name">compareField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentSplitView">
+ <string key="name">contentSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="contentViewPane">
+ <string key="name">contentViewPane</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="countText">
+ <string key="name">countText</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateButton">
+ <string key="name">duplicateButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="fieldField">
+ <string key="name">fieldField</string>
+ <string key="candidateClassName">NSPopUpButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterButton">
+ <string key="name">filterButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableClearButton">
+ <string key="name">filterTableClearButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableDistinctCheckbox">
+ <string key="name">filterTableDistinctCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableFilterButton">
+ <string key="name">filterTableFilterButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableLiveSearchCheckbox">
+ <string key="name">filterTableLiveSearchCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableNegateCheckbox">
+ <string key="name">filterTableNegateCheckbox</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableQueryTitle">
+ <string key="name">filterTableQueryTitle</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSearchAllFields">
+ <string key="name">filterTableSearchAllFields</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSetDefaultOperatorSheet">
+ <string key="name">filterTableSetDefaultOperatorSheet</string>
+ <string key="candidateClassName">NSPanel</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSetDefaultOperatorValue">
+ <string key="name">filterTableSetDefaultOperatorValue</string>
+ <string key="candidateClassName">NSComboBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableSplitView">
+ <string key="name">filterTableSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableView">
+ <string key="name">filterTableView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableWhereClause">
+ <string key="name">filterTableWhereClause</string>
+ <string key="candidateClassName">SPTextView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="filterTableWindow">
+ <string key="name">filterTableWindow</string>
+ <string key="candidateClassName">NSPanel</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="firstBetweenField">
+ <string key="name">firstBetweenField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsButton">
+ <string key="name">limitRowsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsField">
+ <string key="name">limitRowsField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="limitRowsStepper">
+ <string key="name">limitRowsStepper</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="multipleLineEditingButton">
+ <string key="name">multipleLineEditingButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationBox">
+ <string key="name">paginationBox</string>
+ <string key="candidateClassName">NSBox</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationButton">
+ <string key="name">paginationButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationGoButton">
+ <string key="name">paginationGoButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationNextButton">
+ <string key="name">paginationNextButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPageField">
+ <string key="name">paginationPageField</string>
+ <string key="candidateClassName">NSTextField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPageStepper">
+ <string key="name">paginationPageStepper</string>
+ <string key="candidateClassName">NSStepper</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationPreviousButton">
+ <string key="name">paginationPreviousButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationView">
+ <string key="name">paginationView</string>
+ <string key="candidateClassName">NSView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="paginationViewController">
+ <string key="name">paginationViewController</string>
+ <string key="candidateClassName">NSViewController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="reloadButton">
+ <string key="name">reloadButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeButton">
+ <string key="name">removeButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="secondBetweenField">
+ <string key="name">secondBetweenField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">SPHistoryController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentView">
+ <string key="name">tableContentView</string>
+ <string key="candidateClassName">SPCopyTable</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">SPTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableContent</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addRow:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateRow:">id</string>
+ <string key="filterTable:">id</string>
+ <string key="navigatePaginationFromButton:">id</string>
+ <string key="reloadTable:">id</string>
+ <string key="removeRow:">id</string>
+ <string key="setCompareTypes:">id</string>
+ <string key="setDefaultOperator:">id</string>
+ <string key="showDefaultOperaterHelp:">id</string>
+ <string key="showFilterTable:">id</string>
+ <string key="tableFilterClear:">id</string>
+ <string key="toggleDistinctSelect:">id</string>
+ <string key="toggleFilterField:">id</string>
+ <string key="toggleLookAllFieldsMode:">id</string>
+ <string key="toggleNegateClause:">id</string>
+ <string key="togglePagination:">NSButton</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addRow:">
+ <string key="name">addRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateRow:">
+ <string key="name">duplicateRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="filterTable:">
+ <string key="name">filterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="navigatePaginationFromButton:">
+ <string key="name">navigatePaginationFromButton:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="reloadTable:">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeRow:">
+ <string key="name">removeRow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setCompareTypes:">
+ <string key="name">setCompareTypes:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="setDefaultOperator:">
+ <string key="name">setDefaultOperator:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showDefaultOperaterHelp:">
+ <string key="name">showDefaultOperaterHelp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showFilterTable:">
+ <string key="name">showFilterTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableFilterClear:">
+ <string key="name">tableFilterClear:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleDistinctSelect:">
+ <string key="name">toggleDistinctSelect:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleFilterField:">
+ <string key="name">toggleFilterField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleLookAllFieldsMode:">
+ <string key="name">toggleLookAllFieldsMode:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleNegateClause:">
+ <string key="name">toggleNegateClause:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePagination:">
+ <string key="name">togglePagination:</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableContent.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableData</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListInstance">
+ <string key="name">tableListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableData.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableInfo</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="activitiesTable">NSTableView</string>
+ <string key="infoTable">id</string>
+ <string key="tableDataInstance">id</string>
+ <string key="tableDocumentInstance">id</string>
+ <string key="tableInfoScrollView">NSScrollView</string>
+ <string key="tableList">id</string>
+ <string key="tableListInstance">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="activitiesTable">
+ <string key="name">activitiesTable</string>
+ <string key="candidateClassName">NSTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="infoTable">
+ <string key="name">infoTable</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoScrollView">
+ <string key="name">tableInfoScrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableList">
+ <string key="name">tableList</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListInstance">
+ <string key="name">tableListInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableInfo.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addFieldButton">id</string>
+ <string key="addIndexButton">id</string>
+ <string key="chooseKeyButton">id</string>
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="duplicateFieldButton">id</string>
+ <string key="editTableButton">id</string>
+ <string key="encodingPopupCell">NSPopUpButtonCell</string>
+ <string key="extendedTableInfoInstance">SPExtendedTableInfo</string>
+ <string key="indexesController">SPIndexesController</string>
+ <string key="indexesShowButton">NSButton</string>
+ <string key="indexesTableView">SPTableView</string>
+ <string key="keySheet">id</string>
+ <string key="refreshIndexesButton">id</string>
+ <string key="reloadFieldsButton">id</string>
+ <string key="removeFieldButton">id</string>
+ <string key="removeIndexButton">id</string>
+ <string key="resetAutoIncrementLine">id</string>
+ <string key="resetAutoIncrementSheet">id</string>
+ <string key="resetAutoIncrementValue">id</string>
+ <string key="structureGrabber">id</string>
+ <string key="tableDataInstance">SPTableData</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableInfoInstance">SPTableInfo</string>
+ <string key="tableSourceView">SPTableView</string>
+ <string key="tablesIndexesSplitView">NSSplitView</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ <string key="viewColumnsMenu">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addFieldButton">
+ <string key="name">addFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="addIndexButton">
+ <string key="name">addIndexButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="chooseKeyButton">
+ <string key="name">chooseKeyButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateFieldButton">
+ <string key="name">duplicateFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="editTableButton">
+ <string key="name">editTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="encodingPopupCell">
+ <string key="name">encodingPopupCell</string>
+ <string key="candidateClassName">NSPopUpButtonCell</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">SPExtendedTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesController">
+ <string key="name">indexesController</string>
+ <string key="candidateClassName">SPIndexesController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesShowButton">
+ <string key="name">indexesShowButton</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="indexesTableView">
+ <string key="name">indexesTableView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="keySheet">
+ <string key="name">keySheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="refreshIndexesButton">
+ <string key="name">refreshIndexesButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="reloadFieldsButton">
+ <string key="name">reloadFieldsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeFieldButton">
+ <string key="name">removeFieldButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeIndexButton">
+ <string key="name">removeIndexButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementLine">
+ <string key="name">resetAutoIncrementLine</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementSheet">
+ <string key="name">resetAutoIncrementSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="resetAutoIncrementValue">
+ <string key="name">resetAutoIncrementValue</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="structureGrabber">
+ <string key="name">structureGrabber</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">SPTableData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">SPTableInfo</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceView">
+ <string key="name">tableSourceView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesIndexesSplitView">
+ <string key="name">tablesIndexesSplitView</string>
+ <string key="candidateClassName">NSSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="viewColumnsMenu">
+ <string key="name">viewColumnsMenu</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addField:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="duplicateField:">id</string>
+ <string key="removeField:">id</string>
+ <string key="resetAutoIncrement:">id</string>
+ <string key="showOptimizedFieldType:">id</string>
+ <string key="toggleColumnView:">NSMenuItem</string>
+ <string key="unhideIndexesView:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addField:">
+ <string key="name">addField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="duplicateField:">
+ <string key="name">duplicateField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeField:">
+ <string key="name">removeField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="resetAutoIncrement:">
+ <string key="name">resetAutoIncrement:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showOptimizedFieldType:">
+ <string key="name">showOptimizedFieldType:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="toggleColumnView:">
+ <string key="name">toggleColumnView:</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBActionInfo" key="unhideIndexesView:">
+ <string key="name">unhideIndexesView:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructure.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableStructure</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">reloadTable:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">reloadTable:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">reloadTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableStructureLoading.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTableView</string>
+ <string key="superclassName">NSTableView</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTableView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTablesList</string>
+ <string key="superclassName">NSObject</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="addTableButton">id</string>
+ <string key="copyCreateSyntaxContextMenuItem">NSMenuItem</string>
+ <string key="copyCreateSyntaxMenuItem">NSMenuItem</string>
+ <string key="copyTableButton">id</string>
+ <string key="copyTableContentSwitch">NSButton</string>
+ <string key="copyTableMessageField">id</string>
+ <string key="copyTableNameField">id</string>
+ <string key="copyTableSheet">id</string>
+ <string key="customQueryInstance">id</string>
+ <string key="databaseDataInstance">SPDatabaseData</string>
+ <string key="duplicateTableContextMenuItem">NSMenuItem</string>
+ <string key="duplicateTableMenuItem">NSMenuItem</string>
+ <string key="extendedTableInfoInstance">id</string>
+ <string key="listFilterField">NSSearchField</string>
+ <string key="openTableInNewTabContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewTabMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowContextMenuItem">NSMenuItem</string>
+ <string key="openTableInNewWindowMenuItem">NSMenuItem</string>
+ <string key="removeTableContextMenuItem">NSMenuItem</string>
+ <string key="removeTableMenuItem">NSMenuItem</string>
+ <string key="renameTableContextMenuItem">NSMenuItem</string>
+ <string key="renameTableMenuItem">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem2">NSMenuItem</string>
+ <string key="separatorTableContextMenuItem3">NSMenuItem</string>
+ <string key="separatorTableMenuItem">NSMenuItem</string>
+ <string key="separatorTableMenuItem2">NSMenuItem</string>
+ <string key="separatorTableMenuItem3">NSMenuItem</string>
+ <string key="showCreateSyntaxContextMenuItem">NSMenuItem</string>
+ <string key="showCreateSyntaxMenuItem">NSMenuItem</string>
+ <string key="spHistoryControllerInstance">SPHistoryController</string>
+ <string key="tableCollationButton">id</string>
+ <string key="tableContentInstance">SPTableContent</string>
+ <string key="tableDataInstance">id</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tableDumpInstance">id</string>
+ <string key="tableEncodingButton">id</string>
+ <string key="tableInfoInstance">id</string>
+ <string key="tableListFilterSplitView">SPSplitView</string>
+ <string key="tableListSplitView">SPSplitView</string>
+ <string key="tableNameField">id</string>
+ <string key="tableSheet">id</string>
+ <string key="tableSourceInstance">SPTableStructure</string>
+ <string key="tableTriggersInstance">id</string>
+ <string key="tableTypeButton">id</string>
+ <string key="tablesListView">SPTableView</string>
+ <string key="toolbarActionsButton">id</string>
+ <string key="toolbarAddButton">id</string>
+ <string key="toolbarReloadButton">id</string>
+ <string key="truncateTableButton">id</string>
+ <string key="truncateTableContextMenuItem">NSMenuItem</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="addTableButton">
+ <string key="name">addTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyCreateSyntaxContextMenuItem">
+ <string key="name">copyCreateSyntaxContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyCreateSyntaxMenuItem">
+ <string key="name">copyCreateSyntaxMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableButton">
+ <string key="name">copyTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableContentSwitch">
+ <string key="name">copyTableContentSwitch</string>
+ <string key="candidateClassName">NSButton</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableMessageField">
+ <string key="name">copyTableMessageField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableNameField">
+ <string key="name">copyTableNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="copyTableSheet">
+ <string key="name">copyTableSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="databaseDataInstance">
+ <string key="name">databaseDataInstance</string>
+ <string key="candidateClassName">SPDatabaseData</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateTableContextMenuItem">
+ <string key="name">duplicateTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="duplicateTableMenuItem">
+ <string key="name">duplicateTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="extendedTableInfoInstance">
+ <string key="name">extendedTableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="listFilterField">
+ <string key="name">listFilterField</string>
+ <string key="candidateClassName">NSSearchField</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewTabContextMenuItem">
+ <string key="name">openTableInNewTabContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewTabMenuItem">
+ <string key="name">openTableInNewTabMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowContextMenuItem">
+ <string key="name">openTableInNewWindowContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="openTableInNewWindowMenuItem">
+ <string key="name">openTableInNewWindowMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeTableContextMenuItem">
+ <string key="name">removeTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="removeTableMenuItem">
+ <string key="name">removeTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameTableContextMenuItem">
+ <string key="name">renameTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="renameTableMenuItem">
+ <string key="name">renameTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem">
+ <string key="name">separatorTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem2">
+ <string key="name">separatorTableContextMenuItem2</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableContextMenuItem3">
+ <string key="name">separatorTableContextMenuItem3</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem">
+ <string key="name">separatorTableMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem2">
+ <string key="name">separatorTableMenuItem2</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="separatorTableMenuItem3">
+ <string key="name">separatorTableMenuItem3</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="showCreateSyntaxContextMenuItem">
+ <string key="name">showCreateSyntaxContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="showCreateSyntaxMenuItem">
+ <string key="name">showCreateSyntaxMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="spHistoryControllerInstance">
+ <string key="name">spHistoryControllerInstance</string>
+ <string key="candidateClassName">SPHistoryController</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableCollationButton">
+ <string key="name">tableCollationButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableContentInstance">
+ <string key="name">tableContentInstance</string>
+ <string key="candidateClassName">SPTableContent</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDataInstance">
+ <string key="name">tableDataInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDumpInstance">
+ <string key="name">tableDumpInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableEncodingButton">
+ <string key="name">tableEncodingButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableInfoInstance">
+ <string key="name">tableInfoInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListFilterSplitView">
+ <string key="name">tableListFilterSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableListSplitView">
+ <string key="name">tableListSplitView</string>
+ <string key="candidateClassName">SPSplitView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableNameField">
+ <string key="name">tableNameField</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSheet">
+ <string key="name">tableSheet</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableSourceInstance">
+ <string key="name">tableSourceInstance</string>
+ <string key="candidateClassName">SPTableStructure</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTriggersInstance">
+ <string key="name">tableTriggersInstance</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableTypeButton">
+ <string key="name">tableTypeButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListView">
+ <string key="name">tablesListView</string>
+ <string key="candidateClassName">SPTableView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarActionsButton">
+ <string key="name">toolbarActionsButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarAddButton">
+ <string key="name">toolbarAddButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="toolbarReloadButton">
+ <string key="name">toolbarReloadButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="truncateTableButton">
+ <string key="name">truncateTableButton</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="truncateTableContextMenuItem">
+ <string key="name">truncateTableContextMenuItem</string>
+ <string key="candidateClassName">NSMenuItem</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTablesList</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addTable:">id</string>
+ <string key="closeSheet:">id</string>
+ <string key="copyTable:">id</string>
+ <string key="openTableInNewTab:">id</string>
+ <string key="openTableInNewWindow:">id</string>
+ <string key="removeTable:">id</string>
+ <string key="renameTable:">id</string>
+ <string key="tableEncodingButtonChanged:">id</string>
+ <string key="togglePaneCollapse:">id</string>
+ <string key="truncateTable:">id</string>
+ <string key="updateFilter:">id</string>
+ <string key="updateTables:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addTable:">
+ <string key="name">addTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeSheet:">
+ <string key="name">closeSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="copyTable:">
+ <string key="name">copyTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewTab:">
+ <string key="name">openTableInNewTab:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="openTableInNewWindow:">
+ <string key="name">openTableInNewWindow:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeTable:">
+ <string key="name">removeTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="renameTable:">
+ <string key="name">renameTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="tableEncodingButtonChanged:">
+ <string key="name">tableEncodingButtonChanged:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="togglePaneCollapse:">
+ <string key="name">togglePaneCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="truncateTable:">
+ <string key="name">truncateTable:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateFilter:">
+ <string key="name">updateFilter:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="updateTables:">
+ <string key="name">updateTables:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTablesList.m</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <string key="superclassName">NSTextView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">showMySQLHelpForCurrentWord:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <dictionary class="NSMutableDictionary" key="outlets">
+ <string key="customQueryInstance">SPCustomQuery</string>
+ <string key="scrollView">NSScrollView</string>
+ <string key="tableDocumentInstance">SPDatabaseDocument</string>
+ <string key="tablesListInstance">SPTablesList</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
+ <object class="IBToOneOutletInfo" key="customQueryInstance">
+ <string key="name">customQueryInstance</string>
+ <string key="candidateClassName">SPCustomQuery</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="scrollView">
+ <string key="name">scrollView</string>
+ <string key="candidateClassName">NSScrollView</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tableDocumentInstance">
+ <string key="name">tableDocumentInstance</string>
+ <string key="candidateClassName">SPDatabaseDocument</string>
+ </object>
+ <object class="IBToOneOutletInfo" key="tablesListInstance">
+ <string key="name">tablesListInstance</string>
+ <string key="candidateClassName">SPTablesList</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="printDocument:">id</string>
+ <string key="showMySQLHelpForCurrentWord:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="printDocument:">
+ <string key="name">printDocument:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="showMySQLHelpForCurrentWord:">
+ <string key="name">showMySQLHelpForCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextView.m</string>
+ </object>
+ </object>
+ </array>
+ </object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/Interfaces/English.lproj/UserManagerView.xib b/Interfaces/English.lproj/UserManagerView.xib
index 7f0e0d6a..9939ae49 100644
--- a/Interfaces/English.lproj/UserManagerView.xib
+++ b/Interfaces/English.lproj/UserManagerView.xib
@@ -3,12 +3,12 @@
<data>
<int key="IBDocument.SystemTarget">1060</int>
<string key="IBDocument.SystemVersion">13F34</string>
- <string key="IBDocument.InterfaceBuilderVersion">5056</string>
+ <string key="IBDocument.InterfaceBuilderVersion">6254</string>
<string key="IBDocument.AppKitVersion">1265.21</string>
<string key="IBDocument.HIToolboxVersion">698.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string key="NS.object.0">5056</string>
+ <string key="NS.object.0">6254</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSArrayController</string>
@@ -123,7 +123,7 @@
<int key="NSCellFlags2">134217728</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport" id="746597359">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
@@ -178,7 +178,7 @@
<int key="NSCellFlags">67108928</int>
<int key="NSCellFlags2">134350848</int>
<object class="NSFont" key="NSSupport" id="26">
- <string key="NSName">.LucidaGrandeUI</string>
+ <bool key="IBIsSystemFont">YES</bool>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
@@ -2728,7 +2728,7 @@ IGVycm9ycyBiZWxvdyBiZWZvcmUgcHJvY2VlZGluZy4</string>
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<bool key="usesAutoincrementingIDs">NO</bool>
- <array class="NSMutableArray" key="connectionRecords">
+ <array key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">treeController</string>
@@ -5901,11 +5901,9 @@ IGVycm9ycyBiZWxvdyBiZWZvcmUgcHJvY2VlZGluZy4</string>
<string key="insertNULLvalue:">id</string>
<string key="moveSelectionLineDown:">id</string>
<string key="moveSelectionLineUp:">id</string>
- <string key="orderFrontSharingServicePicker:">id</string>
<string key="selectCurrentLine:">id</string>
<string key="selectCurrentWord:">id</string>
<string key="selectEnclosingBrackets:">id</string>
- <string key="toggleQuickLookPreviewPanel:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
@@ -5960,10 +5958,6 @@ IGVycm9ycyBiZWxvdyBiZWZvcmUgcHJvY2VlZGluZy4</string>
<string key="name">moveSelectionLineUp:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="orderFrontSharingServicePicker:">
- <string key="name">orderFrontSharingServicePicker:</string>
- <string key="candidateClassName">id</string>
- </object>
<object class="IBActionInfo" key="selectCurrentLine:">
<string key="name">selectCurrentLine:</string>
<string key="candidateClassName">id</string>
@@ -5976,14 +5970,101 @@ IGVycm9ycyBiZWxvdyBiZWZvcmUgcHJvY2VlZGluZy4</string>
<string key="name">selectEnclosingBrackets:</string>
<string key="candidateClassName">id</string>
</object>
- <object class="IBActionInfo" key="toggleQuickLookPreviewPanel:">
- <string key="name">toggleQuickLookPreviewPanel:</string>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="doDecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doDecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doPrecomposedStringWithCanonicalMapping:">id</string>
+ <string key="doPrecomposedStringWithCompatibilityMapping:">id</string>
+ <string key="doRemoveDiacritics:">id</string>
+ <string key="doSelectionLowerCase:">id</string>
+ <string key="doSelectionTitleCase:">id</string>
+ <string key="doSelectionUpperCase:">id</string>
+ <string key="doTranspose:">id</string>
+ <string key="executeBundleItemForInputField:">id</string>
+ <string key="insertNULLvalue:">id</string>
+ <string key="moveSelectionLineDown:">id</string>
+ <string key="moveSelectionLineUp:">id</string>
+ <string key="selectCurrentLine:">id</string>
+ <string key="selectCurrentWord:">id</string>
+ <string key="selectEnclosingBrackets:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="doDecomposedStringWithCanonicalMapping:">
+ <string key="name">doDecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doDecomposedStringWithCompatibilityMapping:">
+ <string key="name">doDecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCanonicalMapping:">
+ <string key="name">doPrecomposedStringWithCanonicalMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doPrecomposedStringWithCompatibilityMapping:">
+ <string key="name">doPrecomposedStringWithCompatibilityMapping:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doRemoveDiacritics:">
+ <string key="name">doRemoveDiacritics:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionLowerCase:">
+ <string key="name">doSelectionLowerCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionTitleCase:">
+ <string key="name">doSelectionTitleCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doSelectionUpperCase:">
+ <string key="name">doSelectionUpperCase:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doTranspose:">
+ <string key="name">doTranspose:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="executeBundleItemForInputField:">
+ <string key="name">executeBundleItemForInputField:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="insertNULLvalue:">
+ <string key="name">insertNULLvalue:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineDown:">
+ <string key="name">moveSelectionLineDown:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="moveSelectionLineUp:">
+ <string key="name">moveSelectionLineUp:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentLine:">
+ <string key="name">selectCurrentLine:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectCurrentWord:">
+ <string key="name">selectCurrentWord:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="selectEnclosingBrackets:">
+ <string key="name">selectEnclosingBrackets:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/NSTextView.h</string>
+ <string key="minorKey">../Source/SPTextViewAdditions.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -5991,7 +6072,7 @@ IGVycm9ycyBiZWxvdyBiZWZvcmUgcHJvY2VlZGluZy4</string>
<string key="superclassName">NSOutlineView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPOutlineView.h</string>
+ <string key="minorKey">../Source/SPOutlineView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -6024,7 +6105,25 @@ IGVycm9ycyBiZWxvdyBiZWZvcmUgcHJvY2VlZGluZy4</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPSplitView.h</string>
+ <string key="minorKey">../Source/SPSplitView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPSplitView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="NSMutableDictionary" key="actionInfosByName">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <object class="IBActionInfo" key="NS.object.0">
+ <string key="name">toggleCollapse:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPSplitView.m</string>
</object>
</object>
<object class="IBPartialClassDescription">
@@ -6195,7 +6294,83 @@ IGVycm9ycyBiZWxvdyBiZWZvcmUgcHJvY2VlZGluZy4</string>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
- <string key="minorKey">./Classes/SPUserManager.h</string>
+ <string key="minorKey">../Source/SPUserManager.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPUserManager</string>
+ <dictionary class="NSMutableDictionary" key="actions">
+ <string key="addHost:">id</string>
+ <string key="addSchemaPriv:">id</string>
+ <string key="addUser:">id</string>
+ <string key="checkAllPrivileges:">id</string>
+ <string key="closeErrorsSheet:">id</string>
+ <string key="doApply:">id</string>
+ <string key="doCancel:">id</string>
+ <string key="doubleClickSchemaPriv:">id</string>
+ <string key="refresh:">id</string>
+ <string key="removeHost:">id</string>
+ <string key="removeSchemaPriv:">id</string>
+ <string key="removeUser:">id</string>
+ <string key="uncheckAllPrivileges:">id</string>
+ </dictionary>
+ <dictionary class="NSMutableDictionary" key="actionInfosByName">
+ <object class="IBActionInfo" key="addHost:">
+ <string key="name">addHost:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addSchemaPriv:">
+ <string key="name">addSchemaPriv:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="addUser:">
+ <string key="name">addUser:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="checkAllPrivileges:">
+ <string key="name">checkAllPrivileges:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="closeErrorsSheet:">
+ <string key="name">closeErrorsSheet:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doApply:">
+ <string key="name">doApply:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doCancel:">
+ <string key="name">doCancel:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="doubleClickSchemaPriv:">
+ <string key="name">doubleClickSchemaPriv:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="refresh:">
+ <string key="name">refresh:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeHost:">
+ <string key="name">removeHost:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeSchemaPriv:">
+ <string key="name">removeSchemaPriv:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="removeUser:">
+ <string key="name">removeUser:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ <object class="IBActionInfo" key="uncheckAllPrivileges:">
+ <string key="name">uncheckAllPrivileges:</string>
+ <string key="candidateClassName">id</string>
+ </object>
+ </dictionary>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">../Source/SPUserManager.m</string>
</object>
</object>
</array>
@@ -6203,10 +6378,6 @@ IGVycm9ycyBiZWxvdyBiZWZvcmUgcHJvY2VlZGluZy4</string>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">YES</bool>
- <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
- <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
- <integer value="1060" key="NS.object.0"/>
- </object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
<integer value="4600" key="NS.object.0"/>
diff --git a/LICENSE b/LICENSE
index bea4374e..3e5f86db 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,4 +1,4 @@
-Copyright (c) 2002-2014 Sequel Pro & CocoaMySQL Teams.
+Copyright (c) 2002-2015 Sequel Pro & CocoaMySQL Teams.
All rights reserved.
diff --git a/Resources/English.lproj/AboutPanel.strings b/Resources/English.lproj/AboutPanel.strings
index f054ebc4..12b859b3 100644
--- a/Resources/English.lproj/AboutPanel.strings
+++ b/Resources/English.lproj/AboutPanel.strings
Binary files differ
diff --git a/Resources/English.lproj/BundleEditor.strings b/Resources/English.lproj/BundleEditor.strings
index 536cdd5a..aa3d5c59 100644
--- a/Resources/English.lproj/BundleEditor.strings
+++ b/Resources/English.lproj/BundleEditor.strings
Binary files differ
diff --git a/Resources/English.lproj/ConnectionView.strings b/Resources/English.lproj/ConnectionView.strings
index 995eae7f..e72e0442 100644
--- a/Resources/English.lproj/ConnectionView.strings
+++ b/Resources/English.lproj/ConnectionView.strings
Binary files differ
diff --git a/Resources/English.lproj/Console.strings b/Resources/English.lproj/Console.strings
index 1320d37e..60c16b3e 100644
--- a/Resources/English.lproj/Console.strings
+++ b/Resources/English.lproj/Console.strings
Binary files differ
diff --git a/Resources/English.lproj/ContentFilterManager.strings b/Resources/English.lproj/ContentFilterManager.strings
index 009b4d6e..68922c24 100644
--- a/Resources/English.lproj/ContentFilterManager.strings
+++ b/Resources/English.lproj/ContentFilterManager.strings
Binary files differ
diff --git a/Resources/English.lproj/ContentPaginationView.strings b/Resources/English.lproj/ContentPaginationView.strings
index 5dedf99c..482afec1 100644
--- a/Resources/English.lproj/ContentPaginationView.strings
+++ b/Resources/English.lproj/ContentPaginationView.strings
Binary files differ
diff --git a/Resources/English.lproj/DBView.strings b/Resources/English.lproj/DBView.strings
index a76c5722..3d5ad7b9 100644
--- a/Resources/English.lproj/DBView.strings
+++ b/Resources/English.lproj/DBView.strings
Binary files differ
diff --git a/Resources/English.lproj/DataMigrationDialog.strings b/Resources/English.lproj/DataMigrationDialog.strings
index 5203c25c..9587a6ef 100644
--- a/Resources/English.lproj/DataMigrationDialog.strings
+++ b/Resources/English.lproj/DataMigrationDialog.strings
Binary files differ
diff --git a/Resources/English.lproj/DatabaseProcessList.strings b/Resources/English.lproj/DatabaseProcessList.strings
index f76abf72..679e4faf 100644
--- a/Resources/English.lproj/DatabaseProcessList.strings
+++ b/Resources/English.lproj/DatabaseProcessList.strings
Binary files differ
diff --git a/Resources/English.lproj/ExportDialog.strings b/Resources/English.lproj/ExportDialog.strings
index 0af13a86..773a7f35 100644
--- a/Resources/English.lproj/ExportDialog.strings
+++ b/Resources/English.lproj/ExportDialog.strings
Binary files differ
diff --git a/Resources/English.lproj/FieldEditorSheet.strings b/Resources/English.lproj/FieldEditorSheet.strings
index 7c326a49..816cb986 100644
--- a/Resources/English.lproj/FieldEditorSheet.strings
+++ b/Resources/English.lproj/FieldEditorSheet.strings
Binary files differ
diff --git a/Resources/English.lproj/GotoDatabaseDialog.strings b/Resources/English.lproj/GotoDatabaseDialog.strings
new file mode 100644
index 00000000..bf48b104
--- /dev/null
+++ b/Resources/English.lproj/GotoDatabaseDialog.strings
Binary files differ
diff --git a/Resources/English.lproj/IndexesView.strings b/Resources/English.lproj/IndexesView.strings
index 5fd8124f..c306f39b 100644
--- a/Resources/English.lproj/IndexesView.strings
+++ b/Resources/English.lproj/IndexesView.strings
Binary files differ
diff --git a/Resources/English.lproj/Localizable.strings b/Resources/English.lproj/Localizable.strings
index f54e1fab..a571d298 100644
--- a/Resources/English.lproj/Localizable.strings
+++ b/Resources/English.lproj/Localizable.strings
Binary files differ
diff --git a/Resources/English.lproj/MainMenu.strings b/Resources/English.lproj/MainMenu.strings
index f97b133c..b5593a7d 100644
--- a/Resources/English.lproj/MainMenu.strings
+++ b/Resources/English.lproj/MainMenu.strings
Binary files differ
diff --git a/Resources/English.lproj/MainWindow.strings b/Resources/English.lproj/MainWindow.strings
index 2afdf3b5..1191d0d2 100644
--- a/Resources/English.lproj/MainWindow.strings
+++ b/Resources/English.lproj/MainWindow.strings
Binary files differ
diff --git a/Resources/English.lproj/Navigator.strings b/Resources/English.lproj/Navigator.strings
index d7debae9..778dbcf2 100644
--- a/Resources/English.lproj/Navigator.strings
+++ b/Resources/English.lproj/Navigator.strings
Binary files differ
diff --git a/Resources/English.lproj/Preferences.strings b/Resources/English.lproj/Preferences.strings
index 91395b5b..8248bf70 100644
--- a/Resources/English.lproj/Preferences.strings
+++ b/Resources/English.lproj/Preferences.strings
Binary files differ
diff --git a/Resources/English.lproj/QueryFavoriteManager.strings b/Resources/English.lproj/QueryFavoriteManager.strings
index 8edb8e1b..622a6341 100644
--- a/Resources/English.lproj/QueryFavoriteManager.strings
+++ b/Resources/English.lproj/QueryFavoriteManager.strings
Binary files differ
diff --git a/Resources/English.lproj/SaveSPFAccessory.strings b/Resources/English.lproj/SaveSPFAccessory.strings
index 9265656d..cd1f559c 100644
--- a/Resources/English.lproj/SaveSPFAccessory.strings
+++ b/Resources/English.lproj/SaveSPFAccessory.strings
Binary files differ
diff --git a/Resources/English.lproj/UserManagerView.strings b/Resources/English.lproj/UserManagerView.strings
index c078b1d1..7d494fdb 100644
--- a/Resources/English.lproj/UserManagerView.strings
+++ b/Resources/English.lproj/UserManagerView.strings
Binary files differ
diff --git a/Resources/Images/reset.pdf b/Resources/Images/reset.pdf
new file mode 100644
index 00000000..2ac66017
--- /dev/null
+++ b/Resources/Images/reset.pdf
Binary files differ
diff --git a/Resources/License.rtf b/Resources/License.rtf
index 8d733b9b..a9ce83c0 100644
--- a/Resources/License.rtf
+++ b/Resources/License.rtf
@@ -5,7 +5,7 @@
\deftab560
\pard\tx560\pardeftab560\pardirnatural
-\f0\b\fs22 \cf2 \CocoaLigature0 Copyright (c) 2002-2014 Sequel Pro & CocoaMySQL Teams. \
+\f0\b\fs22 \cf2 \CocoaLigature0 Copyright (c) 2002-2015 Sequel Pro & CocoaMySQL Teams. \
\
All rights reserved.
\b0 \
diff --git a/Scripts/nightlybuildscript.sh b/Scripts/nightlybuildscript.sh
new file mode 100755
index 00000000..ca312f64
--- /dev/null
+++ b/Scripts/nightlybuildscript.sh
@@ -0,0 +1,189 @@
+#!/bin/bash
+# A script to update the Sequel Pro trunk located at a specified location, compile it, build onto a disk image, and upload to the nightlies server.
+# This will be called by buildbot with the first parameter being the VCS revision.
+
+# Note that changes to this script will NOT update the nightly builder without manual deployment;
+# this script is compiled to an encrypted binary on a builder VM.
+
+# Compiling this script with shc is quite straightforward - /usr/local/bin/shc -T -f <filename> , then move.
+
+# Hacky constants
+GIT_DIR=/Users/spbuildbot/buildbot/sequel-pro-10_7/build/
+BUILD_DIR=/Users/spbuildbot/buildbot/sequel-pro-10_7/build/build/Release
+PRIVATE_KEY_LOC='LOCATION NOT COMMITTED'
+NIGHTLY_ICON_LOC=/Users/spbuildbot/Documents/nightly-icon.icns
+NIGHTLY_KEYCHAIN_LOC=/Users/spbuildbot/Library/Keychains/spnightly.keychain
+NIGHTLY_KEYCHAIN_PASSWORD='PASSWORD NOT COMMITTED'
+
+# Ensure a revision hash was passed in
+REVISION_HASH=`echo "$1" | grep "\([0-9a-f]*\)"`
+if [ "$REVISION_HASH" == "" ]
+then
+ echo "Unable to extract revision hash from first argument; cancelling nightly build." >&2
+ exit 1
+fi
+SHORT_HASH=${REVISION_HASH:0:10}
+
+# Build a numeric revision for bundle version etc
+svn2git_migration_compensation=480
+cd "$GIT_DIR"
+NUMERIC_REVISION=$((`git log --oneline | wc -l` + $svn2git_migration_compensation))
+
+echo "Starting nightly build for hash $SHORT_HASH ($REVISION_HASH), bundle version $NUMERIC_REVISION... "
+
+# Abort if the required paths do not exist
+if [ ! -e "$PRIVATE_KEY_LOC" ]
+then
+ echo "Unable to locate private key; cancelling nightly build." >&2
+ exit 1
+fi
+cd "$BUILD_DIR"
+if [ `pwd` != "$BUILD_DIR" ]
+then
+ echo "Unable to change to nightly build directory; cancelling build." >&2
+ exit 1
+fi
+
+IBSTRINGSDIR=ibstrings
+XIB_BASE="$GIT_DIR/Interfaces/English.lproj"
+
+echo "Cleaning remains of any previous nightly builds..."
+
+# Delete any previous disk images and translation files
+rm -f *.dmg &> /dev/null
+rm -rf disttemp &> /dev/null
+rm -f languagetranslations.zip &> /dev/null
+rm -rf languagetranslations &> /dev/null
+rm -rf $IBSTRINGSDIR &> /dev/null
+
+echo "Creating IB strings files for rekeying..."
+mkdir -p $IBSTRINGSDIR/English.lproj
+find "$XIB_BASE" \( -name "*.xib" \) | while read FILE; do
+ printf "\t$(basename ${FILE})\n"
+ ibtool "$FILE" --export-strings-file "$IBSTRINGSDIR/English.lproj/`basename "$FILE" .xib`.strings"
+done
+
+echo "Downloading localizations to merge in..."
+# Download the latest language translations, and copy them into the Resources directory
+curl http://dev.sequelpro.com/translate/download/sequelpro > languagetranslations.zip
+unzip -q languagetranslations.zip -d languagetranslations
+
+echo "Rekeying localization files, translating xibs, merging localizations..."
+find languagetranslations/Resources \( -name "*.lproj" \) | while read FILE; do
+ loc=`basename "$FILE"`
+ mkdir "$IBSTRINGSDIR/$loc"
+ printf "\tRekeying localization: $loc\n"
+ find "$FILE" \( -name "*.strings" \) | while read STRFILE; do
+ file=`basename "$STRFILE" .strings`
+ printf "\t\tFile: $file\n"
+ ibkeyfile="$IBSTRINGSDIR/English.lproj/$file.strings"
+ xibfile="$XIB_BASE/$file.xib"
+ transfile="$IBSTRINGSDIR/$loc/$file.strings"
+ if [ -e "$ibkeyfile" ] && [ -e "$xibfile" ]; then
+ $BUILD_DIR/xibLocalizationPostprocessor "$STRFILE" "$ibkeyfile" "$transfile"
+ #we no longer need the original file and don't want to copy it
+ rm -f "$STRFILE"
+ ibtool "$xibfile" --import-strings-file "$transfile" --compile "languagetranslations/Resources/$loc/$file.nib"
+ fi
+ done
+ printf "\tCopying localization: $loc\n"
+ cp -R "$FILE" "Sequel Pro.app/Contents/Resources/"
+done
+
+echo "Copying nightly icon"
+
+# Copy in the nightly icon
+cp -f "$NIGHTLY_ICON_LOC" Sequel\ Pro.app/Contents/Resources/appicon.icns
+
+echo "Updating version strings"
+
+# Update some version strings and info, rather messily
+php -r '$infoplistloc = "'$BUILD_DIR'/Sequel Pro.app/Contents/Info.plist";
+ $infoplist = file_get_contents($infoplistloc);
+ $infoplist = preg_replace("/(\<key\>CFBundleShortVersionString\<\/key\>\s*\n?\r?\s*\<string\>)[^<]*(\<\/string\>)/i", "\\1Nightly build for revision '$SHORT_HASH'\\2", $infoplist);
+ $infoplist = preg_replace("/(\<key\>CFBundleVersion\<\/key\>\s*\n?\r?\s*)\<string\>[^<]*(\<\/string\>)/i", "\\1<string>'$NUMERIC_REVISION'\\2", $infoplist);
+ $infoplist = preg_replace("/(\<key\>NSHumanReadableCopyright\<\/key\>\s*\n?\r?\s*\<string\>)[^<]*(\<\/string\>)/i", "\\1Nightly build for revision '$SHORT_HASH'\\2", $infoplist);
+ $infoplist = preg_replace("/(\<key\>SUFeedURL\<\/key\>\s*\n?\r?\s*\<string\>)[^<]*(\<\/string\>)/i", "\\1http://nightly.sequelpro.com/nightly-app-releases.php\\2", $infoplist);
+ file_put_contents($infoplistloc, $infoplist);'
+
+# Update versions in localised string files
+php -r '$englishstringsloc = "/'$BUILD_DIR'/Sequel Pro.app/Contents/Resources/English.lproj/InfoPlist.strings";
+ $englishstrings = file_get_contents($englishstringsloc);
+ $englishstrings = mb_convert_encoding($englishstrings, "UTF-8", "UTF-16");
+ $englishstrings = preg_replace("/version [^\,\"]+/iu", "nightly build for r'$SHORT_HASH'", $englishstrings);
+ $englishstrings = mb_convert_encoding($englishstrings, "UTF-16", "UTF-8");
+ file_put_contents($englishstringsloc, $englishstrings);'
+
+echo "Signing build..."
+
+# Code sign and verify the nightly
+security unlock-keychain -p "$NIGHTLY_KEYCHAIN_PASSWORD" "$NIGHTLY_KEYCHAIN_LOC"
+codesign -f --keychain "$NIGHTLY_KEYCHAIN_LOC" -s 'Developer ID Application: MJ Media' -r "../../Resources/sprequirement.bin" "Sequel Pro.app/Contents/Resources/SequelProTunnelAssistant"
+codesign -f --keychain "$NIGHTLY_KEYCHAIN_LOC" -s 'Developer ID Application: MJ Media' -r "../../Resources/sprequirement.bin" "Sequel Pro.app"
+security lock-keychain "$NIGHTLY_KEYCHAIN_LOC"
+VERIFYERRORS=`codesign --verify "Sequel Pro.app" 2>&1`
+VERIFYERRORS+=`codesign --verify "Sequel Pro.app/Contents/Resources/SequelProTunnelAssistant" 2>&1`
+if [ "$VERIFYERRORS" != '' ]
+then
+ echo "Signing verification threw an error: $VERIFYERRORS" >&2
+ exit 1
+fi
+
+echo "Build signed and verified successfully"
+echo "Building disk image..."
+
+# Build the disk image
+mkdir disttemp
+cp -R -p Sequel\ Pro.app disttemp
+SetFile -a B disttemp/Sequel\ Pro.app
+hdiutil create -fs HFS+ -volname "Sequel Pro Nightly (r"$SHORT_HASH")" -srcfolder disttemp disttemp.dmg
+hdiutil convert disttemp.dmg -format UDBZ -o Sequel_Pro_r"$SHORT_HASH".dmg
+rm -rf disttemp*
+
+# Make sure it was created
+if [ ! -e "Sequel_Pro_r${SHORT_HASH}.dmg" ]
+then
+ echo "Disk image was not built successfully!" >&2
+ exit 1
+fi
+
+echo "Signing disk image"
+
+# Sign the disk image
+SIGNATURE=`openssl dgst -sha1 -binary < "Sequel_Pro_r${SHORT_HASH}.dmg" | openssl dgst -dss1 -sign "$PRIVATE_KEY_LOC" | openssl enc -base64 | tr -d "\n"`
+
+echo "Disk image ready (hashed as $SIGNATURE)"
+echo "Uploading disk image..."
+
+# Upload the disk image
+scp -q -P 32100 Sequel_Pro_r"$SHORT_HASH".dmg spnightlyuploader@sequelpro.com:nightlybuilds
+RETURNVALUE=$?
+if [ $RETURNVALUE -eq 0 ]
+then
+ echo "Successfully uploaded disk image"
+ ssh spnightlyuploader@sequelpro.com -p 32100 chmod 666 nightlybuilds/Sequel_Pro_r"$SHORT_HASH".dmg
+fi
+
+# Clean up
+echo "Cleaning up"
+rm -f languagetranslations.zip &> /dev/null
+rm -rf languagetranslations &> /dev/null
+
+# Check the upload status
+if [ $RETURNVALUE -ne 0 ]
+then
+ echo "Nightly upload failed"
+ exit 1
+fi
+
+# Use curl to post the signature to the server
+echo "Informing nightly server about new build..."
+BUILD_ACTIVATE_OUTPUT=`curl --silent -F "filename=Sequel_Pro_r${SHORT_HASH}.dmg" -F "build_hash=$SIGNATURE" -F "build_id=$NUMERIC_REVISION" -F "full_revision=$REVISION_HASH" http://sequelpro.com/nightly/build.php?action=hash-submit`
+if [ "$BUILD_ACTIVATE_OUTPUT" != 'Successfully updated.' ]
+then
+ echo "Unexpected status when informing nightly server about new build: "
+ echo "$BUILD_ACTIVATE_OUTPUT"
+ exit 1
+fi
+
+echo "Done!" \ No newline at end of file
diff --git a/Scripts/nightlybuildupload.sh b/Scripts/nightlybuildupload.sh
new file mode 100644
index 00000000..7bf8f875
--- /dev/null
+++ b/Scripts/nightlybuildupload.sh
@@ -0,0 +1,21 @@
+#!/usr/bin/expect
+
+# Note that changes to this script will NOT update the nightly builder without manual deployment
+
+# Quiet this script
+log_user 0
+
+# A script to upload the specified Sequel Pro build to the nightlies server, as another minor security hurdle.
+# This will be called by the build script with the first parameter being the VCS revision, second passphrase
+
+# Ensure a revision number was passed in
+set REVISION_NUMBER [lindex $argv 0]
+set PASSPHRASE [lindex $argv 1]
+
+# Perform the upload
+spawn scp -q -P 32100 /Users/spbuildbot/buildbot/sequel-pro/build/build/Release/Sequel_Pro_r${REVISION_NUMBER}.dmg sequelpro@sequelpro.com:public_html/nightly
+expect "Enter passphrase for key '/Users/spbuildbot/.ssh/id_rsa': "
+send "${PASSPHRASE}\r"
+expect eof
+catch wait result
+exit [lindex $result 3]
diff --git a/Source/DMLocalizedNib.m b/Source/DMLocalizedNib.m
deleted file mode 100644
index 56f6a810..00000000
--- a/Source/DMLocalizedNib.m
+++ /dev/null
@@ -1,162 +0,0 @@
-//
-// DMLocalizedNib.h
-// sequel-pro
-//
-// Created by Rowan Beentje on July 4, 2010.
-// Copyright (c) 2010 Rowan Beentje. All rights reserved.
-//
-// Permission is hereby granted, free of charge, to any person
-// obtaining a copy of this software and associated documentation
-// files (the "Software"), to deal in the Software without
-// restriction, including without limitation the rights to use,
-// copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the
-// Software is furnished to do so, subject to the following
-// conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-// OTHER DEALINGS IN THE SOFTWARE.
-//
-// More info at <https://github.com/sequelpro/sequelpro>
-
-#import <Cocoa/Cocoa.h>
-#import <objc/runtime.h>
-
-@interface NSNib (DMLocalizedNib)
-- (id)deliciousInitWithNibNamed:(NSString *)nibName bundle:(NSBundle *)bundle;
-- (id)deliciousInitWithContentsOfURL:(NSURL *)nibFileURL;
-- (BOOL)deliciousInstantiateNibWithOwner:(id)owner topLevelObjects:(NSArray **)topLevelObjects;
-- (void)setDeliciousNibName:(NSString *)nibName;
-- (NSString *)deliciousNibName;
-- (void)deliciousDealloc;
-@end
-
-// Private methods from DMLocalizedNib used here
-@interface NSBundle ()
-+ (void)_localizeStringsInObject:(id)object table:(NSString *)table;
-@end
-
-static NSMutableDictionary *deliciousNibNames = nil;
-
-@implementation NSNib (DMLocalizedNib)
-
-#pragma mark NSObject
-
-/**
- * On NSNib class load, swizzle in our overrides of the basic methods.
- */
-+ (void)load;
-{
- NSAutoreleasePool *autoreleasePool = [[NSAutoreleasePool alloc] init];
- if (self == [NSNib class]) {
- method_exchangeImplementations(class_getInstanceMethod(self, @selector(initWithNibNamed:bundle:)), class_getInstanceMethod(self, @selector(deliciousInitWithNibNamed:bundle:)));
- method_exchangeImplementations(class_getInstanceMethod(self, @selector(initWithContentsOfURL:)), class_getInstanceMethod(self, @selector(deliciousInitWithContentsOfURL:)));
- method_exchangeImplementations(class_getInstanceMethod(self, @selector(instantiateNibWithOwner:topLevelObjects:)), class_getInstanceMethod(self, @selector(deliciousInstantiateNibWithOwner:topLevelObjects:)));
- method_exchangeImplementations(class_getInstanceMethod(self, @selector(dealloc)), class_getInstanceMethod(self, @selector(deliciousDealloc)));
- }
- [autoreleasePool release];
-}
-
-
-#pragma mark API
-
-/**
- * An init method swizzled with the original method, storing the base
- * name passed into the init method for later reuse.
- */
-- (id)deliciousInitWithNibNamed:(NSString *)nibName bundle:(NSBundle *)bundle
-{
-
- // Instantiate the nib using the original (swizzled) call
- id nib = [self deliciousInitWithNibNamed:nibName bundle:bundle];
- if (nib) {
- [self setDeliciousNibName:nibName];
- }
-
- return nib;
-}
-
-/**
- * An init method swizzled with the original method, extracting and
- * storing the base name of the nib for later reuse.
- */
-- (id)deliciousInitWithContentsOfURL:(NSURL *)nibFileURL
-{
-
- // Instantiate the nib using the original (swizzled) call
- id nib = [self deliciousInitWithContentsOfURL:nibFileURL];
- if (nib) {
-
- // Extract the filename from the URL
- NSArray *urlParts = [[nibFileURL path] componentsSeparatedByString:@"/"];
- NSString *nibName = [urlParts lastObject];
- [self setDeliciousNibName:nibName];
- }
-
- return nib;
-}
-
-/**
- * An instatiation method swizzled with the original method. Instantiates
- * as before, and then if it can find a .strings file in a preferred language
- * to localize the instantiated objects with, does so.
- */
-- (BOOL)deliciousInstantiateNibWithOwner:(id)owner topLevelObjects:(NSArray **)topLevelObjects
-{
- if ([self deliciousInstantiateNibWithOwner:owner topLevelObjects:topLevelObjects]) {
-
- // Look for a localised strings table file based on the original nib name,
- // translating only if one was found and it wasn't English
- NSString *localizedStringsTablePath = [[NSBundle mainBundle] pathForResource:[self deliciousNibName] ofType:@"strings"];
- if (localizedStringsTablePath && ![[[localizedStringsTablePath stringByDeletingLastPathComponent] lastPathComponent] isEqualToString:@"English.lproj"]) {
- [NSBundle _localizeStringsInObject:*topLevelObjects table:[self deliciousNibName]];
- }
-
- return YES;
- }
-
- return NO;
-}
-
-/**
- * Store the nib name that was used when setting up the nib, which will
- * also be used to look up the .strings file name
- */
-- (void)setDeliciousNibName:(NSString *)nibName
-{
- if (!deliciousNibNames) {
- deliciousNibNames = [[NSMutableDictionary alloc] init];
- }
- [deliciousNibNames setObject:nibName forKey:[NSValue valueWithPointer:self]];
-}
-
-/**
- * Retrieve the nib name to look up the matching .strings file name
- */
-- (NSString *)deliciousNibName
-{
- return [deliciousNibNames objectForKey:[NSValue valueWithPointer:self]];
-}
-
-/**
- * Swizzled deallocate to release custom stores.
- */
-- (void)deliciousDealloc
-{
- if (deliciousNibNames) {
- [deliciousNibNames removeObjectForKey:[NSValue valueWithPointer:self]];
- if (![deliciousNibNames count]) [deliciousNibNames release], deliciousNibNames = nil;
- }
- [self deliciousDealloc];
-}
-
-@end
diff --git a/Source/DMLocalizedNibBundle.m b/Source/DMLocalizedNibBundle.m
deleted file mode 100644
index 90fc4264..00000000
--- a/Source/DMLocalizedNibBundle.m
+++ /dev/null
@@ -1,300 +0,0 @@
-// DMLocalizedNibBundle.m
-//
-// Created by William Jon Shipley on 2/13/05.
-// Copyright (c) 2005-2009 Golden % Braeburn, LLC. All rights reserved except as below:
-//
-// This code is provided as-is, with no warranties or anything. You may use it in your projects as you wish,
-// but you must leave this comment block (credits and copyright) intact. That's the only restriction
-// -- Golden % Braeburn otherwise grants you a fully-paid, worldwide, transferrable license to use this
-// code as you see fit, including but not limited to making derivative works.
-
-#import <Cocoa/Cocoa.h>
-#import <objc/runtime.h>
-#import <Availability.h>
-
-//Backwards compatibility
-#ifndef __MAC_10_8
-#define __MAC_10_8 1080
-#endif
-
-@interface NSBundle (DMLocalizedNibBundle)
-#if __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_10_8
-- (BOOL)deliciousLocalizingLoadNibNamed:(NSString *)fileName owner:(id)owner topLevelObjects:(NSArray **)topLevelObjects;
-#endif
-+ (BOOL)deliciousLocalizingLoadNibFile:(NSString *)fileName externalNameTable:(NSDictionary *)context withZone:(NSZone *)zone;
-@end
-
-@interface NSBundle (DMLocalizedNibBundle_Private_API)
-+ (void)_localizeStringsInObject:(id)object table:(NSString *)table;
-+ (NSString *)_localizedStringForString:(NSString *)string table:(NSString *)table;
-// localize particular attributes in objects
-+ (void)_localizeTitleOfObject:(id)object table:(NSString *)table;
-+ (void)_localizeAlternateTitleOfObject:(id)object table:(NSString *)table;
-+ (void)_localizeStringValueOfObject:(id)object table:(NSString *)table;
-+ (void)_localizePlaceholderStringOfObject:(id)object table:(NSString *)table;
-+ (void)_localizeToolTipOfObject:(id)object table:(NSString *)table;
-+ (void)_localizeLabelOfObject:(id)object table:(NSString *)table;
-@end
-
-static NSMutableArray *deliciousBindingKeys = nil;
-
-@implementation NSBundle (DMLocalizedNibBundle)
-
-#pragma mark NSObject
-
-+ (void)load
-{
- NSAutoreleasePool *autoreleasePool = [[NSAutoreleasePool alloc] init];
- if (self == [NSBundle class]) {
- Method oldM,newM;
-#if __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_10_8
- oldM = class_getInstanceMethod(self, @selector(loadNibNamed:owner:topLevelObjects:));
- newM = class_getInstanceMethod(self, @selector(deliciousLocalizingLoadNibNamed:owner:topLevelObjects:));
- method_exchangeImplementations(oldM, newM);
-#endif
- oldM = class_getClassMethod(self, @selector(loadNibFile:externalNameTable:withZone:));
- newM = class_getClassMethod(self, @selector(deliciousLocalizingLoadNibFile:externalNameTable:withZone:));
- method_exchangeImplementations(oldM, newM);
- deliciousBindingKeys = [[NSMutableArray alloc] initWithObjects:
- NSMultipleValuesPlaceholderBindingOption,
- NSNoSelectionPlaceholderBindingOption,
- NSNotApplicablePlaceholderBindingOption,
- NSNullPlaceholderBindingOption,
- nil];
- }
- [autoreleasePool release];
-}
-
-#pragma mark API
-
-#if __MAC_OS_X_VERSION_MAX_ALLOWED >= __MAC_10_8
-- (BOOL)deliciousLocalizingLoadNibNamed:(NSString *)fileName owner:(id)owner topLevelObjects:(NSArray **)topLevelObjects
-{
- fileName = [self pathForResource:fileName ofType:@"nib"];
- NSString *localizedStringsTableName = [[fileName lastPathComponent] stringByDeletingPathExtension];
- NSString *localizedStringsTablePath = [[NSBundle mainBundle] pathForResource:localizedStringsTableName ofType:@"strings"];
- if (localizedStringsTablePath && ![[[localizedStringsTablePath stringByDeletingLastPathComponent] lastPathComponent] isEqualToString:@"English.lproj"]) {
-
- NSNib *nib = [[NSNib alloc] initWithContentsOfURL:[NSURL fileURLWithPath:fileName]];
- BOOL success = [nib instantiateWithOwner:owner topLevelObjects:topLevelObjects];
- NSMutableArray *topLevelObjectsArray = [NSMutableArray arrayWithArray:*topLevelObjects];
- [[self class] _localizeStringsInObject:topLevelObjectsArray table:localizedStringsTableName];
-
- [nib release];
- return success;
-
- } else {
- return [self deliciousLocalizingLoadNibNamed:localizedStringsTableName owner:owner topLevelObjects:topLevelObjects];
- }
-}
-#endif
-
-+ (BOOL)deliciousLocalizingLoadNibFile:(NSString *)fileName externalNameTable:(NSDictionary *)context withZone:(NSZone *)zone
-{
- NSString *localizedStringsTableName = [[fileName lastPathComponent] stringByDeletingPathExtension];
- NSString *localizedStringsTablePath = [[NSBundle mainBundle] pathForResource:localizedStringsTableName ofType:@"strings"];
- if (localizedStringsTablePath && ![[[localizedStringsTablePath stringByDeletingLastPathComponent] lastPathComponent] isEqualToString:@"English.lproj"]) {
-
- NSNib *nib = [[NSNib alloc] initWithContentsOfURL:[NSURL fileURLWithPath:fileName]];
- NSMutableArray *topLevelObjectsArray = [context objectForKey:NSNibTopLevelObjects];
- if (!topLevelObjectsArray) {
- topLevelObjectsArray = [NSMutableArray array];
- context = [NSMutableDictionary dictionaryWithDictionary:context];
- [(NSMutableDictionary *)context setObject:topLevelObjectsArray forKey:NSNibTopLevelObjects];
- }
- BOOL success = [nib instantiateNibWithExternalNameTable:context];
- [self _localizeStringsInObject:topLevelObjectsArray table:localizedStringsTableName];
-
- [nib release];
- return success;
-
- } else {
- return [self deliciousLocalizingLoadNibFile:fileName externalNameTable:context withZone:zone];
- }
-}
-
-@end
-
-#pragma mark Private API
-
-@implementation NSBundle (DMLocalizedNibBundle_Private_API)
-
-+ (void)_localizeStringsInObject:(id)object table:(NSString *)table
-{
- if ([object isKindOfClass:[NSArray class]]) {
- NSArray *array = object;
-
- for (id nibItem in array)
- [self _localizeStringsInObject:nibItem table:table];
-
- } else if ([object isKindOfClass:[NSCell class]]) {
- NSCell *cell = object;
-
- if ([cell isKindOfClass:[NSActionCell class]]) {
- NSActionCell *actionCell = (NSActionCell *)cell;
-
- if ([actionCell isKindOfClass:[NSButtonCell class]]) {
- NSButtonCell *buttonCell = (NSButtonCell *)actionCell;
- if ([buttonCell imagePosition] != NSImageOnly) {
- [self _localizeTitleOfObject:buttonCell table:table];
- [self _localizeStringValueOfObject:buttonCell table:table];
- [self _localizeAlternateTitleOfObject:buttonCell table:table];
- }
-
- } else if ([actionCell isKindOfClass:[NSTextFieldCell class]]) {
- NSTextFieldCell *textFieldCell = (NSTextFieldCell *)actionCell;
- // Following line is redundant with other code, localizes twice.
- // [self _localizeTitleOfObject:textFieldCell table:table];
- [self _localizeStringValueOfObject:textFieldCell table:table];
- [self _localizePlaceholderStringOfObject:textFieldCell table:table];
-
- } else if ([actionCell type] == NSTextCellType) {
- [self _localizeTitleOfObject:actionCell table:table];
- [self _localizeStringValueOfObject:actionCell table:table];
- }
- }
-
- } else if ([object isKindOfClass:[NSMenu class]]) {
- NSMenu *menu = object;
- [self _localizeTitleOfObject:menu table:table];
-
- [self _localizeStringsInObject:[menu itemArray] table:table];
-
- } else if ([object isKindOfClass:[NSMenuItem class]]) {
- NSMenuItem *menuItem = object;
- [self _localizeTitleOfObject:menuItem table:table];
- [self _localizeToolTipOfObject:menuItem table:table];
-
- [self _localizeStringsInObject:[menuItem submenu] table:table];
-
- } else if ([object isKindOfClass:[NSView class]]) {
- NSView *view = object;
- [self _localizeToolTipOfObject:view table:table];
-
- if ([view isKindOfClass:[NSBox class]]) {
- NSBox *box = (NSBox *)view;
- [self _localizeTitleOfObject:box table:table];
-
- } else if ([view isKindOfClass:[NSControl class]]) {
- NSControl *control = (NSControl *)view;
-
- if ([view isKindOfClass:[NSButton class]]) {
- NSButton *button = (NSButton *)control;
-
- if ([button isKindOfClass:[NSPopUpButton class]]) {
- NSPopUpButton *popUpButton = (NSPopUpButton *)button;
- NSMenu *menu = [popUpButton menu];
-
- [self _localizeStringsInObject:[menu itemArray] table:table];
- } else
- [self _localizeStringsInObject:[button cell] table:table];
-
-
- } else if ([view isKindOfClass:[NSMatrix class]]) {
- NSMatrix *matrix = (NSMatrix *)control;
-
- NSArray *cells = [matrix cells];
- [self _localizeStringsInObject:cells table:table];
-
- for (NSCell *cell in cells) {
-
- NSString *localizedCellToolTip = [self _localizedStringForString:[matrix toolTipForCell:cell] table:table];
- if (localizedCellToolTip)
- [matrix setToolTip:localizedCellToolTip forCell:cell];
- }
-
- } else if ([view isKindOfClass:[NSSegmentedControl class]]) {
- NSSegmentedControl *segmentedControl = (NSSegmentedControl *)control;
-
- NSInteger segmentIndex, segmentCount = [segmentedControl segmentCount];
- for (segmentIndex = 0; segmentIndex < segmentCount; segmentIndex++) {
- NSString *localizedSegmentLabel = [self _localizedStringForString:[segmentedControl labelForSegment:segmentIndex] table:table];
- if (localizedSegmentLabel)
- [segmentedControl setLabel:localizedSegmentLabel forSegment:segmentIndex];
- NSString *localizedSegmentTooltip = [self _localizedStringForString:[[segmentedControl cell] toolTipForSegment:segmentIndex] table:table];
- if (localizedSegmentTooltip)
- [[segmentedControl cell] setToolTip:localizedSegmentTooltip forSegment:segmentIndex];
-
- [self _localizeStringsInObject:[segmentedControl menuForSegment:segmentIndex] table:table];
- }
-
- } else if ([view isKindOfClass:[NSTableView class]]) {
- for (NSTableColumn *column in [(NSTableView*)view tableColumns]) {
- [self _localizeStringValueOfObject:[column headerCell] table:table];
- NSString *localizedHeaderTip = [self _localizedStringForString:[column headerToolTip] table:table];
- if (localizedHeaderTip) [column setHeaderToolTip:localizedHeaderTip];
- }
-
- } else if ([view isKindOfClass:[NSTextField class]]) {
- NSDictionary *vb;
- if ((vb = [view infoForBinding:@"value"])) {
- NSMutableDictionary *lvb = [NSMutableDictionary dictionaryWithDictionary:[vb objectForKey:NSOptionsKey]];
- for (NSString *bindingKey in deliciousBindingKeys) {
- if ([lvb objectForKey:bindingKey] == [NSNull null]) continue;
- NSString *localizedBindingString = [self _localizedStringForString:[lvb objectForKey:bindingKey] table:table];
- if (localizedBindingString)
- [lvb setObject:localizedBindingString forKey:bindingKey];
- }
- [view bind:@"value" toObject:[vb objectForKey:NSObservedObjectKey] withKeyPath:[vb objectForKey:NSObservedKeyPathKey] options:lvb];
- }
- [self _localizeStringsInObject:[control cell] table:table];
-
- } else
- [self _localizeStringsInObject:[control cell] table:table];
-
- } else if ([view isKindOfClass:[NSTabView class]]) {
- NSTabView *tabView = (NSTabView *)view;
- for (NSTabViewItem *tabViewItem in [tabView tabViewItems]) {
- [self _localizeLabelOfObject:tabViewItem table:table];
- if ([tabViewItem respondsToSelector:@selector(toolTip)]) // 10.6+
- [self _localizeToolTipOfObject:tabViewItem table:table];
- [self _localizeStringsInObject:[tabViewItem view] table:table];
- }
-
- }
-
- [self _localizeStringsInObject:[view subviews] table:table];
-
- } else if ([object isKindOfClass:[NSWindow class]]) {
- NSWindow *window = object;
- [self _localizeTitleOfObject:window table:table];
-
- [self _localizeStringsInObject:[window contentView] table:table];
-
- }
-}
-
-+ (NSString *)_localizedStringForString:(NSString *)string table:(NSString *)table
-{
- if (![string length])
- return nil;
-
- static NSString *defaultValue = @"I AM THE DEFAULT VALUE";
- NSString *localizedString = [[NSBundle mainBundle] localizedStringForKey:string value:defaultValue table:table];
- if (localizedString != defaultValue) {
- return localizedString;
- } else {
-#ifdef BETA_BUILD
- NSLog(@" not going to localize string %@", string);
-#endif
- return nil;
- }
-}
-
-
-#define DM_DEFINE_LOCALIZE_BLAH_OF_OBJECT(blahName, capitalizedBlahName) \
-+ (void)_localize ##capitalizedBlahName ##OfObject:(id)object table:(NSString *)table; \
-{ \
- NSString *localizedBlah = [self _localizedStringForString:[object blahName] table:table]; \
- if (localizedBlah) \
- [object set ##capitalizedBlahName:localizedBlah]; \
-}
-
-DM_DEFINE_LOCALIZE_BLAH_OF_OBJECT(title, Title)
-DM_DEFINE_LOCALIZE_BLAH_OF_OBJECT(alternateTitle, AlternateTitle)
-DM_DEFINE_LOCALIZE_BLAH_OF_OBJECT(stringValue, StringValue)
-DM_DEFINE_LOCALIZE_BLAH_OF_OBJECT(placeholderString, PlaceholderString)
-DM_DEFINE_LOCALIZE_BLAH_OF_OBJECT(toolTip, ToolTip)
-DM_DEFINE_LOCALIZE_BLAH_OF_OBJECT(label, Label)
-
-@end
diff --git a/Source/GeneratePreviewForURL.m b/Source/GeneratePreviewForURL.m
index 2e0fc0cb..ef20b852 100644
--- a/Source/GeneratePreviewForURL.m
+++ b/Source/GeneratePreviewForURL.m
@@ -78,8 +78,8 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
mutabilityOption:NSPropertyListImmutable format:&format errorDescription:&convError] retain];
if(!spf || readError != nil || [convError length] || !(format == NSPropertyListXMLFormat_v1_0 || format == NSPropertyListBinaryFormat_v1_0)) {
- if(spf) [spf release], spf = nil;
- if(pool) [pool release], pool = nil;
+ if(spf) SPClear(spf);
+ if(pool) SPClear(pool);
return noErr;
}
@@ -89,8 +89,8 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
encoding:NSUTF8StringEncoding error:&templateReadError];
if (template == nil || ![template length] || templateReadError != nil) {
- if(spf) [spf release], spf = nil;
- if(pool) [pool release], pool = nil;
+ if(spf) SPClear(spf);
+ if(pool) SPClear(pool);
return noErr;
}
@@ -146,8 +146,8 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
encoding:NSUTF8StringEncoding error:&templateReadError];
if (template == nil || ![template length] || templateReadError != nil) {
- if(spf) [spf release], spf = nil;
- if(pool) [pool release], pool = nil;
+ if(spf) SPClear(spf);
+ if(pool) SPClear(pool);
return noErr;
}
// compose the html
@@ -162,8 +162,8 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
encoding:NSUTF8StringEncoding error:&templateReadError];
if (template == nil || ![template length] || templateReadError != nil) {
- if(spf) [spf release], spf = nil;
- if(pool) [pool release], pool = nil;
+ if(spf) SPClear(spf);
+ if(pool) SPClear(pool);
return noErr;
}
// compose the html
@@ -182,7 +182,7 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
encoding:NSUTF8StringEncoding error:&templateReadError];
if (template == nil || ![template length] || templateReadError != nil) {
- if(pool) [pool release], pool = nil;
+ if(pool) SPClear(pool);
return noErr;
}
@@ -190,7 +190,7 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
encoding:NSUTF8StringEncoding error:&templateReadError];
if (windowTemplate == nil || ![windowTemplate length] || templateReadError != nil) {
- if(pool) [pool release], pool = nil;
+ if(pool) SPClear(pool);
return noErr;
}
@@ -205,8 +205,8 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
mutabilityOption:NSPropertyListImmutable format:&format errorDescription:&convError] retain];
if(!spf || readError != nil || [convError length] || !(format == NSPropertyListXMLFormat_v1_0 || format == NSPropertyListBinaryFormat_v1_0)) {
- if(spf) [spf release], spf = nil;
- if(pool) [pool release], pool = nil;
+ if(spf) SPClear(spf);
+ if(pool) SPClear(pool);
return noErr;
}
@@ -323,7 +323,7 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
encoding:NSUTF8StringEncoding error:&templateReadError];
if (template == nil || ![template length] || templateReadError != nil) {
- if(pool) [pool release], pool = nil;
+ if(pool) SPClear(pool);
return noErr;
}
@@ -418,10 +418,10 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
[sqlHTML appendFormat:@"<font color=%@>%@</font>", tokenColor, [[sqlText substringWithRange:tokenRange] HTMLEscapeString]];
if (QLPreviewRequestIsCancelled(preview)) {
- if(sqlHTML) [sqlHTML release], sqlHTML = nil;
+ if(sqlHTML) SPClear(sqlHTML);
if(truncatedString) [truncatedString release], sqlHTML = nil;
if(sqlText) [sqlText release], sqlHTML = nil;
- if(pool) [pool release], pool = nil;
+ if(pool) SPClear(pool);
[loopPool release];
return noErr;
}
@@ -457,7 +457,7 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
} else {
// No file attributes were read, bail for safety reasons
- if(pool) [pool release], pool = nil;
+ if(pool) SPClear(pool);
return noErr;
}
@@ -474,7 +474,7 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
// just in case
if(!iconImages || [iconImages count] < 1)
- iconImages = [NSArray arrayWithObject:[NSImage imageNamed:NSImageNameStopProgressTemplate]];
+ iconImages = @[[NSImage imageNamed:NSImageNameStopProgressTemplate]];
#warning Shouldn't that be "> 1"?
if([iconImages count] > 0)
@@ -488,14 +488,14 @@ OSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview,
imgProps = [[NSMutableDictionary alloc] initWithCapacity:2];
[props setObject:[NSNumber numberWithInteger:previewHeight] forKey:(NSString *)kQLPreviewPropertyHeightKey];
- [props setObject:[NSNumber numberWithInt:600] forKey:(NSString *)kQLPreviewPropertyWidthKey];
+ [props setObject:@600 forKey:(NSString *) kQLPreviewPropertyWidthKey];
if(image) {
[imgProps setObject:@"image/tiff" forKey:(NSString *)kQLPreviewPropertyMIMETypeKey];
[imgProps setObject:image forKey:(NSString *)kQLPreviewPropertyAttachmentDataKey];
}
- [props setObject:[NSDictionary dictionaryWithObject:imgProps forKey:@"icon.tiff"] forKey:(NSString *)kQLPreviewPropertyAttachmentsKey];
+ [props setObject:@{@"icon.tiff" : imgProps} forKey:(NSString *) kQLPreviewPropertyAttachmentsKey];
[props setObject:@"UTF-8" forKey:(NSString *)kQLPreviewPropertyTextEncodingNameKey];
[props setObject:[NSNumber numberWithInt:NSUTF8StringEncoding] forKey:(NSString *)kQLPreviewPropertyStringEncodingKey];
[props setObject:@"text/html" forKey:(NSString *)kQLPreviewPropertyMIMETypeKey];
diff --git a/Source/MGTemplateEngine.m b/Source/MGTemplateEngine.m
index a6e15c2a..4fe7620b 100644
--- a/Source/MGTemplateEngine.m
+++ b/Source/MGTemplateEngine.m
@@ -189,10 +189,9 @@
SEL selector = @selector(templateEngine:encounteredError:isContinuing:);
if ([(NSObject *)delegate respondsToSelector:selector]) {
- NSError *error = [NSError errorWithDomain:TEMPLATE_ENGINE_ERROR_DOMAIN
- code:code
- userInfo:[NSDictionary dictionaryWithObject:errStr
- forKey:NSLocalizedDescriptionKey]];
+ NSError *error = [NSError errorWithDomain:TEMPLATE_ENGINE_ERROR_DOMAIN
+ code:code
+ userInfo:@{NSLocalizedDescriptionKey : errStr}];
[(NSObject <MGTemplateEngineDelegate> *)delegate templateEngine:self
encounteredError:error
isContinuing:continuing];
@@ -408,12 +407,12 @@
nil], GLOBAL_ENGINE_DELIMITERS,
nil]
forKey:GLOBAL_ENGINE_GROUP];
- [_globals setObject:[NSNumber numberWithBool:YES] forKey:@"true"];
- [_globals setObject:[NSNumber numberWithBool:NO] forKey:@"false"];
- [_globals setObject:[NSNumber numberWithBool:YES] forKey:@"YES"];
- [_globals setObject:[NSNumber numberWithBool:NO] forKey:@"NO"];
- [_globals setObject:[NSNumber numberWithBool:YES] forKey:@"yes"];
- [_globals setObject:[NSNumber numberWithBool:NO] forKey:@"no"];
+ [_globals setObject:@YES forKey:@"true"];
+ [_globals setObject:@NO forKey:@"false"];
+ [_globals setObject:@YES forKey:@"YES"];
+ [_globals setObject:@NO forKey:@"NO"];
+ [_globals setObject:@YES forKey:@"yes"];
+ [_globals setObject:@NO forKey:@"no"];
_outputDisabledCount = 0;
[templateContents release];
templateContents = [templateString retain];
@@ -542,7 +541,7 @@
[frame setObject:endMarkers forKey:BLOCK_END_NAMES_KEY];
NSArray *arguments = [matchInfo objectForKey:MARKER_ARGUMENTS_KEY];
if (!arguments) {
- arguments = [NSArray array];
+ arguments = @[];
}
[frame setObject:arguments forKey:BLOCK_ARGUMENTS_KEY];
[frame setObject:[matchInfo objectForKey:MARKER_RANGE_KEY] forKey:BLOCK_START_MARKER_RANGE_KEY];
diff --git a/Source/MGTemplateStandardFilters.m b/Source/MGTemplateStandardFilters.m
index 3acc155e..f06ae752 100644
--- a/Source/MGTemplateStandardFilters.m
+++ b/Source/MGTemplateStandardFilters.m
@@ -16,10 +16,7 @@
- (NSArray *)filters
{
- return [NSArray arrayWithObjects:
- UPPERCASE, LOWERCASE, CAPITALIZED,
- DATE_FORMAT, COLOR_FORMAT,
- nil];
+ return @[UPPERCASE, LOWERCASE, CAPITALIZED, DATE_FORMAT, COLOR_FORMAT];
}
- (NSObject *)filterInvoked:(NSString *)filter withArguments:(NSArray *)args onValue:(NSObject *)value
diff --git a/Source/MGTemplateStandardMarkers.m b/Source/MGTemplateStandardMarkers.m
index 3421abe3..5edcb00c 100644
--- a/Source/MGTemplateStandardMarkers.m
+++ b/Source/MGTemplateStandardMarkers.m
@@ -107,29 +107,20 @@
- (NSArray *)markers
{
- return [NSArray arrayWithObjects:
- FOR_START, FOR_END,
- SECTION_START, SECTION_END,
- IF_START, ELSE, IF_END,
- NOW,
- COMMENT_START, COMMENT_END,
- LOAD,
- CYCLE,
- SET,
- nil];
+ return @[FOR_START, FOR_END, SECTION_START, SECTION_END, IF_START, ELSE, IF_END, NOW, COMMENT_START, COMMENT_END, LOAD, CYCLE, SET];
}
- (NSArray *)endMarkersForMarker:(NSString *)marker
{
if ([marker isEqualToString:FOR_START]) {
- return [NSArray arrayWithObjects:FOR_END, nil];
+ return @[FOR_END];
} else if ([marker isEqualToString:SECTION_START]) {
- return [NSArray arrayWithObjects:SECTION_END, nil];
+ return @[SECTION_END];
} else if ([marker isEqualToString:IF_START]) {
- return [NSArray arrayWithObjects:IF_END, ELSE, nil];
+ return @[IF_END, ELSE];
} else if ([marker isEqualToString:COMMENT_START]) {
- return [NSArray arrayWithObjects:COMMENT_END, nil];
+ return @[COMMENT_END];
}
return nil;
}
@@ -231,7 +222,7 @@
// Disable output for this block.
*blockStarted = YES;
NSMutableDictionary *stackFrame = [NSMutableDictionary dictionaryWithObjectsAndKeys:
- [NSNumber numberWithBool:YES], FOR_STACK_DISABLED_OUTPUT,
+ @YES, FOR_STACK_DISABLED_OUTPUT,
[NSValue valueWithRange:markerRange], STACK_START_MARKER_RANGE,
[NSValue valueWithRange:*nextRange], STACK_START_REMAINING_RANGE,
nil];
@@ -426,7 +417,7 @@
}
// Note that we've now seen the else marker.
- [frame setObject:[NSNumber numberWithBool:YES] forKey:IF_ELSE_SEEN];
+ [frame setObject:@YES forKey:IF_ELSE_SEEN];
}
}
@@ -522,7 +513,7 @@
} else {
// New cycle. Create and output appropriately.
cycle = [NSMutableDictionary dictionaryWithCapacity:2];
- [cycle setObject:[NSNumber numberWithInteger:0] forKey:CYCLE_INDEX];
+ [cycle setObject:@0 forKey:CYCLE_INDEX];
[cycle setObject:args forKey:CYCLE_VALUES];
[cycles setObject:cycle forKey:rangeKey];
return [args objectAtIndex:0];
@@ -531,8 +522,7 @@
} else if ([marker isEqualToString:SET]) {
if (args && [args count] == 2 && *outputEnabled) {
// Set variable arg1 to value arg2.
- NSDictionary *newVar = [NSDictionary dictionaryWithObject:[args objectAtIndex:1]
- forKey:[args objectAtIndex:0]];
+ NSDictionary *newVar = @{[args objectAtIndex:0] : [args objectAtIndex:1]};
if (newVar) {
*newVariables = newVar;
}
diff --git a/Source/NoodleLineNumberView.m b/Source/NoodleLineNumberView.m
index 1d58bbed..8b678434 100644
--- a/Source/NoodleLineNumberView.m
+++ b/Source/NoodleLineNumberView.m
@@ -59,6 +59,7 @@ typedef NSRange (*RangeOfLineIMP)(id object, SEL selector, NSRange range);
- (void)invalidateLineIndices;
- (void)calculateLines;
- (void)updateGutterThicknessConstants;
+- (void)setRuleThicknessNumber:(NSNumber *)aNum;
@end
@@ -112,6 +113,7 @@ typedef NSRange (*RangeOfLineIMP)(id object, SEL selector, NSRange range);
- (void)dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
+ [NSObject cancelPreviousPerformRequestsWithTarget:self];
if (lineIndices) [lineIndices release];
if (textAttributes) [textAttributes release];
@@ -497,7 +499,7 @@ typedef NSRange (*RangeOfLineIMP)(id object, SEL selector, NSRange range);
- (void)invalidateLineIndices
{
- if (lineIndices) [lineIndices release], lineIndices = nil;
+ if (lineIndices) SPClear(lineIndices);
}
@@ -566,17 +568,23 @@ typedef NSRange (*RangeOfLineIMP)(id object, SEL selector, NSRange range);
currentRuleThickness = newThickness;
// Not a good idea to resize the view during calculations (which can happen during
- // display). Do a delayed perform (using NSInvocation since arg is a float).
- NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[self methodSignatureForSelector:@selector(setRuleThickness:)]];
- [invocation setSelector:@selector(setRuleThickness:)];
- [invocation setTarget:self];
- [invocation setArgument:&newThickness atIndex:2];
-
- [invocation performSelector:@selector(invoke) withObject:nil afterDelay:0.0];
+ // display). Do a delayed perform.
+ [self performSelector:@selector(setRuleThicknessNumber:) withObject:[NSNumber numberWithFloat:newThickness] afterDelay:0.0];
}
}
}
+- (void)setRuleThicknessNumber:(NSNumber *)aNum
+{
+ // We want to do a delayed perform, but setRuleThickness: does take a CGFloat
+ // and not an object. In the past we used NSInvocation to work around that,
+ // however that has one major issue: >>This class does not retain the arguments
+ // for the contained invocation by default.<< (NSInvocation doc).
+ // A perform with delay 0.0 is queued with the run loop, so a dealloc can very
+ // well happen before that!
+ [self setRuleThickness:[aNum floatValue]];
+}
+
- (void)updateGutterThicknessConstants
{
maxWidthOfGlyph1 = ceilf(MAX(DEFAULT_THICKNESS, maxWidthOfGlyph + RULER_MARGIN2));
diff --git a/Source/QLPreviewPanel.h b/Source/QLPreviewPanel.h
deleted file mode 100644
index 7c342ed9..00000000
--- a/Source/QLPreviewPanel.h
+++ /dev/null
@@ -1,119 +0,0 @@
-//
-// QLPreviewPanel.h
-// sequel-pro
-//
-// Created by Stuart Connolly (stuconnolly.com) on June 15, 2009.
-// Copyright (c) 2009 Stuart Connolly. All rights reserved.
-//
-// Permission is hereby granted, free of charge, to any person
-// obtaining a copy of this software and associated documentation
-// files (the "Software"), to deal in the Software without
-// restriction, including without limitation the rights to use,
-// copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the
-// Software is furnished to do so, subject to the following
-// conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-// OTHER DEALINGS IN THE SOFTWARE.
-//
-// More info at <https://github.com/sequelpro/sequelpro>
-
-// As the QuickLook framework is private we have to make
-// these methods public to avoid warnings while compiling
-@interface QLPreviewPanel : NSPanel
-
-+ (id)sharedPreviewPanel;
-+ (id)_previewPanel;
-+ (BOOL)isSharedPreviewPanelLoaded;
-- (id)initWithContentRect:(NSRect)fp8 styleMask:(NSUInteger)fp24 backing:(NSUInteger)fp28 defer:(BOOL)fp32;
-- (id)initWithCoder:(id)fp8;
-- (void)dealloc;
-- (BOOL)isOpaque;
-- (BOOL)canBecomeKeyWindow;
-- (BOOL)canBecomeMainWindow;
-- (BOOL)shouldIgnorePanelFrameChanges;
-- (BOOL)isOpen;
-- (void)setFrame:(NSRect)fp8 display:(BOOL)fp24 animate:(BOOL)fp28;
-- (id)_subEffectsForWindow:(id)fp8 itemFrame:(NSRect)fp12 transitionWindow:(id *)fp28;
-- (id)_scaleEffectForItemFrame:(NSRect)fp8 transitionWindow:(id *)fp24;
-- (void)_invertCurrentEffect;
-- (struct _NSRect)_currentItemFrame;
-- (void)setAutosizesAndCenters:(BOOL)fp8;
-- (BOOL)autosizesAndCenters;
-- (void)makeKeyAndOrderFront:(id)fp8;
-- (void)makeKeyAndOrderFrontWithEffect:(NSInteger)fp8;
-- (void)makeKeyAndGoFullscreenWithEffect:(NSInteger)fp8;
-- (void)makeKeyAndOrderFrontWithEffect:(NSInteger)fp8 canClose:(BOOL)fp12;
-- (void)_makeKeyAndOrderFrontWithEffect:(NSInteger)fp8 canClose:(BOOL)fp12 willOpen:(BOOL)fp16 toFullscreen:(BOOL)fp20;
-- (NSInteger)openingEffect;
-- (void)closePanel;
-- (void)close;
-- (void)closeWithEffect:(NSInteger)fp8;
-- (void)closeWithEffect:(NSInteger)fp8 canReopen:(BOOL)fp12;
-- (void)_closeWithEffect:(NSInteger)fp8 canReopen:(BOOL)fp12;
-- (void)windowEffectDidTerminate:(id)fp8;
-- (void)_close:(id)fp8;
-- (void)sendEvent:(id)fp8;
-- (void)selectNextItem;
-- (void)selectPreviousItem;
-- (void)setURLs:(id)fp8 currentIndex:(NSUInteger)fp12 preservingDisplayState:(BOOL)fp16;
-- (void)setURLs:(id)fp8 preservingDisplayState:(BOOL)fp12;
-- (void)setURLs:(id)fp8;
-- (id)URLs;
-- (NSUInteger)indexOfCurrentURL;
-- (void)setIndexOfCurrentURL:(NSUInteger)fp8;
-- (void)setDelegate:(id)fp8;
-- (id)sharedPreviewView;
-- (void)setSharedPreviewView:(id)fp8;
-- (void)setCyclesSelection:(BOOL)fp8;
-- (BOOL)cyclesSelection;
-- (void)setShowsAddToiPhotoButton:(BOOL)fp8;
-- (BOOL)showsAddToiPhotoButton;
-- (void)setShowsiChatTheaterButton:(BOOL)fp8;
-- (BOOL)showsiChatTheaterButton;
-- (void)setShowsFullscreenButton:(BOOL)fp8;
-- (BOOL)showsFullscreenButton;
-- (void)setShowsIndexSheetButton:(BOOL)fp8;
-- (BOOL)showsIndexSheetButton;
-- (void)setAutostarts:(BOOL)fp8;
-- (BOOL)autostarts;
-- (void)setPlaysDuringPanelAnimation:(BOOL)fp8;
-- (BOOL)playsDuringPanelAnimation;
-- (void)setDeferredLoading:(BOOL)fp8;
-- (BOOL)deferredLoading;
-- (void)setEnableDragNDrop:(BOOL)fp8;
-- (BOOL)enableDragNDrop;
-- (void)start:(id)fp8;
-- (void)stop:(id)fp8;
-- (void)setShowsIndexSheet:(BOOL)fp8;
-- (BOOL)showsIndexSheet;
-- (void)setShareWithiChat:(BOOL)fp8;
-- (BOOL)shareWithiChat;
-- (void)setPlaysSlideShow:(BOOL)fp8;
-- (BOOL)playsSlideShow;
-- (void)setIsFullscreen:(BOOL)fp8;
-- (BOOL)isFullscreen;
-- (void)setMandatoryClient:(id)fp8;
-- (id)mandatoryClient;
-- (void)setForcedContentTypeUTI:(id)fp8;
-- (id)forcedContentTypeUTI;
-- (void)setDocumentURLs:(id)fp8;
-- (void)setDocumentURLs:(id)fp8 preservingDisplayState:(BOOL)fp12;
-- (void)setDocumentURLs:(id)fp8 itemFrame:(struct _NSRect)fp12;
-- (void)setURLs:(id)fp8 itemFrame:(struct _NSRect)fp12;
-- (void)setAutoSizeAndCenterOnScreen:(BOOL)fp8;
-- (void)setShowsAddToiPhoto:(BOOL)fp8;
-- (void)setShowsiChatTheater:(BOOL)fp8;
-- (void)setShowsFullscreen:(BOOL)fp8;
-
-@end
diff --git a/Source/SPActivityTextFieldCell.m b/Source/SPActivityTextFieldCell.m
index 52b85bdd..b09454bb 100644
--- a/Source/SPActivityTextFieldCell.m
+++ b/Source/SPActivityTextFieldCell.m
@@ -206,7 +206,7 @@ static inline NSRect SPTextLinkRectFromCellRect(NSRect inRect)
/**
* Allow hit tracking for cancel functionality
*/
-- (NSUInteger)hitTestForEvent:(NSEvent *)event inRect:(NSRect)cellFrame ofView:(NSView *)controlView
+- (NSCellHitResult)hitTestForEvent:(NSEvent *)event inRect:(NSRect)cellFrame ofView:(NSView *)controlView
{
return NSCellHitContentArea | NSCellHitTrackableArea;
}
@@ -324,10 +324,10 @@ static inline NSRect SPTextLinkRectFromCellRect(NSRect inRect)
*/
- (void)dealloc
{
- if(activityName) [activityName release], activityName = nil;
- if(activityInfo) [activityInfo release], activityInfo = nil;
- if(contextInfo) [contextInfo release], contextInfo = nil;
- if(cancelButton) [cancelButton release];
+ if(activityName) SPClear(activityName);
+ if(activityInfo) SPClear(activityInfo);
+ if(contextInfo) SPClear(contextInfo);
+ if(cancelButton) SPClear(cancelButton);
[super dealloc];
}
diff --git a/Source/SPAppController.m b/Source/SPAppController.m
index 44f3513d..0d60437b 100644
--- a/Source/SPAppController.m
+++ b/Source/SPAppController.m
@@ -440,8 +440,8 @@
[spfsDocData setObject:[NSNumber numberWithBool:[[spfs objectForKey:@"save_editor_content"] boolValue]] forKey:@"save_editor_content"];
// Set global session properties
- [[NSApp delegate] setSpfSessionDocData:spfsDocData];
- [[NSApp delegate] setSessionURL:[NSURL fileURLWithPath:filePath]];
+ [SPAppDelegate setSpfSessionDocData:spfsDocData];
+ [SPAppDelegate setSessionURL:[NSURL fileURLWithPath:filePath]];
// Loop through each defined window in reversed order to reconstruct the last active window
for (NSDictionary *window in [[[spfs objectForKey:@"windows"] reverseObjectEnumerator] allObjects])
@@ -670,10 +670,10 @@
}
// Update Bundle Editor if it was already initialized
- for (id win in [NSApp windows])
+ for (NSWindow *win in [NSApp windows])
{
- if ([[[[win delegate] class] description] isEqualToString:@"SPBundleEditorController"]) {
- [[win delegate] reloadBundles:nil];
+ if ([[win delegate] class] == [SPBundleEditorController class]) {
+ [((SPBundleEditorController *)[win delegate]) reloadBundles:nil];
break;
}
}
@@ -738,7 +738,7 @@
if([pathComponents count] > 2)
parameter = [pathComponents subarrayWithRange:NSMakeRange(2, [pathComponents count]-2)];
else
- parameter = [NSArray array];
+ parameter = @[];
NSFileManager *fm = [NSFileManager defaultManager];
@@ -993,7 +993,7 @@
{
NSInteger idx = [sender tag] - 1000000;
NSString *infoPath = nil;
- NSArray *scopeBundleItems = [[NSApp delegate] bundleItemsForScope:SPBundleScopeGeneral];
+ NSArray *scopeBundleItems = [SPAppDelegate bundleItemsForScope:SPBundleScopeGeneral];
if(idx >=0 && idx < (NSInteger)[scopeBundleItems count]) {
infoPath = [[scopeBundleItems objectAtIndex:idx] objectForKey:SPBundleInternPathToFileKey];
} else {
@@ -1137,7 +1137,7 @@
[c setWindowUUID:[cmdData objectForKey:SPBundleFileUUIDKey]];
[c setDocUUID:uuid];
[c displayHTMLContent:output withOptions:nil];
- [[NSApp delegate] addHTMLOutputController:c];
+ [SPAppDelegate addHTMLOutputController:c];
}
}
}
@@ -1243,12 +1243,12 @@
SPDatabaseDocument* frontMostDoc = [self frontDocument];
if(frontMostDoc) {
if([runningActivitiesArray count] || [[frontMostDoc runningActivities] count])
- [frontMostDoc performSelector:@selector(setActivityPaneHidden:) withObject:[NSNumber numberWithInteger:0] afterDelay:1.0];
+ [frontMostDoc performSelector:@selector(setActivityPaneHidden:) withObject:@0 afterDelay:1.0];
else {
[NSObject cancelPreviousPerformRequestsWithTarget:frontMostDoc
selector:@selector(setActivityPaneHidden:)
- object:[NSNumber numberWithInteger:0]];
- [frontMostDoc setActivityPaneHidden:[NSNumber numberWithInteger:1]];
+ object:@0];
+ [frontMostDoc setActivityPaneHidden:@1];
}
}
@@ -1268,12 +1268,12 @@
SPDatabaseDocument* frontMostDoc = [self frontDocument];
if(frontMostDoc) {
if([runningActivitiesArray count] || [[frontMostDoc runningActivities] count])
- [frontMostDoc performSelector:@selector(setActivityPaneHidden:) withObject:[NSNumber numberWithInteger:0] afterDelay:1.0];
+ [frontMostDoc performSelector:@selector(setActivityPaneHidden:) withObject:@0 afterDelay:1.0];
else {
[NSObject cancelPreviousPerformRequestsWithTarget:frontMostDoc
selector:@selector(setActivityPaneHidden:)
- object:[NSNumber numberWithInteger:0]];
- [frontMostDoc setActivityPaneHidden:[NSNumber numberWithInteger:1]];
+ object:@0];
+ [frontMostDoc setActivityPaneHidden:@1];
}
}
}
@@ -1355,7 +1355,7 @@
*/
- (void)setSessionURL:(NSString *)urlString
{
- if(_sessionURL) [_sessionURL release], _sessionURL = nil;
+ if(_sessionURL) SPClear(_sessionURL);
if(urlString)
_sessionURL = [[NSURL fileURLWithPath:urlString] retain];
}
@@ -1533,7 +1533,7 @@
if([[NSUserDefaults standardUserDefaults] objectForKey:SPBundleDeletedDefaultBundlesKey])
deletedDefaultBundles = [[[NSUserDefaults standardUserDefaults] objectForKey:SPBundleDeletedDefaultBundlesKey] retain];
else
- deletedDefaultBundles = [[NSArray array] retain];
+ deletedDefaultBundles = [@[] retain];
NSMutableString *infoAboutUpdatedDefaultBundles = [NSMutableString string];
BOOL doBundleUpdate = ([[NSUserDefaults standardUserDefaults] objectForKey:@"doBundleUpdate"]) ? YES : NO;
@@ -1775,7 +1775,7 @@
// Sort items for menus
NSSortDescriptor *sortDescriptor = [[[NSSortDescriptor alloc] initWithKey:SPBundleInternLabelKey ascending:YES] autorelease];
for(NSString* scope in [bundleItems allKeys]) {
- [[bundleItems objectForKey:scope] sortUsingDescriptors:[NSArray arrayWithObject:sortDescriptor]];
+ [[bundleItems objectForKey:scope] sortUsingDescriptors:@[sortDescriptor]];
[[bundleCategories objectForKey:scope] sortUsingSelector:@selector(compare:)];
}
}
@@ -1821,17 +1821,19 @@
// For each scope add a submenu but not for the last one (should be General always)
[menu addItem:[NSMenuItem separatorItem]];
[menu setAutoenablesItems:YES];
- NSArray *scopes = [NSArray arrayWithObjects:SPBundleScopeInputField, SPBundleScopeDataTable, SPBundleScopeGeneral, nil];
- NSArray *scopeTitles = [NSArray arrayWithObjects:NSLocalizedString(@"Input Field", @"input field menu item label"),
- NSLocalizedString(@"Data Table", @"data table menu item label"),
- NSLocalizedString(@"General", @"general menu item label"),nil];
+ NSArray *scopes = @[SPBundleScopeInputField, SPBundleScopeDataTable, SPBundleScopeGeneral];
+ NSArray *scopeTitles = @[
+ NSLocalizedString(@"Input Field", @"input field menu item label"),
+ NSLocalizedString(@"Data Table", @"data table menu item label"),
+ NSLocalizedString(@"General", @"general menu item label")
+ ];
NSUInteger k = 0;
BOOL bundleOtherThanGeneralFound = NO;
for(NSString* scope in scopes) {
- NSArray *scopeBundleCategories = [[NSApp delegate] bundleCategoriesForScope:scope];
- NSArray *scopeBundleItems = [[NSApp delegate] bundleItemsForScope:scope];
+ NSArray *scopeBundleCategories = [SPAppDelegate bundleCategoriesForScope:scope];
+ NSArray *scopeBundleItems = [SPAppDelegate bundleItemsForScope:scope];
if(![scopeBundleItems count]) {
k++;
@@ -1949,7 +1951,7 @@
// Sort if more than one found
if([assignedKeyEquivalents count] > 1) {
NSSortDescriptor *aSortDescriptor = [[[NSSortDescriptor alloc] initWithKey:@"title" ascending:YES selector:@selector(caseInsensitiveCompare:)] autorelease];
- NSArray *sorted = [assignedKeyEquivalents sortedArrayUsingDescriptors:[NSArray arrayWithObject:aSortDescriptor]];
+ NSArray *sorted = [assignedKeyEquivalents sortedArrayUsingDescriptors:@[aSortDescriptor]];
[assignedKeyEquivalents setArray:sorted];
}
}
@@ -2023,19 +2025,18 @@
*/
- (NSMutableDictionary*)anonymizePreferencesForFeedbackReport:(NSMutableDictionary *)preferences
{
- [preferences removeObjectsForKeys:
- [NSArray arrayWithObjects:
- @"ContentFilters",
- @"favorites",
- @"lastSqlFileName",
- @"NSNavLastRootDirectory",
- @"openPath",
- @"queryFavorites",
- @"queryHistory",
- @"tableColumnWidths",
- @"savePath",
- @"NSRecentDocumentRecords",
- nil]];
+ [preferences removeObjectsForKeys:@[
+ @"ContentFilters",
+ @"favorites",
+ @"lastSqlFileName",
+ @"NSNavLastRootDirectory",
+ @"openPath",
+ @"queryFavorites",
+ @"queryHistory",
+ @"tableColumnWidths",
+ @"savePath",
+ @"NSRecentDocumentRecords"
+ ]];
return preferences;
}
@@ -2230,22 +2231,22 @@
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
- if (bundleItems) [bundleItems release];
- if (bundleUsedScopes) [bundleUsedScopes release];
- if (bundleHTMLOutputController) [bundleHTMLOutputController release];
- if (bundleCategories) [bundleCategories release];
- if (bundleTriggers) [bundleTriggers release];
- if (bundleKeyEquivalents) [bundleKeyEquivalents release];
- if (installedBundleUUIDs) [installedBundleUUIDs release];
- if (runningActivitiesArray) [runningActivitiesArray release];
+ if (bundleItems) SPClear(bundleItems);
+ if (bundleUsedScopes) SPClear(bundleUsedScopes);
+ if (bundleHTMLOutputController) SPClear(bundleHTMLOutputController);
+ if (bundleCategories) SPClear(bundleCategories);
+ if (bundleTriggers) SPClear(bundleTriggers);
+ if (bundleKeyEquivalents) SPClear(bundleKeyEquivalents);
+ if (installedBundleUUIDs) SPClear(installedBundleUUIDs);
+ if (runningActivitiesArray) SPClear(runningActivitiesArray);
- [prefsController release], prefsController = nil;
+ SPClear(prefsController);
- if (aboutController) [aboutController release], aboutController = nil;
- if (bundleEditorController) [bundleEditorController release], bundleEditorController = nil;
+ if (aboutController) SPClear(aboutController);
+ if (bundleEditorController) SPClear(bundleEditorController);
- if (_sessionURL) [_sessionURL release], _sessionURL = nil;
- if (_spfSessionDocData) [_spfSessionDocData release], _spfSessionDocData = nil;
+ if (_sessionURL) SPClear(_sessionURL);
+ if (_spfSessionDocData) SPClear(_spfSessionDocData);
[super dealloc];
}
diff --git a/Source/SPBundleCommandRunner.m b/Source/SPBundleCommandRunner.m
index 2842ce4e..08fad6f1 100644
--- a/Source/SPBundleCommandRunner.m
+++ b/Source/SPBundleCommandRunner.m
@@ -30,6 +30,7 @@
#import "SPBundleCommandRunner.h"
#import "SPDatabaseDocument.h"
+#import "SPAppController.h"
// Defined to suppress warnings
@interface NSObject (SPBundleMethods)
@@ -91,11 +92,11 @@
[fm removeItemAtPath:scriptFilePath error:nil];
[fm removeItemAtPath:stdoutFilePath error:nil];
- if([[NSApp delegate] lastBundleBlobFilesDirectory] != nil)
- [fm removeItemAtPath:[[NSApp delegate] lastBundleBlobFilesDirectory] error:nil];
+ if([SPAppDelegate lastBundleBlobFilesDirectory] != nil)
+ [fm removeItemAtPath:[SPAppDelegate lastBundleBlobFilesDirectory] error:nil];
if([shellEnvironment objectForKey:SPBundleShellVariableBlobFileDirectory])
- [[NSApp delegate] setLastBundleBlobFilesDirectory:[shellEnvironment objectForKey:SPBundleShellVariableBlobFileDirectory]];
+ [SPAppDelegate setLastBundleBlobFilesDirectory:[shellEnvironment objectForKey:SPBundleShellVariableBlobFileDirectory]];
// Parse first line for magic header #! ; if found save the script content and run the command after #! with that file.
// This allows to write perl, ruby, osascript scripts natively.
@@ -218,7 +219,7 @@
// register command
pid = [bashTask processIdentifier];
NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithInteger:pid], @"pid",
- (contextInfo)?:[NSDictionary dictionary], @"contextInfo",
+ (contextInfo)?: @{}, @"contextInfo",
@"bashcommand", @"type",
[[NSDate date] descriptionWithCalendarFormat:@"%H:%M:%S" timeZone:nil locale:[[NSUserDefaults standardUserDefaults] dictionaryRepresentation]], @"starttime",
nil];
@@ -296,7 +297,7 @@
// Read STDOUT saved to file
if([fm fileExistsAtPath:stdoutFilePath isDirectory:nil]) {
NSString *stdoutContent = [NSString stringWithContentsOfFile:stdoutFilePath encoding:NSUTF8StringEncoding error:nil];
- if(bashTask) [bashTask release], bashTask = nil;
+ if(bashTask) SPClear(bashTask);
[fm removeItemAtPath:stdoutFilePath error:nil];
if(stdoutContent != nil) {
if (status == 0) {
diff --git a/Source/SPBundleCommandTextView.m b/Source/SPBundleCommandTextView.m
index 4ca63451..f8d4e53f 100644
--- a/Source/SPBundleCommandTextView.m
+++ b/Source/SPBundleCommandTextView.m
@@ -40,8 +40,8 @@
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
[prefs removeObserver:self forKeyPath:SPCustomQueryEditorTabStopWidth];
- [prefs release];
- [lineNumberView release];
+ SPClear(prefs);
+ SPClear(lineNumberView);
[super dealloc];
}
@@ -377,7 +377,7 @@
NSInteger tabStopWidth = [prefs integerForKey:SPCustomQueryEditorTabStopWidth];
if(tabStopWidth < 1) tabStopWidth = 1;
- float tabWidth = NSSizeToCGSize([@" " sizeWithAttributes:[NSDictionary dictionaryWithObject:tvFont forKey:NSFontAttributeName]]).width;
+ float tabWidth = NSSizeToCGSize([@" " sizeWithAttributes:@{NSFontAttributeName : tvFont}]).width;
tabWidth = (float)tabStopWidth * tabWidth;
NSInteger numberOfTabs = 256/tabStopWidth;
diff --git a/Source/SPBundleEditorController.m b/Source/SPBundleEditorController.m
index 8ae9ceac..01aca387 100644
--- a/Source/SPBundleEditorController.m
+++ b/Source/SPBundleEditorController.m
@@ -34,6 +34,7 @@
#import "SPOutlineView.h"
#import "SPBundleCommandTextView.h"
#import "SPSplitView.h"
+#import "SPAppController.h"
static NSString *SPSaveBundleAction = @"SPSaveBundle";
@@ -119,7 +120,6 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
inputGeneralScopePopUpMenu = [[NSMenu alloc] initWithTitle:@""];
inputInputFieldScopePopUpMenu = [[NSMenu alloc] initWithTitle:@""];
inputDataTableScopePopUpMenu = [[NSMenu alloc] initWithTitle:@""];
- inputNonePopUpMenu = [[NSMenu alloc] initWithTitle:@""];
outputGeneralScopePopUpMenu = [[NSMenu alloc] initWithTitle:@""];
outputInputFieldScopePopUpMenu = [[NSMenu alloc] initWithTitle:@""];
outputDataTableScopePopUpMenu = [[NSMenu alloc] initWithTitle:@""];
@@ -128,18 +128,20 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
triggerDataTablePopUpMenu = [[NSMenu alloc] initWithTitle:@""];
triggerGeneralPopUpMenu = [[NSMenu alloc] initWithTitle:@""];
withBlobDataTablePopUpMenu = [[NSMenu alloc] initWithTitle:@""];
+ inputNonePopUpMenu = [[NSMenu alloc] initWithTitle:@""];
- inputGeneralScopeArray = [[NSArray arrayWithObjects:SPBundleInputSourceNone, nil] retain];
- inputInputFieldScopeArray = [[NSArray arrayWithObjects:SPBundleInputSourceNone, SPBundleInputSourceSelectedText, SPBundleInputSourceEntireContent, nil] retain];
- inputDataTableScopeArray = [[NSArray arrayWithObjects:SPBundleInputSourceNone, SPBundleInputSourceSelectedTableRowsAsTab, SPBundleInputSourceSelectedTableRowsAsCsv, SPBundleInputSourceSelectedTableRowsAsSqlInsert, SPBundleInputSourceTableRowsAsTab, SPBundleInputSourceTableRowsAsCsv, SPBundleInputSourceTableRowsAsSqlInsert, nil] retain];
- outputInputFieldScopeArray = [[NSArray arrayWithObjects:SPBundleOutputActionNone, SPBundleOutputActionInsertAsText, SPBundleOutputActionInsertAsSnippet, SPBundleOutputActionReplaceSelection, SPBundleOutputActionReplaceContent, SPBundleOutputActionShowAsTextTooltip, SPBundleOutputActionShowAsHTMLTooltip, SPBundleOutputActionShowAsHTML, nil] retain];
- outputGeneralScopeArray = [[NSArray arrayWithObjects:SPBundleOutputActionNone, SPBundleOutputActionShowAsTextTooltip, SPBundleOutputActionShowAsHTMLTooltip, SPBundleOutputActionShowAsHTML, nil] retain];
- outputDataTableScopeArray = [[NSArray arrayWithObjects:SPBundleOutputActionNone, SPBundleOutputActionShowAsTextTooltip, SPBundleOutputActionShowAsHTMLTooltip, SPBundleOutputActionShowAsHTML, nil] retain];
- inputFallbackInputFieldScopeArray = [[NSArray arrayWithObjects:SPBundleInputSourceNone, SPBundleInputSourceCurrentWord, SPBundleInputSourceCurrentLine, SPBundleInputSourceCurrentQuery, SPBundleInputSourceEntireContent, nil] retain];
- triggerInputFieldArray = [[NSArray arrayWithObjects:SPBundleTriggerActionNone, nil] retain];
- triggerDataTableArray = [[NSArray arrayWithObjects:SPBundleTriggerActionNone, SPBundleTriggerActionDatabaseChanged, SPBundleTriggerActionTableChanged, SPBundleTriggerActionTableRowChanged, nil] retain];
- triggerGeneralArray = [[NSArray arrayWithObjects:SPBundleTriggerActionNone, SPBundleTriggerActionDatabaseChanged, SPBundleTriggerActionTableChanged, nil] retain];
- withBlobDataTableArray = [[NSArray arrayWithObjects:SPBundleInputSourceBlobHandlingExclude, SPBundleInputSourceBlobHandlingInclude, SPBundleInputSourceBlobHandlingImageFileReference, SPBundleInputSourceBlobHandlingFileReference, nil] retain];
+ inputGeneralScopeArray = [@[SPBundleInputSourceNone] retain];
+ inputInputFieldScopeArray = [@[SPBundleInputSourceNone, SPBundleInputSourceSelectedText, SPBundleInputSourceEntireContent] retain];
+ inputDataTableScopeArray = [@[SPBundleInputSourceNone, SPBundleInputSourceSelectedTableRowsAsTab, SPBundleInputSourceSelectedTableRowsAsCsv, SPBundleInputSourceSelectedTableRowsAsSqlInsert, SPBundleInputSourceTableRowsAsTab, SPBundleInputSourceTableRowsAsCsv, SPBundleInputSourceTableRowsAsSqlInsert] retain];
+ outputInputFieldScopeArray = [@[SPBundleOutputActionNone, SPBundleOutputActionInsertAsText, SPBundleOutputActionInsertAsSnippet, SPBundleOutputActionReplaceSelection, SPBundleOutputActionReplaceContent, SPBundleOutputActionShowAsTextTooltip, SPBundleOutputActionShowAsHTMLTooltip, SPBundleOutputActionShowAsHTML] retain];
+ outputGeneralScopeArray = [@[SPBundleOutputActionNone, SPBundleOutputActionShowAsTextTooltip, SPBundleOutputActionShowAsHTMLTooltip, SPBundleOutputActionShowAsHTML] retain];
+ outputDataTableScopeArray = [@[SPBundleOutputActionNone, SPBundleOutputActionShowAsTextTooltip, SPBundleOutputActionShowAsHTMLTooltip, SPBundleOutputActionShowAsHTML] retain];
+ inputFallbackInputFieldScopeArray = [@[SPBundleInputSourceNone, SPBundleInputSourceCurrentWord, SPBundleInputSourceCurrentLine, SPBundleInputSourceCurrentQuery, SPBundleInputSourceEntireContent] retain];
+ triggerInputFieldArray = [@[SPBundleTriggerActionNone] retain];
+ triggerDataTableArray = [@[SPBundleTriggerActionNone, SPBundleTriggerActionDatabaseChanged, SPBundleTriggerActionTableChanged, SPBundleTriggerActionTableRowChanged] retain];
+ triggerGeneralArray = [@[SPBundleTriggerActionNone, SPBundleTriggerActionDatabaseChanged, SPBundleTriggerActionTableChanged] retain];
+ withBlobDataTableArray = [@[SPBundleInputSourceBlobHandlingExclude, SPBundleInputSourceBlobHandlingInclude, SPBundleInputSourceBlobHandlingImageFileReference, SPBundleInputSourceBlobHandlingFileReference] retain];
+ NSArray *inputNoneArray = @[SPBundleInputSourceNone]; //we only need that once to construct the menu
NSMutableArray *allPopupScopeItems = [NSMutableArray array];
[allPopupScopeItems addObjectsFromArray:inputGeneralScopeArray];
@@ -153,127 +155,98 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
[allPopupScopeItems addObjectsFromArray:triggerDataTableArray];
[allPopupScopeItems addObjectsFromArray:triggerGeneralArray];
[allPopupScopeItems addObjectsFromArray:withBlobDataTableArray];
-
- NSDictionary *menuItemTitles = [NSDictionary dictionaryWithObjects:
- [NSArray arrayWithObjects:
- NSLocalizedString(@"None", @"Bundle Editor : Scope=General : Input source dropdown: 'None' item"),
-
- NSLocalizedString(@"None", @"Bundle Editor : Scope=Field : Input source dropdown: 'None' item"),
- NSLocalizedString(@"Selected Text", @"Bundle Editor : Scope=Field : Input source dropdown: 'selected text' item"),
- NSLocalizedString(@"Entire Content", @"Bundle Editor : Scope=Field : Input source dropdown: 'entire content' item"),
-
- NSLocalizedString(@"None", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'none' item"),
- NSLocalizedString(@"Selected Rows (TSV)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'selected rows as tab-separated' item"),
- NSLocalizedString(@"Selected Rows (CSV)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'selected rows as comma-separated' item"),
- NSLocalizedString(@"Selected Rows (SQL)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'selected rows as SQL' item"),
- NSLocalizedString(@"Table Content (TSV)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'table content as tab-separated' item"),
- NSLocalizedString(@"Table Content (CSV)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'table content as comma-separated' item"),
- NSLocalizedString(@"Table Content (SQL)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'table content as SQL' item"),
-
- NSLocalizedString(@"None", @"Bundle Editor : Scope=Field : Output dropdown : 'none' item"),
- NSLocalizedString(@"Insert as Text", @"Bundle Editor : Scope=Field : Output dropdown : 'insert as text' item"),
- NSLocalizedString(@"Insert as Snippet", @"Bundle Editor : Scope=Field : Output dropdown : 'insert as snippet' item"),
- NSLocalizedString(@"Replace Selection", @"Bundle Editor : Scope=Field : Output dropdown : 'replace selection' item"),
- NSLocalizedString(@"Replace Entire Content", @"Bundle Editor : Scope=Field : Output dropdown : 'replace entire content' item"),
- NSLocalizedString(@"Show as Text Tooltip", @"Bundle Editor : Scope=Field : Output dropdown : 'show as text tooltip' item"),
- NSLocalizedString(@"Show as HTML Tooltip", @"Bundle Editor : Scope=Field : Output dropdown : 'show as html tooltip' item"),
- NSLocalizedString(@"Show as HTML", @"Bundle Editor : Scope=Field : Output dropdown : 'show as html' item"),
-
- NSLocalizedString(@"None", @"Bundle Editor : Scope=General : Output dropdown : 'none' item"),
- NSLocalizedString(@"Show as Text Tooltip", @"Bundle Editor : Scope=General : Output dropdown : 'show as text tooltip' item"),
- NSLocalizedString(@"Show as HTML Tooltip", @"Bundle Editor : Scope=General : Output dropdown : 'show as html tooltip' item"),
- NSLocalizedString(@"Show as HTML", @"Bundle Editor : Scope=General : Output dropdown : 'show as html' item"),
-
- NSLocalizedString(@"None", @"Bundle Editor : Scope=Data-Table : Output dropdown : 'none' item"),
- NSLocalizedString(@"Show as Text Tooltip", @"Bundle Editor : Scope=Data-Table : Output dropdown : 'show as text tooltip' item"),
- NSLocalizedString(@"Show as HTML Tooltip", @"Bundle Editor : Scope=Data-Table : Output dropdown : 'show as html tooltip' item"),
- NSLocalizedString(@"Show as HTML", @"Bundle Editor : Scope=Data-Table : Output dropdown : 'show as html' item"),
-
- NSLocalizedString(@"None", @"Bundle Editor : Fallback Input source dropdown : 'none' item"),
- NSLocalizedString(@"Current Word", @"Bundle Editor : Fallback Input source dropdown : 'current word' item"),
- NSLocalizedString(@"Current Line", @"Bundle Editor : Fallback Input source dropdown : 'current line' item"),
- NSLocalizedString(@"Current Query", @"Bundle Editor : Fallback Input source dropdown : 'current query' item"),
- NSLocalizedString(@"Entire Content", @"Bundle Editor : Fallback Input source dropdown : 'entire content' item"),
-
- NSLocalizedString(@"None", @"Bundle Editor : Scope=Field : Trigger dropdown : 'none' item"),
-
- NSLocalizedString(@"None", @"Bundle Editor : Scope=Data-Table : Trigger dropdown : 'none' item"),
- NSLocalizedString(@"Database changed", @"Bundle Editor : Scope=Data-Table : Trigger dropdown : 'database changed' item"),
- NSLocalizedString(@"Table changed", @"Bundle Editor : Scope=Data-Table : Trigger dropdown : 'table changed' item"),
- NSLocalizedString(@"Table Row changed", @"Bundle Editor : Scope=Data-Table : Trigger dropdown : 'table row changed' item"),
-
- NSLocalizedString(@"None", @"Bundle Editor : Scope=General : Trigger dropdown : 'none' item"),
- NSLocalizedString(@"Database changed", @"Bundle Editor : Scope=General : Trigger dropdown : 'database changed' item"),
- NSLocalizedString(@"Table changed", @"Bundle Editor : Scope=General : Trigger dropdown : 'table changed' item"),
-
- NSLocalizedString(@"exclude BLOB", @"Bundle Editor : BLOB dropdown : 'exclude BLOB' item"),
- NSLocalizedString(@"include BLOB", @"Bundle Editor : BLOB dropdown : 'include BLOB' item"),
- NSLocalizedString(@"save BLOB as image file", @"Bundle Editor : BLOB dropdown : 'save BLOB as image file' item"),
- NSLocalizedString(@"save BLOB as dat file", @"Bundle Editor : BLOB dropdown : 'save BLOB as dat file' item"),
-
- nil]
- forKeys:allPopupScopeItems];
-
- NSMenuItem *anItem;
- for(NSString* title in inputGeneralScopeArray) {
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:@selector(inputPopupButtonChanged:) keyEquivalent:@""];
- [inputGeneralScopePopUpMenu addItem:anItem];
- [anItem release];
- }
- for(NSString* title in inputInputFieldScopeArray) {
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:@selector(inputPopupButtonChanged:) keyEquivalent:@""];
- [inputInputFieldScopePopUpMenu addItem:anItem];
- [anItem release];
- }
- for(NSString* title in inputDataTableScopeArray) {
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:@selector(inputPopupButtonChanged:) keyEquivalent:@""];
- [inputDataTableScopePopUpMenu addItem:anItem];
- [anItem release];
- }
- for(NSString* title in outputGeneralScopeArray) {
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:@selector(outputPopupButtonChanged:) keyEquivalent:@""];
- [outputGeneralScopePopUpMenu addItem:anItem];
- [anItem release];
- }
- for(NSString* title in outputInputFieldScopeArray) {
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:@selector(outputPopupButtonChanged:) keyEquivalent:@""];
- [outputInputFieldScopePopUpMenu addItem:anItem];
- [anItem release];
- }
- for(NSString* title in outputDataTableScopeArray) {
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:@selector(outputPopupButtonChanged:) keyEquivalent:@""];
- [outputDataTableScopePopUpMenu addItem:anItem];
- [anItem release];
- }
- for(NSString* title in inputFallbackInputFieldScopeArray) {
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:@selector(inputFallbackPopupButtonChanged:) keyEquivalent:@""];
- [inputFallbackInputFieldScopePopUpMenu addItem:anItem];
- [anItem release];
- }
- for(NSString* title in triggerInputFieldArray) {
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:@selector(triggerButtonChanged:) keyEquivalent:@""];
- [triggerInputFieldPopUpMenu addItem:anItem];
- [anItem release];
- }
- for(NSString* title in triggerDataTableArray) {
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:@selector(triggerButtonChanged:) keyEquivalent:@""];
- [triggerDataTablePopUpMenu addItem:anItem];
- [anItem release];
- }
- for(NSString* title in triggerGeneralArray) {
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:@selector(triggerButtonChanged:) keyEquivalent:@""];
- [triggerGeneralPopUpMenu addItem:anItem];
- [anItem release];
- }
- for(NSString* title in withBlobDataTableArray) {
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:@selector(withBlobButtonChanged:) keyEquivalent:@""];
- [withBlobDataTablePopUpMenu addItem:anItem];
- [anItem release];
+ [allPopupScopeItems addObjectsFromArray:inputNoneArray];
+
+ NSDictionary *menuItemTitles = [NSDictionary dictionaryWithObjects:@[
+ NSLocalizedString(@"None", @"Bundle Editor : Scope=General : Input source dropdown: 'None' item"),
+
+ NSLocalizedString(@"None", @"Bundle Editor : Scope=Field : Input source dropdown: 'None' item"),
+ NSLocalizedString(@"Selected Text", @"Bundle Editor : Scope=Field : Input source dropdown: 'selected text' item"),
+ NSLocalizedString(@"Entire Content", @"Bundle Editor : Scope=Field : Input source dropdown: 'entire content' item"),
+
+ NSLocalizedString(@"None", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'none' item"),
+ NSLocalizedString(@"Selected Rows (TSV)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'selected rows as tab-separated' item"),
+ NSLocalizedString(@"Selected Rows (CSV)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'selected rows as comma-separated' item"),
+ NSLocalizedString(@"Selected Rows (SQL)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'selected rows as SQL' item"),
+ NSLocalizedString(@"Table Content (TSV)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'table content as tab-separated' item"),
+ NSLocalizedString(@"Table Content (CSV)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'table content as comma-separated' item"),
+ NSLocalizedString(@"Table Content (SQL)", @"Bundle Editor : Scope=Data-Table : Input source dropdown: 'table content as SQL' item"),
+
+ NSLocalizedString(@"None", @"Bundle Editor : Scope=Field : Output dropdown : 'none' item"),
+ NSLocalizedString(@"Insert as Text", @"Bundle Editor : Scope=Field : Output dropdown : 'insert as text' item"),
+ NSLocalizedString(@"Insert as Snippet", @"Bundle Editor : Scope=Field : Output dropdown : 'insert as snippet' item"),
+ NSLocalizedString(@"Replace Selection", @"Bundle Editor : Scope=Field : Output dropdown : 'replace selection' item"),
+ NSLocalizedString(@"Replace Entire Content", @"Bundle Editor : Scope=Field : Output dropdown : 'replace entire content' item"),
+ NSLocalizedString(@"Show as Text Tooltip", @"Bundle Editor : Scope=Field : Output dropdown : 'show as text tooltip' item"),
+ NSLocalizedString(@"Show as HTML Tooltip", @"Bundle Editor : Scope=Field : Output dropdown : 'show as html tooltip' item"),
+ NSLocalizedString(@"Show as HTML", @"Bundle Editor : Scope=Field : Output dropdown : 'show as html' item"),
+
+ NSLocalizedString(@"None", @"Bundle Editor : Scope=General : Output dropdown : 'none' item"),
+ NSLocalizedString(@"Show as Text Tooltip", @"Bundle Editor : Scope=General : Output dropdown : 'show as text tooltip' item"),
+ NSLocalizedString(@"Show as HTML Tooltip", @"Bundle Editor : Scope=General : Output dropdown : 'show as html tooltip' item"),
+ NSLocalizedString(@"Show as HTML", @"Bundle Editor : Scope=General : Output dropdown : 'show as html' item"),
+
+ NSLocalizedString(@"None", @"Bundle Editor : Scope=Data-Table : Output dropdown : 'none' item"),
+ NSLocalizedString(@"Show as Text Tooltip", @"Bundle Editor : Scope=Data-Table : Output dropdown : 'show as text tooltip' item"),
+ NSLocalizedString(@"Show as HTML Tooltip", @"Bundle Editor : Scope=Data-Table : Output dropdown : 'show as html tooltip' item"),
+ NSLocalizedString(@"Show as HTML", @"Bundle Editor : Scope=Data-Table : Output dropdown : 'show as html' item"),
+
+ NSLocalizedString(@"None", @"Bundle Editor : Fallback Input source dropdown : 'none' item"),
+ NSLocalizedString(@"Current Word", @"Bundle Editor : Fallback Input source dropdown : 'current word' item"),
+ NSLocalizedString(@"Current Line", @"Bundle Editor : Fallback Input source dropdown : 'current line' item"),
+ NSLocalizedString(@"Current Query", @"Bundle Editor : Fallback Input source dropdown : 'current query' item"),
+ NSLocalizedString(@"Entire Content", @"Bundle Editor : Fallback Input source dropdown : 'entire content' item"),
+
+ NSLocalizedString(@"None", @"Bundle Editor : Scope=Field : Trigger dropdown : 'none' item"),
+
+ NSLocalizedString(@"None", @"Bundle Editor : Scope=Data-Table : Trigger dropdown : 'none' item"),
+ NSLocalizedString(@"Database changed", @"Bundle Editor : Scope=Data-Table : Trigger dropdown : 'database changed' item"),
+ NSLocalizedString(@"Table changed", @"Bundle Editor : Scope=Data-Table : Trigger dropdown : 'table changed' item"),
+ NSLocalizedString(@"Table Row changed", @"Bundle Editor : Scope=Data-Table : Trigger dropdown : 'table row changed' item"),
+
+ NSLocalizedString(@"None", @"Bundle Editor : Scope=General : Trigger dropdown : 'none' item"),
+ NSLocalizedString(@"Database changed", @"Bundle Editor : Scope=General : Trigger dropdown : 'database changed' item"),
+ NSLocalizedString(@"Table changed", @"Bundle Editor : Scope=General : Trigger dropdown : 'table changed' item"),
+
+ NSLocalizedString(@"exclude BLOB", @"Bundle Editor : BLOB dropdown : 'exclude BLOB' item"),
+ NSLocalizedString(@"include BLOB", @"Bundle Editor : BLOB dropdown : 'include BLOB' item"),
+ NSLocalizedString(@"save BLOB as image file", @"Bundle Editor : BLOB dropdown : 'save BLOB as image file' item"),
+ NSLocalizedString(@"save BLOB as dat file", @"Bundle Editor : BLOB dropdown : 'save BLOB as dat file' item"),
+
+ NSLocalizedString(@"None", @"Bundle Editor : Scope=? : ? dropdown: 'None' item")
+ ] forKeys:allPopupScopeItems];
+
+ struct _menuItemMap {
+ NSArray *items;
+ NSMenu *menu;
+ SEL action;
+ };
+
+ struct _menuItemMap menus[] = {
+ {inputGeneralScopeArray, inputGeneralScopePopUpMenu, @selector(inputPopupButtonChanged:)},
+ {inputInputFieldScopeArray, inputInputFieldScopePopUpMenu, @selector(inputPopupButtonChanged:)},
+ {inputDataTableScopeArray, inputDataTableScopePopUpMenu, @selector(inputPopupButtonChanged:)},
+ {outputGeneralScopeArray, outputGeneralScopePopUpMenu, @selector(outputPopupButtonChanged:)},
+ {outputInputFieldScopeArray, outputInputFieldScopePopUpMenu, @selector(outputPopupButtonChanged:)},
+ {outputDataTableScopeArray, outputDataTableScopePopUpMenu, @selector(outputPopupButtonChanged:)},
+ {inputFallbackInputFieldScopeArray, inputFallbackInputFieldScopePopUpMenu, @selector(inputFallbackPopupButtonChanged:)},
+ {triggerInputFieldArray, triggerInputFieldPopUpMenu, @selector(triggerButtonChanged:)},
+ {triggerDataTableArray, triggerDataTablePopUpMenu, @selector(triggerButtonChanged:)},
+ {triggerGeneralArray, triggerGeneralPopUpMenu, @selector(triggerButtonChanged:)},
+ {withBlobDataTableArray, withBlobDataTablePopUpMenu, @selector(withBlobButtonChanged:)},
+ {inputNoneArray, inputNonePopUpMenu, NULL}
+ };
+
+ for(unsigned int i=0;i<(sizeof(menus)/sizeof(struct _menuItemMap));i++) {
+ struct _menuItemMap *menu = &menus[i];
+ for(NSString* title in menu->items) {
+ NSMenuItem *anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:title] action:menu->action keyEquivalent:@""];
+ [menu->menu addItem:anItem];
+ [anItem release];
+ }
}
- anItem = [[NSMenuItem alloc] initWithTitle:[menuItemTitles objectForKey:SPBundleInputSourceNone] action:nil keyEquivalent:@""];
- [inputNonePopUpMenu addItem:anItem];
- [anItem release];
+ NSMenuItem *anItem;
[inputGeneralScopePopUpMenu compatibleRemoveAllItems];
anItem = [[NSMenuItem alloc] initWithTitle:SP_BUNDLEEDITOR_SCOPE_GENERAL_STRING action:@selector(scopeButtonChanged:) keyEquivalent:@""];
[anItem setTag:kGeneralScopeArrayIndex];
@@ -293,52 +266,51 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
[commandBundleTreeController setSortDescriptors:[NSArray arrayWithObjects:sortDescriptor, nil]];
- shellVariableSuggestions = [[NSArray arrayWithObjects:
- SPBundleShellVariableAllDatabases,
- SPBundleShellVariableAllFunctions,
- SPBundleShellVariableAllProcedures,
- SPBundleShellVariableAllTables,
- SPBundleShellVariableAllViews,
- SPBundleShellVariableAppResourcesDirectory,
- SPBundleShellVariableBlobFileDirectory,
- SPBundleShellVariableExitInsertAsSnippet,
- SPBundleShellVariableExitInsertAsText,
- SPBundleShellVariableExitNone,
- SPBundleShellVariableExitReplaceContent,
- SPBundleShellVariableExitReplaceSelection,
- SPBundleShellVariableExitShowAsHTML,
- SPBundleShellVariableExitShowAsHTMLTooltip,
- SPBundleShellVariableExitShowAsTextTooltip,
- SPBundleShellVariableInputFilePath,
- SPBundleShellVariableInputTableMetaData,
- SPBundleShellVariableBundlePath,
- SPBundleShellVariableBundleScope,
- SPBundleShellVariableCurrentEditedColumnName,
- SPBundleShellVariableCurrentEditedTable,
- SPBundleShellVariableCurrentHost,
- SPBundleShellVariableCurrentLine,
- SPBundleShellVariableCurrentPort,
- SPBundleShellVariableCurrentQuery,
- SPBundleShellVariableCurrentUser,
- SPBundleShellVariableCurrentWord,
- SPBundleShellVariableDataTableSource,
- SPBundleShellVariableDatabaseEncoding,
- SPBundleShellVariableIconFile,
- SPBundleShellVariableProcessID,
- SPBundleShellVariableQueryFile,
- SPBundleShellVariableQueryResultFile,
- SPBundleShellVariableQueryResultMetaFile,
- SPBundleShellVariableQueryResultStatusFile,
- SPBundleShellVariableRDBMSType,
- SPBundleShellVariableRDBMSVersion,
- SPBundleShellVariableSelectedDatabase,
- SPBundleShellVariableSelectedRowIndices,
- SPBundleShellVariableSelectedTable,
- SPBundleShellVariableSelectedTables,
- SPBundleShellVariableSelectedText,
- SPBundleShellVariableSelectedTextRange,
- SPBundleShellVariableUsedQueryForTable,
- nil
+ shellVariableSuggestions = [@[
+ SPBundleShellVariableAllDatabases,
+ SPBundleShellVariableAllFunctions,
+ SPBundleShellVariableAllProcedures,
+ SPBundleShellVariableAllTables,
+ SPBundleShellVariableAllViews,
+ SPBundleShellVariableAppResourcesDirectory,
+ SPBundleShellVariableBlobFileDirectory,
+ SPBundleShellVariableExitInsertAsSnippet,
+ SPBundleShellVariableExitInsertAsText,
+ SPBundleShellVariableExitNone,
+ SPBundleShellVariableExitReplaceContent,
+ SPBundleShellVariableExitReplaceSelection,
+ SPBundleShellVariableExitShowAsHTML,
+ SPBundleShellVariableExitShowAsHTMLTooltip,
+ SPBundleShellVariableExitShowAsTextTooltip,
+ SPBundleShellVariableInputFilePath,
+ SPBundleShellVariableInputTableMetaData,
+ SPBundleShellVariableBundlePath,
+ SPBundleShellVariableBundleScope,
+ SPBundleShellVariableCurrentEditedColumnName,
+ SPBundleShellVariableCurrentEditedTable,
+ SPBundleShellVariableCurrentHost,
+ SPBundleShellVariableCurrentLine,
+ SPBundleShellVariableCurrentPort,
+ SPBundleShellVariableCurrentQuery,
+ SPBundleShellVariableCurrentUser,
+ SPBundleShellVariableCurrentWord,
+ SPBundleShellVariableDataTableSource,
+ SPBundleShellVariableDatabaseEncoding,
+ SPBundleShellVariableIconFile,
+ SPBundleShellVariableProcessID,
+ SPBundleShellVariableQueryFile,
+ SPBundleShellVariableQueryResultFile,
+ SPBundleShellVariableQueryResultMetaFile,
+ SPBundleShellVariableQueryResultStatusFile,
+ SPBundleShellVariableRDBMSType,
+ SPBundleShellVariableRDBMSVersion,
+ SPBundleShellVariableSelectedDatabase,
+ SPBundleShellVariableSelectedRowIndices,
+ SPBundleShellVariableSelectedTable,
+ SPBundleShellVariableSelectedTables,
+ SPBundleShellVariableSelectedText,
+ SPBundleShellVariableSelectedTextRange,
+ SPBundleShellVariableUsedQueryForTable
] retain];
if([[NSUserDefaults standardUserDefaults] objectForKey:SPBundleDeletedDefaultBundlesKey]) {
@@ -347,7 +319,7 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
[self _initTree];
-}
+};
#pragma mark -
@@ -674,7 +646,7 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
if(category == nil) category = @"";
bundle = [NSMutableDictionary dictionaryWithObjects:[NSArray arrayWithObjects:NSLocalizedString(@"New Bundle",@"Bundle Editor : Default name for new bundle in the list on the left"), NSLocalizedString(@"New Name",@"Bundle Editor : Default name for a new bundle in the menu"), @"", scope, category, newUUID, nil]
- forKeys:[NSArray arrayWithObjects:kBundleNameKey, SPBundleFileNameKey, SPBundleFileCommandKey, SPBundleFileScopeKey, SPBundleFileCategoryKey, SPBundleFileUUIDKey, nil]];
+ forKeys:@[kBundleNameKey, SPBundleFileNameKey, SPBundleFileCommandKey, SPBundleFileScopeKey, SPBundleFileCategoryKey, SPBundleFileUUIDKey]];
}
if(![touchedBundleArray containsObject:[bundle objectForKey:kBundleNameKey]])
@@ -740,8 +712,8 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
- (IBAction)saveBundle:(id)sender
{
NSSavePanel *panel = [NSSavePanel savePanel];
-
- [panel setAllowedFileTypes:[NSArray arrayWithObject:SPUserBundleFileExtension]];
+
+ [panel setAllowedFileTypes:@[SPUserBundleFileExtension]];
[panel setExtensionHidden:NO];
[panel setAllowsOtherFileTypes:NO];
@@ -880,7 +852,7 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
[[self window] performClose:self];
}
- [[NSApp delegate] reloadBundles:self];
+ [SPAppDelegate reloadBundles:self];
}
@@ -928,9 +900,7 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
[saveDict setObject:[[saveDict objectForKey:SPBundleFileContactKey] rot13] forKey:SPBundleFileContactKey];
// Remove unnecessary keys
- [saveDict removeObjectsForKeys:[NSArray arrayWithObjects:
- kBundleNameKey,
- nil]];
+ [saveDict removeObjectsForKeys:@[kBundleNameKey]];
if(!isNewBundle) {
@@ -951,7 +921,7 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
if([[saveDict description] isEqualToString:[cmdData description]])
return YES;
if([cmdData objectForKey:SPBundleFileIsDefaultBundleKey])
- [saveDict setObject:[NSNumber numberWithBool:YES] forKey:SPBundleFileDefaultBundleWasModifiedKey];
+ [saveDict setObject:@YES forKey:SPBundleFileDefaultBundleWasModifiedKey];
}
if (cmdData) [cmdData release];
}
@@ -1083,7 +1053,7 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
[undeleteTableView reloadData];
[[NSUserDefaults standardUserDefaults] setObject:stillUndeletedBundles forKey:SPBundleDeletedDefaultBundlesKey];
[[NSUserDefaults standardUserDefaults] synchronize];
- [[NSApp delegate] reloadBundles:nil];
+ [SPAppDelegate reloadBundles:nil];
[self reloadBundles:self];
}
@@ -1120,10 +1090,9 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
// Remove temporary drag file if any
if(draggedFilePath) {
[[NSFileManager defaultManager] removeItemAtPath:draggedFilePath error:nil];
- [draggedFilePath release];
- draggedFilePath = nil;
+ SPClear(draggedFilePath);
}
- if(oldBundleName) [oldBundleName release], oldBundleName = nil;
+ if(oldBundleName) SPClear(oldBundleName);
}
#pragma mark -
@@ -1264,13 +1233,13 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
// Remember selected bundle name to reset the name if the user cancelled
// the editing of the bundle name
- if(oldBundleName) [oldBundleName release], oldBundleName = nil;
+ if(oldBundleName) SPClear(oldBundleName);
if(![[self _currentSelectedObject] objectForKey:kChildrenKey]) {
oldBundleName = [[[self _currentSelectedObject] objectForKey:kBundleNameKey] retain];
[self _enableBundleDataInput:YES bundleEnabled:![[[self _currentSelectedObject] objectForKey:@"disabled"] boolValue]];
} else {
[self _enableBundleDataInput:NO bundleEnabled:NO];
- if(oldBundleName) [oldBundleName release], oldBundleName = nil;
+ if(oldBundleName) SPClear(oldBundleName);
}
// Remember the selected bundle name in touchedBundleArray to save only those
@@ -1357,9 +1326,9 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
//abort editing
[control abortEditing];
[[NSApp mainWindow] makeFirstResponder:commandsOutlineView];
- return TRUE;
+ return YES;
} else{
- return FALSE;
+ return NO;
}
}
@@ -1416,7 +1385,7 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
[commandBundleTreeController rearrangeObjects];
[commandsOutlineView reloadData];
- if(oldBundleName) [oldBundleName release], oldBundleName = nil;
+ if(oldBundleName) SPClear(oldBundleName);
oldBundleName = [[[self _currentSelectedObject] objectForKey:kBundleNameKey] retain];
if(oldBundleName != nil && ![touchedBundleArray containsObject:oldBundleName])
[touchedBundleArray addObject:oldBundleName];
@@ -1492,7 +1461,7 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
/**
* Allow for drag-n-drop out of the application as a copy
*/
-- (NSUInteger)draggingSourceOperationMaskForLocal:(BOOL)isLocal
+- (NSDragOperation)draggingSourceOperationMaskForLocal:(BOOL)isLocal
{
return NSDragOperationMove;
}
@@ -1508,8 +1477,7 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
// Remove old temporary drag file if any
if(draggedFilePath) {
[[NSFileManager defaultManager] removeItemAtPath:draggedFilePath error:nil];
- [draggedFilePath release];
- draggedFilePath = nil;
+ SPClear(draggedFilePath);
}
NSImage *dragImage;
@@ -1535,7 +1503,7 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
// Write data to the pasteboard
NSArray *fileList = [NSArray arrayWithObjects:draggedFilePath, nil];
// NSPasteboard *pboard = [NSPasteboard pasteboardWithName:NSDragPboard];
- [pboard declareTypes:[NSArray arrayWithObject:NSFilenamesPboardType] owner:nil];
+ [pboard declareTypes:@[NSFilenamesPboardType] owner:nil];
[pboard setPropertyList:fileList forType:NSFilenamesPboardType];
// Start the drag operation
@@ -2104,38 +2072,39 @@ static NSString *SPSaveBundleAction = @"SPSaveBundle";
- (void)dealloc
{
- [inputGeneralScopePopUpMenu release];
- [inputInputFieldScopePopUpMenu release];
- [inputDataTableScopePopUpMenu release];
- [outputGeneralScopePopUpMenu release];
- [outputInputFieldScopePopUpMenu release];
- [outputDataTableScopePopUpMenu release];
- [inputFallbackInputFieldScopePopUpMenu release];
- [triggerInputFieldPopUpMenu release];
- [triggerDataTablePopUpMenu release];
- [triggerGeneralPopUpMenu release];
- [inputNonePopUpMenu release];
+ SPClear(inputGeneralScopePopUpMenu);
+ SPClear(inputInputFieldScopePopUpMenu);
+ SPClear(inputDataTableScopePopUpMenu);
+ SPClear(outputGeneralScopePopUpMenu);
+ SPClear(outputInputFieldScopePopUpMenu);
+ SPClear(outputDataTableScopePopUpMenu);
+ SPClear(inputFallbackInputFieldScopePopUpMenu);
+ SPClear(triggerInputFieldPopUpMenu);
+ SPClear(triggerDataTablePopUpMenu);
+ SPClear(triggerGeneralPopUpMenu);
+ SPClear(withBlobDataTablePopUpMenu);
+ SPClear(inputNonePopUpMenu);
- [inputGeneralScopeArray release];
- [inputInputFieldScopeArray release];
- [inputDataTableScopeArray release];
- [outputGeneralScopeArray release];
- [outputInputFieldScopeArray release];
- [outputDataTableScopeArray release];
- [inputFallbackInputFieldScopeArray release];
- [triggerInputFieldArray release];
- [triggerDataTableArray release];
- [triggerGeneralArray release];
- [withBlobDataTableArray release];
+ SPClear(inputGeneralScopeArray);
+ SPClear(inputInputFieldScopeArray);
+ SPClear(inputDataTableScopeArray);
+ SPClear(outputGeneralScopeArray);
+ SPClear(outputInputFieldScopeArray);
+ SPClear(outputDataTableScopeArray);
+ SPClear(inputFallbackInputFieldScopeArray);
+ SPClear(triggerInputFieldArray);
+ SPClear(triggerDataTableArray);
+ SPClear(triggerGeneralArray);
+ SPClear(withBlobDataTableArray);
- [shellVariableSuggestions release];
- [deletedDefaultBundles release];
+ SPClear(shellVariableSuggestions);
+ SPClear(deletedDefaultBundles);
- if (touchedBundleArray) [touchedBundleArray release], touchedBundleArray = nil;
- if (commandBundleTree) [commandBundleTree release], commandBundleTree = nil;
- if (sortDescriptor) [sortDescriptor release], sortDescriptor = nil;
- if (bundlePath) [bundlePath release], bundlePath = nil;
- if (esUndoManager) [esUndoManager release], esUndoManager = nil;
+ if (touchedBundleArray) SPClear(touchedBundleArray);
+ if (commandBundleTree) SPClear(commandBundleTree);
+ if (sortDescriptor) SPClear(sortDescriptor);
+ if (bundlePath) SPClear(bundlePath);
+ if (esUndoManager) SPClear(esUndoManager);
[super dealloc];
}
diff --git a/Source/SPBundleHTMLOutputController.m b/Source/SPBundleHTMLOutputController.m
index da82d768..16a2f9da 100644
--- a/Source/SPBundleHTMLOutputController.m
+++ b/Source/SPBundleHTMLOutputController.m
@@ -126,7 +126,7 @@ static NSString *SPSaveDocumentAction = @"SPSaveDocument";
- (void)dealloc
{
- if(webPreferences) [webPreferences release];
+ if(webPreferences) SPClear(webPreferences);
[super dealloc];
}
@@ -260,7 +260,7 @@ static NSString *SPSaveDocumentAction = @"SPSaveDocument";
[c displayHTMLContent:[NSString stringWithFormat:@"<pre>%@</pre>", [sourceCode HTMLEscapeString]] withOptions:nil];
- [[NSApp delegate] addHTMLOutputController:c];
+ [SPAppDelegate addHTMLOutputController:c];
}
- (void)saveDocument
@@ -294,7 +294,7 @@ static NSString *SPSaveDocumentAction = @"SPSaveDocument";
windowUUID = @"";
docUUID = @"";
- [[NSApp delegate] removeHTMLOutputController:self];
+ [SPAppDelegate removeHTMLOutputController:self];
[self release];
}
@@ -332,7 +332,7 @@ static NSString *SPSaveDocumentAction = @"SPSaveDocument";
if(request != nil) {
SPBundleHTMLOutputController *c = [[SPBundleHTMLOutputController alloc] init];
[c displayURLString:[[request URL] absoluteString] withOptions:nil];
- [[NSApp delegate] addHTMLOutputController:c];
+ [SPAppDelegate addHTMLOutputController:c];
return [c webView];
}
return nil;
@@ -351,7 +351,7 @@ static NSString *SPSaveDocumentAction = @"SPSaveDocument";
// sequelpro:// handler
if([[[request URL] scheme] isEqualToString:@"sequelpro"] && navigationType == WebNavigationTypeLinkClicked) {
- [[NSApp delegate] handleEventWithURL:[request URL]];
+ [SPAppDelegate handleEventWithURL:[request URL]];
[listener ignore];
}
// sp-reveal-file://a_file_path reveals the file in Finder
@@ -571,7 +571,7 @@ static NSString *SPSaveDocumentAction = @"SPSaveDocument";
*/
- (NSString *)getShellEnvironmentForName:(NSString*)keyName
{
- return [[[NSApp delegate] shellEnvironmentForDocument:nil] objectForKey:keyName];
+ return [[SPAppDelegate shellEnvironmentForDocument:nil] objectForKey:keyName];
}
/**
@@ -691,7 +691,7 @@ static NSString *SPSaveDocumentAction = @"SPSaveDocument";
output = [SPBundleCommandRunner runBashCommand:command withEnvironment:nil atCurrentDirectoryPath:nil error:&err];
else {
NSMutableDictionary *theEnv = [NSMutableDictionary dictionary];
- [theEnv addEntriesFromDictionary:[[NSApp delegate] shellEnvironmentForDocument:nil]];
+ [theEnv addEntriesFromDictionary:[SPAppDelegate shellEnvironmentForDocument:nil]];
[theEnv setObject:uuid forKey:SPBundleShellVariableProcessID];
[theEnv setObject:[NSString stringWithFormat:@"%@%@", SPURLSchemeQueryInputPathHeader, uuid] forKey:SPBundleShellVariableQueryFile];
[theEnv setObject:[NSString stringWithFormat:@"%@%@", SPURLSchemeQueryResultPathHeader, uuid] forKey:SPBundleShellVariableQueryResultFile];
@@ -701,7 +701,7 @@ static NSString *SPSaveDocumentAction = @"SPSaveDocument";
output = [SPBundleCommandRunner runBashCommand:command
withEnvironment:theEnv
atCurrentDirectoryPath:nil
- callerInstance:[NSApp delegate]
+ callerInstance:SPAppDelegate
contextInfo:[NSDictionary dictionaryWithObjectsAndKeys:
@"JavaScript", @"name",
NSLocalizedString(@"General", @"general menu item label"), @"scope",
diff --git a/Source/SPCSVExporter.m b/Source/SPCSVExporter.m
index dd244410..5fb6f664 100644
--- a/Source/SPCSVExporter.m
+++ b/Source/SPCSVExporter.m
@@ -415,15 +415,15 @@
- (void)dealloc
{
- if (csvDataArray) [csvDataArray release], csvDataArray = nil;
- if (csvTableName) [csvTableName release], csvTableName = nil;
+ if (csvDataArray) SPClear(csvDataArray);
+ if (csvTableName) SPClear(csvTableName);
- [csvFieldSeparatorString release], csvFieldSeparatorString = nil;
- [csvEnclosingCharacterString release], csvEnclosingCharacterString = nil;
- [csvEscapeString release], csvEscapeString = nil;
- [csvLineEndingString release], csvLineEndingString = nil;
- [csvNULLString release], csvNULLString = nil;
- [csvTableData release], csvTableData = nil;
+ SPClear(csvFieldSeparatorString);
+ SPClear(csvEnclosingCharacterString);
+ SPClear(csvEscapeString);
+ SPClear(csvLineEndingString);
+ SPClear(csvNULLString);
+ SPClear(csvTableData);
[super dealloc];
}
diff --git a/Source/SPCSVParser.m b/Source/SPCSVParser.m
index 09d8c989..819c34b7 100644
--- a/Source/SPCSVParser.m
+++ b/Source/SPCSVParser.m
@@ -469,7 +469,7 @@
*/
- (void) setNullReplacementString:(NSString *)nullString
{
- if (nullReplacementString) [nullReplacementString release], nullReplacementString = nil;
+ if (nullReplacementString) SPClear(nullReplacementString);
if (nullString) nullReplacementString = [[NSString alloc] initWithString:nullString];
}
@@ -576,7 +576,7 @@
{
NSMutableString *charactersToSkip;
- if (skipCharacterSet) [skipCharacterSet release], skipCharacterSet = nil;
+ if (skipCharacterSet) SPClear(skipCharacterSet);
charactersToSkip = [[NSMutableString alloc] init];
if (![fieldEndString isEqualToString:@" "] && ![fieldQuoteString isEqualToString:@" "] && ![escapeString isEqualToString:@" "] && ![lineEndString isEqualToString:@" "])
@@ -650,17 +650,17 @@
return self;
}
- (void) dealloc {
- [csvString release];
- [fieldEndString release];
- [lineEndString release];
- [fieldQuoteString release];
- [escapeString release];
- [escapedFieldEndString release];
- [escapedLineEndString release];
- [escapedFieldQuoteString release];
- [escapedEscapeString release];
- if (nullReplacementString) [nullReplacementString release];
- if (skipCharacterSet) [skipCharacterSet release];
+ SPClear(csvString);
+ SPClear(fieldEndString);
+ SPClear(lineEndString);
+ SPClear(fieldQuoteString);
+ SPClear(escapeString);
+ SPClear(escapedFieldEndString);
+ SPClear(escapedLineEndString);
+ SPClear(escapedFieldQuoteString);
+ SPClear(escapedEscapeString);
+ if (nullReplacementString) SPClear(nullReplacementString);
+ if (skipCharacterSet) SPClear(skipCharacterSet);
[super dealloc];
}
diff --git a/Source/SPCharsetCollationHelper.m b/Source/SPCharsetCollationHelper.m
index 14b0a987..378fb7cf 100644
--- a/Source/SPCharsetCollationHelper.m
+++ b/Source/SPCharsetCollationHelper.m
@@ -133,6 +133,8 @@
if (([encodings count] > 0) && [serverSupport supportsPost41CharacterSetHandling]) {
+ NSUInteger utf8encounters = 0;
+
for (NSDictionary *encoding in encodings)
{
NSString *charsetId = [encoding objectForKey:@"CHARACTER_SET_NAME"];
@@ -146,12 +148,9 @@
if(selectedCharset && [charsetId isEqualToString:selectedCharset])
selectedRef = menuItem;
- // If the UTF8 entry has been encountered, promote it to the top of the list
- if (promoteUTF8 && [charsetId isEqualToString:@"utf8"]) {
- [[charsetButton menu] insertItem:[menuItem autorelease] atIndex:0];
- //only add a separator if there actually are more items other than utf8 (might not be true for mysql forks)
- if([encodings count] > 1)
- [[charsetButton menu] insertItem:[NSMenuItem separatorItem] atIndex:1];
+ // If an UTF8 entry has been encountered, promote it to the top of the list
+ if (promoteUTF8 && [charsetId hasPrefix:@"utf8"]) {
+ [[charsetButton menu] insertItem:[menuItem autorelease] atIndex:(utf8encounters++)];
}
else {
[[charsetButton menu] addItem:[menuItem autorelease]];
@@ -159,6 +158,10 @@
}
+ //only add a separator if there actually are more items other than utf8 (might not be true for mysql forks)
+ if(utf8encounters && [encodings count] > utf8encounters)
+ [[charsetButton menu] insertItem:[NSMenuItem separatorItem] atIndex:utf8encounters];
+
[charsetButton setEnabled:YES];
}
diff --git a/Source/SPChooseMenuItemDialog.m b/Source/SPChooseMenuItemDialog.m
index 4b1dafb5..8b7bf650 100644
--- a/Source/SPChooseMenuItemDialog.m
+++ b/Source/SPChooseMenuItemDialog.m
@@ -148,7 +148,7 @@
clickCount:1
pressure:0.0f];
- [[NSApplication sharedApplication] sendEvent:theEvent];
+ [NSApp sendEvent:theEvent];
while ([dialog waitForChoice] && [[[NSApp keyWindow] firstResponder] isKindOfClass:[SPChooseMenuItemDialogTextView class]])
{
@@ -174,7 +174,7 @@
- (void)dealloc
{
- [dummyTextView release];
+ SPClear(dummyTextView);
[super dealloc];
}
diff --git a/Source/SPColorSelectorView.h b/Source/SPColorSelectorView.h
index b3d9325e..925034a3 100644
--- a/Source/SPColorSelectorView.h
+++ b/Source/SPColorSelectorView.h
@@ -57,6 +57,8 @@
IBOutlet id delegate;
NSArray *colorList;
+
+ BOOL isOSAtLeast10_9_0;
}
@property (nonatomic,readwrite,assign) NSInteger selectedTag;
diff --git a/Source/SPColorSelectorView.m b/Source/SPColorSelectorView.m
index 15b18596..ba577170 100644
--- a/Source/SPColorSelectorView.m
+++ b/Source/SPColorSelectorView.m
@@ -41,10 +41,13 @@
// More info at <https://github.com/sequelpro/sequelpro>
#import "SPColorSelectorView.h"
+#import "SPOSInfo.h"
@interface SPColorSelectorView (Private)
- (void)setupTrackingAreas;
+- (void)_drawDotBevelStyleWithGradient:(NSGradient *)gradient insideRect:(NSRect)colorSquareRect;
+- (void)_drawDotFlatStyleWithColor:(NSColor *)color insideRect:(NSRect)colorSquareRect;
@end
@@ -86,6 +89,8 @@ enum trackingAreaIDs
//set ourselves as observer of selectedTag (need to mark view dirty)
[self addObserver:self forKeyPath:@"selectedTag" options:0 context:nil];
+
+ isOSAtLeast10_9_0 = [SPOSInfo isOSVersionAtLeastMajor:10 minor:9 patch:0];
}
return self;
@@ -126,9 +131,9 @@ enum trackingAreaIDs
- (NSRect)rectForColorViewAtIndex:(NSInteger)index
{
CGFloat baseY = 2.0;
- CGFloat baseX = 2.0;
+ CGFloat baseX = 3.0;
- CGFloat marginR = 5.0;
+ CGFloat marginR = 7.0;
CGFloat width = 16.0;
CGFloat height = 16.0;
@@ -138,46 +143,20 @@ enum trackingAreaIDs
switch (index)
{
case kTrackingAreaNone:
- returnRect = NSMakeRect(baseX, baseY, width, height);
- break;
-
case kTrackingArea0:
- returnRect = NSMakeRect(baseX + 1 * (width + marginR), baseY, width, height);
- break;
-
case kTrackingArea1:
- returnRect = NSMakeRect(baseX + 2 * (width + marginR), baseY, width, height);
- break;
-
case kTrackingArea2:
- returnRect = NSMakeRect(baseX + 3 * (width + marginR), baseY, width, height);
- break;
-
case kTrackingArea3:
- returnRect = NSMakeRect(baseX + 4 * (width + marginR), baseY, width, height);
- break;
-
case kTrackingArea4:
- returnRect = NSMakeRect(baseX + 5 * (width + marginR), baseY, width, height);
- break;
-
case kTrackingArea5:
- returnRect = NSMakeRect(baseX + 6 * (width + marginR), baseY, width, height);
- break;
-
case kTrackingArea6:
- returnRect = NSMakeRect(baseX + 7 * (width + marginR), baseY, width, height);
+ returnRect = NSMakeRect(baseX + (index + 1) * (width + marginR), baseY, width, height);
break;
}
return returnRect;
}
-// -------------------------------------------------------------------------------
-// Returns the color gradient corresponding to the tag. These colours were
-// chosen to appear similar to those in Aperture 3.
-// -------------------------------------------------------------------------------
-
- (NSGradient *)gradientForTag:(NSInteger)colorTag
{
NSGradient *gradient = nil;
@@ -289,53 +268,79 @@ enum trackingAreaIDs
[left setLineWidth:3.0];
[left setLineCapStyle:NSButtLineCapStyle];
- [left moveToPoint:NSMakePoint(colorSquareRect.origin.x + 4.0, colorSquareRect.origin.y + 4.0)];
+ [left moveToPoint:NSMakePoint(colorSquareRect.origin.x + 4.0, colorSquareRect.origin.y + 4.0)];
[left lineToPoint:NSMakePoint(colorSquareRect.origin.x + 12.0, colorSquareRect.origin.y + 12.0)];
- [left moveToPoint:NSMakePoint(colorSquareRect.origin.x + 12.0, colorSquareRect.origin.y + 4.0)];
- [left lineToPoint:NSMakePoint(colorSquareRect.origin.x + 4.0, colorSquareRect.origin.y + 12.0)];
+ [left moveToPoint:NSMakePoint(colorSquareRect.origin.x + 12.0, colorSquareRect.origin.y + 4.0)];
+ [left lineToPoint:NSMakePoint(colorSquareRect.origin.x + 4.0, colorSquareRect.origin.y + 12.0)];
[left stroke];
}
else {
- // draw the gradient dot
- NSGradient *gradient = [self gradientForTag:index];
- NSRect dotRect = NSInsetRect(colorSquareRect, 2.0, 2.0);
- NSBezierPath *circlePath = [NSBezierPath bezierPathWithOvalInRect:dotRect];
- [gradient drawInBezierPath:circlePath angle:-90.0];
-
- // draw a highlight
-
- // top edge outline
- gradient = [[NSGradient alloc] initWithColorsAndLocations:
- [NSColor colorWithCalibratedWhite:1.0 alpha:0.18], 0.0,
- [NSColor colorWithCalibratedWhite:1.0 alpha:0.0], 0.6, nil];
- circlePath = [NSBezierPath bezierPathWithOvalInRect:NSInsetRect(dotRect, 1.0, 1.0)];
- [circlePath appendBezierPath:[NSBezierPath bezierPathWithOvalInRect:NSMakeRect(dotRect.origin.x+1.0, dotRect.origin.y-2.0, dotRect.size.width-2.0, dotRect.size.height)]];
- [circlePath setWindingRule:NSEvenOddWindingRule];
- [gradient drawInBezierPath:circlePath angle:-90.0];
- [gradient release];
-
- // top center gloss
- gradient = [[NSGradient alloc] initWithStartingColor:[NSColor colorWithCalibratedWhite:1.0 alpha:0.18]
- endingColor:[NSColor colorWithCalibratedWhite:1.0 alpha:0.0]];
- [gradient drawFromCenter:NSMakePoint(NSMidX(dotRect), NSMaxY(dotRect) - 2.0)
- radius:0.0
- toCenter:NSMakePoint(NSMidX(dotRect), NSMaxY(dotRect) - 2.0)
- radius:4.0
- options:0];
- [gradient release];
-
- // draw a dark outline
- circlePath = [NSBezierPath bezierPathWithOvalInRect:dotRect];
- gradient = [[NSGradient alloc] initWithStartingColor:[NSColor colorWithCalibratedWhite:0.0 alpha:0.12]
- endingColor:[NSColor colorWithCalibratedWhite:0.0 alpha:0.46]];
- [circlePath appendBezierPath:[NSBezierPath bezierPathWithOvalInRect:NSInsetRect(dotRect, 1.0, 1.0)]];
- [circlePath setWindingRule:NSEvenOddWindingRule];
- [gradient drawInBezierPath:circlePath angle:-90.0];
- [gradient release];
+ if(!isOSAtLeast10_9_0) {
+ NSGradient *gradient = [self gradientForTag:index];
+ [self _drawDotBevelStyleWithGradient:gradient insideRect:colorSquareRect];
+ }
+ else {
+ NSColor *baseColor = (NSColor *)[colorList objectAtIndex:index];
+ [self _drawDotFlatStyleWithColor:baseColor insideRect:colorSquareRect];
+ }
}
}
}
+- (void)_drawDotBevelStyleWithGradient:(NSGradient *)gradient insideRect:(NSRect)colorSquareRect
+{
+ // draw the gradient dot
+ NSRect dotRect = NSInsetRect(colorSquareRect, 2.0, 2.0);
+ NSBezierPath *circlePath = [NSBezierPath bezierPathWithOvalInRect:dotRect];
+ [gradient drawInBezierPath:circlePath angle:-90.0];
+
+ // draw a highlight
+
+ // top edge outline
+ NSGradient *grad = [[NSGradient alloc] initWithColorsAndLocations:
+ [NSColor colorWithCalibratedWhite:1.0 alpha:0.18], 0.0,
+ [NSColor colorWithCalibratedWhite:1.0 alpha:0.0], 0.6, nil];
+ circlePath = [NSBezierPath bezierPathWithOvalInRect:NSInsetRect(dotRect, 1.0, 1.0)];
+ [circlePath appendBezierPath:[NSBezierPath bezierPathWithOvalInRect:NSMakeRect(dotRect.origin.x+1.0, dotRect.origin.y-2.0, dotRect.size.width-2.0, dotRect.size.height)]];
+ [circlePath setWindingRule:NSEvenOddWindingRule];
+ [grad drawInBezierPath:circlePath angle:-90.0];
+ [grad release];
+
+ // top center gloss
+ NSGradient *grad2 = [[NSGradient alloc] initWithStartingColor:[NSColor colorWithCalibratedWhite:1.0 alpha:0.18]
+ endingColor:[NSColor colorWithCalibratedWhite:1.0 alpha:0.0]];
+ [grad2 drawFromCenter:NSMakePoint(NSMidX(dotRect), NSMaxY(dotRect) - 2.0)
+ radius:0.0
+ toCenter:NSMakePoint(NSMidX(dotRect), NSMaxY(dotRect) - 2.0)
+ radius:4.0
+ options:0];
+ [grad2 release];
+
+ // draw a dark outline
+ circlePath = [NSBezierPath bezierPathWithOvalInRect:dotRect];
+ NSGradient *grad3 = [[NSGradient alloc] initWithStartingColor:[NSColor colorWithCalibratedWhite:0.0 alpha:0.12]
+ endingColor:[NSColor colorWithCalibratedWhite:0.0 alpha:0.46]];
+ [circlePath appendBezierPath:[NSBezierPath bezierPathWithOvalInRect:NSInsetRect(dotRect, 1.0, 1.0)]];
+ [circlePath setWindingRule:NSEvenOddWindingRule];
+ [grad3 drawInBezierPath:circlePath angle:-90.0];
+ [grad3 release];
+}
+
+- (void)_drawDotFlatStyleWithColor:(NSColor *)color insideRect:(NSRect)colorSquareRect
+{
+ CGFloat h,s,b,a;
+ [color getHue:&h saturation:&s brightness:&b alpha:&a];
+
+ NSRect dotRect = NSInsetRect(colorSquareRect, 2.0, 2.0);
+ NSBezierPath *circlePath = [NSBezierPath bezierPathWithOvalInRect:dotRect];
+ [[NSColor colorWithCalibratedHue:h saturation:s*1.21 brightness:b*1.1 alpha:a] set];
+ [circlePath fill];
+
+ [[color shadowWithLevel:0.15f] set];
+ [circlePath setLineWidth:1.0f];
+ [circlePath stroke];
+}
+
#pragma mark -
#pragma mark Mouse Handling
@@ -424,7 +429,7 @@ enum trackingAreaIDs
// -------------------------------------------------------------------------------
- (void)dealloc
{
- [trackingAreas release];
+ SPClear(trackingAreas);
[super dealloc];
}
diff --git a/Source/SPConnectionController.m b/Source/SPConnectionController.m
index a91f6929..dcdaec93 100644
--- a/Source/SPConnectionController.m
+++ b/Source/SPConnectionController.m
@@ -51,6 +51,7 @@
#import "SPFavoritesImporter.h"
#import "SPThreadAdditions.h"
#import "SPFavoriteColorSupport.h"
+#import "SPNamedNode.h"
#import <SPMySQL/SPMySQL.h>
@@ -256,8 +257,8 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
[[sshPasswordField undoManager] removeAllActionsWithTarget:sshPasswordField];
}
else {
- [connectionKeychainItemName release], connectionKeychainItemName = nil;
- [connectionKeychainItemAccount release], connectionKeychainItemAccount = nil;
+ SPClear(connectionKeychainItemName);
+ SPClear(connectionKeychainItemAccount);
}
}
@@ -267,8 +268,8 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
[[sshSSHPasswordField undoManager] removeAllActionsWithTarget:sshSSHPasswordField];
}
else {
- [connectionSSHKeychainItemName release], connectionSSHKeychainItemName = nil;
- [connectionSSHKeychainItemAccount release], connectionSSHKeychainItemAccount = nil;
+ SPClear(connectionSSHKeychainItemName);
+ SPClear(connectionSSHKeychainItemAccount);
}
}
#endif
@@ -317,8 +318,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
// Cancel the SSH tunnel if present
if (sshTunnel) {
[sshTunnel disconnect];
- [sshTunnel release];
- sshTunnel = nil;
+ SPClear(sshTunnel);
}
#ifndef SP_CODA
@@ -372,8 +372,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
#ifndef SP_CODA
NSString *directoryPath = nil;
NSString *filePath = nil;
- keySelectionPanel = [NSOpenPanel openPanel];
- [keySelectionPanel setShowsHiddenFiles:[prefs boolForKey:SPHiddenKeyFileVisibilityKey]];
+ NSView *accessoryView = nil;
// If the button was toggled off, ensure editing is ended
if ([sender state] == NSOffState) {
@@ -396,7 +395,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
directoryPath = [sshKeyLocation stringByDeletingLastPathComponent];
}
- [keySelectionPanel setAccessoryView:sshKeyLocationHelp];
+ accessoryView = sshKeyLocationHelp;
}
// SSL key file location:
else if (sender == standardSSLKeyFileButton || sender == socketSSLKeyFileButton || sender == sslOverSSHKeyFileButton) {
@@ -405,7 +404,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
return;
}
- [keySelectionPanel setAccessoryView:sslKeyFileLocationHelp];
+ accessoryView = sslKeyFileLocationHelp;
}
// SSL certificate file location:
else if (sender == standardSSLCertificateButton || sender == socketSSLCertificateButton || sender == sslOverSSHCertificateButton) {
@@ -414,7 +413,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
return;
}
- [keySelectionPanel setAccessoryView:sslCertificateLocationHelp];
+ accessoryView = sslCertificateLocationHelp;
}
// SSL CA certificate file location:
else if (sender == standardSSLCACertButton || sender == socketSSLCACertButton || sender == sslOverSSHCACertButton) {
@@ -423,12 +422,21 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
return;
}
- [keySelectionPanel setAccessoryView:sslCACertLocationHelp];
+ accessoryView = sslCACertLocationHelp;
}
+
+ keySelectionPanel = [[NSOpenPanel openPanel] retain]; // retain/release needed on OS X ≤ 10.6 according to Apple doc
+ [keySelectionPanel setShowsHiddenFiles:[prefs boolForKey:SPHiddenKeyFileVisibilityKey]];
+ [keySelectionPanel setAccessoryView:accessoryView];
[keySelectionPanel beginSheetModalForWindow:[dbDocument parentWindow] completionHandler:^(NSInteger returnCode)
{
NSString *abbreviatedFileName = [[[keySelectionPanel URL] path] stringByAbbreviatingWithTildeInPath];
+
+ //delay the release so it won't happen while this block is still executing.
+ dispatch_async(dispatch_get_current_queue(), ^{
+ SPClear(keySelectionPanel);
+ });
// SSH key file selection
if (sender == sshSSHKeyButton) {
@@ -608,11 +616,11 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
#ifndef SP_CODA
// Clear the keychain referral items as appropriate
- if (connectionKeychainID) [connectionKeychainID release], connectionKeychainID = nil;
- if (connectionKeychainItemName) [connectionKeychainItemName release], connectionKeychainItemName = nil;
- if (connectionKeychainItemAccount) [connectionKeychainItemAccount release], connectionKeychainItemAccount = nil;
- if (connectionSSHKeychainItemName) [connectionSSHKeychainItemName release], connectionSSHKeychainItemName = nil;
- if (connectionSSHKeychainItemAccount) [connectionSSHKeychainItemAccount release], connectionSSHKeychainItemAccount = nil;
+ if (connectionKeychainID) SPClear(connectionKeychainID);
+ if (connectionKeychainItemName) SPClear(connectionKeychainItemName);
+ if (connectionKeychainItemAccount) SPClear(connectionKeychainItemAccount);
+ if (connectionSSHKeychainItemName) SPClear(connectionSSHKeychainItemName);
+ if (connectionSSHKeychainItemAccount) SPClear(connectionSSHKeychainItemAccount);
SPTreeNode *node = [self selectedFavoriteNode];
if ([node isGroup]) node = nil;
@@ -621,7 +629,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
NSDictionary *fav = [[node representedObject] nodeFavorite];
// Keep a copy of the favorite as it currently stands
- if (currentFavorite) [currentFavorite release], currentFavorite = nil;
+ if (currentFavorite) SPClear(currentFavorite);
currentFavorite = [fav copy];
[connectionResizeContainer setHidden:NO];
@@ -669,8 +677,8 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
if (![[self password] length]) {
[self setPassword:nil];
- [connectionKeychainItemName release], connectionKeychainItemName = nil;
- [connectionKeychainItemAccount release], connectionKeychainItemAccount = nil;
+ SPClear(connectionKeychainItemName);
+ SPClear(connectionKeychainItemAccount);
}
// Store the selected favorite ID for use with the document on connection
@@ -684,8 +692,8 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
if (![[self sshPassword] length]) {
[self setSshPassword:nil];
- [connectionSSHKeychainItemName release], connectionSSHKeychainItemName = nil;
- [connectionSSHKeychainItemAccount release], connectionSSHKeychainItemAccount = nil;
+ SPClear(connectionSSHKeychainItemName);
+ SPClear(connectionSSHKeychainItemAccount);
}
[prefs setInteger:[[fav objectForKey:SPFavoriteIDKey] integerValue] forKey:SPLastFavoriteID];
@@ -731,7 +739,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
{
SPTreeNode *node = [self selectedFavoriteNode];
- return (![node isGroup]) ? [[node representedObject] nodeFavorite] : nil;
+ return (![node isGroup]) ? [(SPFavoriteNode *)[node representedObject] nodeFavorite] : nil;
}
/**
@@ -779,28 +787,28 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
{
NSNumber *favoriteID = [self _createNewFavoriteID];
- NSArray *objects = [NSArray arrayWithObjects:
+ NSArray *objects = @[
NSLocalizedString(@"New Favorite", @"new favorite name"),
- [NSNumber numberWithInteger:0],
+ @0,
@"",
@"",
@"",
- [NSNumber numberWithInteger:-1],
+ @(-1),
@"",
- [NSNumber numberWithInt:NSOffState],
- [NSNumber numberWithInt:NSOffState],
- [NSNumber numberWithInt:NSOffState],
- [NSNumber numberWithInt:NSOffState],
+ @(NSOffState),
+ @(NSOffState),
+ @(NSOffState),
+ @(NSOffState),
@"",
@"",
@"",
- [NSNumber numberWithInt:NSOffState],
+ @(NSOffState),
@"",
@"",
- favoriteID,
- nil];
+ favoriteID
+ ];
- NSArray *keys = [NSArray arrayWithObjects:
+ NSArray *keys = @[
SPFavoriteNameKey,
SPFavoriteTypeKey,
SPFavoriteHostKey,
@@ -818,8 +826,8 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
SPFavoriteSSHKeyLocationEnabledKey,
SPFavoriteSSHKeyLocationKey,
SPFavoriteSSHPortKey,
- SPFavoriteIDKey,
- nil];
+ SPFavoriteIDKey
+ ];
// Create default favorite
NSMutableDictionary *favorite = [NSMutableDictionary dictionaryWithObjects:objects forKeys:keys];
@@ -836,7 +844,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
[self _sortFavorites];
[self _selectNode:node];
- [[[[NSApp delegate] preferenceController] generalPreferencePane] updateDefaultFavoritePopup];
+ [[[SPAppDelegate preferenceController] generalPreferencePane] updateDefaultFavoritePopup];
favoriteNameFieldWasAutogenerated = YES;
@@ -979,7 +987,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
[self _reloadFavoritesViewData];
[self _selectNode:node];
- [[(SPPreferenceController *)[[NSApp delegate] preferenceController] generalPreferencePane] updateDefaultFavoritePopup];
+ [[(SPPreferenceController *)[SPAppDelegate preferenceController] generalPreferencePane] updateDefaultFavoritePopup];
}
}
@@ -1032,10 +1040,17 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
*/
- (IBAction)exportFavorites:(id)sender
{
- NSSavePanel *savePanel = [NSSavePanel savePanel];
+ // additional empty selection check
+ if(![[self selectedFavoriteNodes] count]) return;
- NSString *fileName = [[self selectedFavoriteNodes] count] > 1 ? SPExportFavoritesFilename : [[[self selectedFavorite] objectForKey:SPFavoriteNameKey] stringByAppendingPathExtension:@"plist"];
+ NSSavePanel *savePanel = [NSSavePanel savePanel];
+ // suggest the name of the favorite or a default name for multiple selection
+ NSString *fileName = ([[self selectedFavoriteNodes] count] == 1)? [[(id<SPNamedNode>)[[self selectedFavoriteNode] representedObject] nodeName] stringByAppendingPathExtension:@"plist"] : nil;
+ // This if() is so we can also catch nil due to favorite corruption (NSSavePanel will @throw if nil is passed in)
+ if(!fileName)
+ fileName = SPExportFavoritesFilename;
+
[savePanel setAccessoryView:exportPanelAccessoryView];
[savePanel setNameFieldStringValue:fileName];
@@ -1354,7 +1369,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
[self _selectNode:newNode];
// Update the favorites popup button in the preferences
- [[[[NSApp delegate] preferenceController] generalPreferencePane] updateDefaultFavoritePopup];
+ [[[SPAppDelegate preferenceController] generalPreferencePane] updateDefaultFavoritePopup];
// Otherwise, if editing the favourite, update it
} else {
@@ -1365,7 +1380,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
[self _stopEditingConnection];
- if (currentFavorite) [currentFavorite release], currentFavorite = nil;
+ if (currentFavorite) SPClear(currentFavorite);
currentFavorite = [theFavorite copy];
[self _sortFavorites];
@@ -1530,7 +1545,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
*/
- (void)_favoriteTypeDidChange
- {
+{
NSDictionary *favorite = [self selectedFavorite];
// If either socket or host is localhost, clear.
@@ -1545,7 +1560,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
[self setName:favoriteName];
}
}
- }
+}
/**
* Convenience method for reloading the outline view, expanding the root item and scrolling to the selected item.
@@ -1615,6 +1630,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
[progressIndicator display];
[progressIndicatorText setHidden:YES];
[progressIndicatorText display];
+ [dbDocument setTitlebarStatus:@""];
// If not testing a connection, Update the password fields, restoring passwords that may have
// been bulleted out during connection
@@ -1644,7 +1660,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
{
[favoritesOutlineView selectRowIndexes:[NSIndexSet indexSetWithIndex:[favoritesOutlineView rowForItem:node]] byExtendingSelection:NO];
[self _scrollToSelectedNode];
- }
+}
/**
* Scroll to the currently selected node.
@@ -1655,7 +1671,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
if ([favoritesOutlineView selectedRow] == -1) return;
[favoritesOutlineView scrollRowToVisible:[favoritesOutlineView selectedRow]];
- }
+}
/**
* Removes the supplied tree node.
@@ -1670,14 +1686,13 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
[self _reloadFavoritesViewData];
- // Clear the selection and update the interface to match
- [favoritesOutlineView selectRowIndexes:nil byExtendingSelection:NO];
- [self updateFavoriteSelection:self];
+ // Select Quick Connect item to prevent empty selection
+ [self _selectNode:quickConnectItem];
[connectionResizeContainer setHidden:NO];
[connectionInstructionsTextField setStringValue:NSLocalizedString(@"Enter connection details below, or choose a favorite", @"enter connection details label")];
- [[(SPPreferenceController *)[[NSApp delegate] preferenceController] generalPreferencePane] updateDefaultFavoritePopup];
+ [[(SPPreferenceController *)[SPAppDelegate preferenceController] generalPreferencePane] updateDefaultFavoritePopup];
}
/**
@@ -1753,7 +1768,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
}
return favoriteNode;
- }
+}
#endif
/**
@@ -1765,7 +1780,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
NSString *result = [subject stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
return [result stringByReplacingOccurrencesOfString:@"\n" withString:@""];
- }
+}
#ifndef SP_CODA
/**
@@ -1788,7 +1803,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
}
return aName;
- }
+}
/**
@@ -1801,7 +1816,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
// If not connecting, hide the connection status text to reflect changes
if (!isConnecting) {
[progressIndicatorText setHidden:YES];
- }
+ }
if (isEditingConnection) return;
@@ -1818,13 +1833,13 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
// Show the area to allow saving the changes
[self setIsEditingConnection:YES];
[favoritesOutlineView setNeedsDisplayInRect:[favoritesOutlineView rectOfRow:[favoritesOutlineView selectedRow]]];
- }
+}
/**
* If editing is active, mark editing as complete, triggering UI updates to match.
*/
- (void)_stopEditingConnection
- {
+{
if (!isEditingConnection) return;
[self setIsEditingConnection:NO];
@@ -1832,7 +1847,7 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
[editButtonsView setHidden:YES];
[progressIndicatorText setHidden:YES];
[(NSView *)favoritesOutlineView display];
- }
+}
#endif
- (void)_documentWillClose:(NSNotification *)notification
@@ -1847,8 +1862,8 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
mySQLConnection = nil;
}
- if (sshTunnel) [sshTunnel setConnectionStateChangeSelector:nil delegate:nil], [sshTunnel disconnect], [sshTunnel release];
- }
+ if (sshTunnel) [sshTunnel setConnectionStateChangeSelector:nil delegate:nil], SPClear(sshTunnel);
+}
#pragma mark -
@@ -1882,28 +1897,28 @@ static NSComparisonResult _compareFavoritesUsingKey(id favorite1, id favorite2,
#endif
#ifndef SP_CODA
- [keychain release];
+ SPClear(keychain);
#endif
- [prefs release];
+ SPClear(prefs);
#ifndef SP_CODA
- [folderImage release], folderImage = nil;
- [quickConnectItem release], quickConnectItem = nil;
- [quickConnectCell release], quickConnectCell = nil;
+ SPClear(folderImage);
+ SPClear(quickConnectItem);
+ SPClear(quickConnectCell);
#endif
for (id retainedObject in nibObjectsToRelease) [retainedObject release];
- [nibObjectsToRelease release];
+ SPClear(nibObjectsToRelease);
- if (connectionKeychainID) [connectionKeychainID release];
- if (connectionKeychainItemName) [connectionKeychainItemName release];
- if (connectionKeychainItemAccount) [connectionKeychainItemAccount release];
- if (connectionSSHKeychainItemName) [connectionSSHKeychainItemName release];
- if (connectionSSHKeychainItemAccount) [connectionSSHKeychainItemAccount release];
+ if (connectionKeychainID) SPClear(connectionKeychainID);
+ if (connectionKeychainItemName) SPClear(connectionKeychainItemName);
+ if (connectionKeychainItemAccount) SPClear(connectionKeychainItemAccount);
+ if (connectionSSHKeychainItemName) SPClear(connectionSSHKeychainItemName);
+ if (connectionSSHKeychainItemAccount) SPClear(connectionSSHKeychainItemAccount);
#ifndef SP_CODA
- if (currentFavorite) [currentFavorite release], currentFavorite = nil;
+ if (currentFavorite) SPClear(currentFavorite);
#endif
[super dealloc];
diff --git a/Source/SPConnectionControllerDelegate.m b/Source/SPConnectionControllerDelegate.m
index acd9f1d7..99af9e35 100644
--- a/Source/SPConnectionControllerDelegate.m
+++ b/Source/SPConnectionControllerDelegate.m
@@ -32,6 +32,7 @@
#ifndef SP_CODA
#import "SPFavoritesController.h"
#import "SPTableTextFieldCell.h"
+#import "SPFavoriteTextFieldCell.h"
#import "SPPreferenceController.h"
#import "SPGeneralPreferencePane.h"
#import "SPAppController.h"
@@ -39,6 +40,7 @@
#import "SPGroupNode.h"
#import "SPTreeNode.h"
#import "SPFavoritesOutlineView.h"
+#import "SPFavoriteColorSupport.h"
#endif
#ifndef SP_CODA
@@ -145,32 +147,41 @@ static NSString *SPQuickConnectImageWhite = @"quick-connect-icon-white.pdf";
- (void)outlineView:(NSOutlineView *)outlineView willDisplayCell:(id)cell forTableColumn:(NSTableColumn *)tableColumn item:(id)item
{
- SPTreeNode *node = (SPTreeNode *)item;
+ SPTreeNode *node = (SPTreeNode *)item;
+ SPFavoriteTextFieldCell *favoriteCell = (SPFavoriteTextFieldCell *)cell;
// Draw entries with the small system font by default
- [(SPTableTextFieldCell *)cell setFont:[NSFont systemFontOfSize:[NSFont smallSystemFontSize]]];
+ [cell setFont:[NSFont systemFontOfSize:[NSFont smallSystemFontSize]]];
// Set an image as appropriate; the quick connect image for that entry, no image for other
// top-level items, the folder image for group nodes, or the database image for other nodes.
if (![[node parentNode] parentNode]) {
if (node == quickConnectItem) {
if ([outlineView rowForItem:item] == [outlineView selectedRow]) {
- [(SPTableTextFieldCell *)cell setImage:[NSImage imageNamed:SPQuickConnectImageWhite]];
+ [favoriteCell setImage:[NSImage imageNamed:SPQuickConnectImageWhite]];
}
else {
- [(SPTableTextFieldCell *)cell setImage:[NSImage imageNamed:SPQuickConnectImage]];
+ [favoriteCell setImage:[NSImage imageNamed:SPQuickConnectImage]];
}
}
else {
- [(SPTableTextFieldCell *)cell setImage:nil];
+ [favoriteCell setImage:nil];
}
+ [favoriteCell setLabelColor:nil];
}
else {
if ([node isGroup]) {
- [(SPTableTextFieldCell *)cell setImage:folderImage];
+ [favoriteCell setImage:folderImage];
+ [favoriteCell setLabelColor:nil];
}
else {
- [(SPTableTextFieldCell *)cell setImage:[NSImage imageNamed:SPDatabaseImage]];
+ [favoriteCell setImage:[NSImage imageNamed:SPDatabaseImage]];
+ NSColor *bgColor = nil;
+ NSNumber *colorIndexObj = [[[node representedObject] nodeFavorite] objectForKey:SPFavoriteColorIndexKey];
+ if(colorIndexObj != nil) {
+ bgColor = [[SPFavoriteColorSupport sharedInstance] colorForIndex:[colorIndexObj integerValue]];
+ }
+ [favoriteCell setLabelColor:bgColor];
}
}
@@ -312,7 +323,7 @@ static NSString *SPQuickConnectImageWhite = @"quick-connect-icon-white.pdf";
return NO;
}
- [pboard declareTypes:[NSArray arrayWithObject:SPFavoritesPasteboardDragType] owner:self];
+ [pboard declareTypes:@[SPFavoritesPasteboardDragType] owner:self];
BOOL result = [pboard setData:[NSData data] forType:SPFavoritesPasteboardDragType];
@@ -424,7 +435,7 @@ static NSString *SPQuickConnectImageWhite = @"quick-connect-icon-white.pdf";
[[NSNotificationCenter defaultCenter] postNotificationName:SPConnectionFavoritesChangedNotification object:self];
- [[[[NSApp delegate] preferenceController] generalPreferencePane] updateDefaultFavoritePopup];
+ [[[SPAppDelegate preferenceController] generalPreferencePane] updateDefaultFavoritePopup];
// Update the selection to account for rearranged faourites
NSMutableIndexSet *restoredSelection = [NSMutableIndexSet indexSet];
@@ -606,8 +617,6 @@ static NSString *SPQuickConnectImageWhite = @"quick-connect-icon-white.pdf";
SPTreeNode *node = [self selectedFavoriteNode];
NSInteger selectedRows = [favoritesOutlineView numberOfSelectedRows];
-
- if (node == quickConnectItem) return NO;
if ((action == @selector(sortFavorites:)) || (action == @selector(reverseSortFavorites:))) {
@@ -623,7 +632,14 @@ static NSString *SPQuickConnectImageWhite = @"quick-connect-icon-white.pdf";
if (action == @selector(reverseSortFavorites:)) {
[menuItem setState:reverseFavoritesSort];
}
+
+ return YES;
}
+
+ // import does not depend on a selection
+ if(action == @selector(importFavorites:)) return YES;
+
+ if (node == quickConnectItem) return NO;
// Remove/rename the selected node
if (action == @selector(removeNode:) || action == @selector(renameNode:)) {
@@ -645,12 +661,9 @@ static NSString *SPQuickConnectImageWhite = @"quick-connect-icon-white.pdf";
// Favorites export
if (action == @selector(exportFavorites:)) {
- if ([[favoritesRoot allChildLeafs] count] == 0) {
+ if ([[favoritesRoot allChildLeafs] count] == 0 || selectedRows == 0) {
return NO;
}
- else if (selectedRows == 1) {
- return (![[self selectedFavoriteNode] isGroup]);
- }
else if (selectedRows > 1) {
[menuItem setTitle:NSLocalizedString(@"Export Selected...", @"export selected favorites menu item")];
}
diff --git a/Source/SPConnectionControllerInitializer.m b/Source/SPConnectionControllerInitializer.m
index 5ef4f3a4..5254e36d 100644
--- a/Source/SPConnectionControllerInitializer.m
+++ b/Source/SPConnectionControllerInitializer.m
@@ -320,7 +320,7 @@ static NSString *SPConnectionViewNibName = @"ConnectionView";
[favoritesOutlineView setDoubleAction:@selector(nodeDoubleClicked:)];
// Register drag types for the favorites outline view
- [favoritesOutlineView registerForDraggedTypes:[NSArray arrayWithObject:SPFavoritesPasteboardDragType]];
+ [favoritesOutlineView registerForDraggedTypes:@[SPFavoritesPasteboardDragType]];
[favoritesOutlineView setDraggingSourceOperationMask:NSDragOperationMove forLocal:YES];
}
diff --git a/Source/SPConnectionHandler.m b/Source/SPConnectionHandler.m
index 12b868f5..c216142f 100644
--- a/Source/SPConnectionHandler.m
+++ b/Source/SPConnectionHandler.m
@@ -145,6 +145,16 @@ static NSString *SPLocalhostAddress = @"127.0.0.1";
if ([self sslCACertFileLocationEnabled]) {
[mySQLConnection setSslCACertificatePath:[self sslCACertFileLocation]];
}
+
+ NSString *userSSLCipherList = [prefs stringForKey:SPSSLCipherListKey];
+ if(userSSLCipherList) {
+ //strip out disabled ciphers (e.g. in "foo:bar:--:baz")
+ NSRange markerPos = [userSSLCipherList rangeOfRegex:@":?--"];
+ if(markerPos.location != NSNotFound) {
+ userSSLCipherList = [userSSLCipherList substringToIndex:markerPos.location];
+ }
+ [mySQLConnection setSslCipherList:userSSLCipherList];
+ }
}
// Connection delegate must be set before actual connection attempt is made
@@ -164,8 +174,12 @@ static NSString *SPLocalhostAddress = @"127.0.0.1";
if (![mySQLConnection isConnected]) {
if (sshTunnel && !cancellingConnection) {
- // If an SSH tunnel is running, temporarily block to allow the tunnel to register changes in state
- [[NSRunLoop currentRunLoop] runMode:NSModalPanelRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.2]];
+ // This is a race condition we cannot fix "properly":
+ // For meaningful error handling we need to also consider the debug output from the SSH connection.
+ // The SSH debug output might be sligthly delayed though (flush, delegates, ...) or
+ // there might not even by any output at all (when it is purely a libmysql issue).
+ // TL;DR: No guaranteed events we could wait for, just trying our luck.
+ [NSThread sleepForTimeInterval:0.1]; // 100ms
// If the state is connection refused, attempt the MySQL connection again with the host using the hostfield value.
if ([sshTunnel state] == SPMySQLProxyForwardingFailed) {
@@ -174,7 +188,7 @@ static NSString *SPLocalhostAddress = @"127.0.0.1";
[mySQLConnection connect];
if (![mySQLConnection isConnected]) {
- [[NSRunLoop currentRunLoop] runMode:NSModalPanelRunLoopMode beforeDate:[NSDate dateWithTimeIntervalSinceNow:0.2]];
+ [NSThread sleepForTimeInterval:0.1]; //100ms
}
}
}
@@ -208,9 +222,9 @@ static NSString *SPLocalhostAddress = @"127.0.0.1";
// Tidy up
isConnecting = NO;
- if (sshTunnel) [sshTunnel disconnect], [sshTunnel release], sshTunnel = nil;
+ if (sshTunnel) [sshTunnel disconnect], SPClear(sshTunnel);
- [mySQLConnection release], mySQLConnection = nil;
+ SPClear(mySQLConnection);
#ifndef SP_CODA
if (!cancellingConnection) [self _restoreConnectionInterface];
#endif
@@ -229,9 +243,9 @@ static NSString *SPLocalhostAddress = @"127.0.0.1";
// Tidy up
isConnecting = NO;
- if (sshTunnel) [sshTunnel release], sshTunnel = nil;
+ if (sshTunnel) SPClear(sshTunnel);
- [mySQLConnection release], mySQLConnection = nil;
+ SPClear(mySQLConnection);
[self _restoreConnectionInterface];
if (isTestingConnection) {
[self _showConnectionTestResult:NSLocalizedString(@"Invalid database", @"Invalid database very short status message")];
@@ -352,7 +366,7 @@ static NSString *SPLocalhostAddress = @"127.0.0.1";
#endif
// Release the tunnel if set - will now be retained by the connection
- if (sshTunnel) [sshTunnel release], sshTunnel = nil;
+ if (sshTunnel) SPClear(sshTunnel);
// Pass the connection to the document and clean up the interface
[self addConnectionToDocument];
@@ -436,7 +450,7 @@ static NSString *SPLocalhostAddress = @"127.0.0.1";
// Release as appropriate
if (sshTunnel) {
- [sshTunnel disconnect], [sshTunnel release], sshTunnel = nil;
+ [sshTunnel disconnect], SPClear(sshTunnel);
// If the SSH tunnel connection failed because the port it was trying to bind to was already in use take note
// of it so we can give the user the option of connecting via standard connection and use the existing tunnel.
diff --git a/Source/SPConsoleMessage.m b/Source/SPConsoleMessage.m
index 6ada323a..eb7573f9 100644
--- a/Source/SPConsoleMessage.m
+++ b/Source/SPConsoleMessage.m
@@ -65,10 +65,10 @@
- (void)dealloc
{
- [message release], message = nil;
- [messageDate release], messageDate = nil;
- [messageDatabase release], messageDatabase = nil;
- [messageConnection release], messageConnection = nil;
+ SPClear(message);
+ SPClear(messageDate);
+ SPClear(messageDatabase);
+ SPClear(messageConnection);
[super dealloc];
}
diff --git a/Source/SPConstants.h b/Source/SPConstants.h
index 6c9f4a68..f81b3fd0 100644
--- a/Source/SPConstants.h
+++ b/Source/SPConstants.h
@@ -46,23 +46,21 @@ typedef enum {
} SPViewMode;
// Query modes
-enum {
+typedef NS_ENUM(NSUInteger, SPQueryMode) {
SPInterfaceQueryMode = 0,
SPCustomQueryQueryMode = 1,
SPImportExportQueryMode = 2
};
-typedef NSUInteger SPQueryMode;
// Connection types
-enum {
+typedef NS_ENUM(NSUInteger, SPConnectionType) {
SPTCPIPConnection = 0,
SPSocketConnection = 1,
SPSSHTunnelConnection = 2
-};
-typedef NSUInteger SPConnectionType;
+};
// Export type constants
-enum {
+typedef NS_ENUM(NSUInteger, SPExportType) {
SPSQLExport = 0,
SPCSVExport = 1,
SPXMLExport = 2,
@@ -71,29 +69,25 @@ enum {
SPHTMLExport = 5,
SPExcelExport = 6
};
-typedef NSUInteger SPExportType;
// Export source constants
-enum {
+typedef NS_ENUM(NSUInteger, SPExportSource) {
SPFilteredExport = 0,
SPQueryExport = 1,
SPTableExport = 2
};
-typedef NSUInteger SPExportSource;
// SQL export INSERT statment divider constants
-enum {
+typedef NS_ENUM(NSUInteger , SPSQLExportInsertDivider) {
SPSQLInsertEveryNDataBytes = 0,
SPSQLInsertEveryNRows = 1
};
-typedef NSUInteger SPSQLExportInsertDivider;
// XML export formats
-enum {
+typedef NS_ENUM(NSUInteger, SPXMLExportFormat) {
SPXMLExportMySQLFormat = 0,
SPXMLExportPlainFormat = 1
};
-typedef NSUInteger SPXMLExportFormat;
// Table row count query usage levels
typedef enum {
@@ -109,7 +103,8 @@ typedef enum
SPTableTypeTable = 0,
SPTableTypeView = 1,
SPTableTypeProc = 2,
- SPTableTypeFunc = 3
+ SPTableTypeFunc = 3,
+ SPTableTypeEvent = 4
} SPTableType;
// History views
@@ -153,6 +148,14 @@ typedef enum
{
SPMainMenuSequelPro = 0,
SPMainMenuFile = 1,
+ SPMainMenuFileSaveConnection = 1004,
+ SPMainMenuFileSaveConnectionAs = 1005,
+ SPMainMenuFileSaveQuery = 1006,
+ SPMainMenuFileSaveQueryAs = 1008,
+ SPMainMenuFileSaveSession = 1020,
+ SPMainMenuFileSaveSessionAs = 1021,
+ SPMainMenuFileClose = 1003,
+ SPMainMenuFileCloseTab = 1103,
SPMainMenuEdit = 2,
SPMainMenuView = 3,
SPMainMenuDatabase = 4,
@@ -183,7 +186,8 @@ typedef enum
SPEncodingBig5Chinese = 150,
SPEncodingShiftJISJapanese = 160,
SPEncodingEUCJPJapanese = 170,
- SPEncodingEUCKRKorean = 180
+ SPEncodingEUCKRKorean = 180,
+ SPEncodingUTF8MB4 = 190
} SPEncodingTypes;
// Table index type menu tags
@@ -214,6 +218,7 @@ typedef enum
// Export file handle creation
typedef enum
{
+ SPExportFileHandleInvalid = -1,
SPExportFileHandleCreated = 0,
SPExportFileHandleFailed = 1,
SPExportFileHandleExists = 2
@@ -423,6 +428,8 @@ extern NSString *SPHiddenKeyFileVisibilityKey;
extern NSString *SPSelectionDetailTypeIndexed;
extern NSString *SPSelectionDetailTypePrimaryKeyed;
extern NSString *SPSSHEnableMuxingPreference;
+extern NSString *SPSSHClientPath;
+extern NSString *SPSSLCipherListKey;
// URLs
extern NSString *SPDonationsURL;
@@ -595,18 +602,48 @@ extern NSString *SPBundleShellVariableAllFunctions;
extern NSString *SPBundleShellVariableAllViews;
extern NSString *SPBundleShellVariableAllTables;
-extern const NSInteger SPBundleRedirectActionNone;
-extern const NSInteger SPBundleRedirectActionReplaceSection;
-extern const NSInteger SPBundleRedirectActionReplaceContent;
-extern const NSInteger SPBundleRedirectActionInsertAsText;
-extern const NSInteger SPBundleRedirectActionInsertAsSnippet;
-extern const NSInteger SPBundleRedirectActionShowAsHTML;
-extern const NSInteger SPBundleRedirectActionShowAsTextTooltip;
-extern const NSInteger SPBundleRedirectActionShowAsHTMLTooltip;
-extern const NSInteger SPBundleRedirectActionLastCode;
+typedef NS_ENUM(NSInteger, SPBundleRedirectAction) {
+ SPBundleRedirectActionNone = 200,
+ SPBundleRedirectActionReplaceSection = 201,
+ SPBundleRedirectActionReplaceContent = 202,
+ SPBundleRedirectActionInsertAsText = 203,
+ SPBundleRedirectActionInsertAsSnippet = 204,
+ SPBundleRedirectActionShowAsHTML = 205,
+ SPBundleRedirectActionShowAsTextTooltip = 207,
+ SPBundleRedirectActionShowAsHTMLTooltip = 208,
+ SPBundleRedirectActionLastCode = 208
+};
// URL scheme
extern NSString *SPURLSchemeQueryInputPathHeader;
extern NSString *SPURLSchemeQueryResultPathHeader;
extern NSString *SPURLSchemeQueryResultStatusPathHeader;
extern NSString *SPURLSchemeQueryResultMetaPathHeader;
+
+#define SPAppDelegate ((SPAppController *)[NSApp delegate])
+
+// Provides a standard method for our "[x release], x = nil;" convention.
+// Yes, this could have been done with a preprocessor macro alone, however
+// a function works more nicely in the debugger and in production code
+// the optimizer will most likely remove all overhead by inlining anyway :)
+void _SPClear(id *addr);
+#define SPClear(x) _SPClear(&x)
+
+//Backwards compatibility
+#ifndef __MAC_10_7
+#define __MAC_10_7 1070
+#endif
+#ifndef __MAC_10_8
+#define __MAC_10_8 1080
+#endif
+#ifndef __MAC_10_10
+#define __MAC_10_10 101000
+#endif
+
+// This enum is available since 10.5 but only got a "name" in 10.10
+#if __MAC_OS_X_VERSION_MAX_ALLOWED < __MAC_10_10
+typedef NSUInteger NSCellHitResult;
+#endif
+
+// Stolen from Stack Overflow: http://stackoverflow.com/questions/969130
+#define SPLog(fmt, ...) NSLog((@"%s:%d: " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
diff --git a/Source/SPConstants.m b/Source/SPConstants.m
index eb11ac11..d9729980 100644
--- a/Source/SPConstants.m
+++ b/Source/SPConstants.m
@@ -229,11 +229,13 @@ NSString *SPHiddenKeyFileVisibilityKey = @"KeySelectionHiddenFilesVisi
NSString *SPSelectionDetailTypeIndexed = @"SelectionDetailTypeNSIndexSet";
NSString *SPSelectionDetailTypePrimaryKeyed = @"SelectionDetailTypePrimaryKeyedDetails";
NSString *SPSSHEnableMuxingPreference = @"SSHMultiplexingEnabled";
+NSString *SPSSHClientPath = @"SSHClientPath";
+NSString *SPSSLCipherListKey = @"SSLCipherList";
// URLs
NSString *SPDonationsURL = @"http://www.sequelpro.com/donate/";
NSString *SPMySQLSearchURL = @"http://dev.mysql.com/doc/refman/%@/%@/%@.html";
-NSString *SPDevURL = @"http://code.google.com/p/sequel-pro/";
+NSString *SPDevURL = @"https://github.com/sequelpro/sequelpro";
// Toolbar constants
@@ -412,18 +414,12 @@ NSString *SPBundleShellVariableSelectedText = @"SP_SELECTED_TEXT
NSString *SPBundleShellVariableSelectedTextRange = @"SP_SELECTED_TEXT_RANGE";
NSString *SPBundleShellVariableUsedQueryForTable = @"SP_USED_QUERY_FOR_TABLE";
-const NSInteger SPBundleRedirectActionNone = 200;
-const NSInteger SPBundleRedirectActionReplaceSection = 201;
-const NSInteger SPBundleRedirectActionReplaceContent = 202;
-const NSInteger SPBundleRedirectActionInsertAsText = 203;
-const NSInteger SPBundleRedirectActionInsertAsSnippet = 204;
-const NSInteger SPBundleRedirectActionShowAsHTML = 205;
-const NSInteger SPBundleRedirectActionShowAsTextTooltip = 207;
-const NSInteger SPBundleRedirectActionShowAsHTMLTooltip = 208;
-const NSInteger SPBundleRedirectActionLastCode = 208;
-
// URL scheme
NSString *SPURLSchemeQueryInputPathHeader = @"/tmp/SP_QUERY_";
NSString *SPURLSchemeQueryResultPathHeader = @"/tmp/SP_QUERY_RESULT_";
NSString *SPURLSchemeQueryResultStatusPathHeader = @"/tmp/SP_QUERY_RESULT_STATUS_";
NSString *SPURLSchemeQueryResultMetaPathHeader = @"/tmp/SP_QUERY_META_";
+
+void inline _SPClear(id *addr) {
+ [*addr release], *addr = nil;
+}
diff --git a/Source/SPContentFilterManager.m b/Source/SPContentFilterManager.m
index 1322aa4a..a8e747e2 100644
--- a/Source/SPContentFilterManager.m
+++ b/Source/SPContentFilterManager.m
@@ -37,6 +37,7 @@
#import "SPTableContent.h"
#import "SPConnectionController.h"
#import "SPSplitView.h"
+#import "SPAppController.h"
static NSString *SPExportFilterAction = @"SPExportFilter";
@@ -88,12 +89,12 @@ static NSString *SPExportFilterAction = @"SPExportFilter";
[contentFilterSplitView setMaxSize:245.f ofSubviewAtIndex:0];
// Add global group row to contentFilters
- [contentFilters addObject:[NSDictionary dictionaryWithObjectsAndKeys:
- NSLocalizedString(@"Global",@"Content Filter Manager : Filter Entry List: 'Global' Header"), @"MenuLabel",
- @"", @"headerOfFileURL",
- @"", @"Clause",
- @"", @"ConjunctionLabel",
- nil]];
+ [contentFilters addObject:@{
+ @"MenuLabel" : NSLocalizedString(@"Global", @"Content Filter Manager : Filter Entry List: 'Global' Header"),
+ @"headerOfFileURL" : @"",
+ @"Clause" : @"",
+ @"ConjunctionLabel" : @""
+ }];
#ifndef SP_CODA /* prefs access */
// Build data source for global content filter (as mutable copy! otherwise each
@@ -142,7 +143,7 @@ static NSString *SPExportFilterAction = @"SPExportFilter";
[contentFilterTextView setString:@""];
// Register drag types
- [contentFilterTableView registerForDraggedTypes:[NSArray arrayWithObject:SPContentFilterPasteboardDragType]];
+ [contentFilterTableView registerForDraggedTypes:@[SPContentFilterPasteboardDragType]];
[contentFilterArrayController setContent:contentFilters];
[contentFilterTableView reloadData];
@@ -239,10 +240,10 @@ static NSString *SPExportFilterAction = @"SPExportFilter";
// Duplicate a selected filter if sender == self
if(sender == self)
- filter = [NSMutableDictionary dictionaryWithObjects:[NSArray arrayWithObjects:[NSString stringWithFormat:NSLocalizedString(@"%@ Copy",@"Content Filter Manager : Initial name of copied filter"),[contentFilterNameTextField stringValue]], [contentFilterTextView string], nil] forKeys:[NSArray arrayWithObjects:@"MenuLabel", @"Clause", nil]];
+ filter = [NSMutableDictionary dictionaryWithObjects:[NSArray arrayWithObjects:[NSString stringWithFormat:NSLocalizedString(@"%@ Copy",@"Content Filter Manager : Initial name of copied filter"),[contentFilterNameTextField stringValue]], [contentFilterTextView string], nil] forKeys:@[@"MenuLabel", @"Clause"]];
// Add a new filter
else
- filter = [NSMutableDictionary dictionaryWithObjects:[NSArray arrayWithObjects:NSLocalizedString(@"New Filter",@"Content Filter Manager : Initial name for new filter"), @"", @"", nil] forKeys:[NSArray arrayWithObjects:@"MenuLabel", @"Clause", @"ConjunctionLabel", nil]];
+ filter = [NSMutableDictionary dictionaryWithObjects:@[NSLocalizedString(@"New Filter",@"Content Filter Manager : Initial name for new filter"), @"", @""] forKeys:@[@"MenuLabel", @"Clause", @"ConjunctionLabel"]];
// If a favourite is currently selected, add the new favourite next to it
if([contentFilterTableView numberOfSelectedRows] > 0) {
@@ -332,7 +333,7 @@ static NSString *SPExportFilterAction = @"SPExportFilter";
#ifndef SP_CODA
NSSavePanel *panel = [NSSavePanel savePanel];
- [panel setAllowedFileTypes:[NSArray arrayWithObject:SPFileExtensionDefault]];
+ [panel setAllowedFileTypes:@[SPFileExtensionDefault]];
[panel setExtensionHidden:NO];
[panel setAllowsOtherFileTypes:NO];
@@ -404,7 +405,7 @@ static NSString *SPExportFilterAction = @"SPExportFilter";
[cf release];
// Inform all opened documents to update the query favorites list
- for(id doc in [[NSApp delegate] orderedDocuments])
+ for(id doc in [SPAppDelegate orderedDocuments])
if([[doc valueForKeyPath:@"tableContentInstance"] respondsToSelector:@selector(setCompareTypes:)])
[[doc valueForKeyPath:@"tableContentInstance"] setCompareTypes:nil];
#endif
@@ -555,7 +556,7 @@ static NSString *SPExportFilterAction = @"SPExportFilter";
- (BOOL)tableView:(NSTableView *)aTableView writeRowsWithIndexes:(NSIndexSet *)rows toPasteboard:(NSPasteboard*)pboard
{
- NSArray *pboardTypes = [NSArray arrayWithObject:SPContentFilterPasteboardDragType];
+ NSArray *pboardTypes = @[SPContentFilterPasteboardDragType];
NSUInteger originalRow = [rows firstIndex];
if(originalRow < 1) return NO;
@@ -679,10 +680,10 @@ static NSString *SPExportFilterAction = @"SPExportFilter";
[contentFilterNameTextField setStringValue:
[[contentFilters objectAtIndex:[contentFilterTableView selectedRow]] objectForKey:@"MenuLabel"]];
- return TRUE;
+ return YES;
}
- return FALSE;
+ return NO;
}
/**
@@ -929,9 +930,9 @@ static NSString *SPExportFilterAction = @"SPExportFilter";
NSMutableArray *filterData = [NSMutableArray array];
- [spfdata setObject:[NSNumber numberWithInteger:1] forKey:@"version"];
+ [spfdata setObject:@1 forKey:@"version"];
[spfdata setObject:@"content filters" forKey:@"format"];
- [spfdata setObject:[NSNumber numberWithBool:NO] forKey:@"encrypted"];
+ [spfdata setObject:@NO forKey:@"encrypted"];
NSIndexSet *indexes = [contentFilterTableView selectedRowIndexes];
@@ -974,7 +975,7 @@ static NSString *SPExportFilterAction = @"SPExportFilter";
- (void)dealloc
{
- [contentFilters release];
+ SPClear(contentFilters);
[super dealloc];
}
diff --git a/Source/SPCopyTable.h b/Source/SPCopyTable.h
index 02bc2fb4..e397e030 100644
--- a/Source/SPCopyTable.h
+++ b/Source/SPCopyTable.h
@@ -40,7 +40,7 @@
extern NSInteger SPEditMenuCopy;
extern NSInteger SPEditMenuCopyWithColumns;
-extern NSInteger SPEditCopyAsSQL;
+extern NSInteger SPEditMenuCopyAsSQL;
/*!
@class copyTable
@@ -52,7 +52,7 @@ extern NSInteger SPEditCopyAsSQL;
*/
@interface SPCopyTable : SPTableView
{
- SPTableContent* tableInstance; // the table content view instance
+ SPTableContent* tableInstance; // the table content view instance
id mySQLConnection; // current MySQL connection
NSArray* columnDefinitions; // array of NSDictionary containing info about columns
NSString* selectedTable; // the name of the current selected table
@@ -94,7 +94,7 @@ extern NSInteger SPEditCopyAsSQL;
@param isLocal who cares
@result Always calls for a copy type drag operation
*/
-- (NSUInteger)draggingSourceOperationMaskForLocal:(BOOL)isLocal;
+- (NSDragOperation)draggingSourceOperationMaskForLocal:(BOOL)isLocal;
#ifndef SP_CODA /* method decls */
/*!
diff --git a/Source/SPCopyTable.m b/Source/SPCopyTable.m
index 8eb33525..2b5554b5 100644
--- a/Source/SPCopyTable.m
+++ b/Source/SPCopyTable.m
@@ -56,7 +56,7 @@
NSInteger SPEditMenuCopy = 2001;
NSInteger SPEditMenuCopyWithColumns = 2002;
-NSInteger SPEditCopyAsSQL = 2003;
+NSInteger SPEditMenuCopyAsSQL = 2003;
static const NSInteger kBlobExclude = 1;
static const NSInteger kBlobInclude = 2;
@@ -102,13 +102,13 @@ static const NSInteger kBlobAsImageFile = 4;
#ifndef SP_CODA /* copy table rows */
NSString *tmp = nil;
- if ([sender tag] == SPEditCopyAsSQL) {
+ if ([sender tag] == SPEditMenuCopyAsSQL) {
tmp = [self rowsAsSqlInsertsOnlySelectedRows:YES];
if (tmp != nil){
NSPasteboard *pb = [NSPasteboard generalPasteboard];
- [pb declareTypes:[NSArray arrayWithObjects: NSStringPboardType, nil] owner:nil];
+ [pb declareTypes:@[NSStringPboardType] owner:nil];
[pb setString:tmp forType:NSStringPboardType];
}
@@ -119,7 +119,7 @@ static const NSInteger kBlobAsImageFile = 4;
if (tmp != nil) {
NSPasteboard *pb = [NSPasteboard generalPasteboard];
- [pb declareTypes:[NSArray arrayWithObjects:NSTabularTextPboardType, NSStringPboardType, nil] owner:nil];
+ [pb declareTypes:@[NSTabularTextPboardType, NSStringPboardType] owner:nil];
[pb setString:tmp forType:NSStringPboardType];
[pb setString:tmp forType:NSTabularTextPboardType];
@@ -219,7 +219,7 @@ static const NSInteger kBlobAsImageFile = 4;
if (image) {
NSData *d = [[NSData alloc] initWithData:[image TIFFRepresentationUsingCompression:NSTIFFCompressionLZW factor:1]];
[d writeToFile:fp atomically:NO];
- if(d) [d release], d = nil;
+ if(d) SPClear(d);
[image release];
} else {
NSString *noData = @"";
@@ -242,7 +242,7 @@ static const NSInteger kBlobAsImageFile = 4;
} else {
[result appendFormat:@"%@\t", [cellData wktString]];
}
- if(v) [v release], v = nil;
+ if(v) SPClear(v);
} else {
[result appendFormat:@"%@\t", [cellData wktString]];
}
@@ -358,7 +358,7 @@ static const NSInteger kBlobAsImageFile = 4;
if (image) {
NSData *d = [[NSData alloc] initWithData:[image TIFFRepresentationUsingCompression:NSTIFFCompressionLZW factor:1]];
[d writeToFile:fp atomically:NO];
- if(d) [d release], d = nil;
+ if(d) SPClear(d);
[image release];
} else {
NSString *noData = @"";
@@ -381,7 +381,7 @@ static const NSInteger kBlobAsImageFile = 4;
} else {
[result appendFormat:@"\"%@\",", [cellData wktString]];
}
- if(v) [v release], v = nil;
+ if(v) SPClear(v);
} else {
[result appendFormat:@"\"%@\",", [cellData wktString]];
}
@@ -607,7 +607,7 @@ static const NSInteger kBlobAsImageFile = 4;
/**
* Allow for drag-n-drop out of the application as a copy
*/
-- (NSUInteger) draggingSourceOperationMaskForLocal:(BOOL)isLocal
+- (NSDragOperation) draggingSourceOperationMaskForLocal:(BOOL)isLocal
{
return NSDragOperationCopy;
}
@@ -698,7 +698,7 @@ static const NSInteger kBlobAsImageFile = 4;
tableInstance = anInstance;
tableStorage = theTableStorage;
- if (columnDefinitions) [columnDefinitions release], columnDefinitions = nil;
+ if (columnDefinitions) SPClear(columnDefinitions);
columnDefinitions = [[NSArray alloc] initWithArray:columnDefs];
}
@@ -781,7 +781,7 @@ static const NSInteger kBlobAsImageFile = 4;
NSFont *tableFont = [NSFont systemFontOfSize:[NSFont smallSystemFontSize]];
#endif
NSUInteger columnIndex = (NSUInteger)[[columnDefinition objectForKey:@"datacolumnindex"] integerValue];
- NSDictionary *stringAttributes = [NSDictionary dictionaryWithObject:tableFont forKey:NSFontAttributeName];
+ NSDictionary *stringAttributes = @{NSFontAttributeName : tableFont};
Class spmysqlGeometryData = [SPMySQLGeometryData class];
// Check the number of rows available to check, sampling every n rows
@@ -870,7 +870,7 @@ static const NSInteger kBlobAsImageFile = 4;
maxCellWidth += columnBaseWidth;
// If the header width is wider than this expanded width, use it instead
- cellWidth = [[columnDefinition objectForKey:@"name"] sizeWithAttributes:[NSDictionary dictionaryWithObject:[NSFont labelFontOfSize:[NSFont smallSystemFontSize]] forKey:NSFontAttributeName]].width;
+ cellWidth = [[columnDefinition objectForKey:@"name"] sizeWithAttributes:@{NSFontAttributeName : [NSFont labelFontOfSize:[NSFont smallSystemFontSize]]}].width;
if (cellWidth + 10 > maxCellWidth) maxCellWidth = cellWidth + 10;
return maxCellWidth;
@@ -885,7 +885,7 @@ static const NSInteger kBlobAsImageFile = 4;
if(![[self delegate] isKindOfClass:[SPCustomQuery class]] && ![[self delegate] isKindOfClass:[SPTableContent class]]) return menu;
- [[NSApp delegate] reloadBundles:self];
+ [SPAppDelegate reloadBundles:self];
// Remove 'Bundles' sub menu and separator
NSMenuItem *bItem = [menu itemWithTag:10000000];
@@ -895,8 +895,8 @@ static const NSInteger kBlobAsImageFile = 4;
[menu removeItem:bItem];
}
- NSArray *bundleCategories = [[NSApp delegate] bundleCategoriesForScope:SPBundleScopeDataTable];
- NSArray *bundleItems = [[NSApp delegate] bundleItemsForScope:SPBundleScopeDataTable];
+ NSArray *bundleCategories = [SPAppDelegate bundleCategoriesForScope:SPBundleScopeDataTable];
+ NSArray *bundleItems = [SPAppDelegate bundleItemsForScope:SPBundleScopeDataTable];
// Add 'Bundles' sub menu
if(bundleItems && [bundleItems count]) {
@@ -991,7 +991,7 @@ static const NSInteger kBlobAsImageFile = 4;
}
// Don't validate anything other than the copy commands
- if (menuItemTag != SPEditMenuCopy && menuItemTag != SPEditMenuCopyWithColumns && menuItemTag != SPEditCopyAsSQL) {
+ if (menuItemTag != SPEditMenuCopy && menuItemTag != SPEditMenuCopyWithColumns && menuItemTag != SPEditMenuCopyAsSQL) {
return YES;
}
@@ -1006,7 +1006,7 @@ static const NSInteger kBlobAsImageFile = 4;
}
// Enable the Copy as SQL commands if rows are selected and column definitions are available
- if (menuItemTag == SPEditCopyAsSQL) {
+ if (menuItemTag == SPEditMenuCopyAsSQL) {
return (columnDefinitions != nil && [self numberOfSelectedRows] > 0);
}
#endif
@@ -1189,15 +1189,14 @@ static const NSInteger kBlobAsImageFile = 4;
*/
- (BOOL)shouldUseFieldEditorForRow:(NSUInteger)rowIndex column:(NSUInteger)colIndex checkWithLock:(pthread_mutex_t *)dataLock
{
- // Retrieve the column definition
- NSDictionary *columnDefinition = [[(id <SPDatabaseContentViewDelegate>)[self delegate] dataColumnDefinitions] objectAtIndex:colIndex];
-
- NSString *columnType = [columnDefinition objectForKey:@"typegrouping"];
-
// Return YES if the multiple line editing button is enabled - triggers sheet editing on all cells.
#ifndef SP_CODA
if ([prefs boolForKey:SPEditInSheetEnabled]) return YES;
#endif
+
+ // Retrieve the column definition
+ NSDictionary *columnDefinition = [[(id <SPDatabaseContentViewDelegate>)[self delegate] dataColumnDefinitions] objectAtIndex:colIndex];
+ NSString *columnType = [columnDefinition objectForKey:@"typegrouping"];
// If the column is a BLOB or TEXT column, and not an enum, trigger sheet editing
BOOL isBlob = ([columnType isEqualToString:@"textdata"] || [columnType isEqualToString:@"blobdata"]);
@@ -1246,7 +1245,7 @@ static const NSInteger kBlobAsImageFile = 4;
#ifndef SP_CODA /* executeBundleItemForDataTable: */
NSInteger idx = [sender tag] - 1000000;
NSString *infoPath = nil;
- NSArray *bundleItems = [[NSApp delegate] bundleItemsForScope:SPBundleScopeDataTable];
+ NSArray *bundleItems = [SPAppDelegate bundleItemsForScope:SPBundleScopeDataTable];
if(idx >=0 && idx < (NSInteger)[bundleItems count]) {
infoPath = [[bundleItems objectAtIndex:idx] objectForKey:SPBundleInternPathToFileKey];
} else {
@@ -1432,7 +1431,7 @@ static const NSInteger kBlobAsImageFile = 4;
NSString *output = [SPBundleCommandRunner runBashCommand:cmd withEnvironment:env
atCurrentDirectoryPath:nil
- callerInstance:[[NSApp delegate] frontDocument]
+ callerInstance:[SPAppDelegate frontDocument]
contextInfo:[NSDictionary dictionaryWithObjectsAndKeys:
([cmdData objectForKey:SPBundleFileNameKey])?:@"-", @"name",
NSLocalizedString(@"Data Table", @"data table menu item label"), @"scope",
@@ -1509,7 +1508,7 @@ static const NSInteger kBlobAsImageFile = 4;
SPBundleHTMLOutputController *bundleController = [[SPBundleHTMLOutputController alloc] init];
[bundleController setWindowUUID:[cmdData objectForKey:SPBundleFileUUIDKey]];
[bundleController displayHTMLContent:output withOptions:nil];
- [[NSApp delegate] addHTMLOutputController:bundleController];
+ [SPAppDelegate addHTMLOutputController:bundleController];
}
}
}
@@ -1539,9 +1538,9 @@ static const NSInteger kBlobAsImageFile = 4;
- (void)dealloc
{
- if (columnDefinitions) [columnDefinitions release];
+ if (columnDefinitions) SPClear(columnDefinitions);
#ifndef SP_CODA
- [prefs release];
+ SPClear(prefs);
#endif
[super dealloc];
diff --git a/Source/SPCustomQuery.m b/Source/SPCustomQuery.m
index 083de5c3..a6e14b34 100644
--- a/Source/SPCustomQuery.m
+++ b/Source/SPCustomQuery.m
@@ -141,7 +141,7 @@
// Re-init sort order
isDesc = NO;
sortColumn = nil;
- if(sortField) [sortField release], sortField = nil;
+ if(sortField) SPClear(sortField);
// Retrieve the custom query string and split it into separate SQL queries
queryParser = [[SPSQLParser alloc] initWithString:[textView string]];
@@ -185,7 +185,7 @@
// Re-init sort order
isDesc = NO;
sortColumn = nil;
- if(sortField) [sortField release], sortField = nil;
+ if(sortField) SPClear(sortField);
// If the current selection is a single caret position, run the current query.
if (selectedRange.length == 0) {
@@ -197,7 +197,7 @@
NSBeep();
return;
}
- queries = [NSArray arrayWithObject:[SPSQLParser normaliseQueryForExecution:query]];
+ queries = @[[SPSQLParser normaliseQueryForExecution:query]];
// Otherwise, run the selected text.
} else {
@@ -470,7 +470,7 @@
#ifndef SP_CODA
NSSavePanel *panel = [NSSavePanel savePanel];
- [panel setAllowedFileTypes:[NSArray arrayWithObject:SPFileExtensionSQL]];
+ [panel setAllowedFileTypes:@[SPFileExtensionSQL]];
[panel setExtensionHidden:NO];
[panel setAllowsOtherFileTypes:YES];
@@ -504,7 +504,7 @@
{
NSPasteboard *pb = [NSPasteboard generalPasteboard];
- [pb declareTypes:[NSArray arrayWithObject:NSStringPboardType] owner:nil];
+ [pb declareTypes:@[NSStringPboardType] owner:nil];
[pb setString:[self buildHistoryString] forType:NSStringPboardType];
}
@@ -563,6 +563,9 @@
{
NSString *taskString;
+ //ensure there is no pending edit, which could be messed up (#2113)
+ [[tableDocumentInstance parentWindow] endEditingFor:nil];
+
if ([queries count] > 1) {
taskString = [NSString stringWithFormat:NSLocalizedString(@"Running query %i of %lu...", @"Running multiple queries string"), 1, (unsigned long)[queries count]];
}
@@ -628,7 +631,7 @@
// Remove all the columns if not reloading the table
if(!reloadingExistingResult) {
- if (cqColumnDefinition) [cqColumnDefinition release], cqColumnDefinition = nil;
+ if (cqColumnDefinition) SPClear(cqColumnDefinition);
[[self onMainThread] updateTableView];
}
@@ -916,7 +919,7 @@
return;
}
- [customQueryView reloadData];
+ [[customQueryView onMainThread] reloadData];
// Restore the result view origin if appropriate
if (!NSEqualRects(selectionViewportToRestore, NSZeroRect)) {
@@ -1465,8 +1468,7 @@
{
if (queryLoadTimer) {
[queryLoadTimer invalidate];
- [queryLoadTimer release];
- queryLoadTimer = nil;
+ SPClear(queryLoadTimer);
}
}
@@ -1664,7 +1666,7 @@
#else
NSFont *tableFont = [NSFont systemFontOfSize:[NSFont smallSystemFontSize]];
#endif
- [customQueryView setRowHeight:2.0f+NSSizeToCGSize([@"{ǞṶḹÜ∑zgyf" sizeWithAttributes:[NSDictionary dictionaryWithObject:tableFont forKey:NSFontAttributeName]]).height];
+ [customQueryView setRowHeight:2.0f+NSSizeToCGSize([@"{ǞṶḹÜ∑zgyf" sizeWithAttributes:@{NSFontAttributeName : tableFont}]).height];
// If there are no table columns to add, return
if (!cqColumnDefinition || ![cqColumnDefinition count]) return;
@@ -1736,7 +1738,7 @@
*/
- (void)setResultSelectedRowIndexesToRestore:(NSIndexSet *)theIndexSet
{
- if (selectionIndexToRestore) [selectionIndexToRestore release], selectionIndexToRestore = nil;
+ if (selectionIndexToRestore) SPClear(selectionIndexToRestore);
if (theIndexSet) selectionIndexToRestore = [[NSIndexSet alloc] initWithIndexSet:theIndexSet];
}
@@ -1808,7 +1810,7 @@
NSDictionary *columnDefinition = [NSDictionary dictionaryWithDictionary:[cqColumnDefinition objectAtIndex:[[[[customQueryView tableColumns] objectAtIndex:columnIndex] identifier] integerValue]]];
if(!columnDefinition)
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-2], @"", nil];
+ return @[@(-2), @""];
// Resolve the original table name for current column if AS was used
NSString *tableForColumn = [columnDefinition objectForKey:@"org_table"];
@@ -1819,13 +1821,13 @@
// No table/database name found indicates that the field's column contains data from more than one table as for UNION
// or the field data are not bound to any table as in SELECT 1 or if column database is unset
if(!tableForColumn || ![tableForColumn length] || !dbForColumn || ![dbForColumn length])
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
// if table and database name are given check if field can be identified unambiguously
// first without blob data
NSString *fieldIDQueryStr = [self argumentForRow:rowIndex ofTable:tableForColumn andDatabase:[columnDefinition objectForKey:@"db"] includeBlobs:NO];
if(!fieldIDQueryStr)
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
[tableDocumentInstance startTaskWithDescription:NSLocalizedString(@"Checking field data for editing...", @"checking field data for editing task description")];
@@ -1837,7 +1839,7 @@
if ([mySQLConnection queryErrored]) {
[tableDocumentInstance endTask];
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
}
NSArray *tempRow = [tempResult getRowAsArray];
@@ -1847,7 +1849,7 @@
fieldIDQueryStr = [self argumentForRow:rowIndex ofTable:tableForColumn andDatabase:[columnDefinition objectForKey:@"db"] includeBlobs:YES];
if(!fieldIDQueryStr) {
[tableDocumentInstance endTask];
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
}
tempResult = [mySQLConnection queryString:[NSString stringWithFormat:@"SELECT COUNT(1) FROM %@.%@ %@",
@@ -1857,14 +1859,14 @@
if ([mySQLConnection queryErrored]) {
[tableDocumentInstance endTask];
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
}
tempRow = [tempResult getRowAsArray];
if([tempRow count] && [[tempRow objectAtIndex:0] integerValue] < 1) {
[tableDocumentInstance endTask];
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
}
}
@@ -2038,7 +2040,7 @@
if ([prefs boolForKey:SPReloadAfterEditingRow]) {
reloadingExistingResult = YES;
[self storeCurrentResultViewForRestoration];
- [self performQueries:[NSArray arrayWithObject:lastExecutedQuery] withCallback:NULL];
+ [self performQueries:@[lastExecutedQuery] withCallback:NULL];
} else {
#endif
// otherwise, just update the data in the data storage
@@ -2153,8 +2155,7 @@
// this is the same as saying (isDesc && !invert) || (!isDesc && invert)
if (isDesc != invert) {
- [sortField release];
- sortField = nil;
+ SPClear(sortField);
} else {
isDesc = !isDesc;
}
@@ -2264,7 +2265,7 @@
sortColumn = tableColumn;
else
sortColumn = nil;
- [self performQueries:[NSArray arrayWithObject:queryString] withCallback:@selector(tableSortCallback)];
+ [self performQueries:@[queryString] withCallback:@selector(tableSortCallback)];
}
- (void)tableSortCallback
@@ -2273,7 +2274,7 @@
if ([mySQLConnection queryErrored]) {
sortColumn = nil;
- if(sortField) [sortField release], sortField = nil;
+ if(sortField) SPClear(sortField);
return;
}
@@ -2290,9 +2291,7 @@
NSString *tmp = [customQueryView draggedRowsAsTabString];
if ( nil != tmp )
{
- [pboard declareTypes:[NSArray arrayWithObjects: NSTabularTextPboardType,
- NSStringPboardType, nil]
- owner:nil];
+ [pboard declareTypes:@[NSTabularTextPboardType, NSStringPboardType] owner:nil];
[pboard setString:tmp forType:NSStringPboardType];
[pboard setString:tmp forType:NSTabularTextPboardType];
return YES;
@@ -2451,7 +2450,7 @@
// Open the editing sheet if required
if ([customQueryView shouldUseFieldEditorForRow:rowIndex column:[[aTableColumn identifier] integerValue] checkWithLock:NULL])
{
- if (fieldEditor) [fieldEditor release], fieldEditor = nil;
+ if (fieldEditor) SPClear(fieldEditor);
fieldEditor = [[SPFieldEditorController alloc] init];
// Remember edited row for reselecting and setting the scroll view after reload
@@ -2541,7 +2540,7 @@
if ([aNotification object] != customQueryView) return;
#ifndef SP_CODA /* triggered commands */
- NSArray *triggeredCommands = [[NSApp delegate] bundleCommandsForTrigger:SPBundleTriggerActionTableRowChanged];
+ NSArray *triggeredCommands = [SPAppDelegate bundleCommandsForTrigger:SPBundleTriggerActionTableRowChanged];
for(NSString* cmdPath in triggeredCommands) {
NSArray *data = [cmdPath componentsSeparatedByString:@"|"];
NSMenuItem *aMenuItem = [[[NSMenuItem alloc] init] autorelease];
@@ -2565,7 +2564,7 @@
}
if(!stopTrigger) {
if([[data objectAtIndex:1] isEqualToString:SPBundleScopeGeneral]) {
- [[[NSApp delegate] onMainThread] executeBundleItemForApp:aMenuItem];
+ [[SPAppDelegate onMainThread] executeBundleItemForApp:aMenuItem];
}
else if([[data objectAtIndex:1] isEqualToString:SPBundleScopeDataTable]) {
if([[[[[NSApp mainWindow] firstResponder] class] description] isEqualToString:@"SPCopyTable"])
@@ -3156,7 +3155,7 @@
aRange = NSMakeRange(0,0);
NSInteger safeCnt = 0; // safety counter - not more than 200 loops allowed
while(1){
- aRange = [desc rangeOfRegex:@"\\s((https?|ftp|file)://.*?html)" options:RKLNoOptions inRange:NSMakeRange(aRange.location+aRange.length, [desc length]-aRange.location-aRange.length) capture:1 error:&err1];
+ aRange = [desc rangeOfRegex:@"\\s((https?|ftp|file)://.*?html)" options:RKLNoOptions inRange:NSMakeRange(NSMaxRange(aRange), [desc length]-aRange.location-aRange.length) capture:1 error:&err1];
if(aRange.location != NSNotFound) {
aUrl = [desc substringWithRange:aRange];
[desc replaceCharactersInRange:aRange withString:[NSString stringWithFormat:@"<a href='%@'>%@</a>", aUrl, aUrl]];
@@ -3365,6 +3364,9 @@
if(numberOfHistoryItems>0)
for(id historyMenuItem in [[SPQueryController sharedQueryController] historyMenuItemsForFileURL:[tableDocumentInstance fileURL]])
[historyMenu addItem:historyMenuItem];
+
+ // Reapply the filter
+ [self filterQueryHistory:nil];
}
/**
@@ -3392,9 +3394,9 @@
for (NSDictionary *favorite in [[SPQueryController sharedQueryController] favoritesForFileURL:[tableDocumentInstance fileURL]]) {
if (![favorite isKindOfClass:[NSDictionary class]] || ![favorite objectForKey:@"name"]) continue;
NSMutableParagraphStyle *paraStyle = [[[NSMutableParagraphStyle alloc] init] autorelease];
- [paraStyle setTabStops:[NSArray array]];
+ [paraStyle setTabStops:@[]];
[paraStyle addTabStop:[[[NSTextTab alloc] initWithType:NSRightTabStopType location:190.0f] autorelease]];
- NSDictionary *attributes = [NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:paraStyle, [NSFont systemFontOfSize:11], nil] forKeys:[NSArray arrayWithObjects:NSParagraphStyleAttributeName, NSFontAttributeName, nil]];
+ NSDictionary *attributes = @{NSParagraphStyleAttributeName : paraStyle, NSFontAttributeName : [NSFont systemFontOfSize:11]};
NSAttributedString *titleString = [[[NSAttributedString alloc]
initWithString:([favorite objectForKey:@"tabtrigger"] && [(NSString*)[favorite objectForKey:@"tabtrigger"] length]) ? [NSString stringWithFormat:@"%@\t%@⇥", [favorite objectForKey:@"name"], [favorite objectForKey:@"tabtrigger"]] : [favorite objectForKey:@"name"]
attributes:attributes] autorelease];
@@ -3418,9 +3420,9 @@
for (NSDictionary *favorite in [prefs objectForKey:SPQueryFavorites]) {
if (![favorite isKindOfClass:[NSDictionary class]] || ![favorite objectForKey:@"name"]) continue;
NSMutableParagraphStyle *paraStyle = [[[NSMutableParagraphStyle alloc] init] autorelease];
- [paraStyle setTabStops:[NSArray array]];
+ [paraStyle setTabStops:@[]];
[paraStyle addTabStop:[[[NSTextTab alloc] initWithType:NSRightTabStopType location:190.0f] autorelease]];
- NSDictionary *attributes = [NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:paraStyle, [NSFont systemFontOfSize:11], nil] forKeys:[NSArray arrayWithObjects:NSParagraphStyleAttributeName, NSFontAttributeName, nil]];
+ NSDictionary *attributes = @{NSParagraphStyleAttributeName : paraStyle, NSFontAttributeName : [NSFont systemFontOfSize:11]};
NSAttributedString *titleString = [[[NSAttributedString alloc]
initWithString:([favorite objectForKey:@"tabtrigger"] && [(NSString*)[favorite objectForKey:@"tabtrigger"] length]) ? [NSString stringWithFormat:@"%@\t%@⇥", [favorite objectForKey:@"name"], [favorite objectForKey:@"tabtrigger"]] : [favorite objectForKey:@"name"]
attributes:attributes] autorelease];
@@ -3433,6 +3435,9 @@
[menu addItem:item];
[item release];
}
+
+ // Reapply the filter
+ [self filterQueryFavorites:nil];
}
#endif
@@ -3540,11 +3545,7 @@
// Result Table Font preference changed
else if ([keyPath isEqualToString:SPGlobalResultTableFont]) {
NSFont *tableFont = [NSUnarchiver unarchiveObjectWithData:[change objectForKey:NSKeyValueChangeNewKey]];
-#ifndef SP_CODA
- [customQueryView setRowHeight:2.0f+NSSizeToCGSize([@"{ǞṶḹÜ∑zgyf" sizeWithAttributes:[NSDictionary dictionaryWithObject:tableFont forKey:NSFontAttributeName]]).height];
-#else
- [customQueryView setRowHeight:2.0f+NSSizeToCGSize([@"{ǞṶḹÜ∑zgyf" sizeWithAttributes:[NSDictionary dictionaryWithObject:tableFont forKey:NSFontAttributeName]]).height];
-#endif
+ [customQueryView setRowHeight:2.0f+NSSizeToCGSize([@"{ǞṶḹÜ∑zgyf" sizeWithAttributes:@{NSFontAttributeName : tableFont}]).height];
[customQueryView setFont:tableFont];
[customQueryView reloadData];
}
@@ -3596,13 +3597,13 @@
if([saveQueryFavoriteGlobal state] == NSOnState) {
[favorites addObject:[NSMutableDictionary dictionaryWithObjects:
[NSArray arrayWithObjects:[queryFavoriteNameTextField stringValue], queryToBeAddded, nil]
- forKeys:[NSArray arrayWithObjects:@"name", @"query", nil]]];
+ forKeys:@[@"name", @"query"]]];
[prefs setObject:favorites forKey:SPQueryFavorites];
} else {
[[SPQueryController sharedQueryController] addFavorite:[NSMutableDictionary dictionaryWithObjects:
[NSArray arrayWithObjects:[queryFavoriteNameTextField stringValue], [[queryToBeAddded mutableCopy] autorelease], nil]
- forKeys:[NSArray arrayWithObjects:@"name", @"query", nil]] forFileURL:[tableDocumentInstance fileURL]];
+ forKeys:@[@"name", @"query"]] forFileURL:[tableDocumentInstance fileURL]];
}
[saveQueryFavoriteGlobal setState:NSOffState];
@@ -3681,8 +3682,7 @@
}
if(fieldEditor) {
- [fieldEditor release];
- fieldEditor = nil;
+ SPClear(fieldEditor);
}
// Preserve focus and restore selection indexes if appropriate
@@ -3825,27 +3825,31 @@
pos.y -= 20;
switch(numberOfPossibleUpdateRows) {
case -1:
- [SPTooltip showWithObject:kCellEditorErrorNoMultiTabDb
- atLocation:pos
- ofType:@"text"];
- shouldBeginEditing = NO;
+ NSBeep();
+ [SPTooltip showWithObject:kCellEditorErrorNoMultiTabDb
+ atLocation:pos
+ ofType:@"text"];
+ shouldBeginEditing = NO;
break;
+
case 0:
- [SPTooltip showWithObject:[NSString stringWithFormat:kCellEditorErrorNoMatch, [columnDefinition objectForKey:@"org_table"]]
- atLocation:pos
- ofType:@"text"];
- shouldBeginEditing = NO;
+ NSBeep();
+ [SPTooltip showWithObject:[NSString stringWithFormat:kCellEditorErrorNoMatch, [columnDefinition objectForKey:@"org_table"]]
+ atLocation:pos
+ ofType:@"text"];
+ shouldBeginEditing = NO;
break;
case 1:
- shouldBeginEditing = YES;
+ shouldBeginEditing = YES;
break;
default:
- [SPTooltip showWithObject:[NSString stringWithFormat:kCellEditorErrorTooManyMatches, (long)numberOfPossibleUpdateRows]
- atLocation:pos
- ofType:@"text"];
- shouldBeginEditing = NO;
+ NSBeep();
+ [SPTooltip showWithObject:[NSString stringWithFormat:kCellEditorErrorTooManyMatches, (long)numberOfPossibleUpdateRows]
+ atLocation:pos
+ ofType:@"text"];
+ shouldBeginEditing = NO;
}
isFieldEditable = shouldBeginEditing;
@@ -3894,7 +3898,7 @@
arrowEvent = [NSEvent keyEventWithType:NSKeyDown location:NSMakePoint(0,0) modifierFlags:0 timestamp:0 windowNumber:[[tableDocumentInstance parentWindow] windowNumber] context:[NSGraphicsContext currentContext] characters:nil charactersIgnoringModifiers:nil isARepeat:NO keyCode:0x7D];
else
arrowEvent = [NSEvent keyEventWithType:NSKeyDown location:NSMakePoint(0,0) modifierFlags:0 timestamp:0 windowNumber:[[tableDocumentInstance parentWindow] windowNumber] context:[NSGraphicsContext currentContext] characters:nil charactersIgnoringModifiers:nil isARepeat:NO keyCode:0x7E];
- [[NSApplication sharedApplication] postEvent:arrowEvent atStart:NO];
+ [NSApp postEvent:arrowEvent atStart:NO];
return YES;
}
@@ -3918,7 +3922,7 @@
// Preserve the focus
[[tableDocumentInstance parentWindow] makeFirstResponder:customQueryView];
- return TRUE;
+ return YES;
}
}
@@ -4036,22 +4040,22 @@
[NSObject cancelPreviousPerformRequestsWithTarget:customQueryView];
[self clearQueryLoadTimer];
- [resultLoadingCondition release];
- [usedQuery release];
- [lastExecutedQuery release];
- [resultData release];
- [favoritesManager release];
+ SPClear(resultLoadingCondition);
+ SPClear(usedQuery);
+ SPClear(lastExecutedQuery);
+ SPClear(resultData);
+ SPClear(favoritesManager);
- if(fieldEditor) [fieldEditor release], fieldEditor = nil;
+ if(fieldEditor) SPClear(fieldEditor);
#ifndef SP_CODA
- if (helpHTMLTemplate) [helpHTMLTemplate release];
+ if (helpHTMLTemplate) SPClear(helpHTMLTemplate);
#endif
- if (mySQLversion) [mySQLversion release];
- if (sortField) [sortField release];
- if (cqColumnDefinition) [cqColumnDefinition release];
- if (selectionIndexToRestore) [selectionIndexToRestore release];
- if (currentQueryRanges) [currentQueryRanges release];
+ if (mySQLversion) SPClear(mySQLversion);
+ if (sortField) SPClear(sortField);
+ if (cqColumnDefinition) SPClear(cqColumnDefinition);
+ if (selectionIndexToRestore) SPClear(selectionIndexToRestore);
+ if (currentQueryRanges) SPClear(currentQueryRanges);
[super dealloc];
}
diff --git a/Source/SPDataCellFormatter.m b/Source/SPDataCellFormatter.m
index 2cd3b8c8..6c6cd913 100644
--- a/Source/SPDataCellFormatter.m
+++ b/Source/SPDataCellFormatter.m
@@ -140,7 +140,7 @@
- (void)dealloc
{
- if (fieldType) [fieldType release], fieldType = nil;
+ if (fieldType) SPClear(fieldType);
[super dealloc];
}
diff --git a/Source/SPDataImport.m b/Source/SPDataImport.m
index 26c56348..30ef3bf4 100644
--- a/Source/SPDataImport.m
+++ b/Source/SPDataImport.m
@@ -288,7 +288,12 @@
[openPanel setNameFieldStringValue:[lastFilename lastPathComponent]];
}
- [openPanel setDirectoryURL:[NSURL URLWithString:[prefs objectForKey:@"openPath"]]];
+ NSString *openPath;
+ if((openPath = [prefs objectForKey:@"openPath"])) {
+ // Doc says calling +[NSURL URLWithString:] with nil is fine,
+ // but at least on 10.6 this will cause an exception
+ [openPanel setDirectoryURL:[NSURL URLWithString:openPath]];
+ }
[openPanel beginSheetModalForWindow:[tableDocumentInstance parentWindow] completionHandler:^(NSInteger returnCode) {
// Ensure text inputs are completed, preventing dead character entry
@@ -307,7 +312,7 @@
// Reset progress cancelled from any previous runs
progressCancelled = NO;
- if (lastFilename) [lastFilename release]; lastFilename = nil;
+ if (lastFilename) SPClear(lastFilename);
lastFilename = [[NSString stringWithString:[[openPanel URL] path]] retain];
@@ -662,7 +667,7 @@
[tablesListInstance updateTables:self];
// Re-query the structure of all databases in the background
- [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], @"forceUpdate", nil]];
+ [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:@{@"forceUpdate" : @YES}];
// Import finished Growl notification
[[SPGrowlController sharedGrowlController] notifyWithTitle:@"Import Finished"
@@ -754,7 +759,7 @@
if ([csvFileHandle compressionFormat] == SPBzip2Compression) useIndeterminate = YES;
// Reset progress interface
- [errorsView setString:@""];
+ [[errorsView onMainThread] setString:@""];
[[singleProgressTitle onMainThread] setStringValue:NSLocalizedString(@"Importing CSV", @"text showing that the application is importing CSV")];
[[singleProgressText onMainThread] setStringValue:NSLocalizedString(@"Reading...", @"text showing that app is reading dump")];
[[singleProgressBar onMainThread] setIndeterminate:YES];
@@ -1178,7 +1183,7 @@
[tablesListInstance performSelectorOnMainThread:@selector(updateTables:) withObject:self waitUntilDone:YES];
// Re-query the structure of all databases in the background
- [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], @"forceUpdate", nil]];
+ [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:@{@"forceUpdate" : @YES}];
// Select the new table
[tablesListInstance selectItemWithName:selectedTableTarget];
@@ -1215,7 +1220,7 @@
nil, nil,
NSLocalizedString(@"Could not parse file as CSV", @"Error when we can't parse/split file as CSV")
);
- return FALSE;
+ return YES;
}
// Sanity check the first row of the CSV to prevent hang loops caused by wrong line ending entry
@@ -1228,7 +1233,7 @@
nil, nil,
NSLocalizedString(@"The CSV was read as containing more than 512 columns, more than the maximum columns permitted for speed reasons by Sequel Pro.\n\nThis usually happens due to errors reading the CSV; please double-check the CSV to be imported and the line endings and escape characters at the bottom of the CSV selection dialog.", @"Error when CSV appears to have too many columns to import, probably due to line ending mismatch")
);
- return FALSE;
+ return NO;
}
fieldMappingImportArrayIsPreview = dataIsPreviewData;
@@ -1240,29 +1245,33 @@
fieldMapperSheetStatus = SPFieldMapperInProgress;
fieldMappingArrayHasGlobalVariables = NO;
- // Init the field mapper controller
- fieldMapperController = [(SPFieldMapperController *)[SPFieldMapperController alloc] initWithDelegate:self];
- [fieldMapperController setConnection:mySQLConnection];
- [fieldMapperController setSourcePath:filename];
- [fieldMapperController setImportDataArray:fieldMappingImportArray hasHeader:[importFieldNamesSwitch state] isPreview:fieldMappingImportArrayIsPreview];
-
- // Show field mapper sheet and set the focus to it
- [[NSApp onMainThread] beginSheet:[fieldMapperController window]
- modalForWindow:[tableDocumentInstance parentWindow]
- modalDelegate:self
- didEndSelector:@selector(fieldMapperDidEndSheet:returnCode:contextInfo:)
- contextInfo:nil];
-
- [[[fieldMapperController window] onMainThread] makeKeyWindow];
+ //the field mapper is an UI object and must not be caught in the background thread's autoreleasepool
+ dispatch_async(dispatch_get_main_queue(), ^{
+ // Init the field mapper controller
+ fieldMapperController = [[SPFieldMapperController alloc] initWithDelegate:self];
+ [fieldMapperController setConnection:mySQLConnection];
+ [fieldMapperController setSourcePath:filename];
+ [fieldMapperController setImportDataArray:fieldMappingImportArray hasHeader:[importFieldNamesSwitch state] isPreview:fieldMappingImportArrayIsPreview];
+
+ // Show field mapper sheet and set the focus to it
+ [NSApp beginSheet:[fieldMapperController window]
+ modalForWindow:[tableDocumentInstance parentWindow]
+ modalDelegate:self
+ didEndSelector:@selector(fieldMapperDidEndSheet:returnCode:contextInfo:)
+ contextInfo:nil];
+
+ [[fieldMapperController window] makeKeyWindow];
+ });
// Wait for field mapper sheet
while (fieldMapperSheetStatus == SPFieldMapperInProgress)
usleep(100000);
+
+ BOOL success = NO;
// If the mapping was cancelled, abort the import
if (fieldMapperSheetStatus == SPFieldMapperCancelled) {
- if (fieldMapperController) [fieldMapperController release];
- return FALSE;
+ goto cleanup;
}
// Get mapping settings and preset some global variables
@@ -1288,9 +1297,8 @@
|| ![selectedTableTarget length]
|| ![csvImportHeaderString length])
{
- if(fieldMapperController) [fieldMapperController release];
NSBeep();
- return FALSE;
+ goto cleanup;
}
// Store target table definitions
@@ -1312,13 +1320,14 @@
[importFieldNamesSwitch setState:[fieldMapperController importFieldNamesHeader]];
[prefs setBool:[importFieldNamesSwitch state] forKey:SPCSVImportFirstLineIsHeader];
+ success = YES;
+
+cleanup:
+ dispatch_async(dispatch_get_main_queue(), ^{
+ if(fieldMapperController) SPClear(fieldMapperController);
+ });
- if(fieldMapperController) [fieldMapperController release];
-
- if(fieldMapperSheetStatus == SPFieldMapperCompleted)
- return YES;
- else
- return NO;
+ return success;
}
/**
@@ -1706,34 +1715,33 @@
*/
- (void)_resetFieldMappingGlobals
{
- if (csvImportTailString) [csvImportTailString release], csvImportTailString = nil;
- if (csvImportHeaderString) [csvImportHeaderString release], csvImportHeaderString = nil;
- if (fieldMappingArray) [fieldMappingArray release], fieldMappingArray = nil;
- if (fieldMappingGlobalValueArray) [fieldMappingGlobalValueArray release], fieldMappingGlobalValueArray = nil;
- if (fieldMappingTableColumnNames) [fieldMappingTableColumnNames release], fieldMappingTableColumnNames = nil;
- if (fieldMappingTableDefaultValues) [fieldMappingTableDefaultValues release], fieldMappingTableDefaultValues = nil;
- if (fieldMapperOperator) [fieldMapperOperator release], fieldMapperOperator = nil;
+ if (csvImportTailString) SPClear(csvImportTailString);
+ if (csvImportHeaderString) SPClear(csvImportHeaderString);
+ if (fieldMappingArray) SPClear(fieldMappingArray);
+ if (fieldMappingGlobalValueArray) SPClear(fieldMappingGlobalValueArray);
+ if (fieldMappingTableColumnNames) SPClear(fieldMappingTableColumnNames);
+ if (fieldMappingTableDefaultValues) SPClear(fieldMappingTableDefaultValues);
+ if (fieldMapperOperator) SPClear(fieldMapperOperator);
}
#pragma mark -
- (void)dealloc
{
- if (fieldMappingImportArray) [fieldMappingImportArray release];
- if (geometryFields) [geometryFields release];
- if (geometryFieldsMapIndex) [geometryFieldsMapIndex release];
- if (bitFields) [bitFields release];
- if (nullableNumericFields) [nullableNumericFields release];
- if (bitFieldsMapIndex) [bitFieldsMapIndex release];
- if (nullableNumericFieldsMapIndex) [nullableNumericFieldsMapIndex release];
-
- if (lastFilename) [lastFilename release];
- if (prefs) [prefs release];
- if(selectedTableTarget) [selectedTableTarget release];
+ if (fieldMappingImportArray) SPClear(fieldMappingImportArray);
+ if (geometryFields) SPClear(geometryFields);
+ if (geometryFieldsMapIndex) SPClear(geometryFieldsMapIndex);
+ if (bitFields) SPClear(bitFields);
+ if (nullableNumericFields) SPClear(nullableNumericFields);
+ if (bitFieldsMapIndex) SPClear(bitFieldsMapIndex);
+ if (nullableNumericFieldsMapIndex) SPClear(nullableNumericFieldsMapIndex);
+ if (lastFilename) SPClear(lastFilename);
+ if (prefs) SPClear(prefs);
+ if (selectedTableTarget) SPClear(selectedTableTarget);
for (id retainedObject in nibObjectsToRelease) [retainedObject release];
- [nibObjectsToRelease release];
+ SPClear(nibObjectsToRelease);
[super dealloc];
}
diff --git a/Source/SPDataStorage.m b/Source/SPDataStorage.m
index ed50c7fc..dd5e87a5 100644
--- a/Source/SPDataStorage.m
+++ b/Source/SPDataStorage.m
@@ -58,7 +58,7 @@ static inline NSMutableArray* SPDataStorageGetEditedRow(NSPointerArray* rowStore
{
NSUInteger i;
editedRowCount = 0;
- [editedRows release], editedRows = nil;
+ SPClear(editedRows);
if (unloadedColumns) free(unloadedColumns), unloadedColumns = NULL;
if (dataStorage) {
@@ -68,7 +68,7 @@ static inline NSMutableArray* SPDataStorageGetEditedRow(NSPointerArray* rowStore
[newDataStorage replaceExistingResultStore:dataStorage];
}
- [dataStorage release], dataStorage = nil;
+ SPClear(dataStorage);
}
dataStorage = [newDataStorage retain];
@@ -357,12 +357,12 @@ static inline NSMutableArray* SPDataStorageGetEditedRow(NSPointerArray* rowStore
{
// Throw an exception if the range is out of bounds
- if (rangeToRemove.location + rangeToRemove.length > SPMySQLResultStoreGetRowCount(dataStorage)) {
- [NSException raise:NSRangeException format:@"Requested storage index (%llu) beyond bounds (%llu)", (unsigned long long)(rangeToRemove.location + rangeToRemove.length), SPMySQLResultStoreGetRowCount(dataStorage)];
+ if (NSMaxRange(rangeToRemove) > SPMySQLResultStoreGetRowCount(dataStorage)) {
+ [NSException raise:NSRangeException format:@"Requested storage index (%llu) beyond bounds (%llu)", (unsigned long long)(NSMaxRange(rangeToRemove)), SPMySQLResultStoreGetRowCount(dataStorage)];
}
// Remove the rows from the edited list and underlying storage
- NSUInteger i = MIN(editedRowCount, rangeToRemove.location + rangeToRemove.length);
+ NSUInteger i = MIN(editedRowCount, NSMaxRange(rangeToRemove));
while (--i >= rangeToRemove.location) {
editedRowCount--;
[editedRows removePointerAtIndex:i];
@@ -391,7 +391,7 @@ static inline NSMutableArray* SPDataStorageGetEditedRow(NSPointerArray* rowStore
if (columnIndex >= numberOfColumns) {
[NSException raise:NSRangeException format:@"Invalid column set as unloaded; requested column index (%llu) beyond bounds (%llu)", (unsigned long long)columnIndex, (unsigned long long)numberOfColumns];
}
- unloadedColumns[columnIndex] = true;
+ unloadedColumns[columnIndex] = YES;
}
#pragma mark - Basic information
@@ -449,8 +449,8 @@ static inline NSMutableArray* SPDataStorageGetEditedRow(NSPointerArray* rowStore
}
- (void) dealloc {
- [dataStorage release], dataStorage = nil;
- [editedRows release], editedRows = nil;
+ SPClear(dataStorage);
+ SPClear(editedRows);
if (unloadedColumns) free(unloadedColumns), unloadedColumns = NULL;
[super dealloc];
diff --git a/Source/SPDatabaseAction.h b/Source/SPDatabaseAction.h
index 00de9065..7ca8d402 100644
--- a/Source/SPDatabaseAction.h
+++ b/Source/SPDatabaseAction.h
@@ -31,6 +31,19 @@
@class SPTablesList;
@class SPMySQLConnection;
+@interface SPCreateDatabaseInfo : NSObject
+{
+ NSString *databaseName;
+ NSString *defaultEncoding;
+ NSString *defaultCollation;
+}
+
+@property (readwrite,retain) NSString *databaseName;
+@property (readwrite,retain) NSString *defaultEncoding;
+@property (readwrite,retain) NSString *defaultCollation;
+
+@end
+
@interface SPDatabaseAction : NSObject
{
NSWindow *messageWindow;
@@ -53,4 +66,23 @@
*/
@property (readwrite, assign) SPTablesList *tablesList;
+/**
+ * This method creates a new database.
+ *
+ * @param dbInfo database name/charset/collation (charset, collation may be nil)
+ * @return success
+ * @see createDatabase:withEncoding:collation:
+ */
+- (BOOL)createDatabase:(SPCreateDatabaseInfo *)dbInfo;
+
+/**
+ * This method creates a new database.
+ *
+ * @param database name of the new database to be created
+ * @param encoding charset of the new database (can be nil to skip)
+ * @param collation sorting collation of the new database (can be nil)
+ * @return YES on success, otherwise NO
+ */
+- (BOOL)createDatabase:(NSString *)database withEncoding:(NSString *)encoding collation:(NSString *)collation;
+
@end
diff --git a/Source/SPDatabaseAction.m b/Source/SPDatabaseAction.m
index 998aff95..413e2378 100644
--- a/Source/SPDatabaseAction.m
+++ b/Source/SPDatabaseAction.m
@@ -30,10 +30,58 @@
#import "SPDatabaseAction.h"
+#import <SPMySQL/SPMySQL.h>
+
+@implementation SPCreateDatabaseInfo
+
+@synthesize databaseName;
+@synthesize defaultEncoding;
+@synthesize defaultCollation;
+
+- (void)dealloc
+{
+ [self setDatabaseName:nil];
+ [self setDefaultEncoding:nil];
+ [self setDefaultCollation:nil];
+ [super dealloc];
+}
+
+@end
+
+#pragma mark -
+
@implementation SPDatabaseAction
@synthesize connection;
@synthesize messageWindow;
@synthesize tablesList;
+- (BOOL)createDatabase:(SPCreateDatabaseInfo *)dbInfo
+{
+ return [self createDatabase:[dbInfo databaseName]
+ withEncoding:[dbInfo defaultEncoding]
+ collation:[dbInfo defaultCollation]];
+}
+
+- (BOOL)createDatabase:(NSString *)database withEncoding:(NSString *)encoding collation:(NSString *)collation
+{
+ if(![database length]) {
+ SPLog(@"'database' should not be nil or empty!");
+ return NO;
+ }
+
+ NSMutableString *query = [NSMutableString stringWithFormat:@"CREATE DATABASE %@", [database backtickQuotedString]];
+
+ if([encoding length]) { // [nil length] == 0
+ [query appendFormat:@" DEFAULT CHARACTER SET = %@",[encoding backtickQuotedString]];
+ }
+ if([collation length]) {
+ [query appendFormat:@" DEFAULT COLLATE = %@",[collation backtickQuotedString]];
+ }
+
+ [connection queryString:query];
+
+ return ![connection queryErrored];
+}
+
@end
diff --git a/Source/SPDatabaseCopy.h b/Source/SPDatabaseCopy.h
index 081378e2..3adf7fa0 100644
--- a/Source/SPDatabaseCopy.h
+++ b/Source/SPDatabaseCopy.h
@@ -38,18 +38,10 @@
/**
* This method clones an existing database.
*
- * @param NSString sourceDatabaseName the name of the source database
- * @param NSString targetDatabaseName the name of the target database
- * @result BOOL success
+ * @param sourceDatabase information tuple about source database
+ * @param targetDatabaseName the name of the target database
+ * @result success
*/
-- (BOOL)copyDatabaseFrom:(NSString *)sourceDatabaseName to:(NSString *)targetDatabaseName withContent:(BOOL)copyWithContent;
-
-/**
- * This method creates a new database.
- *
- * @param NSString newDatabaseName name of the new database to be created
- * @return BOOL YES on success, otherwise NO
- */
-- (BOOL)createDatabase:(NSString *)newDatabaseName;
+- (BOOL)copyDatabaseFrom:(SPCreateDatabaseInfo *)sourceDatabase to:(NSString *)targetDatabaseName withContent:(BOOL)copyWithContent;
@end
diff --git a/Source/SPDatabaseCopy.m b/Source/SPDatabaseCopy.m
index 5ea0a2d5..94a5e896 100644
--- a/Source/SPDatabaseCopy.m
+++ b/Source/SPDatabaseCopy.m
@@ -35,46 +35,34 @@
@implementation SPDatabaseCopy
-- (BOOL)copyDatabaseFrom:(NSString *)sourceDatabaseName to:(NSString *)targetDatabaseName withContent:(BOOL)copyWithContent
+- (BOOL)copyDatabaseFrom:(SPCreateDatabaseInfo *)sourceDatabase to:(NSString *)targetDatabaseName withContent:(BOOL)copyWithContent
{
NSArray *tables = nil;
// Check whether the source database exists and the target database doesn't.
- BOOL sourceExists = [[connection databases] containsObject:sourceDatabaseName];
+ BOOL sourceExists = [[connection databases] containsObject:[sourceDatabase databaseName]];
BOOL targetExists = [[connection databases] containsObject:targetDatabaseName];
- if (sourceExists && !targetExists) {
-
- // Retrieve the list of tables/views/funcs/triggers from the source database
- tables = [connection tablesFromDatabase:sourceDatabaseName];
- }
- else {
+ if (!sourceExists || targetExists)
return NO;
- }
-
+
+ // Retrieve the list of tables/views/funcs/triggers from the source database
+ tables = [connection tablesFromDatabase:[sourceDatabase databaseName]];
+
// Abort if database creation failed
- if (![self createDatabase:targetDatabaseName]) return NO;
+ if (![self createDatabase:targetDatabaseName
+ withEncoding:[sourceDatabase defaultEncoding]
+ collation:[sourceDatabase defaultCollation]]) return NO;
SPTableCopy *dbActionTableCopy = [[SPTableCopy alloc] init];
[dbActionTableCopy setConnection:connection];
- BOOL success = [dbActionTableCopy copyTables:tables from:sourceDatabaseName to:targetDatabaseName withContent:copyWithContent];
+ BOOL success = [dbActionTableCopy copyTables:tables from:[sourceDatabase databaseName] to:targetDatabaseName withContent:copyWithContent];
[dbActionTableCopy release];
return success;
}
-- (BOOL)createDatabase:(NSString *)newDatabaseName
-{
- NSString *createStatement = [NSString stringWithFormat:@"CREATE DATABASE %@", [newDatabaseName backtickQuotedString]];
-
- [connection queryString:createStatement];
-
- if ([connection queryErrored]) return NO;
-
- return YES;
-}
-
@end
diff --git a/Source/SPDatabaseData.m b/Source/SPDatabaseData.m
index 9d5b47e7..4856505d 100644
--- a/Source/SPDatabaseData.m
+++ b/Source/SPDatabaseData.m
@@ -82,11 +82,11 @@ NSInteger _sortStorageEngineEntry(NSDictionary *itemOne, NSDictionary *itemTwo,
*/
- (void)resetAllData
{
- if (characterSetEncoding != nil) [characterSetEncoding release], characterSetEncoding = nil;
- if (defaultCollation != nil) [defaultCollation release], defaultCollation = nil;
- if (defaultCharacterSetEncoding != nil) [defaultCharacterSetEncoding release], defaultCharacterSetEncoding = nil;
- if (serverDefaultCharacterSetEncoding) [serverDefaultCharacterSetEncoding release], serverDefaultCharacterSetEncoding = nil;
- if (serverDefaultCollation) [serverDefaultCollation release], serverDefaultCollation = nil;
+ if (characterSetEncoding != nil) SPClear(characterSetEncoding);
+ if (defaultCollation != nil) SPClear(defaultCollation);
+ if (defaultCharacterSetEncoding != nil) SPClear(defaultCharacterSetEncoding);
+ if (serverDefaultCharacterSetEncoding) SPClear(serverDefaultCharacterSetEncoding);
+ if (serverDefaultCollation) SPClear(serverDefaultCollation);
[collations removeAllObjects];
[characterSetCollations removeAllObjects];
@@ -167,7 +167,7 @@ NSInteger _sortStorageEngineEntry(NSDictionary *itemOne, NSDictionary *itemTwo,
NSString *charSet = [NSString stringWithCString:c->name encoding:NSUTF8StringEncoding];
if ([charSet isEqualToString:characterSetEncoding]) {
- [characterSetCollations addObject:[NSDictionary dictionaryWithObject:[NSString stringWithCString:c->collation encoding:NSUTF8StringEncoding] forKey:@"COLLATION_NAME"]];
+ [characterSetCollations addObject:@{@"COLLATION_NAME" : [NSString stringWithCString:c->collation encoding:NSUTF8StringEncoding]}];
}
++c;
@@ -191,36 +191,36 @@ NSInteger _sortStorageEngineEntry(NSDictionary *itemOne, NSDictionary *itemTwo,
{
if ([storageEngines count] == 0) {
if ([serverSupport isMySQL3] || [serverSupport isMySQL4]) {
- [storageEngines addObject:[NSDictionary dictionaryWithObject:@"MyISAM" forKey:@"Engine"]];
+ [storageEngines addObject:@{@"Engine" : @"MyISAM"}];
// Check if InnoDB support is enabled
NSString *result = [self _getSingleVariableValue:@"have_innodb"];
if(result && [result isEqualToString:@"YES"])
- [storageEngines addObject:[NSDictionary dictionaryWithObject:@"InnoDB" forKey:@"Engine"]];
+ [storageEngines addObject:@{@"Engine" : @"InnoDB"}];
// Before MySQL 4.1 the MEMORY engine was known as HEAP and the ISAM engine was included
if ([serverSupport supportsPre41StorageEngines]) {
- [storageEngines addObject:[NSDictionary dictionaryWithObject:@"HEAP" forKey:@"Engine"]];
- [storageEngines addObject:[NSDictionary dictionaryWithObject:@"ISAM" forKey:@"Engine"]];
+ [storageEngines addObject:@{@"Engine" : @"HEAP"}];
+ [storageEngines addObject:@{@"Engine" : @"ISAM"}];
}
else {
- [storageEngines addObject:[NSDictionary dictionaryWithObject:@"MEMORY" forKey:@"Engine"]];
+ [storageEngines addObject:@{@"Engine" : @"MEMORY"}];
}
// BLACKHOLE storage engine was added in MySQL 4.1.11
if ([serverSupport supportsBlackholeStorageEngine]) {
- [storageEngines addObject:[NSDictionary dictionaryWithObject:@"BLACKHOLE" forKey:@"Engine"]];
+ [storageEngines addObject:@{@"Engine" : @"BLACKHOLE"}];
}
// ARCHIVE storage engine was added in MySQL 4.1.3
if ([serverSupport supportsArchiveStorageEngine]) {
- [storageEngines addObject:[NSDictionary dictionaryWithObject:@"ARCHIVE" forKey:@"Engine"]];
+ [storageEngines addObject:@{@"Engine" : @"ARCHIVE"}];
}
// CSV storage engine was added in MySQL 4.1.4
if ([serverSupport supportsCSVStorageEngine]) {
- [storageEngines addObject:[NSDictionary dictionaryWithObject:@"CSV" forKey:@"Engine"]];
+ [storageEngines addObject:@{@"Engine" : @"CSV"}];
}
}
// The table information_schema.engines didn't exist until MySQL 5.1.5
@@ -428,7 +428,7 @@ NSInteger _sortStorageEngineEntry(NSDictionary *itemOne, NSDictionary *itemTwo,
{
SPMySQLResult *result = [connection queryString:query];
- if ([connection queryErrored]) return [NSArray array];
+ if ([connection queryErrored]) return @[];
[result setReturnDataAsStrings:YES];
@@ -489,11 +489,11 @@ NSInteger _sortStorageEngineEntry(NSDictionary *itemOne, NSDictionary *itemTwo,
{
[self resetAllData];
- [collations release], collations = nil;
- [characterSetCollations release], characterSetCollations = nil;
- [storageEngines release], storageEngines = nil;
- [characterSetEncodings release], characterSetEncodings = nil;
- [cachedCollationsByEncoding release], cachedCollationsByEncoding = nil;
+ SPClear(collations);
+ SPClear(characterSetCollations);
+ SPClear(storageEngines);
+ SPClear(characterSetEncodings);
+ SPClear(cachedCollationsByEncoding);
[super dealloc];
}
diff --git a/Source/SPDatabaseDocument.h b/Source/SPDatabaseDocument.h
index 0cd485b9..23b22d4a 100644
--- a/Source/SPDatabaseDocument.h
+++ b/Source/SPDatabaseDocument.h
@@ -56,6 +56,7 @@
@class SPMySQLConnection;
@class SPCharsetCollationHelper;
@class SPGotoDatabaseController;
+@class SPCreateDatabaseInfo;
#import "SPDatabaseContentViewDelegate.h"
#import "SPConnectionControllerDelegateProtocol.h"
@@ -451,6 +452,7 @@
#endif
- (NSArray *)allTableNames;
- (SPTablesList *)tablesListInstance;
+- (SPCreateDatabaseInfo *)createDatabaseInfo;
#ifndef SP_CODA /* method decls */
// Notification center methods
diff --git a/Source/SPDatabaseDocument.m b/Source/SPDatabaseDocument.m
index 654f06cd..0b4abdb9 100644
--- a/Source/SPDatabaseDocument.m
+++ b/Source/SPDatabaseDocument.m
@@ -330,7 +330,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[tableTabView setTabViewType:NSNoTabsNoBorder];
// Hide the activity list
- [self setActivityPaneHidden:[NSNumber numberWithInteger:1]];
+ [self setActivityPaneHidden:@1];
// Load additional nibs, keeping track of the top-level objects to allow correct release
NSArray *connectionDialogTopLevelObjects = nil;
@@ -473,7 +473,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// Update the selected database if appropriate
if ([connectionController database] && ![[connectionController database] isEqualToString:@""]) {
- if (selectedDatabase) [selectedDatabase release], selectedDatabase = nil;
+ if (selectedDatabase) SPClear(selectedDatabase);
selectedDatabase = [[NSString alloc] initWithString:[connectionController database]];
#ifndef SP_CODA /* [spHistoryControllerInstance updateHistoryEntries] */
[spHistoryControllerInstance updateHistoryEntries];
@@ -552,10 +552,10 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
notificationName:@"Connected"];
// Init Custom Query editor with the stored queries in a spf file if given.
- [spfDocData setObject:[NSNumber numberWithBool:NO] forKey:@"save_editor_content"];
+ [spfDocData setObject:@NO forKey:@"save_editor_content"];
if (spfSession != nil && [spfSession objectForKey:@"queries"]) {
- [spfDocData setObject:[NSNumber numberWithBool:YES] forKey:@"save_editor_content"];
+ [spfDocData setObject:@YES forKey:@"save_editor_content"];
if ([[spfSession objectForKey:@"queries"] isKindOfClass:[NSData class]]) {
NSString *q = [[NSString alloc] initWithData:[[spfSession objectForKey:@"queries"] decompress] encoding:NSUTF8StringEncoding];
[self initQueryEditorWithString:q];
@@ -569,8 +569,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
if (queryEditorInitString && [queryEditorInitString length]) {
[self viewQuery:self];
[customQueryInstance doPerformLoadQueryService:queryEditorInitString];
- [queryEditorInitString release];
- queryEditorInitString = nil;
+ SPClear(queryEditorInitString);
}
if (spfSession != nil) {
@@ -665,8 +664,8 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[[chooseDatabaseButton menu] addItem:[NSMenuItem separatorItem]];
#endif
- if (allDatabases) [allDatabases release];
- if (allSystemDatabases) [allSystemDatabases release];
+ if (allDatabases) SPClear(allDatabases);
+ if (allSystemDatabases) SPClear(allSystemDatabases);
NSArray *theDatabaseList = [mySQLConnection databases];
@@ -1012,8 +1011,8 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[self _addDatabase];
// Query the structure of all databases in the background (mainly for completion)
- [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:databaseStructureRetrieval selector:@selector(queryDbStructureWithUserInfo:) object:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], @"forceUpdate", nil]];
- }
+ [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:databaseStructureRetrieval selector:@selector(queryDbStructureWithUserInfo:) object:@{@"forceUpdate" : @YES}];
+ }
else {
// Reset chooseDatabaseButton
if ([[self database] length]) {
@@ -1056,7 +1055,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
#ifndef SP_CODA
// Close error status sheet for OPTIMIZE, CHECK, REPAIR etc.
else if ([contextInfo isEqualToString:@"statusError"]) {
- if (statusValues) [statusValues release], statusValues = nil;
+ if (statusValues) SPClear(statusValues);
}
#endif
}
@@ -1096,7 +1095,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
if(![dbName isNSNull]) {
if(![dbName isEqualToString:selectedDatabase]) {
- if (selectedDatabase) [selectedDatabase release], selectedDatabase = nil;
+ if (selectedDatabase) SPClear(selectedDatabase);
selectedDatabase = [[NSString alloc] initWithString:dbName];
[chooseDatabaseButton selectItemWithTitle:selectedDatabase];
#ifndef SP_CODA /* [self updateWindowTitle:self] */
@@ -1104,7 +1103,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
#endif
}
} else {
- if (selectedDatabase) [selectedDatabase release], selectedDatabase = nil;
+ if (selectedDatabase) SPClear(selectedDatabase);
[chooseDatabaseButton selectItemAtIndex:0];
#ifndef SP_CODA /* [self updateWindowTitle:self] */
[self updateWindowTitle:self];
@@ -1313,8 +1312,8 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// If the window has been fully faded in, clean up the timer.
if (alphaValue == 1.0) {
- [taskDrawTimer invalidate], [taskDrawTimer release], taskDrawTimer = nil;
- [taskFadeInStartDate release], taskFadeInStartDate = nil;
+ [taskDrawTimer invalidate], SPClear(taskDrawTimer);
+ SPClear(taskFadeInStartDate);
}
#endif
}
@@ -1424,8 +1423,8 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
#ifndef SP_CODA
// Cancel the draw timer if it exists
if (taskDrawTimer) {
- [taskDrawTimer invalidate], [taskDrawTimer release], taskDrawTimer = nil;
- [taskFadeInStartDate release], taskFadeInStartDate = nil;
+ [taskDrawTimer invalidate], SPClear(taskDrawTimer);
+ SPClear(taskFadeInStartDate);
}
// Hide the task interface and reset to indeterminate
@@ -1631,30 +1630,31 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
*/
- (NSNumber *)encodingTagFromMySQLEncoding:(NSString *)mysqlEncoding
{
- NSDictionary *translationMap = [NSDictionary dictionaryWithObjectsAndKeys:
- [NSNumber numberWithInt:SPEncodingUCS2], @"ucs2",
- [NSNumber numberWithInt:SPEncodingUTF8], @"utf8",
- [NSNumber numberWithInt:SPEncodingUTF8viaLatin1], @"utf8-",
- [NSNumber numberWithInt:SPEncodingASCII], @"ascii",
- [NSNumber numberWithInt:SPEncodingLatin1], @"latin1",
- [NSNumber numberWithInt:SPEncodingMacRoman], @"macroman",
- [NSNumber numberWithInt:SPEncodingCP1250Latin2], @"cp1250",
- [NSNumber numberWithInt:SPEncodingISOLatin2], @"latin2",
- [NSNumber numberWithInt:SPEncodingCP1256Arabic], @"cp1256",
- [NSNumber numberWithInt:SPEncodingGreek], @"greek",
- [NSNumber numberWithInt:SPEncodingHebrew], @"hebrew",
- [NSNumber numberWithInt:SPEncodingLatin5Turkish], @"latin5",
- [NSNumber numberWithInt:SPEncodingCP1257WinBaltic], @"cp1257",
- [NSNumber numberWithInt:SPEncodingCP1251WinCyrillic], @"cp1251",
- [NSNumber numberWithInt:SPEncodingBig5Chinese], @"big5",
- [NSNumber numberWithInt:SPEncodingShiftJISJapanese], @"sjis",
- [NSNumber numberWithInt:SPEncodingEUCJPJapanese], @"ujis",
- [NSNumber numberWithInt:SPEncodingEUCKRKorean], @"euckr",
- nil];
+ NSDictionary *translationMap = @{
+ @"ucs2" : @(SPEncodingUCS2),
+ @"utf8" : @(SPEncodingUTF8),
+ @"utf8-" : @(SPEncodingUTF8viaLatin1),
+ @"ascii" : @(SPEncodingASCII),
+ @"latin1" : @(SPEncodingLatin1),
+ @"macroman" : @(SPEncodingMacRoman),
+ @"cp1250" : @(SPEncodingCP1250Latin2),
+ @"latin2" : @(SPEncodingISOLatin2),
+ @"cp1256" : @(SPEncodingCP1256Arabic),
+ @"greek" : @(SPEncodingGreek),
+ @"hebrew" : @(SPEncodingHebrew),
+ @"latin5" : @(SPEncodingLatin5Turkish),
+ @"cp1257" : @(SPEncodingCP1257WinBaltic),
+ @"cp1251" : @(SPEncodingCP1251WinCyrillic),
+ @"big5" : @(SPEncodingBig5Chinese),
+ @"sjis" : @(SPEncodingShiftJISJapanese),
+ @"ujis" : @(SPEncodingEUCJPJapanese),
+ @"euckr" : @(SPEncodingEUCKRKorean),
+ @"utf8mb4" : @(SPEncodingUTF8MB4)
+ };
NSNumber *encodingTag = [translationMap valueForKey:mysqlEncoding];
if (!encodingTag)
- return [NSNumber numberWithInt:SPEncodingAutodetect];
+ return @(SPEncodingAutodetect);
return encodingTag;
}
@@ -1665,24 +1665,25 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
- (NSString *)mysqlEncodingFromEncodingTag:(NSNumber *)encodingTag
{
NSDictionary *translationMap = [NSDictionary dictionaryWithObjectsAndKeys:
- @"ucs2", [NSString stringWithFormat:@"%i", SPEncodingUCS2],
- @"utf8", [NSString stringWithFormat:@"%i", SPEncodingUTF8],
- @"utf8-", [NSString stringWithFormat:@"%i", SPEncodingUTF8viaLatin1],
- @"ascii", [NSString stringWithFormat:@"%i", SPEncodingASCII],
- @"latin1", [NSString stringWithFormat:@"%i", SPEncodingLatin1],
+ @"ucs2", [NSString stringWithFormat:@"%i", SPEncodingUCS2],
+ @"utf8", [NSString stringWithFormat:@"%i", SPEncodingUTF8],
+ @"utf8-", [NSString stringWithFormat:@"%i", SPEncodingUTF8viaLatin1],
+ @"ascii", [NSString stringWithFormat:@"%i", SPEncodingASCII],
+ @"latin1", [NSString stringWithFormat:@"%i", SPEncodingLatin1],
@"macroman", [NSString stringWithFormat:@"%i", SPEncodingMacRoman],
- @"cp1250", [NSString stringWithFormat:@"%i", SPEncodingCP1250Latin2],
- @"latin2", [NSString stringWithFormat:@"%i", SPEncodingISOLatin2],
- @"cp1256", [NSString stringWithFormat:@"%i", SPEncodingCP1256Arabic],
- @"greek", [NSString stringWithFormat:@"%i", SPEncodingGreek],
- @"hebrew", [NSString stringWithFormat:@"%i", SPEncodingHebrew],
- @"latin5", [NSString stringWithFormat:@"%i", SPEncodingLatin5Turkish],
- @"cp1257", [NSString stringWithFormat:@"%i", SPEncodingCP1257WinBaltic],
- @"cp1251", [NSString stringWithFormat:@"%i", SPEncodingCP1251WinCyrillic],
- @"big5", [NSString stringWithFormat:@"%i", SPEncodingBig5Chinese],
- @"sjis", [NSString stringWithFormat:@"%i", SPEncodingShiftJISJapanese],
- @"ujis", [NSString stringWithFormat:@"%i", SPEncodingEUCJPJapanese],
- @"euckr", [NSString stringWithFormat:@"%i", SPEncodingEUCKRKorean],
+ @"cp1250", [NSString stringWithFormat:@"%i", SPEncodingCP1250Latin2],
+ @"latin2", [NSString stringWithFormat:@"%i", SPEncodingISOLatin2],
+ @"cp1256", [NSString stringWithFormat:@"%i", SPEncodingCP1256Arabic],
+ @"greek", [NSString stringWithFormat:@"%i", SPEncodingGreek],
+ @"hebrew", [NSString stringWithFormat:@"%i", SPEncodingHebrew],
+ @"latin5", [NSString stringWithFormat:@"%i", SPEncodingLatin5Turkish],
+ @"cp1257", [NSString stringWithFormat:@"%i", SPEncodingCP1257WinBaltic],
+ @"cp1251", [NSString stringWithFormat:@"%i", SPEncodingCP1251WinCyrillic],
+ @"big5", [NSString stringWithFormat:@"%i", SPEncodingBig5Chinese],
+ @"sjis", [NSString stringWithFormat:@"%i", SPEncodingShiftJISJapanese],
+ @"ujis", [NSString stringWithFormat:@"%i", SPEncodingEUCJPJapanese],
+ @"euckr", [NSString stringWithFormat:@"%i", SPEncodingEUCKRKorean],
+ @"utf8mb4", [NSString stringWithFormat:@"%i", SPEncodingUTF8MB4],
nil];
NSString *mysqlEncoding = [translationMap valueForKey:[NSString stringWithFormat:@"%i", [encodingTag intValue]]];
@@ -1710,7 +1711,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
NSString *mysqlEncoding = [databaseDataInstance getDatabaseDefaultCharacterSet];
- [selectedDatabaseEncoding release], selectedDatabaseEncoding = nil;
+ SPClear(selectedDatabaseEncoding);
// Fallback or older version? -> set encoding to mysql default encoding latin1
if ( !mysqlEncoding ) {
@@ -1841,7 +1842,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// show syntax(es) in sheet
if (sender == self) {
NSPasteboard *pb = [NSPasteboard generalPasteboard];
- [pb declareTypes:[NSArray arrayWithObject:NSStringPboardType] owner:self];
+ [pb declareTypes:@[NSStringPboardType] owner:self];
[pb setString:createSyntax forType:NSStringPboardType];
// Table syntax copied Growl notification
@@ -1951,7 +1952,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
contextInfo:NULL];
} else {
message = NSLocalizedString(@"MySQL said:",@"mysql said message");
- if (statusValues) [statusValues release], statusValues = nil;
+ if (statusValues) SPClear(statusValues);
statusValues = [resultStatuses retain];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setInformativeText:message];
@@ -2028,7 +2029,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
contextInfo:NULL];
} else {
message = NSLocalizedString(@"MySQL said:",@"mysql said message");
- if (statusValues) [statusValues release], statusValues = nil;
+ if (statusValues) SPClear(statusValues);
statusValues = [resultStatuses retain];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setInformativeText:message];
@@ -2105,7 +2106,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
contextInfo:NULL];
} else {
message = NSLocalizedString(@"MySQL said:",@"mysql said message");
- if (statusValues) [statusValues release], statusValues = nil;
+ if (statusValues) SPClear(statusValues);
statusValues = [resultStatuses retain];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setInformativeText:message];
@@ -2181,7 +2182,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
contextInfo:NULL];
} else {
message = NSLocalizedString(@"MySQL said:",@"mysql said message");
- if (statusValues) [statusValues release], statusValues = nil;
+ if (statusValues) SPClear(statusValues);
statusValues = [resultStatuses retain];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setInformativeText:message];
@@ -2257,7 +2258,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
contextInfo:NULL];
} else {
message = NSLocalizedString(@"MySQL said:",@"mysql said message");
- if (statusValues) [statusValues release], statusValues = nil;
+ if (statusValues) SPClear(statusValues);
statusValues = [resultStatuses retain];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setInformativeText:message];
@@ -2313,7 +2314,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
didEndSelector:NULL
contextInfo:NULL];
} else {
- if (statusValues) [statusValues release], statusValues = nil;
+ if (statusValues) SPClear(statusValues);
statusValues = [resultStatuses retain];
NSAlert *alert = [[NSAlert new] autorelease];
[alert setInformativeText:[NSString stringWithFormat:NSLocalizedString(@"Checksums of %@",@"Checksums of %@ message"), what]];
@@ -2330,7 +2331,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
{
NSSavePanel *panel = [NSSavePanel savePanel];
- [panel setAllowedFileTypes:[NSArray arrayWithObject:SPFileExtensionSQL]];
+ [panel setAllowedFileTypes:@[SPFileExtensionSQL]];
[panel setExtensionHidden:NO];
[panel setAllowsOtherFileTypes:YES];
@@ -2361,7 +2362,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// Copy to the clipboard
NSPasteboard *pb = [NSPasteboard generalPasteboard];
- [pb declareTypes:[NSArray arrayWithObject:NSStringPboardType] owner:self];
+ [pb declareTypes:@[NSStringPboardType] owner:self];
[pb setString:createSyntax forType:NSStringPboardType];
// Table syntax copied Growl notification
@@ -2485,7 +2486,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[userManagerInstance beginSheetModalForWindow:parentWindow
completionHandler:^(){
- [userManagerInstance release], userManagerInstance = nil;
+ SPClear(userManagerInstance);
}];
}
@@ -2526,8 +2527,8 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
- (IBAction)openCurrentConnectionInNewWindow:(id)sender
{
- [[NSApp delegate] newWindow:self];
- SPDatabaseDocument *newTableDocument = [[NSApp delegate] frontDocument];
+ [SPAppDelegate newWindow:self];
+ SPDatabaseDocument *newTableDocument = [SPAppDelegate frontDocument];
[newTableDocument setStateFromConnectionFile:[[self fileURL] path]];
}
@@ -2768,6 +2769,17 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
return tablesListInstance;
}
+- (SPCreateDatabaseInfo *)createDatabaseInfo
+{
+ SPCreateDatabaseInfo *dbInfo = [[SPCreateDatabaseInfo alloc] init];
+
+ [dbInfo setDatabaseName:[self database]];
+ [dbInfo setDefaultEncoding:[databaseDataInstance getDatabaseDefaultCharacterSet]];
+ [dbInfo setDefaultCollation:[databaseDataInstance getDatabaseDefaultCollation]];
+
+ return [dbInfo autorelease];
+}
+
#pragma mark -
#pragma mark Notification center methods
@@ -2829,10 +2841,10 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[panel setCanSelectHiddenExtension:YES];
// Save Query...
- if (sender != nil && ([sender tag] == 1006 || [sender tag] == 1008)) {
+ if (sender != nil && ([sender tag] == SPMainMenuFileSaveQuery || [sender tag] == SPMainMenuFileSaveQueryAs)) {
// If Save was invoked, check whether the file was previously opened, and if so save without the panel
- if ([sender tag] == 1006 && [[[self sqlFileURL] path] length]) {
+ if ([sender tag] == SPMainMenuFileSaveQuery && [[[self sqlFileURL] path] length]) {
NSError *error = nil;
NSString *content = [NSString stringWithString:[[[customQueryInstance valueForKeyPath:@"textView"] textStorage] string]];
[content writeToURL:sqlFileURL atomically:YES encoding:sqlFileEncoding error:&error];
@@ -2843,7 +2855,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[panel setAccessoryView:[SPEncodingPopupAccessory encodingAccessory:[prefs integerForKey:SPLastSQLFileEncoding]
includeDefaultEntry:NO encodingPopUp:&encodingPopUp]];
- [panel setAllowedFileTypes:[NSArray arrayWithObjects:SPFileExtensionSQL, nil]];
+ [panel setAllowedFileTypes:@[SPFileExtensionSQL]];
if (![prefs stringForKey:@"lastSqlFileName"]) {
[prefs setObject:@"" forKey:@"lastSqlFileName"];
@@ -2863,11 +2875,11 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// Save As… or Save
}
- else if (sender == nil || [sender tag] == 1005 || [sender tag] == 1004) {
+ else if (sender == nil || [sender tag] == SPMainMenuFileSaveConnection || [sender tag] == SPMainMenuFileSaveConnectionAs) {
// If Save was invoked check for fileURL and Untitled docs and save the spf file without save panel
// otherwise ask for file name
- if (sender != nil && [sender tag] == 1004 && [[[self fileURL] path] length] && ![self isUntitled]) {
+ if (sender != nil && [sender tag] == SPMainMenuFileSaveConnection && [[[self fileURL] path] length] && ![self isUntitled]) {
[self saveDocumentWithFilePath:nil inBackground:YES onlyPreferences:NO contextInfo:nil];
return;
}
@@ -2880,7 +2892,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
}
// Save current session (open connection windows as SPF file)
- [panel setAllowedFileTypes:[NSArray arrayWithObjects:SPFileExtensionDefault, nil]];
+ [panel setAllowedFileTypes:@[SPFileExtensionDefault]];
//Restore accessory view settings if possible
if ([spfDocData objectForKey:@"save_password"]) {
@@ -2918,10 +2930,10 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
contextInfo = sender == nil ? @"saveSPFfileAndClose" : @"saveSPFfile";
}
// Save Session or Save Session As...
- else if (sender == nil || [sender tag] == 1020 || [sender tag] == 1021)
+ else if (sender == nil || [sender tag] == SPMainMenuFileSaveSession || [sender tag] == SPMainMenuFileSaveSessionAs)
{
// Save As Session
- if ([sender tag] == 1020 && [[NSApp delegate] sessionURL]) {
+ if ([sender tag] == SPMainMenuFileSaveSession && [SPAppDelegate sessionURL]) {
[self saveConnectionPanelDidEnd:panel returnCode:1 contextInfo:@"saveAsSession"];
return;
}
@@ -2933,9 +2945,9 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
return;
}
- [panel setAllowedFileTypes:[NSArray arrayWithObjects:SPBundleFileExtension, nil]];
+ [panel setAllowedFileTypes:@[SPBundleFileExtension]];
- NSDictionary *spfSessionData = [[NSApp delegate] spfSessionDocData];
+ NSDictionary *spfSessionData = [SPAppDelegate spfSessionDocData];
// Restore accessory view settings if possible
if ([spfSessionData objectForKey:@"save_password"]) {
@@ -2967,8 +2979,8 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[panel setAccessoryView:saveConnectionAccessory];
// Set file name
- if ([[NSApp delegate] sessionURL])
- filename = [[[[NSApp delegate] sessionURL] absoluteString] lastPathComponent];
+ if ([SPAppDelegate sessionURL])
+ filename = [[[SPAppDelegate sessionURL] absoluteString] lastPathComponent];
else
filename = [NSString stringWithFormat:NSLocalizedString(@"Session",@"Initial filename for 'Save session' file")];
@@ -3042,7 +3054,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[self saveDocumentWithFilePath:fileName inBackground:NO onlyPreferences:NO contextInfo:nil];
// Manually loaded nibs don't have their top-level objects released automatically - do that here.
- [saveConnectionAccessory release];
+ SPClear(saveConnectionAccessory);
if(contextInfo == @"saveSPFfileAndClose")
[self closeAndDisconnect];
@@ -3055,8 +3067,8 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// info.plist will contain the opened structure (windows and tabs for each window). Each connection
// is linked to a saved spf file either in 'Contents' for unTitled ones or already saved spf files.
- if(contextInfo == @"saveAsSession" && [[NSApp delegate] sessionURL])
- fileName = [[[NSApp delegate] sessionURL] path];
+ if(contextInfo == @"saveAsSession" && [SPAppDelegate sessionURL])
+ fileName = [[SPAppDelegate sessionURL] path];
if(!fileName || ![fileName length]) return;
@@ -3072,7 +3084,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
}
}
- [fileManager createDirectoryAtPath:fileName withIntermediateDirectories:TRUE attributes:nil error:&error];
+ [fileManager createDirectoryAtPath:fileName withIntermediateDirectories:YES attributes:nil error:&error];
if(error != nil) {
NSAlert *errorAlert = [NSAlert alertWithError:error];
@@ -3080,7 +3092,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
return;
}
- [fileManager createDirectoryAtPath:[NSString stringWithFormat:@"%@/Contents", fileName] withIntermediateDirectories:TRUE attributes:nil error:&error];
+ [fileManager createDirectoryAtPath:[NSString stringWithFormat:@"%@/Contents", fileName] withIntermediateDirectories:YES attributes:nil error:&error];
if(error != nil) {
NSAlert *errorAlert = [NSAlert alertWithError:error];
@@ -3094,7 +3106,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// retrieve save panel data for passing them to each doc
NSMutableDictionary *spfDocData_temp = [NSMutableDictionary dictionary];
if(contextInfo == @"saveAsSession") {
- [spfDocData_temp addEntriesFromDictionary:[[NSApp delegate] spfSessionDocData]];
+ [spfDocData_temp addEntriesFromDictionary:[SPAppDelegate spfSessionDocData]];
} else {
[spfDocData_temp setObject:[NSNumber numberWithBool:([saveConnectionEncrypt state]==NSOnState) ? YES : NO ] forKey:@"encrypted"];
if([[spfDocData_temp objectForKey:@"encrypted"] boolValue])
@@ -3105,7 +3117,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[spfDocData_temp setObject:[NSNumber numberWithBool:([saveConnectionIncludeQuery state]==NSOnState) ? YES : NO ] forKey:@"save_editor_content"];
// Save the session's accessory view settings
- [[NSApp delegate] setSpfSessionDocData:spfDocData_temp];
+ [SPAppDelegate setSpfSessionDocData:spfDocData_temp];
}
@@ -3114,11 +3126,11 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[info setObject:[NSNumber numberWithBool:[[spfDocData_temp objectForKey:@"save_password"] boolValue]] forKey:@"save_password"];
[info setObject:[NSNumber numberWithBool:[[spfDocData_temp objectForKey:@"include_session"] boolValue]] forKey:@"include_session"];
[info setObject:[NSNumber numberWithBool:[[spfDocData_temp objectForKey:@"save_editor_content"] boolValue]] forKey:@"save_editor_content"];
- [info setObject:[NSNumber numberWithInteger:1] forKey:@"version"];
+ [info setObject:@1 forKey:@"version"];
[info setObject:@"connection bundle" forKey:@"format"];
// Loop through all windows
- for(NSWindow *window in [[NSApp delegate] orderedDatabaseConnectionWindows]) {
+ for(NSWindow *window in [SPAppDelegate orderedDatabaseConnectionWindows]) {
// First window is always the currently key window
@@ -3142,12 +3154,12 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// save it as temporary spf file inside the bundle with save panel options spfDocData_temp
[doc saveDocumentWithFilePath:filePath inBackground:NO onlyPreferences:NO contextInfo:[NSDictionary dictionaryWithDictionary:spfDocData_temp]];
[doc setIsSavedInBundle:YES];
- [tabData setObject:[NSNumber numberWithBool:NO] forKey:@"isAbsolutePath"];
+ [tabData setObject:@NO forKey:@"isAbsolutePath"];
[tabData setObject:newName forKey:@"path"];
} else {
// save it to the original location and take the file's spfDocData
[doc saveDocumentWithFilePath:[[doc fileURL] path] inBackground:YES onlyPreferences:NO contextInfo:nil];
- [tabData setObject:[NSNumber numberWithBool:YES] forKey:@"isAbsolutePath"];
+ [tabData setObject:@YES forKey:@"isAbsolutePath"];
[tabData setObject:[[doc fileURL] path] forKey:@"path"];
}
[tabs addObject:tabData];
@@ -3192,7 +3204,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
return;
}
- [[NSApp delegate] setSessionURL:fileName];
+ [SPAppDelegate setSessionURL:fileName];
// Register spfs bundle in Recent Files
[[NSDocumentController sharedDocumentController] noteNewRecentDocumentURL:[NSURL fileURLWithPath:fileName]];
@@ -3219,7 +3231,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[spfDocData_temp setObject:[NSNumber numberWithBool:([saveConnectionAutoConnect state]==NSOnState) ? YES : NO ] forKey:@"auto_connect"];
[spfDocData_temp setObject:[NSNumber numberWithBool:([saveConnectionSavePassword state]==NSOnState) ? YES : NO ] forKey:@"save_password"];
[spfDocData_temp setObject:[NSNumber numberWithBool:([saveConnectionIncludeData state]==NSOnState) ? YES : NO ] forKey:@"include_session"];
- [spfDocData_temp setObject:[NSNumber numberWithBool:NO] forKey:@"save_editor_content"];
+ [spfDocData_temp setObject:@NO forKey:@"save_editor_content"];
if([[[[customQueryInstance valueForKeyPath:@"textView"] textStorage] string] length])
[spfDocData_temp setObject:[NSNumber numberWithBool:([saveConnectionIncludeQuery state]==NSOnState) ? YES : NO ] forKey:@"save_editor_content"];
@@ -3323,7 +3335,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
NSMutableDictionary *spfData = [NSMutableDictionary dictionary];
// Add basic details
- [spfStructure setObject:[NSNumber numberWithInteger:1] forKey:@"version"];
+ [spfStructure setObject:@1 forKey:@"version"];
[spfStructure setObject:@"connection" forKey:@"format"];
[spfStructure setObject:@"mysql" forKey:@"rdbms_type"];
if([self mySQLVersion])
@@ -3334,30 +3346,30 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// Set up the document details to store
NSMutableDictionary *stateDetailsToSave = [NSMutableDictionary dictionaryWithObjectsAndKeys:
- [NSNumber numberWithBool:YES], @"connection",
- [NSNumber numberWithBool:YES], @"history",
+ @YES, @"connection",
+ @YES, @"history",
nil];
// Include session data like selected table, view etc. ?
if ([[spfDocData_temp objectForKey:@"include_session"] boolValue])
- [stateDetailsToSave setObject:[NSNumber numberWithBool:YES] forKey:@"session"];
+ [stateDetailsToSave setObject:@YES forKey:@"session"];
// Include the query editor contents if asked to
if ([[spfDocData_temp objectForKey:@"save_editor_content"] boolValue]) {
- [stateDetailsToSave setObject:[NSNumber numberWithBool:YES] forKey:@"query"];
- [stateDetailsToSave setObject:[NSNumber numberWithBool:YES] forKey:@"enablecompression"];
+ [stateDetailsToSave setObject:@YES forKey:@"query"];
+ [stateDetailsToSave setObject:@YES forKey:@"enablecompression"];
}
// Add passwords if asked to
if ([[spfDocData_temp objectForKey:@"save_password"] boolValue])
- [stateDetailsToSave setObject:[NSNumber numberWithBool:YES] forKey:@"password"];
+ [stateDetailsToSave setObject:@YES forKey:@"password"];
// Retrieve details and add to the appropriate dictionaries
NSMutableDictionary *stateDetails = [NSMutableDictionary dictionaryWithDictionary:[self stateIncludingDetails:stateDetailsToSave]];
[spfStructure setObject:[stateDetails objectForKey:SPQueryFavorites] forKey:SPQueryFavorites];
[spfStructure setObject:[stateDetails objectForKey:SPQueryHistory] forKey:SPQueryHistory];
[spfStructure setObject:[stateDetails objectForKey:SPContentFilters] forKey:SPContentFilters];
- [stateDetails removeObjectsForKeys:[NSArray arrayWithObjects:SPQueryFavorites, SPQueryHistory, SPContentFilters, nil]];
+ [stateDetails removeObjectsForKeys:@[SPQueryFavorites, SPQueryHistory, SPContentFilters]];
[spfData addEntriesFromDictionary:stateDetails];
// Determine whether to use encryption when adding the data
@@ -3443,23 +3455,23 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[[parentWindow windowController] addNewConnection:self];
// Get the current state
- NSDictionary *allStateDetails = [NSDictionary dictionaryWithObjectsAndKeys:
- [NSNumber numberWithBool:YES], @"connection",
- [NSNumber numberWithBool:YES], @"history",
- [NSNumber numberWithBool:YES], @"session",
- [NSNumber numberWithBool:YES], @"query",
- [NSNumber numberWithBool:YES], @"password",
- nil];
+ NSDictionary *allStateDetails = @{
+ @"connection" : @YES,
+ @"history" : @YES,
+ @"session" : @YES,
+ @"query" : @YES,
+ @"password" : @YES
+ };
NSMutableDictionary *currentState = [NSMutableDictionary dictionaryWithDictionary:[self stateIncludingDetails:allStateDetails]];
// Ensure it's set to autoconnect, and clear the table
- [currentState setObject:[NSNumber numberWithBool:YES] forKey:@"auto_connect"];
+ [currentState setObject:@YES forKey:@"auto_connect"];
NSMutableDictionary *sessionDict = [NSMutableDictionary dictionaryWithDictionary:[currentState objectForKey:@"session"]];
[sessionDict removeObjectForKey:@"table"];
[currentState setObject:sessionDict forKey:@"session"];
// Set the connection on the new tab
- [[[NSApp delegate] frontDocument] setState:currentState];
+ [[SPAppDelegate frontDocument] setState:currentState];
}
/**
@@ -3589,7 +3601,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
}
if (action == @selector(importFromClipboard:)){
- return [self database] && [[NSPasteboard generalPasteboard] availableTypeFromArray:[NSArray arrayWithObjects:NSStringPboardType, nil]];
+ return [self database] && [[NSPasteboard generalPasteboard] availableTypeFromArray:@[NSStringPboardType]];
}
// Change "Save Query/Queries" menu item title dynamically
@@ -4046,7 +4058,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
*/
- (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar*)toolbar
{
- return [NSArray arrayWithObjects:
+ return @[
SPMainToolbarDatabaseSelection,
SPMainToolbarHistoryNavigation,
SPMainToolbarShowConsole,
@@ -4061,8 +4073,8 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
NSToolbarCustomizeToolbarItemIdentifier,
NSToolbarFlexibleSpaceItemIdentifier,
NSToolbarSpaceItemIdentifier,
- NSToolbarSeparatorItemIdentifier,
- nil];
+ NSToolbarSeparatorItemIdentifier
+ ];
}
/**
@@ -4070,7 +4082,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
*/
- (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar*)toolbar
{
- return [NSArray arrayWithObjects:
+ return @[
SPMainToolbarDatabaseSelection,
SPMainToolbarTableStructure,
SPMainToolbarTableContent,
@@ -4081,8 +4093,8 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
NSToolbarFlexibleSpaceItemIdentifier,
SPMainToolbarHistoryNavigation,
SPMainToolbarUserManager,
- SPMainToolbarShowConsole,
- nil];
+ SPMainToolbarShowConsole
+ ];
}
/**
@@ -4090,14 +4102,14 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
*/
- (NSArray *)toolbarSelectableItemIdentifiers:(NSToolbar *)toolbar
{
- return [NSArray arrayWithObjects:
+ return @[
SPMainToolbarTableStructure,
SPMainToolbarTableContent,
SPMainToolbarCustomQuery,
SPMainToolbarTableInfo,
SPMainToolbarTableRelations,
- SPMainToolbarTableTriggers,
- nil];
+ SPMainToolbarTableTriggers
+ ];
}
@@ -4355,7 +4367,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
*/
- (void)setFileURL:(NSURL *)theURL
{
- if (spfFileURL) [spfFileURL release], spfFileURL = nil;
+ if (spfFileURL) SPClear(spfFileURL);
spfFileURL = [theURL retain];
if ([parentWindowController selectedTableDocument] == self) {
if (spfFileURL && [spfFileURL isFileURL])
@@ -4440,9 +4452,9 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
{
BOOL returnConnection = [[detailsToReturn objectForKey:@"connection"] boolValue];
BOOL includePasswords = [[detailsToReturn objectForKey:@"password"] boolValue];
- BOOL returnSession = [[detailsToReturn objectForKey:@"session"] boolValue];
- BOOL returnHistory = [[detailsToReturn objectForKey:@"history"] boolValue];
- BOOL returnQuery = [[detailsToReturn objectForKey:@"query"] boolValue];
+ BOOL returnSession = [[detailsToReturn objectForKey:@"session"] boolValue];
+ BOOL returnHistory = [[detailsToReturn objectForKey:@"history"] boolValue];
+ BOOL returnQuery = [[detailsToReturn objectForKey:@"query"] boolValue];
if (!returnConnection && !returnSession && !returnHistory && !returnQuery) return nil;
NSMutableDictionary *stateDetails = [NSMutableDictionary dictionary];
@@ -4481,7 +4493,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[connection setObject:[self name] forKey:@"name"];
[connection setObject:[self host] forKey:@"host"];
[connection setObject:[self user] forKey:@"user"];
- if([connectionController colorIndex])
+ if([connectionController colorIndex] >= 0)
[connection setObject:[NSNumber numberWithInteger:[connectionController colorIndex]] forKey:SPFavoriteColorIndexKey];
if([connectionController port] && [[connectionController port] length])
[connection setObject:[NSNumber numberWithInteger:[[connectionController port] integerValue]] forKey:@"port"];
@@ -4565,8 +4577,9 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[sessionState setObject:[NSNumber numberWithBool:[tableContentInstance sortColumnIsAscending]] forKey:@"contentSortColIsAsc"];
[sessionState setObject:[NSNumber numberWithInteger:[tableContentInstance pageNumber]] forKey:@"contentPageNumber"];
[sessionState setObject:NSStringFromRect([tableContentInstance viewport]) forKey:@"contentViewport"];
- if ([tableContentInstance filterSettings])
- [sessionState setObject:[tableContentInstance filterSettings] forKey:@"contentFilter"];
+ NSDictionary *filterSettings = [tableContentInstance filterSettings];
+ if (filterSettings)
+ [sessionState setObject:filterSettings forKey:@"contentFilter"];
NSDictionary *contentSelectedRows = [tableContentInstance selectionDetailsAllowingIndexSelection:YES];
if (contentSelectedRows) {
@@ -4807,11 +4820,11 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// Ask for a password if SPF file passwords were encrypted, via a sheet
if ([spf objectForKey:@"encrypted"] && [[spf valueForKey:@"encrypted"] boolValue]) {
- if([self isSaveInBundle] && [[[NSApp delegate] spfSessionDocData] objectForKey:@"e_string"]) {
- encryptpw = [[[NSApp delegate] spfSessionDocData] objectForKey:@"e_string"];
+ if([self isSaveInBundle] && [[SPAppDelegate spfSessionDocData] objectForKey:@"e_string"]) {
+ encryptpw = [[SPAppDelegate spfSessionDocData] objectForKey:@"e_string"];
} else {
[inputTextWindowHeader setStringValue:NSLocalizedString(@"Connection file is encrypted", @"Connection file is encrypted")];
- [inputTextWindowMessage setStringValue:[NSString stringWithFormat:NSLocalizedString(@"Please enter the password for ‘%@’:", @"Please enter the password"), ([self isSaveInBundle]) ? [[[[NSApp delegate] sessionURL] absoluteString] lastPathComponent] : [path lastPathComponent]]];
+ [inputTextWindowMessage setStringValue:[NSString stringWithFormat:NSLocalizedString(@"Please enter the password for ‘%@’:", @"Please enter the password"), ([self isSaveInBundle]) ? [[[SPAppDelegate sessionURL] absoluteString] lastPathComponent] : [path lastPathComponent]]];
[inputTextWindowSecureTextField setStringValue:@""];
[inputTextWindowSecureTextField selectText:nil];
@@ -4843,9 +4856,9 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
encryptpw = [inputTextWindowSecureTextField stringValue];
if ([self isSaveInBundle]) {
NSMutableDictionary *spfSessionData = [NSMutableDictionary dictionary];
- [spfSessionData addEntriesFromDictionary:[[NSApp delegate] spfSessionDocData]];
+ [spfSessionData addEntriesFromDictionary:[SPAppDelegate spfSessionDocData]];
[spfSessionData setObject:encryptpw forKey:@"e_string"];
- [[NSApp delegate] setSpfSessionDocData:spfSessionData];
+ [SPAppDelegate setSpfSessionDocData:spfSessionData];
}
} else {
[self closeAndDisconnect];
@@ -4917,16 +4930,16 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[data setObject:[spf objectForKey:SPContentFilters] forKey:SPContentFilters];
// Ensure the encryption status is stored in the spfDocData store for future saves
- [spfDocData setObject:[NSNumber numberWithBool:NO] forKey:@"encrypted"];
+ [spfDocData setObject:@NO forKey:@"encrypted"];
if (encryptpw != nil) {
- [spfDocData setObject:[NSNumber numberWithBool:YES] forKey:@"encrypted"];
+ [spfDocData setObject:@YES forKey:@"encrypted"];
[spfDocData setObject:encryptpw forKey:@"e_string"];
}
encryptpw = nil;
// If session data is available, ensure it is marked for save
if ([data objectForKey:@"session"]) {
- [spfDocData setObject:[NSNumber numberWithBool:YES] forKey:@"include_session"];
+ [spfDocData setObject:@YES forKey:@"include_session"];
}
if (![self isSaveInBundle]) {
@@ -4935,11 +4948,11 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[spfDocData setObject:[NSNumber numberWithBool:([[data objectForKey:@"connection"] objectForKey:@"password"]) ? YES : NO] forKey:@"save_password"];
- [spfDocData setObject:[NSNumber numberWithBool:NO] forKey:@"auto_connect"];
+ [spfDocData setObject:@NO forKey:@"auto_connect"];
if([spf objectForKey:@"auto_connect"] && [[spf valueForKey:@"auto_connect"] boolValue]) {
- [spfDocData setObject:[NSNumber numberWithBool:YES] forKey:@"auto_connect"];
- [data setObject:[NSNumber numberWithBool:YES] forKey:@"auto_connect"];
+ [spfDocData setObject:@YES forKey:@"auto_connect"];
+ [data setObject:@YES forKey:@"auto_connect"];
}
// Set the state dictionary, triggering an autoconnect if appropriate
@@ -5014,8 +5027,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[self updateWindowTitle:self];
// dealloc spfSession data
- [spfSession release];
- spfSession = nil;
+ SPClear(spfSession);
// End the task
[self endTask];
@@ -5264,7 +5276,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
NSString *query = [NSString stringWithContentsOfFile:queryFileName encoding:NSUTF8StringEncoding error:&inError];
[fm removeItemAtPath:queryFileName error:nil];
if(inError == nil && query && [query length]) {
- [customQueryInstance performQueries:[NSArray arrayWithObject:query] withCallback:NULL];
+ [customQueryInstance performQueries:@[query] withCallback:NULL];
}
}
return;
@@ -5312,9 +5324,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
}
NSInteger itemType = SPTableTypeNone;
- NSString *itemTypeStr = @"TABLE";
NSUInteger i;
- NSInteger queryCol = 1;
// Loop through the unfiltered tables/views to find the desired item
for (i = 0; i < [availableItems count]; i++) {
@@ -5327,19 +5337,26 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// If no match found, continue
if (itemType == SPTableTypeNone) continue;
+ NSString *itemTypeStr;
+ NSInteger queryCol;
+
switch(itemType) {
case SPTableTypeTable:
case SPTableTypeView:
- itemTypeStr = @"TABLE";
- break;
+ itemTypeStr = @"TABLE";
+ queryCol = 1;
+ break;
case SPTableTypeProc:
- itemTypeStr = @"PROCEDURE";
- queryCol = 2;
- break;
+ itemTypeStr = @"PROCEDURE";
+ queryCol = 2;
+ break;
case SPTableTypeFunc:
- itemTypeStr = @"FUNCTION";
- queryCol = 2;
- break;
+ itemTypeStr = @"FUNCTION";
+ queryCol = 2;
+ break;
+ default:
+ NSLog(@"%s: Unhandled SPTableType=%ld for item=%@ (skipping)", __func__, itemType, item);
+ continue;
}
// Ensure that queries are made in UTF8
@@ -5379,7 +5396,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
return;
}
if(doSyntaxHighlighting) {
- [result appendFormat:@"%@<br>", [[NSApp delegate] doSQLSyntaxHighlightForString:[syntaxString createViewSyntaxPrettifier] cssLike:doSyntaxHighlightingViaCSS]];
+ [result appendFormat:@"%@<br>", [SPAppDelegate doSQLSyntaxHighlightForString:[syntaxString createViewSyntaxPrettifier] cssLike:doSyntaxHighlightingViaCSS]];
} else {
[result appendFormat:@"%@\n", [syntaxString createViewSyntaxPrettifier]];
}
@@ -5591,13 +5608,13 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[runningActivitiesArray addObject:commandDict];
[[NSNotificationCenter defaultCenter] postNotificationOnMainThreadWithName:SPActivitiesUpdateNotification object:self];
- if([runningActivitiesArray count] || [[[NSApp delegate] runningActivities] count])
- [self performSelector:@selector(setActivityPaneHidden:) withObject:[NSNumber numberWithInteger:0] afterDelay:1.0];
+ if([runningActivitiesArray count] || [[SPAppDelegate runningActivities] count])
+ [self performSelector:@selector(setActivityPaneHidden:) withObject:@0 afterDelay:1.0];
else {
[NSObject cancelPreviousPerformRequestsWithTarget:self
selector:@selector(setActivityPaneHidden:)
- object:[NSNumber numberWithInteger:0]];
- [self setActivityPaneHidden:[NSNumber numberWithInteger:1]];
+ object:@0];
+ [self setActivityPaneHidden:@1];
}
}
@@ -5612,13 +5629,13 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
}
}
- if([runningActivitiesArray count] || [[[NSApp delegate] runningActivities] count])
- [self performSelector:@selector(setActivityPaneHidden:) withObject:[NSNumber numberWithInteger:0] afterDelay:1.0];
+ if([runningActivitiesArray count] || [[SPAppDelegate runningActivities] count])
+ [self performSelector:@selector(setActivityPaneHidden:) withObject:@0 afterDelay:1.0];
else {
[NSObject cancelPreviousPerformRequestsWithTarget:self
selector:@selector(setActivityPaneHidden:)
- object:[NSNumber numberWithInteger:0]];
- [self setActivityPaneHidden:[NSNumber numberWithInteger:1]];
+ object:@0];
+ [self setActivityPaneHidden:@1];
}
[[NSNotificationCenter defaultCenter] postNotificationOnMainThreadWithName:SPActivitiesUpdateNotification object:self];
@@ -5643,7 +5660,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
- (NSDictionary*)shellVariables
{
- if(!_isConnected) return [NSDictionary dictionary];
+ if(!_isConnected) return @{};
NSMutableDictionary *env = [NSMutableDictionary dictionary];
@@ -5865,9 +5882,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
{
NSPasteboard *pb = [NSPasteboard generalPasteboard];
- [pb declareTypes:[NSArray arrayWithObjects: NSTabularTextPboardType,
- NSStringPboardType, nil]
- owner:nil];
+ [pb declareTypes:@[NSTabularTextPboardType, NSStringPboardType] owner:nil];
[pb setString:tmp forType:NSStringPboardType];
[pb setString:tmp forType:NSTabularTextPboardType];
@@ -5900,7 +5915,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
BOOL copyWithContent = [copyDatabaseDataButton state] == NSOnState;
- if ([dbActionCopy copyDatabaseFrom:[self database] to:[databaseCopyNameField stringValue] withContent:copyWithContent]) {
+ if ([dbActionCopy copyDatabaseFrom:[self createDatabaseInfo] to:[databaseCopyNameField stringValue] withContent:copyWithContent]) {
[self selectDatabase:[databaseCopyNameField stringValue] item:nil];
}
else {
@@ -5931,7 +5946,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[dbActionRename setConnection:[self getConnection]];
[dbActionRename setMessageWindow:parentWindow];
- if ([dbActionRename renameDatabaseFrom:[self database] to:newDatabaseName]) {
+ if ([dbActionRename renameDatabaseFrom:[self createDatabaseInfo] to:newDatabaseName]) {
[self setDatabases:self];
[self selectDatabase:newDatabaseName item:nil];
}
@@ -5971,25 +5986,16 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// As we're amending identifiers, ensure UTF8
if (![[mySQLConnection encoding] isEqualToString:@"utf8"]) [mySQLConnection setEncoding:@"utf8"];
- NSString *createStatement = [NSString stringWithFormat:@"CREATE DATABASE %@", [[databaseNameField stringValue] backtickQuotedString]];
+ SPDatabaseAction *dbAction = [[SPDatabaseAction alloc] init];
+ [dbAction setConnection:mySQLConnection];
+ BOOL res = [dbAction createDatabase:[databaseNameField stringValue]
+ withEncoding:[addDatabaseCharsetHelper selectedCharset]
+ collation:[addDatabaseCharsetHelper selectedCollation]];
+ [dbAction release];
- // If there is an encoding selected other than the default we must specify it in CREATE DATABASE statement
- NSString *encodingName = [addDatabaseCharsetHelper selectedCharset];
- if (encodingName)
- createStatement = [NSString stringWithFormat:@"%@ DEFAULT CHARACTER SET %@", createStatement, [encodingName backtickQuotedString]];
-
- // If there is a collation selected other than the default we must specify it in the CREATE DATABASE statement
- NSString *collationName = [addDatabaseCharsetHelper selectedCollation];
- if (collationName)
- createStatement = [NSString stringWithFormat:@"%@ DEFAULT COLLATE %@", createStatement, [collationName backtickQuotedString]];
-
- // Create the database
- [mySQLConnection queryString:createStatement];
-
- if ([mySQLConnection queryErrored]) {
+ if (!res) {
// An error occurred
SPBeginAlertSheet(NSLocalizedString(@"Error", @"error"), NSLocalizedString(@"OK", @"OK button"), nil, nil, parentWindow, self, nil, nil, [NSString stringWithFormat:NSLocalizedString(@"Couldn't create database.\nMySQL said: %@", @"message of panel when creation of db failed"), [mySQLConnection lastErrorMessage]]);
-
return;
}
@@ -6064,7 +6070,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
// that's why we can run this on main thread
[databaseStructureRetrieval queryDbStructureWithUserInfo:nil];
- if (selectedDatabase) [selectedDatabase release], selectedDatabase = nil;
+ if (selectedDatabase) SPClear(selectedDatabase);
[self setDatabases:self];
@@ -6134,7 +6140,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
#ifndef SP_CODA /* chooseDatabaseButton selectItemWithTitle: */
[[chooseDatabaseButton onMainThread] selectItemWithTitle:targetDatabaseName];
#endif
- if (selectedDatabase) [selectedDatabase release], selectedDatabase = nil;
+ if (selectedDatabase) SPClear(selectedDatabase);
selectedDatabase = [[NSString alloc] initWithString:targetDatabaseName];
[databaseDataInstance resetAllData];
@@ -6198,7 +6204,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
#ifndef SP_CODA
- (void)_processDatabaseChangedBundleTriggerActions
{
- NSArray *triggeredCommands = [[NSApp delegate] bundleCommandsForTrigger:SPBundleTriggerActionDatabaseChanged];
+ NSArray *triggeredCommands = [SPAppDelegate bundleCommandsForTrigger:SPBundleTriggerActionDatabaseChanged];
for (NSString* cmdPath in triggeredCommands)
{
@@ -6229,7 +6235,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
}
if(!stopTrigger) {
if([[data objectAtIndex:1] isEqualToString:SPBundleScopeGeneral]) {
- [[[NSApp delegate] onMainThread] executeBundleItemForApp:aMenuItem];
+ [[SPAppDelegate onMainThread] executeBundleItemForApp:aMenuItem];
}
else if([[data objectAtIndex:1] isEqualToString:SPBundleScopeDataTable]) {
if ([[[[[NSApp mainWindow] firstResponder] class] description] isEqualToString:@"SPCopyTable"]) {
@@ -6261,6 +6267,7 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
[prefs removeObserver:tableSourceInstance forKeyPath:SPUseMonospacedFonts];
[prefs removeObserver:[SPQueryController sharedQueryController] forKeyPath:SPUseMonospacedFonts];
[prefs removeObserver:tableContentInstance forKeyPath:SPGlobalResultTableFont];
+ [prefs removeObserver:tableContentInstance forKeyPath:SPDisplayBinaryDataAsHex];
[prefs removeObserver:[SPQueryController sharedQueryController] forKeyPath:SPConsoleEnableLogging];
[prefs removeObserver:self forKeyPath:SPConsoleEnableLogging];
@@ -6280,59 +6287,59 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
#ifndef SP_CODA /* release nib objects */
for (id retainedObject in nibObjectsToRelease) [retainedObject release];
- [nibObjectsToRelease release];
+ SPClear(nibObjectsToRelease);
#endif
// Tell listeners that this database document is being closed - fixes retain cycles and allows cleanup
[[NSNotificationCenter defaultCenter] postNotificationName:SPDocumentWillCloseNotification object:self];
- [databaseStructureRetrieval release];
+ SPClear(databaseStructureRetrieval);
- [allDatabases release];
- [allSystemDatabases release];
- [gotoDatabaseController release];
+ SPClear(allDatabases);
+ SPClear(allSystemDatabases);
+ SPClear(gotoDatabaseController);
#ifndef SP_CODA /* dealloc ivars */
- [undoManager release];
- [printWebView release];
+ SPClear(undoManager);
+ SPClear(printWebView);
#endif
- [selectedDatabaseEncoding release];
+ SPClear(selectedDatabaseEncoding);
#ifndef SP_CODA
[taskProgressWindow close];
#endif
- if (selectedTableName) [selectedTableName release];
- if (connectionController) [connectionController release];
+ if (selectedTableName) SPClear(selectedTableName);
+ if (connectionController) SPClear(connectionController);
#ifndef SP_CODA /* dealloc ivars */
- if (processListController) [processListController release];
- if (serverVariablesController) [serverVariablesController release];
+ if (processListController) SPClear(processListController);
+ if (serverVariablesController) SPClear(serverVariablesController);
#endif
- if (mySQLConnection) [mySQLConnection release], mySQLConnection = nil;
- if (selectedDatabase) [selectedDatabase release];
- if (mySQLVersion) [mySQLVersion release];
+ if (mySQLConnection) SPClear(mySQLConnection);
+ if (selectedDatabase) SPClear(selectedDatabase);
+ if (mySQLVersion) SPClear(mySQLVersion);
#ifndef SP_CODA
- if (taskDrawTimer) [taskDrawTimer invalidate], [taskDrawTimer release];
- if (taskFadeInStartDate) [taskFadeInStartDate release];
+ if (taskDrawTimer) [taskDrawTimer invalidate], SPClear(taskDrawTimer);
+ if (taskFadeInStartDate) SPClear(taskFadeInStartDate);
#endif
- if (queryEditorInitString) [queryEditorInitString release];
+ if (queryEditorInitString) SPClear(queryEditorInitString);
#ifndef SP_CODA
- if (sqlFileURL) [sqlFileURL release];
- if (spfFileURL) [spfFileURL release];
- if (spfPreferences) [spfPreferences release];
- if (spfSession) [spfSession release];
- if (spfDocData) [spfDocData release];
+ if (sqlFileURL) SPClear(sqlFileURL);
+ if (spfFileURL) SPClear(spfFileURL);
+ if (spfPreferences) SPClear(spfPreferences);
+ if (spfSession) SPClear(spfSession);
+ if (spfDocData) SPClear(spfDocData);
#endif
- if (keyChainID) [keyChainID release];
+ if (keyChainID) SPClear(keyChainID);
#ifndef SP_CODA
- if (mainToolbar) [mainToolbar release];
+ if (mainToolbar) SPClear(mainToolbar);
#endif
- if (titleAccessoryView) [titleAccessoryView release];
+ if (titleAccessoryView) SPClear(titleAccessoryView);
#ifndef SP_CODA
- if (taskProgressWindow) [taskProgressWindow release];
+ if (taskProgressWindow) SPClear(taskProgressWindow);
#endif
- if (serverSupport) [serverSupport release];
+ if (serverSupport) SPClear(serverSupport);
#ifndef SP_CODA /* dealloc ivars */
- if (processID) [processID release];
- if (runningActivitiesArray) [runningActivitiesArray release];
+ if (processID) SPClear(processID);
+ if (runningActivitiesArray) SPClear(runningActivitiesArray);
#endif
#ifdef SP_CODA
@@ -6340,8 +6347,8 @@ static NSString *SPAlterDatabaseAction = @"SPAlterDatabase";
if (customQueryInstance) [customQueryInstance release];
#endif
- if (alterDatabaseCharsetHelper) [alterDatabaseCharsetHelper release];
- if (addDatabaseCharsetHelper) [addDatabaseCharsetHelper release];
+ if (alterDatabaseCharsetHelper) SPClear(alterDatabaseCharsetHelper);
+ if (addDatabaseCharsetHelper) SPClear(addDatabaseCharsetHelper);
[super dealloc];
}
diff --git a/Source/SPDatabaseRename.h b/Source/SPDatabaseRename.h
index 2f9cb4db..becf460e 100644
--- a/Source/SPDatabaseRename.h
+++ b/Source/SPDatabaseRename.h
@@ -38,10 +38,10 @@
/**
* This method renames an existing database.
*
- * @param NSString sourceDatabaseName the name of the source database
- * @param NSString targetDatabaseName the name of the target database
- * @result BOOL success
+ * @param sourceDatabase information tuple about the source database
+ * @param targetDatabase the name of the target database
+ * @result success
*/
-- (BOOL)renameDatabaseFrom:(NSString *)sourceDatabase to:(NSString *)targetDatabase;
+- (BOOL)renameDatabaseFrom:(SPCreateDatabaseInfo *)sourceDatabase to:(NSString *)targetDatabase;
@end
diff --git a/Source/SPDatabaseRename.m b/Source/SPDatabaseRename.m
index b07f513d..04f71182 100644
--- a/Source/SPDatabaseRename.m
+++ b/Source/SPDatabaseRename.m
@@ -37,7 +37,6 @@
@interface SPDatabaseRename ()
-- (BOOL)_createDatabase:(NSString *)database;
- (BOOL)_dropDatabase:(NSString *)database;
- (void)_moveTables:(NSArray *)tables fromDatabase:(NSString *)sourceDatabase toDatabase:(NSString *)targetDatabase;
@@ -47,33 +46,32 @@
@implementation SPDatabaseRename
-- (BOOL)renameDatabaseFrom:(NSString *)sourceDatabase to:(NSString *)targetDatabase
+- (BOOL)renameDatabaseFrom:(SPCreateDatabaseInfo *)sourceDatabase to:(NSString *)targetDatabase
{
- NSArray *tables = nil;
- NSArray *views = nil;
-
// Check, whether the source database exists and the target database doesn't
- BOOL sourceExists = [[connection databases] containsObject:sourceDatabase];
+ BOOL sourceExists = [[connection databases] containsObject:[sourceDatabase databaseName]];
BOOL targetExists = [[connection databases] containsObject:targetDatabase];
- if (sourceExists && !targetExists) {
- tables = [tablesList allTableNames];
- views = [tablesList allViewNames];
- }
- else {
- return NO;
- }
-
- BOOL success = [self _createDatabase:targetDatabase];
+ if (!sourceExists || targetExists) return NO;
+
+ NSArray *tables = [tablesList allTableNames];
+ NSArray *views = [tablesList allViewNames];
- [self _moveTables:tables fromDatabase:sourceDatabase toDatabase:targetDatabase];
+ BOOL success = [self createDatabase:targetDatabase
+ withEncoding:[sourceDatabase defaultEncoding]
+ collation:[sourceDatabase defaultCollation]];
- tables = [connection tablesFromDatabase:sourceDatabase];
-
+ [self _moveTables:tables fromDatabase:[sourceDatabase databaseName] toDatabase:targetDatabase];
+
+#warning Section disabled because it might destroy data (views, functions, events, ...)
+/*
+ tables = [connection tablesFromDatabase:[sourceDatabase databaseName]];
+
if ([tables count] == 0) {
- [self _dropDatabase:sourceDatabase];
- }
-
+ [self _dropDatabase:[sourceDatabase databaseName]];
+ }
+*/
+
return success;
}
@@ -81,19 +79,6 @@
#pragma mark Private API
/**
- * This method creates a new database.
- *
- * @param NSString newDatabaseName name of the new database to be created
- * @return BOOL YES on success, otherwise NO
- */
-- (BOOL)_createDatabase:(NSString *)database
-{
- [connection queryString:[NSString stringWithFormat:@"CREATE DATABASE %@", [database backtickQuotedString]]];
-
- return ![connection queryErrored];
-}
-
-/**
* This method drops a database.
*
* @param NSString databaseName name of the database to drop
diff --git a/Source/SPDatabaseStructure.m b/Source/SPDatabaseStructure.m
index 70d0aee5..2eab3562 100644
--- a/Source/SPDatabaseStructure.m
+++ b/Source/SPDatabaseStructure.m
@@ -567,15 +567,15 @@
[[NSNotificationCenter defaultCenter] removeObserver:self];
[self destroy:nil];
- [structureRetrievalThreads release];
+ SPClear(structureRetrievalThreads);
pthread_mutex_destroy(&threadManagementLock);
pthread_mutex_destroy(&dataLock);
pthread_mutex_destroy(&connectionCheckLock);
- if (mySQLConnection) [mySQLConnection release], mySQLConnection = nil;
- if (structure) [structure release], structure = nil;
- if (allKeysofDbStructure) [allKeysofDbStructure release], allKeysofDbStructure = nil;
+ if (mySQLConnection) SPClear(mySQLConnection);
+ if (structure) SPClear(structure);
+ if (allKeysofDbStructure) SPClear(allKeysofDbStructure);
[super dealloc];
}
@@ -630,8 +630,7 @@
}
pthread_mutex_unlock(&threadManagementLock);
- [mySQLConnection release];
- mySQLConnection = nil;
+ SPClear(mySQLConnection);
}
// Create a copy of the supplied connection
diff --git a/Source/SPDatabaseViewController.m b/Source/SPDatabaseViewController.m
index c1823661..ea2186cc 100644
--- a/Source/SPDatabaseViewController.m
+++ b/Source/SPDatabaseViewController.m
@@ -116,16 +116,17 @@
#pragma mark -
#pragma mark Tab view control and delegate methods
+//WARNING: Might be called from code in background threads
- (IBAction)viewStructure:(id)sender
{
// Cancel the selection if currently editing a view and unable to save
if (![self couldCommitCurrentViewActions]) {
- [mainToolbar setSelectedItemIdentifier:*SPViewModeToMainToolbarMap[[prefs integerForKey:SPLastViewMode]]];
+ [[mainToolbar onMainThread] setSelectedItemIdentifier:*SPViewModeToMainToolbarMap[[prefs integerForKey:SPLastViewMode]]];
return;
}
- [tableTabView selectTabViewItemAtIndex:0];
- [mainToolbar setSelectedItemIdentifier:SPMainToolbarTableStructure];
+ [[tableTabView onMainThread] selectTabViewItemAtIndex:0];
+ [[mainToolbar onMainThread] setSelectedItemIdentifier:SPMainToolbarTableStructure];
[spHistoryControllerInstance updateHistoryEntries];
[prefs setInteger:SPStructureViewMode forKey:SPLastViewMode];
@@ -332,7 +333,7 @@
if (!aTable) {
// Update the selected table name and type
- if (selectedTableName) [selectedTableName release], selectedTableName = nil;
+ if (selectedTableName) SPClear(selectedTableName);
selectedTableType = SPTableTypeNone;
@@ -589,7 +590,7 @@
[self endTask];
#ifndef SP_CODA /* triggered commands */
- NSArray *triggeredCommands = [[NSApp delegate] bundleCommandsForTrigger:SPBundleTriggerActionTableChanged];
+ NSArray *triggeredCommands = [SPAppDelegate bundleCommandsForTrigger:SPBundleTriggerActionTableChanged];
for(NSString* cmdPath in triggeredCommands)
{
@@ -615,7 +616,7 @@
}
if(!stopTrigger) {
if([[data objectAtIndex:1] isEqualToString:SPBundleScopeGeneral]) {
- [[[NSApp delegate] onMainThread] executeBundleItemForApp:aMenuItem];
+ [[SPAppDelegate onMainThread] executeBundleItemForApp:aMenuItem];
}
else if([[data objectAtIndex:1] isEqualToString:SPBundleScopeDataTable]) {
if([[[[[NSApp mainWindow] firstResponder] class] description] isEqualToString:@"SPCopyTable"])
diff --git a/Source/SPDocumentController.m b/Source/SPDocumentController.m
index 391d41a6..a5d81554 100644
--- a/Source/SPDocumentController.m
+++ b/Source/SPDocumentController.m
@@ -40,7 +40,7 @@
/**
* Add a dummy implementation of readFromData:ofType:error:, which appears to
* be called by the OS in certain situations despite non-document use.
- * (See http://code.google.com/p/sequel-pro/issues/detail?id=1411 )
+ * (See issue #1411 )
*/
- (BOOL)readFromData:(NSData *)data ofType:(NSString *)typeName error:(NSError **)outError
{
diff --git a/Source/SPDotExporter.m b/Source/SPDotExporter.m
index 249851ea..5f1dbd42 100644
--- a/Source/SPDotExporter.m
+++ b/Source/SPDotExporter.m
@@ -231,12 +231,12 @@
{
delegate = nil;
- [dotExportTables release], dotExportTables = nil;
- [dotExportCurrentTable release], dotExportCurrentTable = nil;
- [dotTableData release], dotTableData = nil;
- [dotDatabaseHost release], dotDatabaseHost = nil;
- [dotDatabaseName release], dotDatabaseName = nil;
- [dotDatabaseVersion release], dotDatabaseVersion = nil;
+ SPClear(dotExportTables);
+ SPClear(dotExportCurrentTable);
+ SPClear(dotTableData);
+ SPClear(dotDatabaseHost);
+ SPClear(dotDatabaseName);
+ SPClear(dotDatabaseVersion);
[super dealloc];
}
diff --git a/Source/SPEditorPreferencePane.m b/Source/SPEditorPreferencePane.m
index 93e5c42b..7eaecf47 100644
--- a/Source/SPEditorPreferencePane.m
+++ b/Source/SPEditorPreferencePane.m
@@ -66,7 +66,7 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
editThemeListItems = [[NSArray arrayWithArray:[self _getAvailableThemes]] retain];
editorColors =
- [[NSArray arrayWithObjects:
+ [@[
SPCustomQueryEditorTextColor,
SPCustomQueryEditorBackgroundColor,
SPCustomQueryEditorCaretColor,
@@ -77,11 +77,11 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
SPCustomQueryEditorBacktickColor,
SPCustomQueryEditorVariableColor,
SPCustomQueryEditorHighlightQueryColor,
- SPCustomQueryEditorSelectionColor,
- nil] retain];
+ SPCustomQueryEditorSelectionColor
+ ] retain];
editorNameForColors =
- [[NSArray arrayWithObjects:
+ [@[
NSLocalizedString(@"Text", @"text label for color table (Prefs > Editor)"),
NSLocalizedString(@"Background", @"background label for color table (Prefs > Editor)"),
NSLocalizedString(@"Caret", @"caret label for color table (Prefs > Editor)"),
@@ -92,8 +92,8 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
NSLocalizedString(@"Backtick Quote", @"backtick quote label for color table (Prefs > Editor)"),
NSLocalizedString(@"Variable", @"variable label for color table (Prefs > Editor)"),
NSLocalizedString(@"Query Background", @"query background label for color table (Prefs > Editor)"),
- NSLocalizedString(@"Selection", @"selection label for color table (Prefs > Editor)"),
- nil] retain];
+ NSLocalizedString(@"Selection", @"selection label for color table (Prefs > Editor)")
+ ] retain];
}
return self;
@@ -131,7 +131,7 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
{
NSSavePanel *panel = [NSSavePanel savePanel];
- [panel setAllowedFileTypes:[NSArray arrayWithObject:SPColorThemeFileExtension]];
+ [panel setAllowedFileTypes:@[SPColorThemeFileExtension]];
[panel setExtensionHidden:NO];
[panel setAllowsOtherFileTypes:NO];
@@ -209,7 +209,7 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
if (![fm fileExistsAtPath:selectedPath isDirectory:nil]) {
if ([fm copyItemAtPath:[NSString stringWithFormat:@"%@/%@.%@", themePath, [editThemeListItems objectAtIndex:[editThemeListTable selectedRow]], SPColorThemeFileExtension] toPath:selectedPath error:nil]) {
- if (editThemeListItems) [editThemeListItems release], editThemeListItems = nil;
+ if (editThemeListItems) SPClear(editThemeListItems);
editThemeListItems = [[NSArray arrayWithArray:[self _getAvailableThemes]] retain];
@@ -243,7 +243,7 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
[prefs setObject:SPCustomColorSchemeName forKey:SPCustomQueryEditorThemeName];
}
- if (editThemeListItems) [editThemeListItems release], editThemeListItems = nil;
+ if (editThemeListItems) SPClear(editThemeListItems);
editThemeListItems = [[NSArray arrayWithArray:[self _getAvailableThemes]] retain];
@@ -313,7 +313,7 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
{
[[NSColorPanel sharedColorPanel] close];
- if (editThemeListItems) [editThemeListItems release], editThemeListItems = nil;
+ if (editThemeListItems) SPClear(editThemeListItems);
editThemeListItems = [[NSArray arrayWithArray:[self _getAvailableThemes]] retain];
@@ -595,7 +595,7 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
}
// Reload everything needed
- if (editThemeListItems) [editThemeListItems release], editThemeListItems = nil;
+ if (editThemeListItems) SPClear(editThemeListItems);
editThemeListItems = [[NSArray arrayWithArray:[self _getAvailableThemes]] retain];
[editThemeListTable reloadData];
@@ -732,6 +732,14 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
return NO;
}
+- (void)preferencePaneWillBeShown
+{
+ [self updateColorSchemeSelectionMenu];
+ [self updateDisplayColorThemeName];
+
+ [self updateDisplayedEditorFontName];
+}
+
#pragma mark -
#pragma mark Private API
@@ -770,7 +778,7 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
if ([fm fileExistsAtPath:themePath isDirectory:nil]) {
NSArray *allItemsRaw = [fm contentsOfDirectoryAtPath:themePath error:NULL];
- if(!allItemsRaw) return [NSArray array];
+ if(!allItemsRaw) return @[];
// Filter out all themes
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF ENDSWITH %@", [NSString stringWithFormat:@".%@", SPColorThemeFileExtension]];
@@ -791,7 +799,7 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
return (NSArray *)allItems;
}
- return [NSArray array];
+ return @[];
}
- (void)_saveColorThemeAtPath:(NSString *)path
@@ -1021,10 +1029,10 @@ static NSString *SPCustomColorSchemeNameLC = @"user-defined";
*/
- (void)dealloc
{
- if (themePath) [themePath release], themePath = nil;
- if (editThemeListItems) [editThemeListItems release], editThemeListItems = nil;
- if (editorColors) [editorColors release], editorColors = nil;
- if (editorNameForColors) [editorNameForColors release], editorNameForColors = nil;
+ if (themePath) SPClear(themePath);
+ if (editThemeListItems) SPClear(editThemeListItems);
+ if (editorColors) SPClear(editorColors);
+ if (editorNameForColors) SPClear(editorNameForColors);
[super dealloc];
}
diff --git a/Source/SPEditorTokens.l b/Source/SPEditorTokens.l
index c10dbd60..2ac99be8 100644
--- a/Source/SPEditorTokens.l
+++ b/Source/SPEditorTokens.l
@@ -43,8 +43,8 @@
*/
#import "SPEditorTokens.h"
+#include "SPParserUtils.h"
-size_t utf8strlen(const char * _s);
size_t yyuoffset, yyuleng;
//keep track of the current utf-8 character (not byte) offset and token length
@@ -56,12 +56,11 @@ size_t yyuoffset, yyuleng;
%option case-insensitive
s [ \t\n\r]+
-alpha [a-z_\.À-゚]
+alpha [a-z_\.\x80-\xEF]
numeric ([+-]?(([0-9]+\.[0-9]+)|([0-9]*\.[0-9]+)|([0-9]+))(e[+-]?[0-9]+)?)
ops "+"|"-"|"*"|"/"
-word [a-z_\.0-9À-゚@]
-variable @{1,2}[a-z_\.0-9À-゚$]+
-nonword [^a-z_0-9À-゚#\n\t\r]
+word [a-z_\.0-9\x80-\xEF@]
+variable @{1,2}[a-z_\.0-9\x80-\xEF$]+
keyworda (G(R(OUP{s}BY|ANT(S)?)|E(NERAL|T_FORMAT|OMETRY(COLLECTION)?)|LOBAL)|B(Y(TE)?|TREE|I(GINT|N(LOG|ARY)|T)|O(TH|OL(EAN)?)|E(GIN|TWEEN|FORE)|LOB|ACKUP{s}TABLE)|H(IGH_PRIORITY|O(ST(S)?|UR(_(MI(NUTE|CROSECOND)|SECOND))?)|ELP|A(SH|NDLER|VING))|C(R(OSS|EATE)|H(ECK(SUM)?|A(R(SET|ACTER)?|NGE(D)?|IN))|IPHER|O(M(M(IT(TED)?|ENT)|P(RESSED|LETION|ACT))|N(S(TRAINT(_(SCHEMA|NAME|CATALOG))?|ISTENT)|NECTION|CURRENT|T(RIBUTORS|INUE|AINS)|DITION|VERT)|DE|L(UMN(S|_(NAME|FORMAT))?|LATE)|ALESCE{s}PARTITION)|U(R(RENT_(TIME(STAMP)?|DATE|USER)|SOR(_NAME)?)|BE)|L(IENT|OSE|ASS_ORIGIN)|A(S(CADE(D)?|E)|CHE{s}INDEX|TALOG_NAME|LL))|I(GNORE(_SERVER_IDS)?|MPORT{s}TABLESPACE|S(SUER|OLATION)?|N(S(TALL({s}PLUGIN)?|E(RT(_METHOD)?|NSITIVE))|N(O(BASE|DB)|ER)|T(1|2|8|3|O({s}(DUMP|OUT)FILE)?|4|E(RVAL|GER))?|ITIAL_SIZE|OUT|DEX(ES)?|VOKER|FILE)?|TERATE|O_THREAD|DENTIFIED|F)|D(ROP|YNAMIC|I(RECTORY|S(CARD{s}TABLESPACE|TINCT(ROW)?|K|ABLE{s}KEYS)|V)|O(UBLE)?|U(MPFILE|PLICATE|AL)|E(S(C(RIBE)?|_KEY_FILE)|C(IMAL|LARE)?|TERMINISTIC|F(INER|AULT)|L(ETE|AY(_KEY_WRITE|ED))|ALLOCATE)|A(Y(_(MI(NUTE|CROSECOND)|SECOND|HOUR))?|T(E(TIME)?|A(BASE(S)?|FILE)?)))|JOIN|E(RRORS|X(TEN(T_SIZE|DED)|I(STS|T)|P(LAIN|ANSION)|ECUTE)|SCAPE(D{s}BY)?|N(GINE(S)?|CLOSED{s}BY|D(S)?|UM|ABLE{s}KEYS)|VE(RY|NT)|LSE(IF)?|ACH)|K(ILL({s}(CONNECTION|QUERY))?|EY(S|_BLOCK_SIZE)?)|F(R(OM|AC_SECOND)|I(RST|XED|LE)|O(R(CE|EIGN)?|UND)|U(NCTION|LL(TEXT)?)|ETCH|L(OAT(8|4)?|USH)|A(ST|LSE))|A(G(GREGATE|AINST)|S(C(II)?|ENSITIVE)?|N(Y|D|ALYZE)|C(CESSIBLE|TION)|T|DD|UT(HORS|O(_INCREMENT|EXTEND_SIZE))|VG(_ROW_LENGTH)?|FTER|L(GORITHM|TER|L)))
keywordl (R(TREE|IGHT|O(UTINE|W(S|_FORMAT)?|LL(BACK|UP))|E(GEXP|MOVE{s}PARTITIONING|BUILD{s}PARTITION|S(T(RICT|ORE{s}TABLE)|IGNAL|UME|ET)|NAME|COVER|TURN(S)?|ORGANIZE{s}PARTITION|D(O(_BUFFER_SIZE|FILE)|UNDANT)|P(EAT(ABLE)?|L(ICATION|ACE)|AIR)|VOKE|QUIRE|FERENCES|L(OAD|EASE|AY_(THREAD|LOG_(POS|FILE)))|A(D(S|_(ONLY|WRITE))?|L))|LIKE|ANGE)|M(YSQL_ERRNO|I(GRATE|N(_ROWS|UTE(_(MICROSECOND|SECOND))?)|CROSECOND|DDLEINT)|O(NTH|D(IF(Y|IES)|E)?)|U(TEX|LTI(PO(INT|LYGON)|LINESTRING))|E(RGE|MORY|SSAGE_TEXT|DIUM(BLOB|TEXT|INT)?)|A(X(_(ROWS|SIZE|CONNECTIONS_PER_HOUR|U(SER_CONNECTIONS|PDATES_PER_HOUR)|QUERIES_PER_HOUR)|VALUE)|STER(_(S(SL(_(C(IPHER|ERT|A(PATH)?)|VERIFY_SERVER_CERT|KEY))?|ERVER_ID)|H(OST|EARTBEAT_PERIOD)|CONNECT_RETRY|USER|P(ORT|ASSWORD)|LOG_(POS|FILE)))?|TCH))|N(CHAR|O(NE|_W(RITE_TO_BINLOG|AIT)|T|DEGROUP)?|DB(CLUSTER)?|U(MERIC|LL)|E(XT|W)|VARCHAR|A(ME(S)?|T(IONAL|URAL)))|O(R(DER{s}BY)?|N(({s}DUPLICATE{s}KEY{s}UPDATE)?|E(_SHOT)?|LINE)?|UT(ER|FILE)?|P(TI(MIZE|ON(S|ALLY)?)|EN)|FF(SET|LINE)|WNER|LD_PASSWORD)|P(R(I(MARY|VILEGES)|OCE(SS|DURE{s}(ANALYSE)?)|E(SERVE|CISION|PARE|V))|HASE|O(RT|INT|LYGON)|URGE|A(R(SER|TI(TION(S|ING)?|AL))|SSWORD|CK_KEYS))|QU(ICK|ERY|ARTER)|L(I(MIT|ST|NE(S(TRING)?|AR)|KE)|O(G(S|FILE({s}GROUP))|NG(BLOB|TEXT)?|C(K(S)?|AL(TIME(STAMP)?)?)|OP|W_PRIORITY|AD{s}(DATA|INDEX{s}INTO{s}CACHE|XML))|E(SS|VEL|FT|A(DING|VE(S)?))|A(ST|NGUAGE)))
keywords (X(OR|509|A)|S(MALLINT|SL|H(OW({s}(E(NGINE(S)?|RRORS)|M(ASTER|UTEX)|BINLOG|GRANTS|INNODB|P(RIVILEGES|ROFILE(S)?|ROCEDURE{s}CODE)|SLAVE{s}(HOSTS|STATUS)|TRIGGERS|VARIABLES|WARNINGS|(FULL{s})?PROCESSLIST|FIELDS|PLUGIN(S)?|STORAGE{s}ENGINES|TABLE{s}TYPES|CO(LUMNS|LLATION)|BINLOG{s}EVENTS))?|UTDOWN|ARE)|NAPSHOT|CHE(MA(S|_NAME)?|DULE(R)?)|T(R(ING|AIGHT_JOIN)|O(RAGE|P)|A(RT(S|ING{s}BY)?|TUS))|I(GN(ED|AL)|MPLE)|O(ME|NAME|CKET|UNDS)|U(B(CLASS_ORIGIN|JECT|PARTITION(S)?)|SPEND|PER)|P(ECIFIC|ATIAL)|E(R(IAL(IZABLE)?|VER)|SSION|NSITIVE|C(OND(_MICROSECOND)?|URITY)|T({s}(PASSWORD|NAMES|ONE_SHOT))?|PARATOR|LECT)|QL(STATE|_(MAX_JOIN_SIZE|B(IG_(RESULT|SELECTS|TABLES)|UFFER_RESULT)|S(MALL_RESULT|ELECT_LIMIT|LAVE_SKIP_COUNTER|AFE_UPDATES)|NO_CACHE|CA(CHE|LC_FOUND_ROWS)|T(SI_(M(INUTE|ONTH)|SECOND|HOUR|YEAR|DAY|QUARTER|FRAC_SECOND|WEEK)|HREAD)|QUOTE_SHOW_CREATE|WARNINGS|LO(G_(BIN|OFF|UPDATE)|W_PRIORITY_UPDATES)|AUTO_IS_NULL)|EXCEPTION|WARNING)?|L(OW|AVE)|AVEPOINT)|YEAR(_MONTH)?|T(R(IGGER(S)?|U(NCATE|E)|A(NSACTION|ILING))|H(EN|AN)|YPE|I(ME(STAMP(DIFF|ADD)?)?|NY(BLOB|TEXT|INT))|O|E(RMINATED{s}BY|XT|MP(TABLE|ORARY))|ABLE(S(PACE)?|_NAME)?)|ZEROFILL|U(S(ING|E(R(_RESOURCES)?|_FRM)?|AGE)|N(SIGNED|COMMITTED|TIL|I(NSTALL({s}PLUGIN)?|CODE|ON|QUE)|D(O(_BUFFER_SIZE|FILE)?|EFINED)|KNOWN|LOCK)|TC_(TIME(STAMP)?|DATE)|P(GRADE|DATE))|V(IEW|A(R(BINARY|YING|CHAR(ACTER)?|IABLES)|LUE(S)?))|W(R(ITE|APPER)|H(ILE|E(RE|N))|ITH({s}PARSER)?|ORK|EEK|A(RNINGS|IT)))
@@ -81,7 +80,7 @@ keywords (X(OR|509|A)|S(MALLINT|SL|H(OW({s}(E(NGINE(S)?|RRORS)|M(ASTER|UTEX)|BIN
\"([^"\\]|\\(.|[\n\r]))*\"? { return SPT_DOUBLE_QUOTED_TEXT; } /* double quoted strings */
'([^'\\]|\\(.|[\n\r]))*'? { return SPT_SINGLE_QUOTED_TEXT; } /* single quoted strings */
-`[^`]*`? { return SPT_BACKTICK_QUOTED_TEXT; } /* backtick quoted string */
+`(``|[^`])*`? { return SPT_BACKTICK_QUOTED_TEXT; } /* backtick quoted string */
"/*" { BEGIN(comment); return SPT_COMMENT; } /* beginning of a c style comment */
<comment>[^*]* { return SPT_COMMENT; } /* anything except * in a c cmnt */
@@ -115,7 +114,7 @@ keywords (X(OR|509|A)|S(MALLINT|SL|H(OW({s}(E(NGINE(S)?|RRORS)|M(ASTER|UTEX)|BIN
{word}+ { return SPT_WORD; } /* return any word */
-{nonword} { return SPT_OTHER; } /* return anything else */
+. { return SPT_OTHER; } /* return anything else */
@@ -126,59 +125,6 @@ keywords (X(OR|509|A)|S(MALLINT|SL|H(OW({s}(E(NGINE(S)?|RRORS)|M(ASTER|UTEX)|BIN
}
%%
-#define ONEMASK ((size_t)(-1) / 0xFF)
-// adapted from http://www.daemonology.net/blog/2008-06-05-faster-utf8-strlen.html
-size_t utf8strlen(const char * _s)
-{
- const char * s;
- size_t count = 0;
- size_t u;
- unsigned char b;
-
- /* Handle any initial misaligned bytes. */
- for (s = _s; (uintptr_t)(s) & (sizeof(size_t) - 1); s++) {
- b = *s;
-
- /* Exit if we hit a zero byte. */
- if (b == '\0')
- goto done;
-
- /* Is this byte NOT the first byte of a character? */
- count += (b >> 7) & ((~b) >> 6);
- }
-
- /* Handle complete blocks. */
- for (; ; s += sizeof(size_t)) {
- /* Prefetch 256 bytes ahead. */
- __builtin_prefetch(&s[256], 0, 0);
-
- /* Grab 4 or 8 bytes of UTF-8 data. */
- u = *(size_t *)(s);
-
- /* Exit the loop if there are any zero bytes. */
- if ((u - ONEMASK) & (~u) & (ONEMASK * 0x80))
- break;
-
- /* Count bytes which are NOT the first byte of a character. */
- u = ((u & (ONEMASK * 0x80)) >> 7) & ((~u) >> 6);
- count += (u * ONEMASK) >> ((sizeof(size_t) - 1) * 8);
- }
-
- /* Take care of any left-over bytes. */
- for (; ; s++) {
- b = *s;
-
- /* Exit if we hit a zero byte. */
- if (b == '\0')
- break;
-
- /* Is this byte NOT the first byte of a character? */
- count += (b >> 7) & ((~b) >> 6);
- }
-
-done:
- return ((s - _s) - count);
-}
/* un-optimized keywords:
ACCESSIBLE
diff --git a/UnitTests/SPDatabaseCopyTest.h b/Source/SPExportController+SharedPrivateAPI.h
index 2ed193a3..067c4645 100644
--- a/UnitTests/SPDatabaseCopyTest.h
+++ b/Source/SPExportController+SharedPrivateAPI.h
@@ -1,9 +1,9 @@
//
-// SPDatabaseCopyTest.h
+// SPExportController+SharedPrivateAPI.h
// sequel-pro
//
-// Created by David Rekowski.
-// Copyright (c) 2010 David Rekowski. All rights reserved.
+// Created by Max Lohrmann on 03.02.15.
+// Copyright (c) 2015 Max Lohrmann. All rights reserved.
//
// Permission is hereby granted, free of charge, to any person
// obtaining a copy of this software and associated documentation
@@ -28,13 +28,8 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
-#define USE_APPLICATION_UNIT_TEST 1
-
-#import <SenTestingKit/SenTestingKit.h>
-
-@interface SPDatabaseCopyTest : SenTestCase
-
-- (void)testCopyDatabase;
-- (void)testCreateDatabase;
+#import "SPExportController.h"
+@interface SPExportController (SharedPrivateAPI)
+- (void)sheetDidEnd:(NSWindow *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo;
@end
diff --git a/Source/SPExportController.m b/Source/SPExportController.m
index 3fb07267..c13e4fc6 100644
--- a/Source/SPExportController.m
+++ b/Source/SPExportController.m
@@ -41,6 +41,7 @@
#import "SPDatabaseDocument.h"
#import "SPThreadAdditions.h"
#import "SPCustomQuery.h"
+#import "SPExportController+SharedPrivateAPI.h"
#import <SPMySQL/SPMySQL.h>
@@ -191,9 +192,9 @@ static const NSString *SPSQLExportDropEnabled = @"SQLExportDropEnabled";
// Disable all tables
for (NSMutableArray *table in tables)
{
- [table replaceObjectAtIndex:1 withObject:[NSNumber numberWithBool:NO]];
- [table replaceObjectAtIndex:2 withObject:[NSNumber numberWithBool:NO]];
- [table replaceObjectAtIndex:3 withObject:[NSNumber numberWithBool:NO]];
+ [table replaceObjectAtIndex:1 withObject:@NO];
+ [table replaceObjectAtIndex:2 withObject:@NO];
+ [table replaceObjectAtIndex:3 withObject:@NO];
}
// Select the supplied tables
@@ -202,9 +203,9 @@ static const NSString *SPSQLExportDropEnabled = @"SQLExportDropEnabled";
for (NSString *exportTable in exportTables)
{
if ([exportTable isEqualToString:[table objectAtIndex:0]]) {
- [table replaceObjectAtIndex:1 withObject:[NSNumber numberWithBool:YES]];
- [table replaceObjectAtIndex:2 withObject:[NSNumber numberWithBool:YES]];
- [table replaceObjectAtIndex:3 withObject:[NSNumber numberWithBool:YES]];
+ [table replaceObjectAtIndex:1 withObject:@YES];
+ [table replaceObjectAtIndex:2 withObject:@YES];
+ [table replaceObjectAtIndex:3 withObject:@YES];
}
}
}
@@ -431,45 +432,50 @@ static const NSString *SPSQLExportDropEnabled = @"SQLExportDropEnabled";
[tables removeAllObjects];
// For all modes, retrieve table and view names
- NSArray *tablesAndViews = [tablesListInstance allTableAndViewNames];
-
- for (id itemName in tablesAndViews) {
- [tables addObject:[NSMutableArray arrayWithObjects:
- itemName,
- [NSNumber numberWithBool:YES],
- [NSNumber numberWithBool:YES],
- [NSNumber numberWithBool:YES],
- [NSNumber numberWithInt:SPTableTypeTable],
- nil]];
- }
+ {
+ NSArray *tablesAndViews = [tablesListInstance allTableAndViewNames];
+
+ for (id itemName in tablesAndViews) {
+ [tables addObject:[NSMutableArray arrayWithObjects:
+ itemName,
+ @YES,
+ @YES,
+ @YES,
+ [NSNumber numberWithInt:SPTableTypeTable],
+ nil]];
+ }
+ } // The purpose of this extra { } is to limit visibility and thus catch copy&paste errors
// For SQL only, add procedures and functions
if (exportType == SPSQLExport) {
- NSArray *procedures = [tablesListInstance allProcedureNames];
-
- for (id procName in procedures)
+ // Procedures
{
- [tables addObject:[NSMutableArray arrayWithObjects:
- procName,
- [NSNumber numberWithBool:YES],
- [NSNumber numberWithBool:YES],
- [NSNumber numberWithBool:YES],
- [NSNumber numberWithInt:SPTableTypeProc],
- nil]];
+ NSArray *procedures = [tablesListInstance allProcedureNames];
+
+ for (id procName in procedures) {
+ [tables addObject:[NSMutableArray arrayWithObjects:
+ procName,
+ @YES,
+ @YES,
+ @YES,
+ [NSNumber numberWithInt:SPTableTypeProc],
+ nil]];
+ }
}
-
- NSArray *functions = [tablesListInstance allFunctionNames];
-
- for (id funcName in functions)
+ // Functions
{
- [tables addObject:[NSMutableArray arrayWithObjects:
- funcName,
- [NSNumber numberWithBool:YES],
- [NSNumber numberWithBool:YES],
- [NSNumber numberWithBool:YES],
- [NSNumber numberWithInt:SPTableTypeFunc],
- nil]];
- }
+ NSArray *functions = [tablesListInstance allFunctionNames];
+
+ for (id funcName in functions) {
+ [tables addObject:[NSMutableArray arrayWithObjects:
+ funcName,
+ @YES,
+ @YES,
+ @YES,
+ [NSNumber numberWithInt:SPTableTypeFunc],
+ nil]];
+ }
+ }
}
if (sender) {
@@ -1039,13 +1045,13 @@ static const NSString *SPSQLExportDropEnabled = @"SQLExportDropEnabled";
- (void)dealloc
{
- [tables release], tables = nil;
- [exporters release], exporters = nil;
- [exportFiles release], exportFiles = nil;
- [operationQueue release], operationQueue = nil;
- [exportFilename release], exportFilename = nil;
+ SPClear(tables);
+ SPClear(exporters);
+ SPClear(exportFiles);
+ SPClear(operationQueue);
+ SPClear(exportFilename);
- if (previousConnectionEncoding) [previousConnectionEncoding release], previousConnectionEncoding = nil;
+ if (previousConnectionEncoding) SPClear(previousConnectionEncoding);
[super dealloc];
}
diff --git a/Source/SPExportControllerDelegate.m b/Source/SPExportControllerDelegate.m
index aca7791f..43b1804f 100644
--- a/Source/SPExportControllerDelegate.m
+++ b/Source/SPExportControllerDelegate.m
@@ -155,7 +155,7 @@
// Check whether the group of items make up a token
groupToken = [self tokenObjectForString:[[processedTokens subarrayWithRange:NSMakeRange(k, 1 + i - k)] componentsJoinedByString:@""]];
if ([groupToken isKindOfClass:[SPExportFileNameTokenObject class]]) {
- [processedTokens replaceObjectsInRange:NSMakeRange(k, 1 + i - k) withObjectsFromArray:[NSArray arrayWithObject:groupToken]];
+ [processedTokens replaceObjectsInRange:NSMakeRange(k, 1 + i - k) withObjectsFromArray:@[groupToken]];
i = k + 1;
break;
}
diff --git a/Source/SPExportFile.m b/Source/SPExportFile.m
index c33aa076..132e1028 100644
--- a/Source/SPExportFile.m
+++ b/Source/SPExportFile.m
@@ -226,7 +226,7 @@
- (void)dealloc
{
- if (exportFileHandle) [exportFileHandle release], exportFileHandle = nil;
+ if (exportFileHandle) SPClear(exportFileHandle);
[super dealloc];
}
diff --git a/Source/SPExportFileUtilities.m b/Source/SPExportFileUtilities.m
index aafea54d..0cecad91 100644
--- a/Source/SPExportFileUtilities.m
+++ b/Source/SPExportFileUtilities.m
@@ -31,10 +31,12 @@
#import "SPExportFileUtilities.h"
#import "SPExportInitializer.h"
#import "SPExporter.h"
-#import "SPAlertSheets.h"
#import "SPExportFile.h"
#import "SPDatabaseDocument.h"
#import "SPCustomQuery.h"
+#import "SPTableContent.h"
+#import "SPTableContentDelegate.h"
+#import "SPExportController+SharedPrivateAPI.h"
#import <SPMySQL/SPMySQL.h>
@@ -47,13 +49,10 @@ typedef enum
SPExportErrorChoice;
@interface SPExportController (SPExportFileUtilitiesPrivateAPI)
-
- (void)_reopenExportSheet;
-- (void)sheetDidEnd:(NSWindow *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo;
-
@end
-@implementation SPExportController (SPExportFileUtilities)
+@implementation SPExportController (SPExportFileUtilitiesPrivateAPI)
/**
* Writes the CSV file header to the supplied export file.
@@ -115,7 +114,7 @@ SPExportErrorChoice;
if ([exportXMLFormatPopUpButton indexOfSelectedItem] == SPXMLExportMySQLFormat) {
- NSString *tag = @"";
+ NSString *tag;
if (exportSource == SPTableExport) {
tag = [NSString stringWithFormat:@"<mysqldump xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\n<database name=\"%@\">\n\n", [tableDocumentInstance database]];
@@ -141,6 +140,11 @@ SPExportErrorChoice;
*/
- (void)errorCreatingExportFileHandles:(NSArray *)files
{
+ // We don't know where "files" came from, but we know 2 things:
+ // - NSAlert will NOT retain it as contextInfo
+ // - This method continues execution after [alert beginSheet:...], thus even if files was retained before, it could be released before the alert ends
+ [files retain];
+
// Get the number of files that already exist as well as couldn't be created because of other reasons
NSUInteger filesAlreadyExisting = 0;
NSUInteger parentFoldersMissing = 0;
@@ -270,6 +274,7 @@ SPExportErrorChoice;
[exportProgressWindow orderOut:self];
[alert beginSheetModalForWindow:[tableDocumentInstance parentWindow] modalDelegate:self didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:) contextInfo:files];
+ [alert autorelease];
}
/**
diff --git a/Source/SPExportFilenameUtilities.m b/Source/SPExportFilenameUtilities.m
index 71422b28..df9d3a69 100644
--- a/Source/SPExportFilenameUtilities.m
+++ b/Source/SPExportFilenameUtilities.m
@@ -242,7 +242,7 @@
isARepeat:NO
keyCode:0x24];
- [[NSApplication sharedApplication] postEvent:tokenizingEvent atStart:NO];
+ [NSApp postEvent:tokenizingEvent atStart:NO];
// Update the filename preview
[self updateDisplayedExportFilename];
@@ -298,6 +298,12 @@
case SPDotExport:
extension = @"dot";
break;
+ case SPPDFExport:
+ case SPHTMLExport:
+ case SPExcelExport:
+ default:
+ [NSException raise:NSInvalidArgumentException format:@"unsupported exportType=%lu",exportType];
+ return nil;
}
if ([exportOutputCompressionFormatPopupButton indexOfSelectedItem] != SPNoCompression) {
diff --git a/Source/SPExportInitializer.m b/Source/SPExportInitializer.m
index bb59dd60..7794d1e4 100644
--- a/Source/SPExportInitializer.m
+++ b/Source/SPExportInitializer.m
@@ -99,7 +99,7 @@
NSArray *dataArray = nil;
// Get rid of the cached connection encoding
- if (previousConnectionEncoding) [previousConnectionEncoding release], previousConnectionEncoding = nil;
+ if (previousConnectionEncoding) SPClear(previousConnectionEncoding);
createCustomFilename = ([[exportCustomFilenameTokenField stringValue] length] > 0);
@@ -126,15 +126,15 @@
// Check the overall export settings
if ([[table objectAtIndex:1] boolValue] && (![exportSQLIncludeStructureCheck state])) {
- [table replaceObjectAtIndex:1 withObject:[NSNumber numberWithBool:NO]];
+ [table replaceObjectAtIndex:1 withObject:@NO];
}
if ([[table objectAtIndex:2] boolValue] && (![exportSQLIncludeContentCheck state])) {
- [table replaceObjectAtIndex:2 withObject:[NSNumber numberWithBool:NO]];
+ [table replaceObjectAtIndex:2 withObject:@NO];
}
if ([[table objectAtIndex:3] boolValue] && (![exportSQLIncludeDropSyntaxCheck state])) {
- [table replaceObjectAtIndex:3 withObject:[NSNumber numberWithBool:NO]];
+ [table replaceObjectAtIndex:3 withObject:@NO];
}
[exportTables addObject:table];
@@ -168,6 +168,12 @@
case SPDotExport:
exportTypeLabel = @"Dot";
break;
+ case SPPDFExport:
+ case SPHTMLExport:
+ case SPExcelExport:
+ default:
+ [NSException raise:NSInvalidArgumentException format:@"unsupported exportType=%lu",exportType];
+ return;
}
// Begin the export based on the source
diff --git a/Source/SPExporter.m b/Source/SPExporter.m
index 7ec577b6..195d900d 100644
--- a/Source/SPExporter.m
+++ b/Source/SPExporter.m
@@ -103,9 +103,9 @@
*/
- (void)dealloc
{
- if (exportData) [exportData release], exportData = nil;
- if (connection) [connection release], connection = nil;
- if (exportOutputFile) [exportOutputFile release], exportOutputFile = nil;
+ if (exportData) SPClear(exportData);
+ if (connection) SPClear(connection);
+ if (exportOutputFile) SPClear(exportOutputFile);
[super dealloc];
}
diff --git a/Source/SPExtendedTableInfo.m b/Source/SPExtendedTableInfo.m
index 501b7c09..3d27b821 100644
--- a/Source/SPExtendedTableInfo.m
+++ b/Source/SPExtendedTableInfo.m
@@ -490,7 +490,7 @@ static NSString *SPMySQLCommentField = @"Comment";
}
NSError *error = nil;
- NSArray *HTMLExcludes = [NSArray arrayWithObjects:@"doctype", @"html", @"head", @"body", @"xml", nil];
+ NSArray *HTMLExcludes = @[@"doctype", @"html", @"head", @"body", @"xml"];
NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:NSHTMLTextDocumentType,
NSDocumentTypeDocumentAttribute, HTMLExcludes, NSExcludedElementsDocumentAttribute, nil];
@@ -720,7 +720,7 @@ static NSString *SPMySQLCommentField = @"Comment";
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
- [connection release], connection = nil;
+ SPClear(connection);
[super dealloc];
}
diff --git a/Source/SPFavoriteNode.h b/Source/SPFavoriteNode.h
index a26c9a3b..6a132767 100644
--- a/Source/SPFavoriteNode.h
+++ b/Source/SPFavoriteNode.h
@@ -28,6 +28,7 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
+#import "SPNamedNode.h"
/**
* @class SPFavoriteNode SPFavoriteNode.h
*
@@ -35,7 +36,7 @@
*
* Tree node the represents a connection favorite.
*/
-@interface SPFavoriteNode : NSObject <NSCopying, NSCoding>
+@interface SPFavoriteNode : NSObject <NSCopying, NSCoding, SPNamedNode>
{
NSMutableDictionary *nodeFavorite;
}
diff --git a/Source/SPFavoriteNode.m b/Source/SPFavoriteNode.m
index aabb01c5..b51980f7 100644
--- a/Source/SPFavoriteNode.m
+++ b/Source/SPFavoriteNode.m
@@ -81,6 +81,7 @@ static NSString *SPFavoriteNodeKey = @"SPFavoriteNode";
- (id)initWithCoder:(NSCoder *)coder
{
+#warning This is not a valid initializer.
[self setNodeFavorite:[coder decodeObjectForKey:SPFavoriteNodeKey]];
return self;
@@ -96,14 +97,19 @@ static NSString *SPFavoriteNodeKey = @"SPFavoriteNode";
- (NSString *)description
{
- return [NSString stringWithFormat:@"<%@: %p ('%@')>", [self className], self, [[self nodeFavorite] objectForKey:SPFavoriteNameKey]];
+ return [NSString stringWithFormat:@"<%@: %p ('%@')>", [self className], self, [self nodeName]];
+}
+
+- (NSString *)nodeName
+{
+ return [[self nodeFavorite] objectForKey:SPFavoriteNameKey];
}
#pragma mark -
- (void)dealloc
{
- if (nodeFavorite) [nodeFavorite release], nodeFavorite = nil;
+ if (nodeFavorite) SPClear(nodeFavorite);
[super dealloc];
}
diff --git a/Source/SPFavoriteTextFieldCell.h b/Source/SPFavoriteTextFieldCell.h
index afc32bcb..0e900636 100644
--- a/Source/SPFavoriteTextFieldCell.h
+++ b/Source/SPFavoriteTextFieldCell.h
@@ -33,9 +33,12 @@
@interface SPFavoriteTextFieldCell : ImageAndTextCell
{
BOOL drawsDividerUnderCell;
+ NSColor *labelColor;
}
- (BOOL)drawsDividerUnderCell;
- (void)setDrawsDividerUnderCell:(BOOL)drawsDivider;
+@property(copy)NSColor *labelColor;
+
@end
diff --git a/Source/SPFavoriteTextFieldCell.m b/Source/SPFavoriteTextFieldCell.m
index 41511c8c..5eb6c103 100644
--- a/Source/SPFavoriteTextFieldCell.m
+++ b/Source/SPFavoriteTextFieldCell.m
@@ -29,6 +29,9 @@
// More info at <https://github.com/sequelpro/sequelpro>
#import "SPFavoriteTextFieldCell.h"
+#import "SPOSInfo.h"
+
+extern BOOL isOSAtLeast10_10_0(void);
@implementation SPFavoriteTextFieldCell
@@ -46,6 +49,7 @@
SPFavoriteTextFieldCell *cell = (SPFavoriteTextFieldCell *)[super copyWithZone:zone];
cell->drawsDividerUnderCell = drawsDividerUnderCell;
+ cell->labelColor = [labelColor copyWithZone:zone];
return cell;
}
@@ -68,8 +72,79 @@
drawsDividerUnderCell = drawsDivider;
}
+@synthesize labelColor;
+
#pragma mark -
+- (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView
+{
+ if(labelColor) {
+ CGFloat round = (cellFrame.size.height/2);
+ NSBezierPath *bg = [NSBezierPath bezierPathWithRoundedRect:cellFrame xRadius:round yRadius:round];
+
+ if(isOSAtLeast10_10_0()) {
+ CGFloat h,s,b,a;
+ [labelColor getHue:&h saturation:&s brightness:&b alpha:&a];
+
+ [[NSColor colorWithCalibratedHue:h saturation:s*1.21 brightness:b*1.1 alpha:a] set];
+ [bg fill];
+ }
+ else {
+ // Draw main background gradient
+ NSGradient * gradient = [[NSGradient alloc] initWithColorsAndLocations:
+ [labelColor highlightWithLevel:0.33], 0.0,
+ labelColor, 0.5,
+ [labelColor shadowWithLevel:0.15], 1.0, nil];
+ [gradient drawInBezierPath:bg angle:90.0];
+ [gradient release];
+
+ //replace the shadow color of the highlighted item (the default is dark blue)
+ if([self isHighlighted]) {
+ NSMutableAttributedString *mas = [[self attributedStringValue] mutableCopy];
+ NSShadow *strShadow = [mas attribute:NSShadowAttributeName atIndex:0 effectiveRange:NULL];
+ if(strShadow) {
+ [strShadow setShadowColor:[labelColor shadowWithLevel:0.4]];
+ [self setAttributedStringValue:mas];
+ }
+ [mas release];
+ }
+
+ // Add a little border at the top half (technically this is an inner shadow)
+ CGContextRef context = (CGContextRef)[[NSGraphicsContext currentContext] graphicsPort];
+
+ NSShadow* shadow = [[NSShadow alloc] init];
+ [shadow setShadowColor:labelColor];
+ [shadow setShadowOffset: NSMakeSize(0.1, -1.2)];
+ [shadow setShadowBlurRadius: 1];
+
+ [NSGraphicsContext saveGraphicsState];
+ NSRectClip([bg bounds]);
+ CGContextSetShadowWithColor(context, CGSizeZero, 0, NULL);
+
+ CGContextSetAlpha(context, [[shadow shadowColor] alphaComponent]);
+ CGContextBeginTransparencyLayer(context, NULL);
+ {
+ [shadow set];
+
+ CGContextSetBlendMode(context, kCGBlendModeSourceOut);
+ CGContextBeginTransparencyLayer(context, NULL);
+
+ [[shadow shadowColor] setFill];
+ [bg fill];
+
+ CGContextEndTransparencyLayer(context);
+ }
+ CGContextEndTransparencyLayer(context);
+ [NSGraphicsContext restoreGraphicsState];
+
+ [shadow release];
+ }
+ }
+
+ [super drawWithFrame:cellFrame inView:controlView];
+}
+
+
/**
* Draws the actual cell, with a divider if appropriate.
*/
@@ -110,4 +185,16 @@
}
}
+- (void)dealloc
+{
+ [self setLabelColor:nil];
+
+ [super dealloc];
+}
+
@end
+
+BOOL isOSAtLeast10_10_0() {
+ const BOOL value = [SPOSInfo isOSVersionAtLeastMajor:10 minor:10 patch:0];
+ return value;
+}
diff --git a/Source/SPFavoritesController.m b/Source/SPFavoritesController.m
index d5564428..625b46cc 100644
--- a/Source/SPFavoritesController.m
+++ b/Source/SPFavoritesController.m
@@ -45,7 +45,7 @@ static SPFavoritesController *sharedFavoritesController = nil;
- (void)_addNode:(SPTreeNode *)node asChildOfNode:(SPTreeNode *)parent;
- (SPTreeNode *)_constructBranchForNodeData:(NSDictionary *)nodeData;
-
+- (SPTreeNode *)_addFavoriteNodeWithData:(NSMutableDictionary *)data asChildOfNode:(SPTreeNode *)parent;
@end
@implementation SPFavoritesController
@@ -164,6 +164,7 @@ static SPFavoritesController *sharedFavoritesController = nil;
[self _addNode:node asChildOfNode:parent];
+ [self saveFavorites];
[[NSNotificationCenter defaultCenter] postNotificationName:SPConnectionFavoritesChangedNotification object:self];
return node;
@@ -179,11 +180,40 @@ static SPFavoritesController *sharedFavoritesController = nil;
*/
- (SPTreeNode *)addFavoriteNodeWithData:(NSMutableDictionary *)data asChildOfNode:(SPTreeNode *)parent
{
- SPTreeNode *node = [SPTreeNode treeNodeWithRepresentedObject:[SPFavoriteNode favoriteNodeWithDictionary:data]];
-
+ SPTreeNode *node = [self _addFavoriteNodeWithData:data asChildOfNode:parent];
+
+ [self saveFavorites];
+ [[NSNotificationCenter defaultCenter] postNotificationName:SPConnectionFavoritesChangedNotification object:self];
+
+ return node;
+}
+
+/**
+ * Inner recursive variant of the method above
+ */
+- (SPTreeNode *)_addFavoriteNodeWithData:(NSMutableDictionary *)data asChildOfNode:(SPTreeNode *)parent
+{
+ id object;
+ NSArray *childs = nil;
+ //if it has "Children" it must be a group node, otherwise assume favorite node
+ if ([data objectForKey:SPFavoriteChildrenKey]) {
+ object = [SPGroupNode groupNodeWithDictionary:data];
+ childs = [data objectForKey:SPFavoriteChildrenKey];
+ }
+ else {
+ object = [SPFavoriteNode favoriteNodeWithDictionary:data];
+ }
+
+ SPTreeNode *node = [SPTreeNode treeNodeWithRepresentedObject:object];
+
[self _addNode:node asChildOfNode:parent];
- [[NSNotificationCenter defaultCenter] postNotificationName:SPConnectionFavoritesChangedNotification object:self];
+ //also add the children
+ if(childs) {
+ for (NSMutableDictionary *childData in childs) {
+ [self _addFavoriteNodeWithData:childData asChildOfNode:node];
+ }
+ }
return node;
}
@@ -218,7 +248,7 @@ static SPFavoritesController *sharedFavoritesController = nil;
NSError *error = nil;
NSFileManager *fileManager = [NSFileManager defaultManager];
- if (favoritesData) [favoritesData release], favoritesData = nil;
+ if (favoritesData) SPClear(favoritesData);
NSString *dataPath = [fileManager applicationSupportDirectoryForSubDirectory:SPDataSupportFolder error:&error];
@@ -237,7 +267,7 @@ static SPFavoritesController *sharedFavoritesController = nil;
favoritesData = [[NSMutableDictionary alloc] initWithContentsOfFile:favoritesFile];
}
else {
- NSMutableDictionary *newFavorites = [NSMutableDictionary dictionaryWithObject:[NSMutableDictionary dictionaryWithObjectsAndKeys:NSLocalizedString(@"Favorites", @"favorites label"), SPFavoritesGroupNameKey, [NSArray array], SPFavoriteChildrenKey, nil] forKey:SPFavoritesRootKey];
+ NSMutableDictionary *newFavorites = [NSMutableDictionary dictionaryWithObject:[NSMutableDictionary dictionaryWithObjectsAndKeys:NSLocalizedString(@"Favorites", @"favorites label"), SPFavoritesGroupNameKey, @[], SPFavoriteChildrenKey, nil] forKey:SPFavoritesRootKey];
error = nil;
NSString *errorString = nil;
@@ -377,7 +407,7 @@ static SPFavoritesController *sharedFavoritesController = nil;
// from the current favourites tree and convert it to a dictionary representation
// to create the plist data. This is done before file changes as it can sometimes
// be terminated during shutdown.
- NSDictionary *dictionary = [NSDictionary dictionaryWithObject:data forKey:SPFavoritesRootKey];
+ NSDictionary *dictionary = @{SPFavoritesRootKey : data};
NSData *plistData = [NSPropertyListSerialization dataFromPropertyList:dictionary
format:NSPropertyListXMLFormat_v1_0
@@ -460,16 +490,14 @@ static SPFavoritesController *sharedFavoritesController = nil;
else {
[[[[favoritesTree mutableChildNodes] objectAtIndex:0] mutableChildNodes] addObject:node];
}
-
- [self saveFavorites];
}
#pragma mark -
- (void)dealloc
{
- if (favoritesTree) [favoritesTree release], favoritesTree = nil;
- if (favoritesData) [favoritesData release], favoritesData = nil;
+ if (favoritesTree) SPClear(favoritesTree);
+ if (favoritesData) SPClear(favoritesData);
pthread_mutex_destroy(&writeLock);
pthread_mutex_destroy(&favoritesLock);
diff --git a/Source/SPFavoritesExporter.m b/Source/SPFavoritesExporter.m
index d9342fa8..d37ce07d 100644
--- a/Source/SPFavoritesExporter.m
+++ b/Source/SPFavoritesExporter.m
@@ -74,10 +74,13 @@
// Get a dictionary representation of all favorites
for (SPTreeNode *node in [self exportFavorites])
{
- [favorites addObject:[node dictionaryRepresentation]];
+ // The selection could contain a group as well as items in that group.
+ // So we skip those items, as their group will already export them.
+ if(![node isDescendantOfNodes:[self exportFavorites]])
+ [favorites addObject:[node dictionaryRepresentation]];
}
- NSDictionary *dictionary = [NSDictionary dictionaryWithObject:favorites forKey:SPFavoritesDataRootKey];
+ NSDictionary *dictionary = @{SPFavoritesDataRootKey : favorites};
[favorites release];
diff --git a/Source/SPFavoritesImporter.m b/Source/SPFavoritesImporter.m
index 8dc1d94f..f80d6cff 100644
--- a/Source/SPFavoritesImporter.m
+++ b/Source/SPFavoritesImporter.m
@@ -127,9 +127,9 @@ static NSString *SPOldPreferenceFileFavoritesKey = @"favorites";
*/
- (void)_informDelegateOfErrorCode:(NSUInteger)code description:(NSString *)description
{
- NSError *error = [NSError errorWithDomain:NSCocoaErrorDomain
- code:code
- userInfo:[NSDictionary dictionaryWithObject:description forKey:NSLocalizedDescriptionKey]];
+ NSError *error = [NSError errorWithDomain:NSCocoaErrorDomain
+ code:code
+ userInfo:@{NSLocalizedDescriptionKey : description}];
[self _informDelegateOfImportCompletion:error];
}
diff --git a/Source/SPFavoritesOutlineView.h b/Source/SPFavoritesOutlineView.h
index 8a671f3c..2c3d475c 100644
--- a/Source/SPFavoritesOutlineView.h
+++ b/Source/SPFavoritesOutlineView.h
@@ -28,10 +28,11 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
+#import "SPOSInfo.h"
+
@interface SPFavoritesOutlineView : NSOutlineView
{
- SInt32 systemVersion;
-
+ BOOL isOSVersionAtLeast10_7_0;
BOOL justGainedFocus;
}
diff --git a/Source/SPFavoritesOutlineView.m b/Source/SPFavoritesOutlineView.m
index 01eb7b04..2e111925 100644
--- a/Source/SPFavoritesOutlineView.m
+++ b/Source/SPFavoritesOutlineView.m
@@ -39,8 +39,7 @@ static NSUInteger SPFavoritesOutlineViewUnindent = 6;
- (void)awakeFromNib
{
- systemVersion = 0;
- Gestalt(gestaltSystemVersion, &systemVersion);
+ isOSVersionAtLeast10_7_0 = [SPOSInfo isOSVersionAtLeastMajor:10 minor:7 patch:0];
}
- (BOOL)acceptsFirstResponder
@@ -129,7 +128,7 @@ static NSUInteger SPFavoritesOutlineViewUnindent = 6;
NSRect superFrame = [super frameOfCellAtColumn:columnIndex row:rowIndex];
// On system versions lower than Lion, don't alter padding
- if (systemVersion < 0x1070) {
+ if (!isOSVersionAtLeast10_7_0) {
return superFrame;
}
@@ -159,7 +158,7 @@ static NSUInteger SPFavoritesOutlineViewUnindent = 6;
}
// On versions of Lion or above, amend the padding appropriately
- if (systemVersion >= 0x1070) {
+ if (isOSVersionAtLeast10_7_0) {
return NSMakeRect(superFrame.origin.x + SPFavoritesOutlineViewUnindent, superFrame.origin.y, superFrame.size.width, superFrame.size.height);
}
diff --git a/Source/SPFieldEditorController.h b/Source/SPFieldEditorController.h
index b56c6d1c..ec36c9d2 100644
--- a/Source/SPFieldEditorController.h
+++ b/Source/SPFieldEditorController.h
@@ -28,6 +28,21 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
+#ifndef SP_CODA
+
+#import <Quartz/Quartz.h> // QuickLookUI
+
+//This is an informal protocol
+@protocol _QLPreviewPanelController
+
+- (BOOL)acceptsPreviewPanelControl:(QLPreviewPanel *)panel;
+- (void)beginPreviewPanelControl:(QLPreviewPanel *)panel;
+- (void)endPreviewPanelControl:(QLPreviewPanel *)panel;
+
+@end
+
+#endif
+
@class SPWindow;
/**
@@ -38,7 +53,11 @@
* This class offers a sheet for editing different kind of data such as text, blobs (including images) as
* editSheet and bit fields as bitSheet.
*/
-@interface SPFieldEditorController : NSWindowController <NSComboBoxDataSource>
+@interface SPFieldEditorController : NSWindowController <NSComboBoxDataSource
+#ifndef SP_CODA
+, QLPreviewPanelDataSource, QLPreviewPanelDelegate, _QLPreviewPanelController
+#endif
+>
{
IBOutlet id editSheetProgressBar;
IBOutlet id editSheetSegmentControl;
@@ -176,6 +195,31 @@
@property(readwrite, retain) NSDictionary *editedFieldInfo;
+//don't blame me for nonatomic,assign. That's how the previous setters worked :)
+
+/**
+ * The maximum text length of the underlying table field for input validation.
+ */
+@property(nonatomic,assign) unsigned long long textMaxLength;
+
+/**
+ * The field type of the underlying table field for input validation.
+ * The field type will be used for dispatching which sheet will be shown.
+ * If type == BIT the bitSheet will be used otherwise the editSheet.
+ */
+@property(nonatomic,assign) NSString *fieldType;
+
+/**
+ * The field encoding of the underlying table field for displaying it to the user.
+ */
+@property(nonatomic,assign) NSString *fieldEncoding;
+
+/**
+ * Whether underlying table field allows NULL for several validations.
+ * If allowNULL is YES NULL value is allowed for the underlying table field.
+ */
+@property(nonatomic,assign) BOOL allowNULL;
+
- (IBAction)closeEditSheet:(id)sender;
- (IBAction)openEditSheet:(id)sender;
- (void)openPanelDidEnd:(NSOpenPanel *)panel returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo;
@@ -196,11 +240,6 @@
isObjectBlob:(BOOL)isFieldBlob isEditable:(BOOL)isEditable withWindow:(NSWindow *)theWindow
sender:(id)sender contextInfo:(NSDictionary*)theContextInfo;
-- (void)setTextMaxLength:(NSUInteger)length;
-- (void)setFieldType:(NSString*)aType;
-- (void)setFieldEncoding:(NSString*)aEncoding;
-- (void)setAllowNULL:(BOOL)allowNULL;
-
- (void)processPasteImageData;
- (void)processUpdatedImageData:(NSData *)data;
diff --git a/Source/SPFieldEditorController.m b/Source/SPFieldEditorController.m
index 9c2de5fc..c791dfc5 100644
--- a/Source/SPFieldEditorController.m
+++ b/Source/SPFieldEditorController.m
@@ -29,9 +29,6 @@
// More info at <https://github.com/sequelpro/sequelpro>
#import "SPFieldEditorController.h"
-#ifndef SP_CODA
-#import "QLPreviewPanel.h"
-#endif
#import "RegexKitLite.h"
#import "SPTooltip.h"
#import "SPGeometryDataView.h"
@@ -43,6 +40,12 @@
#import <SPMySQL/SPMySQL.h>
+typedef enum {
+ TextSegment = 0,
+ ImageSegment,
+ HexSegment
+} FieldEditorSegment;
+
@interface SPFieldEditorController (SPFieldEditorControllerDelegate)
- (void)processFieldEditorResult:(id)data contextInfo:(NSDictionary*)contextInfo;
@@ -52,6 +55,10 @@
@implementation SPFieldEditorController
@synthesize editedFieldInfo;
+@synthesize textMaxLength = maxTextLength;
+@synthesize fieldType;
+@synthesize fieldEncoding;
+@synthesize allowNULL = _allowNULL;
/**
* Initialise an instance of SPFieldEditorController using the XIB “FieldEditorSheet.xib”. Init the available Quciklook format by reading
@@ -143,7 +150,7 @@
}
}
- qlTypes = [[NSDictionary dictionaryWithObject:qlTypesItems forKey:SPQuickLookTypes] retain];
+ qlTypes = [@{SPQuickLookTypes : qlTypesItems} retain];
[qlTypesItems release];
#endif
@@ -164,19 +171,19 @@
#ifndef SP_CODA
// On Mac OSX 10.6 QuickLook runs non-modal thus order out the panel
// if still visible
- if ([[NSClassFromString(@"QLPreviewPanel") sharedPreviewPanel] isVisible]) {
- [[NSClassFromString(@"QLPreviewPanel") sharedPreviewPanel] orderOut:nil];
+ if ([[QLPreviewPanel sharedPreviewPanel] isVisible]) {
+ [[QLPreviewPanel sharedPreviewPanel] orderOut:nil];
}
#endif
- if ( sheetEditData ) [sheetEditData release];
+ if ( sheetEditData ) SPClear(sheetEditData);
#ifndef SP_CODA
- if ( qlTypes ) [qlTypes release];
+ if ( qlTypes ) SPClear(qlTypes);
#endif
- if ( tmpFileName ) [tmpFileName release];
- if ( tmpDirPath ) [tmpDirPath release];
- if ( esUndoManager ) [esUndoManager release];
- if ( contextInfo ) [contextInfo release];
+ if ( tmpFileName ) SPClear(tmpFileName);
+ if ( tmpDirPath ) SPClear(tmpDirPath);
+ if ( esUndoManager ) SPClear(esUndoManager);
+ if ( contextInfo ) SPClear(contextInfo);
[super dealloc];
}
@@ -343,7 +350,7 @@
[editSheetQuickLookButton setHidden:((!_isBlob && !isBinary) || _isGeometry)];
[editSheetSegmentControl setHidden:(!_isBlob && !isBinary && !_isGeometry)];
- [editSheetSegmentControl setEnabled:YES forSegment:1];
+ [editSheetSegmentControl setEnabled:YES forSegment:ImageSegment];
// Set window's min size since no segment and quicklook buttons are hidden
if (_isBlob || isBinary || _isGeometry) {
@@ -398,7 +405,7 @@
[editImage setHidden:YES];
[editTextView setHidden:YES];
[editTextScrollView setHidden:YES];
- [editSheetSegmentControl setSelectedSegment:2];
+ [editSheetSegmentControl setSelectedSegment:HexSegment];
}
else if ([sheetEditData isKindOfClass:[SPMySQLGeometryData class]]) {
SPGeometryDataView *v = [[[SPGeometryDataView alloc] initWithCoordinates:[sheetEditData coordinates] targetDimension:2000.0f] autorelease];
@@ -410,8 +417,8 @@
[hexTextView setString:@""];
[hexTextView setHidden:YES];
[hexTextScrollView setHidden:YES];
- [editSheetSegmentControl setEnabled:NO forSegment:2];
- [editSheetSegmentControl setSelectedSegment:0];
+ [editSheetSegmentControl setEnabled:NO forSegment:HexSegment];
+ [editSheetSegmentControl setSelectedSegment:TextSegment];
[editTextView setHidden:NO];
[editTextScrollView setHidden:NO];
}
@@ -425,7 +432,7 @@
[editImage setHidden:YES];
[editTextView setHidden:NO];
[editTextScrollView setHidden:NO];
- [editSheetSegmentControl setSelectedSegment:0];
+ [editSheetSegmentControl setSelectedSegment:TextSegment];
}
if (image) {
@@ -436,7 +443,7 @@
if(!_isGeometry) {
[editTextView setHidden:YES];
[editTextScrollView setHidden:YES];
- [editSheetSegmentControl setSelectedSegment:1];
+ [editSheetSegmentControl setSelectedSegment:ImageSegment];
}
}
else {
@@ -452,13 +459,13 @@
[hexTextScrollView setHidden:YES];
}
else {
- [editSheetSegmentControl setEnabled:NO forSegment:1];
+ [editSheetSegmentControl setEnabled:NO forSegment:ImageSegment];
}
[editImage setHidden:YES];
[editTextView setHidden:NO];
[editTextScrollView setHidden:NO];
- [editSheetSegmentControl setSelectedSegment:0];
+ [editSheetSegmentControl setSelectedSegment:TextSegment];
}
// Locate the caret in editTextView
@@ -477,7 +484,7 @@
[usedSheet makeFirstResponder:image == nil || _isGeometry ? editTextView : editImage];
}
- if (stringValue) [stringValue release], stringValue = nil;
+ if (stringValue) SPClear(stringValue);
editSheetWillBeInitialized = NO;
@@ -486,52 +493,12 @@
}
/**
- * Set the maximum text length of the underlying table field for input validation.
- *
- * @param length The maximum text length
- */
-- (void)setTextMaxLength:(NSUInteger)length
-{
- maxTextLength = length;
-}
-
-/**
- * Set the field type of the underlying table field for input validation.
- *
- * @param aType The field type which will be used for dispatching which sheet will be shown. If type == BIT the bitSheet will be used otherwise the editSheet.
- */
-- (void)setFieldType:(NSString*)aType
-{
- fieldType = aType;
-}
-
-/**
- * Set the field encoding of the underlying table field for displaying it to the user.
- *
- * @param aEncoding encoding
- */
-- (void)setFieldEncoding:(NSString*)aEncoding
-{
- fieldEncoding = aEncoding;
-}
-
-/**
- * Set if underlying table field allows NULL for several validations.
- *
- * @param allowNULL If allowNULL is YES NULL value is allowed for the underlying table field
- */
-- (void)setAllowNULL:(BOOL)allowNULL
-{
- _allowNULL = allowNULL;
-}
-
-/**
* Segement controller for text/image/hex buttons in editSheet
*/
- (IBAction)segmentControllerChanged:(id)sender
{
- switch([sender selectedSegment]){
- case 0: // text
+ switch((FieldEditorSegment)[sender selectedSegment]){
+ case TextSegment:
[editTextView setHidden:NO];
[editTextScrollView setHidden:NO];
[editImage setHidden:YES];
@@ -542,7 +509,7 @@
[[NSApp mainWindow] makeFirstResponder:editTextView];
#endif
break;
- case 1: // image
+ case ImageSegment:
[editTextView setHidden:YES];
[editTextScrollView setHidden:YES];
[editImage setHidden:NO];
@@ -550,7 +517,7 @@
[hexTextScrollView setHidden:YES];
[usedSheet makeFirstResponder:editImage];
break;
- case 2: // hex - load on demand
+ case HexSegment:
[usedSheet makeFirstResponder:hexTextView];
if([[hexTextView string] isEqualToString:@""]) {
[editSheetProgressBar startAnimation:self];
@@ -590,7 +557,7 @@
{
NSSavePanel *panel = [NSSavePanel savePanel];
- if ([editSheetSegmentControl selectedSegment] == 1 && [sheetEditData isKindOfClass:[SPMySQLGeometryData class]]) {
+ if ([editSheetSegmentControl selectedSegment] == ImageSegment && [sheetEditData isKindOfClass:[SPMySQLGeometryData class]]) {
[panel setAllowedFileTypes:@[@"pdf"]];
[panel setAllowsOtherFileTypes:NO];
}
@@ -718,7 +685,7 @@
// If the image cell now contains a valid image, select the image view
if (image) {
- [editSheetSegmentControl setSelectedSegment:1];
+ [editSheetSegmentControl setSelectedSegment:ImageSegment];
[hexTextView setHidden:YES];
[hexTextScrollView setHidden:YES];
[editImage setHidden:NO];
@@ -727,7 +694,7 @@
// Otherwise deselect the image view
} else {
- [editSheetSegmentControl setSelectedSegment:0];
+ [editSheetSegmentControl setSelectedSegment:TextSegment];
[hexTextView setHidden:YES];
[hexTextScrollView setHidden:YES];
[editImage setHidden:YES];
@@ -761,7 +728,7 @@
}
else if ( [sheetEditData isKindOfClass:[SPMySQLGeometryData class]] ) {
- if ( [editSheetSegmentControl selectedSegment] == 0 || editImage == nil ) {
+ if ( [editSheetSegmentControl selectedSegment] == TextSegment || editImage == nil ) {
[[editTextView string] writeToURL:fileURL
atomically:YES
@@ -882,90 +849,34 @@
- (void)invokeQuickLookOfType:(NSString *)type treatAsText:(BOOL)isText
{
#ifndef SP_CODA
- // Load QL via private framework (SDK 10.5)
- if([[NSBundle bundleWithPath:@"/System/Library/PrivateFrameworks/QuickLookUI.framework"] load]) {
-
- [editSheetProgressBar startAnimation:self];
-
- [self createTemporaryQuickLookFileOfType:type treatAsText:isText];
-
- counter++;
-
- // Init QuickLook
- id ql = [NSClassFromString(@"QLPreviewPanel") sharedPreviewPanel];
-
- [[ql delegate] setDelegate:self];
- [ql setURLs:[NSArray arrayWithObject:
- [NSURL fileURLWithPath:tmpFileName]] currentIndex:0 preservingDisplayState:YES];
-
- // TODO: No interaction with iChat and iPhoto due to .scriptSuite warning:
- // unknown image format
- [ql setShowsAddToiPhotoButton:NO];
- [ql setShowsiChatTheaterButton:NO];
- // Since we are inside of editSheet we have to avoid full-screen zooming
- // otherwise QuickLook hangs
- [ql setShowsFullscreenButton:NO];
- [ql setEnableDragNDrop:NO];
- // Order out QuickLook with animation effect according to self:previewPanel:frameForURL:
- [ql makeKeyAndOrderFrontWithEffect:2]; // 1 = fade in
-
- // quickLookCloseMarker == 1 break the modal session
- quickLookCloseMarker = 0;
-
- [editSheetProgressBar stopAnimation:self];
-
- // Run QuickLook in its own modal seesion for event handling
- NSModalSession session = [NSApp beginModalSessionForWindow:ql];
- for (;;) {
- // Conditions for closing QuickLook
- if ([NSApp runModalSession:session] != NSRunContinuesResponse
- || quickLookCloseMarker == 1
- || ![ql isVisible])
- break;
- [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode
- beforeDate:[NSDate distantFuture]];
-
- }
- [NSApp endModalSession:session];
-
- // set ql's delegate to nil for dealloc
- [[ql windowController] setDelegate:nil];
-
- }
- // Load QL via framework (SDK 10.5 but SP runs on 10.6)
- // TODO: This is an hack in order to be able to support QuickLook on Mac OS X 10.5 and 10.6
- // as long as SP will be compiled against SDK 10.5.
- // If SP will be compiled against SDK 10.6 we can use the standard way by using
- // the QuickLookUI which is part of the Quartz.framework. See Developer example "QuickLookDownloader"
+ // See Developer example "QuickLookDownloader"
// file:///Developer/Documentation/DocSets/com.apple.adc.documentation.AppleSnowLeopard.CoreReference.docset/Contents/Resources/Documents/samplecode/QuickLookDownloader/index.html#//apple_ref/doc/uid/DTS40009082
- else if([[NSBundle bundleWithPath:@"/System/Library/Frameworks/Quartz.framework/Frameworks/QuickLookUI.framework"] load]) {
- [editSheetProgressBar startAnimation:self];
+ [editSheetProgressBar startAnimation:self];
- [self createTemporaryQuickLookFileOfType:type treatAsText:isText];
+ [self createTemporaryQuickLookFileOfType:type treatAsText:isText];
- counter++;
+ counter++;
- // TODO: If QL is visible reload it - but how?
- // Up to now QL will close and the user has to redo it.
- if([[NSClassFromString(@"QLPreviewPanel") sharedPreviewPanel] isVisible]) {
- [[NSClassFromString(@"QLPreviewPanel") sharedPreviewPanel] orderOut:nil];
- }
+ // TODO: If QL is visible reload it - but how?
+ // Up to now QL will close and the user has to redo it.
+ if([[QLPreviewPanel sharedPreviewPanel] isVisible]) {
+ [[QLPreviewPanel sharedPreviewPanel] orderOut:nil];
+ }
- [[NSClassFromString(@"QLPreviewPanel") sharedPreviewPanel] makeKeyAndOrderFront:nil];
+ [[QLPreviewPanel sharedPreviewPanel] makeKeyAndOrderFront:nil];
- [editSheetProgressBar stopAnimation:self];
+ [editSheetProgressBar stopAnimation:self];
- } else {
- [SPTooltip showWithObject:[NSString stringWithFormat:@"QuickLook is not available on that platform."]];
- }
#endif
}
+#pragma mark - QLPreviewPanelController methods
+
/**
* QuickLook delegate for SDK 10.6. Set the Quicklook delegate to self and suppress setShowsAddToiPhotoButton since the format is unknow.
*/
-- (void)beginPreviewPanelControl:(id)panel
+- (void)beginPreviewPanelControl:(QLPreviewPanel *)panel
{
#ifndef SP_CODA
@@ -973,15 +884,13 @@
[panel setDelegate:self];
[panel setDataSource:self];
- // Due to the unknown image format disable image sharing
- [panel setShowsAddToiPhotoButton:NO];
#endif
}
/**
* QuickLook delegate for SDK 10.6 - not in usage.
*/
-- (void)endPreviewPanelControl:(id)panel
+- (void)endPreviewPanelControl:(QLPreviewPanel *)panel
{
// This document loses its responsisibility on the preview panel
// Until the next call to -beginPreviewPanelControl: it must not
@@ -991,22 +900,19 @@
/**
* QuickLook delegate for SDK 10.6
*/
-- (BOOL)acceptsPreviewPanelControl:(id)panel;
+- (BOOL)acceptsPreviewPanelControl:(QLPreviewPanel *)panel;
{
return YES;
}
-// QuickLook delegates for SDK 10.6
-// - (BOOL)previewPanel:(QLPreviewPanel *)panel handleEvent:(NSEvent *)event
-// {
-// }
+#pragma mark - QLPreviewPanelDataSource methods
/**
* QuickLook delegate for SDK 10.6.
*
* @return It always returns 1.
*/
-- (NSInteger)numberOfPreviewItemsInPreviewPanel:(id)panel
+- (NSInteger)numberOfPreviewItemsInPreviewPanel:(QLPreviewPanel *)panel
{
return 1;
}
@@ -1016,7 +922,7 @@
*
* @return It returns as NSURL the temporarily created file.
*/
-- (id)previewPanel:(id)panel previewItemAtIndex:(NSInteger)anIndex
+- (id)previewPanel:(QLPreviewPanel *)panel previewItemAtIndex:(NSInteger)anIndex
{
if(tmpFileName)
return [NSURL fileURLWithPath:tmpFileName];
@@ -1024,33 +930,19 @@
return nil;
}
-/**
- * QuickLook delegate for SDK 10.5.
- *
- * @return It returns the frame of the application's middle. If an empty frame is returned then the panel will fade in/out instead.
- */
-- (NSRect)previewPanel:(NSPanel*)panel frameForURL:(NSURL*)URL
-{
-
- // Close modal session defined in invokeQuickLookOfType:
- // if user closes the QuickLook view
- quickLookCloseMarker = 1;
-
- // Return the App's middle point
- NSRect mwf = [[NSApp mainWindow] frame];
- return NSMakeRect(
- mwf.origin.x+mwf.size.width/2,
- mwf.origin.y+mwf.size.height/2,
- 5, 5);
+#pragma mark - QLPreviewPanelDelegate methods
-}
+// QuickLook delegates for SDK 10.6
+// - (BOOL)previewPanel:(QLPreviewPanel *)panel handleEvent:(NSEvent *)event
+// {
+// }
/**
* QuickLook delegate for SDK 10.6.
*
* @return It returns the frame of the application's middle. If an empty frame is returned then the panel will fade in/out instead.
*/
-- (NSRect)previewPanel:(id)panel sourceFrameOnScreenForPreviewItem:(id)item
+- (NSRect)previewPanel:(QLPreviewPanel *)panel sourceFrameOnScreenForPreviewItem:(id)item
{
// Return the App's middle point
NSRect mwf = [[NSApp mainWindow] frame];
@@ -1066,6 +958,8 @@
// return [NSImage imageNamed:@"database"];
// }
+#pragma mark -
+
/**
* Called by (SPImageView) if an image was pasted into the editSheet
*/
@@ -1079,8 +973,6 @@
image = [[[NSImage alloc] initWithPasteboard:[NSPasteboard generalPasteboard]] autorelease];
if (image) {
- if (nil != sheetEditData) [sheetEditData release];
-
[editImage setImage:image];
if( sheetEditData ) [sheetEditData release];
diff --git a/Source/SPFieldMapperController.h b/Source/SPFieldMapperController.h
index a12adcb8..76b65c49 100644
--- a/Source/SPFieldMapperController.h
+++ b/Source/SPFieldMapperController.h
@@ -33,7 +33,7 @@
@class SPTablesList;
@class SPMySQLConnection;
-@interface SPFieldMapperController : NSWindowController <NSTokenFieldCellDelegate>
+@interface SPFieldMapperController : NSWindowController <NSTokenFieldCellDelegate, NSMenuDelegate>
{
IBOutlet SPTableView *fieldMapperTableView;
IBOutlet NSScrollView *fieldMapperTableScrollView;
@@ -110,9 +110,9 @@
NSMutableArray *fieldMappingTableDefaultValues;
NSMutableArray *defaultFieldTypesForComboBox;
- NSNumber *doImport;
- NSNumber *doNotImport;
- NSNumber *isEqual;
+ NSNumber *doImportKey;
+ NSNumber *doNotImportKey;
+ NSNumber *isEqualKey;
NSString *doImportString;
NSString *doNotImportString;
NSString *isEqualString;
@@ -135,6 +135,7 @@
NSUInteger windowMinHeigth;
NSInteger numberOfImportColumns;
NSInteger fieldMappingCurrentRow;
+ NSInteger firstDefaultItemOffset;
BOOL fieldMappingImportArrayIsPreview;
BOOL importFieldNamesHeader;
diff --git a/Source/SPFieldMapperController.m b/Source/SPFieldMapperController.m
index 397c017f..9bef9d03 100644
--- a/Source/SPFieldMapperController.m
+++ b/Source/SPFieldMapperController.m
@@ -53,6 +53,10 @@ static NSString *SPTableViewSqlColumnID = @"sql";
static NSUInteger SPSourceColumnTypeText = 0;
static NSUInteger SPSourceColumnTypeInteger = 1;
+@interface SPFieldMapperController (Private)
+- (void)_setupFieldMappingPopUpMenus;
+@end
+
@implementation SPFieldMapperController
@synthesize sourcePath;
@@ -83,11 +87,11 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
fieldMappingGlobalValuesSQLMarked = [[NSMutableArray alloc] init];
fieldMappingArray = nil;
- lastDisabledCSVFieldcolumn = [NSNumber numberWithInteger:0];
+ lastDisabledCSVFieldcolumn = @0;
- doImport = [NSNumber numberWithInteger:0];
- doNotImport = [NSNumber numberWithInteger:1];
- isEqual = [NSNumber numberWithInteger:2];
+ doImportKey = @0;
+ doNotImportKey = @1;
+ isEqualKey = @2;
doImportString = @"―";
doNotImportString = @" ";
isEqualString = @"=";
@@ -162,7 +166,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
}
- [defaultFieldTypesForComboBox setArray:[NSArray arrayWithObjects:
+ [defaultFieldTypesForComboBox setArray:@[
@"VARCHAR(255)",
@"CHAR(63)",
@"TEXT",
@@ -172,9 +176,8 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
@"DATE",
@"DATETIME",
@"TIME",
- @"TIMESTAMP",
- nil
- ]];
+ @"TIMESTAMP"
+ ]];
[importFieldNamesHeaderSwitch setState:importFieldNamesHeader];
@@ -216,20 +219,20 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
- (void)dealloc
{
- if (mySQLConnection) [mySQLConnection release];
- if (sourcePath) [sourcePath release];
- if (fieldMappingTableColumnNames) [fieldMappingTableColumnNames release];
- if (defaultFieldTypesForComboBox) [defaultFieldTypesForComboBox release];
- if (fieldMappingTableTypes) [fieldMappingTableTypes release];
- if (fieldMappingArray) [fieldMappingArray release];
- if (fieldMappingButtonOptions) [fieldMappingButtonOptions release];
- if (fieldMappingOperatorOptions) [fieldMappingOperatorOptions release];
- if (fieldMappingOperatorArray) [fieldMappingOperatorArray release];
- if (fieldMappingGlobalValues) [fieldMappingGlobalValues release];
- if (fieldMappingGlobalValuesSQLMarked) [fieldMappingGlobalValuesSQLMarked release];
- if (fieldMappingTableDefaultValues) [fieldMappingTableDefaultValues release];
- if (primaryKeyFields) [primaryKeyFields release];
- if (toBeEditedRowIndexes) [toBeEditedRowIndexes release];
+ if (mySQLConnection) SPClear(mySQLConnection);
+ if (sourcePath) SPClear(sourcePath);
+ if (fieldMappingTableColumnNames) SPClear(fieldMappingTableColumnNames);
+ if (defaultFieldTypesForComboBox) SPClear(defaultFieldTypesForComboBox);
+ if (fieldMappingTableTypes) SPClear(fieldMappingTableTypes);
+ if (fieldMappingArray) SPClear(fieldMappingArray);
+ if (fieldMappingButtonOptions) SPClear(fieldMappingButtonOptions);
+ if (fieldMappingOperatorOptions) SPClear(fieldMappingOperatorOptions);
+ if (fieldMappingOperatorArray) SPClear(fieldMappingOperatorArray);
+ if (fieldMappingGlobalValues) SPClear(fieldMappingGlobalValues);
+ if (fieldMappingGlobalValuesSQLMarked) SPClear(fieldMappingGlobalValuesSQLMarked);
+ if (fieldMappingTableDefaultValues) SPClear(fieldMappingTableDefaultValues);
+ if (primaryKeyFields) SPClear(primaryKeyFields);
+ if (toBeEditedRowIndexes) SPClear(toBeEditedRowIndexes);
[super dealloc];
}
@@ -310,7 +313,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
{
NSInteger i = 0;
for(id item in fieldMappingArray) {
- if([item intValue] >= numberOfImportColumns && NSArrayObjectAtIndex(fieldMappingOperatorArray, i) != doNotImport)
+ if([item intValue] >= numberOfImportColumns && ![doNotImportKey isEqualToNumber:NSArrayObjectAtIndex(fieldMappingOperatorArray, i)])
return YES;
i++;
}
@@ -456,7 +459,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
for(columnIndex = 0; columnIndex < numberOfColumns; columnIndex++) {
// Skip fields which aren't marked as imported
- if ([fieldMappingOperatorArray objectAtIndex:columnIndex] != doImport) {
+ if (![doImportKey isEqualToNumber:[fieldMappingOperatorArray objectAtIndex:columnIndex]]) {
continue;
}
@@ -602,7 +605,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
// Update the table view
fieldMappingCurrentRow = 0;
- if (fieldMappingArray) [fieldMappingArray release], fieldMappingArray = nil;
+ if (fieldMappingArray) SPClear(fieldMappingArray);
[self setupFieldMappingArray];
[rowDownButton setEnabled:NO];
[rowUpButton setEnabled:([fieldMappingImportArray count] > 1)];
@@ -611,16 +614,16 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
[self updateFieldMappingButtonCell];
[self updateFieldMappingOperatorOptions];
- // Set all operators to doNotImport
+ // Set all operators to doNotImportKey
[fieldMappingOperatorArray removeAllObjects];
for(i=0; i < [fieldMappingTableColumnNames count]; i++)
- [fieldMappingOperatorArray addObject:doNotImport];
+ [fieldMappingOperatorArray addObject:doNotImportKey];
// Set the first n operators to doImport
if([fieldMappingImportArray count]) {
NSUInteger possibleImports = ([NSArrayObjectAtIndex(fieldMappingImportArray, 0) count] > [fieldMappingTableColumnNames count]) ? [fieldMappingTableColumnNames count] : [NSArrayObjectAtIndex(fieldMappingImportArray, 0) count];
for(i=0; i < possibleImports; i++)
- [fieldMappingOperatorArray replaceObjectAtIndex:i withObject:doImport];
+ [fieldMappingOperatorArray replaceObjectAtIndex:i withObject:doImportKey];
}
// Disable Import button if no fields are available
@@ -639,6 +642,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
[self updateFieldNameAlignment];
+ [self _setupFieldMappingPopUpMenus];
[fieldMapperTableView reloadData];
}
@@ -687,12 +691,12 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
[advancedBox setHidden:YES];
}
- // If operator is set to = for UPDATE method replace it by doNotImport
+ // If operator is set to = for UPDATE method replace it by doNotImportKey
if(![[importMethodPopup titleOfSelectedItem] isEqualToString:@"UPDATE"]) {
[advancedButton setEnabled:YES];
for(i=0; i<[fieldMappingTableColumnNames count]; i++) {
- if([fieldMappingOperatorArray objectAtIndex:i] == isEqual) {
- [fieldMappingOperatorArray replaceObjectAtIndex:i withObject:doNotImport];
+ if([isEqualKey isEqualToNumber:[fieldMappingOperatorArray objectAtIndex:i]]) {
+ [fieldMappingOperatorArray replaceObjectAtIndex:i withObject:doNotImportKey];
}
}
} else {
@@ -702,6 +706,8 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
[self validateImportButton];
[self updateFieldMappingOperatorOptions];
+
+ [self _setupFieldMappingPopUpMenus];
[fieldMapperTableView reloadData];
}
@@ -716,23 +722,23 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
if(possibleImports < 1) return;
- // Set all operators to doNotImport
+ // Set all operators to doNotImportKey
[fieldMappingOperatorArray removeAllObjects];
for(i=0; i < [fieldMappingTableColumnNames count]; i++)
- [fieldMappingOperatorArray addObject:doNotImport];
+ [fieldMappingOperatorArray addObject:doNotImportKey];
switch([[alignByPopup selectedItem] tag]) {
case 0: // file order
for(j=0; j<possibleImports; j++) {
[fieldMappingArray replaceObjectAtIndex:j withObject:[NSNumber numberWithInteger:j]];
- [fieldMappingOperatorArray replaceObjectAtIndex:j withObject:doImport];
+ [fieldMappingOperatorArray replaceObjectAtIndex:j withObject:doImportKey];
}
break;
case 1: // reversed file order
possibleImports--;
for(j=possibleImports; j>=0; j--) {
[fieldMappingArray replaceObjectAtIndex:possibleImports-j withObject:[NSNumber numberWithInteger:j]];
- [fieldMappingOperatorArray replaceObjectAtIndex:possibleImports-j withObject:doImport];
+ [fieldMappingOperatorArray replaceObjectAtIndex:possibleImports - j withObject:doImportKey];
}
break;
case 2: // try to align header and table target field names via Levenshtein distance
@@ -906,7 +912,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
// Update the table view
fieldMappingCurrentRow = 0;
- if (fieldMappingArray) [fieldMappingArray release], fieldMappingArray = nil;
+ if (fieldMappingArray) SPClear(fieldMappingArray);
[self setupFieldMappingArray];
[rowDownButton setEnabled:NO];
[rowUpButton setEnabled:([fieldMappingImportArray count] > 1)];
@@ -915,11 +921,12 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
[self updateFieldMappingButtonCell];
[self updateFieldMappingOperatorOptions];
- // Set all operators to doNotImport
+ // Set all operators to doNotImportKey
[fieldMappingOperatorArray removeAllObjects];
for (i=0; i < [fieldMappingTableColumnNames count]; i++)
- [fieldMappingOperatorArray addObject:doImport];
+ [fieldMappingOperatorArray addObject:doImportKey];
+ [self _setupFieldMappingPopUpMenus];
[fieldMapperTableView reloadData];
[self validateImportButton];
}
@@ -930,7 +937,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
- (IBAction)addNewColumn:(id)sender
{
- [fieldMappingOperatorArray addObject:doNotImport];
+ [fieldMappingOperatorArray addObject:doNotImportKey];
[fieldMappingTableColumnNames addObject:NSLocalizedString(@"New Column Name", @"new column name placeholder string")];
[fieldMappingTableTypes addObject:@"VARCHAR(255)"];
[fieldMappingTableDefaultValues addObject:@""];
@@ -940,6 +947,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
[fieldMappingArray addObject:[NSNumber numberWithInteger:newIndex]];
[toBeEditedRowIndexes addIndex:newIndex];
+ [self _setupFieldMappingPopUpMenus];
[fieldMapperTableView reloadData];
[fieldMapperTableView editColumn:2 row:newIndex withEvent:nil select:YES];
@@ -978,6 +986,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
currentIndex = [toBeEditedRowIndexes indexGreaterThanIndex:currentIndex];
}
+ [self _setupFieldMappingPopUpMenus];
[fieldMapperTableView reloadData];
}
@@ -1120,7 +1129,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
- (IBAction)addGlobalValue:(id)sender
{
[fieldMappingGlobalValues addObject:@""];
- [fieldMappingGlobalValuesSQLMarked addObject:[NSNumber numberWithBool:NO]];
+ [fieldMappingGlobalValuesSQLMarked addObject:@NO];
[globalValuesTableView reloadData];
[globalValuesTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:[fieldMappingGlobalValues count]-1-numberOfImportColumns] byExtendingSelection:NO];
[globalValuesTableView editColumn:1 row:[fieldMappingGlobalValues count]-1-numberOfImportColumns withEvent:nil select:YES];
@@ -1176,17 +1185,19 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
[fieldMappingArray replaceObjectAtIndex:[fieldMapperTableView selectedRow] withObject:[NSNumber numberWithInteger:[globalValuesTableView selectedRow]+numberOfImportColumns]];
- // Set corresponding operator to doImport if not set to isEqual
- if([fieldMappingOperatorArray objectAtIndex:[fieldMapperTableView selectedRow]] != isEqual)
- [fieldMappingOperatorArray replaceObjectAtIndex:[fieldMapperTableView selectedRow] withObject:doImport];
-
- [fieldMapperTableView reloadData];
+ // Set corresponding operator to doImport if not set to isEqualKey
+ if(![isEqualKey isEqualToNumber:[fieldMappingOperatorArray objectAtIndex:[fieldMapperTableView selectedRow]]])
+ [fieldMappingOperatorArray replaceObjectAtIndex:[fieldMapperTableView selectedRow] withObject:doImportKey];
// Set alignment popup to "custom order"
[alignByPopup selectItemWithTag:3];
}
+ // This must happen before orderOut:nil as that might cause the tableview to redraw which would in turn invalidate
+ // a newly added globalValue when updateFieldMappingButtonCell has not been run before.
+ [self updateFieldMappingButtonCell];
+
[NSApp endSheet:globalValuesSheet returnCode:[sender tag]];
}
@@ -1369,7 +1380,6 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
if (sheet == globalValuesSheet) {
addGlobalSheetIsOpen = NO;
- [self updateFieldMappingButtonCell];
}
}
@@ -1432,7 +1442,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
}
// Sort the matrix according distance
- NSSortDescriptor *sortByDistance = [[[NSSortDescriptor alloc] initWithKey:@"dist" ascending:TRUE] autorelease];
+ NSSortDescriptor *sortByDistance = [[[NSSortDescriptor alloc] initWithKey:@"dist" ascending:YES] autorelease];
[distMatrix sortUsingDescriptors:[NSArray arrayWithObjects:sortByDistance, nil]];
NSMutableArray *matchedFile = [NSMutableArray array];
@@ -1445,7 +1455,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
// Set best match
[fieldMappingArray replaceObjectAtIndex:match.location withObject:[NSNumber numberWithInteger:match.length]];
- [fieldMappingOperatorArray replaceObjectAtIndex:match.location withObject:doImport];
+ [fieldMappingOperatorArray replaceObjectAtIndex:match.location withObject:doImportKey];
// Remember matched pair
[matchedTable addObject:[m objectForKey:@"table"]];
@@ -1509,6 +1519,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
[fieldMappingButtonOptions addObject:[NSString stringWithFormat:@"%li. %@", (long)i+1, NSArrayObjectAtIndex(fieldMappingGlobalValues, i)]];
}
+ [self _setupFieldMappingPopUpMenus];
[fieldMapperTableView reloadData];
}
@@ -1563,7 +1574,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
return;
}
for (NSUInteger i = 0; i < [fieldMappingTableColumnNames count]; i++) {
- if (![[fieldMappingTableColumnNames objectAtIndex:i] length] && [fieldMappingOperatorArray objectAtIndex:i] == doImport) {
+ if (![[fieldMappingTableColumnNames objectAtIndex:i] length] && [doImportKey isEqualToNumber:[fieldMappingOperatorArray objectAtIndex:i]]) {
[importButton setEnabled:NO];
return;
}
@@ -1579,7 +1590,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
if ([[self selectedImportMethod] isEqualToString:@"UPDATE"]) {
enableImportButton = NO;
for(id op in fieldMappingOperatorArray) {
- if(op == isEqual) {
+ if([isEqualKey isEqualToNumber:op]) {
enableImportButton = YES;
break;
}
@@ -1655,9 +1666,9 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
&& [fieldMappingOperatorArray count]
&& [fieldMappingTableColumnNames count]) {
NSUInteger i;
- NSNumber *globalValue = doImport;
- if([fieldMappingOperatorArray objectAtIndex:0] == doImport)
- globalValue = doNotImport;
+ NSNumber *globalValue = doImportKey;
+ if([doImportKey isEqualToNumber:[fieldMappingOperatorArray objectAtIndex:0]])
+ globalValue = doNotImportKey;
[fieldMappingOperatorArray removeAllObjects];
for(i=0; i < [fieldMappingTableColumnNames count]; i++)
[fieldMappingOperatorArray addObject:globalValue];
@@ -1672,42 +1683,43 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
if(aTableView == fieldMapperTableView) {
- if ([fieldMappingOperatorArray objectAtIndex:rowIndex] == doNotImport) return [NSString stringWithFormat:@"DEFAULT: %@", [fieldMappingTableDefaultValues objectAtIndex:rowIndex]];
+ if([[aTableColumn identifier] isEqualToString:SPTableViewImportValueColumnID]) {
- if([[aTableColumn identifier] isEqualToString:SPTableViewImportValueColumnID] && [importFieldNamesHeaderSwitch state] == NSOnState) {
+ if ([doNotImportKey isEqual:[fieldMappingOperatorArray objectAtIndex:rowIndex]]) return [NSString stringWithFormat:@"DEFAULT: %@", [fieldMappingTableDefaultValues objectAtIndex:rowIndex]];
- if([NSArrayObjectAtIndex(fieldMappingArray, rowIndex) unsignedIntegerValue]>=[NSArrayObjectAtIndex(fieldMappingImportArray, 0) count])
- return [NSString stringWithFormat:@"%@: %@", NSLocalizedString(@"User-defined value", @"user-defined value"), NSArrayObjectAtIndex(fieldMappingGlobalValues, [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue])];
+ if([importFieldNamesHeaderSwitch state] == NSOnState) {
+ if([NSArrayObjectAtIndex(fieldMappingArray, rowIndex) unsignedIntegerValue]>=[NSArrayObjectAtIndex(fieldMappingImportArray, 0) count])
+ return [NSString stringWithFormat:@"%@: %@", NSLocalizedString(@"User-defined value", @"user-defined value"), NSArrayObjectAtIndex(fieldMappingGlobalValues, [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue])];
- if(fieldMappingCurrentRow)
- return [NSString stringWithFormat:@"%@: %@",
- [NSArrayObjectAtIndex(NSArrayObjectAtIndex(fieldMappingImportArray, 0), [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue]) description],
- [NSArrayObjectAtIndex(NSArrayObjectAtIndex(fieldMappingImportArray, fieldMappingCurrentRow), [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue]) description]];
- else
- return [NSArrayObjectAtIndex(NSArrayObjectAtIndex(fieldMappingImportArray, 0), [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue]) description];
+ if(fieldMappingCurrentRow)
+ return [NSString stringWithFormat:@"%@: %@",
+ [NSArrayObjectAtIndex(NSArrayObjectAtIndex(fieldMappingImportArray, 0), [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue]) description],
+ [NSArrayObjectAtIndex(NSArrayObjectAtIndex(fieldMappingImportArray, fieldMappingCurrentRow), [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue]) description]];
+ else
+ return [NSArrayObjectAtIndex(NSArrayObjectAtIndex(fieldMappingImportArray, 0), [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue]) description];
- }
+ }
+ else if([importFieldNamesHeaderSwitch state] == NSOffState) {
+ if([NSArrayObjectAtIndex(fieldMappingArray, rowIndex) unsignedIntegerValue]>=[NSArrayObjectAtIndex(fieldMappingImportArray, 0) count])
+ return NSArrayObjectAtIndex(fieldMappingGlobalValues, [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue]);
+ else
+ return NSArrayObjectAtIndex(NSArrayObjectAtIndex(fieldMappingImportArray, fieldMappingCurrentRow), [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue]);
- else if([[aTableColumn identifier] isEqualToString:SPTableViewImportValueColumnID] && [importFieldNamesHeaderSwitch state] == NSOffState) {
- if([NSArrayObjectAtIndex(fieldMappingArray, rowIndex) unsignedIntegerValue]>=[NSArrayObjectAtIndex(fieldMappingImportArray, 0) count])
- return NSArrayObjectAtIndex(fieldMappingGlobalValues, [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue]);
- else
- return NSArrayObjectAtIndex(NSArrayObjectAtIndex(fieldMappingImportArray, fieldMappingCurrentRow), [NSArrayObjectAtIndex(fieldMappingArray, rowIndex) integerValue]);
+ }
}
else if([[aTableColumn identifier] isEqualToString:SPTableViewOperatorColumnID]) {
- if([aCell objectValue] == doImport)
+ if([doImportKey isEqual:[aCell objectValue]])
return NSLocalizedString(@"Import field", @"import field operator tooltip");
- else if([aCell objectValue] == doNotImport)
+ else if([doNotImportKey isEqual:[aCell objectValue]])
return NSLocalizedString(@"Ignore field", @"ignore field label");
- else if([aCell objectValue] == isEqual)
+ else if([isEqualKey isEqual:[aCell objectValue]])
return NSLocalizedString(@"Do UPDATE where field contents match", @"do update operator tooltip");
- else
- return @"";
}
- else if([[aTableColumn identifier] isEqualToString:SPTableViewTargetFieldColumnID])
+ else if([[aTableColumn identifier] isEqualToString:SPTableViewTargetFieldColumnID]) {
return [fieldMappingTableColumnNames objectAtIndex:rowIndex];
+ }
}
else if(aTableView == globalValuesTableView) {
if ([[aTableColumn identifier] isEqualToString:SPTableViewGlobalValueColumnID])
@@ -1716,32 +1728,64 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
return @"";
}
+- (void)menuNeedsUpdate:(NSMenu *)aMenu
+{
+ // Note: matching aMenu with "==" will most likely not work, as NSTableView copies it.
+ // This technique is based on: http://www.corbinstreehouse.com/blog/2005/07/dynamically-populating-an-nspopupbuttoncell-in-an-nstableview/
+
+ NSInteger rowIndex = [fieldMapperTableView selectedRow];
+ if(rowIndex < 0)
+ return;
+
+ NSInteger rowIndexInMenu = firstDefaultItemOffset + rowIndex;
+ for (NSInteger i = firstDefaultItemOffset; i < [aMenu numberOfItems]; i++) {
+ [[aMenu itemAtIndex:i] setHidden:(i != rowIndexInMenu)];
+ }
+}
+
+- (void)_setupFieldMappingPopUpMenus
+{
+ NSPopUpButtonCell *c = [[fieldMapperTableView tableColumnWithIdentifier:SPTableViewImportValueColumnID] dataCell];
+ NSMenu *m = [c menu];
+ [m setAutoenablesItems:NO];
+ [c removeAllItems];
+ [c addItemsWithTitles:fieldMappingButtonOptions];
+
+ [m addItem:[NSMenuItem separatorItem]];
+
+ [c addItemWithTitle:NSLocalizedString(@"Ignore Field", @"ignore field label")];
+ [c addItemWithTitle:NSLocalizedString(@"Ignore all Fields", @"ignore all fields menu item")];
+ [c addItemWithTitle:NSLocalizedString(@"Import all Fields", @"import all fields menu item")];
+ if([[self selectedImportMethod] isEqualToString:@"UPDATE"])
+ [c addItemWithTitle:NSLocalizedString(@"Match Field", @"match field menu item")];
+
+ [m addItem:[NSMenuItem separatorItem]];
+
+ NSMenuItem *menuItem = [m addItemWithTitle:NSLocalizedString(@"Add Value or Expression…", @"add global value or expression menu item") action:@selector(addGlobalSourceVariable:) keyEquivalent:@"g"];
+ [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)];
+
+ //create all menu items for the "DEFAULT" rows. We will use menuNeedsUpdate: to hide all items that are not needed.
+ //This works because NSTableView will copy the menu before showing it, so menuNeedsUpdate: will work on a disposable copy
+ //while the full menu is never shown (but it's items are displayed in the table view)
+ firstDefaultItemOffset = [m numberOfItems];
+ for (id item in fieldMappingTableDefaultValues) {
+ NSString *label = [NSString stringWithFormat:NSLocalizedString(@"Default: %@",@"import : csv field mapping : field default value"), item];
+ NSMenuItem *defaultItem = [m addItemWithTitle:label action:NULL keyEquivalent:@""];
+ [defaultItem setEnabled:NO];
+ }
+
+ NSPopUpButtonCell *optsCell = [[fieldMapperTableView tableColumnWithIdentifier:SPTableViewOperatorColumnID] dataCell];
+ [optsCell removeAllItems];
+ [optsCell addItemsWithTitles:fieldMappingOperatorOptions];
+}
+
- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
{
if(aTableView == fieldMapperTableView) {
if ([[aTableColumn identifier] isEqualToString:SPTableViewTargetFieldColumnID]) {
- if([toBeEditedRowIndexes containsIndex:rowIndex]) {
- NSTextFieldCell *b = [[[NSTextFieldCell alloc] initTextCell:[fieldMappingTableColumnNames objectAtIndex:rowIndex]] autorelease];
- [b setEditable:YES];
- [b setFont:[NSFont systemFontOfSize:12]];
- [aTableColumn setDataCell:b];
- return b;
- }
- if(newTableMode) {
- NSTextFieldCell *b = [[[NSTextFieldCell alloc] initTextCell:[fieldMappingTableColumnNames objectAtIndex:rowIndex]] autorelease];
- [b setEditable:YES];
- [b setFont:[NSFont systemFontOfSize:12]];
- [aTableColumn setDataCell:b];
- return b;
- } else {
- if ([[aTableColumn dataCell] isKindOfClass:[NSPopUpButtonCell class]]) {
- [(NSPopUpButton *)[aTableColumn dataCell] removeAllItems];
- [(NSPopUpButtonCell *)[aTableColumn dataCell] addItemWithTitle:[fieldMappingTableColumnNames objectAtIndex:rowIndex]];
- }
- return [fieldMappingTableColumnNames objectAtIndex:rowIndex];
- }
+ return [fieldMappingTableColumnNames objectAtIndex:rowIndex];
}
else if ([[aTableColumn identifier] isEqualToString:SPTableViewTypeColumnID]) {
@@ -1766,45 +1810,20 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
else if ([[aTableColumn identifier] isEqualToString:SPTableViewImportValueColumnID]) {
- // Check if all global value was deleted, if so set assigned field as doNotImport
+ // Check if all global value was deleted, if so set assigned field as doNotImportKey
if([[fieldMappingArray objectAtIndex:rowIndex] unsignedIntegerValue] >= [fieldMappingButtonOptions count]) {
- [fieldMappingOperatorArray replaceObjectAtIndex:rowIndex withObject:doNotImport];
+ [fieldMappingOperatorArray replaceObjectAtIndex:rowIndex withObject:doNotImportKey];
}
- if ([[aTableColumn dataCell] isKindOfClass:[NSPopUpButtonCell class]]) {
-
- NSPopUpButtonCell *c = [aTableColumn dataCell];
- NSMenu *m = [c menu];
- [m setAutoenablesItems:NO];
- [c removeAllItems];
- [c addItemsWithTitles:fieldMappingButtonOptions];
- [m addItem:[NSMenuItem separatorItem]];
- [c addItemWithTitle:NSLocalizedString(@"Ignore Field", @"ignore field label")];
- [c addItemWithTitle:NSLocalizedString(@"Ignore all Fields", @"ignore all fields menu item")];
- [c addItemWithTitle:NSLocalizedString(@"Import all Fields", @"import all fields menu item")];
- if([[self selectedImportMethod] isEqualToString:@"UPDATE"])
- [c addItemWithTitle:NSLocalizedString(@"Match Field", @"match field menu item")];
- [m addItem:[NSMenuItem separatorItem]];
- NSMenuItem *menuItem = [m addItemWithTitle:NSLocalizedString(@"Add Value or Expression…", @"add global value or expression menu item") action:@selector(addGlobalSourceVariable:) keyEquivalent:@"g"];
- [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)];
- [c addItemWithTitle:[NSString stringWithFormat:@"DEFAULT: %@", [fieldMappingTableDefaultValues objectAtIndex:rowIndex]]];
- [[m itemAtIndex:[c numberOfItems]-1] setEnabled:NO];
-
- // If user doesn't want to import it show its DEFAULT value if not
- // UPDATE was chosen otherwise hide it.
- if([fieldMappingOperatorArray objectAtIndex:rowIndex] != doNotImport)
- return [fieldMappingArray objectAtIndex:rowIndex];
- else if(![[self selectedImportMethod] isEqualToString:@"UPDATE"])
- return [NSNumber numberWithInteger:[c numberOfItems]-1];
-
- }
+ // If user doesn't want to import it show its DEFAULT value if not
+ // UPDATE was chosen otherwise hide it.
+ if(![doNotImportKey isEqualToNumber:[fieldMappingOperatorArray objectAtIndex:rowIndex]])
+ return [fieldMappingArray objectAtIndex:rowIndex];
+ else if(![[self selectedImportMethod] isEqualToString:@"UPDATE"])
+ return [NSNumber numberWithInteger:firstDefaultItemOffset+rowIndex];
}
else if ([[aTableColumn identifier] isEqualToString:SPTableViewOperatorColumnID]) {
- if ([[aTableColumn dataCell] isKindOfClass:[NSPopUpButtonCell class]]) {
- [(NSPopUpButtonCell *)[aTableColumn dataCell] removeAllItems];
- [(NSPopUpButtonCell *)[aTableColumn dataCell] addItemsWithTitles:fieldMappingOperatorOptions];
- }
return [fieldMappingOperatorArray objectAtIndex:rowIndex];
}
}
@@ -1846,16 +1865,16 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
if(aTableView == fieldMapperTableView) {
if ([[aTableColumn identifier] isEqualToString:SPTableViewImportValueColumnID]) {
if([anObject integerValue] > (NSInteger)[fieldMappingButtonOptions count]) {
- // Ignore field - set operator to doNotImport
+ // Ignore field - set operator to doNotImportKey
if([anObject integerValue] == (NSInteger)[fieldMappingButtonOptions count]+1) {
lastDisabledCSVFieldcolumn = [fieldMappingArray objectAtIndex:rowIndex];
- [fieldMappingOperatorArray replaceObjectAtIndex:rowIndex withObject:doNotImport];
+ [fieldMappingOperatorArray replaceObjectAtIndex:rowIndex withObject:doNotImportKey];
[aTableView performSelector:@selector(reloadData) withObject:nil afterDelay:0.0];
}
- // Ignore all field - set all operator to doNotImport
+ // Ignore all field - set all operator to doNotImportKey
else if([anObject integerValue] == (NSInteger)[fieldMappingButtonOptions count]+2) {
NSUInteger i;
- NSNumber *globalValue = doNotImport;
+ NSNumber *globalValue = doNotImportKey;
[fieldMappingOperatorArray removeAllObjects];
for(i=0; i < [fieldMappingTableColumnNames count]; i++)
[fieldMappingOperatorArray addObject:globalValue];
@@ -1864,14 +1883,14 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
// Import all field - set all operator to doImport
else if([anObject integerValue] == (NSInteger)[fieldMappingButtonOptions count]+3) {
NSUInteger i;
- NSNumber *globalValue = doImport;
+ NSNumber *globalValue = doImportKey;
[fieldMappingOperatorArray removeAllObjects];
for(i=0; i < [fieldMappingTableColumnNames count]; i++)
[fieldMappingOperatorArray addObject:globalValue];
[aTableView performSelector:@selector(reloadData) withObject:nil afterDelay:0.0];
}
else if([[self selectedImportMethod] isEqualToString:@"UPDATE"] && [anObject integerValue] == (NSInteger)[fieldMappingButtonOptions count]+4) {
- [fieldMappingOperatorArray replaceObjectAtIndex:rowIndex withObject:isEqual];
+ [fieldMappingOperatorArray replaceObjectAtIndex:rowIndex withObject:isEqualKey];
[aTableView performSelector:@selector(reloadData) withObject:nil afterDelay:0.0];
}
// Add global value
@@ -1891,8 +1910,8 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
[fieldMappingArray replaceObjectAtIndex:rowIndex withObject:anObject];
// If user _changed_ the csv file column set the operator to doImport if not set to =
- if([(NSNumber*)anObject integerValue] > -1 && NSArrayObjectAtIndex(fieldMappingOperatorArray, rowIndex) != isEqual)
- [fieldMappingOperatorArray replaceObjectAtIndex:rowIndex withObject:doImport];
+ if([(NSNumber*)anObject integerValue] > -1 && ![isEqualKey isEqualToNumber:NSArrayObjectAtIndex(fieldMappingOperatorArray, rowIndex)])
+ [fieldMappingOperatorArray replaceObjectAtIndex:rowIndex withObject:doImportKey];
[self validateImportButton];
@@ -1919,11 +1938,11 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
}
else if ([[aTableColumn identifier] isEqualToString:SPTableViewOperatorColumnID]) {
- if([fieldMappingOperatorArray objectAtIndex:rowIndex] == doNotImport) {
+ if([doNotImportKey isEqualToNumber:[fieldMappingOperatorArray objectAtIndex:rowIndex]]) {
[fieldMappingOperatorArray replaceObjectAtIndex:rowIndex withObject:anObject];
[fieldMappingArray replaceObjectAtIndex:rowIndex withObject:lastDisabledCSVFieldcolumn];
} else {
- if(anObject == doNotImport) lastDisabledCSVFieldcolumn = [fieldMappingArray objectAtIndex:rowIndex];
+ if([doNotImportKey isEqual:anObject]) lastDisabledCSVFieldcolumn = [fieldMappingArray objectAtIndex:rowIndex];
[fieldMappingOperatorArray replaceObjectAtIndex:rowIndex withObject:anObject];
}
[self validateImportButton];
@@ -1936,7 +1955,7 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
// If anObject contains $1 etc. enable SQL checkbox
if([anObject isMatchedByRegex:@"(?<!\\\\)\\$\\d+"])
- [fieldMappingGlobalValuesSQLMarked replaceObjectAtIndex:(numberOfImportColumns + rowIndex) withObject:[NSNumber numberWithInteger:1]];
+ [fieldMappingGlobalValuesSQLMarked replaceObjectAtIndex:(numberOfImportColumns + rowIndex) withObject:@1];
// Store anObject as recent global value if it's new
NSMutableArray *recents = [NSMutableArray array];
@@ -2091,10 +2110,10 @@ static NSUInteger SPSourceColumnTypeInteger = 1;
// Preserve the focus
[[fieldMapperTableView window] makeFirstResponder:fieldMapperTableView];
- return TRUE;
+ return YES;
}
- return FALSE;
+ return NO;
}
diff --git a/Source/SPFileHandle.m b/Source/SPFileHandle.m
index 58350443..62204252 100644
--- a/Source/SPFileHandle.m
+++ b/Source/SPFileHandle.m
@@ -467,10 +467,10 @@
{
[self closeFile];
- if (processingThread) [processingThread release];
+ if (processingThread) SPClear(processingThread);
free(wrappedFilePath);
- [buffer release];
+ SPClear(buffer);
pthread_mutex_destroy(&bufferLock);
diff --git a/Source/SPGeneralPreferencePane.m b/Source/SPGeneralPreferencePane.m
index 7879b9f0..8f4f5c5b 100644
--- a/Source/SPGeneralPreferencePane.m
+++ b/Source/SPGeneralPreferencePane.m
@@ -204,11 +204,17 @@ static NSString *SPDatabaseImage = @"database-small";
return NO;
}
+- (void)preferencePaneWillBeShown
+{
+ [self updateDefaultFavoritePopup];
+}
+
+
#pragma mark -
- (void)dealloc
{
- [folderImage release], folderImage = nil;
+ SPClear(folderImage);
[super dealloc];
}
diff --git a/Source/SPGotoDatabaseController.m b/Source/SPGotoDatabaseController.m
index 3f9a4730..23b43ee2 100644
--- a/Source/SPGotoDatabaseController.m
+++ b/Source/SPGotoDatabaseController.m
@@ -185,21 +185,27 @@
nil];
for (NSString *db in unfilteredList) {
- // Let's just assume it is in the users interest (most of the time) for searches to be CI.
- NSRange match = [db rangeOfString:filter options:NSCaseInsensitiveSearch];
-
- if (match.location == NSNotFound) continue;
-
+
+ NSArray *matches = nil;
+ BOOL hasMatch = [db nonConsecutivelySearchString:filter matchingRanges:&matches];
+
+ if(!hasMatch) continue;
+
// Should we check for exact match AND have not yet found one?
if (exactMatch && !*exactMatch) {
- if (match.location == 0 && match.length == [db length]) {
- *exactMatch = YES;
+ if([matches count] == 1) {
+ NSRange match = [(NSValue *)[matches objectAtIndex:0] rangeValue];
+ if (match.location == 0 && match.length == [db length]) {
+ *exactMatch = YES;
+ }
}
}
NSMutableAttributedString *attrMatch = [[NSMutableAttributedString alloc] initWithString:db];
- [attrMatch setAttributes:attrs range:match];
+ for (NSValue *matchValue in matches) {
+ [attrMatch setAttributes:attrs range:[matchValue rangeValue]];
+ }
[filteredList addObject:[attrMatch autorelease]];
}
@@ -265,8 +271,8 @@
- (void)dealloc
{
- [unfilteredList release], unfilteredList = nil;
- [filteredList release], filteredList = nil;
+ SPClear(unfilteredList);
+ SPClear(filteredList);
[super dealloc];
}
diff --git a/Source/SPGroupNode.h b/Source/SPGroupNode.h
index a6583dc1..d12f7465 100644
--- a/Source/SPGroupNode.h
+++ b/Source/SPGroupNode.h
@@ -28,6 +28,7 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
+#import "SPNamedNode.h"
/**
* @class SPGroupNode SPGroupNode.h
*
@@ -35,7 +36,7 @@
*
* Tree node that represents a group.
*/
-@interface SPGroupNode : NSObject <NSCopying, NSCoding>
+@interface SPGroupNode : NSObject <NSCopying, NSCoding, SPNamedNode>
{
BOOL nodeIsExpanded;
@@ -53,7 +54,9 @@
@property (readwrite, assign) BOOL nodeIsExpanded;
- (id)initWithName:(NSString *)name;
+- (id)initWithDictionary:(NSDictionary *)dict;
+ (SPGroupNode *)groupNodeWithName:(NSString *)name;
++ (SPGroupNode *)groupNodeWithDictionary:(NSDictionary *)dict;
@end
diff --git a/Source/SPGroupNode.m b/Source/SPGroupNode.m
index debc0b84..e1a0dfb3 100644
--- a/Source/SPGroupNode.m
+++ b/Source/SPGroupNode.m
@@ -61,11 +61,25 @@ static NSString *SPGroupNodeIsExpandedKey = @"SPGroupNodeIsExpanded";
return self;
}
+- (id)initWithDictionary:(NSDictionary *)dict
+{
+ if ((self = [self initWithName:[dict objectForKey:SPFavoritesGroupNameKey]])) {
+ [self setNodeIsExpanded:[(NSNumber *)[dict objectForKey:SPFavoritesGroupIsExpandedKey] boolValue]];
+ }
+
+ return self;
+}
+
+ (SPGroupNode *)groupNodeWithName:(NSString *)name
{
return [[[self alloc] initWithName:name] autorelease];
}
++ (SPGroupNode *)groupNodeWithDictionary:(NSDictionary *)dict
+{
+ return [[[self alloc] initWithDictionary:dict] autorelease];
+}
+
#pragma mark -
#pragma mark Copying protocol methods
@@ -84,6 +98,7 @@ static NSString *SPGroupNodeIsExpandedKey = @"SPGroupNodeIsExpanded";
- (id)initWithCoder:(NSCoder *)coder
{
+#warning This is not a valid initializer.
[self setNodeName:[coder decodeObjectForKey:SPGroupNodeNameKey]];
[self setNodeIsExpanded:[[coder decodeObjectForKey:SPGroupNodeIsExpandedKey] boolValue]];
@@ -108,7 +123,7 @@ static NSString *SPGroupNodeIsExpandedKey = @"SPGroupNodeIsExpanded";
- (void)dealloc
{
- if (nodeName) [nodeName release], nodeName = nil;
+ if (nodeName) SPClear(nodeName);
[super dealloc];
}
diff --git a/Source/SPGrowlController.m b/Source/SPGrowlController.m
index e9fd3f77..be659041 100644
--- a/Source/SPGrowlController.m
+++ b/Source/SPGrowlController.m
@@ -98,7 +98,7 @@ static SPGrowlController *sharedGrowlController = nil;
[notificationDictionary setObject:description forKey:@"description"];
[notificationDictionary setObject:document forKey:@"document"];
[notificationDictionary setObject:name forKey:@"name"];
- [notificationDictionary setObject:[NSDictionary dictionaryWithObject:[NSNumber numberWithUnsignedInteger:[document hash]] forKey:@"notificationDocumentHash"] forKey:@"clickContext"];
+ [notificationDictionary setObject:@{@"notificationDocumentHash" : @([document hash])} forKey:@"clickContext"];
[self performSelector:@selector(notifyWithObject:) withObject:notificationDictionary afterDelay:0.1];
}
@@ -143,7 +143,7 @@ static SPGrowlController *sharedGrowlController = nil;
postNotification = YES;
}
- [timingNotificationName release], timingNotificationName = nil;
+ SPClear(timingNotificationName);
}
// Post notification only if preference is set and visibility has been confirmed
@@ -192,7 +192,7 @@ static SPGrowlController *sharedGrowlController = nil;
- (void)setVisibilityForNotificationName:(NSString *)name
{
if (timingNotificationName) {
- [timingNotificationName release], timingNotificationName = nil;
+ SPClear(timingNotificationName);
}
timingNotificationName = [[NSString alloc] initWithString:name];
diff --git a/Source/SPHistoryController.m b/Source/SPHistoryController.m
index af39323c..87cc4eab 100644
--- a/Source/SPHistoryController.m
+++ b/Source/SPHistoryController.m
@@ -71,8 +71,8 @@
- (void) dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
- [tableContentStates release];
- [history release];
+ SPClear(tableContentStates);
+ SPClear(history);
[super dealloc];
}
@@ -276,7 +276,7 @@
NSUInteger contentPageNumber = [tableContentInstance pageNumber];
NSDictionary *contentSelectedRows = [tableContentInstance selectionDetailsAllowingIndexSelection:YES];
NSRect contentViewport = [tableContentInstance viewport];
- NSDictionary *contentFilter = [tableContentInstance filterSettings];
+ NSDictionary *contentFilter = [[tableContentInstance onMainThread] filterSettings];
NSData *filterTableData = [tableContentInstance filterTableData];
if (!theDatabase) return;
diff --git a/Source/SPIndexesController.h b/Source/SPIndexesController.h
index 6ee59226..82bc0a03 100644
--- a/Source/SPIndexesController.h
+++ b/Source/SPIndexesController.h
@@ -74,7 +74,8 @@
#endif
BOOL _mainNibLoaded;
- BOOL isMyISAMTale;
+ BOOL isMyISAMTable;
+ BOOL isInnoDBTable;
NSString *table;
NSMutableArray *fields, *indexes, *indexedFields;
diff --git a/Source/SPIndexesController.m b/Source/SPIndexesController.m
index 7236a977..93466c27 100644
--- a/Source/SPIndexesController.m
+++ b/Source/SPIndexesController.m
@@ -166,7 +166,8 @@ static const NSString *SPNewIndexKeyBlockSize = @"IndexKeyBlockSize";
// Check whether a save of the current field row is required.
if (![tableStructure saveRowOnDeselect]) return;
- isMyISAMTale = [[[tableData statusValues] objectForKey:@"Engine"] isEqualToString:@"MyISAM"];
+ isMyISAMTable = [[[tableData statusValues] objectForKey:@"Engine"] isEqualToString:@"MyISAM"];
+ isInnoDBTable = [[[tableData statusValues] objectForKey:@"Engine"] isEqualToString:@"InnoDB"];
// Reset visibility of the primary key item
[[[indexTypePopUpButton menu] itemWithTag:SPPrimaryKeyMenuTag] setHidden:NO];
@@ -219,7 +220,7 @@ static const NSString *SPNewIndexKeyBlockSize = @"IndexKeyBlockSize";
// If no initial field has been selected yet - all fields are indexed - add the first field.
if (!initialField) initialField = [fields objectAtIndex:0];
- if (indexedFieldNames) [indexedFieldNames release], indexedFieldNames = nil;
+ if (indexedFieldNames) SPClear(indexedFieldNames);
// Reset the indexed columns
[indexedFields removeAllObjects];
@@ -236,7 +237,7 @@ static const NSString *SPNewIndexKeyBlockSize = @"IndexKeyBlockSize";
#ifndef SP_CODA
// MyISAM and InnoDB tables only support BTREE storage types so disable the storage type popup button
// as it's the default anyway.
- [indexStorageTypePopUpButton setEnabled:(!(isMyISAMTale || [[[tableData statusValues] objectForKey:@"Engine"] isEqualToString:@"InnoDB"]))];
+ [indexStorageTypePopUpButton setEnabled:(!(isMyISAMTable || isInnoDBTable))];
// The ability to specify an index's key block size was added in MySQL 5.1.10 so disable the textfield
// if it's not supported.
@@ -328,10 +329,8 @@ static const NSString *SPNewIndexKeyBlockSize = @"IndexKeyBlockSize";
}
#ifndef SP_CODA
- NSString *engine = [[tableData statusValues] objectForKey:@"Engine"];
-
// Specifiying an index storage type (i.e. HASH or BTREE) is not permitted with SPATIAL indexes
- [indexStorageTypePopUpButton setEnabled:(indexType != SPSpatialMenuTag) && !(isMyISAMTale || [engine isEqualToString:@"InnoDB"])];
+ [indexStorageTypePopUpButton setEnabled:(indexType != SPSpatialMenuTag) && !(isMyISAMTable || isInnoDBTable)];
#endif
}
@@ -768,8 +767,8 @@ static const NSString *SPNewIndexKeyBlockSize = @"IndexKeyBlockSize";
[indexTypePopUpButton removeItemAtIndex:[indexTypePopUpButton indexOfItemWithTag:SPFullTextMenuTag]];
}
- // FULLTEXT and SPATIAL index types are only available using the MyISAM engine
- if (isMyISAMTale) {
+ // SPATIAL index types are only available using the MyISAM engine
+ if (isMyISAMTable) {
if ([[dbDocument serverSupport] supportsSpatialExtensions]) {
NSMenuItem *spatialMenuItem = [[[NSMenuItem alloc] init] autorelease];
@@ -778,7 +777,10 @@ static const NSString *SPNewIndexKeyBlockSize = @"IndexKeyBlockSize";
[[indexTypePopUpButton menu] addItem:spatialMenuItem];
}
+ }
+ // FULLTEXT only works with MyISAM and (InnoDB since 5.6.4)
+ if(isMyISAMTable || (isInnoDBTable && [[dbDocument serverSupport] supportsFulltextOnInnoDB])) {
NSMenuItem *fullTextMenuItem = [[[NSMenuItem alloc] init] autorelease];
[fullTextMenuItem setTitle:NSLocalizedString(@"FULLTEXT", @"full text index menu item title")];
@@ -1081,14 +1083,14 @@ static const NSString *SPNewIndexKeyBlockSize = @"IndexKeyBlockSize";
- (void)dealloc
{
- [table release], table = nil;
- [indexes release], indexes = nil;
- [fields release], fields = nil;
+ SPClear(table);
+ SPClear(indexes);
+ SPClear(fields);
- [supportsLength release], supportsLength = nil;
- [requiresLength release], requiresLength = nil;
+ SPClear(supportsLength);
+ SPClear(requiresLength);
- if (indexedFields) [indexedFields release], indexedFields = nil;
+ if (indexedFields) SPClear(indexedFields);
#ifndef SP_CODA
[prefs removeObserver:self forKeyPath:SPDisplayTableViewVerticalGridlines];
diff --git a/UnitTests/SPTableCopyTest.h b/Source/SPNamedNode.h
index 29c5eea4..2ce99fdf 100644
--- a/UnitTests/SPTableCopyTest.h
+++ b/Source/SPNamedNode.h
@@ -1,9 +1,9 @@
//
-// SPTableCopyTest.h
+// SPNamedNode.h
// sequel-pro
//
-// Created by David Rekowski.
-// Copyright (c) 2010 David Rekowski. All rights reserved.
+// Created by Max Lohrmann on 11.05.15.
+// Copyright (c) 2015 Max Lohrmann. All rights reserved.
//
// Permission is hereby granted, free of charge, to any person
// obtaining a copy of this software and associated documentation
@@ -28,12 +28,10 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
-#define USE_APPLICATION_UNIT_TEST 1
+#import <Foundation/Foundation.h>
-#import <SenTestingKit/SenTestingKit.h>
+@protocol SPNamedNode <NSObject>
-@interface SPTableCopyTest : SenTestCase
-
-- (void)testCopyTableFromToWithData;
+- (NSString *)nodeName;
@end
diff --git a/Source/SPNarrowDownCompletion.m b/Source/SPNarrowDownCompletion.m
index 77ea9fbe..b9dba0e4 100644
--- a/Source/SPNarrowDownCompletion.m
+++ b/Source/SPNarrowDownCompletion.m
@@ -159,18 +159,16 @@
[NSObject cancelPreviousPerformRequestsWithTarget:self];
if(stateTimer != nil) {
[stateTimer invalidate];
- [stateTimer release];
- stateTimer = nil;
+ SPClear(stateTimer);
}
- if (staticPrefix) [staticPrefix release];
- [mutablePrefix release];
- [textualInputCharacters release];
- [originalFilterString release];
- if(syncArrowImages) [syncArrowImages release];
- if(suggestions) [suggestions release];
-
- if (filtered) [filtered release];
- if (databaseStructureRetrieval) [databaseStructureRetrieval release];
+ SPClear(mutablePrefix);
+ SPClear(textualInputCharacters);
+ SPClear(originalFilterString);
+ if (staticPrefix) SPClear(staticPrefix);
+ if (syncArrowImages) SPClear(syncArrowImages);
+ if (suggestions) SPClear(suggestions);
+ if (filtered) SPClear(filtered);
+ if (databaseStructureRetrieval) SPClear(databaseStructureRetrieval);
[super dealloc];
}
@@ -181,8 +179,7 @@
// Invalidate the timer now to prevent retain cycles preventing deallocation
if (stateTimer != nil) {
[stateTimer invalidate];
- [stateTimer release];
- stateTimer = nil;
+ SPClear(stateTimer);
}
closeMe = YES;
@@ -204,9 +201,8 @@
isQueryingDatabaseStructure = NO;
if(stateTimer) {
[stateTimer invalidate];
- [stateTimer release];
- stateTimer = nil;
- if(syncArrowImages) [syncArrowImages release], syncArrowImages = nil;
+ SPClear(stateTimer);
+ if(syncArrowImages) SPClear(syncArrowImages);
[self performSelectorOnMainThread:@selector(reInvokeCompletion) withObject:nil waitUntilDone:YES];
closeMe = YES;
return;
@@ -222,8 +218,7 @@
{
if(stateTimer) {
[stateTimer invalidate];
- [stateTimer release];
- stateTimer = nil;
+ SPClear(stateTimer);
}
[theView setCompletionIsOpen:NO];
[self close];
@@ -294,7 +289,7 @@
for(NSUInteger i=0; i<maxLength; i++)
[dummy appendString:@" "];
- CGFloat w = NSSizeToCGSize([dummy sizeWithAttributes:[NSDictionary dictionaryWithObject:tableFont forKey:NSFontAttributeName]]).width + 26.0f;
+ CGFloat w = NSSizeToCGSize([dummy sizeWithAttributes:@{NSFontAttributeName : tableFont}]).width + 26.0f;
maxWindowWidth = (w>maxWindowWidth) ? maxWindowWidth : w;
} else {
maxWindowWidth = 220;
@@ -712,7 +707,7 @@
closeMe = YES;
return;
} else {
- [newFiltered addObject:[NSDictionary dictionaryWithObjectsAndKeys:NSLocalizedString(@"No item found", @"no item found message"), @"display", @"", @"noCompletion", nil]];
+ [newFiltered addObject:@{@"display" : NSLocalizedString(@"No item found", @"no item found message"), @"noCompletion" : @""}];
}
}
}
@@ -725,7 +720,7 @@
// if fetching db structure add dummy row for displaying that info on top of the list
if(isQueryingDatabaseStructure)
- [newFiltered insertObject:[NSDictionary dictionaryWithObjectsAndKeys:@"dummy", @"display", @"", @"noCompletion", nil] atIndex:0];
+ [newFiltered insertObject:@{@"display" : @"dummy", @"noCompletion" : @""} atIndex:0];
NSPoint old = NSMakePoint([self frame].origin.x, [self frame].origin.y + [self frame].size.height);
@@ -1030,7 +1025,7 @@
if (scanPosition + attributeResultRange.length == currentLength) break;
// A match was found - retrieve the location
- NSUInteger matchStart = attributeResultRange.location+attributeResultRange.length;
+ NSUInteger matchStart = NSMaxRange(attributeResultRange);
if ([[theView textStorage] attribute:kSPAutoCompletePlaceholderName atIndex:matchStart longestEffectiveRange:&attributeResultRange inRange:NSMakeRange(matchStart, currentLength - matchStart)]) {
[theView shouldChangeTextInRange:attributeResultRange replacementString:@""];
[[theView textStorage] deleteCharactersInRange:attributeResultRange];
diff --git a/Source/SPNavigatorController.m b/Source/SPNavigatorController.m
index 1a7e52fd..3f194b24 100644
--- a/Source/SPNavigatorController.m
+++ b/Source/SPNavigatorController.m
@@ -109,21 +109,21 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
- (void)dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
- if(schemaDataFiltered) [schemaDataFiltered release];
- if(allSchemaKeys) [allSchemaKeys release];
- if(schemaData) [schemaData release];
- if(infoArray) [infoArray release];
- if(updatingConnections) [updatingConnections release];
- if(expandStatus2) [expandStatus2 release];
- if(cachedSortedKeys) [cachedSortedKeys release];
+ if(schemaDataFiltered) SPClear(schemaDataFiltered);
+ if(allSchemaKeys) SPClear(allSchemaKeys);
+ if(schemaData) SPClear(schemaData);
+ if(infoArray) SPClear(infoArray);
+ if(updatingConnections) SPClear(updatingConnections);
+ if(expandStatus2) SPClear(expandStatus2);
+ if(cachedSortedKeys) SPClear(cachedSortedKeys);
#ifndef SP_CODA /* dealloc ivars */
- [connectionIcon release];
- [databaseIcon release];
- [tableIcon release];
- [viewIcon release];
- [procedureIcon release];
- [functionIcon release];
- [fieldIcon release];
+ SPClear(connectionIcon);
+ SPClear(databaseIcon);
+ SPClear(tableIcon);
+ SPClear(viewIcon);
+ SPClear(procedureIcon);
+ SPClear(functionIcon);
+ SPClear(fieldIcon);
#endif
[super dealloc];
@@ -155,7 +155,7 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
[schemaStatusSplitView setMinSize:16.f ofSubviewAtIndex:1];
[self setWindowFrameAutosaveName:@"SPNavigator"];
- [outlineSchema2 registerForDraggedTypes:[NSArray arrayWithObjects:SPNavigatorTableDataPasteboardDragType, SPNavigatorPasteboardDragType, NSStringPboardType, nil]];
+ [outlineSchema2 registerForDraggedTypes:@[SPNavigatorTableDataPasteboardDragType, SPNavigatorPasteboardDragType, NSStringPboardType]];
[outlineSchema2 setDraggingSourceOperationMask:NSDragOperationEvery forLocal:YES];
[outlineSchema2 setDraggingSourceOperationMask:NSDragOperationEvery forLocal:NO];
@@ -312,8 +312,8 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
// Detect if more than one connection windows with the connectionID are open.
// If so, don't remove it.
- if ([[NSApp delegate] frontDocument]) {
- for(id doc in [[NSApp delegate] orderedDocuments]) {
+ if ([SPAppDelegate frontDocument]) {
+ for(id doc in [SPAppDelegate orderedDocuments]) {
if([[doc connectionID] isEqualToString:connectionID])
docCounter++;
if(docCounter > 1) break;
@@ -322,7 +322,7 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
if(docCounter > 1) return;
- if(schemaData && [schemaData objectForKey:connectionID] && [[NSApp delegate] frontDocument] && [[[NSApp delegate] orderedDocuments] count])
+ if(schemaData && [schemaData objectForKey:connectionID] && [SPAppDelegate frontDocument] && [[SPAppDelegate orderedDocuments] count])
[self saveSelectedItems];
if(schemaDataFiltered)
@@ -374,7 +374,7 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
NSArray *pathArray = [[[parentKeys objectAtIndex:0] description] componentsSeparatedByString:SPUniqueSchemaDelimiter];
if([pathArray count] > 1) {
- SPDatabaseDocument *doc = [[NSApp delegate] frontDocument];
+ SPDatabaseDocument *doc = [SPAppDelegate frontDocument];
if([doc isWorking]) {
[SPTooltip showWithObject:NSLocalizedString(@"Active connection window is busy. Please wait and try again.", @"active connection window is busy. please wait and try again. tooltip")
atLocation:pos
@@ -466,8 +466,8 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
if(a)
[allSchemaKeys setObject:a forKey:connectionName];
} else {
- [schemaData setObject:[NSDictionary dictionary] forKey:[NSString stringWithFormat:@"%@&DEL&no data loaded yet", connectionName]];
- [allSchemaKeys setObject:[NSArray array] forKey:connectionName];
+ [schemaData setObject:@{} forKey:[NSString stringWithFormat:@"%@&DEL&no data loaded yet", connectionName]];
+ [allSchemaKeys setObject:@[] forKey:connectionName];
}
[updatingConnections removeObject:connectionName];
@@ -547,12 +547,12 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
}
}
- if([result count] < 1 ) return [NSArray arrayWithObjects:[NSNumber numberWithInt:0], @"", nil];
+ if([result count] < 1 ) return @[@0, @""];
if([result count] == 1) {
NSArray *split = [[result objectAtIndex:0] componentsSeparatedByString:SPUniqueSchemaDelimiter];
- if([split count] == 2 ) return [NSArray arrayWithObjects:[NSNumber numberWithInt:1], [split lastObject], nil];
- if([split count] == 3 ) return [NSArray arrayWithObjects:[NSNumber numberWithInt:2], [split lastObject], nil];
- return [NSArray arrayWithObjects:[NSNumber numberWithInt:0], @"", nil];
+ if([split count] == 2 ) return [NSArray arrayWithObjects:@1, [split lastObject], nil];
+ if([split count] == 3 ) return [NSArray arrayWithObjects:@2, [split lastObject], nil];
+ return @[@0, @""];
}
// case if field is equal to a table or db name
NSMutableArray *arr = [NSMutableArray array];
@@ -560,14 +560,13 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
if([[item componentsSeparatedByString:SPUniqueSchemaDelimiter] count] < 4)
[arr addObject:item];
}
- if([arr count] < 1 ) [NSArray arrayWithObjects:[NSNumber numberWithInt:0], @"", nil];
if([arr count] == 1) {
NSArray *split = [[arr objectAtIndex:0] componentsSeparatedByString:SPUniqueSchemaDelimiter];
- if([split count] == 2 ) [NSArray arrayWithObjects:[NSNumber numberWithInt:1], [split lastObject], nil];
- if([split count] == 3 ) [NSArray arrayWithObjects:[NSNumber numberWithInt:2], [split lastObject], nil];
- return [NSArray arrayWithObjects:[NSNumber numberWithInt:0], @"", nil];
+ if([split count] == 2 ) [NSArray arrayWithObjects:@1, [split lastObject], nil];
+ if([split count] == 3 ) [NSArray arrayWithObjects:@2, [split lastObject], nil];
+ return @[@0, @""];
}
- return [NSArray arrayWithObjects:[NSNumber numberWithInt:0], @"", nil];
+ return @[@0, @""];
}
#ifndef SP_CODA
@@ -590,7 +589,7 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
{
// Reset everything for current active doc connection
- SPDatabaseDocument *doc = [[NSApp delegate] frontDocument];
+ SPDatabaseDocument *doc = [SPAppDelegate frontDocument];
if(!doc) return;
NSString *connectionID = [doc connectionID];
if(!connectionID || [connectionID length] < 2) return;
@@ -611,7 +610,7 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
if (![[doc getConnection] isConnected]) return;
- [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[doc databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], @"forceUpdate", nil]];
+ [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[doc databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:@{@"forceUpdate" : @YES}];
}
- (IBAction)outlineViewAction:(id)sender
@@ -694,7 +693,7 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
[[[[schemaData objectForKey:connectionID] objectForKey:db_id] objectForKey:table_id] objectForKey:@" struct_type "] forKey:@" struct_type "];
else
[[[[structure valueForKey:connectionID] valueForKey:db_id] valueForKey:table_id] setObject:
- [NSNumber numberWithInt:0] forKey:@" struct_type "];
+ @0 forKey:@" struct_type "];
if([a count] > 3) {
NSString *field_id = [NSString stringWithFormat:@"%@%@%@", table_id,SPUniqueSchemaDelimiter,[a objectAtIndex:3]];
@@ -750,7 +749,7 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
[searchField setStringValue:@""];
}
- SPDatabaseDocument *doc = [[NSApp delegate] frontDocument];
+ SPDatabaseDocument *doc = [SPAppDelegate frontDocument];
if (doc) {
NSMutableString *key = [NSMutableString string];
[key setString:[doc connectionID]];
@@ -1113,7 +1112,7 @@ static NSComparisonResult compareStrings(NSString *s1, NSString *s2, void* conte
- (BOOL)outlineView:(NSOutlineView *)outlineView writeItems:(NSArray *)items toPasteboard:(NSPasteboard *)pboard
{
// Provide data for our custom type, and simple NSStrings.
- [pboard declareTypes:[NSArray arrayWithObjects:SPNavigatorTableDataPasteboardDragType, SPNavigatorPasteboardDragType, NSStringPboardType, nil] owner:self];
+ [pboard declareTypes:@[SPNavigatorTableDataPasteboardDragType, SPNavigatorPasteboardDragType, NSStringPboardType] owner:self];
// Collect the actual schema paths without leading connection ID
NSMutableArray *draggedItems = [NSMutableArray array];
diff --git a/Source/SPNetworkPreferencePane.h b/Source/SPNetworkPreferencePane.h
index dc99b3e2..d980f175 100644
--- a/Source/SPNetworkPreferencePane.h
+++ b/Source/SPNetworkPreferencePane.h
@@ -37,6 +37,19 @@
*
* Network preference pane controller.
*/
-@interface SPNetworkPreferencePane : SPPreferencePane <SPPreferencePaneProtocol>
-
+@interface SPNetworkPreferencePane : SPPreferencePane <SPPreferencePaneProtocol, NSTableViewDataSource, NSTableViewDelegate>
+{
+ IBOutlet NSView *sshClientPickerView;
+ IBOutlet NSTextField *sshClientPath;
+ IBOutlet NSView *hiddenFileView;
+ IBOutlet NSTableView *sslCipherView;
+
+@private
+ NSAlert *_currentAlert;
+ NSOpenPanel *_currentFilePanel;
+ NSMutableArray *sslCiphers;
+}
+- (IBAction)pickSSHClientViaFileBrowser:(id)sender;
+- (IBAction)pickSSHClient:(id)sender;
+- (IBAction)resetCipherList:(id)sender;
@end
diff --git a/Source/SPNetworkPreferencePane.m b/Source/SPNetworkPreferencePane.m
index d3e2f52f..c734f07b 100644
--- a/Source/SPNetworkPreferencePane.m
+++ b/Source/SPNetworkPreferencePane.m
@@ -30,8 +30,33 @@
#import "SPNetworkPreferencePane.h"
+static NSString *SPSSLCipherListMarkerItem = @"--";
+static NSString *SPSSLCipherPboardTypeName = @"SSLCipherPboardType";
+
+@interface SPNetworkPreferencePane (Private)
+- (void)updateHiddenFiles;
+- (void)loadSSLCiphers;
+- (void)storeSSLCiphers;
++ (NSArray *)defaultSSLCipherList;
+@end
+
@implementation SPNetworkPreferencePane
+- (instancetype)init
+{
+ self = [super init];
+ if (self) {
+ sslCiphers = [[NSMutableArray alloc] init];
+ }
+ return self;
+}
+
+- (void)dealloc
+{
+ SPClear(sslCiphers);
+ [super dealloc];
+}
+
#pragma mark -
#pragma mark Preference pane protocol methods
@@ -65,4 +90,241 @@
return NO;
}
+- (void)preferencePaneWillBeShown
+{
+ [self loadSSLCiphers];
+ if(![[sslCipherView registeredDraggedTypes] containsObject:SPSSLCipherPboardTypeName])
+ [sslCipherView registerForDraggedTypes:@[SPSSLCipherPboardTypeName]];
+}
+
+#pragma mark -
+#pragma mark Custom SSH client methods
+
+- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
+{
+ if([SPHiddenKeyFileVisibilityKey isEqualTo:keyPath]) {
+ [self updateHiddenFiles];
+ }
+}
+
+- (void)updateHiddenFiles
+{
+ [_currentFilePanel setShowsHiddenFiles:[prefs boolForKey:SPHiddenKeyFileVisibilityKey]];
+}
+
+- (IBAction)pickSSHClientViaFileBrowser:(id)sender
+{
+ _currentFilePanel = [NSOpenPanel openPanel];
+ [_currentFilePanel setCanChooseFiles:YES];
+ [_currentFilePanel setCanChooseDirectories:NO];
+ [_currentFilePanel setAllowsMultipleSelection:NO];
+ [_currentFilePanel setAccessoryView:hiddenFileView];
+ [_currentFilePanel setResolvesAliases:NO];
+ [self updateHiddenFiles];
+
+ [prefs addObserver:self
+ forKeyPath:SPHiddenKeyFileVisibilityKey
+ options:NSKeyValueObservingOptionNew
+ context:NULL];
+
+ [_currentFilePanel beginSheetModalForWindow:[_currentAlert window] completionHandler:^(NSInteger result) {
+ if(result == NSFileHandlingPanelOKButton) [sshClientPath setStringValue:[[_currentFilePanel URL] path]];
+
+ [prefs removeObserver:self forKeyPath:SPHiddenKeyFileVisibilityKey];
+
+ _currentFilePanel = nil;
+ }];
+}
+
+- (IBAction)pickSSHClient:(id)sender
+{
+ //take value from user defaults
+ NSString *oldPath = [prefs stringForKey:SPSSHClientPath];
+ if([oldPath length]) [sshClientPath setStringValue:oldPath];
+
+ // set up dialog
+ _currentAlert = [[NSAlert alloc] init]; //needs to be ivar so we can attach the OpenPanel later
+ [_currentAlert setAccessoryView:sshClientPickerView];
+ [_currentAlert setAlertStyle:NSWarningAlertStyle];
+ [_currentAlert setMessageText:NSLocalizedString(@"Unsupported configuration!",@"Preferences : Network : Custom SSH client : warning dialog title")];
+ [_currentAlert setInformativeText:NSLocalizedString(@"Sequel Pro only supports and is tested with the default OpenSSH client versions included with Mac OS X. Using different clients might cause connection issues, security risks or not work at all.\n\nPlease be aware, that we cannot provide support for such configurations.",@"Preferences : Network : Custom SSH client : warning dialog message")];
+ [_currentAlert addButtonWithTitle:NSLocalizedString(@"OK",@"Preferences : Network : Custom SSH client : warning dialog : accept button")];
+ [_currentAlert addButtonWithTitle:NSLocalizedString(@"Cancel",@"Preferences : Network : Custom SSH client : warning dialog : cancel button")];
+
+ if([_currentAlert runModal] == NSAlertFirstButtonReturn) {
+ //store new value to user defaults
+ NSString *newPath = [sshClientPath stringValue];
+ if(![newPath length])
+ [prefs removeObjectForKey:SPSSHClientPath];
+ else
+ [prefs setObject:newPath forKey:SPSSHClientPath];
+ }
+
+ SPClear(_currentAlert);
+}
+
+#pragma mark -
+#pragma mark SSL cipher list methods
+
+- (void)loadSSLCiphers
+{
+ NSArray *supportedCiphers = [SPNetworkPreferencePane defaultSSLCipherList];
+ [sslCiphers removeAllObjects];
+
+ NSString *userCipherString = [prefs stringForKey:SPSSLCipherListKey];
+ if(userCipherString) {
+ //expand user list
+ NSArray *userCipherList = [userCipherString componentsSeparatedByString:@":"];
+
+ //compare the users list to the valid list and only copy over valid items
+ for (NSString *userCipher in userCipherList) {
+ if (![supportedCiphers containsObject:userCipher] || [sslCiphers containsObject:userCipher]) {
+ SPLog(@"Unknown ssl cipher in users' list: %@",userCipher);
+ continue;
+ }
+ [sslCiphers addObject:userCipher];
+ }
+
+ //now we do the reverse and add valid ciphers that are not yet in the users list.
+ //We'll just assume the ones not in the users' list are newer and therefore better and add
+ //them at the top
+ NSUInteger shift = 0;
+ for (NSString *validCipher in supportedCiphers) {
+ if(![sslCiphers containsObject:validCipher]) {
+ [sslCiphers insertObject:validCipher atIndex:shift++];
+ }
+ }
+ }
+ else {
+ //no user prefs configured, so we'll just go with the defaults
+ [sslCiphers addObjectsFromArray:supportedCiphers];
+ }
+
+ //reload UI
+ [sslCipherView deselectAll:nil];
+ [sslCipherView reloadData];
+}
+
+- (void)storeSSLCiphers
+{
+ NSString *flattedList = [sslCiphers componentsJoinedByString:@":"];
+ [prefs setObject:flattedList forKey:SPSSLCipherListKey];
+}
+
+- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView
+{
+ return [sslCiphers count];
+}
+
+- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex
+{
+ NSString *value = [sslCiphers objectAtIndex:rowIndex];
+ if ([value isEqualTo:SPSSLCipherListMarkerItem]) {
+ return NSLocalizedString(@"Disabled Cipher Suites", @"Preferences : Network : SSL Chiper suites : List seperator");
+ }
+ return value;
+}
+
+- (BOOL)tableView:(NSTableView *)tableView isGroupRow:(NSInteger)row
+{
+ return ([[sslCiphers objectAtIndex:row] isEqualTo:SPSSLCipherListMarkerItem]);
+}
+
+- (BOOL)tableView:(NSTableView *)tableView shouldSelectRow:(NSInteger)row
+{
+ return ![self tableView:tableView isGroupRow:row];
+}
+
+- (BOOL)tableView:(NSTableView *)aTableView acceptDrop:(id <NSDraggingInfo>)info row:(NSInteger)row dropOperation:(NSTableViewDropOperation)operation
+{
+ if(row < 0) return NO; //why is that even a signed int when all "indexes" are unsigned!?
+
+ NSPasteboard *pboard = [info draggingPasteboard];
+ NSArray *draggedItems = [NSKeyedUnarchiver unarchiveObjectWithData:[pboard dataForType:SPSSLCipherPboardTypeName]];
+
+ NSUInteger nextInsert = row;
+ for (NSString *item in draggedItems) {
+ NSUInteger oldPos = [sslCiphers indexOfObject:item];
+ [sslCiphers removeObjectAtIndex:oldPos];
+
+ if(oldPos < (NSUInteger)row) {
+ // readjust position because we removed an object further up in the list, shifting all following indexes down by 1
+ nextInsert--;
+ }
+
+ [sslCiphers insertObject:item atIndex:nextInsert++];
+ }
+
+ NSMutableIndexSet *newSelection = [NSMutableIndexSet indexSet];
+ for (NSString *item in draggedItems) {
+ [newSelection addIndex:[sslCiphers indexOfObject:item]];
+ }
+
+ [self storeSSLCiphers];
+ [sslCipherView selectRowIndexes:newSelection byExtendingSelection:NO];
+
+ return YES;
+}
+
+- (NSDragOperation)tableView:(NSTableView *)aTableView validateDrop:(id <NSDraggingInfo>)info proposedRow:(NSInteger)row proposedDropOperation:(NSTableViewDropOperation)operation
+{
+ //cannot drop something on another item in the list, only between them
+ return (operation == NSTableViewDropOn)? NSDragOperationNone : NSDragOperationMove;
+}
+
+- (BOOL)tableView:(NSTableView *)aTableView writeRowsWithIndexes:(NSIndexSet *)rowIndexes toPasteboard:(NSPasteboard *)pboard
+{
+ //the marker cannot be actively reordered
+ if ([rowIndexes containsIndex:[sslCiphers indexOfObject:SPSSLCipherListMarkerItem]])
+ return NO;
+
+ //put the names of the items on the pasteboard. easier to work with than indexes...
+ NSMutableArray *items = [NSMutableArray arrayWithCapacity:[rowIndexes count]];
+ [rowIndexes enumerateIndexesUsingBlock:^(NSUInteger idx, BOOL *stop) {
+ [items addObject:[sslCiphers objectAtIndex:idx]];
+ }];
+
+ NSData *arch = [NSKeyedArchiver archivedDataWithRootObject:items];
+ [pboard declareTypes:@[SPSSLCipherPboardTypeName] owner:self];
+ [pboard setData:arch forType:SPSSLCipherPboardTypeName];
+ return YES;
+}
+
+- (IBAction)resetCipherList:(id)sender
+{
+ //remove the user pref and reset the GUI
+ [prefs removeObjectForKey:SPSSLCipherListKey];
+ [self loadSSLCiphers];
+}
+
++ (NSArray *)defaultSSLCipherList
+{
+ //this is the default list as hardcoded in SPMySQLConnection.m
+ //Sadly there is no way to make MySQL give us the list of runtime-supported ciphers.
+ return @[@"DHE-RSA-AES256-SHA",
+ @"AES256-SHA",
+ @"DHE-RSA-AES128-SHA",
+ @"AES128-SHA",
+ @"AES256-RMD",
+ @"AES128-RMD",
+ @"DES-CBC3-RMD",
+ @"DHE-RSA-AES256-RMD",
+ @"DHE-RSA-AES128-RMD",
+ @"DHE-RSA-DES-CBC3-RMD",
+ @"RC4-SHA",
+ @"RC4-MD5",
+ @"DES-CBC3-SHA",
+ @"DES-CBC-SHA",
+ @"EDH-RSA-DES-CBC3-SHA",
+ @"EDH-RSA-DES-CBC-SHA",
+ SPSSLCipherListMarkerItem, //marker. disabled items below here
+ @"EDH-DSS-DES-CBC-SHA",
+ @"EDH-DSS-DES-CBC3-SHA",
+ @"DHE-DSS-AES128-SHA",
+ @"DHE-DSS-AES256-SHA",
+ @"DHE-DSS-DES-CBC3-RMD",
+ @"DHE-DSS-AES128-RMD",
+ @"DHE-DSS-AES256-RMD"];
+}
+
@end
diff --git a/Source/SPNotificationsPreferencePane.h b/Source/SPNotificationsPreferencePane.h
index e9650928..cf0f4c42 100644
--- a/Source/SPNotificationsPreferencePane.h
+++ b/Source/SPNotificationsPreferencePane.h
@@ -38,5 +38,8 @@
* Notifications preference pane controller.
*/
@interface SPNotificationsPreferencePane : SPPreferencePane <SPPreferencePaneProtocol>
+{
+ IBOutlet NSTextField *growlStatusLabel;
+}
@end
diff --git a/Source/SPNotificationsPreferencePane.m b/Source/SPNotificationsPreferencePane.m
index dcd713e2..3c64a1ff 100644
--- a/Source/SPNotificationsPreferencePane.m
+++ b/Source/SPNotificationsPreferencePane.m
@@ -29,23 +29,66 @@
// More info at <https://github.com/sequelpro/sequelpro>
#import "SPNotificationsPreferencePane.h"
+#import <Growl/Growl.h>
+#import "SPGrowlController.h"
+
+static NSString *_runningApplicationsKeyPath = @"runningApplications";
@implementation SPNotificationsPreferencePane
+- (instancetype)init
+{
+ self = [super init];
+ if (self) {
+ // this notification is posted by the GrowlApplicationBridge right after
+ // it would have called -[delegate growlIsReady], so we'll just use this
+ // as a shortcut.
+ [[NSNotificationCenter defaultCenter] addObserver:self
+ selector:@selector(growlLaunchedNotifcation:)
+ name:GROWL_IS_READY
+ object:nil];
+ // we need to initialize the GrowlApplicationBridge for the notification to actually work
+ [SPGrowlController sharedGrowlController];
+ // Growl doesn't tell use when it exits (even though they DO monitor it).
+ // This code replicates what it does internally.
+ [[NSWorkspace sharedWorkspace] addObserver:self
+ forKeyPath:_runningApplicationsKeyPath
+ options:NSKeyValueObservingOptionNew
+ context:nil];
+ // TODO: we are only really interested in this notification while we are visible.
+ }
+ return self;
+}
+
+-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
+ //check if growl has exited
+ if(object == [NSWorkspace sharedWorkspace] && [keyPath isEqualToString:_runningApplicationsKeyPath]){
+ [self updateGrowlStatusLabel];
+ }
+}
+
+- (void)dealloc
+{
+ [[NSNotificationCenter defaultCenter] removeObserver:self];
+ [[NSWorkspace sharedWorkspace] removeObserver:self forKeyPath:_runningApplicationsKeyPath];
+ [super dealloc];
+}
+
+- (void)growlLaunchedNotifcation:(NSNotification *)notification
+{
+ [self updateGrowlStatusLabel];
+}
+
+- (void)preferencePaneWillBeShown
+{
+ [self updateGrowlStatusLabel];
+}
+
#pragma mark -
#pragma mark Bindings
-/**
- * Displays an informational message regarding Growl notifications if enabled.
- */
- (void)setGrowlEnabled:(BOOL)value
{
- if (value) {
- NSBeginInformationalAlertSheet(NSLocalizedString(@"Growl notification preferences", "Growl notification preferences alert title"),
- nil, nil, nil, [[self view] window], self, nil, nil, nil,
- NSLocalizedString(@"All Growl notifications are enabled by default. To change which notifications are displayed, go to the Growl Preference Pane in the System Preferences and choose what notifications Growl should display from Sequel Pro.", @"Growl notification preferences alert message"));
- }
-
[prefs setBool:value forKey:SPGrowlEnabled];
}
@@ -57,6 +100,26 @@
return [prefs boolForKey:SPGrowlEnabled];
}
+- (void)updateGrowlStatusLabel
+{
+ NSString *text;
+ if([GrowlApplicationBridge isGrowlRunning]) {
+ text = NSLocalizedString(@"Growl will be used for sending notifications.\nAdvanced settings can be configured via Growl.",@"Preferences : Notifications : growl status text : growl installed and running");
+ }
+ else {
+ text = @"";
+
+ if(NSClassFromString(@"NSUserNotificationCenter")) { //this is what growl does
+ //10.8+
+ text = NSLocalizedString(@"Notification Center will be used for sending notifications. ",@"Preferences : Notifications : growl status text : growl not installed, Apple's Notificiation Center is used instead. (KEEP the SPACE at the end)");
+ }
+ //else case would be embedded growl ("Mist", 10.6 - 10.7), but telling that would IMHO be more confusing for the user.
+
+ text = [text stringByAppendingString:NSLocalizedString(@"Install Growl for advanced control over notifications.",@"Preferences : Notifications : growl status text : additional hint when embedded Growl ('Mist') or Notification Center is used.")];
+ }
+ [growlStatusLabel setStringValue:text];
+}
+
#pragma mark -
#pragma mark Preference pane protocol methods
diff --git a/UnitTests/SPMutableArrayAdditionsTests.h b/Source/SPOSInfo.h
index d96ef285..8b5bb65b 100644
--- a/UnitTests/SPMutableArrayAdditionsTests.h
+++ b/Source/SPOSInfo.h
@@ -1,9 +1,9 @@
//
-// SPMutableArrayAdditionsTests.h
+// SPOSInfo.h
// sequel-pro
//
-// Created by Stuart Connolly (stuconnolly.com) on February 2, 2011.
-// Copyright (c) 2011 Stuart Connolly. All rights reserved.
+// Created by Max Lohrmann on 14.02.15.
+// Copyright (c) 2015 Max Lohrmann. All rights reserved.
//
// Permission is hereby granted, free of charge, to any person
// obtaining a copy of this software and associated documentation
@@ -28,15 +28,23 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
-#import <SenTestingKit/SenTestingKit.h>
+#import <Foundation/Foundation.h>
+
+typedef struct {
+ NSInteger major;
+ NSInteger minor;
+ NSInteger patch;
+} SPOSVersion;
/**
- * @class SPMutableArrayAdditionsTest SPMutableArrayAdditionsTest.h
- *
- * @author Stuart Connolly http://stuconnolly.com/
- *
- * SPMutableArrayAdditions tests class.
+ * Compare two OS versions similar to strcmp()
+ * @param left One operand
+ * @param right The other operand
+ * @return A negative value if left < right, 0 is both are equal, a postive value if left > right
*/
-@interface SPMutableArrayAdditionsTests : SenTestCase
+int SPOSVersionCompare(SPOSVersion left, SPOSVersion right);
+@interface SPOSInfo : NSObject
++ (SPOSVersion)osVersion;
++ (BOOL)isOSVersionAtLeastMajor:(NSInteger)major minor:(NSInteger)minor patch:(NSInteger)patch;
@end
diff --git a/Source/SPOSInfo.m b/Source/SPOSInfo.m
new file mode 100644
index 00000000..8d91c067
--- /dev/null
+++ b/Source/SPOSInfo.m
@@ -0,0 +1,94 @@
+//
+// SPOSInfo.m
+// sequel-pro
+//
+// Created by Max Lohrmann on 14.02.15.
+// Copyright (c) 2015 Max Lohrmann. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <https://github.com/sequelpro/sequelpro>
+
+#import "SPOSInfo.h"
+
+#if __MAC_OS_X_VERSION_MAX_ALLOWED < __MAC_10_10
+// This code is available since 10.8 but public only since 10.10
+typedef struct {
+ NSInteger majorVersion;
+ NSInteger minorVersion;
+ NSInteger patchVersion;
+} NSOperatingSystemVersion;
+
+@interface NSProcessInfo ()
+- (NSOperatingSystemVersion)operatingSystemVersion;
+- (BOOL)isOperatingSystemAtLeastVersion:(NSOperatingSystemVersion)version;
+@end
+
+#endif
+
+int SPOSVersionCompare(SPOSVersion left, SPOSVersion right)
+{
+ if(left.major != right.major) return (left.major < right.major)? -1 : 1;
+ if(left.minor != right.minor) return (left.minor < right.minor)? -1 : 1;
+ if(left.patch != right.patch) return (left.patch < right.patch)? -1 : 1;
+ return 0;
+}
+
+@implementation SPOSInfo
+
++ (SPOSVersion)osVersion
+{
+ NSProcessInfo *procInfo = [NSProcessInfo processInfo];
+ if([procInfo respondsToSelector:@selector(operatingSystemVersion)]) {
+ NSOperatingSystemVersion nsVer = [procInfo operatingSystemVersion];
+ //structs cannot be casted per C standard
+ SPOSVersion spVer = {nsVer.majorVersion,nsVer.minorVersion,nsVer.patchVersion};
+ return spVer;
+ }
+ else {
+ SInt32 versionMajor = 0;
+ SInt32 versionMinor = 0;
+ SInt32 versionPatch = 0;
+ Gestalt(gestaltSystemVersionMajor, &versionMajor);
+ Gestalt(gestaltSystemVersionMinor, &versionMinor);
+ Gestalt(gestaltSystemVersionBugFix, &versionPatch);
+
+ SPOSVersion spVer = {versionMajor,versionMinor,versionPatch};
+ return spVer;
+ }
+}
+
++ (BOOL)isOSVersionAtLeastMajor:(NSInteger)major minor:(NSInteger)minor patch:(NSInteger)patch
+{
+ NSProcessInfo *procInfo = [NSProcessInfo processInfo];
+ if([procInfo respondsToSelector:@selector(isOperatingSystemAtLeastVersion:)]) {
+ NSOperatingSystemVersion nsVer = {major,minor,patch};
+ return [procInfo isOperatingSystemAtLeastVersion:nsVer];
+ }
+ else {
+ SPOSVersion runningVersion = [self osVersion];
+ SPOSVersion referenceVersion = {major, minor, patch};
+ return (SPOSVersionCompare(runningVersion, referenceVersion) >= 0);
+ }
+}
+
+@end
diff --git a/Source/SPParserUtils.c b/Source/SPParserUtils.c
new file mode 100644
index 00000000..69929cee
--- /dev/null
+++ b/Source/SPParserUtils.c
@@ -0,0 +1,118 @@
+//
+// SPParserUtils.c
+// sequel-pro
+//
+// Created by Max Lohrmann on 27.01.15.
+// Relocated from existing files. Previous copyright applies.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <https://github.com/sequelpro/sequelpro>
+
+#include "SPParserUtils.h"
+#include <stdint.h>
+
+#define SIZET (sizeof(size_t))
+#define SIZET1 (SIZET - 1)
+#define SBYTE (SIZET1 * 8)
+
+#define ONEMASK ((size_t)(-1) / 0xFF)
+#define ONEMASK8 (ONEMASK * 0x80)
+#define FMASK ((size_t)(-1)*(ONEMASK*0xf)-1)
+
+// adapted from http://www.daemonology.net/blog/2008-06-05-faster-utf8-strlen.html
+size_t utf8strlen(const char * _s)
+{
+
+ /* Due to [NSString length] behaviour for chars > 0xFFFF {length = 2}
+ "correct" the variable 'count' by subtraction the number
+ of occurrences of the start byte 0xF0 (4-byte UTF-8 char).
+ Here we assume that only up to 4-byte UTF-8 chars
+ are allowed [latest UTF-8 specification].
+
+ Marked in the source code by "CORRECT".
+ */
+
+ const char * s;
+ long count = 0;
+ size_t u = 0;
+ size_t u1 = 0;
+ unsigned char b;
+
+
+ /* Handle any initial misaligned bytes. */
+ for (s = _s; (uintptr_t)(s) & SIZET1; s++) {
+ b = *s;
+
+ /* Exit if we hit a zero byte. */
+ if (b == '\0')
+ goto done;
+
+ /* Is this byte NOT the first byte of a character? */
+ count += (b >> 7) & ((~b) >> 6);
+
+ /* CORRECT */
+ count -= (b & 0xf0) == 0xf0;
+ }
+
+ /* Handle complete blocks. */
+ for (; ; s += SIZET) {
+ /* Prefetch 256 bytes ahead. */
+ __builtin_prefetch(&s[256], 0, 0);
+
+ /* Grab 4 or 8 bytes of UTF-8 data. */
+ u = *(size_t *)(s);
+
+ /* Exit the loop if there are any zero bytes. */
+ if ((u - ONEMASK) & (~u) & ONEMASK8)
+ break;
+
+ /* CORRECT */
+ u1 = u & FMASK;
+ u1 = (u1 >> 7) & (u1 >> 6) & (u1 >> 5) & (u1 >> 4);
+ if (u1) count -= (u1 * ONEMASK) >> SBYTE;
+
+ /* Count bytes which are NOT the first byte of a character. */
+ u = ((u & ONEMASK8) >> 7) & ((~u) >> 6);
+
+ count += (u * ONEMASK) >> SBYTE;
+
+ }
+
+ /* Take care of any left-over bytes. */
+ for (; ; s++) {
+ b = *s;
+
+ /* Exit if we hit a zero byte. */
+ if (b == '\0')
+ break;
+
+ /* Is this byte NOT the first byte of a character? */
+ count += (b >> 7) & ((~b) >> 6);
+
+ /* CORRECT */
+ count -= (b & 0xf0) == 0xf0;
+ }
+
+done:
+ return ((s - _s) - count);
+}
diff --git a/UnitTests/SPStringAdditionsTests.h b/Source/SPParserUtils.h
index d6854dbe..487131e0 100644
--- a/UnitTests/SPStringAdditionsTests.h
+++ b/Source/SPParserUtils.h
@@ -1,9 +1,9 @@
//
-// SPStringAdditionsTests.h
+// SPParserUtils.h
// sequel-pro
//
-// Created by Jim Knight on May 17, 2009.
-// Copyright (c) 2009 Jim Knight. All rights reserved.
+// Created by Max Lohrmann on 27.01.15.
+// Relocated from existing files. Previous copyright applies.
//
// Permission is hereby granted, free of charge, to any person
// obtaining a copy of this software and associated documentation
@@ -28,12 +28,14 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
-#import <SenTestingKit/SenTestingKit.h>
+#ifndef __SPParserUtils__
+#define __SPParserUtils__
-@interface SPStringAdditionsTests : SenTestCase
+#include <stdio.h>
-- (void)testStringByRemovingCharactersInSet;
-- (void)testStringWithNewUUID;
-- (void)testCreateViewSyntaxPrettifier;
+/**
+ * Return number of characters (NOT bytes) in a given UTF-8 encoded C string.
+ */
+size_t utf8strlen(const char * _s);
-@end
+#endif /* defined(__SPParserUtils__) */
diff --git a/Source/SPPreferenceController.h b/Source/SPPreferenceController.h
index a001b60c..3434663e 100644
--- a/Source/SPPreferenceController.h
+++ b/Source/SPPreferenceController.h
@@ -61,7 +61,6 @@
NSToolbarItem *generalItem;
NSToolbarItem *notificationsItem;
NSToolbarItem *tablesItem;
- NSToolbarItem *favoritesItem;
NSToolbarItem *autoUpdateItem;
NSToolbarItem *networkItem;
NSToolbarItem *editorItem;
@@ -84,8 +83,6 @@
// Toolbar item IBAction methods
- (IBAction)displayPreferencePane:(id)sender;
-- (IBAction)displayTablePreferences:(id)sender;
-- (IBAction)displayEditorPreferences:(id)sender;
- (void)changeFont:(id)sender;
diff --git a/Source/SPPreferenceController.m b/Source/SPPreferenceController.m
index 3a67ae80..fad1d95b 100644
--- a/Source/SPPreferenceController.m
+++ b/Source/SPPreferenceController.m
@@ -68,8 +68,6 @@
{
[self _setupToolbar];
- [(SPGeneralPreferencePane *)generalPreferencePane updateDefaultFavoritePopup];
-
preferencePanes = [[NSArray alloc] initWithObjects:
generalPreferencePane,
tablesPreferencePane,
@@ -105,40 +103,9 @@
[toolbar setSelectedItemIdentifier:[preferencePane preferencePaneIdentifier]];
- [self _resizeWindowForContentView:[preferencePane preferencePaneView]];
-}
-
-/**
- * Displays the table preferences pane.
- */
-- (IBAction)displayTablePreferences:(id)sender
-{
- [[self window] setMinSize:NSMakeSize(0, 0)];
- [[self window] setShowsResizeIndicator:[tablesPreferencePane preferencePaneAllowsResizing]];
-
- [toolbar setSelectedItemIdentifier:[tablesPreferencePane preferencePaneIdentifier]];
+ [preferencePane preferencePaneWillBeShown];
- [(SPTablesPreferencePane *)tablesPreferencePane updateDisplayedTableFontName];
-
- [self _resizeWindowForContentView:[tablesPreferencePane preferencePaneView]];
-}
-
-/**
- * Displays the editor preferences pane.
- */
-- (IBAction)displayEditorPreferences:(id)sender
-{
- [(SPEditorPreferencePane *)editorPreferencePane updateColorSchemeSelectionMenu];
- [(SPEditorPreferencePane *)editorPreferencePane updateDisplayColorThemeName];
-
- [[self window] setMinSize:NSMakeSize(0, 0)];
- [[self window] setShowsResizeIndicator:[editorPreferencePane preferencePaneAllowsResizing]];
-
- [toolbar setSelectedItemIdentifier:[editorPreferencePane preferencePaneIdentifier]];
-
- [(SPEditorPreferencePane *)editorPreferencePane updateDisplayedEditorFontName];
-
- [self _resizeWindowForContentView:[editorPreferencePane preferencePaneView]];
+ [self _resizeWindowForContentView:[preferencePane preferencePaneView]];
}
#pragma mark -
@@ -161,14 +128,14 @@
[prefs setObject:[NSArchiver archivedDataWithRootObject:font] forKey:SPGlobalResultTableFont];
- [(SPTablesPreferencePane *)tablesPreferencePane updateDisplayedTableFontName];
+ [tablesPreferencePane updateDisplayedTableFontName];
break;
case SPPrefFontChangeTargetEditor:
font = [[NSFontPanel sharedFontPanel] panelConvertFont:[NSUnarchiver unarchiveObjectWithData:[prefs dataForKey:SPCustomQueryEditorFont]]];
[prefs setObject:[NSArchiver archivedDataWithRootObject:font] forKey:SPCustomQueryEditorFont];
- [(SPEditorPreferencePane *)editorPreferencePane updateDisplayedEditorFontName];
+ [editorPreferencePane updateDisplayedEditorFontName];
break;
}
}
@@ -198,7 +165,7 @@
[tablesItem setLabel:[tablesPreferencePane preferencePaneName]];
[tablesItem setImage:[tablesPreferencePane preferencePaneIcon]];
[tablesItem setTarget:self];
- [tablesItem setAction:@selector(displayTablePreferences:)];
+ [tablesItem setAction:@selector(displayPreferencePane:)];
// Notification preferences
notificationsItem = [[NSToolbarItem alloc] initWithItemIdentifier:[notificationsPreferencePane preferencePaneIdentifier]];
@@ -214,7 +181,7 @@
[editorItem setLabel:[editorPreferencePane preferencePaneName]];
[editorItem setImage:[editorPreferencePane preferencePaneIcon]];
[editorItem setTarget:self];
- [editorItem setAction:@selector(displayEditorPreferences:)];
+ [editorItem setAction:@selector(displayPreferencePane:)];
// AutoUpdate preferences
autoUpdateItem = [[NSToolbarItem alloc] initWithItemIdentifier:[autoUpdatePreferencePane preferencePaneIdentifier]];
@@ -263,7 +230,13 @@
- (void)dealloc
{
- [preferencePanes release], preferencePanes = nil;
+ SPClear(preferencePanes);
+ SPClear(generalItem);
+ SPClear(tablesItem);
+ SPClear(notificationsItem);
+ SPClear(editorItem);
+ SPClear(autoUpdateItem);
+ SPClear(networkItem);
[super dealloc];
}
diff --git a/Source/SPPreferenceControllerDelegate.h b/Source/SPPreferenceControllerDelegate.h
index 2fcdfb24..bcfcb271 100644
--- a/Source/SPPreferenceControllerDelegate.h
+++ b/Source/SPPreferenceControllerDelegate.h
@@ -37,6 +37,6 @@
*
* Preference controller delegate category.
*/
-@interface SPPreferenceController (SPPreferenceControllerDelegate)
+@interface SPPreferenceController (SPPreferenceControllerDelegate) <NSWindowDelegate>
@end
diff --git a/Source/SPPreferenceControllerDelegate.m b/Source/SPPreferenceControllerDelegate.m
index ca08f2f0..6a16de0f 100644
--- a/Source/SPPreferenceControllerDelegate.m
+++ b/Source/SPPreferenceControllerDelegate.m
@@ -62,7 +62,7 @@
#pragma mark -
#pragma mark Toolbar delegate methods
-- (NSToolbarItem *)toolbar:(NSToolbar *)toolbar itemForItemIdentifier:(NSString *)itemIdentifier willBeInsertedIntoToolbar:(BOOL)flag
+- (NSToolbarItem *)toolbar:(NSToolbar *)aToolbar itemForItemIdentifier:(NSString *)itemIdentifier willBeInsertedIntoToolbar:(BOOL)flag
{
if ([itemIdentifier isEqualToString:SPPreferenceToolbarGeneral]) {
return generalItem;
@@ -89,43 +89,43 @@
return [[[NSToolbarItem alloc] initWithItemIdentifier:itemIdentifier] autorelease];
}
-- (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar *)toolbar
+- (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar *)aToolbar
{
- return [NSArray arrayWithObjects:
- SPPreferenceToolbarGeneral,
- SPPreferenceToolbarTables,
- SPPreferenceToolbarNotifications,
- SPPreferenceToolbarEditor,
- SPPreferenceToolbarShortcuts,
- SPPreferenceToolbarAutoUpdate,
- SPPreferenceToolbarNetwork,
- nil];
+ return @[
+ SPPreferenceToolbarGeneral,
+ SPPreferenceToolbarTables,
+ SPPreferenceToolbarNotifications,
+ SPPreferenceToolbarEditor,
+ SPPreferenceToolbarShortcuts,
+ SPPreferenceToolbarAutoUpdate,
+ SPPreferenceToolbarNetwork
+ ];
}
-- (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar *)toolbar
+- (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar *)aToolbar
{
- return [NSArray arrayWithObjects:
- SPPreferenceToolbarGeneral,
- SPPreferenceToolbarTables,
- SPPreferenceToolbarNotifications,
- SPPreferenceToolbarEditor,
- SPPreferenceToolbarShortcuts,
- SPPreferenceToolbarAutoUpdate,
- SPPreferenceToolbarNetwork,
- nil];
+ return @[
+ SPPreferenceToolbarGeneral,
+ SPPreferenceToolbarTables,
+ SPPreferenceToolbarNotifications,
+ SPPreferenceToolbarEditor,
+ SPPreferenceToolbarShortcuts,
+ SPPreferenceToolbarAutoUpdate,
+ SPPreferenceToolbarNetwork
+ ];
}
-- (NSArray *)toolbarSelectableItemIdentifiers:(NSToolbar *)toolbar
+- (NSArray *)toolbarSelectableItemIdentifiers:(NSToolbar *)aToolbar
{
- return [NSArray arrayWithObjects:
- SPPreferenceToolbarGeneral,
- SPPreferenceToolbarTables,
- SPPreferenceToolbarNotifications,
- SPPreferenceToolbarEditor,
- SPPreferenceToolbarShortcuts,
- SPPreferenceToolbarAutoUpdate,
- SPPreferenceToolbarNetwork,
- nil];
+ return @[
+ SPPreferenceToolbarGeneral,
+ SPPreferenceToolbarTables,
+ SPPreferenceToolbarNotifications,
+ SPPreferenceToolbarEditor,
+ SPPreferenceToolbarShortcuts,
+ SPPreferenceToolbarAutoUpdate,
+ SPPreferenceToolbarNetwork
+ ];
}
@end
diff --git a/Source/SPPreferencePane.h b/Source/SPPreferencePane.h
index 39d239c8..19e0436b 100644
--- a/Source/SPPreferencePane.h
+++ b/Source/SPPreferencePane.h
@@ -42,5 +42,5 @@
{
NSUserDefaults *prefs;
}
-
+- (void)preferencePaneWillBeShown;
@end
diff --git a/Source/SPPreferencePane.m b/Source/SPPreferencePane.m
index a1b85ed7..39a870c7 100644
--- a/Source/SPPreferencePane.m
+++ b/Source/SPPreferencePane.m
@@ -47,4 +47,9 @@
return self;
}
+- (void)preferencePaneWillBeShown
+{
+ // Default: do nothing. Override in subclass.
+}
+
@end
diff --git a/Source/SPPreferencePaneProtocol.h b/Source/SPPreferencePaneProtocol.h
index a9d67598..e00e12ec 100644
--- a/Source/SPPreferencePaneProtocol.h
+++ b/Source/SPPreferencePaneProtocol.h
@@ -79,4 +79,9 @@
*/
- (BOOL)preferencePaneAllowsResizing;
+/**
+ * Called shortly before the preference pane will be made visible
+ */
+- (void)preferencePaneWillBeShown;
+
@end
diff --git a/Source/SPPreferencesUpgrade.m b/Source/SPPreferencesUpgrade.m
index d4a9ca84..d88dc4c8 100644
--- a/Source/SPPreferencesUpgrade.m
+++ b/Source/SPPreferencesUpgrade.m
@@ -76,7 +76,7 @@ void SPApplyRevisionChanges(void)
}
// Inform SPAppController to check installed default Bundles for available updates
- [prefs setObject:[NSNumber numberWithBool:YES] forKey:@"doBundleUpdate"];
+ [prefs setObject:@YES forKey:@"doBundleUpdate"];
// For versions prior to r336 (0.9.4), where column widths have been saved, walk through them and remove
// any table widths set to 15 or less (fix for mangled columns caused by Issue #140)
@@ -130,22 +130,22 @@ void SPApplyRevisionChanges(void)
if (recordedVersionNumber < 561) {
NSEnumerator *keyEnumerator;
NSString *oldKey, *newKey;
- NSDictionary *keysToUpgrade = [NSDictionary dictionaryWithObjectsAndKeys:
- @"encoding", SPDefaultEncoding,
- @"useMonospacedFonts", SPUseMonospacedFonts,
- @"reloadAfterAdding", SPReloadAfterAddingRow,
- @"reloadAfterEditing", SPReloadAfterEditingRow,
- @"reloadAfterRemoving", SPReloadAfterRemovingRow,
- @"dontShowBlob", SPLoadBlobsAsNeeded,
- @"fetchRowCount", @"FetchCorrectRowCount",
- @"limitRows", SPLimitResults,
- @"limitRowsValue", SPLimitResultsValue,
- @"nullValue", SPNullValue,
- @"showError", SPShowNoAffectedRowsError,
- @"connectionTimeout", SPConnectionTimeoutValue,
- @"keepAliveInterval", SPKeepAliveInterval,
- @"lastFavoriteIndex", SPLastFavoriteID,
- nil];
+ NSDictionary *keysToUpgrade = @{
+ SPDefaultEncoding : @"encoding",
+ SPUseMonospacedFonts : @"useMonospacedFonts",
+ SPReloadAfterAddingRow : @"reloadAfterAdding",
+ SPReloadAfterEditingRow : @"reloadAfterEditing",
+ SPReloadAfterRemovingRow : @"reloadAfterRemoving",
+ SPLoadBlobsAsNeeded : @"dontShowBlob",
+ @"FetchCorrectRowCount" : @"fetchRowCount",
+ SPLimitResults : @"limitRows",
+ SPLimitResultsValue : @"limitRowsValue",
+ SPNullValue : @"nullValue",
+ SPShowNoAffectedRowsError : @"showError",
+ SPConnectionTimeoutValue : @"connectionTimeout",
+ SPKeepAliveInterval : @"keepAliveInterval",
+ SPLastFavoriteID : @"lastFavoriteIndex"
+ };
keyEnumerator = [keysToUpgrade keyEnumerator];
@@ -214,17 +214,17 @@ void SPApplyRevisionChanges(void)
if ([[favorite objectForKey:@"host"] isEqualToString:@"localhost"]
|| ([favorite objectForKey:@"socket"] && [(NSString *)[favorite objectForKey:@"socket"] length]))
{
- [favorite setObject:[NSNumber numberWithInteger:1] forKey:@"type"];
+ [favorite setObject:@1 forKey:@"type"];
// If SSH details are set, set to tunnel connection
}
else if ([favorite objectForKey:@"useSSH"] && [[favorite objectForKey:@"useSSH"] integerValue]) {
- [favorite setObject:[NSNumber numberWithInteger:2] forKey:@"type"];
+ [favorite setObject:@2 forKey:@"type"];
// Default to TCP/IP
}
else {
- [favorite setObject:[NSNumber numberWithInteger:0] forKey:@"type"];
+ [favorite setObject:@0 forKey:@"type"];
}
// Remove SSH tunnel flag - no longer required
@@ -255,7 +255,7 @@ void SPApplyRevisionChanges(void)
if (([favorite isKindOfClass:[NSDictionary class]]) && ([favorite objectForKey:@"name"]) && ([favorite objectForKey:@"query"])) {
NSMutableString *favoriteName = [NSMutableString stringWithString:[favorite objectForKey:@"name"]];
[favoriteName replaceOccurrencesOfString:@"\n" withString:@" " options:NSLiteralSearch range:NSMakeRange(0, [favoriteName length])];
- [queryFavoritesArray replaceObjectAtIndex:i withObject:[NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:[NSString stringWithString:favoriteName], [favorite objectForKey:@"query"], nil] forKeys:[NSArray arrayWithObjects:@"name", @"query", nil]]];
+ [queryFavoritesArray replaceObjectAtIndex:i withObject:[NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:[NSString stringWithString:favoriteName], [favorite objectForKey:@"query"], nil] forKeys:@[@"name", @"query"]]];
continue;
}
@@ -268,7 +268,7 @@ void SPApplyRevisionChanges(void)
[favoriteName appendString:@"..."];
}
- [queryFavoritesArray replaceObjectAtIndex:i withObject:[NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:[NSString stringWithString:favoriteName], favorite, nil] forKeys:[NSArray arrayWithObjects:@"name", @"query", nil]]];
+ [queryFavoritesArray replaceObjectAtIndex:i withObject:[NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:[NSString stringWithString:favoriteName], favorite, nil] forKeys:@[@"name", @"query"]]];
}
[prefs setObject:queryFavoritesArray forKey:SPQueryFavorites];
@@ -287,31 +287,31 @@ void SPApplyRevisionChanges(void)
// For versions prior to 2325 (<0.9.9), convert the old encoding pref string into the new localizable constant
if (recordedVersionNumber < 2325 && [prefs objectForKey:SPOldDefaultEncodingKey] && [[prefs objectForKey:SPOldDefaultEncodingKey] isKindOfClass:[NSString class]]) {
- NSDictionary *encodingMap = [NSDictionary dictionaryWithObjectsAndKeys:
- [NSNumber numberWithInt:SPEncodingAutodetect], @"Autodetect",
- [NSNumber numberWithInt:SPEncodingUCS2], @"UCS-2 Unicode (ucs2)",
- [NSNumber numberWithInt:SPEncodingUTF8], @"UTF-8 Unicode (utf8)",
- [NSNumber numberWithInt:SPEncodingUTF8viaLatin1], @"UTF-8 Unicode via Latin 1",
- [NSNumber numberWithInt:SPEncodingASCII], @"US ASCII (ascii)",
- [NSNumber numberWithInt:SPEncodingLatin1], @"ISO Latin 1 (latin1)",
- [NSNumber numberWithInt:SPEncodingMacRoman], @"Mac Roman (macroman)",
- [NSNumber numberWithInt:SPEncodingCP1250Latin2], @"Windows Latin 2 (cp1250)",
- [NSNumber numberWithInt:SPEncodingISOLatin2], @"ISO Latin 2 (latin2)",
- [NSNumber numberWithInt:SPEncodingCP1256Arabic], @"Windows Arabic (cp1256)",
- [NSNumber numberWithInt:SPEncodingGreek], @"ISO Greek (greek)",
- [NSNumber numberWithInt:SPEncodingHebrew], @"ISO Hebrew (hebrew)",
- [NSNumber numberWithInt:SPEncodingLatin5Turkish], @"ISO Turkish (latin5)",
- [NSNumber numberWithInt:SPEncodingCP1257WinBaltic], @"Windows Baltic (cp1257)",
- [NSNumber numberWithInt:SPEncodingCP1251WinCyrillic], @"Windows Cyrillic (cp1251)",
- [NSNumber numberWithInt:SPEncodingBig5Chinese], @"Big5 Traditional Chinese (big5)",
- [NSNumber numberWithInt:SPEncodingShiftJISJapanese], @"Shift-JIS Japanese (sjis)",
- [NSNumber numberWithInt:SPEncodingEUCJPJapanese], @"EUC-JP Japanese (ujis)",
- [NSNumber numberWithInt:SPEncodingEUCKRKorean], @"EUC-KR Korean (euckr)",
- nil];
+ NSDictionary *encodingMap = @{
+ @"Autodetect" : @(SPEncodingAutodetect),
+ @"UCS-2 Unicode (ucs2)" : @(SPEncodingUCS2),
+ @"UTF-8 Unicode (utf8)" : @(SPEncodingUTF8),
+ @"UTF-8 Unicode via Latin 1" : @(SPEncodingUTF8viaLatin1),
+ @"US ASCII (ascii)" : @(SPEncodingASCII),
+ @"ISO Latin 1 (latin1)" : @(SPEncodingLatin1),
+ @"Mac Roman (macroman)" : @(SPEncodingMacRoman),
+ @"Windows Latin 2 (cp1250)" : @(SPEncodingCP1250Latin2),
+ @"ISO Latin 2 (latin2)" : @(SPEncodingISOLatin2),
+ @"Windows Arabic (cp1256)" : @(SPEncodingCP1256Arabic),
+ @"ISO Greek (greek)" : @(SPEncodingGreek),
+ @"ISO Hebrew (hebrew)" : @(SPEncodingHebrew),
+ @"ISO Turkish (latin5)" : @(SPEncodingLatin5Turkish),
+ @"Windows Baltic (cp1257)" : @(SPEncodingCP1257WinBaltic),
+ @"Windows Cyrillic (cp1251)" : @(SPEncodingCP1251WinCyrillic),
+ @"Big5 Traditional Chinese (big5)" : @(SPEncodingBig5Chinese),
+ @"Shift-JIS Japanese (sjis)" : @(SPEncodingShiftJISJapanese),
+ @"EUC-JP Japanese (ujis)" : @(SPEncodingEUCJPJapanese),
+ @"EUC-KR Korean (euckr)" : @(SPEncodingEUCKRKorean)
+ };
NSNumber *newMappedValue = [encodingMap valueForKey:[prefs objectForKey:SPOldDefaultEncodingKey]];
- if (newMappedValue == nil) newMappedValue = [NSNumber numberWithInt:0];
+ if (newMappedValue == nil) newMappedValue = @0;
[prefs setObject:newMappedValue forKey:@"DefaultEncodingTag"];
}
@@ -394,7 +394,7 @@ void SPMigrateConnectionFavoritesData(void)
[prefs removeObjectForKey:@"LastFavoriteIndex"];
}
- NSDictionary *newFavorites = [NSDictionary dictionaryWithObject:[NSDictionary dictionaryWithObjectsAndKeys:NSLocalizedString(@"Favorites", @"favorites label"), SPFavoritesGroupNameKey, favorites, SPFavoriteChildrenKey, nil] forKey:SPFavoritesRootKey];
+ NSDictionary *newFavorites = @{SPFavoritesRootKey : [NSDictionary dictionaryWithObjectsAndKeys:NSLocalizedString(@"Favorites", @"favorites label"), SPFavoritesGroupNameKey, favorites, SPFavoriteChildrenKey, nil]};
error = nil;
NSString *errorString = nil;
diff --git a/Source/SPPrintAccessory.m b/Source/SPPrintAccessory.m
index aab04630..043d04a1 100644
--- a/Source/SPPrintAccessory.m
+++ b/Source/SPPrintAccessory.m
@@ -49,7 +49,7 @@
- (NSArray *)localizedSummaryItems
{
- return [NSArray arrayWithObject:[NSDictionary dictionary]];
+ return @[@{}];
}
- (NSSet *)keyPathsForValuesAffectingPreview
diff --git a/Source/SPPrintController.m b/Source/SPPrintController.m
index 0b8d78c9..d0feec68 100644
--- a/Source/SPPrintController.m
+++ b/Source/SPPrintController.m
@@ -193,7 +193,7 @@
{
[[printWebView mainFrame] loadHTMLString:HTMLString baseURL:nil];
- if (printThread) [printThread release];
+ if (printThread) SPClear(printThread);
}
/**
@@ -251,7 +251,7 @@
[printData setObject:indexes forKey:@"indexes"];
[printData setObject:indexColumns forKey:@"indexColumns"];
- if ([indexes count]) [printData setObject:[NSNumber numberWithInteger:1] forKey:@"hasIndexes"];
+ if ([indexes count]) [printData setObject:@1 forKey:@"hasIndexes"];
[rows release];
[indexes release];
diff --git a/Source/SPProcessListController.m b/Source/SPProcessListController.m
index 956b0d9b..5f8a422e 100644
--- a/Source/SPProcessListController.m
+++ b/Source/SPProcessListController.m
@@ -85,7 +85,7 @@ static NSString *SPTableViewIDColumnIdentifier = @"Id";
- (void)awakeFromNib
{
- [[self window] setTitle:[NSString stringWithFormat:NSLocalizedString(@"Server Processes on %@", @"server processes window title (var = hostname)"),[[(SPAppController*)[NSApp delegate] frontDocument] name]]];
+ [[self window] setTitle:[NSString stringWithFormat:NSLocalizedString(@"Server Processes on %@", @"server processes window title (var = hostname)"),[[SPAppDelegate frontDocument] name]]];
[self setWindowFrameAutosaveName:@"ProcessList"];
@@ -167,7 +167,7 @@ static NSString *SPTableViewIDColumnIdentifier = @"Id";
NSPasteboard *pasteBoard = [NSPasteboard generalPasteboard];
// Copy the string to the pasteboard
- [pasteBoard declareTypes:[NSArray arrayWithObjects:NSStringPboardType, nil] owner:nil];
+ [pasteBoard declareTypes:@[NSStringPboardType] owner:nil];
[pasteBoard setString:string forType:NSStringPboardType];
}
}
@@ -238,7 +238,7 @@ static NSString *SPTableViewIDColumnIdentifier = @"Id";
[panel beginSheetModalForWindow:[self window] completionHandler:^(NSInteger returnCode) {
if (returnCode == NSOKButton) {
if ([processesFiltered count] > 0) {
- NSMutableString *processesString = [NSMutableString stringWithFormat:@"# MySQL server proceese for %@\n\n", [[[NSApp delegate] frontDocument] host]];
+ NSMutableString *processesString = [NSMutableString stringWithFormat:@"# MySQL server proceese for %@\n\n", [[SPAppDelegate frontDocument] host]];
for (NSDictionary *process in processesFiltered)
{
@@ -500,7 +500,7 @@ static NSString *SPTableViewIDColumnIdentifier = @"Id";
{
// If the filtered array is allocated and it's not a reference to the processes array get rid of it
if ((processesFiltered) && (processesFiltered != processes)) {
- [processesFiltered release], processesFiltered = nil;
+ SPClear(processesFiltered);
}
// Kill the auto refresh timer if running
@@ -554,7 +554,7 @@ static NSString *SPTableViewIDColumnIdentifier = @"Id";
// If the auto refresh timer is running, kill it
if (autoRefreshTimer && [autoRefreshTimer isValid]) {
[autoRefreshTimer invalidate];
- [autoRefreshTimer release], autoRefreshTimer = nil;
+ SPClear(autoRefreshTimer);
}
}
@@ -710,7 +710,7 @@ static NSString *SPTableViewIDColumnIdentifier = @"Id";
// If the filtered array is allocated and its not a reference to the processes array,
// relase it to prevent memory leaks upon the next allocation.
if ((processesFiltered) && (processesFiltered != processes)) {
- [processesFiltered release], processesFiltered = nil;
+ SPClear(processesFiltered);
}
processesFiltered = [[NSMutableArray alloc] init];
@@ -763,9 +763,9 @@ static NSString *SPTableViewIDColumnIdentifier = @"Id";
processListThreadRunning = NO;
- [processes release], processes = nil;
+ SPClear(processes);
- if (autoRefreshTimer) [autoRefreshTimer release], autoRefreshTimer = nil;
+ if (autoRefreshTimer) SPClear(autoRefreshTimer);
[super dealloc];
}
diff --git a/Source/SPQueryController.m b/Source/SPQueryController.m
index 718a5ff3..c57621d8 100644
--- a/Source/SPQueryController.m
+++ b/Source/SPQueryController.m
@@ -171,20 +171,23 @@ static SPQueryController *sharedQueryController = nil;
if (i < [messagesVisibleSet count]) {
SPConsoleMessage *message = NSArrayObjectAtIndex(messagesVisibleSet, i);
- if (includeTimestamps || includeConnections) [string appendString:@"/* "];
+ if (includeTimestamps || includeConnections || includeDatabases) [string appendString:@"/* "];
- if (includeTimestamps) {
- [string appendString:[dateFormatter stringFromDate:[message messageDate]]];
+ NSDate *date = [message messageDate];
+ if (includeTimestamps && date) {
+ [string appendString:[dateFormatter stringFromDate:date]];
[string appendString:@" "];
}
- if (includeConnections) {
- [string appendString:[message messageConnection]];
+ NSString *connection = [message messageConnection];
+ if (includeConnections && connection) {
+ [string appendString:connection];
[string appendString:@" "];
}
- if (includeDatabases) {
- [string appendString:[message messageDatabase]];
+ NSString *database = [message messageDatabase];
+ if (includeDatabases && database) {
+ [string appendString:database];
[string appendString:@" "];
}
@@ -199,7 +202,7 @@ static SPQueryController *sharedQueryController = nil;
NSPasteboard *pasteBoard = [NSPasteboard generalPasteboard];
// Copy the string to the pasteboard
- [pasteBoard declareTypes:[NSArray arrayWithObjects:NSStringPboardType, nil] owner:nil];
+ [pasteBoard declareTypes:@[NSStringPboardType] owner:nil];
[pasteBoard setString:string forType:NSStringPboardType];
}
#endif
@@ -226,7 +229,7 @@ static SPQueryController *sharedQueryController = nil;
#ifndef SP_CODA
NSSavePanel *panel = [NSSavePanel savePanel];
- [panel setAllowedFileTypes:[NSArray arrayWithObject:SPFileExtensionSQL]];
+ [panel setAllowedFileTypes:@[SPFileExtensionSQL]];
[panel setExtensionHidden:NO];
[panel setAllowsOtherFileTypes:YES];
@@ -458,7 +461,7 @@ static SPQueryController *sharedQueryController = nil;
[progressIndicator startAnimation:self];
// Don't allow clearing the console while filtering its content
- [self _allowFilterClearOrSave:[NSNumber numberWithBool:NO]];
+ [self _allowFilterClearOrSave:@NO];
[messagesFilteredSet removeAllObjects];
@@ -470,7 +473,7 @@ static SPQueryController *sharedQueryController = nil;
[consoleTableView reloadData];
[consoleTableView scrollRowToVisible:([messagesVisibleSet count] - 1)];
- [self _allowFilterClearOrSave:[NSNumber numberWithBool:YES]];
+ [self _allowFilterClearOrSave:@YES];
[saveConsoleButton setTitle:NSLocalizedString(@"Save As...", @"save as button title")];
@@ -502,7 +505,7 @@ static SPQueryController *sharedQueryController = nil;
[consoleTableView scrollRowToVisible:([messagesVisibleSet count] - 1)];
if ([messagesVisibleSet count] > 0) {
- [self _allowFilterClearOrSave:[NSNumber numberWithBool:YES]];
+ [self _allowFilterClearOrSave:@YES];
}
[saveConsoleButton setTitle:NSLocalizedString(@"Save View As...", @"save view as button title")];
@@ -623,7 +626,7 @@ static SPQueryController *sharedQueryController = nil;
&& [self _messageMatchesCurrentFilters:[consoleMessage message]])
{
[messagesFilteredSet addObject:[messagesFullSet lastObject]];
- [self performSelectorOnMainThread:@selector(_allowFilterClearOrSave:) withObject:[NSNumber numberWithBool:YES] waitUntilDone:NO];
+ [self performSelectorOnMainThread:@selector(_allowFilterClearOrSave:) withObject:@YES waitUntilDone:NO];
}
// Reload the table and scroll to the new message if it's visible (for speed)
@@ -645,20 +648,20 @@ static SPQueryController *sharedQueryController = nil;
[NSObject cancelPreviousPerformRequestsWithTarget:self];
#ifndef SP_CODA
- [dateFormatter release], dateFormatter = nil;
+ SPClear(dateFormatter);
- [messagesFullSet release], messagesFullSet = nil;
- [messagesFilteredSet release], messagesFilteredSet = nil;
- [activeFilterString release], activeFilterString = nil;
+ SPClear(messagesFullSet);
+ SPClear(messagesFilteredSet);
+ SPClear(activeFilterString);
- [favoritesContainer release], favoritesContainer = nil;
- [historyContainer release], historyContainer = nil;
- [contentFilterContainer release], contentFilterContainer = nil;
+ SPClear(favoritesContainer);
+ SPClear(historyContainer);
+ SPClear(contentFilterContainer);
#endif
- if (completionKeywordList) [completionKeywordList release], completionKeywordList = nil;
- if (completionFunctionList) [completionFunctionList release], completionFunctionList = nil;
- if (functionArgumentSnippets) [functionArgumentSnippets release], functionArgumentSnippets = nil;
+ if (completionKeywordList) SPClear(completionKeywordList);
+ if (completionFunctionList) SPClear(completionFunctionList);
+ if (functionArgumentSnippets) SPClear(functionArgumentSnippets);
#ifndef SP_CODA
pthread_mutex_destroy(&consoleLock);
diff --git a/Source/SPQueryControllerInitializer.m b/Source/SPQueryControllerInitializer.m
index 8890a607..fc03d107 100644
--- a/Source/SPQueryControllerInitializer.m
+++ b/Source/SPQueryControllerInitializer.m
@@ -136,7 +136,7 @@ static NSString *SPCompletionTokensSnippetsKey = @"function_argument_snippets";
}
}
- return errorDescription ? [NSError errorWithDomain:NSCocoaErrorDomain code:1 userInfo:[NSDictionary dictionaryWithObject:errorDescription forKey:NSLocalizedDescriptionKey]] : nil;
+ return errorDescription ? [NSError errorWithDomain:NSCocoaErrorDomain code:1 userInfo:@{NSLocalizedDescriptionKey : errorDescription}] : nil;
}
@end
diff --git a/Source/SPQueryDocumentsController.m b/Source/SPQueryDocumentsController.m
index ba1bc2b1..e4689c41 100644
--- a/Source/SPQueryDocumentsController.m
+++ b/Source/SPQueryDocumentsController.m
@@ -30,6 +30,7 @@
#import "SPQueryDocumentsController.h"
#import "SPCustomQuery.h"
+#import "SPAppController.h"
@implementation SPQueryController (SPQueryDocumentsController)
@@ -122,7 +123,7 @@
#ifndef SP_CODA
// Check for multiple instance of the same document.
// Remove it if only one instance was registerd.
- NSArray *allDocs = [[NSApp delegate] orderedDocuments];
+ NSArray *allDocs = [SPAppDelegate orderedDocuments];
NSMutableArray *allURLs = [NSMutableArray array];
for (id doc in allDocs)
@@ -202,7 +203,7 @@
}
// Inform all opened documents to update the history list
- for (id doc in [[NSApp delegate] orderedDocuments])
+ for (id doc in [SPAppDelegate orderedDocuments])
{
if([[doc valueForKeyPath:@"customQueryInstance"] respondsToSelector:@selector(historyItemsHaveBeenUpdated:)]) {
[[doc valueForKeyPath:@"customQueryInstance"] performSelectorOnMainThread:@selector(historyItemsHaveBeenUpdated:) withObject:self waitUntilDone:NO];
@@ -311,7 +312,7 @@
}
#endif
- return [NSArray array];
+ return @[];
}
/**
@@ -354,7 +355,7 @@
- (NSArray *)queryFavoritesForFileURL:(NSURL *)fileURL andTabTrigger:(NSString *)tabTrigger includeGlobals:(BOOL)includeGlobals
{
- if (![tabTrigger length]) return [NSArray array];
+ if (![tabTrigger length]) return @[];
NSMutableArray *result = [[NSMutableArray alloc] init];
@@ -389,7 +390,7 @@
*/
- (NSArray*)functionList
{
- return (completionFunctionList != nil && [completionFunctionList count]) ? completionFunctionList : [NSArray array];
+ return (completionFunctionList != nil && [completionFunctionList count]) ? completionFunctionList : @[];
}
/**
@@ -397,7 +398,7 @@
*/
- (NSArray*)keywordList
{
- return (completionKeywordList != nil && [completionKeywordList count]) ? completionKeywordList : [NSArray array];
+ return (completionKeywordList != nil && [completionKeywordList count]) ? completionKeywordList : @[];
}
/**
diff --git a/Source/SPQueryFavoriteManager.m b/Source/SPQueryFavoriteManager.m
index 97f7790b..a715bd93 100644
--- a/Source/SPQueryFavoriteManager.m
+++ b/Source/SPQueryFavoriteManager.m
@@ -38,12 +38,11 @@
#import "RegexKitLite.h"
#import "SPTextView.h"
#import "SPSplitView.h"
+#import "SPAppController.h"
#define SP_MULTIPLE_SELECTION_PLACEHOLDER_STRING NSLocalizedString(@"[multiple selection]", @"[multiple selection]")
#define SP_NO_SELECTION_PLACEHOLDER_STRING NSLocalizedString(@"[no selection]", @"[no selection]")
-#define SP_Int(x) [NSNumber numberWithInteger:x]
-
@interface SPQueryFavoriteManager ()
- (void)_initWithNoSelection;
@@ -85,11 +84,11 @@
- (void)awakeFromNib
{
#ifndef SP_CODA
- [favorites addObject:[NSDictionary dictionaryWithObjectsAndKeys:
- @"Global", @"name",
- @"", @"headerOfFileURL",
- @"", @"query",
- nil]];
+ [favorites addObject:@{
+ @"name" : @"Global",
+ @"headerOfFileURL" : @"",
+ @"query" : @""
+ }];
// Set up the split view
[favoritesSplitView setMinSize:152.f ofSubviewAtIndex:0];
@@ -123,7 +122,7 @@
[self _initWithNoSelection];
// Register drag types
- [favoritesTableView registerForDraggedTypes:[NSArray arrayWithObject:SPFavoritesPasteboardDragType]];
+ [favoritesTableView registerForDraggedTypes:@[SPFavoritesPasteboardDragType]];
[favoritesArrayController setContent:favorites];
[favoritesTableView reloadData];
@@ -205,7 +204,7 @@
favorite = [NSMutableDictionary dictionaryWithObjects:[NSArray arrayWithObjects:[[favoriteNameTextField stringValue] stringByAppendingFormat:@" Copy"], [favoriteQueryTextView string], nil] forKeys:[NSArray arrayWithObjects:@"name", @"query", nil]];
// Add a new favorite
else
- favorite = [NSMutableDictionary dictionaryWithObjects:[NSArray arrayWithObjects:@"New Favorite", @"", nil] forKeys:[NSArray arrayWithObjects:@"name", @"query", nil]];
+ favorite = [NSMutableDictionary dictionaryWithObjects:@[@"New Favorite", @""] forKeys:@[@"name", @"query"]];
// If a favourite is currently selected, add the new favourite next to it
if ([favoritesTableView numberOfSelectedRows] > 0) {
@@ -309,7 +308,7 @@
#ifndef SP_CODA
NSSavePanel *panel = [NSSavePanel savePanel];
- [panel setAllowedFileTypes:[NSArray arrayWithObject:SPFileExtensionSQL]];
+ [panel setAllowedFileTypes:@[SPFileExtensionSQL]];
[panel setExtensionHidden:NO];
[panel setAllowsOtherFileTypes:YES];
@@ -334,7 +333,7 @@
#ifndef SP_CODA
NSSavePanel *panel = [NSSavePanel savePanel];
- [panel setAllowedFileTypes:[NSArray arrayWithObject:SPFileExtensionDefault]];
+ [panel setAllowedFileTypes:@[SPFileExtensionDefault]];
[panel setExtensionHidden:NO];
[panel setAllowsOtherFileTypes:NO];
@@ -379,24 +378,24 @@
{
// Look up the sender's tag to determine the placeholder to insert.
// Note that tag values alter behaviour slightly - see below.
- NSDictionary *lookupTable = [NSDictionary dictionaryWithObjectsAndKeys:
- NSLocalizedString(@"default_value", @"Query snippet default value placeholder"), SP_Int(100),
- NSLocalizedString(@"$(shell_command)", @"Query snippet shell command syntax and placeholder"), SP_Int(101),
- @"$1", SP_Int(501),
- @"¦a¦b¦", SP_Int(102),
- @"¦¦a¦b¦¦", SP_Int(103),
- @"¦", SP_Int(104),
- @"$SP_SELECTED_TABLE", SP_Int(105),
- @"$SP_SELECTED_TABLES", SP_Int(106),
- @"$SP_SELECTED_DATABASE", SP_Int(107),
- @"¦$SP_ASLIST_ALL_FIELDS¦", SP_Int(108),
- @"¦¦$SP_ASLIST_ALL_FIELDS¦¦", SP_Int(109),
- @"¦$SP_ASLIST_ALL_TABLES¦", SP_Int(110),
- @"¦¦$SP_ASLIST_ALL_TABLES¦¦", SP_Int(111),
- @"¦$SP_ASLIST_ALL_DATABASES¦", SP_Int(112),
- @"¦¦$SP_ASLIST_ALL_DATABASES¦¦", SP_Int(113),
- nil];
- NSString *placeholder = [lookupTable objectForKey:SP_Int([[sender selectedItem] tag])];
+ NSDictionary *lookupTable = @{
+ @100 : NSLocalizedString(@"default_value", @"Query snippet default value placeholder"),
+ @101 : NSLocalizedString(@"$(shell_command)", @"Query snippet shell command syntax and placeholder"),
+ @501 : @"$1",
+ @102 : @"¦a¦b¦",
+ @103 : @"¦¦a¦b¦¦",
+ @104 : @"¦",
+ @105 : @"$SP_SELECTED_TABLE",
+ @106 : @"$SP_SELECTED_TABLES",
+ @107 : @"$SP_SELECTED_DATABASE",
+ @108 : @"¦$SP_ASLIST_ALL_FIELDS¦",
+ @109 : @"¦¦$SP_ASLIST_ALL_FIELDS¦¦",
+ @110 : @"¦$SP_ASLIST_ALL_TABLES¦",
+ @111 : @"¦¦$SP_ASLIST_ALL_TABLES¦¦",
+ @112 : @"¦$SP_ASLIST_ALL_DATABASES¦",
+ @113 : @"¦¦$SP_ASLIST_ALL_DATABASES¦¦"
+ };
+ NSString *placeholder = [lookupTable objectForKey:[NSNumber numberWithInteger:[[sender selectedItem] tag]]];
if (!placeholder) [NSException raise:NSInternalInconsistencyException format:@"Inserted placeholder (%lld) not found", (long long)[[sender selectedItem] tag]];
// Iterate through the current snippets, to get the lowest unused tab counter, and
@@ -414,7 +413,7 @@
// Check whether the selection range lies within the snippet
if (selRange.location != NSNotFound
&& selRange.location > matchedRange.location + 1
- && selRange.location + selRange.length < matchedRange.location + matchedRange.length)
+ && NSMaxRange(selRange) < NSMaxRange(matchedRange))
{
selectionInsideSnippet = YES;
}
@@ -422,9 +421,9 @@
// Identify the tab completion index
NSRange snippetNumberRange = [queryString rangeOfRegex:snipRegex options:RKLNoOptions inRange:matchedRange capture:1L error:NULL];
NSInteger snippetNumber = [[queryString substringWithRange:snippetNumberRange] integerValue];
- [snippetNumbers setObject:[NSNumber numberWithBool:YES] forKey:[NSNumber numberWithInteger:snippetNumber]];
+ [snippetNumbers setObject:@YES forKey:[NSNumber numberWithInteger:snippetNumber]];
- rangeStart = matchedRange.location + matchedRange.length;
+ rangeStart = NSMaxRange(matchedRange);
}
// If the selection is not inside a snippet, wrap it inside the snippet syntax.
@@ -477,7 +476,7 @@
[prefs setObject:[self queryFavoritesForFileURL:nil] forKey:SPQueryFavorites];
// Inform all opened documents to update the query favorites list
- for(id doc in [[NSApp delegate] orderedDocuments])
+ for(id doc in [SPAppDelegate orderedDocuments])
if([[doc valueForKeyPath:@"customQueryInstance"] respondsToSelector:@selector(queryFavoritesHaveBeenUpdated:)])
[[doc valueForKeyPath:@"customQueryInstance"] queryFavoritesHaveBeenUpdated:self];
}
@@ -676,7 +675,7 @@
- (BOOL)tableView:(NSTableView *)aTableView writeRowsWithIndexes:(NSIndexSet *)rows toPasteboard:(NSPasteboard*)pboard
{
- NSArray *pboardTypes = [NSArray arrayWithObject:SPFavoritesPasteboardDragType];
+ NSArray *pboardTypes = @[SPFavoritesPasteboardDragType];
NSInteger originalRow = [rows firstIndex];
if(originalRow < 1) return NO;
@@ -917,9 +916,9 @@
NSMutableArray *favoriteData = [NSMutableArray array];
- [spfdata setObject:[NSNumber numberWithInteger:1] forKey:@"version"];
+ [spfdata setObject:@1 forKey:@"version"];
[spfdata setObject:@"query favorites" forKey:@"format"];
- [spfdata setObject:[NSNumber numberWithBool:NO] forKey:@"encrypted"];
+ [spfdata setObject:@NO forKey:@"encrypted"];
NSIndexSet *indexes = [favoritesTableView selectedRowIndexes];
@@ -972,7 +971,7 @@
- (void)dealloc
{
- [favorites release];
+ SPClear(favorites);
[super dealloc];
}
diff --git a/Source/SPSQLExporter.m b/Source/SPSQLExporter.m
index 649e4ac3..079ea8b9 100644
--- a/Source/SPSQLExporter.m
+++ b/Source/SPSQLExporter.m
@@ -614,7 +614,7 @@
}
// Export procedures and functions
- for (NSString *procedureType in [NSArray arrayWithObjects:@"PROCEDURE", @"FUNCTION", nil])
+ for (NSString *procedureType in @[@"PROCEDURE", @"FUNCTION"])
{
// Check for cancellation flag
if ([self isCancelled]) {
@@ -729,7 +729,7 @@
// A NULL result indicates a permission problem
if ([createProcedure isNSNull]) {
- NSString *errorString = [NSString stringWithFormat:NSLocalizedString(@"Could not export the %@ '%@' because of a permisions error.\n", @"Procedure/function export permission error"), procedureType, procedureName];
+ NSString *errorString = [NSString stringWithFormat:NSLocalizedString(@"Could not export the %@ '%@' because of a permissions error.\n", @"Procedure/function export permission error"), procedureType, procedureName];
[errors appendString:errorString];
if ([self sqlOutputIncludeErrors]) {
[[self exportOutputFile] writeData:[[NSString stringWithFormat:@"# Error: %@\n", errorString] dataUsingEncoding:NSUTF8StringEncoding]];
@@ -910,12 +910,12 @@
- (void)dealloc
{
- [sqlExportTables release], sqlExportTables = nil;
- [sqlDatabaseHost release], sqlDatabaseHost = nil;
- [sqlDatabaseName release], sqlDatabaseName = nil;
- [sqlExportCurrentTable release], sqlExportCurrentTable = nil;
- [sqlDatabaseVersion release], sqlDatabaseVersion = nil;
- [sqlExportErrors release], sqlExportErrors = nil;
+ SPClear(sqlExportTables);
+ SPClear(sqlDatabaseHost);
+ SPClear(sqlDatabaseName);
+ SPClear(sqlExportCurrentTable);
+ SPClear(sqlDatabaseVersion);
+ SPClear(sqlExportErrors);
[super dealloc];
}
diff --git a/Source/SPSQLParser.m b/Source/SPSQLParser.m
index d9162a66..d9bec2eb 100644
--- a/Source/SPSQLParser.m
+++ b/Source/SPSQLParser.m
@@ -790,8 +790,7 @@ TO_BUFFER_STATE to_scan_string (const char *);
// Drop back to standard non-delimiter mode if the delimiter has ended
if ([delimiter isEqualToString:[NSString stringWithFormat:@"%C", character]]) {
- if (delimiter) [delimiter release];
- delimiter = nil;
+ if (delimiter) SPClear(delimiter);
delimiterLengthMinusOne = 0;
}
@@ -1021,7 +1020,7 @@ TO_BUFFER_STATE to_scan_string (const char *);
}
- (void) setString:(NSString *)aString {
[string setString:aString];
- if (delimiter) [delimiter release], delimiter = nil;
+ if (delimiter) SPClear(delimiter);
delimiterLengthMinusOne = 0;
lastMatchIsDelimiter = NO;
[self _clearCharCache];
@@ -1039,8 +1038,8 @@ TO_BUFFER_STATE to_scan_string (const char *);
[self _clearCharCache];
}
- (void) dealloc {
- [string release];
- if (delimiter) [delimiter release];
+ SPClear(string);
+ if (delimiter) SPClear(delimiter);
if (charCacheEnd != -1) free(stringCharCache);
[super dealloc];
}
diff --git a/Source/SPSQLTokenizer.l b/Source/SPSQLTokenizer.l
index 24dac938..5b08f312 100644
--- a/Source/SPSQLTokenizer.l
+++ b/Source/SPSQLTokenizer.l
@@ -31,12 +31,12 @@
// More info at <https://github.com/sequelpro/sequelpro>
#import "SPSQLTokenizer.h"
+#include "SPParserUtils.h"
-int utf8strlenfortoken(const char * _s);
-int yyuoffset, yyuleng;
+size_t yyuoffset, yyuleng;
//keep track of the current utf-8 character (not byte) offset and token length
-#define YY_USER_ACTION { yyuoffset += yyuleng; yyuleng = utf8strlenfortoken(yytext); }
+#define YY_USER_ACTION { yyuoffset += yyuleng; yyuleng = utf8strlen(yytext); }
//ignore the output of unmatched characters
#define ECHO {}
%}
@@ -50,7 +50,7 @@ int yyuoffset, yyuleng;
s [ \t\n\r]
dkey "delimiter"
scol ";"
-dval [!-゚]
+dval [!-\x7E\x80-\xEF]
compstart "begin"{s}
compend {s}"end"
%x comment
@@ -63,7 +63,7 @@ compend {s}"end"
\"([^"\\]|\\(.|[\n\r]))*\"? { ; }
'([^'\\]|\\(.|[\n\r]))*'? { ; }
-`[^`]*`? { ; }
+`(``|[^`])*`? { ; }
"/*" { BEGIN(comment); }
<comment>[^*]* { ; }
@@ -90,56 +90,3 @@ compend {s}"end"
return 0;
}
%%
-#define ONEMASK ((size_t)(-1) / 0xFF)
-// adapted from http://www.daemonology.net/blog/2008-06-05-faster-utf8-strlen.html
-int utf8strlenfortoken(const char * _s)
-{
- const char * s;
- size_t count = 0;
- size_t u;
- unsigned char b;
-
- /* Handle any initial misaligned bytes. */
- for (s = _s; (uintptr_t)(s) & (sizeof(size_t) - 1); s++) {
- b = *s;
-
- /* Exit if we hit a zero byte. */
- if (b == '\0')
- goto done;
-
- /* Is this byte NOT the first byte of a character? */
- count += (b >> 7) & ((~b) >> 6);
- }
-
- /* Handle complete blocks. */
- for (; ; s += sizeof(size_t)) {
- /* Prefetch 256 bytes ahead. */
- __builtin_prefetch(&s[256], 0, 0);
-
- /* Grab 4 or 8 bytes of UTF-8 data. */
- u = *(size_t *)(s);
-
- /* Exit the loop if there are any zero bytes. */
- if ((u - ONEMASK) & (~u) & (ONEMASK * 0x80))
- break;
-
- /* Count bytes which are NOT the first byte of a character. */
- u = ((u & (ONEMASK * 0x80)) >> 7) & ((~u) >> 6);
- count += (u * ONEMASK) >> ((sizeof(size_t) - 1) * 8);
- }
-
- /* Take care of any left-over bytes. */
- for (; ; s++) {
- b = *s;
-
- /* Exit if we hit a zero byte. */
- if (b == '\0')
- break;
-
- /* Is this byte NOT the first byte of a character? */
- count += (b >> 7) & ((~b) >> 6);
- }
-
-done:
- return (int)((s - _s) - count);
-}
diff --git a/Source/SPSSHTunnel.m b/Source/SPSSHTunnel.m
index ff220318..d2c999c4 100644
--- a/Source/SPSSHTunnel.m
+++ b/Source/SPSSHTunnel.m
@@ -35,10 +35,13 @@
#import "SPKeychain.h"
#import "SPAlertSheets.h"
#import "SPThreadAdditions.h"
+#import "SPOSInfo.h"
#import <netinet/in.h>
#import <CommonCrypto/CommonDigest.h>
+static unsigned short getRandomPort();
+
@implementation SPSSHTunnel
@synthesize passwordPromptCancelled;
@@ -55,8 +58,7 @@
if (!theHost || !targetPort || !targetHost) return nil;
if ((self = [super init])) {
- SInt32 systemVersion = 0;
- Gestalt(gestaltSystemVersion, &systemVersion);
+ BOOL isOSVersionAtLeast10_7_0 = [SPOSInfo isOSVersionAtLeastMajor:10 minor:7 patch:0];
// Store the connection settings as appropriate
sshHost = [[NSString alloc] initWithString:theHost];
@@ -74,7 +76,7 @@
// Enable connection muxing on 10.7+, but only if a preference is enabled; this is because
// muxing causes connection instability for a large number of users (see Issue #1457)
- connectionMuxingEnabled = (systemVersion >= 0x1070) && [[NSUserDefaults standardUserDefaults] boolForKey:SPSSHEnableMuxingPreference];
+ connectionMuxingEnabled = isOSVersionAtLeast10_7_0 && [[NSUserDefaults standardUserDefaults] boolForKey:SPSSHEnableMuxingPreference];
// Set up a connection for use by the tunnel process
tunnelConnectionName = [[NSString alloc] initWithFormat:@"SequelPro-%lu", (unsigned long)[[NSString stringWithFormat:@"%f", [[NSDate date] timeIntervalSince1970]] hash]];
@@ -116,7 +118,7 @@
delegate = theDelegate;
stateChangeSelector = theStateChangeSelector;
- return true;
+ return YES;
}
/*
@@ -126,8 +128,8 @@
{
// As this object is not a NSWindowController, use manual top-level nib item management
- if (sshQuestionDialog) [sshQuestionDialog release], sshQuestionDialog = nil;
- if (sshPasswordDialog) [sshPasswordDialog release], sshPasswordDialog = nil;
+ if (sshQuestionDialog) SPClear(sshQuestionDialog);
+ if (sshPasswordDialog) SPClear(sshPasswordDialog);
parentWindow = theWindow;
if (![NSBundle loadNibNamed:@"SSHQuestionDialog" owner:self]) {
@@ -167,7 +169,7 @@
*/
- (BOOL)setPasswordKeychainName:(NSString *)theName account:(NSString *)theAccount
{
- if (password) [password release], password = nil;
+ if (password) SPClear(password);
passwordInKeychain = YES;
keychainName = [[NSString alloc] initWithString:theName];
@@ -264,36 +266,10 @@
// If no local port has yet been chosen, choose one
if (!localPort) {
- int tempSocket;
- struct sockaddr_in tempSocketAddress;
- size_t addressLength = sizeof(tempSocketAddress);
- if((tempSocket = socket(AF_INET, SOCK_STREAM, 0)) > 0) {
- memset(&tempSocketAddress, 0, sizeof(tempSocketAddress));
- tempSocketAddress.sin_family = AF_INET;
- tempSocketAddress.sin_addr.s_addr = htonl(INADDR_ANY);
- tempSocketAddress.sin_port = 0;
- if (bind(tempSocket, (struct sockaddr *)&tempSocketAddress, (socklen_t)addressLength) >= 0) {
- if (getsockname(tempSocket, (struct sockaddr *)&tempSocketAddress, (uint32_t *)&addressLength) >= 0) {
- localPort = ntohs(tempSocketAddress.sin_port);
- }
- }
- close(tempSocket);
- }
+ localPort = getRandomPort();
if (useHostFallback) {
- if((tempSocket = socket(AF_INET, SOCK_STREAM, 0)) > 0) {
- memset(&tempSocketAddress, 0, sizeof(tempSocketAddress));
- tempSocketAddress.sin_family = AF_INET;
- tempSocketAddress.sin_addr.s_addr = htonl(INADDR_ANY);
- tempSocketAddress.sin_port = 0;
- if (bind(tempSocket, (struct sockaddr *)&tempSocketAddress, (socklen_t)addressLength) >= 0) {
- if (getsockname(tempSocket, (struct sockaddr *)&tempSocketAddress, (uint32_t *)&addressLength) >= 0) {
- localPortFallback = ntohs(tempSocketAddress.sin_port);
- }
- }
- close(tempSocket);
- }
-
+ localPortFallback = getRandomPort();
}
// Abort if no local free port could be allocated
@@ -309,7 +285,20 @@
// Set up the NSTask
task = [[NSTask alloc] init];
- [task setLaunchPath: @"/usr/bin/ssh"];
+ NSString *launchPath = @"/usr/bin/ssh";
+ NSString *userSSHPath = [[NSUserDefaults standardUserDefaults] stringForKey:SPSSHClientPath];
+
+ if([userSSHPath length]) {
+ launchPath = userSSHPath;
+ // And I'm sure we will get issue reports about it anyway!
+ [debugMessagesLock lock];
+ [debugMessages addObject:@"################################################################"];
+ [debugMessages addObject:[NSString stringWithFormat:@"# %@",NSLocalizedString(@"Custom SSH binary enabled. Disable in Preferences to rule out incompatibilities!", @"SSH connection : debug header with user-defined ssh binary")]];
+ [debugMessages addObject:@"################################################################"];
+ [debugMessagesLock unlock];
+ }
+
+ [task setLaunchPath:launchPath];
// Prepare to set up the arguments for the task
taskArguments = [[NSMutableArray alloc] init];
@@ -373,10 +362,10 @@
[taskArguments addObject:sshHost];
}
if (useHostFallback) {
- [taskArguments addObject:[NSString stringWithFormat:@"-L %ld/127.0.0.1/%ld", (long)localPort, (long)remotePort]];
- [taskArguments addObject:[NSString stringWithFormat:@"-L %ld/%@/%ld", (long)localPortFallback, remoteHost, (long)remotePort]];
+ [taskArguments addObject:[NSString stringWithFormat:@"-L %ld:127.0.0.1:%ld", (long)localPort, (long)remotePort]];
+ [taskArguments addObject:[NSString stringWithFormat:@"-L %ld:%@:%ld", (long)localPortFallback, remoteHost, (long)remotePort]];
} else {
- [taskArguments addObject:[NSString stringWithFormat:@"-L %ld/%@/%ld", (long)localPort, remoteHost, (long)remotePort]];
+ [taskArguments addObject:[NSString stringWithFormat:@"-L %ld:%@:%ld", (long)localPort, remoteHost, (long)remotePort]];
}
[task setArguments:taskArguments];
@@ -413,15 +402,24 @@
object:[standardError fileHandleForReading]];
[[standardError fileHandleForReading] waitForDataInBackgroundAndNotify];
- // Launch and run the tunnel
- [task launch];
-
- // Listen for output
- [task waitUntilExit];
+ @try {
+ // Launch and run the tunnel
+ [task launch]; //throws for invalid paths, missing +x permission
+
+ // Listen for output
+ [task waitUntilExit];
+ }
+ @catch (NSException *e) {
+ connectionState = SPMySQLProxyLaunchFailed;
+ // Log the exception. Could be improved by showing a dedicated alert instead
+ [debugMessagesLock lock];
+ [debugMessages addObject:[NSString stringWithFormat:@"%@: %@\n", [e name], [e reason]]];
+ [debugMessagesLock unlock];
+ }
// On tunnel close, clean up, ready for re-use if the delegate reconnects.
- [task release], task = nil;
- [standardError release], standardError = nil;
+ SPClear(task);
+ SPClear(standardError);
[[NSNotificationCenter defaultCenter] removeObserver:self
name:@"NSFileHandleDataAvailableNotification"
object:nil];
@@ -438,8 +436,8 @@
// Run the run loop for a short time to ensure all task/pipe callbacks are dealt with
[[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:1.0]];
- [taskEnvironment release], taskEnvironment = nil;
- [taskArguments release], taskArguments = nil;
+ SPClear(taskEnvironment);
+ SPClear(taskArguments);
[pool release];
}
@@ -647,7 +645,7 @@
NSString *thePassword = nil;
if (requestedPassphrase) {
thePassword = [NSString stringWithString:requestedPassphrase];
- [requestedPassphrase release], requestedPassphrase = nil;
+ SPClear(requestedPassphrase);
}
// Unlock the lock again
@@ -711,8 +709,7 @@
SPKeychain *keychain = [[SPKeychain alloc] init];
[keychain addPassword:thePassword forName:@"SSH" account:currentKeyName withLabel:[NSString stringWithFormat:@"SSH: %@", currentKeyName]];
[keychain release];
- [currentKeyName release];
- currentKeyName = nil;
+ SPClear(currentKeyName);
}
}
@@ -727,30 +724,52 @@
{
delegate = nil;
[[NSNotificationCenter defaultCenter] removeObserver:self];
- if (connectionState != SPMySQLProxyIdle) [self disconnect];
+ [self disconnect];
[NSObject cancelPreviousPerformRequestsWithTarget:self];
- [sshHost release];
- [sshLogin release];
- [remoteHost release];
- [tunnelConnectionName release];
- [tunnelConnectionVerifyHash release];
+ SPClear(sshHost);
+ SPClear(sshLogin);
+ SPClear(remoteHost);
+ SPClear(tunnelConnectionName);
+ SPClear(tunnelConnectionVerifyHash);
[tunnelConnection invalidate];
- [tunnelConnection release];
- [debugMessages release];
- [debugMessagesLock release];
+ SPClear(tunnelConnection);
+ SPClear(debugMessages);
+ SPClear(debugMessagesLock);
[answerAvailableLock tryLock];
[answerAvailableLock unlock];
- [answerAvailableLock release];
- if (password) [password release];
- if (keychainName) [keychainName release];
- if (keychainAccount) [keychainAccount release];
- if (identityFilePath) [identityFilePath release];
+ SPClear(answerAvailableLock);
+ if (password) SPClear(password);
+ if (keychainName) SPClear(keychainName);
+ if (keychainAccount) SPClear(keychainAccount);
+ if (identityFilePath) SPClear(identityFilePath);
// As this object is not a NSWindowController, use manual top-level nib item management
- if (sshQuestionDialog) [sshQuestionDialog release], sshQuestionDialog = nil;
- if (sshPasswordDialog) [sshPasswordDialog release], sshPasswordDialog = nil;
+ if (sshQuestionDialog) SPClear(sshQuestionDialog);
+ if (sshPasswordDialog) SPClear(sshPasswordDialog);
[super dealloc];
}
@end
+
+#pragma mark -
+
+unsigned short getRandomPort() {
+ int port = 0;
+ int tempSocket;
+ struct sockaddr_in tempSocketAddress;
+ size_t addressLength = sizeof(tempSocketAddress);
+ if((tempSocket = socket(AF_INET, SOCK_STREAM, 0)) > 0) {
+ memset(&tempSocketAddress, 0, sizeof(tempSocketAddress));
+ tempSocketAddress.sin_family = AF_INET;
+ tempSocketAddress.sin_addr.s_addr = htonl(INADDR_ANY);
+ tempSocketAddress.sin_port = 0;
+ if (bind(tempSocket, (struct sockaddr *)&tempSocketAddress, (socklen_t)addressLength) >= 0) {
+ if (getsockname(tempSocket, (struct sockaddr *)&tempSocketAddress, (uint32_t *)&addressLength) >= 0) {
+ port = ntohs(tempSocketAddress.sin_port);
+ }
+ }
+ close(tempSocket);
+ }
+ return port;
+}
diff --git a/Source/SPServerSupport.h b/Source/SPServerSupport.h
index 55b8a6ad..e4551643 100644
--- a/Source/SPServerSupport.h
+++ b/Source/SPServerSupport.h
@@ -28,6 +28,11 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
+typedef struct {
+ NSString *queryString;
+ NSUInteger columnIndex;
+} SPInnoDBStatusQueryFormat;
+
/**
* @class SPServerSupport SPServerSupport.h
*
@@ -79,12 +84,17 @@
BOOL supportsArchiveStorageEngine;
BOOL supportsCSVStorageEngine;
BOOL supportsQuotingEngineTypeInCreateSyntax;
+ BOOL supportsShowEngine;
// Triggers
BOOL supportsTriggers;
// Indexes
BOOL supportsIndexKeyBlockSize;
+ BOOL supportsFulltextOnInnoDB;
+
+ // Events
+ BOOL supportsEvents;
// Data types
BOOL supportsFractionalSeconds;
@@ -230,6 +240,11 @@
@property (readonly) BOOL supportsTriggers;
/**
+* @property supportsEvents Indicates if the server supports scheduled events
+*/
+@property (readonly) BOOL supportsEvents;
+
+/**
* @property supportsIndexKeyBlockSize Indicates if the server supports specifying an index's key block size
*/
@property (readonly) BOOL supportsIndexKeyBlockSize;
@@ -245,9 +260,24 @@
*/
@property (readonly) BOOL supportsFractionalSeconds;
+/**
+ * @property supportsFulltextOnInnoDB Indicates whether the server supports FULLTEXT indexes with the InnoDb engine.
+ */
+@property (readonly) BOOL supportsFulltextOnInnoDB;
+
+/**
+ * @property supportsShowEngine Indicates whether the server supports the "SHOW ENGINE x {LOGS|STATUS}" query.
+ */
+@property (readonly) BOOL supportsShowEngine;
+
- (id)initWithMajorVersion:(NSInteger)majorVersion minor:(NSInteger)minorVersion release:(NSInteger)releaseVersion;
- (void)evaluate;
- (BOOL)isEqualToOrGreaterThanMajorVersion:(NSInteger)majorVersion minor:(NSInteger)minorVersion release:(NSInteger)releaseVersion;
+/**
+ * @return The correct query to get the InnoDB engine status. queryString is nil for unsupported versions.
+ * The columnIndex tells the index of the column (starting with 0) in which the status text is returned.
+ */
+- (SPInnoDBStatusQueryFormat)innoDBStatusQuery;
@end
diff --git a/Source/SPServerSupport.m b/Source/SPServerSupport.m
index 991a9fd3..489acc04 100644
--- a/Source/SPServerSupport.m
+++ b/Source/SPServerSupport.m
@@ -69,12 +69,15 @@
@synthesize supportsArchiveStorageEngine;
@synthesize supportsCSVStorageEngine;
@synthesize supportsTriggers;
+@synthesize supportsEvents;
@synthesize supportsIndexKeyBlockSize;
@synthesize supportsQuotingEngineTypeInCreateSyntax;
@synthesize supportsFractionalSeconds;
@synthesize serverMajorVersion;
@synthesize serverMinorVersion;
@synthesize serverReleaseVersion;
+@synthesize supportsFulltextOnInnoDB;
+@synthesize supportsShowEngine;
#pragma mark -
#pragma mark Initialisation
@@ -185,6 +188,9 @@
// Support for triggers wasn't added until MySQL 5.0.2
supportsTriggers = [self isEqualToOrGreaterThanMajorVersion:5 minor:0 release:2];
+
+ // Support for events wasn't added until MySQL 5.1.6
+ supportsEvents = [self isEqualToOrGreaterThanMajorVersion:5 minor:1 release:6];
// Support for specifying an index's key block size wasn't added until MySQL 5.1.10
supportsIndexKeyBlockSize = [self isEqualToOrGreaterThanMajorVersion:5 minor:1 release:10];
@@ -194,6 +200,29 @@
// Fractional second support wasn't added until MySQL 5.6.4
supportsFractionalSeconds = [self isEqualToOrGreaterThanMajorVersion:5 minor:6 release:4];
+ supportsFulltextOnInnoDB = supportsFractionalSeconds; //introduced in 5.6.4 too
+
+ // The SHOW ENGINE query wasn't added until MySQL 4.1.2
+ supportsShowEngine = [self isEqualToOrGreaterThanMajorVersion:4 minor:1 release:2];
+}
+
+- (SPInnoDBStatusQueryFormat)innoDBStatusQuery
+{
+ SPInnoDBStatusQueryFormat tuple = {nil,0};
+
+ //if we have SHOW ENGINE go with that
+ if(supportsShowEngine) {
+ tuple.queryString = @"SHOW ENGINE INNODB STATUS";
+ tuple.columnIndex = 2;
+ }
+ //up to mysql 5.5 we could also use the old SHOW INNODB STATUS
+ if([self isEqualToOrGreaterThanMajorVersion:3 minor:23 release:52] &&
+ ![self isEqualToOrGreaterThanMajorVersion:5 minor:5 release:0]) {
+ tuple.queryString = @"SHOW INNODB STATUS";
+ tuple.columnIndex = 0;
+ }
+
+ return tuple;
}
/**
@@ -280,9 +309,12 @@
supportsArchiveStorageEngine = NO;
supportsCSVStorageEngine = NO;
supportsTriggers = NO;
+ supportsEvents = NO;
supportsIndexKeyBlockSize = NO;
supportsQuotingEngineTypeInCreateSyntax = NO;
supportsFractionalSeconds = NO;
+ supportsFulltextOnInnoDB = NO;
+ supportsShowEngine = NO;
}
/**
diff --git a/Source/SPServerVariablesController.m b/Source/SPServerVariablesController.m
index a2e1e059..dade0687 100644
--- a/Source/SPServerVariablesController.m
+++ b/Source/SPServerVariablesController.m
@@ -115,7 +115,7 @@
// If the filtered array is allocated and it's not a reference to the processes array get rid of it
if ((variablesFiltered) && (variablesFiltered != variables)) {
- [variablesFiltered release], variablesFiltered = nil;
+ SPClear(variablesFiltered);
}
}
@@ -126,7 +126,7 @@
{
NSSavePanel *panel = [NSSavePanel savePanel];
- [panel setAllowedFileTypes:[NSArray arrayWithObject:@"cnf"]];
+ [panel setAllowedFileTypes:@[@"cnf"]];
[panel setExtensionHidden:NO];
[panel setAllowsOtherFileTypes:YES];
@@ -136,7 +136,7 @@
[panel beginSheetModalForWindow:[self window] completionHandler:^(NSInteger returnCode) {
if (returnCode == NSOKButton) {
if ([variablesFiltered count] > 0) {
- NSMutableString *variablesString = [NSMutableString stringWithFormat:@"# MySQL server variables for %@\n\n", [[(SPAppController*)[NSApp delegate] frontDocument] host]];
+ NSMutableString *variablesString = [NSMutableString stringWithFormat:@"# MySQL server variables for %@\n\n", [[SPAppDelegate frontDocument] host]];
for (NSDictionary *variable in variablesFiltered)
{
@@ -292,7 +292,7 @@
// If the filtered array is allocated and its not a reference to the variables array
// relase it to prevent memory leaks upon the next allocation.
if ((variablesFiltered) && (variablesFiltered != variables)) {
- [variablesFiltered release], variablesFiltered = nil;
+ SPClear(variablesFiltered);
}
variablesFiltered = [[NSMutableArray alloc] init];
@@ -370,7 +370,7 @@
NSPasteboard *pasteBoard = [NSPasteboard generalPasteboard];
// Copy the string to the pasteboard
- [pasteBoard declareTypes:[NSArray arrayWithObjects:NSStringPboardType, nil] owner:nil];
+ [pasteBoard declareTypes:@[NSStringPboardType] owner:nil];
[pasteBoard setString:string forType:NSStringPboardType];
}
}
@@ -381,7 +381,7 @@
{
[prefs removeObserver:self forKeyPath:SPUseMonospacedFonts];
- [variables release], variables = nil;
+ SPClear(variables);
[super dealloc];
}
diff --git a/Source/SPSplitView.m b/Source/SPSplitView.m
index 9d5b59d8..ed87f3c0 100644
--- a/Source/SPSplitView.m
+++ b/Source/SPSplitView.m
@@ -105,11 +105,11 @@
- (void)dealloc
{
- [viewMinimumSizes release];
- [viewMaximumSizes release];
+ SPClear(viewMinimumSizes);
+ SPClear(viewMaximumSizes);
- if (animationTimer) [animationTimer invalidate], [animationTimer release], animationTimer = nil;
- if (animationRetainCycleBypassObject) [animationRetainCycleBypassObject release], animationRetainCycleBypassObject = nil;
+ if (animationTimer) [animationTimer invalidate], SPClear(animationTimer);
+ if (animationRetainCycleBypassObject) SPClear(animationRetainCycleBypassObject);
[[NSNotificationCenter defaultCenter] removeObserver:self];
[super dealloc];
@@ -233,8 +233,8 @@
// Otherwise, start an animation.
} else {
- if (animationTimer) [animationTimer invalidate], [animationTimer release], animationTimer = nil;
- if (animationRetainCycleBypassObject) [animationRetainCycleBypassObject release], animationRetainCycleBypassObject = nil;
+ if (animationTimer) [animationTimer invalidate], SPClear(animationTimer);
+ if (animationRetainCycleBypassObject) SPClear(animationRetainCycleBypassObject);
animationStartTime = [NSDate monotonicTimeInterval];
// Determine the animation length, in seconds, starting with a quarter of a second
@@ -853,8 +853,8 @@
// If the animation has reached the end, ensure completion tasks are run
if (animationProgress == 1) {
- if (animationTimer) [animationTimer invalidate], [animationTimer release], animationTimer = nil;
- if (animationRetainCycleBypassObject) [animationRetainCycleBypassObject release], animationRetainCycleBypassObject = nil;
+ if (animationTimer) [animationTimer invalidate], SPClear(animationTimer);
+ if (animationRetainCycleBypassObject) SPClear(animationRetainCycleBypassObject);
// If uncollapsing, restore the original view and remove the helper
if (!collapsibleSubviewCollapsed) {
@@ -1132,12 +1132,12 @@
[[wrappedView window] makeFirstResponder:firstResponderToRestore];
}
- [wrappedView release], wrappedView = nil;
+ SPClear(wrappedView);
}
- (void)dealloc
{
- if (wrappedView) [wrappedView release], wrappedView = nil;
+ if (wrappedView) SPClear(wrappedView);
[super dealloc];
}
diff --git a/Source/SPStringAdditions.h b/Source/SPStringAdditions.h
index 3296326f..c6871e2a 100644
--- a/Source/SPStringAdditions.h
+++ b/Source/SPStringAdditions.h
@@ -81,4 +81,23 @@ static inline id NSMutableAttributedStringAttributeAtIndex(NSMutableAttributedSt
- (CGFloat)levenshteinDistanceWithWord:(NSString *)stringB;
+/**
+ * Checks if the string other is contained in self on a per-character basis.
+ * In regex-speak that would mean "abc" is matched as /a.*b.*c/ (not anchored).
+ * This is a SEARCH function, NOT a MATCHING function!
+ * Namely the following options will be applied when matching:
+ * NSCaseInsensitiveSearch|NSDiacriticInsensitiveSearch|NSDiacriticInsensitiveSearch
+ * Additionaly this method might match even when it should not.
+ *
+ * @param other String to match against self
+ * @param submatches Pass the pointer to a variable that will be set to an NSArray *
+ * of NSNumber *s of NSRanges. This will only be the case if
+ * the method also returns YES. The variable will not be modified
+ * otherwise.
+ * Pass NULL if you don't care for the ranges.
+ * The object will be set to autorelase.
+ * @return YES if self contains all characters from other in the order given in other
+ * @warning This method is NOT thread-safe (probably), NOT constant-time and DOES NOT check binary equivalence
+ */
+- (BOOL)nonConsecutivelySearchString:(NSString *)other matchingRanges:(NSArray **)submatches;
@end
diff --git a/Source/SPStringAdditions.m b/Source/SPStringAdditions.m
index 29b4144d..0254dc36 100644
--- a/Source/SPStringAdditions.m
+++ b/Source/SPStringAdditions.m
@@ -31,11 +31,7 @@
#import "SPStringAdditions.h"
#import "RegexKitLite.h"
-@interface NSString (PrivateAPI)
-
-- (NSInteger)_smallestOf:(NSInteger)a andOf:(NSInteger)b andOf:(NSInteger)c;
-
-@end
+static NSInteger _smallestOf(NSInteger a, NSInteger b, NSInteger c);
@implementation NSString (SPStringAdditions)
@@ -326,7 +322,7 @@
NSMutableArray *lineRangesArray = [NSMutableArray array];
// Check that the range supplied is valid - if not return an empty array.
- if (aRange.location == NSNotFound || aRange.location + aRange.length > [self length]) {
+ if (aRange.location == NSNotFound || NSMaxRange(aRange) > [self length]) {
return lineRangesArray;
}
@@ -336,9 +332,9 @@
[lineRangesArray addObject:NSStringFromRange(currentLineRange)];
// Loop through until the line end matches or surpasses the end of the specified range
- while (currentLineRange.location + currentLineRange.length < aRange.location + aRange.length)
+ while (NSMaxRange(currentLineRange) < NSMaxRange(aRange))
{
- currentLineRange = [self lineRangeForRange:NSMakeRange(currentLineRange.location + currentLineRange.length, 0)];
+ currentLineRange = [self lineRangeForRange:NSMakeRange(NSMaxRange(currentLineRange), 0)];
[lineRangesArray addObject:NSStringFromRange(currentLineRange)];
}
@@ -426,9 +422,9 @@
cost = ([stringA characterAtIndex:i - 1] == [stringB characterAtIndex:j - 1]) ? 0 : 1;
d[j * n + i] =
- [self _smallestOf:d[(j - 1) * n + i] + 1
- andOf:d[j * n + i - 1] + 1
- andOf:d[(j - 1) * n + i -1] + cost];
+ _smallestOf(d[(j - 1) * n + i] + 1,
+ d[j * n + i - 1] + 1,
+ d[(j - 1) * n + i -1] + cost);
}
distance = d[n * m - 1];
@@ -468,10 +464,95 @@
}
}
+- (BOOL)nonConsecutivelySearchString:(NSString *)other matchingRanges:(NSArray **)submatches
+{
+ NSStringCompareOptions opts = NSCaseInsensitiveSearch|NSDiacriticInsensitiveSearch|NSWidthInsensitiveSearch;
+ BOOL recordMatches = (submatches != NULL); //for readability
+ NSRange selfRange = NSMakeRange(0, [self length]);
+
+ //shortcut: * a longer string can never be contained in a shorter one.
+ // * nil can never match in a string.
+ // * an empty other can never match if self is non-empty
+ if(([other length] > [self length]) || (!other) || ([self length] && ![other length]))
+ return NO;
+
+ //handle the simple case via the default algorithm
+ if ([self compare:other options:opts] == NSOrderedSame) {
+ if(recordMatches) {
+ *submatches = [NSArray arrayWithObject:[NSValue valueWithRange:selfRange]];
+ }
+ return YES;
+ }
+
+ // for now let's save the overhead of NSArray and NSValues
+ NSRange *tmpMatchStore = recordMatches? calloc([other length], sizeof(NSRange)) : NULL;
+ __block NSUInteger matchCount = 0;
+ __block NSRange searchRange = selfRange;
+
+ //this looks a bit silly but is basically Apples approach to handling multibyte charsets
+ void (^it)(NSString *,NSRange,NSRange,BOOL *) = ^(NSString *substring,NSRange substringRange,NSRange enclosingRange,BOOL *stop) {
+ //look for the current character of other in the remaining part of self
+ NSRange found = [self rangeOfString:substring options:opts range:searchRange];
+ if(found.location == NSNotFound) {
+ matchCount = 0; //reset match count to "no match"
+ *stop = YES;
+ return;
+ }
+ if(recordMatches)
+ tmpMatchStore[matchCount] = found;
+ matchCount++;
+ //move the next search past the current match
+ searchRange.location = NSMaxRange(found);
+ searchRange.length = [self length] - searchRange.location;
+ };
+
+ [other enumerateSubstringsInRange:NSMakeRange(0, [other length])
+ options:NSStringEnumerationByComposedCharacterSequences
+ usingBlock:it];
+
+ if(matchCount && recordMatches) {
+ //we want to re-combine sub-matches that are actually consecutive
+
+ //This algorithm uses a simple look-behind for merges:
+ // Object 1 checks if it continues object 0. If so, 1 and 0 will merge
+ // and be placed in the slot of 0 (slot 1 is now invalid).
+ // Then object 2 checks if it continues object 0. If it does not, it is
+ // placed in slot 1.
+ // Object 3 then checks if it continues object 1 and so on...
+ NSUInteger mergeTarget = 0;
+ for (NSUInteger i = 1; i < matchCount; i++ ) {
+ NSRange prev = tmpMatchStore[mergeTarget];
+ NSRange this = tmpMatchStore[i];
+ //if the previous match ends right before this match begins we can merge them
+ if(NSMaxRange(prev) == this.location) {
+ NSRange mergedRange = NSMakeRange(prev.location, prev.length+this.length);
+ tmpMatchStore[mergeTarget] = mergedRange;
+ }
+ //otherwise we have to move on to the next and make ourselves the new base
+ else {
+ if(++mergeTarget != i)
+ tmpMatchStore[mergeTarget] = this;
+ }
+ }
+
+ NSMutableArray *combinedArray = [NSMutableArray arrayWithCapacity:mergeTarget+1];
+ for (NSUInteger j = 0; j <= mergeTarget; j++) {
+ [combinedArray addObject:[NSValue valueWithRange:tmpMatchStore[j]]];
+ }
+
+ *submatches = combinedArray;
+ }
+
+ free(tmpMatchStore); // free(NULL) is safe as per OS X man page
+ return (matchCount > 0);
+}
+
+@end
+
/**
* Returns the minimum of a, b and c.
*/
-- (NSInteger)_smallestOf:(NSInteger)a andOf:(NSInteger)b andOf:(NSInteger)c
+static NSInteger _smallestOf(NSInteger a, NSInteger b, NSInteger c)
{
NSInteger min = a;
@@ -481,5 +562,3 @@
return min;
}
-
-@end
diff --git a/Source/SPTableContent.h b/Source/SPTableContent.h
index fdb434e8..15266d4e 100644
--- a/Source/SPTableContent.h
+++ b/Source/SPTableContent.h
@@ -48,6 +48,7 @@
#ifndef SP_CODA
@class SPSplitView;
#endif
+@class SPTableContentFilterController;
#import "SPDatabaseContentViewDelegate.h"
@@ -116,6 +117,8 @@
// Temporary to avoid nib conflicts during WIP
IBOutlet SPSplitView *contentSplitView;
+
+ IBOutlet SPTableContentFilterController *filterControllerInstance;
#endif
SPMySQLConnection *mySQLConnection;
diff --git a/Source/SPTableContent.m b/Source/SPTableContent.m
index 892fe30f..308c101b 100644
--- a/Source/SPTableContent.m
+++ b/Source/SPTableContent.m
@@ -43,7 +43,6 @@
#import "SPQueryDocumentsController.h"
#import "SPTextAndLinkCell.h"
#ifndef SP_CODA
-#import "QLPreviewPanel.h"
#import "SPSplitView.h"
#endif
#import "SPFieldEditorController.h"
@@ -62,6 +61,7 @@
#endif
#import "SPCustomQuery.h"
#import "SPThreadAdditions.h"
+#import "SPTableFilterParser.h"
#import <pthread.h>
#import <SPMySQL/SPMySQL.h>
@@ -70,10 +70,6 @@
static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOperator";
#endif
-#ifndef __MAC_10_7
-#define __MAC_10_7 1070
-#endif
-
@interface SPTableContent (SPTableContentDataSource_Private_API)
- (id)_contentValueForTableColumn:(NSUInteger)columnIndex row:(NSUInteger)rowIndex asPreview:(BOOL)asPreview;
@@ -411,7 +407,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
#endif
// Reset table key store for use in argumentForRow:
- if (keys) [keys release], keys = nil;
+ if (keys) SPClear(keys);
// Reset data column store
[dataColumns removeAllObjects];
@@ -429,7 +425,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
// Otherwise store the newly selected table name and reset the data
} else {
- if (selectedTable) [selectedTable release], selectedTable = nil;
+ if (selectedTable) SPClear(selectedTable);
if (newTableName) selectedTable = [[NSString alloc] initWithString:newTableName];
previousTableRowsCount = 0;
contentPage = 1;
@@ -466,7 +462,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
#endif
// Reset sort column
- if (sortCol) [sortCol release]; sortCol = nil;
+ if (sortCol) SPClear(sortCol);
isDesc = NO;
// Empty and disable filter options
@@ -568,7 +564,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
#else
NSFont *tableFont = [NSFont systemFontOfSize:[NSFont smallSystemFontSize]];
#endif
- [tableContentView setRowHeight:2.0f+NSSizeToCGSize([@"{ǞṶḹÜ∑zgyf" sizeWithAttributes:[NSDictionary dictionaryWithObject:tableFont forKey:NSFontAttributeName]]).height];
+ [tableContentView setRowHeight:2.0f+NSSizeToCGSize([@"{ǞṶḹÜ∑zgyf" sizeWithAttributes:@{NSFontAttributeName : tableFont}]).height];
// Add the new columns to the table and filterTable
for ( i = 0 ; i < (NSInteger)[dataColumns count] ; i++ ) {
@@ -701,8 +697,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
// Otherwise, clear sorting
} else {
if (sortCol) {
- [sortCol release];
- sortCol = nil;
+ SPClear(sortCol);
}
isDesc = NO;
}
@@ -817,7 +812,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
[self fieldListForQuery], [selectedTable backtickQuotedString]];
// Add a filter string if appropriate
- filterString = [self tableFilterString];
+ filterString = [[self onMainThread] tableFilterString];
if (filterString) {
[queryString appendFormat:@" WHERE %@", filterString];
@@ -1077,6 +1072,8 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
* Returns the query string for the current filter settings,
* ready to be dropped into a WHERE clause, or nil if no filtering
* is active.
+ *
+ * @warning Uses UI. ONLY call from main thread!
*/
- (NSString *)tableFilterString
{
@@ -1108,8 +1105,6 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
BOOL caseSensitive = (([[[NSApp onMainThread] currentEvent] modifierFlags]
& (NSShiftKeyMask|NSControlKeyMask|NSAlternateKeyMask|NSCommandKeyMask)) > 0);
- NSString *filterString;
-
if(contentFilters == nil) {
NSLog(@"Fatal error while retrieving content filters. No filters found.");
NSBeep();
@@ -1137,160 +1132,16 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
return nil;
}
-
- NSUInteger numberOfArguments = [[filter objectForKey:@"NumberOfArguments"] integerValue];
-
- BOOL suppressLeadingTablePlaceholder = NO;
- if([filter objectForKey:@"SuppressLeadingFieldPlaceholder"])
- suppressLeadingTablePlaceholder = YES;
-
- // argument if Filter requires only one argument
- NSMutableString *argument = [[NSMutableString alloc] initWithString:[argumentField stringValue]];
-
- // If the filter field is empty and the selected filter does not require
- // only one argument, then no filtering is required - return nil.
- if (![argument length] && numberOfArguments == 1) {
- [argument release];
- return nil;
- }
-
- // arguments if Filter requires two arguments
- NSMutableString *firstBetweenArgument = [[NSMutableString alloc] initWithString:[firstBetweenField stringValue]];
- NSMutableString *secondBetweenArgument = [[NSMutableString alloc] initWithString:[secondBetweenField stringValue]];
-
- // If filter requires two arguments and either of the argument fields are empty
- // return nil.
- if (numberOfArguments == 2) {
- if (([firstBetweenArgument length] == 0) || ([secondBetweenArgument length] == 0)) {
- [argument release];
- [firstBetweenArgument release];
- [secondBetweenArgument release];
- return nil;
- }
- }
-
- // Retrieve actual WHERE clause
- NSMutableString *clause = [[NSMutableString alloc] init];
- [clause setString:[filter objectForKey:@"Clause"]];
-
- [clause replaceOccurrencesOfRegex:@"(?<!\\\\)\\$BINARY " withString:(caseSensitive) ? @"BINARY " : @""];
- [clause flushCachedRegexData];
- [clause replaceOccurrencesOfRegex:@"(?<!\\\\)\\$CURRENT_FIELD" withString:([fieldField titleOfSelectedItem]) ? [[fieldField titleOfSelectedItem] backtickQuotedString] : @""];
- [clause flushCachedRegexData];
-
- // Escape % sign for format insertion ie if number of arguments is greater than 0
- if(numberOfArguments > 0)
- [clause replaceOccurrencesOfRegex:@"%" withString:@"%%"];
- [clause flushCachedRegexData];
-
- // Replace placeholder ${} by %@
- NSRange matchedRange;
- NSString *re = @"(?<!\\\\)\\$\\{.*?\\}";
- if([clause isMatchedByRegex:re]) {
- while([clause isMatchedByRegex:re]) {
- matchedRange = [clause rangeOfRegex:re];
- [clause replaceCharactersInRange:matchedRange withString:@"%@"];
- [clause flushCachedRegexData];
- }
- }
-
- // Check number of placeholders and given 'NumberOfArguments'
- if([clause replaceOccurrencesOfString:@"%@" withString:@"%@" options:NSLiteralSearch range:NSMakeRange(0, [clause length])] != numberOfArguments) {
- NSLog(@"Error while setting filter string. “NumberOfArguments” differs from the number of arguments specified in “Clause”.");
- NSBeep();
- [argument release];
- [firstBetweenArgument release];
- [secondBetweenArgument release];
- [clause release];
- return nil;
- }
-
- // Construct the filter string according the required number of arguments
-
- if(suppressLeadingTablePlaceholder) {
- if (numberOfArguments == 2) {
- filterString = [NSString stringWithFormat:clause,
- [self escapeFilterArgument:firstBetweenArgument againstClause:clause],
- [self escapeFilterArgument:secondBetweenArgument againstClause:clause]];
- } else if (numberOfArguments == 1) {
- filterString = [NSString stringWithFormat:clause, [self escapeFilterArgument:argument againstClause:clause]];
- } else {
- filterString = [NSString stringWithString:clause];
- if(numberOfArguments > 2) {
- NSLog(@"Filter with more than 2 arguments is not yet supported.");
- NSBeep();
- }
- }
- } else {
- if (numberOfArguments == 2) {
- filterString = [NSString stringWithFormat:@"%@ %@",
- [[fieldField titleOfSelectedItem] backtickQuotedString],
- [NSString stringWithFormat:clause,
- [self escapeFilterArgument:firstBetweenArgument againstClause:clause],
- [self escapeFilterArgument:secondBetweenArgument againstClause:clause]]];
- } else if (numberOfArguments == 1) {
- filterString = [NSString stringWithFormat:@"%@ %@",
- [[fieldField titleOfSelectedItem] backtickQuotedString],
- [NSString stringWithFormat:clause, [self escapeFilterArgument:argument againstClause:clause]]];
- } else {
- filterString = [NSString stringWithFormat:@"%@ %@",
- [[fieldField titleOfSelectedItem] backtickQuotedString], clause];
- if(numberOfArguments > 2) {
- NSLog(@"Filter with more than 2 arguments is not yet supported.");
- NSBeep();
- }
- }
- }
-
- [argument release];
- [firstBetweenArgument release];
- [secondBetweenArgument release];
- [clause release];
-
- // Return the filter string
- return filterString;
-}
-
-/**
- * Escape argument by looking for used quoting strings in a clause. Attempt to
- * be smart - use a single escape for most clauses, doubling up for LIKE clauses.
- * Also attempt to not escape what look like common escape sequences - \n, \r, \t.
- *
- * @param argument The to be used filter argument which should be be escaped
- *
- * @param clause The entire WHERE filter clause
- *
- */
-- (NSString *)escapeFilterArgument:(NSString *)argument againstClause:(NSString *)clause
-{
- BOOL clauseIsLike = [clause isMatchedByRegex:@"(?i)\\blike\\b.*?%(?!@)"];
- NSString *recognizedEscapeSequences, *escapeSequence, *regexTerm;
- NSMutableString *arg = [argument mutableCopy];
-
- // Determine the character set not to escape slashes before, and the escape depth
- if (clauseIsLike) {
- recognizedEscapeSequences = @"nrt_%";
- escapeSequence = @"\\\\\\\\\\\\\\\\";
- } else {
- recognizedEscapeSequences = @"nrt";
- escapeSequence = @"\\\\\\\\";
- }
- regexTerm = [NSString stringWithFormat:@"(\\\\)(?![%@])", recognizedEscapeSequences];
-
- // Escape slashes appropriately
- [arg replaceOccurrencesOfRegex:regexTerm withString:escapeSequence];
- [arg flushCachedRegexData];
-
- // Get quote sign for escaping - this should work for 99% of all cases
- NSString *quoteSign = [clause stringByMatching:@"([\"'])[^\\1]*?%@[^\\1]*?\\1" capture:1L];
-
- // Escape argument
- if(quoteSign != nil && [quoteSign length] == 1) {
- [arg replaceOccurrencesOfRegex:[NSString stringWithFormat:@"(%@)", quoteSign] withString:@"\\\\$1"];
- [arg flushCachedRegexData];
- }
-
- return [arg autorelease];
+
+ SPTableFilterParser *parser = [[[SPTableFilterParser alloc] initWithFilterClause:[filter objectForKey:@"Clause"] numberOfArguments:[[filter objectForKey:@"NumberOfArguments"] integerValue]] autorelease];
+ [parser setArgument:[argumentField stringValue]];
+ [parser setFirstBetweenArgument:[firstBetweenField stringValue]];
+ [parser setSecondBetweenArgument:[secondBetweenField stringValue]];
+ [parser setSuppressLeadingTablePlaceholder:(!![filter objectForKey:@"SuppressLeadingFieldPlaceholder"])];
+ [parser setCaseSensitive:caseSensitive];
+ [parser setCurrentField:[fieldField titleOfSelectedItem]];
+
+ return [parser filterString];
}
/**
@@ -1376,8 +1227,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
{
if (tableLoadTimer) {
[tableLoadTimer invalidate];
- [tableLoadTimer release];
- tableLoadTimer = nil;
+ SPClear(tableLoadTimer);
}
}
@@ -1513,7 +1363,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
// If a string was supplied, use a custom query from that URL scheme
else if([sender isKindOfClass:[NSString class]] && [(NSString *)sender length]) {
- if(schemeFilter) [schemeFilter release], schemeFilter = nil;
+ if(schemeFilter) SPClear(schemeFilter);
schemeFilter = [sender retain];
activeFilter = 2;
}
@@ -1682,8 +1532,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
// this is the same as saying (isDesc && !invert) || (!isDesc && invert)
if (isDesc != invert) {
- [sortCol release];
- sortCol = nil;
+ SPClear(sortCol);
}
else {
isDesc = !isDesc;
@@ -3333,7 +3182,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
NSDictionary *columnDefinition = [NSDictionary dictionaryWithDictionary:[cqColumnDefinition objectAtIndex:[[[[tableContentView tableColumns] objectAtIndex:columnIndex] identifier] integerValue]]];
if(!columnDefinition)
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-2], @"", nil];
+ return @[@(-2), @""];
// Resolve the original table name for current column if AS was used
NSString *tableForColumn = [columnDefinition objectForKey:@"org_table"];
@@ -3344,13 +3193,13 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
// No table/database name found indicates that the field's column contains data from more than one table as for UNION
// or the field data are not bound to any table as in SELECT 1 or if column database is unset
if(!tableForColumn || ![tableForColumn length] || !dbForColumn || ![dbForColumn length])
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
// if table and database name are given check if field can be identified unambiguously
// first without blob data
NSString *fieldIDQueryStr = [self argumentForRow:rowIndex ofTable:tableForColumn andDatabase:[columnDefinition objectForKey:@"db"] includeBlobs:NO];
if(!fieldIDQueryStr)
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
[tableDocumentInstance startTaskWithDescription:NSLocalizedString(@"Checking field data for editing...", @"checking field data for editing task description")];
@@ -3362,7 +3211,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
if ([mySQLConnection queryErrored]) {
[tableDocumentInstance endTask];
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
}
NSArray *tempRow = [tempResult getRowAsArray];
@@ -3372,7 +3221,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
fieldIDQueryStr = [self argumentForRow:rowIndex ofTable:tableForColumn andDatabase:[columnDefinition objectForKey:@"db"] includeBlobs:YES];
if(!fieldIDQueryStr) {
[tableDocumentInstance endTask];
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
}
tempResult = [mySQLConnection queryString:[NSString stringWithFormat:@"SELECT COUNT(1) FROM %@.%@ %@",
@@ -3382,14 +3231,14 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
if ([mySQLConnection queryErrored]) {
[tableDocumentInstance endTask];
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
}
tempRow = [tempResult getRowAsArray];
if([tempRow count] && [[tempRow objectAtIndex:0] integerValue] < 1) {
[tableDocumentInstance endTask];
- return [NSArray arrayWithObjects:[NSNumber numberWithInteger:-1], @"", nil];
+ return @[@(-1), @""];
}
}
@@ -3498,8 +3347,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
}
if(fieldEditor) {
- [fieldEditor release];
- fieldEditor = nil;
+ SPClear(fieldEditor);
}
[[tableContentView window] makeFirstResponder:tableContentView];
@@ -3851,7 +3699,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
NSUInteger indexCount = [selectedRowIndexes getIndexes:indexBuffer maxCount:[selectedRowIndexes count] inIndexRange:NULL];
NSMutableDictionary *selectedRowLookupTable = [NSMutableDictionary dictionaryWithCapacity:indexCount];
- NSNumber *trueNumber = [NSNumber numberWithBool:YES];
+ NSNumber *trueNumber = @YES;
for (NSUInteger i = 0; i < indexCount; i++) {
// For single-column primary keys, use the cell value as a dictionary key for fast lookups
@@ -3921,6 +3769,8 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
/**
* Provide a getter for the current filter details
+ *
+ * @warning Uses UI. MUST call from main thread!
*/
- (NSDictionary *) filterSettings
{
@@ -3946,7 +3796,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
*/
- (void) setSortColumnNameToRestore:(NSString *)theSortColumnName isAscending:(BOOL)isAscending
{
- if (sortColumnToRestore) [sortColumnToRestore release], sortColumnToRestore = nil;
+ if (sortColumnToRestore) SPClear(sortColumnToRestore);
if (theSortColumnName) {
sortColumnToRestore = [[NSString alloc] initWithString:theSortColumnName];
@@ -3967,7 +3817,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
*/
- (void) setSelectionToRestore:(NSDictionary *)theSelection
{
- if (selectionToRestore) [selectionToRestore release], selectionToRestore = nil;
+ if (selectionToRestore) SPClear(selectionToRestore);
if (theSelection) selectionToRestore = [theSelection copy];
}
@@ -3985,11 +3835,11 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
*/
- (void) setFiltersToRestore:(NSDictionary *)filterSettings
{
- if (filterFieldToRestore) [filterFieldToRestore release], filterFieldToRestore = nil;
- if (filterComparisonToRestore) [filterComparisonToRestore release], filterComparisonToRestore = nil;
- if (filterValueToRestore) [filterValueToRestore release], filterValueToRestore = nil;
- if (firstBetweenValueToRestore) [firstBetweenValueToRestore release], firstBetweenValueToRestore = nil;
- if (secondBetweenValueToRestore) [secondBetweenValueToRestore release], secondBetweenValueToRestore = nil;
+ if (filterFieldToRestore) SPClear(filterFieldToRestore);
+ if (filterComparisonToRestore) SPClear(filterComparisonToRestore);
+ if (filterValueToRestore) SPClear(filterValueToRestore);
+ if (firstBetweenValueToRestore) SPClear(firstBetweenValueToRestore);
+ if (secondBetweenValueToRestore) SPClear(secondBetweenValueToRestore);
if (filterSettings) {
if ([filterSettings objectForKey:@"filterField"])
@@ -4252,7 +4102,7 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
else if ([keyPath isEqualToString:SPGlobalResultTableFont]) {
NSFont *tableFont = [NSUnarchiver unarchiveObjectWithData:[change objectForKey:NSKeyValueChangeNewKey]];
- [tableContentView setRowHeight:2.0f + NSSizeToCGSize([@"{ǞṶḹÜ∑zgyf" sizeWithAttributes:[NSDictionary dictionaryWithObject:tableFont forKey:NSFontAttributeName]]).height];
+ [tableContentView setRowHeight:2.0f + NSSizeToCGSize([@"{ǞṶḹÜ∑zgyf" sizeWithAttributes:@{NSFontAttributeName : tableFont}]).height];
[tableContentView setFont:tableFont];
[tableContentView reloadData];
}
@@ -4315,37 +4165,38 @@ static NSString *SPTableFilterSetDefaultOperator = @"SPTableFilterSetDefaultOper
[NSObject cancelPreviousPerformRequestsWithTarget:self];
[NSObject cancelPreviousPerformRequestsWithTarget:tableContentView];
- if(fieldEditor) [fieldEditor release], fieldEditor = nil;
+ if(fieldEditor) SPClear(fieldEditor);
[self clearTableLoadTimer];
- [tableLoadingCondition release];
- [tableValues release];
+ SPClear(tableLoadingCondition);
+ SPClear(tableValues);
pthread_mutex_destroy(&tableValuesLock);
- [dataColumns release];
- [oldRow release];
+ SPClear(dataColumns);
+ SPClear(oldRow);
#ifndef SP_CODA
for (id retainedObject in nibObjectsToRelease) [retainedObject release];
- [nibObjectsToRelease release];
- [paginationPopover release];
+ SPClear(nibObjectsToRelease);
+ SPClear(paginationPopover);
- [filterTableData release];
- if (lastEditedFilterTableValue) [lastEditedFilterTableValue release];
- if (filterTableDefaultOperator) [filterTableDefaultOperator release];
+ SPClear(filterTableData);
+ if (lastEditedFilterTableValue) SPClear(lastEditedFilterTableValue);
+ if (filterTableDefaultOperator) SPClear(filterTableDefaultOperator);
#endif
- if (selectedTable) [selectedTable release];
- if (contentFilters) [contentFilters release];
- if (numberOfDefaultFilters) [numberOfDefaultFilters release];
- if (keys) [keys release];
- if (sortCol) [sortCol release];
- [usedQuery release];
- if (sortColumnToRestore) [sortColumnToRestore release];
- if (selectionToRestore) [selectionToRestore release];
+ if (selectedTable) SPClear(selectedTable);
+ if (contentFilters) SPClear(contentFilters);
+ if (numberOfDefaultFilters) SPClear(numberOfDefaultFilters);
+ if (keys) SPClear(keys);
+ if (sortCol) SPClear(sortCol);
+ SPClear(usedQuery);
+ if (sortColumnToRestore) SPClear(sortColumnToRestore);
+ if (selectionToRestore) SPClear(selectionToRestore);
+ if (cqColumnDefinition) SPClear(cqColumnDefinition);
+
if (filterFieldToRestore) filterFieldToRestore = nil;
if (filterComparisonToRestore) filterComparisonToRestore = nil;
if (filterValueToRestore) filterValueToRestore = nil;
if (firstBetweenValueToRestore) firstBetweenValueToRestore = nil;
if (secondBetweenValueToRestore) secondBetweenValueToRestore = nil;
- if (cqColumnDefinition) [cqColumnDefinition release];
[super dealloc];
}
diff --git a/Source/SPTableContentDataSource.m b/Source/SPTableContentDataSource.m
index c7af81be..21422865 100644
--- a/Source/SPTableContentDataSource.m
+++ b/Source/SPTableContentDataSource.m
@@ -54,96 +54,92 @@
if (tableView == filterTableView) {
return filterTableIsSwapped ? [filterTableData count] : [[[filterTableData objectForKey:@"0"] objectForKey:SPTableContentFilterKey] count];
}
- else
#endif
- if (tableView == tableContentView) {
- return tableRowsCount;
- }
+ if (tableView == tableContentView) {
+ return tableRowsCount;
+ }
return 0;
}
- (id)tableView:(SPCopyTable *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)rowIndex
{
+ NSUInteger columnIndex = [[tableColumn identifier] integerValue];
#ifndef SP_CODA
if (tableView == filterTableView) {
- if (filterTableIsSwapped)
-
+ if (filterTableIsSwapped) {
// First column shows the field names
- if ([[tableColumn identifier] integerValue] == 0) {
+ if (columnIndex == 0) {
return [[[NSTableHeaderCell alloc] initTextCell:[[filterTableData objectForKey:[NSNumber numberWithInteger:rowIndex]] objectForKey:@"name"]] autorelease];
}
- else {
- return NSArrayObjectAtIndex([[filterTableData objectForKey:[NSNumber numberWithInteger:rowIndex]] objectForKey:SPTableContentFilterKey], [[tableColumn identifier] integerValue] - 1);
- }
- else {
- return NSArrayObjectAtIndex([[filterTableData objectForKey:[tableColumn identifier]] objectForKey:SPTableContentFilterKey], rowIndex);
+
+ return NSArrayObjectAtIndex([[filterTableData objectForKey:[NSNumber numberWithInteger:rowIndex]] objectForKey:SPTableContentFilterKey], columnIndex - 1);
}
+
+ return NSArrayObjectAtIndex([[filterTableData objectForKey:[tableColumn identifier]] objectForKey:SPTableContentFilterKey], rowIndex);
}
- else
#endif
- if (tableView == tableContentView) {
-
- id value = nil;
- NSUInteger columnIndex = [[tableColumn identifier] integerValue];
+ if (tableView == tableContentView) {
+
+ id value = nil;
+
+ // While the table is being loaded, additional validation is required - data
+ // locks must be used to avoid crashes, and indexes higher than the available
+ // rows or columns may be requested. Return "..." to indicate loading in these
+ // cases.
+ if (isWorking) {
+ pthread_mutex_lock(&tableValuesLock);
- // While the table is being loaded, additional validation is required - data
- // locks must be used to avoid crashes, and indexes higher than the available
- // rows or columns may be requested. Return "..." to indicate loading in these
- // cases.
- if (isWorking) {
- pthread_mutex_lock(&tableValuesLock);
-
- if (rowIndex < (NSInteger)tableRowsCount && columnIndex < [tableValues columnCount]) {
- value = [self _contentValueForTableColumn:columnIndex row:rowIndex asPreview:YES];
- }
-
- pthread_mutex_unlock(&tableValuesLock);
-
- if (!value) return @"...";
- }
- else {
- if ([tableView editedColumn] == (NSInteger)columnIndex && [tableView editedRow] == rowIndex) {
- value = [self _contentValueForTableColumn:columnIndex row:rowIndex asPreview:NO];
- }
- else {
- value = [self _contentValueForTableColumn:columnIndex row:rowIndex asPreview:YES];
- }
+ if (rowIndex < (NSInteger)tableRowsCount && columnIndex < [tableValues columnCount]) {
+ value = [self _contentValueForTableColumn:columnIndex row:rowIndex asPreview:YES];
}
-
- NSDictionary *columnDefinition = [[(id <SPDatabaseContentViewDelegate>)[tableContentView delegate] dataColumnDefinitions] objectAtIndex:columnIndex];
-
- NSString *columnType = [columnDefinition objectForKey:@"typegrouping"];
- if ([value isKindOfClass:[SPMySQLGeometryData class]]) {
- return [value wktString];
- }
+ pthread_mutex_unlock(&tableValuesLock);
- if ([value isNSNull]) {
- return [prefs objectForKey:SPNullValue];
+ if (!value) return @"...";
+ }
+ else {
+ if ([tableView editedColumn] == (NSInteger)columnIndex && [tableView editedRow] == rowIndex) {
+ value = [self _contentValueForTableColumn:columnIndex row:rowIndex asPreview:NO];
}
-
- if ([value isKindOfClass:[NSData class]]) {
+ else {
+ value = [self _contentValueForTableColumn:columnIndex row:rowIndex asPreview:YES];
+ }
+ }
- if ([columnType isEqualToString:@"binary"] && [prefs boolForKey:SPDisplayBinaryDataAsHex]) {
- return [NSString stringWithFormat:@"0x%@", [value dataToHexString]];
- }
+ NSDictionary *columnDefinition = [[(id <SPDatabaseContentViewDelegate>)[tableContentView delegate] dataColumnDefinitions] objectAtIndex:columnIndex];
- pthread_mutex_t *fieldEditorCheckLock = NULL;
- if (isWorking) {
- fieldEditorCheckLock = &tableValuesLock;
- }
+ NSString *columnType = [columnDefinition objectForKey:@"typegrouping"];
+
+ if ([value isKindOfClass:[SPMySQLGeometryData class]]) {
+ return [value wktString];
+ }
+
+ if ([value isNSNull]) {
+ return [prefs objectForKey:SPNullValue];
+ }
+
+ if ([value isKindOfClass:[NSData class]]) {
- // Always retrieve the short string representation, truncating the value where necessary
- return [value shortStringRepresentationUsingEncoding:[mySQLConnection stringEncoding]];
+ if ([columnType isEqualToString:@"binary"] && [prefs boolForKey:SPDisplayBinaryDataAsHex]) {
+ return [NSString stringWithFormat:@"0x%@", [value dataToHexString]];
}
-
- if ([value isSPNotLoaded]) {
- return NSLocalizedString(@"(not loaded)", @"value shown for hidden blob and text fields");
+
+ pthread_mutex_t *fieldEditorCheckLock = NULL;
+ if (isWorking) {
+ fieldEditorCheckLock = &tableValuesLock;
}
-
- return value;
+
+ // Always retrieve the short string representation, truncating the value where necessary
+ return [value shortStringRepresentationUsingEncoding:[mySQLConnection stringEncoding]];
+ }
+
+ if ([value isSPNotLoaded]) {
+ return NSLocalizedString(@"(not loaded)", @"value shown for hidden blob and text fields");
}
+
+ return value;
+ }
return nil;
}
@@ -163,49 +159,48 @@
return;
}
- else
#endif
- if (tableView == tableContentView) {
-
- // If the current cell should have been edited in a sheet, do nothing - field closing will have already
- // updated the field.
- if ([tableContentView shouldUseFieldEditorForRow:rowIndex column:[[tableColumn identifier] integerValue] checkWithLock:NULL]) {
- return;
- }
-
- // If table data comes from a view, save back to the view
- if ([tablesListInstance tableType] == SPTableTypeView) {
- [self saveViewCellValue:object forTableColumn:tableColumn row:rowIndex];
- return;
- }
-
- // Catch editing events in the row and if the row isn't currently being edited,
- // start an edit. This allows edits including enum changes to save correctly.
- if (isEditingRow && [tableContentView selectedRow] != currentlyEditingRow) {
- [self saveRowOnDeselect];
- }
+ if (tableView == tableContentView) {
+
+ // If the current cell should have been edited in a sheet, do nothing - field closing will have already
+ // updated the field.
+ if ([tableContentView shouldUseFieldEditorForRow:rowIndex column:[[tableColumn identifier] integerValue] checkWithLock:NULL]) {
+ return;
+ }
+
+ // If table data comes from a view, save back to the view
+ if ([tablesListInstance tableType] == SPTableTypeView) {
+ [self saveViewCellValue:object forTableColumn:tableColumn row:rowIndex];
+ return;
+ }
+
+ // Catch editing events in the row and if the row isn't currently being edited,
+ // start an edit. This allows edits including enum changes to save correctly.
+ if (isEditingRow && [tableContentView selectedRow] != currentlyEditingRow) {
+ [self saveRowOnDeselect];
+ }
+
+ if (!isEditingRow) {
+ [oldRow setArray:[tableValues rowContentsAtIndex:rowIndex]];
- if (!isEditingRow) {
- [oldRow setArray:[tableValues rowContentsAtIndex:rowIndex]];
-
- isEditingRow = YES;
- currentlyEditingRow = rowIndex;
+ isEditingRow = YES;
+ currentlyEditingRow = rowIndex;
+ }
+
+ NSDictionary *column = NSArrayObjectAtIndex(dataColumns, [[tableColumn identifier] integerValue]);
+
+ if (object) {
+ // Restore NULLs if necessary
+ if ([object isEqualToString:[prefs objectForKey:SPNullValue]] && [[column objectForKey:@"null"] boolValue]) {
+ object = [NSNull null];
}
- NSDictionary *column = NSArrayObjectAtIndex(dataColumns, [[tableColumn identifier] integerValue]);
-
- if (object) {
- // Restore NULLs if necessary
- if ([object isEqualToString:[prefs objectForKey:SPNullValue]] && [[column objectForKey:@"null"] boolValue]) {
- object = [NSNull null];
- }
-
- [tableValues replaceObjectInRow:rowIndex column:[[tableColumn identifier] integerValue] withObject:object];
- }
- else {
- [tableValues replaceObjectInRow:rowIndex column:[[tableColumn identifier] integerValue] withObject:@""];
- }
+ [tableValues replaceObjectInRow:rowIndex column:[[tableColumn identifier] integerValue] withObject:object];
+ }
+ else {
+ [tableValues replaceObjectInRow:rowIndex column:[[tableColumn identifier] integerValue] withObject:@""];
}
+ }
}
@end
diff --git a/Source/SPTableContentDelegate.m b/Source/SPTableContentDelegate.m
index f6b933f7..4d7bbb04 100644
--- a/Source/SPTableContentDelegate.m
+++ b/Source/SPTableContentDelegate.m
@@ -118,7 +118,7 @@
[self updateCountText];
#ifndef SP_CODA /* triggered commands */
- NSArray *triggeredCommands = [[NSApp delegate] bundleCommandsForTrigger:SPBundleTriggerActionTableRowChanged];
+ NSArray *triggeredCommands = [SPAppDelegate bundleCommandsForTrigger:SPBundleTriggerActionTableRowChanged];
for (NSString *cmdPath in triggeredCommands)
{
@@ -150,7 +150,7 @@
if (!stopTrigger) {
if ([[data objectAtIndex:1] isEqualToString:SPBundleScopeGeneral]) {
- [[[NSApp delegate] onMainThread] executeBundleItemForApp:aMenuItem];
+ [[SPAppDelegate onMainThread] executeBundleItemForApp:aMenuItem];
}
else if ([[data objectAtIndex:1] isEqualToString:SPBundleScopeDataTable]) {
if ([[[[[NSApp mainWindow] firstResponder] class] description] isEqualToString:@"SPCopyTable"]) {
@@ -261,11 +261,19 @@
[tableContentView reloadData];
}
+ // Retrieve the column definition
+ NSDictionary *columnDefinition = [cqColumnDefinition objectAtIndex:[[tableColumn identifier] integerValue]];
+
+ // TODO: Fix editing of "Display as Hex" columns and remove this (also see above)
+ if ([[columnDefinition objectForKey:@"typegrouping"] isEqualToString:@"binary"] && [prefs boolForKey:SPDisplayBinaryDataAsHex]) {
+ NSBeep();
+ [SPTooltip showWithObject:NSLocalizedString(@"Disable \"Display Binary Data as Hex\" in the View menu to edit this field.",@"Temporary : Tooltip shown when trying to edit a binary field in table content view while it is displayed using HEX conversion")];
+ return NO;
+ }
+
// Open the editing sheet if required
if ([tableContentView shouldUseFieldEditorForRow:rowIndex column:[[tableColumn identifier] integerValue] checkWithLock:NULL]) {
- // Retrieve the column definition
- NSDictionary *columnDefinition = [cqColumnDefinition objectAtIndex:[[tableColumn identifier] integerValue]];
BOOL isBlob = [tableDataInstance columnIsBlobOrText:[[tableColumn headerCell] stringValue]];
// A table is per definition editable
@@ -295,7 +303,7 @@
fieldEncoding = [columnDefinition objectForKey:@"charset_name"];
}
- if (fieldEditor) [fieldEditor release], fieldEditor = nil;
+ if (fieldEditor) SPClear(fieldEditor);
fieldEditor = [[SPFieldEditorController alloc] init];
@@ -318,6 +326,7 @@
if ([[columnDefinition objectForKey:@"typegrouping"] isEqualToString:@"binary"] && [prefs boolForKey:SPDisplayBinaryDataAsHex]) {
[fieldEditor setTextMaxLength:[[self tableView:tableContentView objectValueForTableColumn:tableColumn row:rowIndex] length]];
+ isFieldEditable = NO;
}
NSInteger editedColumn = 0;
@@ -367,10 +376,11 @@
else {
tmp = [tableContentView draggedRowsAsTabString];
}
-
+
+#warning code inside "if" is unreachable
if (!tmp && [tmp length])
{
- [pboard declareTypes:[NSArray arrayWithObjects: NSTabularTextPboardType, NSStringPboardType, nil] owner:nil];
+ [pboard declareTypes:@[NSTabularTextPboardType, NSStringPboardType] owner:nil];
[pboard setString:tmp forType:NSStringPboardType];
[pboard setString:tmp forType:NSTabularTextPboardType];
diff --git a/Source/SPTableContentFilterController.h b/Source/SPTableContentFilterController.h
new file mode 100644
index 00000000..542f4bad
--- /dev/null
+++ b/Source/SPTableContentFilterController.h
@@ -0,0 +1,21 @@
+// This class is a dummy.
+// It is only present because DBView.xib already references it, but the
+// code itself is still in another branch. This stub is used to avoid a warning
+// from the Nib loader, saying 'this class was not found and replaced with a NSObject'.
+
+#import <Foundation/Foundation.h>
+
+@class SPSplitView;
+@class SPTableData;
+@class SPDatabaseDocument;
+@class SPTablesList;
+
+@interface SPTableContentFilterController : NSObject {
+ IBOutlet SPSplitView *contentSplitView;
+ IBOutlet NSRuleEditor *filterRuleEditor;
+ IBOutlet SPTableData *tableDataInstance;
+ IBOutlet SPDatabaseDocument *tableDocumentInstance;
+ IBOutlet SPTablesList *tablesListInstance;
+}
+
+@end
diff --git a/Source/SPTableContentFilterController.m b/Source/SPTableContentFilterController.m
new file mode 100644
index 00000000..39c0f722
--- /dev/null
+++ b/Source/SPTableContentFilterController.m
@@ -0,0 +1,5 @@
+#import "SPTableContentFilterController.h"
+
+@implementation SPTableContentFilterController
+
+@end
diff --git a/Source/SPTableData.m b/Source/SPTableData.m
index 5158d4be..bdd1f1db 100644
--- a/Source/SPTableData.m
+++ b/Source/SPTableData.m
@@ -165,7 +165,7 @@
[self updateTriggersForCurrentTable];
}
else {
- return [NSArray array];
+ return @[];
}
}
@@ -329,18 +329,15 @@
[status removeAllObjects];
if (triggers != nil) {
- [triggers release];
- triggers = nil;
+ SPClear(triggers);
}
if (tableEncoding != nil) {
- [tableEncoding release];
- tableEncoding = nil;
+ SPClear(tableEncoding);
}
if (tableCreateSyntax != nil) {
- [tableCreateSyntax release];
- tableCreateSyntax = nil;
+ SPClear(tableCreateSyntax);
}
}
@@ -390,7 +387,7 @@
// The table information fetch may have already unlocked the data lock.
pthread_mutex_trylock(&dataProcessingLock);
pthread_mutex_unlock(&dataProcessingLock);
- return FALSE;
+ return NO;
}
[columns addObjectsFromArray:[tableData objectForKey:@"columns"]];
@@ -408,7 +405,7 @@
pthread_mutex_unlock(&dataProcessingLock);
- return TRUE;
+ return YES;
}
/**
@@ -431,7 +428,7 @@
[columnNames removeAllObjects];
[constraints removeAllObjects];
pthread_mutex_unlock(&dataProcessingLock);
- return FALSE;
+ return NO;
}
[columns addObjectsFromArray:[viewData objectForKey:@"columns"]];
@@ -448,7 +445,7 @@
pthread_mutex_unlock(&dataProcessingLock);
- return TRUE;
+ return YES;
}
/**
@@ -520,7 +517,7 @@
// connection reconnect dialog to appear and the user chose to close the connection.
if (!syntaxResult) return nil;
- if (tableCreateSyntax != nil) [tableCreateSyntax release], tableCreateSyntax = nil;
+ if (tableCreateSyntax != nil) SPClear(tableCreateSyntax);
// A NULL value indicates that the user does not have permission to view the syntax
if ([[syntaxResult objectAtIndex:1] isNSNull]) {
@@ -743,7 +740,7 @@
[primaryKeyFields addObject:primaryFieldName];
for (NSMutableDictionary *theTableColumn in tableColumns) {
if ([[theTableColumn objectForKey:@"name"] isEqualToString:primaryFieldName]) {
- [theTableColumn setObject:[NSNumber numberWithInteger:1] forKey:@"isprimarykey"];
+ [theTableColumn setObject:@1 forKey:@"isprimarykey"];
break;
}
}
@@ -761,7 +758,7 @@
NSString *uniqueFieldName = [[SPSQLParser stringWithString:quotedUniqueKey] unquotedString];
for (NSMutableDictionary *theTableColumn in tableColumns) {
if ([[theTableColumn objectForKey:@"name"] isEqualToString:uniqueFieldName]) {
- [theTableColumn setObject:[NSNumber numberWithInteger:1] forKey:@"unique"];
+ [theTableColumn setObject:@1 forKey:@"unique"];
break;
}
}
@@ -783,7 +780,7 @@
charsetDefinitionRange = [createTableParser rangeOfString:@"CHARACTER SET=" options:NSCaseInsensitiveSearch];
}
if (charsetDefinitionRange.location != NSNotFound) {
- stringStart = charsetDefinitionRange.location + charsetDefinitionRange.length;
+ stringStart = NSMaxRange(charsetDefinitionRange);
for (i = stringStart; i < [createTableParser length]; i++) {
if ([createTableParser characterAtIndex:i] == ' ') break;
}
@@ -864,7 +861,7 @@
}
// Retrieve the table syntax string
- if (tableCreateSyntax) [tableCreateSyntax release], tableCreateSyntax = nil;
+ if (tableCreateSyntax) SPClear(tableCreateSyntax);
NSString *syntaxString = [[theResult getRowAsArray] objectAtIndex:1];
// A NULL value indicates that the user does not have permission to view the syntax
@@ -915,9 +912,9 @@
// If there's a null column, use the details from it
if ([resultRow objectForKey:@"Null"]) {
if ([[[resultRow objectForKey:@"Null"] uppercaseString] isEqualToString:@"NO"]) {
- [tableColumn setValue:[NSNumber numberWithBool:NO] forKey:@"null"];
+ [tableColumn setValue:@NO forKey:@"null"];
} else {
- [tableColumn setValue:[NSNumber numberWithBool:YES] forKey:@"null"];
+ [tableColumn setValue:@YES forKey:@"null"];
}
}
@@ -957,7 +954,7 @@
// Catch unselected tables and return false
if (![tableListInstance tableName]) {
pthread_mutex_unlock(&dataProcessingLock);
- return FALSE;
+ return NO;
}
// Ensure queries are run as UTF8
@@ -1004,7 +1001,7 @@
if (changeEncoding) [mySQLConnection restoreStoredEncoding];
}
pthread_mutex_unlock(&dataProcessingLock);
- return FALSE;
+ return NO;
}
// Retrieve the status as a dictionary and set as the cache
@@ -1022,7 +1019,7 @@
[status setDictionary:[NSDictionary dictionaryWithObjectsAndKeys:@"Error", @"Engine", [NSString stringWithFormat:NSLocalizedString(@"An error occurred retrieving table information. MySQL said: %@", @"MySQL table info retrieval error message"), [status objectForKey:@"Comment"]], @"Comment", [tableListInstance tableName], @"Name", nil]];
if (changeEncoding) [mySQLConnection restoreStoredEncoding];
pthread_mutex_unlock(&dataProcessingLock);
- return FALSE;
+ return NO;
}
// Add a note for whether the row count is accurate or not - only for MyISAM
@@ -1058,7 +1055,7 @@
pthread_mutex_unlock(&dataProcessingLock);
- return TRUE;
+ return YES;
}
/**
@@ -1086,7 +1083,7 @@
nil, nil, [NSApp mainWindow], self, nil, nil,
[NSString stringWithFormat:NSLocalizedString(@"An error occurred while retrieving the trigger information for table '%@'. Please try again.\n\nMySQL said: %@", @"error retrieving table information informative message"),
[tableListInstance tableName], [mySQLConnection lastErrorMessage]]);
- if (triggers) [triggers release], triggers = nil;
+ if (triggers) SPClear(triggers);
if (changeEncoding) [mySQLConnection restoreStoredEncoding];
}
@@ -1170,7 +1167,7 @@
*/
- (NSDictionary *) parseFieldDefinitionStringParts:(NSArray *)definitionParts
{
- if (![definitionParts count]) return [NSDictionary dictionary];
+ if (![definitionParts count]) return @{};
SPSQLParser *detailParser;
SPSQLParser *fieldParser = [[SPSQLParser alloc] init];
@@ -1267,16 +1264,13 @@
[detailString release];
- NSNumber *boolYES = [NSNumber numberWithBool:YES];
- NSNumber *boolNO = [NSNumber numberWithBool:NO];
-
// Set up some column defaults for all columns
- [fieldDetails setValue:boolYES forKey:@"null"];
- [fieldDetails setValue:boolNO forKey:@"unsigned"];
- [fieldDetails setValue:boolNO forKey:@"binary"];
- [fieldDetails setValue:boolNO forKey:@"zerofill"];
- [fieldDetails setValue:boolNO forKey:@"autoincrement"];
- [fieldDetails setValue:boolNO forKey:@"onupdatetimestamp"];
+ [fieldDetails setValue:@YES forKey:@"null"];
+ [fieldDetails setValue:@NO forKey:@"unsigned"];
+ [fieldDetails setValue:@NO forKey:@"binary"];
+ [fieldDetails setValue:@NO forKey:@"zerofill"];
+ [fieldDetails setValue:@NO forKey:@"autoincrement"];
+ [fieldDetails setValue:@NO forKey:@"onupdatetimestamp"];
[fieldDetails setValue:@"" forKey:@"comment"];
[fieldDetails setValue:[NSMutableString string] forKey:@"unparsed"];
@@ -1288,15 +1282,15 @@
// Whether numeric fields are unsigned
if ([detailString isEqualToString:@"UNSIGNED"]) {
- [fieldDetails setValue:boolYES forKey:@"unsigned"];
+ [fieldDetails setValue:@YES forKey:@"unsigned"];
// Whether numeric fields are zerofill
} else if ([detailString isEqualToString:@"ZEROFILL"]) {
- [fieldDetails setValue:boolYES forKey:@"zerofill"];
+ [fieldDetails setValue:@YES forKey:@"zerofill"];
// Whether text types are binary
} else if ([detailString isEqualToString:@"BINARY"]) {
- [fieldDetails setValue:boolYES forKey:@"binary"];
+ [fieldDetails setValue:@YES forKey:@"binary"];
// Whether text types have a different encoding to the table
} else if ([detailString isEqualToString:@"CHARSET"] && (definitionPartsIndex + 1 < partsArrayLength)) {
@@ -1321,16 +1315,16 @@
// Whether fields are NOT NULL
} else if ([detailString isEqualToString:@"NOT"] && (definitionPartsIndex + 1 < partsArrayLength)
&& [[NSArrayObjectAtIndex(definitionParts, definitionPartsIndex+1) uppercaseString] isEqualToString:@"NULL"]) {
- [fieldDetails setValue:boolNO forKey:@"null"];
+ [fieldDetails setValue:@NO forKey:@"null"];
definitionPartsIndex++;
// Whether fields are NULL
} else if ([detailString isEqualToString:@"NULL"]) {
- [fieldDetails setValue:boolYES forKey:@"null"];
+ [fieldDetails setValue:@YES forKey:@"null"];
// Whether fields should auto-increment
} else if ([detailString isEqualToString:@"AUTO_INCREMENT"]) {
- [fieldDetails setValue:boolYES forKey:@"autoincrement"];
+ [fieldDetails setValue:@YES forKey:@"autoincrement"];
tableHasAutoIncrementField = YES;
// Field defaults
@@ -1347,7 +1341,7 @@
} else if ([detailString isEqualToString:@"ON"] && (definitionPartsIndex + 2 < partsArrayLength)
&& [[NSArrayObjectAtIndex(definitionParts, definitionPartsIndex+1) uppercaseString] isEqualToString:@"UPDATE"]
&& [[NSArrayObjectAtIndex(definitionParts, definitionPartsIndex+2) uppercaseString] isEqualToString:@"CURRENT_TIMESTAMP"]) {
- [fieldDetails setValue:boolYES forKey:@"onupdatetimestamp"];
+ [fieldDetails setValue:@YES forKey:@"onupdatetimestamp"];
definitionPartsIndex += 2;
// Column comments
@@ -1398,16 +1392,16 @@
*/
- (void)dealloc
{
- [columns release];
- [columnNames release];
- [constraints release];
- [status release];
- [primaryKeyColumns release];
-
- if (triggers) [triggers release];
- if (tableEncoding) [tableEncoding release];
- if (tableCreateSyntax) [tableCreateSyntax release];
- if (mySQLConnection) [mySQLConnection release];
+ SPClear(columns);
+ SPClear(columnNames);
+ SPClear(constraints);
+ SPClear(status);
+ SPClear(primaryKeyColumns);
+
+ if (triggers) SPClear(triggers);
+ if (tableEncoding) SPClear(tableEncoding);
+ if (tableCreateSyntax) SPClear(tableCreateSyntax);
+ if (mySQLConnection) SPClear(mySQLConnection);
pthread_mutex_destroy(&dataProcessingLock);
diff --git a/Source/SPTableFieldValidation.m b/Source/SPTableFieldValidation.m
index e3c7f706..97c55a93 100644
--- a/Source/SPTableFieldValidation.m
+++ b/Source/SPTableFieldValidation.m
@@ -136,7 +136,7 @@
- (void)dealloc
{
- [fieldTypes release], fieldTypes = nil;
+ SPClear(fieldTypes);
[super dealloc];
}
diff --git a/UnitTests/SPMenuAdditionsTests.h b/Source/SPTableFilterParser.h
index fbc4d653..828b4b4a 100644
--- a/UnitTests/SPMenuAdditionsTests.h
+++ b/Source/SPTableFilterParser.h
@@ -1,9 +1,9 @@
//
-// SPMenuAdditionsTests.h
+// SPTableFilterParser.h
// sequel-pro
//
-// Created by Stuart Connolly (stuconnolly.com) on March 20, 2011.
-// Copyright (c) 2011 Stuart Connolly. All rights reserved.
+// Created by Max Lohrmann on 22.04.15.
+// Relocated from existing files. Previous copyright applies.
//
// Permission is hereby granted, free of charge, to any person
// obtaining a copy of this software and associated documentation
@@ -28,18 +28,34 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
-#import <SenTestingKit/SenTestingKit.h>
+#import <Foundation/Foundation.h>
-/**
- * @class SPMenuAdditionsTests SPMenuAdditionsTests.h
- *
- * @author Stuart Connolly http://stuconnolly.com/
- *
- * SPMenuAdditionsTests tests class.
- */
-@interface SPMenuAdditionsTests : SenTestCase
+@interface SPTableFilterParser : NSObject
{
- NSMenu *menu;
+ NSString *_clause;
+ NSUInteger numberOfArguments;
+
+ NSString *_currentField;
+ NSString *_argument;
+ NSString *_firstBetweenArgument;
+ NSString *_secondBetweenArgument;
+
+ BOOL caseSensitive;
+ BOOL suppressLeadingTablePlaceholder;
}
+- (id)initWithFilterClause:(NSString *)filter numberOfArguments:(NSUInteger)numArgs;
+
+@property(readonly) NSString *clause;
+@property(readonly) NSUInteger numberOfArguments;
+
+@property BOOL suppressLeadingTablePlaceholder;
+@property BOOL caseSensitive;
+@property(copy) NSString *currentField;
+@property(copy) NSString *argument;
+@property(copy) NSString *firstBetweenArgument;
+@property(copy) NSString *secondBetweenArgument;
+
+- (NSString *)filterString;
+
@end
diff --git a/Source/SPTableFilterParser.m b/Source/SPTableFilterParser.m
new file mode 100644
index 00000000..f7c9ed62
--- /dev/null
+++ b/Source/SPTableFilterParser.m
@@ -0,0 +1,227 @@
+//
+// SPTableFilterParser.m
+// sequel-pro
+//
+// Created by Max Lohrmann on 22.04.15.
+// Relocated from existing files. Previous copyright applies.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <https://github.com/sequelpro/sequelpro>
+
+#import "SPTableFilterParser.h"
+#import "RegexKitLite.h"
+
+@interface SPTableFilterParser (Private)
++ (NSString *)escapeFilterArgument:(NSString *)argument againstClause:(NSString *)clause;
+@end
+
+@implementation SPTableFilterParser
+
+@synthesize suppressLeadingTablePlaceholder = suppressLeadingTablePlaceholder;
+@synthesize caseSensitive = caseSensitive;
+@synthesize currentField = _currentField;
+@synthesize argument = _argument;
+@synthesize firstBetweenArgument = _firstBetweenArgument;
+@synthesize secondBetweenArgument = _secondBetweenArgument;
+@synthesize numberOfArguments = numberOfArguments;
+@synthesize clause = _clause;
+
+- (id)initWithFilterClause:(NSString *)filter numberOfArguments:(NSUInteger)numArgs
+{
+ self = [super init];
+ if (self) {
+ numberOfArguments = numArgs;
+ _clause = [filter copy];
+ caseSensitive = NO;
+ suppressLeadingTablePlaceholder = NO;
+ }
+ return self;
+}
+
+- (void)dealloc
+{
+ SPClear(_clause);
+
+ [self setCurrentField:nil];
+ [self setArgument:nil];
+ [self setFirstBetweenArgument:nil];
+ [self setSecondBetweenArgument:nil];
+
+ [super dealloc];
+}
+
+- (NSString *)filterString
+{
+ NSString *filterString;
+
+ // argument if Filter requires only one argument
+ NSMutableString *argument = [[NSMutableString alloc] initWithString:(_argument? _argument : @"")];
+
+ // If the filter field is empty and the selected filter does not require
+ // only one argument, then no filtering is required - return nil.
+ if (![argument length] && numberOfArguments == 1) {
+ [argument release];
+ return nil;
+ }
+
+ // arguments if Filter requires two arguments
+ NSMutableString *firstBetweenArgument = [[NSMutableString alloc] initWithString:(_firstBetweenArgument? _firstBetweenArgument : @"")];
+ NSMutableString *secondBetweenArgument = [[NSMutableString alloc] initWithString:(_secondBetweenArgument? _secondBetweenArgument : @"")];
+
+ // If filter requires two arguments and either of the argument fields are empty
+ // return nil.
+ if (numberOfArguments == 2) {
+ if (([firstBetweenArgument length] == 0) || ([secondBetweenArgument length] == 0)) {
+ [argument release];
+ [firstBetweenArgument release];
+ [secondBetweenArgument release];
+ return nil;
+ }
+ }
+
+ // Retrieve actual WHERE clause
+ NSMutableString *clause = [[NSMutableString alloc] init];
+ [clause setString:_clause];
+
+ [clause replaceOccurrencesOfRegex:@"(?<!\\\\)\\$BINARY " withString:(caseSensitive) ? @"BINARY " : @""];
+ [clause flushCachedRegexData];
+ [clause replaceOccurrencesOfRegex:@"(?<!\\\\)\\$CURRENT_FIELD" withString:(_currentField) ? [_currentField backtickQuotedString] : @""];
+ [clause flushCachedRegexData];
+
+ // Escape % sign for format insertion ie if number of arguments is greater than 0
+ if(numberOfArguments > 0)
+ [clause replaceOccurrencesOfRegex:@"%" withString:@"%%"];
+ [clause flushCachedRegexData];
+
+ // Replace placeholder ${} by %@
+ NSRange matchedRange;
+ NSString *re = @"(?<!\\\\)\\$\\{.*?\\}";
+ if([clause isMatchedByRegex:re]) {
+ while([clause isMatchedByRegex:re]) {
+ matchedRange = [clause rangeOfRegex:re];
+ [clause replaceCharactersInRange:matchedRange withString:@"%@"];
+ [clause flushCachedRegexData];
+ }
+ }
+
+ // Check number of placeholders and given 'NumberOfArguments'
+ if([clause replaceOccurrencesOfString:@"%@" withString:@"%@" options:NSLiteralSearch range:NSMakeRange(0, [clause length])] != numberOfArguments) {
+ SPLog(@"Error while setting filter string. “NumberOfArguments” differs from the number of arguments specified in “Clause”.");
+ NSBeep();
+ [argument release];
+ [firstBetweenArgument release];
+ [secondBetweenArgument release];
+ [clause release];
+ return nil;
+ }
+
+ // Construct the filter string according the required number of arguments
+
+ if(suppressLeadingTablePlaceholder) {
+ if (numberOfArguments == 2) {
+ filterString = [NSString stringWithFormat:clause,
+ [[self class] escapeFilterArgument:firstBetweenArgument againstClause:clause],
+ [[self class] escapeFilterArgument:secondBetweenArgument againstClause:clause]];
+ } else if (numberOfArguments == 1) {
+ filterString = [NSString stringWithFormat:clause, [[self class] escapeFilterArgument:argument againstClause:clause]];
+ } else {
+ filterString = [NSString stringWithString:clause];
+ if(numberOfArguments > 2) {
+ SPLog(@"Filter with more than 2 arguments is not yet supported.");
+ NSBeep();
+ }
+ }
+ } else {
+ if (numberOfArguments == 2) {
+ filterString = [NSString stringWithFormat:@"%@ %@",
+ [_currentField backtickQuotedString],
+ [NSString stringWithFormat:clause,
+ [[self class] escapeFilterArgument:firstBetweenArgument againstClause:clause],
+ [[self class] escapeFilterArgument:secondBetweenArgument againstClause:clause]]];
+ } else if (numberOfArguments == 1) {
+ filterString = [NSString stringWithFormat:@"%@ %@",
+ [_currentField backtickQuotedString],
+ [NSString stringWithFormat:clause, [[self class] escapeFilterArgument:argument againstClause:clause]]];
+ } else {
+ filterString = [NSString stringWithFormat:@"%@ %@",
+ [_currentField backtickQuotedString], clause];
+ if(numberOfArguments > 2) {
+ SPLog(@"Filter with more than 2 arguments is not yet supported.");
+ NSBeep();
+ }
+ }
+ }
+
+ [argument release];
+ [firstBetweenArgument release];
+ [secondBetweenArgument release];
+ [clause release];
+
+ // Return the filter string
+ return filterString;
+}
+
+/**
+ * Escape argument by looking for used quoting strings in a clause. Attempt to
+ * be smart - use a single escape for most clauses, doubling up for LIKE clauses.
+ * Also attempt to not escape what look like common escape sequences - \n, \r, \t.
+ *
+ * @param argument The to be used filter argument which should be be escaped
+ *
+ * @param clause The entire WHERE filter clause
+ *
+ */
++ (NSString *)escapeFilterArgument:(NSString *)argument againstClause:(NSString *)clause
+{
+ BOOL clauseIsLike = [clause isMatchedByRegex:@"(?i)\\blike\\b.*?%(?!@)"];
+ NSString *recognizedEscapeSequences, *escapeSequence, *regexTerm;
+ NSMutableString *arg = [argument mutableCopy];
+
+ // Determine the character set not to escape slashes before, and the escape depth
+ if (clauseIsLike) {
+ recognizedEscapeSequences = @"nrt_%";
+ escapeSequence = @"\\\\\\\\\\\\\\\\";
+ } else {
+ recognizedEscapeSequences = @"nrt";
+ escapeSequence = @"\\\\\\\\";
+ }
+ regexTerm = [NSString stringWithFormat:@"(\\\\)(?![%@])", recognizedEscapeSequences];
+
+ // Escape slashes appropriately
+ [arg replaceOccurrencesOfRegex:regexTerm withString:escapeSequence];
+ [arg flushCachedRegexData];
+
+ // Get quote sign for escaping - this should work for 99% of all cases
+ NSString *quoteSign = [clause stringByMatching:@"([\"'])[^\\1]*?%@[^\\1]*?\\1" capture:1L];
+
+ // Escape argument
+ if(quoteSign != nil && [quoteSign length] == 1) {
+ [arg replaceOccurrencesOfRegex:[NSString stringWithFormat:@"(%@)", quoteSign] withString:@"\\\\$1"];
+ [arg flushCachedRegexData];
+ }
+
+ return [arg autorelease];
+}
+
+
+@end
diff --git a/Source/SPTableInfo.m b/Source/SPTableInfo.m
index 38d06b3e..e1ce3e4d 100644
--- a/Source/SPTableInfo.m
+++ b/Source/SPTableInfo.m
@@ -35,6 +35,7 @@
#import "SPTableData.h"
#import "SPActivityTextFieldCell.h"
#import "SPTableTextFieldCell.h"
+#import "SPAppController.h"
@interface SPTableInfo (PrivateAPI)
@@ -77,7 +78,7 @@
object:nil];
// Add activities header
- [activities addObject:[NSDictionary dictionaryWithObjectsAndKeys:NSLocalizedString(@"ACTIVITIES", @"header for activities pane"), @"name", nil]];
+ [activities addObject:@{@"name" : NSLocalizedString(@"ACTIVITIES", @"header for activities pane")}];
[activitiesTable reloadData];
// Add Information header
@@ -109,9 +110,9 @@
NSMutableArray *acts = [NSMutableArray array];
[acts removeAllObjects];
- [acts addObject:[NSDictionary dictionaryWithObjectsAndKeys:NSLocalizedString(@"ACTIVITIES", @"header for activities pane"), @"name", nil]];
+ [acts addObject:@{@"name" : NSLocalizedString(@"ACTIVITIES", @"header for activities pane")}];
[acts addObjectsFromArray:[tableDocumentInstance runningActivities]];
- [acts addObjectsFromArray:[[NSApp delegate] runningActivities]];
+ [acts addObjectsFromArray:[SPAppDelegate runningActivities]];
_activitiesWillBeUpdated = YES;
@@ -388,11 +389,11 @@
if (rowIndex > 0) return NO;
if (![tableInfoScrollView isHidden]) {
- [tableDocumentInstance setActivityPaneHidden:[NSNumber numberWithInteger:0]];
+ [tableDocumentInstance setActivityPaneHidden:@0];
[[NSApp mainWindow] makeFirstResponder:activitiesTable];
}
else {
- [tableDocumentInstance setActivityPaneHidden:[NSNumber numberWithInteger:1]];
+ [tableDocumentInstance setActivityPaneHidden:@1];
[[NSApp mainWindow] makeFirstResponder:infoTable];
}
@@ -469,8 +470,8 @@
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
- [info release];
- [activities release];
+ SPClear(info);
+ SPClear(activities);
[super dealloc];
}
diff --git a/Source/SPTableRelations.h b/Source/SPTableRelations.h
index e1620007..1ab7f1b7 100644
--- a/Source/SPTableRelations.h
+++ b/Source/SPTableRelations.h
@@ -39,6 +39,7 @@
IBOutlet SPDatabaseDocument *tableDocumentInstance;
IBOutlet SPTablesList *tablesListInstance;
IBOutlet SPTableData *tableDataInstance;
+ IBOutlet SPTableView *tableList;
IBOutlet NSButton *addRelationButton;
IBOutlet NSButton *removeRelationButton;
@@ -57,7 +58,10 @@
IBOutlet NSButton *confirmAddRelationButton;
IBOutlet NSProgressIndicator *dataProgressIndicator;
IBOutlet NSTextField *progressStatusTextField;
-
+
+ IBOutlet NSView *detailErrorView;
+ IBOutlet NSTextView *detailErrorText;
+
SPMySQLConnection *connection;
NSUserDefaults *prefs;
diff --git a/Source/SPTableRelations.m b/Source/SPTableRelations.m
index f2188a3b..134aa2fb 100644
--- a/Source/SPTableRelations.m
+++ b/Source/SPTableRelations.m
@@ -35,6 +35,7 @@
#import "SPTableView.h"
#import "SPAlertSheets.h"
#import "RegexKitLite.h"
+#import "SPServerSupport.h"
#import <SPMySQL/SPMySQL.h>
@@ -52,7 +53,7 @@ static NSString *SPRelationOnDeleteKey = @"on_delete";
- (void)_refreshRelationDataForcingCacheRefresh:(BOOL)clearAllCaches;
- (void)_updateAvailableTableColumns;
-- (void)_reopenRelationSheet:(NSWindow *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo;
+- (void)addAlertDidEnd:(NSAlert *)alert returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo;
@end
@@ -163,7 +164,7 @@ static NSString *SPRelationOnDeleteKey = @"on_delete";
[thatTable backtickQuotedString],
[thatColumn backtickQuotedString]]];
- NSArray *onActions = [NSArray arrayWithObjects:@"RESTRICT", @"CASCADE", @"SET NULL", @"NO ACTION", nil];
+ NSArray *onActions = @[@"RESTRICT", @"CASCADE", @"SET NULL", @"NO ACTION"];
// If required add ON DELETE
if ([onDeletePopUpButton selectedTag] >= 0) {
@@ -187,34 +188,46 @@ static NSString *SPRelationOnDeleteKey = @"on_delete";
// Retrieve the last connection error message.
NSString *errorText = [connection lastErrorMessage];
+
+ NSAlert *alert = [[[NSAlert alloc] init] autorelease];
+
+ [alert setMessageText:NSLocalizedString(@"Error creating relation", @"error creating relation message")];
+ [alert addButtonWithTitle:NSLocalizedString(@"OK", @"OK button")];
+ [alert setInformativeText:[NSString stringWithFormat:NSLocalizedString(@"The specified relation could not be created.\n\nMySQL said: %@", @"error creating relation informative message"), errorText]];
// An error ID of 1005 indicates a foreign key error. These are thrown for many reasons, but the two
// most common are 121 (name probably in use) and 150 (types don't exactly match).
// Retrieve the InnoDB status and extract the most recent error for more helpful text.
if ([connection lastErrorID] == 1005) {
- NSString *statusText = [connection getFirstFieldFromQuery:@"SHOW INNODB STATUS"];
- NSString *detailErrorString = [statusText stringByMatching:@"latest foreign key error\\s+-----*\\s+[0-9: ]*(.*?)\\s+-----" options:(RKLCaseless | RKLDotAll) inRange:NSMakeRange(0, [statusText length]) capture:1L error:NULL];
- if (detailErrorString) {
- errorText = [NSString stringWithFormat:NSLocalizedString(@"%@\n\nDetail: %@", @"Add relation error detail intro"), errorText, [detailErrorString stringByReplacingOccurrencesOfString:@"\n" withString:@" "]];
- }
-
- // Detect name duplication if appropriate
- if ([errorText isMatchedByRegex:@"errno: 121"] && [errorText isMatchedByRegex:@"already exists"]) {
- [takenConstraintNames addObject:[[constraintName stringValue] lowercaseString]];
- [self controlTextDidChange:[NSNotification notificationWithName:@"dummy" object:constraintName]];
+ SPInnoDBStatusQueryFormat status = [[tableDocumentInstance serverSupport] innoDBStatusQuery];
+ if(status.queryString) {
+ NSString *statusText = [[[connection queryString:status.queryString] getRowAsArray] objectAtIndex:status.columnIndex];
+ NSString *detailErrorString = [statusText stringByMatching:@"latest foreign key error\\s+-----*\\s+[0-9: ]*(.*?)\\s+-----" options:(RKLCaseless | RKLDotAll) inRange:NSMakeRange(0, [statusText length]) capture:1L error:NULL];
+ if (detailErrorString) {
+ [alert setAccessoryView:detailErrorView];
+ [detailErrorText setString:[detailErrorString stringByReplacingOccurrencesOfString:@"\n" withString:@" "]];
+ }
+
+ // Detect name duplication if appropriate
+ if ([errorText isMatchedByRegex:@"errno: 121"] && [errorText isMatchedByRegex:@"already exists"]) {
+ [takenConstraintNames addObject:[[constraintName stringValue] lowercaseString]];
+ [self controlTextDidChange:[NSNotification notificationWithName:@"dummy" object:constraintName]];
+ }
}
}
- SPBeginAlertSheet(NSLocalizedString(@"Error creating relation", @"error creating relation message"),
- NSLocalizedString(@"OK", @"OK button"),
- nil, nil, [NSApp mainWindow], self, @selector(_reopenRelationSheet:returnCode:contextInfo:), nil,
- [NSString stringWithFormat:NSLocalizedString(@"The specified relation was unable to be created.\n\nMySQL said: %@", @"error creating relation informative message"), errorText]);
- }
+ [[alert onMainThread] beginSheetModalForWindow:[tableDocumentInstance parentWindow] modalDelegate:self didEndSelector:@selector(addAlertDidEnd:returnCode:contextInfo:) contextInfo:NULL];
+ }
else {
[self _refreshRelationDataForcingCacheRefresh:YES];
}
}
+- (void)addAlertDidEnd:(NSAlert *)alert returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo
+{
+ [self performSelector:@selector(openRelationSheet:) withObject:self afterDelay:0.0];
+}
+
/**
* Updates the available columns when the user selects a table.
*/
@@ -376,7 +389,13 @@ static NSString *SPRelationOnDeleteKey = @"on_delete";
- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)rowIndex
{
- return [[relationData objectAtIndex:rowIndex] objectForKey:[tableColumn identifier]];
+ id data = [[relationData objectAtIndex:rowIndex] objectForKey:[tableColumn identifier]];
+ //dim the database name if it matches the current database
+ if([[tableColumn identifier] isEqualToString:SPRelationFKDatabaseKey] && [[tableDocumentInstance database] isEqual:data]) {
+ NSDictionary *textAttributes = @{NSForegroundColorAttributeName: [NSColor lightGrayColor]};
+ data = [[[NSAttributedString alloc] initWithString:(NSString *)data attributes:textAttributes] autorelease];
+ }
+ return data;
}
#pragma mark -
@@ -651,14 +670,6 @@ static NSString *SPRelationOnDeleteKey = @"on_delete";
[columnInfo release];
}
-/**
- * Reopen the add relation sheet, usually after an error message, with the previous content.
- */
-- (void)_reopenRelationSheet:(NSWindow *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo
-{
- [self performSelector:@selector(openRelationSheet:) withObject:self afterDelay:0.0];
-}
-
#pragma mark -
- (void)dealloc
@@ -666,8 +677,8 @@ static NSString *SPRelationOnDeleteKey = @"on_delete";
[[NSNotificationCenter defaultCenter] removeObserver:self];
[[NSUserDefaults standardUserDefaults] removeObserver:self forKeyPath:SPUseMonospacedFonts];
- [relationData release], relationData = nil;
- [takenConstraintNames release], takenConstraintNames = nil;
+ SPClear(relationData);
+ SPClear(takenConstraintNames);
[super dealloc];
}
diff --git a/Source/SPTableStructure.m b/Source/SPTableStructure.m
index 05bf1186..992ecdcf 100644
--- a/Source/SPTableStructure.m
+++ b/Source/SPTableStructure.m
@@ -116,12 +116,11 @@ static NSString *SPRemoveFieldAndForeignKey = @"SPRemoveFieldAndForeignKey";
[indexesTableView setFont:useMonospacedFont ? [NSFont fontWithName:SPDefaultMonospacedFontName size:monospacedFontSize] : [NSFont systemFontOfSize:[NSFont smallSystemFontSize]]];
#endif
- extraFieldSuggestions = [[NSArray arrayWithObjects:
- @"None",
- @"auto_increment",
- @"on update CURRENT_TIMESTAMP",
- @"SERIAL DEFAULT VALUE",
- nil
+ extraFieldSuggestions = [@[
+ @"None",
+ @"auto_increment",
+ @"on update CURRENT_TIMESTAMP",
+ @"SERIAL DEFAULT VALUE"
] retain];
// Note that changing the contents or ordering of this array will affect the implementation of
@@ -253,12 +252,12 @@ static NSString *SPRemoveFieldAndForeignKey = @"SPRemoveFieldAndForeignKey";
BOOL allowNull = [[[tableDataInstance statusValueForKey:@"Engine"] uppercaseString] isEqualToString:@"CSV"] ? NO : [prefs boolForKey:SPNewFieldsAllowNulls];
[tableFields insertObject:[NSMutableDictionary
- dictionaryWithObjects:[NSArray arrayWithObjects:@"", @"INT", @"", @"0", @"0", @"0", allowNull ? @"1" : @"0", @"", [prefs stringForKey:SPNullValue], @"None", @"", [NSNumber numberWithInt:0], [NSNumber numberWithInt:0], nil]
- forKeys:[NSArray arrayWithObjects:@"name", @"type", @"length", @"unsigned", @"zerofill", @"binary", @"null", @"Key", @"default", @"Extra", @"comment", @"encoding", @"collation", nil]]
+ dictionaryWithObjects:[NSArray arrayWithObjects:@"", @"INT", @"", @"0", @"0", @"0", allowNull ? @"1" : @"0", @"", [prefs stringForKey:SPNullValue], @"None", @"", @0, @0, nil]
+ forKeys:@[@"name", @"type", @"length", @"unsigned", @"zerofill", @"binary", @"null", @"Key", @"default", @"Extra", @"comment", @"encoding", @"collation"]]
atIndex:insertIndex];
#else
[tableFields insertObject:[NSMutableDictionary
- dictionaryWithObjects:[NSArray arrayWithObjects:@"", @"INT", @"", @"0", @"0", @"0", @"1", @"", @"NULL", @"None", @"", [NSNumber numberWithInt:0], [NSNumber numberWithInt:0], nil]
+ dictionaryWithObjects:[NSArray arrayWithObjects:@"", @"INT", @"", @"0", @"0", @"0", @"1", @"", @"NULL", @"None", @"", @0, @0, nil]
forKeys:[NSArray arrayWithObjects:@"name", @"type", @"length", @"unsigned", @"zerofill", @"binary", @"null", @"Key", @"default", @"Extra", @"comment", @"encoding", @"collation", nil]]
atIndex:insertIndex];
#endif
@@ -913,7 +912,7 @@ static NSString *SPRemoveFieldAndForeignKey = @"SPRemoveFieldAndForeignKey";
// UNSIGNED keyword.
NSRange range = [queryString rangeOfString:[NSString stringWithFormat:@"%@ %@", [[theRow objectForKey:@"name"] backtickQuotedString], theRowType] options:NSLiteralSearch];
- NSInteger insertionIndex = (range.location + range.length);
+ NSInteger insertionIndex = NSMaxRange(range);
// If the field definition's data type includes the length then we must take this into
// account when inserting the UNSIGNED keyword. Add 2 to the index to accommodate the
@@ -964,7 +963,7 @@ static NSString *SPRemoveFieldAndForeignKey = @"SPRemoveFieldAndForeignKey";
[tableDocumentInstance setContentRequiresReload:YES];
// Query the structure of all databases in the background
- [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], @"forceUpdate", selectedTable, @"affectedItem", [NSNumber numberWithInteger:[tablesListInstance tableType]], @"affectedItemType", nil]];
+ [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:[NSDictionary dictionaryWithObjectsAndKeys:@YES, @"forceUpdate", selectedTable, @"affectedItem", [NSNumber numberWithInteger:[tablesListInstance tableType]], @"affectedItemType", nil]];
return YES;
}
@@ -1059,7 +1058,7 @@ static NSString *SPRemoveFieldAndForeignKey = @"SPRemoveFieldAndForeignKey";
// on the main thread ensures the timer fires on the main thread.
if (![errorDictionary objectForKey:@"delayed"]) {
NSMutableDictionary *delayedErrorDictionary = [NSMutableDictionary dictionaryWithDictionary:errorDictionary];
- [delayedErrorDictionary setObject:[NSNumber numberWithBool:YES] forKey:@"delayed"];
+ [delayedErrorDictionary setObject:@YES forKey:@"delayed"];
[self performSelector:@selector(showErrorSheetWith:) withObject:delayedErrorDictionary afterDelay:0.3];
return;
}
@@ -1208,7 +1207,7 @@ static NSString *SPRemoveFieldAndForeignKey = @"SPRemoveFieldAndForeignKey";
[indexesController setConnection:mySQLConnection];
// Set up tableView
- [tableSourceView registerForDraggedTypes:[NSArray arrayWithObjects:SPDefaultPasteboardDragType, nil]];
+ [tableSourceView registerForDraggedTypes:@[SPDefaultPasteboardDragType]];
}
/**
@@ -1474,16 +1473,16 @@ static NSString *SPRemoveFieldAndForeignKey = @"SPRemoveFieldAndForeignKey";
[prefs removeObserver:indexesController forKeyPath:SPUseMonospacedFonts];
#endif
- [tableFields release];
- [oldRow release];
- [enumFields release];
- [typeSuggestions release];
- [extraFieldSuggestions release];
+ SPClear(tableFields);
+ SPClear(oldRow);
+ SPClear(enumFields);
+ SPClear(typeSuggestions);
+ SPClear(extraFieldSuggestions);
- [fieldValidation release], fieldValidation = nil;
+ SPClear(fieldValidation);
- if (defaultValues) [defaultValues release];
- if (selectedTable) [selectedTable release];
+ if (defaultValues) SPClear(defaultValues);
+ if (selectedTable) SPClear(selectedTable);
[super dealloc];
}
diff --git a/Source/SPTableStructureDelegate.m b/Source/SPTableStructureDelegate.m
index aebb0f18..c027d339 100644
--- a/Source/SPTableStructureDelegate.m
+++ b/Source/SPTableStructureDelegate.m
@@ -74,7 +74,7 @@
else {
// If the structure has loaded (not still loading!) and the table encoding
// is set, use the appropriate collations.
- collations = ([tableDocumentInstance structureLoaded] && [tableDataInstance tableEncoding] != nil) ? [databaseDataInstance getDatabaseCollationsForEncoding:[tableDataInstance tableEncoding]] : [NSArray array];
+ collations = ([tableDocumentInstance structureLoaded] && [tableDataInstance tableEncoding] != nil) ? [databaseDataInstance getDatabaseCollationsForEncoding:[tableDataInstance tableEncoding]] : @[];
}
[[tableColumn dataCell] removeAllItems];
@@ -145,14 +145,14 @@
// Reset collation if encoding was changed
if ([[aTableColumn identifier] isEqualToString:@"encoding"]) {
if ([[currentRow objectForKey:@"encoding"] integerValue] != [anObject integerValue]) {
- [currentRow setObject:[NSNumber numberWithInteger:0] forKey:@"collation"];
+ [currentRow setObject:@0 forKey:@"collation"];
[tableSourceView reloadData];
}
}
// Reset collation if BINARY was set changed, as enabling BINARY sets collation to *_bin
else if ([[aTableColumn identifier] isEqualToString:@"binary"]) {
if ([[currentRow objectForKey:@"binary"] integerValue] != [anObject integerValue]) {
- [currentRow setObject:[NSNumber numberWithInteger:0] forKey:@"collation"];
+ [currentRow setObject:@0 forKey:@"collation"];
[tableSourceView reloadData];
}
@@ -164,7 +164,7 @@
isCurrentExtraAutoIncrement = [[[anObject stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] uppercaseString] isEqualToString:@"AUTO_INCREMENT"];
if (isCurrentExtraAutoIncrement) {
- [currentRow setObject:[NSNumber numberWithInteger:0] forKey:@"null"];
+ [currentRow setObject:@0 forKey:@"null"];
// Asks the user to add an index to query if AUTO_INCREMENT is set and field isn't indexed
if ((![currentRow objectForKey:@"Key"] || [[currentRow objectForKey:@"Key"] isEqualToString:@""])) {
@@ -254,7 +254,7 @@
if (![self saveRowOnDeselect]) return NO;
if ([rows count] == 1) {
- [pboard declareTypes:[NSArray arrayWithObject:SPDefaultPasteboardDragType] owner:nil];
+ [pboard declareTypes:@[SPDefaultPasteboardDragType] owner:nil];
[pboard setString:[[NSNumber numberWithInteger:[rows firstIndex]] stringValue] forType:SPDefaultPasteboardDragType];
return YES;
diff --git a/Source/SPTableStructureLoading.m b/Source/SPTableStructureLoading.m
index 9e9edd5c..1950c32e 100644
--- a/Source/SPTableStructureLoading.m
+++ b/Source/SPTableStructureLoading.m
@@ -212,7 +212,7 @@
// Set BINARY if collation ends with _bin for convenience
if ([[col objectForKey:@"COLLATION_NAME"] hasSuffix:@"_bin"]) {
- [theField setObject:[NSNumber numberWithInt:1] forKey:@"binary"];
+ [theField setObject:@1 forKey:@"binary"];
}
break;
@@ -288,9 +288,9 @@
// Query the structure of all databases in the background (mainly for completion)
[NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier"
- target:[tableDocumentInstance databaseStructureRetrieval]
+ target:[tableDocumentInstance databaseStructureRetrieval]
selector:@selector(queryDbStructureWithUserInfo:)
- object:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], @"forceUpdate", nil]];
+ object:@{@"forceUpdate" : @YES}];
[self loadTable:selectedTable];
}
@@ -312,7 +312,7 @@
![tableDocumentInstance isWorking];
// Update the selected table name
- if (selectedTable) [selectedTable release], selectedTable = nil;
+ if (selectedTable) SPClear(selectedTable);
if (newTableName) selectedTable = [[NSString alloc] initWithString:newTableName];
[indexesController setTable:selectedTable];
@@ -335,8 +335,8 @@
if (!selectedTable) {
[tableSourceView reloadData];
// Empty indexesController's fields and indices explicitly before reloading
- [indexesController setFields:[NSArray array]];
- [indexesController setIndexes:[NSArray array]];
+ [indexesController setFields:@[]];
+ [indexesController setIndexes:@[]];
[indexesTableView reloadData];
return;
@@ -348,7 +348,7 @@
[indexesController setFields:tableFields];
[indexesController setIndexes:[tableDetails objectForKey:@"tableIndexes"]];
- if (defaultValues) [defaultValues release], defaultValues = nil;
+ if (defaultValues) SPClear(defaultValues);
newDefaultValues = [NSMutableDictionary dictionaryWithCapacity:[tableFields count]];
diff --git a/Source/SPTableTriggers.m b/Source/SPTableTriggers.m
index 1ab39825..179e509e 100644
--- a/Source/SPTableTriggers.m
+++ b/Source/SPTableTriggers.m
@@ -632,8 +632,8 @@ static const NSString *SPTriggerSQLMode = @"TriggerSQLMode";
- (void)dealloc
{
- [triggerData release], triggerData = nil;
- [editedTrigger release], editedTrigger = nil;
+ SPClear(triggerData);
+ SPClear(editedTrigger);
[[NSNotificationCenter defaultCenter] removeObserver:self];
[prefs removeObserver:self forKeyPath:SPUseMonospacedFonts];
diff --git a/Source/SPTablesList.h b/Source/SPTablesList.h
index a8d9ab91..198f327f 100644
--- a/Source/SPTablesList.h
+++ b/Source/SPTablesList.h
@@ -180,6 +180,7 @@
- (NSArray *)allViewNames;
- (NSArray *)allFunctionNames;
- (NSArray *)allProcedureNames;
+- (NSArray *)allEventNames;
- (NSArray *)allDatabaseNames;
- (NSArray *)allSystemDatabaseNames;
- (NSString *)selectedDatabase;
diff --git a/Source/SPTablesList.m b/Source/SPTablesList.m
index fdabd3af..74523da3 100644
--- a/Source/SPTablesList.m
+++ b/Source/SPTablesList.m
@@ -91,6 +91,7 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
#endif
- (void)_renameTableOfType:(SPTableType)tableType from:(NSString *)oldTableName to:(NSString *)newTableName;
- (void)_duplicateConnectionToFrontTab;
+- (NSMutableArray *)_allSchemaObjectsOfType:(SPTableType)type;
@end
@implementation SPTablesList
@@ -168,7 +169,7 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
object:tableDocumentInstance];
#ifndef SP_CODA
- [tablesListView registerForDraggedTypes:[NSArray arrayWithObjects:SPNavigatorTableDataPasteboardDragType, nil]];
+ [tablesListView registerForDraggedTypes:@[SPNavigatorTableDataPasteboardDragType]];
#endif
//create the charset helper
@@ -272,16 +273,16 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
[tables addObject:NSLocalizedString(@"PROCS & FUNCS",@"header for procs & funcs list")];
[tableTypes addObject:[NSNumber numberWithInteger:SPTableTypeNone]];
- for (NSArray *eachRow in theResult) {
- [tables addObject:NSArrayObjectAtIndex(eachRow, 3)];
- if ([NSArrayObjectAtIndex(eachRow, 4) isEqualToString:@"PROCEDURE"]) {
- [tableTypes addObject:[NSNumber numberWithInteger:SPTableTypeProc]];
- } else {
- [tableTypes addObject:[NSNumber numberWithInteger:SPTableTypeFunc]];
- }
+ for (NSArray *eachRow in theResult) {
+ [tables addObject:NSArrayObjectAtIndex(eachRow, 3)];
+ if ([NSArrayObjectAtIndex(eachRow, 4) isEqualToString:@"PROCEDURE"]) {
+ [tableTypes addObject:[NSNumber numberWithInteger:SPTableTypeProc]];
+ } else {
+ [tableTypes addObject:[NSNumber numberWithInteger:SPTableTypeFunc]];
}
}
}
+ }
#endif
// Restore encoding if appropriate
@@ -327,8 +328,7 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
selectedTableType = (SPTableType)[[tableTypes objectAtIndex:itemToReselect] integerValue];
}
else {
- if (selectedTableName) [selectedTableName release];
- selectedTableName = nil;
+ if (selectedTableName) SPClear(selectedTableName);
selectedTableType = SPTableTypeNone;
}
@@ -360,7 +360,7 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
[NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:nil];
else
// User press refresh button ergo force update
- [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], @"forceUpdate", [NSNumber numberWithBool:YES], @"cancelQuerying", nil]];
+ [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:@{@"forceUpdate" : @YES, @"cancelQuerying" : @YES}];
}
/**
@@ -704,26 +704,26 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
- (void)_duplicateConnectionToFrontTab
{
// Get the state of the document
- NSDictionary *allStateDetails = [NSDictionary dictionaryWithObjectsAndKeys:
- [NSNumber numberWithBool:YES], @"connection",
- [NSNumber numberWithBool:YES], @"history",
- [NSNumber numberWithBool:YES], @"session",
- [NSNumber numberWithBool:YES], @"query",
- [NSNumber numberWithBool:YES], @"password",
- nil];
+ NSDictionary *allStateDetails = @{
+ @"connection" : @YES,
+ @"history" : @YES,
+ @"session" : @YES,
+ @"query" : @YES,
+ @"password" : @YES
+ };
NSMutableDictionary *documentState = [NSMutableDictionary dictionaryWithDictionary:[tableDocumentInstance stateIncludingDetails:allStateDetails]];
// Ensure it's set to autoconnect
- [documentState setObject:[NSNumber numberWithBool:YES] forKey:@"auto_connect"];
+ [documentState setObject:@YES forKey:@"auto_connect"];
// Set the connection on the new tab
- [[[NSApp delegate] frontDocument] setState:documentState];
+ [[SPAppDelegate frontDocument] setState:documentState];
}
- (IBAction)openTableInNewWindow:(id)sender
{
//create new window
- [(SPAppController *)[NSApp delegate] newWindow:self];
+ [SPAppDelegate newWindow:self];
[self _duplicateConnectionToFrontTab];
}
@@ -859,8 +859,7 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
NSIndexSet *indexes = [tablesListView selectedRowIndexes];
#endif
// Update the selected table name and type
- if (selectedTableName) [selectedTableName release];
- selectedTableName = nil;
+ if (selectedTableName) SPClear(selectedTableName);
#ifndef SP_CODA /* ui manipulation */
@@ -886,31 +885,31 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
switch (lastType)
{
case SPTableTypeTable:
- [removeTableMenuItem setTitle:NSLocalizedString(@"Delete Tables", @"delete tables menu title")];
- [truncateTableButton setTitle:NSLocalizedString(@"Truncate Tables", @"truncate tables menu item")];
- [removeTableContextMenuItem setTitle:NSLocalizedString(@"Delete Tables", @"delete tables menu title")];
- [truncateTableContextMenuItem setTitle:NSLocalizedString(@"Truncate Tables", @"truncate tables menu item")];
- [truncateTableButton setHidden:NO];
- [truncateTableContextMenuItem setHidden:NO];
- break;
+ [removeTableMenuItem setTitle:NSLocalizedString(@"Delete Tables", @"delete tables menu title")];
+ [truncateTableButton setTitle:NSLocalizedString(@"Truncate Tables", @"truncate tables menu item")];
+ [removeTableContextMenuItem setTitle:NSLocalizedString(@"Delete Tables", @"delete tables menu title")];
+ [truncateTableContextMenuItem setTitle:NSLocalizedString(@"Truncate Tables", @"truncate tables menu item")];
+ [truncateTableButton setHidden:NO];
+ [truncateTableContextMenuItem setHidden:NO];
+ break;
case SPTableTypeView:
- [removeTableMenuItem setTitle:NSLocalizedString(@"Delete Views", @"delete views menu title")];
- [removeTableContextMenuItem setTitle:NSLocalizedString(@"Delete Views", @"delete views menu title")];
- [truncateTableButton setHidden:YES];
- [truncateTableContextMenuItem setHidden:YES];
- break;
+ [removeTableMenuItem setTitle:NSLocalizedString(@"Delete Views", @"delete views menu title")];
+ [removeTableContextMenuItem setTitle:NSLocalizedString(@"Delete Views", @"delete views menu title")];
+ [truncateTableButton setHidden:YES];
+ [truncateTableContextMenuItem setHidden:YES];
+ break;
case SPTableTypeProc:
- [removeTableMenuItem setTitle:NSLocalizedString(@"Delete Procedures", @"delete procedures menu title")];
- [removeTableContextMenuItem setTitle:NSLocalizedString(@"Delete Procedures", @"delete procedures menu title")];
- [truncateTableButton setHidden:YES];
- [truncateTableContextMenuItem setHidden:YES];
- break;
+ [removeTableMenuItem setTitle:NSLocalizedString(@"Delete Procedures", @"delete procedures menu title")];
+ [removeTableContextMenuItem setTitle:NSLocalizedString(@"Delete Procedures", @"delete procedures menu title")];
+ [truncateTableButton setHidden:YES];
+ [truncateTableContextMenuItem setHidden:YES];
+ break;
case SPTableTypeFunc:
- [removeTableMenuItem setTitle:NSLocalizedString(@"Delete Functions", @"delete functions menu title")];
- [removeTableContextMenuItem setTitle:NSLocalizedString(@"Delete Functions", @"delete functions menu title")];
- [truncateTableButton setHidden:YES];
- [truncateTableContextMenuItem setHidden:YES];
- break;
+ [removeTableMenuItem setTitle:NSLocalizedString(@"Delete Functions", @"delete functions menu title")];
+ [removeTableContextMenuItem setTitle:NSLocalizedString(@"Delete Functions", @"delete functions menu title")];
+ [truncateTableButton setHidden:YES];
+ [truncateTableContextMenuItem setHidden:YES];
+ break;
}
} else {
@@ -1275,10 +1274,11 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
- (NSArray *)allTableAndViewNames
{
NSMutableArray *returnArray = [NSMutableArray array];
- NSInteger i;
- NSInteger cnt = [[self tables] count];
+ NSUInteger i;
+ NSUInteger cnt = [[self tables] count];
for(i=0; i<cnt; i++) {
- if([NSArrayObjectAtIndex([self tableTypes],i) integerValue] == SPTableTypeTable || [NSArrayObjectAtIndex([self tableTypes],i) integerValue] == SPTableTypeView)
+ SPTableType tt = (SPTableType)[NSArrayObjectAtIndex([self tableTypes],i) integerValue];
+ if(tt == SPTableTypeTable || tt == SPTableTypeView)
[returnArray addObject:NSArrayObjectAtIndex([self tables], i)];
}
return returnArray;
@@ -1286,47 +1286,37 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
- (NSArray *)allTableNames
{
- NSMutableArray *returnArray = [NSMutableArray array];
- NSInteger i;
- NSInteger cnt = [[self tables] count];
- for(i=0; i<cnt; i++) {
- if([NSArrayObjectAtIndex([self tableTypes],i) integerValue] == SPTableTypeTable)
- [returnArray addObject:NSArrayObjectAtIndex([self tables], i)];
- }
- return returnArray;
+ return [self _allSchemaObjectsOfType:SPTableTypeTable];
}
- (NSArray *)allViewNames
{
- NSMutableArray *returnArray = [NSMutableArray array];
- NSInteger i;
- NSInteger cnt = [[self tables] count];
- for(i=0; i<cnt; i++) {
- if([NSArrayObjectAtIndex([self tableTypes],i) integerValue] == SPTableTypeView)
- [returnArray addObject:NSArrayObjectAtIndex([self tables], i)];
- }
+ NSMutableArray *returnArray = [self _allSchemaObjectsOfType:SPTableTypeView];
[returnArray sortUsingSelector:@selector(compare:)];
return returnArray;
}
- (NSArray *)allProcedureNames
{
- NSMutableArray *returnArray = [NSMutableArray array];
- NSInteger i;
- NSInteger cnt = [[self tables] count];
- for(i=0; i<cnt; i++) {
- if([NSArrayObjectAtIndex([self tableTypes],i) integerValue] == SPTableTypeProc)
- [returnArray addObject:NSArrayObjectAtIndex([self tables], i)];
- }
- return returnArray;
+ return [self _allSchemaObjectsOfType:SPTableTypeProc];
}
- (NSArray *)allFunctionNames
{
+ return [self _allSchemaObjectsOfType:SPTableTypeFunc];
+}
+
+- (NSArray *)allEventNames
+{
+ return [self _allSchemaObjectsOfType:SPTableTypeEvent];
+}
+
+- (NSMutableArray *)_allSchemaObjectsOfType:(SPTableType)type
+{
NSMutableArray *returnArray = [NSMutableArray array];
NSInteger i;
NSInteger cnt = [[self tables] count];
for(i=0; i<cnt; i++) {
- if([NSArrayObjectAtIndex([self tableTypes],i) integerValue] == SPTableTypeFunc)
+ if([NSArrayObjectAtIndex([self tableTypes],i) integerValue] == type)
[returnArray addObject:NSArrayObjectAtIndex([self tables], i)];
}
return returnArray;
@@ -1508,9 +1498,9 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
similarTables = [self allFunctionNames];
break;
default:
- // if some other table type is given, just return yes
- // better a mysql error than not being able to change something at all
- return YES;
+ // if some other table type is given, just return yes
+ // better a mysql error than not being able to change something at all
+ return YES;
}
for(id table in similarTables) {
@@ -1621,7 +1611,7 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
#endif
// Query the structure of all databases in the background (mainly for completion)
- [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], @"forceUpdate", nil]];
+ [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:@{@"forceUpdate" : @YES}];
}
#ifndef SP_CODA
@@ -1637,7 +1627,7 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
// When enter/return is used, save the row.
if ( [textView methodForSelector:command] == [textView methodForSelector:@selector(insertNewline:)] ) {
[[control window] makeFirstResponder:control];
- return TRUE;
+ return YES;
// When the escape key is used, abort the rename.
} else if ( [[control window] methodForSelector:command] == [[control window] methodForSelector:@selector(cancelOperation:)] ||
@@ -1646,9 +1636,9 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
[control abortEditing];
[[NSApp mainWindow] makeFirstResponder:tablesListView];
- return TRUE;
+ return YES;
} else{
- return FALSE;
+ return NO;
}
}
#endif
@@ -1689,7 +1679,7 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
[tableInfoInstance tableChanged:nil];
}
- if (selectedTableName) [selectedTableName release], selectedTableName = nil;
+ if (selectedTableName) SPClear(selectedTableName);
selectedTableType = SPTableTypeNone;
@@ -1712,7 +1702,7 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
// Save existing scroll position and details
[spHistoryControllerInstance updateHistoryEntries];
- if (selectedTableName) [selectedTableName release], selectedTableName = nil;
+ if (selectedTableName) SPClear(selectedTableName);
selectedTableName = [[NSString alloc] initWithString:newName];
selectedTableType = newType;
@@ -1794,32 +1784,32 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
switch([NSArrayObjectAtIndex(filteredTableTypes, rowIndex) integerValue]) {
case SPTableTypeView:
- [aCell setImage:[NSImage imageNamed:@"table-view-small"]];
- [aCell setIndentationLevel:1];
- [aCell setFont:smallSystemFont];
- break;
+ [aCell setImage:[NSImage imageNamed:@"table-view-small"]];
+ [aCell setIndentationLevel:1];
+ [aCell setFont:smallSystemFont];
+ break;
case SPTableTypeTable:
- [aCell setImage:[NSImage imageNamed:@"table-small"]];
- [aCell setIndentationLevel:1];
- [aCell setFont:smallSystemFont];
- break;
+ [aCell setImage:[NSImage imageNamed:@"table-small"]];
+ [aCell setIndentationLevel:1];
+ [aCell setFont:smallSystemFont];
+ break;
case SPTableTypeProc:
- [aCell setImage:[NSImage imageNamed:@"proc-small"]];
- [aCell setIndentationLevel:1];
- [aCell setFont:smallSystemFont];
- break;
+ [aCell setImage:[NSImage imageNamed:@"proc-small"]];
+ [aCell setIndentationLevel:1];
+ [aCell setFont:smallSystemFont];
+ break;
case SPTableTypeFunc:
- [aCell setImage:[NSImage imageNamed:@"func-small"]];
- [aCell setIndentationLevel:1];
- [aCell setFont:smallSystemFont];
- break;
+ [aCell setImage:[NSImage imageNamed:@"func-small"]];
+ [aCell setIndentationLevel:1];
+ [aCell setFont:smallSystemFont];
+ break;
case SPTableTypeNone:
- [aCell setImage:nil];
- [aCell setIndentationLevel:0];
- break;
+ [aCell setImage:nil];
+ [aCell setIndentationLevel:0];
+ break;
default:
- [aCell setIndentationLevel:1];
- [aCell setFont:smallSystemFont];
+ [aCell setIndentationLevel:1];
+ [aCell setFont:smallSystemFont];
}
}
@@ -1966,7 +1956,7 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
// Don't try and maintain selections of multiple rows through filtering
if ([tablesListView numberOfSelectedRows] > 1) {
[tablesListView deselectAll:self];
- if (selectedTableName) [selectedTableName release], selectedTableName = nil;
+ if (selectedTableName) SPClear(selectedTableName);
}
#ifndef SP_CODA
@@ -2276,10 +2266,10 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
#endif
// Query the structure of all databases in the background (mainly for completion)
- [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier"
- target:[tableDocumentInstance databaseStructureRetrieval]
- selector:@selector(queryDbStructureWithUserInfo:)
- object:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], @"forceUpdate", nil]];
+ [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier"
+ target:[tableDocumentInstance databaseStructureRetrieval]
+ selector:@selector(queryDbStructureWithUserInfo:)
+ object:@{@"forceUpdate" : @YES}];
}
#ifndef SP_CODA /* operations performed on whole tables */
@@ -2428,9 +2418,9 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
// Query the structure of all databases in the background (mainly for completion)
[NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier"
- target:[tableDocumentInstance databaseStructureRetrieval]
+ target:[tableDocumentInstance databaseStructureRetrieval]
selector:@selector(queryDbStructureWithUserInfo:)
- object:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], @"forceUpdate", nil]];
+ object:@{@"forceUpdate" : @YES}];
}
else {
// Error while creating new table
@@ -2506,140 +2496,141 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
SPBeginAlertSheet(NSLocalizedString(@"Error", @"error"), NSLocalizedString(@"OK", @"OK button"), nil, nil, [tableDocumentInstance parentWindow], self, nil, nil,
[NSString stringWithFormat:NSLocalizedString(@"Couldn't get create syntax.\nMySQL said: %@", @"message of panel when table information cannot be retrieved"), [mySQLConnection lastErrorMessage]]);
- } else {
- //insert new table name in create syntax and create new table
- NSScanner *scanner;
- NSString *scanString;
-
- if(tblType == SPTableTypeView){
- scanner = [[NSScanner alloc] initWithString:[[queryResult getRowAsDictionary] objectForKey:@"Create View"]];
- [scanner scanUpToString:@"AS" intoString:nil];
- [scanner scanUpToString:@"" intoString:&scanString];
- [scanner release];
- [mySQLConnection queryString:[NSString stringWithFormat:@"CREATE VIEW %@ %@", [[copyTableNameField stringValue] backtickQuotedString], scanString]];
- }
- else if(tblType == SPTableTypeTable){
- scanner = [[NSScanner alloc] initWithString:[[queryResult getRowAsDictionary] objectForKey:@"Create Table"]];
- [scanner scanUpToString:@"(" intoString:nil];
- [scanner scanUpToString:@"" intoString:&scanString];
- [scanner release];
-
- // If there are any InnoDB referencial constraints we need to strip out the names as they must be unique.
- // MySQL will generate the new names based on the new table name.
- scanString = [scanString stringByReplacingOccurrencesOfRegex:[NSString stringWithFormat:@"CONSTRAINT `[^`]+` "] withString:@""];
-
- // If we're not copying the tables content as well then we need to strip out any AUTO_INCREMENT presets.
- if (!copyTableContent) {
- scanString = [scanString stringByReplacingOccurrencesOfRegex:[NSString stringWithFormat:@"AUTO_INCREMENT=[0-9]+ "] withString:@""];
- }
-
- [mySQLConnection queryString:[NSString stringWithFormat:@"CREATE TABLE %@ %@", [[copyTableNameField stringValue] backtickQuotedString], scanString]];
+ return;
+ }
+
+ //insert new table name in create syntax and create new table
+ NSScanner *scanner;
+ NSString *scanString;
+
+ if(tblType == SPTableTypeView){
+ scanner = [[NSScanner alloc] initWithString:[[queryResult getRowAsDictionary] objectForKey:@"Create View"]];
+ [scanner scanUpToString:@"AS" intoString:nil];
+ [scanner scanUpToString:@"" intoString:&scanString];
+ [scanner release];
+ [mySQLConnection queryString:[NSString stringWithFormat:@"CREATE VIEW %@ %@", [[copyTableNameField stringValue] backtickQuotedString], scanString]];
+ }
+ else if(tblType == SPTableTypeTable){
+ scanner = [[NSScanner alloc] initWithString:[[queryResult getRowAsDictionary] objectForKey:@"Create Table"]];
+ [scanner scanUpToString:@"(" intoString:nil];
+ [scanner scanUpToString:@"" intoString:&scanString];
+ [scanner release];
+
+ // If there are any InnoDB referencial constraints we need to strip out the names as they must be unique.
+ // MySQL will generate the new names based on the new table name.
+ scanString = [scanString stringByReplacingOccurrencesOfRegex:[NSString stringWithFormat:@"CONSTRAINT `[^`]+` "] withString:@""];
+
+ // If we're not copying the tables content as well then we need to strip out any AUTO_INCREMENT presets.
+ if (!copyTableContent) {
+ scanString = [scanString stringByReplacingOccurrencesOfRegex:[NSString stringWithFormat:@"AUTO_INCREMENT=[0-9]+ "] withString:@""];
}
- else if(tblType == SPTableTypeFunc || tblType == SPTableTypeProc)
- {
- // get the create syntax
- SPMySQLResult *theResult;
-
- if(selectedTableType == SPTableTypeProc)
- theResult = [mySQLConnection queryString:[NSString stringWithFormat:@"SHOW CREATE PROCEDURE %@", [selectedTableName backtickQuotedString]]];
- else if([self tableType] == SPTableTypeFunc)
- theResult = [mySQLConnection queryString:[NSString stringWithFormat:@"SHOW CREATE FUNCTION %@", [selectedTableName backtickQuotedString]]];
- else
- return;
-
- // Check for errors, only displaying if the connection hasn't been terminated
- if ([mySQLConnection queryErrored]) {
- if ([mySQLConnection isConnected]) {
- SPBeginAlertSheet(NSLocalizedString(@"Error", @"error"), NSLocalizedString(@"OK", @"OK button"), nil, nil, [tableDocumentInstance parentWindow], self, nil, nil,
- [NSString stringWithFormat:NSLocalizedString(@"An error occured while retrieving the create syntax for '%@'.\nMySQL said: %@", @"message of panel when create syntax cannot be retrieved"), selectedTableName, [mySQLConnection lastErrorMessage]]);
- }
- return;
- }
-
- [theResult setReturnDataAsStrings:YES];
- NSString *tableSyntax = [[theResult getRowAsArray] objectAtIndex:2];
- // replace the old name by the new one and drop the old one
- [mySQLConnection queryString:[tableSyntax stringByReplacingOccurrencesOfRegex:[NSString stringWithFormat:@"(?<=%@ )(`[^`]+?`)", [tableType uppercaseString]] withString:[[copyTableNameField stringValue] backtickQuotedString]]];
+ [mySQLConnection queryString:[NSString stringWithFormat:@"CREATE TABLE %@ %@", [[copyTableNameField stringValue] backtickQuotedString], scanString]];
+ }
+ else if(tblType == SPTableTypeFunc || tblType == SPTableTypeProc)
+ {
+ // get the create syntax
+ SPMySQLResult *theResult;
+
+ if(selectedTableType == SPTableTypeProc)
+ theResult = [mySQLConnection queryString:[NSString stringWithFormat:@"SHOW CREATE PROCEDURE %@", [selectedTableName backtickQuotedString]]];
+ else if([self tableType] == SPTableTypeFunc)
+ theResult = [mySQLConnection queryString:[NSString stringWithFormat:@"SHOW CREATE FUNCTION %@", [selectedTableName backtickQuotedString]]];
+ else
+ return;
- if ([mySQLConnection queryErrored]) {
+ // Check for errors, only displaying if the connection hasn't been terminated
+ if ([mySQLConnection queryErrored]) {
+ if ([mySQLConnection isConnected]) {
SPBeginAlertSheet(NSLocalizedString(@"Error", @"error"), NSLocalizedString(@"OK", @"OK button"), nil, nil, [tableDocumentInstance parentWindow], self, nil, nil,
- [NSString stringWithFormat:NSLocalizedString(@"Couldn't duplicate '%@'.\nMySQL said: %@", @"message of panel when an item cannot be renamed"), [copyTableNameField stringValue], [mySQLConnection lastErrorMessage]]);
+ [NSString stringWithFormat:NSLocalizedString(@"An error occured while retrieving the create syntax for '%@'.\nMySQL said: %@", @"message of panel when create syntax cannot be retrieved"), selectedTableName, [mySQLConnection lastErrorMessage]]);
}
-
+ return;
}
- if ([mySQLConnection queryErrored]) {
- //error while creating new table
+ [theResult setReturnDataAsStrings:YES];
+ NSString *tableSyntax = [[theResult getRowAsArray] objectAtIndex:2];
+
+ // replace the old name by the new one and drop the old one
+ [mySQLConnection queryString:[tableSyntax stringByReplacingOccurrencesOfRegex:[NSString stringWithFormat:@"(?<=%@ )(`[^`]+?`)", [tableType uppercaseString]] withString:[[copyTableNameField stringValue] backtickQuotedString]]];
+
+ if ([mySQLConnection queryErrored]) {
SPBeginAlertSheet(NSLocalizedString(@"Error", @"error"), NSLocalizedString(@"OK", @"OK button"), nil, nil, [tableDocumentInstance parentWindow], self, nil, nil,
- [NSString stringWithFormat:NSLocalizedString(@"Couldn't create '%@'.\nMySQL said: %@", @"message of panel when table cannot be created"), [copyTableNameField stringValue], [mySQLConnection lastErrorMessage]]);
- } else {
-
- if (copyTableContent) {
- //copy table content
- [mySQLConnection queryString:[NSString stringWithFormat:
- @"INSERT INTO %@ SELECT * FROM %@",
- [[copyTableNameField stringValue] backtickQuotedString],
- [selectedTableName backtickQuotedString]
- ]];
-
- if ([mySQLConnection queryErrored]) {
- SPBeginAlertSheet(
- NSLocalizedString(@"Warning", @"warning"),
- NSLocalizedString(@"OK", @"OK button"),
- nil,
- nil,
- [tableDocumentInstance parentWindow],
- self,
- nil,
- nil,
- NSLocalizedString(@"There have been errors while copying table content. Please control the new table.", @"message of panel when table content cannot be copied")
- );
- }
- }
-
- // Insert the new item into the tables list and select it.
- NSInteger addItemAtIndex = NSNotFound;
- for (NSUInteger i = 0; i < [tables count]; i++) {
- NSInteger theTableType = [[tableTypes objectAtIndex:i] integerValue];
- if (theTableType == SPTableTypeNone) continue;
- if ((theTableType == SPTableTypeView || theTableType == SPTableTypeTable)
- && (tblType == SPTableTypeProc || tblType == SPTableTypeFunc)) {
- continue;
- }
- if ((theTableType == SPTableTypeProc || theTableType == SPTableTypeFunc)
- && (tblType == SPTableTypeView || tblType == SPTableTypeTable)) {
- addItemAtIndex = i - 1;
- break;
- }
- if ([[copyTableNameField stringValue] localizedCompare:[tables objectAtIndex:i]] == NSOrderedAscending) {
- addItemAtIndex = i;
- break;
- }
- }
- if (addItemAtIndex == NSNotFound) {
- [tables addObject:[copyTableNameField stringValue]];
- [tableTypes addObject:[NSNumber numberWithInteger:tblType]];
- } else {
- [tables insertObject:[copyTableNameField stringValue] atIndex:addItemAtIndex];
- [tableTypes insertObject:[NSNumber numberWithInteger:tblType] atIndex:addItemAtIndex];
- }
+ [NSString stringWithFormat:NSLocalizedString(@"Couldn't duplicate '%@'.\nMySQL said: %@", @"message of panel when an item cannot be renamed"), [copyTableNameField stringValue], [mySQLConnection lastErrorMessage]]);
+ }
- // Set the selected table name and type, and use updateFilter to update the filter list and selection
- if (selectedTableName) [selectedTableName release];
-
- selectedTableName = [[NSString alloc] initWithString:[copyTableNameField stringValue]];
- selectedTableType = tblType;
-
- [self updateFilter:self];
-
- [tablesListView scrollRowToVisible:[tablesListView selectedRow]];
- [tableDocumentInstance loadTable:selectedTableName ofType:selectedTableType];
+ }
+
+ if ([mySQLConnection queryErrored]) {
+ //error while creating new table
+ SPBeginAlertSheet(NSLocalizedString(@"Error", @"error"), NSLocalizedString(@"OK", @"OK button"), nil, nil, [tableDocumentInstance parentWindow], self, nil, nil,
+ [NSString stringWithFormat:NSLocalizedString(@"Couldn't create '%@'.\nMySQL said: %@", @"message of panel when table cannot be created"), [copyTableNameField stringValue], [mySQLConnection lastErrorMessage]]);
+ return;
+ }
+
+ if (copyTableContent) {
+ //copy table content
+ [mySQLConnection queryString:[NSString stringWithFormat:
+ @"INSERT INTO %@ SELECT * FROM %@",
+ [[copyTableNameField stringValue] backtickQuotedString],
+ [selectedTableName backtickQuotedString]
+ ]];
- // Query the structure of all databases in the background (mainly for completion)
- [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], @"forceUpdate", nil]];
+ if ([mySQLConnection queryErrored]) {
+ SPBeginAlertSheet(
+ NSLocalizedString(@"Warning", @"warning"),
+ NSLocalizedString(@"OK", @"OK button"),
+ nil,
+ nil,
+ [tableDocumentInstance parentWindow],
+ self,
+ nil,
+ nil,
+ NSLocalizedString(@"There have been errors while copying table content. Please control the new table.", @"message of panel when table content cannot be copied")
+ );
+ }
+ }
+
+ // Insert the new item into the tables list and select it.
+ NSInteger addItemAtIndex = NSNotFound;
+ for (NSUInteger i = 0; i < [tables count]; i++) {
+ NSInteger theTableType = [[tableTypes objectAtIndex:i] integerValue];
+ if (theTableType == SPTableTypeNone) continue;
+ if ((theTableType == SPTableTypeView || theTableType == SPTableTypeTable)
+ && (tblType == SPTableTypeProc || tblType == SPTableTypeFunc)) {
+ continue;
+ }
+ if ((theTableType == SPTableTypeProc || theTableType == SPTableTypeFunc)
+ && (tblType == SPTableTypeView || tblType == SPTableTypeTable)) {
+ addItemAtIndex = i - 1;
+ break;
+ }
+ if ([[copyTableNameField stringValue] localizedCompare:[tables objectAtIndex:i]] == NSOrderedAscending) {
+ addItemAtIndex = i;
+ break;
}
}
+ if (addItemAtIndex == NSNotFound) {
+ [tables addObject:[copyTableNameField stringValue]];
+ [tableTypes addObject:[NSNumber numberWithInteger:tblType]];
+ } else {
+ [tables insertObject:[copyTableNameField stringValue] atIndex:addItemAtIndex];
+ [tableTypes insertObject:[NSNumber numberWithInteger:tblType] atIndex:addItemAtIndex];
+ }
+
+ // Set the selected table name and type, and use updateFilter to update the filter list and selection
+ if (selectedTableName) [selectedTableName release];
+
+ selectedTableName = [[NSString alloc] initWithString:[copyTableNameField stringValue]];
+ selectedTableType = tblType;
+
+ [self updateFilter:self];
+
+ [tablesListView scrollRowToVisible:[tablesListView selectedRow]];
+ [tableDocumentInstance loadTable:selectedTableName ofType:selectedTableType];
+
+ // Query the structure of all databases in the background (mainly for completion)
+ [NSThread detachNewThreadWithName:@"SPNavigatorController database structure querier" target:[tableDocumentInstance databaseStructureRetrieval] selector:@selector(queryDbStructureWithUserInfo:) object:@{@"forceUpdate" : @YES}];
}
#endif
@@ -2653,7 +2644,7 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
// check if the name really changed
if ([oldTableName isEqualToString:newTableName]) return;
- // check if only the case changed - then we have to do two renames, see http://code.google.com/p/sequel-pro/issues/detail?id=484
+ // check if only the case changed - then we have to do two renames, see issue #484
if ([[oldTableName lowercaseString] isEqualToString:[newTableName lowercaseString]])
{
// first try finding an unused temporary name
@@ -2738,15 +2729,15 @@ static NSString *SPDuplicateTable = @"SPDuplicateTable";
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
- [tables release];
- [tableTypes release];
+ SPClear(tables);
+ SPClear(tableTypes);
#ifndef SP_CODA
- if (isTableListFiltered && filteredTables) [filteredTables release];
- if (isTableListFiltered && filteredTableTypes) [filteredTableTypes release];
+ if (isTableListFiltered && filteredTables) SPClear(filteredTables);
+ if (isTableListFiltered && filteredTableTypes) SPClear(filteredTableTypes);
#endif
- if (selectedTableName) [selectedTableName release];
+ if (selectedTableName) SPClear(selectedTableName);
- if (addTableCharsetHelper) [addTableCharsetHelper release];
+ if (addTableCharsetHelper) SPClear(addTableCharsetHelper);
[super dealloc];
}
diff --git a/Source/SPTablesPreferencePane.m b/Source/SPTablesPreferencePane.m
index 5c55af94..f89849ec 100644
--- a/Source/SPTablesPreferencePane.m
+++ b/Source/SPTablesPreferencePane.m
@@ -93,4 +93,9 @@
return NO;
}
+- (void)preferencePaneWillBeShown
+{
+ [self updateDisplayedTableFontName];
+}
+
@end
diff --git a/Source/SPTextAndLinkCell.m b/Source/SPTextAndLinkCell.m
index a4d118ed..2aefbff5 100644
--- a/Source/SPTextAndLinkCell.m
+++ b/Source/SPTextAndLinkCell.m
@@ -42,6 +42,7 @@ static inline NSRect SPTextLinkRectFromCellRect(NSRect inRect)
return NSMakeRect(inRect.origin.x + inRect.size.width - 15, inRect.origin.y - 1, 12, inRect.size.height);
}
+
#pragma mark -
#pragma mark Setup and teardown
@@ -69,7 +70,7 @@ static inline NSRect SPTextLinkRectFromCellRect(NSRect inRect)
*/
- (void) dealloc
{
- if (linkButton) [linkButton release];
+ if (linkButton) SPClear(linkButton);
[super dealloc];
}
@@ -176,7 +177,7 @@ static inline NSRect SPTextLinkRectFromCellRect(NSRect inRect)
/**
* Allow hit tracking for link functionality
*/
-- (NSUInteger) hitTestForEvent:(NSEvent *)event inRect:(NSRect)cellFrame ofView:(NSView *)controlView
+- (NSCellHitResult) hitTestForEvent:(NSEvent *)event inRect:(NSRect)cellFrame ofView:(NSView *)controlView
{
// Fast case for no link - make entire cell editable click area
diff --git a/Source/SPTextView.m b/Source/SPTextView.m
index abe89c5b..12d6ed13 100644
--- a/Source/SPTextView.m
+++ b/Source/SPTextView.m
@@ -381,7 +381,7 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
NSSortDescriptor *desc = [[NSSortDescriptor alloc] initWithKey:nil ascending:YES selector:@selector(localizedCompare:)];
NSMutableArray *sortedDbs = [NSMutableArray array];
- [sortedDbs addObjectsFromArray:[allDbs sortedArrayUsingDescriptors:[NSArray arrayWithObject:desc]]];
+ [sortedDbs addObjectsFromArray:[allDbs sortedArrayUsingDescriptors:@[desc]]];
NSString *currentDb = nil;
NSString *currentTable = nil;
@@ -478,7 +478,7 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
[sortedTables addObject:aTableName_id];
} else {
[possibleCompletions addObject:[NSDictionary dictionaryWithObjectsAndKeys:[[db componentsSeparatedByString:SPUniqueSchemaDelimiter] lastObject], @"display", @"database-small", @"image", @"", @"isRef", nil]];
- [sortedTables addObjectsFromArray:[allTables sortedArrayUsingDescriptors:[NSArray arrayWithObject:desc]]];
+ [sortedTables addObjectsFromArray:[allTables sortedArrayUsingDescriptors:@[desc]]];
if([sortedTables count] > 1 && [sortedTables containsObject:[NSString stringWithFormat:@"%@%@%@", db, SPUniqueSchemaDelimiter, currentTable]]) {
[sortedTables removeObject:[NSString stringWithFormat:@"%@%@%@", db, SPUniqueSchemaDelimiter, currentTable]];
[sortedTables insertObject:[NSString stringWithFormat:@"%@%@%@", db, SPUniqueSchemaDelimiter, currentTable] atIndex:0];
@@ -508,7 +508,7 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
break;
}
if(!breakFlag) {
- NSArray *sortedFields = [allFields sortedArrayUsingDescriptors:[NSArray arrayWithObject:desc]];
+ NSArray *sortedFields = [allFields sortedArrayUsingDescriptors:@[desc]];
for(id field in sortedFields) {
if(![field hasPrefix:@" "]) {
NSString *fieldpath = [field substringFromIndex:[field rangeOfString:SPUniqueSchemaDelimiter].location];
@@ -772,8 +772,8 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
backtickMode+=1;
leftBacktick = YES;
}
- if([[self string] length] > parseRange.location+parseRange.length) {
- if([[self string] characterAtIndex:parseRange.location+parseRange.length] == '`') {
+ if([[self string] length] > NSMaxRange(parseRange)) {
+ if([[self string] characterAtIndex:NSMaxRange(parseRange)] == '`') {
backtickMode+=2;
parseRange.length++; // adjust parse string for right `
rightBacktick = YES;
@@ -1127,7 +1127,7 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
if (rtf)
{
- [pb declareTypes:[NSArray arrayWithObject:NSRTFPboardType] owner:self];
+ [pb declareTypes:@[NSRTFPboardType] owner:self];
[pb setData:rtf forType:NSRTFPboardType];
}
}
@@ -1414,7 +1414,7 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
// if(currentDb != nil && dbs != nil && [dbs count] && [dbs objectForKey:currentDb]) {
// NSArray *allTables = [[dbs objectForKey:currentDb] allKeys];
// NSSortDescriptor *desc = [[NSSortDescriptor alloc] initWithKey:nil ascending:YES selector:@selector(localizedCompare:)];
- // NSArray *sortedTables = [allTables sortedArrayUsingDescriptors:[NSArray arrayWithObject:desc]];
+ // NSArray *sortedTables = [allTables sortedArrayUsingDescriptors:@[desc]];
// [desc release];
// for(id table in sortedTables) {
// NSDictionary * theTable = [[dbs objectForKey:currentDb] objectForKey:table];
@@ -1431,7 +1431,7 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
// } else {
arr = [NSArray arrayWithArray:[[(NSObject*)[self delegate] valueForKeyPath:@"tablesListInstance"] allTableAndViewNames]];
if(arr == nil) {
- arr = [NSArray array];
+ arr = @[];
}
for(id w in arr)
[possibleCompletions addObject:[NSDictionary dictionaryWithObjectsAndKeys:w, @"display", @"table-small-square", @"image", @"", @"isRef", nil]];
@@ -1440,13 +1440,13 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
else if([kind isEqualToString:@"$SP_ASLIST_ALL_DATABASES"]) {
arr = [NSArray arrayWithArray:[[(NSObject*)[self delegate] valueForKeyPath:@"tablesListInstance"] allDatabaseNames]];
if(arr == nil) {
- arr = [NSArray array];
+ arr = @[];
}
for(id w in arr)
[possibleCompletions addObject:[NSDictionary dictionaryWithObjectsAndKeys:w, @"display", @"database-small", @"image", @"", @"isRef", nil]];
arr = [NSArray arrayWithArray:[[(NSObject*)[self delegate] valueForKeyPath:@"tablesListInstance"] allSystemDatabaseNames]];
if(arr == nil) {
- arr = [NSArray array];
+ arr = @[];
}
for(id w in arr)
[possibleCompletions addObject:[NSDictionary dictionaryWithObjectsAndKeys:w, @"display", @"database-small", @"image", @"", @"isRef", nil]];
@@ -1466,7 +1466,7 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
NSDictionary * theTable = [[dbs objectForKey:currentDb] objectForKey:currentTable];
NSArray *allFields = [theTable allKeys];
NSSortDescriptor *desc = [[NSSortDescriptor alloc] initWithKey:nil ascending:YES selector:@selector(localizedCompare:)];
- NSArray *sortedFields = [allFields sortedArrayUsingDescriptors:[NSArray arrayWithObject:desc]];
+ NSArray *sortedFields = [allFields sortedArrayUsingDescriptors:@[desc]];
[desc release];
for(id field in sortedFields) {
if(![field hasPrefix:@" "]) {
@@ -1499,7 +1499,7 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
} else {
arr = [NSArray arrayWithArray:[[tableDocumentInstance valueForKeyPath:@"tableDataInstance"] valueForKey:@"columnNames"]];
if(arr == nil) {
- arr = [NSArray array];
+ arr = @[];
}
for(id w in arr)
[possibleCompletions addObject:[NSDictionary dictionaryWithObjectsAndKeys:w, @"display", @"field-small-square", @"image", @"", @"isRef", nil]];
@@ -1934,20 +1934,22 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
}
// unescape escaped snippets and re-adjust successive snippet locations : \${1:a} → ${1:a}
- NSString *ure = @"(?s)\\\\\\$\\{(1?\\d):(.{0}|.*?[^\\\\])\\}";
- while([snip isMatchedByRegex:ure]) {
- NSRange escapeRange = [snip rangeOfRegex:ure capture:0L];
- [snip replaceCharactersInRange:escapeRange withString:[snip substringWithRange:NSMakeRange(escapeRange.location+1,escapeRange.length-1)]];
- NSInteger loc = escapeRange.location + targetRange.location;
- [snip flushCachedRegexData];
- for(i=0; i<=snippetControlMax; i++)
- if(snippetControlArray[i][0] > -1 && snippetControlArray[i][0] > loc)
- snippetControlArray[i][0]--;
- // Adjust mirrored snippets
- if(mirroredCounter > -1)
- for(i=0; i<=mirroredCounter; i++)
- if(snippetMirroredControlArray[i][0] > -1 && snippetMirroredControlArray[i][1] > loc)
- snippetMirroredControlArray[i][1]--;
+ // unescape escaped mirrored snippets and re-adjust successive snippet locations : \$1 → $1
+ for (NSString *regex in @[@"(?s)\\\\\\$\\{(1?\\d):(.{0}|.*?[^\\\\])\\}",@"(?s)\\\\\\$(1?\\d)(?=\\D)"]) {
+ while([snip isMatchedByRegex:regex]) {
+ NSRange escapeRange = [snip rangeOfRegex:regex capture:0L];
+ [snip replaceCharactersInRange:escapeRange withString:[snip substringWithRange:NSMakeRange(escapeRange.location+1,escapeRange.length-1)]];
+ NSInteger loc = escapeRange.location + targetRange.location;
+ [snip flushCachedRegexData];
+ for(i=0; i<=snippetControlMax; i++)
+ if(snippetControlArray[i][0] > -1 && snippetControlArray[i][0] > loc)
+ snippetControlArray[i][0]--;
+ // Adjust mirrored snippets
+ if(mirroredCounter > -1)
+ for(i=0; i<=mirroredCounter; i++)
+ if(snippetMirroredControlArray[i][0] > -1 && snippetMirroredControlArray[i][1] > loc)
+ snippetMirroredControlArray[i][1]--;
+ }
}
// Insert favorite query by selecting the tab trigger if any
@@ -2907,7 +2909,7 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
#endif
if(tabStopWidth < 1) tabStopWidth = 1;
- float tabWidth = NSSizeToCGSize([@" " sizeWithAttributes:[NSDictionary dictionaryWithObject:tvFont forKey:NSFontAttributeName]]).width;
+ float tabWidth = NSSizeToCGSize([@" " sizeWithAttributes:@{NSFontAttributeName : tvFont}]).width;
tabWidth = (float)tabStopWidth * tabWidth;
NSInteger numberOfTabs = 256/tabStopWidth;
@@ -3125,7 +3127,7 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
}
#ifndef SP_CODA
- [[NSApp delegate] reloadBundles:self];
+ [SPAppDelegate reloadBundles:self];
// Remove 'Bundles' sub menu and separator
NSMenuItem *bItem = [menu itemWithTag:10000000];
@@ -3135,8 +3137,8 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
[menu removeItem:bItem];
}
- NSArray *bundleCategories = [[NSApp delegate] bundleCategoriesForScope:SPBundleScopeInputField];
- NSArray *bundleItems = [[NSApp delegate] bundleItemsForScope:SPBundleScopeInputField];
+ NSArray *bundleCategories = [SPAppDelegate bundleCategoriesForScope:SPBundleScopeInputField];
+ NSArray *bundleItems = [SPAppDelegate bundleItemsForScope:SPBundleScopeInputField];
// Add 'Bundles' sub menu for custom query editor only so far if bundles with scope 'editor' were found
if(customQueryInstance && bundleItems && [bundleItems count]) {
@@ -3225,7 +3227,7 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
// Disable "Copy with Column Names" and "Copy as SQL INSERT"
// in the main menu
if ( [menuItem tag] == SPEditMenuCopyWithColumns
- || [menuItem tag] == SPEditCopyAsSQL ) {
+ || [menuItem tag] == SPEditMenuCopyAsSQL) {
return NO;
}
@@ -3687,18 +3689,18 @@ static inline NSPoint SPPointOnLine(NSPoint a, NSPoint b, CGFloat t) { return NS
if (completionIsOpen) [completionPopup close], completionIsOpen = NO;
#ifndef SP_CODA
- [prefs release];
+ SPClear(prefs);
#endif
- [lineNumberView release];
- if(queryHiliteColor) [queryHiliteColor release];
- if(queryEditorBackgroundColor) [queryEditorBackgroundColor release];
- if(commentColor) [commentColor release];
- if(quoteColor) [quoteColor release];
- if(keywordColor) [keywordColor release];
- if(backtickColor) [backtickColor release];
- if(numericColor) [numericColor release];
- if(variableColor) [variableColor release];
- if(otherTextColor) [otherTextColor release];
+ SPClear(lineNumberView);
+ if(queryHiliteColor) SPClear(queryHiliteColor);
+ if(queryEditorBackgroundColor) SPClear(queryEditorBackgroundColor);
+ if(commentColor) SPClear(commentColor);
+ if(quoteColor) SPClear(quoteColor);
+ if(keywordColor) SPClear(keywordColor);
+ if(backtickColor) SPClear(backtickColor);
+ if(numericColor) SPClear(numericColor);
+ if(variableColor) SPClear(variableColor);
+ if(otherTextColor) SPClear(otherTextColor);
[super dealloc];
}
diff --git a/Source/SPTextViewAdditions.m b/Source/SPTextViewAdditions.m
index 17998fa6..56103a53 100644
--- a/Source/SPTextViewAdditions.m
+++ b/Source/SPTextViewAdditions.m
@@ -247,7 +247,7 @@
// if no selection place the caret at the end of the current word
{
NSRange newRange = [self getRangeForCurrentWord];
- [self setSelectedRange:NSMakeRange(newRange.location + newRange.length, 0)];
+ [self setSelectedRange:NSMakeRange(NSMaxRange(newRange), 0)];
}
}
@@ -269,7 +269,7 @@
// if no selection place the caret at the end of the current word
{
NSRange newRange = [self getRangeForCurrentWord];
- [self setSelectedRange:NSMakeRange(newRange.location + newRange.length, 0)];
+ [self setSelectedRange:NSMakeRange(NSMaxRange(newRange), 0)];
}
}
@@ -291,7 +291,7 @@
// if no selection place the caret at the end of the current word
{
NSRange newRange = [self getRangeForCurrentWord];
- [self setSelectedRange:NSMakeRange(newRange.location + newRange.length, 0)];
+ [self setSelectedRange:NSMakeRange(NSMaxRange(newRange), 0)];
}
}
@@ -312,7 +312,7 @@
// if no selection place the caret at the end of the current word
{
NSRange newRange = [self getRangeForCurrentWord];
- [self setSelectedRange:NSMakeRange(newRange.location + newRange.length, 0)];
+ [self setSelectedRange:NSMakeRange(NSMaxRange(newRange), 0)];
}
}
@@ -335,7 +335,7 @@
// if no selection place the caret at the end of the current word
{
NSRange newRange = [self getRangeForCurrentWord];
- [self setSelectedRange:NSMakeRange(newRange.location + newRange.length, 0)];
+ [self setSelectedRange:NSMakeRange(NSMaxRange(newRange), 0)];
}
}
@@ -511,7 +511,7 @@
NSInteger idx = [sender tag] - 1000000;
NSString *infoPath = nil;
- NSArray *bundleItems = [[NSApp delegate] bundleItemsForScope:SPBundleScopeInputField];
+ NSArray *bundleItems = [SPAppDelegate bundleItemsForScope:SPBundleScopeInputField];
if(idx >=0 && idx < (NSInteger)[bundleItems count]) {
infoPath = [[bundleItems objectAtIndex:idx] objectForKey:SPBundleInternPathToFileKey];
} else {
@@ -661,7 +661,7 @@
NSString *output = [SPBundleCommandRunner runBashCommand:cmd withEnvironment:env
atCurrentDirectoryPath:nil
- callerInstance:[(SPAppController*)[NSApp delegate] frontDocument]
+ callerInstance:[SPAppDelegate frontDocument]
contextInfo:[NSDictionary dictionaryWithObjectsAndKeys:
([cmdData objectForKey:SPBundleFileNameKey])?:@"-", @"name",
NSLocalizedString(@"Input Field", @"input field menu item label"), @"scope",
@@ -736,7 +736,7 @@
SPBundleHTMLOutputController *c = [[SPBundleHTMLOutputController alloc] init];
[c setWindowUUID:[cmdData objectForKey:SPBundleFileUUIDKey]];
[c displayHTMLContent:output withOptions:nil];
- [[NSApp delegate] addHTMLOutputController:c];
+ [SPAppDelegate addHTMLOutputController:c];
}
}
@@ -800,12 +800,12 @@
[menu removeItem:bItem];
}
- if ([[[(SPWindowController *)[[[NSApp delegate] frontDocumentWindow] delegate] selectedTableDocument] connectionID] isEqualToString:@"_"]) return menu;
+ if ([[[(SPWindowController *)[[SPAppDelegate frontDocumentWindow] delegate] selectedTableDocument] connectionID] isEqualToString:@"_"]) return menu;
- [[NSApp delegate] reloadBundles:self];
+ [SPAppDelegate reloadBundles:self];
- NSArray *bundleCategories = [[NSApp delegate] bundleCategoriesForScope:SPBundleScopeInputField];
- NSArray *bundleItems = [[NSApp delegate] bundleItemsForScope:SPBundleScopeInputField];
+ NSArray *bundleCategories = [SPAppDelegate bundleCategoriesForScope:SPBundleScopeInputField];
+ NSArray *bundleItems = [SPAppDelegate bundleItemsForScope:SPBundleScopeInputField];
// Add 'Bundles' sub menu
if(bundleItems && [bundleItems count]) {
diff --git a/Source/SPThreadAdditions.m b/Source/SPThreadAdditions.m
index c1f0a52b..f61b6289 100644
--- a/Source/SPThreadAdditions.m
+++ b/Source/SPThreadAdditions.m
@@ -29,17 +29,69 @@
// More info at <https://github.com/sequelpro/sequelpro>
#import "SPThreadAdditions.h"
+#import <objc/objc-runtime.h>
+
+//this is a "private" class only needed by the +detachNewThreadWithName:… method below.
+@interface SPNamedThread : NSObject {
+ @private
+ NSString *name;
+ id object;
+ SEL selector;
+}
+- (id)initWithTarget:(id)aObject selector:(SEL)aSelector name:(NSString *)aName;
+- (void)run:(id)argument;
+@end
@implementation NSThread (SPThreadAdditions)
+ (void)detachNewThreadWithName:(NSString *)aName target:(id)aTarget selector:(SEL)aSelector object:(id)anArgument
{
- NSThread *newThread = [[NSThread alloc] initWithTarget:aTarget selector:aSelector object:anArgument];
- if (aName) {
- [newThread setName:aName];
- }
+ // -[NSThread setName:] has two limitations when it comes to visibility in Xcode:
+ // a) Xcode only updates the thread name in UI once (on the first time the thread is shown in the debugger).
+ // b) Internally this method calls
+ // int pthread_setname_np(const char*);
+ // which, as can be seen, does not allow to specify a thread id. Therefore it is skipped if <calling thread != self>.
+ // Unfortunately this (and not the property of the NSThread) seems to be the actual name shown in Xcode.
+ // The consequence is, we can only set a thread's name from within the thread, so let's add a proxy object to do that.
+ SPNamedThread *namedThread = [[SPNamedThread alloc] initWithTarget:aTarget selector:aSelector name:aName];
+
+ NSThread *newThread = [[NSThread alloc] initWithTarget:namedThread selector:@selector(run:) object:anArgument];
[newThread start];
[newThread autorelease];
+ [namedThread autorelease];
+}
+
+@end
+
+#pragma mark -
+
+@implementation SPNamedThread
+
+- (id)initWithTarget:(id)aObject selector:(SEL)aSelector name:(NSString *)aName
+{
+ if(self = [super init]) {
+ name = [aName copy];
+ object = [aObject retain];
+ selector = aSelector;
+ }
+ return self;
+}
+
+- (void)run:(id)argument
+{
+ [[NSThread currentThread] setName:name];
+
+ void (*msgsend)(id, SEL, id) = (void (*)(id, SEL, id)) objc_msgSend; //hint for the compiler
+
+ msgsend(object,selector,argument);
+}
+
+- (void)dealloc
+{
+ SPClear(object);
+ selector = NULL;
+ SPClear(name);
+ [super dealloc];
}
@end
diff --git a/Source/SPTooltip.m b/Source/SPTooltip.m
index 276b5ebd..478945ed 100644
--- a/Source/SPTooltip.m
+++ b/Source/SPTooltip.m
@@ -96,7 +96,7 @@ static CGFloat slow_in_out (CGFloat t)
+ (void)showWithObject:(id)content atLocation:(NSPoint)point
{
- [self showWithObject:content atLocation:point ofType:@"text" displayOptions:[NSDictionary dictionary]];
+ [self showWithObject:content atLocation:point ofType:@"text" displayOptions:@{}];
}
+ (void)showWithObject:(id)content atLocation:(NSPoint)point ofType:(NSString *)type
@@ -241,9 +241,9 @@ static CGFloat slow_in_out (CGFloat t)
- (void)dealloc
{
[NSObject cancelPreviousPerformRequestsWithTarget:self];
- [didOpenAtDate release];
- [webView release];
- [webPreferences release];
+ SPClear(didOpenAtDate);
+ SPClear(webView);
+ SPClear(webPreferences);
[super dealloc];
}
@@ -320,8 +320,11 @@ static CGFloat slow_in_out (CGFloat t)
NSScreen* candidate;
for(candidate in [NSScreen screens])
{
- if(NSMinX([candidate frame]) < pos.x && NSMinX([candidate frame]) > NSMinX(screenFrame))
- screenFrame = [candidate frame];
+ NSRect cf = [candidate frame];
+ if(NSPointInRect(pos,cf)) {
+ screenFrame = cf;
+ break;
+ }
}
// is contentView a webView calculate actual rendered size via JavaScript
diff --git a/Source/SPTreeNode.h b/Source/SPTreeNode.h
index abbb179c..aa2edbdc 100644
--- a/Source/SPTreeNode.h
+++ b/Source/SPTreeNode.h
@@ -55,6 +55,7 @@
- (SPTreeNode *)parentFromArray:(NSArray *)array;
- (BOOL)isDescendantOfOrOneOfNodes:(NSArray *)nodes;
+- (BOOL)isDescendantOfNodes:(NSArray *)nodes;
- (NSDictionary *)dictionaryRepresentation;
diff --git a/Source/SPTreeNode.m b/Source/SPTreeNode.m
index 13c86f27..22cfb1da 100644
--- a/Source/SPTreeNode.m
+++ b/Source/SPTreeNode.m
@@ -50,7 +50,7 @@ static NSString *SPTreeNodeIsGroupKey = @"SPTreeNodeIsGroup";
- (id)initWithRepresentedObject:(id)object
{
if ((self = [super initWithRepresentedObject:object])) {
- [self setIsGroup:NO];
+ [self setIsGroup:[object isKindOfClass:[SPGroupNode class]]];
}
return self;
@@ -197,11 +197,12 @@ static NSString *SPTreeNodeIsGroupKey = @"SPTreeNodeIsGroup";
/**
* Returns YES if self is contained anywhere inside the children or children of
- * sub-nodes of the nodes contained inside the supplied array.
+ * sub-nodes of the nodes contained inside the supplied array or is itself a
+ * member of the array.
*
* @param nodes The array of nodes to search
*
- * @return A BOOL indicating whether or not it's a descendent
+ * @return A BOOL indicating whether or not it's a descendent or array member
*/
- (BOOL)isDescendantOfOrOneOfNodes:(NSArray *)nodes
{
@@ -221,6 +222,34 @@ static NSString *SPTreeNodeIsGroupKey = @"SPTreeNodeIsGroup";
}
/**
+ * Returns YES if self is contained anywhere inside the children or children of
+ * sub-nodes of the nodes contained inside the supplied array, but NOT the given
+ * array itself.
+ * This means, if self is a member of nodes but not a child of any
+ * other node in nodes it will still return NO.
+ *
+ * @param nodes The array of nodes to search
+ *
+ * @return A BOOL indicating whether or not it's a descendent
+ */
+- (BOOL)isDescendantOfNodes:(NSArray *)nodes
+{
+ for (SPTreeNode *node in nodes)
+ {
+ if (node == self) continue;
+
+ // Check all the sub-nodes
+ if ([node isGroup]) {
+ if ([self isDescendantOfOrOneOfNodes:[node childNodes]]) {
+ return YES;
+ }
+ }
+ }
+
+ return NO;
+}
+
+/**
* Constructs a dictionary representation of the favorite.
*
* @return The dictionary representation.
@@ -265,6 +294,7 @@ static NSString *SPTreeNodeIsGroupKey = @"SPTreeNodeIsGroup";
- (id)initWithCoder:(NSCoder *)coder
{
+#warning This is not a valid initializer.
[self setIsGroup:[[coder decodeObjectForKey:SPTreeNodeIsGroupKey] boolValue]];
return self;
diff --git a/Source/SPUserManager.m b/Source/SPUserManager.m
index 3ac9e5de..e3f611c3 100644
--- a/Source/SPUserManager.m
+++ b/Source/SPUserManager.m
@@ -135,7 +135,7 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
treeSortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"displayName" ascending:YES];
- [self setTreeSortDescriptors:[NSArray arrayWithObject:treeSortDescriptor]];
+ [self setTreeSortDescriptors:@[treeSortDescriptor]];
[super windowDidLoad];
}
@@ -183,7 +183,7 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
[privKey replaceOccurrencesOfString:@" " withString:@"_" options:NSLiteralSearch range:NSMakeRange(0, [privKey length])];
[privKey appendString:@"_priv"];
- [[self privsSupportedByServer] setValue:[NSNumber numberWithBool:YES] forKey:privKey];
+ [[self privsSupportedByServer] setValue:@YES forKey:privKey];
}
}
// If that fails, base privilege support on the mysql.users columns
@@ -200,7 +200,7 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
if ([privColumnToGrantMap objectForKey:privKey]) privKey = [privColumnToGrantMap objectForKey:privKey];
- [[self privsSupportedByServer] setValue:[NSNumber numberWithBool:YES] forKey:[privKey lowercaseString]];
+ [[self privsSupportedByServer] setValue:@YES forKey:[privKey lowercaseString]];
}
}
@@ -281,7 +281,7 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
[[self managedObjectContext] save:&error];
if (error != nil) {
- [[NSApplication sharedApplication] presentError:error];
+ [NSApp presentError:error];
}
[parentResults release];
@@ -443,7 +443,7 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel: [self managedObjectModel]];
if (![persistentStoreCoordinator addPersistentStoreWithType:NSInMemoryStoreType configuration:nil URL:nil options:nil error:&error]) {
- [[NSApplication sharedApplication] presentError:error];
+ [NSApp presentError:error];
}
return persistentStoreCoordinator;
@@ -555,12 +555,12 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
didEndSelector:NULL
contextInfo:nil];
- [errorsString release];
+ SPClear(errorsString);
return;
}
- [errorsString release];
+ SPClear(errorsString);
// Otherwise, close the sheet
[NSApp endSheet:[self window] returnCode:0];
@@ -580,7 +580,7 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
// Perform the change in a try/catch check to avoid exceptions for unhandled privs
NS_DURING
- [selectedUser setValue:[NSNumber numberWithBool:YES] forKey:key];
+ [selectedUser setValue:@YES forKey:key];
NS_HANDLER
NS_ENDHANDLER
}
@@ -600,7 +600,7 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
// Perform the change in a try/catch check to avoid exceptions for unhandled privs
NS_DURING
- [selectedUser setValue:[NSNumber numberWithBool:NO] forKey:key];
+ [selectedUser setValue:@NO forKey:key];
NS_HANDLER
NS_ENDHANDLER
}
@@ -848,7 +848,7 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
- (void)_clearData
{
[managedObjectContext reset];
- [managedObjectContext release], managedObjectContext = nil;
+ SPClear(managedObjectContext);
}
/**
@@ -1261,7 +1261,7 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
NSArray *array = [moc executeFetchRequest:request error:&error];
if (error != nil) {
- [[NSApplication sharedApplication] presentError:error];
+ [NSApp presentError:error];
}
return array;
@@ -1297,7 +1297,7 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
NSArray *array = [moc executeFetchRequest:request error:&error];
if (error != nil) {
- [[NSApplication sharedApplication] presentError:error];
+ [NSApp presentError:error];
}
return array;
@@ -1458,18 +1458,20 @@ static NSString * const SPTableViewNameColumnID = @"NameColumn";
- (void)dealloc
{
[[NSNotificationCenter defaultCenter] removeObserver:self];
-
- [managedObjectContext release];
- [persistentStoreCoordinator release];
- [managedObjectModel release];
- [privColumnToGrantMap release];
- [connection release];
- [privsSupportedByServer release];
- [schemas release];
- [availablePrivs release];
- [grantedSchemaPrivs release];
- [treeSortDescriptor release];
- [serverSupport release];
+
+
+ SPClear(managedObjectContext);
+ SPClear(persistentStoreCoordinator);
+ SPClear(managedObjectModel);
+ SPClear(privColumnToGrantMap);
+ SPClear(connection);
+ SPClear(privsSupportedByServer);
+ SPClear(schemas);
+ SPClear(availablePrivs);
+ SPClear(grantedSchemaPrivs);
+ SPClear(treeSortDescriptor);
+ SPClear(treeSortDescriptors);
+ SPClear(serverSupport);
[super dealloc];
}
diff --git a/Source/SPWindowController.h b/Source/SPWindowController.h
index 8697e738..c99a2ff2 100644
--- a/Source/SPWindowController.h
+++ b/Source/SPWindowController.h
@@ -37,7 +37,7 @@
IBOutlet NSTabView *tabView;
NSClipView *titleBarLineHidingView;
- SInt32 systemVersion;
+ BOOL isOSVersionAtLeast10_7_0;
NSMenuItem *closeWindowMenuItem;
NSMenuItem *closeTabMenuItem;
diff --git a/Source/SPWindowController.m b/Source/SPWindowController.m
index f90b423d..db94f5ce 100644
--- a/Source/SPWindowController.m
+++ b/Source/SPWindowController.m
@@ -63,11 +63,8 @@ enum {
- (void)awakeFromNib
{
- systemVersion = 0;
selectedTableDocument = nil;
- Gestalt(gestaltSystemVersion, &systemVersion);
-
[[self window] setCollectionBehavior:[[self window] collectionBehavior] | NSWindowCollectionBehaviorFullScreenPrimary];
// Add a line to the window to hide the line below the title bar when the toolbar is collapsed
@@ -83,13 +80,19 @@ enum {
[self _setUpTabBar];
// Retrieve references to the 'Close Window' and 'Close Tab' menus. These are updated as window focus changes.
- closeWindowMenuItem = [[[[NSApp mainMenu] itemWithTag:SPMainMenuFile] submenu] itemWithTag:1003];
- closeTabMenuItem = [[[[NSApp mainMenu] itemWithTag:SPMainMenuFile] submenu] itemWithTag:1103];
+ closeWindowMenuItem = [[[[NSApp mainMenu] itemWithTag:SPMainMenuFile] submenu] itemWithTag:SPMainMenuFileClose];
+ closeTabMenuItem = [[[[NSApp mainMenu] itemWithTag:SPMainMenuFile] submenu] itemWithTag:SPMainMenuFileCloseTab];
// Register for drag start and stop notifications - used to show/hide tab bars
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tabDragStarted:) name:PSMTabDragDidBeginNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tabDragStopped:) name:PSMTabDragDidEndNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_updateLineHidingViewState) name:SPWindowToolbarDidToggleNotification object:nil];
+
+ // Because we are a document-based app we automatically adopt window restoration on 10.7+.
+ // However that causes a race condition with our own window setup code.
+ // Remove this when we actually support restoration.
+ if([[self window] respondsToSelector:@selector(setRestorable:)])
+ [[self window] setRestorable:NO];
}
#pragma mark -
@@ -511,10 +514,10 @@ enum {
{
// Set the background colour to match the titlebar window state
if ((([[self window] isMainWindow] || [[[self window] attachedSheet] isMainWindow]) && [NSApp isActive])) {
- [titleBarLineHidingView setBackgroundColor:[NSColor colorWithCalibratedWhite:(systemVersion >= 0x1070) ? 0.66f : 0.63f alpha:1.0]];
+ [titleBarLineHidingView setBackgroundColor:[NSColor colorWithCalibratedWhite:(isOSVersionAtLeast10_7_0) ? 0.66f : 0.63f alpha:1.0]];
}
else {
- [titleBarLineHidingView setBackgroundColor:[NSColor colorWithCalibratedWhite:(systemVersion >= 0x1070) ? 0.87f : 0.84f alpha:1.0]];
+ [titleBarLineHidingView setBackgroundColor:[NSColor colorWithCalibratedWhite:(isOSVersionAtLeast10_7_0) ? 0.87f : 0.84f alpha:1.0]];
}
// If the window is fullscreen or the toolbar is showing, hide the view; otherwise show it
@@ -537,7 +540,7 @@ enum {
// Tear down the animations on the tab bar to stop redraws
[tabBar destroyAnimations];
- [managedDatabaseConnections release];
+ SPClear(managedDatabaseConnections);
[super dealloc];
}
diff --git a/Source/SPWindowControllerDelegate.m b/Source/SPWindowControllerDelegate.m
index d8637ac4..47959f1b 100644
--- a/Source/SPWindowControllerDelegate.m
+++ b/Source/SPWindowControllerDelegate.m
@@ -68,9 +68,9 @@
}
// Remove global session data if the last window of a session will be closed
- if ([[NSApp delegate] sessionURL] && [[[NSApp delegate] orderedDatabaseConnectionWindows] count] == 1) {
- [[NSApp delegate] setSessionURL:nil];
- [[NSApp delegate] setSpfSessionDocData:nil];
+ if ([SPAppDelegate sessionURL] && [[SPAppDelegate orderedDatabaseConnectionWindows] count] == 1) {
+ [SPAppDelegate setSessionURL:nil];
+ [SPAppDelegate setSpfSessionDocData:nil];
}
return YES;
diff --git a/Source/SPWindowManagement.m b/Source/SPWindowManagement.m
index 000bbe3f..c30a2826 100644
--- a/Source/SPWindowManagement.m
+++ b/Source/SPWindowManagement.m
@@ -116,18 +116,18 @@
[[[self frontDocumentWindow] windowController] addNewConnection:self];
// Get the state of the previously-frontmost document
- NSDictionary *allStateDetails = [NSDictionary dictionaryWithObjectsAndKeys:
- [NSNumber numberWithBool:YES], @"connection",
- [NSNumber numberWithBool:YES], @"history",
- [NSNumber numberWithBool:YES], @"session",
- [NSNumber numberWithBool:YES], @"query",
- [NSNumber numberWithBool:YES], @"password",
- nil];
+ NSDictionary *allStateDetails = @{
+ @"connection" : @YES,
+ @"history" : @YES,
+ @"session" : @YES,
+ @"query" : @YES,
+ @"password" : @YES
+ };
NSMutableDictionary *frontState = [NSMutableDictionary dictionaryWithDictionary:[theFrontDocument stateIncludingDetails:allStateDetails]];
// Ensure it's set to autoconnect
- [frontState setObject:[NSNumber numberWithBool:YES] forKey:@"auto_connect"];
+ [frontState setObject:@YES forKey:@"auto_connect"];
// Set the connection on the new tab
[[self frontDocument] setState:frontState];
diff --git a/Source/SPXMLExporter.m b/Source/SPXMLExporter.m
index 5aefd80b..dd4e9223 100644
--- a/Source/SPXMLExporter.m
+++ b/Source/SPXMLExporter.m
@@ -358,9 +358,9 @@
- (void)dealloc
{
- if (xmlDataArray) [xmlDataArray release], xmlDataArray = nil;
- if (xmlTableName) [xmlTableName release], xmlTableName = nil;
- if (xmlNULLString) [xmlNULLString release], xmlNULLString = nil;
+ if (xmlDataArray) SPClear(xmlDataArray);
+ if (xmlTableName) SPClear(xmlTableName);
+ if (xmlNULLString) SPClear(xmlNULLString);
[super dealloc];
}
diff --git a/Source/Sequel-Pro.pch b/Source/Sequel-Pro.pch
index 080e20ec..f3b2fd16 100644
--- a/Source/Sequel-Pro.pch
+++ b/Source/Sequel-Pro.pch
@@ -25,7 +25,7 @@
// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
// OTHER DEALINGS IN THE SOFTWARE.
//
-// More info at <http://code.google.com/p/sequel-pro/>
+// More info at <https://github.com/sequelpro/sequelpro>
#ifdef __OBJC__
#import <Cocoa/Cocoa.h>
diff --git a/Source/xibLocalizationPostprocessor.m b/Source/xibLocalizationPostprocessor.m
index ad2e152d..1806d6b2 100644
--- a/Source/xibLocalizationPostprocessor.m
+++ b/Source/xibLocalizationPostprocessor.m
@@ -5,20 +5,37 @@
#import <Cocoa/Cocoa.h>
+NSDictionary *load_kv_pairs(NSString *input);
int main(int argc, const char *argv[])
{
NSAutoreleasePool *autoreleasePool = [[NSAutoreleasePool alloc] init]; {
- if (argc != 3) {
- fprintf(stderr, "Usage: %s inputfile outputfile\n", argv[0]);
+ if (argc != 3 && argc != 4) {
+ fprintf(stderr, "Usage: xibLocalizationPostprocessor inputfile outputfile (Replace IB keys with their English string value)\n");
+ fprintf(stderr, " xibLocalizationPostprocessor transfile inputfile outputfile (Reverse mode: Change English keys back to IB keys in translation)\n");
exit (-1);
}
+
+ NSUInteger inputFileIndex = 1;
+ NSDictionary *translatedStrings = nil;
+ if(argc == 4) {
+ NSError *error = nil;
+ NSStringEncoding usedEncoding;
+ NSString *translatedFile = [NSString stringWithContentsOfFile:[NSString stringWithUTF8String:argv[1]] usedEncoding:&usedEncoding error:&error];
+ if (error) {
+ fprintf(stderr, "Error reading transfile %s: %s\n", argv[1], error.localizedDescription.UTF8String);
+ exit (-1);
+ }
+ translatedStrings = load_kv_pairs(translatedFile);
+
+ inputFileIndex++;
+ }
NSError *error = nil;
NSStringEncoding usedEncoding;
- NSString *rawXIBStrings = [NSString stringWithContentsOfFile:[NSString stringWithUTF8String:argv[1]] usedEncoding:&usedEncoding error:&error];
+ NSString *rawXIBStrings = [NSString stringWithContentsOfFile:[NSString stringWithUTF8String:argv[inputFileIndex]] usedEncoding:&usedEncoding error:&error];
if (error) {
- fprintf(stderr, "Error reading %s: %s\n", argv[1], error.localizedDescription.UTF8String);
+ fprintf(stderr, "Error reading inputfile %s: %s\n", argv[inputFileIndex], error.localizedDescription.UTF8String);
exit (-1);
}
@@ -44,9 +61,20 @@ int main(int argc, const char *argv[])
[outputStrings appendString:lastComment];
[outputStrings appendString:@"\n"];
}
- NSString *stringNeedingLocalization = [line substringFromIndex:NSMaxRange(quoteEqualsQuoteRange)]; // chop off leading: "blah" = "
+ NSString *stringNeedingLocalization = [line substringFromIndex:NSMaxRange(quoteEqualsQuoteRange)]; // chop off leading: "blah" = "
stringNeedingLocalization = [stringNeedingLocalization substringToIndex:stringNeedingLocalization.length - 2]; // chop off trailing: ";
- [outputStrings appendFormat:@"\"%@\" = \"%@\";\n\n", stringNeedingLocalization, stringNeedingLocalization];
+ if(translatedStrings) {
+ NSString *translation = [translatedStrings objectForKey:stringNeedingLocalization];
+ if(!translation) {
+ fprintf(stderr, "Warning: key \"%s\" not found in transfile.\n",[stringNeedingLocalization UTF8String]);
+ translation = stringNeedingLocalization; //fallback to untranslated
+ }
+ [outputStrings appendFormat:@"%@\" = \"%@\";\n\n", [line substringToIndex:quoteEqualsQuoteRange.location], translation];
+ }
+ else {
+ [outputStrings appendFormat:@"\"%@\" = \"%@\";\n\n", stringNeedingLocalization, stringNeedingLocalization];
+ }
+
continue;
}
}
@@ -54,9 +82,41 @@ int main(int argc, const char *argv[])
NSLog(@"Warning: skipped garbage input line %lu, contents: \"%@\"", (unsigned long)lineCount, line);
}
- if (outputStrings.length && ![outputStrings writeToFile:[NSString stringWithUTF8String:argv[2]] atomically:NO encoding:usedEncoding error:&error]) {
- fprintf(stderr, "Error writing %s: %s\n", argv[2], error.localizedDescription.UTF8String);
+ if (outputStrings.length && ![outputStrings writeToFile:[NSString stringWithUTF8String:argv[inputFileIndex+1]] atomically:NO encoding:usedEncoding error:&error]) {
+ fprintf(stderr, "Error writing %s: %s\n", argv[inputFileIndex+1], error.localizedDescription.UTF8String);
exit (-1);
}
} [autoreleasePool release];
}
+
+NSDictionary *load_kv_pairs(NSString *input)
+{
+ NSDictionary *result = [NSMutableDictionary dictionary];
+
+ NSUInteger lineCount = 0;
+ //don't try [NSString enumerateLines...] here. It supports some obscure Unicode line breaks!
+ for (NSString *line in [input componentsSeparatedByString:@"\n"]) {
+ lineCount++;
+
+ if (line.length == 0 || [line hasPrefix:@"/*"]) {
+ continue;
+ }
+
+ if ([line hasPrefix:@"\""] && [line hasSuffix:@"\";"]) { // eg: "136.title" = "Quit Library";
+
+ NSRange quoteEqualsQuoteRange = [line rangeOfString:@"\" = \""];
+ if (quoteEqualsQuoteRange.location != NSNotFound && quoteEqualsQuoteRange.length && NSMaxRange(quoteEqualsQuoteRange) < line.length - 1) {
+ NSRange keyRange = NSMakeRange(1,quoteEqualsQuoteRange.location - 1); //the first " is always at pos. 0 (we checked that above)
+ NSString *key = [line substringWithRange:keyRange];
+ NSString *value = [line substringFromIndex:NSMaxRange(quoteEqualsQuoteRange)]; // chop off leading: "blah" = "
+ value = [value substringToIndex:[value length] - 2]; // chop off trailing: ";
+ [result setValue:value forKey:key];
+ continue;
+ }
+ }
+
+ NSLog(@"Warning: skipped garbage trans line %lu, contents: \"%@\"", (unsigned long)lineCount, line);
+ }
+
+ return result;
+}
diff --git a/UnitTests/SPDatabaseActionTest.m b/UnitTests/SPDatabaseActionTest.m
new file mode 100644
index 00000000..f7704df5
--- /dev/null
+++ b/UnitTests/SPDatabaseActionTest.m
@@ -0,0 +1,92 @@
+//
+// SPDatabaseActionTest.m
+// sequel-pro
+//
+// Created by Max Lohrmann on 12.03.15.
+// Copyright (c) 2015 Max Lohrmann. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <https://github.com/sequelpro/sequelpro>
+
+#import <OCMock/OCMock.h>
+#import <SenTestingKit/SenTestingKit.h>
+
+
+#import "SPDatabaseAction.h"
+#import <SPMySQL/SPMySQL.h>
+
+
+@interface SPDatabaseActionTest : SenTestCase
+
+- (void)testCreateDatabase_01_emptyName;
+- (void)testCreateDatabase_02_allParams;
+- (void)testCreateDatabase_03_nameOnly;
+
+@end
+
+@implementation SPDatabaseActionTest
+
+- (void)testCreateDatabase_01_emptyName
+{
+ id mockConnection = OCMStrictClassMock([SPMySQLConnection class]);
+ //OCMStrictClassMock would fail on any call, which is desired here
+
+ SPDatabaseAction *createDb = [[[SPDatabaseAction alloc] init] autorelease];
+ [createDb setConnection:mockConnection];
+ STAssertFalse([createDb createDatabase:@"" withEncoding:nil collation:nil],@"create database = NO with empty db name");
+
+ OCMVerifyAll(mockConnection);
+}
+
+
+- (void)testCreateDatabase_02_allParams
+{
+ id mockConnection = OCMStrictClassMock([SPMySQLConnection class]);
+
+ OCMExpect([mockConnection queryString:@"CREATE DATABASE `target_name` DEFAULT CHARACTER SET = `utf8` DEFAULT COLLATE = `utf8_bin_ci`"]);
+ OCMStub([mockConnection queryErrored]).andReturn(NO);
+
+ SPDatabaseAction *createDb = [[[SPDatabaseAction alloc] init] autorelease];
+ [createDb setConnection:mockConnection];
+
+ STAssertTrue([createDb createDatabase:@"target_name" withEncoding:@"utf8" collation:@"utf8_bin_ci"], @"create database return");
+
+ OCMVerifyAll(mockConnection);
+}
+
+- (void)testCreateDatabase_03_nameOnly
+{
+ id mockConnection = OCMStrictClassMock([SPMySQLConnection class]);
+
+ OCMExpect([mockConnection queryString:@"CREATE DATABASE `target_name`"]);
+ OCMStub([mockConnection queryErrored]).andReturn(NO);
+
+ SPDatabaseAction *createDb = [[[SPDatabaseAction alloc] init] autorelease];
+ [createDb setConnection:mockConnection];
+
+ STAssertTrue([createDb createDatabase:@"target_name" withEncoding:@"" collation:nil], @"create database return");
+
+ OCMVerifyAll(mockConnection);
+}
+
+@end
diff --git a/UnitTests/SPDatabaseCopyTest.m b/UnitTests/SPDatabaseCopyTest.m
index 2ab44bea..036a1869 100644
--- a/UnitTests/SPDatabaseCopyTest.m
+++ b/UnitTests/SPDatabaseCopyTest.m
@@ -28,14 +28,23 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
+#define USE_APPLICATION_UNIT_TEST 1
+
#import <OCMock/OCMock.h>
+#import <SenTestingKit/SenTestingKit.h>
#import "SPAlertSheets.h"
-#import "SPDatabaseCopyTest.h"
#import "SPDatabaseCopy.h"
#import "SPTableCopy.h"
#import "SPLogger.h"
+@interface SPDatabaseCopyTest : SenTestCase
+
+- (void)testCopyDatabase;
+- (void)testCreateDatabase;
+
+@end
+
@implementation SPDatabaseCopyTest
- (SPDatabaseCopy *)getDatabaseCopyFixture
diff --git a/UnitTests/SPDatabaseRenameTest.h b/UnitTests/SPDatabaseRenameTest.h
deleted file mode 100644
index 138b0e11..00000000
--- a/UnitTests/SPDatabaseRenameTest.h
+++ /dev/null
@@ -1,40 +0,0 @@
-//
-// SPDatabaseRenameTest.h
-// sequel-pro
-//
-// Created by David Rekowski.
-// Copyright (c) 2010 David Rekowski. All rights reserved.
-//
-// Permission is hereby granted, free of charge, to any person
-// obtaining a copy of this software and associated documentation
-// files (the "Software"), to deal in the Software without
-// restriction, including without limitation the rights to use,
-// copy, modify, merge, publish, distribute, sublicense, and/or sell
-// copies of the Software, and to permit persons to whom the
-// Software is furnished to do so, subject to the following
-// conditions:
-//
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
-// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-// OTHER DEALINGS IN THE SOFTWARE.
-//
-// More info at <https://github.com/sequelpro/sequelpro>
-
-#define USE_APPLICATION_UNIT_TEST 1
-
-#import <SenTestingKit/SenTestingKit.h>
-
-@interface SPDatabaseRenameTest : SenTestCase
-
-- (void)testRenameDatabase;
-- (void)testCreateDatabase;
-
-@end
diff --git a/UnitTests/SPDatabaseRenameTest.m b/UnitTests/SPDatabaseRenameTest.m
index ce826e13..0c29ad0a 100644
--- a/UnitTests/SPDatabaseRenameTest.m
+++ b/UnitTests/SPDatabaseRenameTest.m
@@ -28,12 +28,21 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
-#import "SPDatabaseRenameTest.h"
+#define USE_APPLICATION_UNIT_TEST 1
+
#import "SPDatabaseRename.h"
#import "SPTableCopy.h"
#import "SPLogger.h"
#import <OCMock/OCMock.h>
+#import <SenTestingKit/SenTestingKit.h>
+
+@interface SPDatabaseRenameTest : SenTestCase
+
+- (void)testRenameDatabase;
+- (void)testCreateDatabase;
+
+@end
@implementation SPDatabaseRenameTest
diff --git a/UnitTests/SPMenuAdditionsTests.m b/UnitTests/SPMenuAdditionsTests.m
index e33920e7..83647e6f 100644
--- a/UnitTests/SPMenuAdditionsTests.m
+++ b/UnitTests/SPMenuAdditionsTests.m
@@ -28,9 +28,24 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
-#import "SPMenuAdditionsTests.h"
#import "SPMenuAdditions.h"
+#import <SenTestingKit/SenTestingKit.h>
+
+/**
+ * @class SPMenuAdditionsTests SPMenuAdditionsTests.h
+ *
+ * @author Stuart Connolly http://stuconnolly.com/
+ *
+ * SPMenuAdditionsTests tests class.
+ */
+@interface SPMenuAdditionsTests : SenTestCase
+{
+ NSMenu *menu;
+}
+
+@end
+
static NSString *SPTestMenuItemTitle = @"Menu Item";
@implementation SPMenuAdditionsTests
diff --git a/UnitTests/SPMutableArrayAdditionsTests.m b/UnitTests/SPMutableArrayAdditionsTests.m
index a2890d8f..e09f00a4 100644
--- a/UnitTests/SPMutableArrayAdditionsTests.m
+++ b/UnitTests/SPMutableArrayAdditionsTests.m
@@ -28,9 +28,21 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
-#import "SPMutableArrayAdditionsTests.h"
#import "SPMutableArrayAdditions.h"
+#import <SenTestingKit/SenTestingKit.h>
+
+/**
+ * @class SPMutableArrayAdditionsTest SPMutableArrayAdditionsTest.h
+ *
+ * @author Stuart Connolly http://stuconnolly.com/
+ *
+ * SPMutableArrayAdditions tests class.
+ */
+@interface SPMutableArrayAdditionsTests : SenTestCase
+
+@end
+
@implementation SPMutableArrayAdditionsTests
/**
diff --git a/UnitTests/SPParserUtilsTest.m b/UnitTests/SPParserUtilsTest.m
new file mode 100644
index 00000000..994b166a
--- /dev/null
+++ b/UnitTests/SPParserUtilsTest.m
@@ -0,0 +1,87 @@
+//
+// SPParserUtilsTest.m
+// sequel-pro
+//
+// Created by Max Lohrmann on 27.01.15.
+// Copyright (c) 2015 Max Lohrmann. All rights reserved.
+//
+// Permission is hereby granted, free of charge, to any person
+// obtaining a copy of this software and associated documentation
+// files (the "Software"), to deal in the Software without
+// restriction, including without limitation the rights to use,
+// copy, modify, merge, publish, distribute, sublicense, and/or sell
+// copies of the Software, and to permit persons to whom the
+// Software is furnished to do so, subject to the following
+// conditions:
+//
+// The above copyright notice and this permission notice shall be
+// included in all copies or substantial portions of the Software.
+//
+// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+// OTHER DEALINGS IN THE SOFTWARE.
+//
+// More info at <https://github.com/sequelpro/sequelpro>
+
+#define USE_APPLICATION_UNIT_TEST 1
+
+#import <Cocoa/Cocoa.h>
+#import <SenTestingKit/SenTestingKit.h>
+
+#include "SPParserUtils.h"
+
+@interface SPParserUtilsTest : SenTestCase
+
+- (void)testUtf8strlen;
+
+@end
+
+@implementation SPParserUtilsTest
+
+- (void)testUtf8strlen {
+ // NOTE!!: Those test do not verify that the utf8strlen() function works according to spec,
+ // but whether it produces the same results as NSString for the same input.
+
+ const char *empty = "";
+ NSString *emptyString = [NSString stringWithCString:empty encoding:NSUTF8StringEncoding];
+ STAssertEquals(utf8strlen(empty),[emptyString length], @"empty string");
+
+ // This is just a little safeguard.
+ // If any of those conditions fail, all of the following assumptions are moot.
+ const char *charSeq = "\xF0\x9F\x8D\x8F"; //🍏
+ NSString *charString = [NSString stringWithCString:charSeq encoding:NSUTF8StringEncoding];
+ STAssertEquals(strlen(charSeq), (size_t)4, @"assumption about storage for binary C string");
+ STAssertEquals([charString length], (NSUInteger)2, @"assumption about NSString internal storage of string");
+
+ const char *singleByteSeq = "Hello World!";
+ NSString *singleByteString = [NSString stringWithCString:singleByteSeq encoding:NSUTF8StringEncoding];
+ STAssertEquals(utf8strlen(singleByteSeq), [singleByteString length], @"ASCII UTF-8 subset");
+
+ const char *twoByteSeq = "H\xC3\xA4ll\xC3\xB6 W\xC3\x9Crld\xC3\x9F!"; // Hällö WÜrldß!
+ NSString *twoByteString = [NSString stringWithCString:twoByteSeq encoding:NSUTF8StringEncoding];
+ STAssertEquals(utf8strlen(twoByteSeq), [twoByteString length], @"String containing two-byte utf8 characters");
+
+ const char *threeByteSeq = "\xE3\x81\x93.\xE3\x82\x93.\xE3\x81\xAB.\xE3\x81\xA1.\xE3\x81\xAF"; // こ.ん.に.ち.は
+ NSString *threeByteString = [NSString stringWithCString:threeByteSeq encoding:NSUTF8StringEncoding];
+ STAssertEquals(utf8strlen(threeByteSeq), [threeByteString length], @"String containing three-byte utf8 characters");
+
+ const char *fourByteSeq = "\xF0\x9F\x8D\x8F\xF0\x9F\x8D\x8B\xF0\x9F\x8D\x92"; //🍏🍋🍒
+ NSString *fourByteString = [NSString stringWithCString:fourByteSeq encoding:NSUTF8StringEncoding];
+ STAssertEquals(utf8strlen(fourByteSeq), [fourByteString length], @"String containing only 4-byte utf8 characters (outside BMP)");
+
+ const char *mixedSeq = "\xE3\x81\x82\xE3\x82\x81\xE3\x80\x90\xE9\xA3\xB4\xE3\x80\x91\xF0\x9F\x8D\xAD \xE2\x89\x88 S\xC3\xBC\xC3\x9Figkeit"; // あめ【飴】🍭 ≈ Süßigkeit
+ NSString *mixedString = [NSString stringWithCString:mixedSeq encoding:NSUTF8StringEncoding];
+ STAssertEquals(utf8strlen(mixedSeq), [mixedString length], @"utf8 characters with all 4 lengths mixed together.");
+
+ //composed vs. decomposed chars
+ const char *decompSeq = "\xC3\xA4 - a\xCC\x88"; // ä - ä
+ NSString *decompString = [NSString stringWithCString:decompSeq encoding:NSUTF8StringEncoding];
+ STAssertEquals(utf8strlen(decompSeq), [decompString length], @"\"LATIN SMALL LETTER A WITH DIAERESIS\" vs. \"LATIN SMALL LETTER A\" + \"COMBINING DIAERESIS\"");
+}
+
+@end
diff --git a/UnitTests/SPStringAdditionsTests.m b/UnitTests/SPStringAdditionsTests.m
index af22df77..b0528ec7 100644
--- a/UnitTests/SPStringAdditionsTests.m
+++ b/UnitTests/SPStringAdditionsTests.m
@@ -28,10 +28,20 @@
//
// More info at <https://github.com/sequelpro/sequelpro>
-#import "SPStringAdditionsTests.h"
#import "SPStringAdditions.h"
#import "RegexKitLite.h"
+#import <SenTestingKit/SenTestingKit.h>
+
+@interface SPStringAdditionsTests : SenTestCase
+
+- (void)testStringByRemovingCharactersInSet;
+- (void)testStringWithNewUUID;
+- (void)testCreateViewSyntaxPrettifier;
+- (void)testNonConsecutivelySearchStringMatchingRanges;
+
+@end
+
@implementation SPStringAdditionsTests
/**
@@ -86,4 +96,73 @@
STAssertEqualObjects([actualSyntax description], [expectedSyntax description], @"Actual view syntax '%@' does not equal expected syntax '%@'", actualSyntax, expectedSyntax);
}
+- (void)testNonConsecutivelySearchStringMatchingRanges
+{
+ //basic tests
+ {
+ NSArray *matches = nil;
+ STAssertTrue([@"" nonConsecutivelySearchString:@"" matchingRanges:&matches], @"Equality of empty strings");
+ STAssertTrue(([matches count] == 1) && NSEqualRanges(NSMakeRange(0, 0), [(NSValue *)[matches objectAtIndex:0] rangeValue]), @"Returned matches in empty string");
+ }
+
+ {
+ NSArray *matches = (void *)0xdeadbeef;
+ STAssertFalse([@"" nonConsecutivelySearchString:@"R" matchingRanges:&matches], @"Inequality with empty left side");
+ STAssertTrue((matches == (void *)0xdeadbeef), @"out variable not touched by mismatch");
+ }
+
+ STAssertFalse([@"L" nonConsecutivelySearchString:@"" matchingRanges:NULL], @"Inequality with empty right side");
+
+ {
+ NSArray *matches = nil;
+ STAssertTrue([@"left" nonConsecutivelySearchString:@"le" matchingRanges:&matches], @"Anchored match left");
+ STAssertTrue(([matches count] == 1) && NSEqualRanges(NSMakeRange(0, 2), [(NSValue *)[matches objectAtIndex:0] rangeValue]), @"Returned matches in anchored left match");
+ }
+
+ {
+ NSArray *matches = nil;
+ STAssertTrue([@"right" nonConsecutivelySearchString:@"ht" matchingRanges:&matches], @"Anchored match right");
+ STAssertTrue(([matches count] == 1) && NSEqualRanges(NSMakeRange(3, 2), [(NSValue *)[matches objectAtIndex:0] rangeValue]), @"Returned matches in anchroed right match");
+ }
+
+ STAssertFalse([@"ht" nonConsecutivelySearchString:@"right" matchingRanges:NULL], @"Left and Right are not commutative");
+
+ //real tests
+ {
+ NSArray *matches = nil;
+ STAssertTrue([@"... is not secure anymore!" nonConsecutivelySearchString:@"NSA" matchingRanges:&matches], @"Non-consecutive match, ignoring case");
+ STAssertTrue(([matches count] == 3) &&
+ (NSEqualRanges(NSMakeRange(7, 1), [(NSValue *)[matches objectAtIndex:0] rangeValue])) &&
+ (NSEqualRanges(NSMakeRange(11, 1), [(NSValue *)[matches objectAtIndex:1] rangeValue])) &&
+ (NSEqualRanges(NSMakeRange(18, 1), [(NSValue *)[matches objectAtIndex:2] rangeValue])), @"Returned matches in non-consecutive string");
+ }
+
+ STAssertFalse([@"Deoxyribonucleic Acid" nonConsecutivelySearchString:@"DNS" matchingRanges:NULL], @"Non-consecutive mismatch");
+
+ {
+ NSArray *matches = nil;
+ STAssertTrue([@"Turn left, then right at the corner" nonConsecutivelySearchString:@"left right" matchingRanges:&matches], @"Partly consecutive match");
+ STAssertTrue(([matches count] == 3) &&
+ (NSEqualRanges(NSMakeRange(5, 4), [(NSValue *)[matches objectAtIndex:0] rangeValue])) &&
+ (NSEqualRanges(NSMakeRange(10, 1), [(NSValue *)[matches objectAtIndex:1] rangeValue])) &&
+ (NSEqualRanges(NSMakeRange(16, 5), [(NSValue *)[matches objectAtIndex:2] rangeValue])), @"Returned matches in partly-consecutive string");
+ }
+
+ //advanced tests
+
+ // LATIN CAPITAL LETTER A == LATIN SMALL LETTER A
+ // LATIN SMALL LETTER O WITH DIAERESIS == LATIN SMALL LETTER O
+ // FULLWIDTH LATIN SMALL LETTER b == LATIN SMALL LETTER B
+ STAssertTrue([@"A:\xC3\xB6:\xEF\xBD\x82" nonConsecutivelySearchString:@"aob" matchingRanges:NULL], @"Fuzzy matching of defined characters");
+
+ //all bytes on the right are contained on the left, but on a character level "ä" is not contained in "Hütte Ф"
+ STAssertFalse([@"H\xC3\xBCtte \xD0\xA4" nonConsecutivelySearchString:@"\xC3\xA4" matchingRanges:NULL], @"Mismatch of composed characters with same prefix");
+
+ // ":😥:𠘄:" vs "😄" (according to wikipedia "𠘄" is the arachic variant of "印")
+ // TECHNICALLY THIS SHOULD NOT MATCH!
+ // However Apple doesn't correctly handle characters in the 4-Byte UTF range, so let's use this test to check for changes in Apples behaviour :)
+ STAssertTrue([@":\xF0\x9F\x98\x84:\xF0\xA0\x98\x84:" nonConsecutivelySearchString:@"\xF0\x9F\x98\x84" matchingRanges:NULL], @"Mismatch of composed characters (4-byte) with same prefix");
+
+}
+
@end
diff --git a/UnitTests/SPTableCopyTest.m b/UnitTests/SPTableCopyTest.m
index 099066bc..76a2fe45 100644
--- a/UnitTests/SPTableCopyTest.m
+++ b/UnitTests/SPTableCopyTest.m
@@ -29,10 +29,18 @@
// More info at <https://github.com/sequelpro/sequelpro>
#import "SPTableCopy.h"
-#import "SPTableCopyTest.h"
+#import <SPMySQL/SPMySQL.h>
+#import <SenTestingKit/SenTestingKit.h>
#import <OCMock/OCMock.h>
-#import <SPMySQL/SPMySQL.h>
+
+#define USE_APPLICATION_UNIT_TEST 1
+
+@interface SPTableCopyTest : SenTestCase
+
+- (void)testCopyTableFromToWithData;
+
+@end
@implementation SPTableCopyTest
diff --git a/UnitTests/SPTableFilterParserTest.m b/UnitTests/SPTableFilterParserTest.m
new file mode 100644
index 00000000..d5f46969
--- /dev/null
+++ b/UnitTests/SPTableFilterParserTest.m
@@ -0,0 +1,57 @@
+//
+// SPTableFilterParserTest.m
+// sequel-pro
+//
+// Created by Max Lohrmann on 23.04.15.
+//
+//
+
+#import <Foundation/Foundation.h>
+#import "SPTableFilterParser.h"
+
+#define USE_APPLICATION_UNIT_TEST 1
+
+#import <Cocoa/Cocoa.h>
+#import <SenTestingKit/SenTestingKit.h>
+
+@interface SPTableFilterParserTest : SenTestCase
+
+- (void)testFilterString;
+
+@end
+
+@implementation SPTableFilterParserTest
+
+- (void)testFilterString {
+ //simple zero argument case
+ {
+ SPTableFilterParser *p = [[[SPTableFilterParser alloc] initWithFilterClause:@" constant $BINARY string" numberOfArguments:0] autorelease];
+ [p setCurrentField:@"FLD"];
+
+ // binary matches as "$BINARY ", eating the one additional whitespace
+ STAssertEqualObjects([p filterString],@"`FLD` constant string", @"Constant replacement");
+ }
+ //simple one argument case with binary
+ {
+ SPTableFilterParser *p = [[[SPTableFilterParser alloc] initWithFilterClause:@"= FOO($BINARY ${})" numberOfArguments:1] autorelease];
+ [p setCurrentField:@"FLD2"];
+ [p setCaseSensitive:YES];
+ [p setArgument:@"arg1"];
+
+ STAssertEqualObjects([p filterString], @"`FLD2` = FOO(BINARY arg1)", @"One Argument, $BINARY variable");
+ }
+ //simple two argument case with explicit current field
+ {
+ SPTableFilterParser *p = [[[SPTableFilterParser alloc] initWithFilterClause:@"MIN($CURRENT_FIELD,${}) = ${}" numberOfArguments:2] autorelease];
+ [p setCurrentField:@"FLD3"];
+ [p setSuppressLeadingTablePlaceholder:YES];
+ [p setFirstBetweenArgument:@"LA"];
+ [p setSecondBetweenArgument:@"RA"];
+
+ STAssertEqualObjects([p filterString], @"MIN(`FLD3`,LA) = RA", @"Two Arguments, $CURRENT_FIELD variable");
+ }
+
+}
+
+
+@end
diff --git a/readme.md b/readme.md
index 6f1d4ded..25c4206c 100644
--- a/readme.md
+++ b/readme.md
@@ -20,6 +20,6 @@ Build Instructions
License
=======
-Copyright (c) 2002-2014 Sequel Pro & CocoaMySQL Teams. All rights reserved.
+Copyright (c) 2002-2015 Sequel Pro & CocoaMySQL Teams. All rights reserved.
Sequel Pro is free and open source software, licensed under [MIT](http://opensource.org/licenses/MIT). See [LICENSE](https://github.com/sequelpro/sequelpro/blob/master/LICENSE) for full details.
diff --git a/sequel-pro.xcodeproj/project.pbxproj b/sequel-pro.xcodeproj/project.pbxproj
index 3ba583de..af6723bf 100644
--- a/sequel-pro.xcodeproj/project.pbxproj
+++ b/sequel-pro.xcodeproj/project.pbxproj
@@ -179,10 +179,28 @@
4DECC48F0EC2B436008D359E /* Sparkle.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 4DECC3320EC2A170008D359E /* Sparkle.framework */; };
4DECC4910EC2B436008D359E /* Growl.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 4DECC3340EC2A170008D359E /* Growl.framework */; };
501B1D181728A3DA0017C92E /* SPCharsetCollationHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 501B1D171728A3DA0017C92E /* SPCharsetCollationHelper.m */; };
- 50A9F8AD19EAD4860053E571 /* GotoDatabaseDialog.xib in Resources */ = {isa = PBXBuildFile; fileRef = 50A9F8AC19EAD4860053E571 /* GotoDatabaseDialog.xib */; };
+ 503B02CA1AE82C5E0060CAB1 /* SPTableFilterParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 503B02C91AE82C5E0060CAB1 /* SPTableFilterParser.m */; };
+ 503B02CF1AE95C2C0060CAB1 /* SPTableFilterParserTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 503B02CE1AE95C2C0060CAB1 /* SPTableFilterParserTest.m */; };
+ 503B02D11AE95DD40060CAB1 /* SPTableFilterParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 503B02C91AE82C5E0060CAB1 /* SPTableFilterParser.m */; };
+ 503B02D21AE95E010060CAB1 /* SPConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 173284E91088FEDE0062E892 /* SPConstants.m */; };
+ 503CDBB21ACDC204004F8A2F /* Quartz.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 503CDBB11ACDC204004F8A2F /* Quartz.framework */; };
+ 506CE9311A311C6C0039F736 /* SPTableContentFilterController.m in Sources */ = {isa = PBXBuildFile; fileRef = 506CE9301A311C6C0039F736 /* SPTableContentFilterController.m */; };
50A9F8B119EAD4B90053E571 /* SPGotoDatabaseController.m in Sources */ = {isa = PBXBuildFile; fileRef = 50A9F8B019EAD4B90053E571 /* SPGotoDatabaseController.m */; };
+ 50D3C3491A75B8A800B5429C /* GotoDatabaseDialog.xib in Resources */ = {isa = PBXBuildFile; fileRef = 50D3C34B1A75B8A800B5429C /* GotoDatabaseDialog.xib */; };
+ 50D3C3521A77135F00B5429C /* SPParserUtils.c in Sources */ = {isa = PBXBuildFile; fileRef = 50D3C3501A77135F00B5429C /* SPParserUtils.c */; };
+ 50D3C3541A7715E600B5429C /* SPParserUtils.c in Sources */ = {isa = PBXBuildFile; fileRef = 50D3C3501A77135F00B5429C /* SPParserUtils.c */; };
+ 50D3C35C1A771C4C00B5429C /* SPParserUtilsTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 50D3C35B1A771C4C00B5429C /* SPParserUtilsTest.m */; };
+ 50D3C35D1A77217800B5429C /* SPParserUtils.c in Sources */ = {isa = PBXBuildFile; fileRef = 50D3C3501A77135F00B5429C /* SPParserUtils.c */; };
50E217B318174246009D3580 /* SPColorSelectorView.m in Sources */ = {isa = PBXBuildFile; fileRef = 50E217B218174246009D3580 /* SPColorSelectorView.m */; };
50E217B618174280009D3580 /* SPFavoriteColorSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = 50E217B518174280009D3580 /* SPFavoriteColorSupport.m */; };
+ 50EA92641AB23EAD008D3C4F /* SPDatabaseCopy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1198F5B21174EDD500670590 /* SPDatabaseCopy.m */; };
+ 50EA92651AB23EC8008D3C4F /* SPDatabaseAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 11B55BFD1189E3B2009EF465 /* SPDatabaseAction.m */; };
+ 50EA92661AB23ED3008D3C4F /* SPMySQL.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 584D876815140D3500F24774 /* SPMySQL.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
+ 50EA92671AB23EE1008D3C4F /* SPMySQL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 584D876815140D3500F24774 /* SPMySQL.framework */; };
+ 50EA92681AB23EFC008D3C4F /* SPTableCopy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1141A388117BBFF200126A28 /* SPTableCopy.m */; };
+ 50EA926A1AB246B8008D3C4F /* SPDatabaseActionTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 50EA92691AB246B8008D3C4F /* SPDatabaseActionTest.m */; };
+ 50EAB5B81A8FBB08008F627A /* SPOSInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 50EAB5B71A8FBB08008F627A /* SPOSInfo.m */; };
+ 50F530521ABCF66B002F2C1A /* reset.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 50F530511ABCF66B002F2C1A /* reset.pdf */; };
5806B76411A991EC00813A88 /* SPDocumentController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5806B76311A991EC00813A88 /* SPDocumentController.m */; };
580E8DB711EA774B000D8427 /* SequelProTabClose_Pressed.png in Resources */ = {isa = PBXBuildFile; fileRef = 580E8DAB11EA772C000D8427 /* SequelProTabClose_Pressed.png */; };
580E8DB811EA774B000D8427 /* SequelProTabClose_Rollover.png in Resources */ = {isa = PBXBuildFile; fileRef = 580E8DAC11EA772C000D8427 /* SequelProTabClose_Rollover.png */; };
@@ -279,7 +297,6 @@
588B2CCA0FE5641E00EC5FC0 /* ssh-disconnected.png in Resources */ = {isa = PBXBuildFile; fileRef = 588B2CC70FE5641E00EC5FC0 /* ssh-disconnected.png */; };
589235321020C1230011DE00 /* SPHistoryController.m in Sources */ = {isa = PBXBuildFile; fileRef = 589235301020C1230011DE00 /* SPHistoryController.m */; };
589582151154F8F400EDCC28 /* SPMainThreadTrampoline.m in Sources */ = {isa = PBXBuildFile; fileRef = 589582141154F8F400EDCC28 /* SPMainThreadTrampoline.m */; };
- 589ED05B11E0ACD100C1DCEA /* DMLocalizedNib.m in Sources */ = {isa = PBXBuildFile; fileRef = 589ED05A11E0ACD100C1DCEA /* DMLocalizedNib.m */; };
58A137CD123ED5E6000B1B75 /* titlebarlock.png in Resources */ = {isa = PBXBuildFile; fileRef = 58A137CC123ED5E6000B1B75 /* titlebarlock.png */; };
58A8A72711A0149100B95749 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 58A8A72611A0149100B95749 /* MainWindow.xib */; };
58A8A79111A036C000B95749 /* SPWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 58A8A79011A036C000B95749 /* SPWindowController.m */; };
@@ -318,7 +335,6 @@
58B907CA11BDA541000826E5 /* PSMTabBar.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 58B906E611BD989A000826E5 /* PSMTabBar.framework */; };
58B907FB11BDA5A9000826E5 /* PSMTabBar.framework in Copy Frameworks */ = {isa = PBXBuildFile; fileRef = 58B906E611BD989A000826E5 /* PSMTabBar.framework */; };
58B9097B11C3A4A2000826E5 /* xibLocalizationPostprocessor.m in Sources */ = {isa = PBXBuildFile; fileRef = 58B9095B11C3A3EC000826E5 /* xibLocalizationPostprocessor.m */; };
- 58B909A511C3B919000826E5 /* DMLocalizedNibBundle.m in Sources */ = {isa = PBXBuildFile; fileRef = 58B909A411C3B919000826E5 /* DMLocalizedNibBundle.m */; };
58C3506510B9A56C00D37E14 /* button_left.png in Resources */ = {isa = PBXBuildFile; fileRef = 58C3506410B9A56C00D37E14 /* button_left.png */; };
58C3506710B9A57300D37E14 /* button_right.png in Resources */ = {isa = PBXBuildFile; fileRef = 58C3506610B9A57300D37E14 /* button_right.png */; };
58C3506B10B9AA8B00D37E14 /* button_pagination.png in Resources */ = {isa = PBXBuildFile; fileRef = 58C3506A10B9AA8B00D37E14 /* button_pagination.png */; };
@@ -545,6 +561,7 @@
dstPath = "";
dstSubfolderSpec = 10;
files = (
+ 50EA92661AB23ED3008D3C4F /* SPMySQL.framework in Copy Frameworks */,
17E20E0012D660C3007F75A6 /* OCMock.framework in Copy Frameworks */,
);
name = "Copy Frameworks";
@@ -583,24 +600,20 @@
/* Begin PBXFileReference section */
1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
- 112730541180788A000737FD /* SPTableCopyTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPTableCopyTest.h; sourceTree = "<group>"; };
112730551180788A000737FD /* SPTableCopyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPTableCopyTest.m; sourceTree = "<group>"; };
1141A387117BBFF200126A28 /* SPTableCopy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPTableCopy.h; sourceTree = "<group>"; };
1141A388117BBFF200126A28 /* SPTableCopy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPTableCopy.m; sourceTree = "<group>"; };
1198F5B11174EDD500670590 /* SPDatabaseCopy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPDatabaseCopy.h; sourceTree = "<group>"; };
1198F5B21174EDD500670590 /* SPDatabaseCopy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPDatabaseCopy.m; sourceTree = "<group>"; };
- 1198F5C21174EF3F00670590 /* SPDatabaseCopyTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPDatabaseCopyTest.h; sourceTree = "<group>"; };
1198F5C31174EF3F00670590 /* SPDatabaseCopyTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPDatabaseCopyTest.m; sourceTree = "<group>"; };
11B55BFC1189E3B2009EF465 /* SPDatabaseAction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPDatabaseAction.h; sourceTree = "<group>"; };
11B55BFD1189E3B2009EF465 /* SPDatabaseAction.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPDatabaseAction.m; sourceTree = "<group>"; };
11C2109C1180E70800758039 /* SPDatabaseRename.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPDatabaseRename.h; sourceTree = "<group>"; };
11C2109D1180E70800758039 /* SPDatabaseRename.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPDatabaseRename.m; sourceTree = "<group>"; };
- 11C210DD1180E9B800758039 /* SPDatabaseRenameTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPDatabaseRenameTest.h; sourceTree = "<group>"; };
11C210DE1180E9B800758039 /* SPDatabaseRenameTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPDatabaseRenameTest.m; sourceTree = "<group>"; };
11D44DEF118F5887002AA43C /* OCMock.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OCMock.framework; path = Frameworks/OCMock.framework; sourceTree = "<group>"; };
17005CB116D6CF0000AF81F4 /* SPTableTriggersDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPTableTriggersDelegate.h; sourceTree = "<group>"; };
17005CB216D6CF0000AF81F4 /* SPTableTriggersDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPTableTriggersDelegate.m; sourceTree = "<group>"; };
- 17128B8A0FE6E0210035DD75 /* QLPreviewPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QLPreviewPanel.h; sourceTree = "<group>"; };
1713122F109C7DF600FB465F /* build.sh */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.sh; path = build.sh; sourceTree = "<group>"; };
171312CC109D23C700FB465F /* SPTableTextFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPTableTextFieldCell.h; sourceTree = "<group>"; };
171312CD109D23C700FB465F /* SPTableTextFieldCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPTableTextFieldCell.m; sourceTree = "<group>"; };
@@ -672,7 +685,6 @@
175EC63312733B36009A7C0F /* SPExportControllerDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPExportControllerDelegate.h; sourceTree = "<group>"; };
175EC63412733B36009A7C0F /* SPExportControllerDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPExportControllerDelegate.m; sourceTree = "<group>"; };
175EC64C12733CDF009A7C0F /* SPCategoryAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPCategoryAdditions.h; sourceTree = "<group>"; };
- 1760599D1336199D0098E162 /* SPMenuAdditionsTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPMenuAdditionsTests.h; sourceTree = "<group>"; };
1760599E1336199D0098E162 /* SPMenuAdditionsTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPMenuAdditionsTests.m; sourceTree = "<group>"; };
1761FD470EF03A6F00331368 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/MainMenu.xib; sourceTree = "<group>"; };
1761FD9D0EF0488900331368 /* build-version.pl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.perl; path = "build-version.pl"; sourceTree = "<group>"; };
@@ -732,7 +744,6 @@
1798F19A1550185B004B0AB8 /* SPTreeNode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPTreeNode.m; sourceTree = "<group>"; };
1798F19C15501892004B0AB8 /* SPFlippedView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPFlippedView.h; sourceTree = "<group>"; };
1798F19D15501892004B0AB8 /* SPFlippedView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPFlippedView.m; sourceTree = "<group>"; };
- 1798F1C1155018D4004B0AB8 /* SPMutableArrayAdditionsTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPMutableArrayAdditionsTests.h; sourceTree = "<group>"; };
1798F1C2155018D4004B0AB8 /* SPMutableArrayAdditionsTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPMutableArrayAdditionsTests.m; sourceTree = "<group>"; };
179ECEC611F265EE009C6A40 /* libbz2.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libbz2.dylib; path = usr/lib/libbz2.dylib; sourceTree = SDKROOT; };
179F15040F7C433C00579954 /* SPEditorTokens.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPEditorTokens.h; sourceTree = "<group>"; };
@@ -864,7 +875,6 @@
2A37F4C4FDCFA73011CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
2A37F4C5FDCFA73011CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
380F4ED90FC0B50500B0BFD7 /* Unit Tests.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Unit Tests.octest"; sourceTree = BUILT_PRODUCTS_DIR; };
- 380F4EF30FC0B68F00B0BFD7 /* SPStringAdditionsTests.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPStringAdditionsTests.h; sourceTree = "<group>"; };
380F4EF40FC0B68F00B0BFD7 /* SPStringAdditionsTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPStringAdditionsTests.m; sourceTree = "<group>"; };
384582C30FB95FF800DDACB6 /* func-small.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "func-small.png"; sourceTree = "<group>"; };
384582C60FB9603600DDACB6 /* proc-small.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "proc-small.png"; sourceTree = "<group>"; };
@@ -881,13 +891,28 @@
4DECC3340EC2A170008D359E /* Growl.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Growl.framework; path = Frameworks/Growl.framework; sourceTree = "<group>"; };
501B1D161728A3DA0017C92E /* SPCharsetCollationHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPCharsetCollationHelper.h; sourceTree = "<group>"; };
501B1D171728A3DA0017C92E /* SPCharsetCollationHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPCharsetCollationHelper.m; sourceTree = "<group>"; };
- 50A9F8AC19EAD4860053E571 /* GotoDatabaseDialog.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = GotoDatabaseDialog.xib; path = English.lproj/GotoDatabaseDialog.xib; sourceTree = "<group>"; };
+ 5037F79A1B00148000733564 /* SPNamedNode.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SPNamedNode.h; sourceTree = "<group>"; };
+ 503B02C81AE82C5E0060CAB1 /* SPTableFilterParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPTableFilterParser.h; sourceTree = "<group>"; };
+ 503B02C91AE82C5E0060CAB1 /* SPTableFilterParser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPTableFilterParser.m; sourceTree = "<group>"; };
+ 503B02CE1AE95C2C0060CAB1 /* SPTableFilterParserTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPTableFilterParserTest.m; sourceTree = "<group>"; };
+ 503CDBB11ACDC204004F8A2F /* Quartz.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Quartz.framework; path = System/Library/Frameworks/Quartz.framework; sourceTree = SDKROOT; };
+ 506CE92F1A311C6C0039F736 /* SPTableContentFilterController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPTableContentFilterController.h; sourceTree = "<group>"; };
+ 506CE9301A311C6C0039F736 /* SPTableContentFilterController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPTableContentFilterController.m; sourceTree = "<group>"; };
50A9F8AF19EAD4B90053E571 /* SPGotoDatabaseController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPGotoDatabaseController.h; sourceTree = "<group>"; };
50A9F8B019EAD4B90053E571 /* SPGotoDatabaseController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPGotoDatabaseController.m; sourceTree = "<group>"; };
+ 50D3C34A1A75B8A800B5429C /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/GotoDatabaseDialog.xib; sourceTree = "<group>"; };
+ 50D3C3501A77135F00B5429C /* SPParserUtils.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SPParserUtils.c; sourceTree = "<group>"; };
+ 50D3C3511A77135F00B5429C /* SPParserUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPParserUtils.h; sourceTree = "<group>"; };
+ 50D3C35B1A771C4C00B5429C /* SPParserUtilsTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPParserUtilsTest.m; sourceTree = "<group>"; };
+ 50D3C3831A8177D900B5429C /* SPExportController+SharedPrivateAPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "SPExportController+SharedPrivateAPI.h"; sourceTree = "<group>"; };
50E217B118174246009D3580 /* SPColorSelectorView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPColorSelectorView.h; sourceTree = "<group>"; };
50E217B218174246009D3580 /* SPColorSelectorView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPColorSelectorView.m; sourceTree = "<group>"; };
50E217B418174280009D3580 /* SPFavoriteColorSupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPFavoriteColorSupport.h; sourceTree = "<group>"; };
50E217B518174280009D3580 /* SPFavoriteColorSupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPFavoriteColorSupport.m; sourceTree = "<group>"; };
+ 50EA92691AB246B8008D3C4F /* SPDatabaseActionTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPDatabaseActionTest.m; sourceTree = "<group>"; };
+ 50EAB5B61A8FBB08008F627A /* SPOSInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPOSInfo.h; sourceTree = "<group>"; };
+ 50EAB5B71A8FBB08008F627A /* SPOSInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPOSInfo.m; sourceTree = "<group>"; };
+ 50F530511ABCF66B002F2C1A /* reset.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; path = reset.pdf; sourceTree = "<group>"; };
5806B76211A991EC00813A88 /* SPDocumentController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPDocumentController.h; sourceTree = "<group>"; };
5806B76311A991EC00813A88 /* SPDocumentController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPDocumentController.m; sourceTree = "<group>"; };
580E8DAB11EA772C000D8427 /* SequelProTabClose_Pressed.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = SequelProTabClose_Pressed.png; sourceTree = "<group>"; };
@@ -1001,8 +1026,9 @@
589235311020C1230011DE00 /* SPHistoryController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPHistoryController.h; sourceTree = "<group>"; };
589582131154F8F400EDCC28 /* SPMainThreadTrampoline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPMainThreadTrampoline.h; sourceTree = "<group>"; };
589582141154F8F400EDCC28 /* SPMainThreadTrampoline.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPMainThreadTrampoline.m; sourceTree = "<group>"; };
- 589ED05A11E0ACD100C1DCEA /* DMLocalizedNib.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DMLocalizedNib.m; sourceTree = "<group>"; };
58A137CC123ED5E6000B1B75 /* titlebarlock.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = titlebarlock.png; sourceTree = "<group>"; };
+ 58A2F3791AAAE1BE0018141B /* nightlybuildupload.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = nightlybuildupload.sh; sourceTree = "<group>"; };
+ 58A2F37B1AAAE1C80018141B /* nightlybuildscript.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = nightlybuildscript.sh; sourceTree = "<group>"; };
58A8A72411A0148400B95749 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/MainWindow.xib; sourceTree = "<group>"; };
58A8A78F11A036C000B95749 /* SPWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPWindowController.h; sourceTree = "<group>"; };
58A8A79011A036C000B95749 /* SPWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPWindowController.m; sourceTree = "<group>"; };
@@ -1074,7 +1100,6 @@
58B9088711BDB7AA000826E5 /* PSMTabBar-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "PSMTabBar-Info.plist"; path = "Plists/PSMTabBar-Info.plist"; sourceTree = "<group>"; };
58B9095B11C3A3EC000826E5 /* xibLocalizationPostprocessor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = xibLocalizationPostprocessor.m; sourceTree = "<group>"; };
58B9096111C3A42B000826E5 /* xibLocalizationPostprocessor */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = xibLocalizationPostprocessor; sourceTree = BUILT_PRODUCTS_DIR; };
- 58B909A411C3B919000826E5 /* DMLocalizedNibBundle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DMLocalizedNibBundle.m; sourceTree = "<group>"; };
58C3506410B9A56C00D37E14 /* button_left.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_left.png; sourceTree = "<group>"; };
58C3506610B9A57300D37E14 /* button_right.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_right.png; sourceTree = "<group>"; };
58C3506A10B9AA8B00D37E14 /* button_pagination.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = button_pagination.png; sourceTree = "<group>"; };
@@ -1249,6 +1274,7 @@
files = (
1717F9DB1558114D0065C036 /* OCMock.framework in Frameworks */,
1717FA43155831600065C036 /* libicucore.dylib in Frameworks */,
+ 50EA92671AB23EE1008D3C4F /* SPMySQL.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1289,6 +1315,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
+ 503CDBB21ACDC204004F8A2F /* Quartz.framework in Frameworks */,
17AED4161888BD67008E380F /* Security.framework in Frameworks */,
296DC8BF0F9091DF002A3258 /* libicucore.dylib in Frameworks */,
8D15AC340486D014006FF6A4 /* Cocoa.framework in Frameworks */,
@@ -1311,6 +1338,7 @@
1058C7A6FEA54F5311CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
+ 503CDBB11ACDC204004F8A2F /* Quartz.framework */,
2A37F4C4FDCFA73011CA2CEA /* AppKit.framework */,
2A37F4C5FDCFA73011CA2CEA /* Foundation.framework */,
B5EAC0FC0EC87FF900CC579C /* Security.framework */,
@@ -1356,12 +1384,10 @@
1198F5B41174EDDE00670590 /* Database Actions */ = {
isa = PBXGroup;
children = (
- 112730541180788A000737FD /* SPTableCopyTest.h */,
112730551180788A000737FD /* SPTableCopyTest.m */,
- 1198F5C21174EF3F00670590 /* SPDatabaseCopyTest.h */,
1198F5C31174EF3F00670590 /* SPDatabaseCopyTest.m */,
- 11C210DD1180E9B800758039 /* SPDatabaseRenameTest.h */,
11C210DE1180E9B800758039 /* SPDatabaseRenameTest.m */,
+ 50EA92691AB246B8008D3C4F /* SPDatabaseActionTest.m */,
);
name = "Database Actions";
sourceTree = "<group>";
@@ -1385,14 +1411,6 @@
name = zlib;
sourceTree = "<group>";
};
- 17128B890FE6DFFA0035DD75 /* QuickLook */ = {
- isa = PBXGroup;
- children = (
- 17128B8A0FE6E0210035DD75 /* QLPreviewPanel.h */,
- );
- name = QuickLook;
- sourceTree = "<group>";
- };
171312CF109D23CA00FB465F /* Cells */ = {
isa = PBXGroup;
children = (
@@ -1590,6 +1608,8 @@
1713C73D140D88D400CFD461 /* Query Controller */,
50A9F8AF19EAD4B90053E571 /* SPGotoDatabaseController.h */,
50A9F8B019EAD4B90053E571 /* SPGotoDatabaseController.m */,
+ 506CE92F1A311C6C0039F736 /* SPTableContentFilterController.h */,
+ 506CE9301A311C6C0039F736 /* SPTableContentFilterController.m */,
);
name = "Subview Controllers";
sourceTree = "<group>";
@@ -1670,6 +1690,8 @@
178934980F30CDA10097539A /* trim-application.sh */,
174A345112DA4ED000DB0ADE /* create-test-stubs.pl */,
588593F30F7AEC9500ED0E67 /* package-application.sh */,
+ 58A2F37B1AAAE1C80018141B /* nightlybuildscript.sh */,
+ 58A2F3791AAAE1BE0018141B /* nightlybuildupload.sh */,
);
path = Scripts;
sourceTree = "<group>";
@@ -1735,6 +1757,7 @@
1798F1941550181B004B0AB8 /* SPGroupNode.m */,
17D3C22012859E070047709F /* SPFavoriteNode.h */,
17D3C22112859E070047709F /* SPFavoriteNode.m */,
+ 5037F79A1B00148000733564 /* SPNamedNode.h */,
);
name = "Tree Nodes";
sourceTree = "<group>";
@@ -1910,11 +1933,8 @@
17DC886A126B378A00E9AAEC /* Category Additions */ = {
isa = PBXGroup;
children = (
- 380F4EF30FC0B68F00B0BFD7 /* SPStringAdditionsTests.h */,
380F4EF40FC0B68F00B0BFD7 /* SPStringAdditionsTests.m */,
- 1760599D1336199D0098E162 /* SPMenuAdditionsTests.h */,
1760599E1336199D0098E162 /* SPMenuAdditionsTests.m */,
- 1798F1C1155018D4004B0AB8 /* SPMutableArrayAdditionsTests.h */,
1798F1C2155018D4004B0AB8 /* SPMutableArrayAdditionsTests.m */,
);
name = "Category Additions";
@@ -2046,7 +2066,6 @@
isa = PBXGroup;
children = (
1198F5B01174EDA700670590 /* Database Actions */,
- 17128B890FE6DFFA0035DD75 /* QuickLook */,
583CE39511722B70008F148E /* File Compression */,
173284E51088FEC20062E892 /* Data */,
17E6416F0EF01F4C001BC333 /* Keychain */,
@@ -2143,6 +2162,7 @@
384582C60FB9603600DDACB6 /* proc-small.png */,
58F48AA2161D03C6008536A1 /* quick-connect-icon.pdf */,
58F48B2D161D08C0008536A1 /* quick-connect-icon-white.pdf */,
+ 50F530511ABCF66B002F2C1A /* reset.pdf */,
582E946F16837DB2003459FD /* showconsole.png */,
588B2CC50FE5641E00EC5FC0 /* ssh-connected.png */,
588B2CC60FE5641E00EC5FC0 /* ssh-connecting.png */,
@@ -2197,7 +2217,7 @@
BC8B0DAD104004F900FC02EC /* EncodingPopupView.xib */,
B5E92F170F75B2D100012500 /* ExportDialog.xib */,
BCA6F62F100FA7D700E80253 /* FieldEditorSheet.xib */,
- 50A9F8AC19EAD4860053E571 /* GotoDatabaseDialog.xib */,
+ 50D3C34B1A75B8A800B5429C /* GotoDatabaseDialog.xib */,
BC65C3B0107CE3EE003F7B02 /* ImportAccessory.xib */,
17A7773611C52E61001E27B4 /* IndexesView.xib */,
1761FD460EF03A6F00331368 /* MainMenu.xib */,
@@ -2237,6 +2257,7 @@
173C836C11AAD24300B8B084 /* Exporters */,
173C837C11AAD2C500B8B084 /* Delegate Protocols */,
173C837D11AAD2D300B8B084 /* Delegate Categories */,
+ 50D3C3831A8177D900B5429C /* SPExportController+SharedPrivateAPI.h */,
);
name = "Data Export";
sourceTree = "<group>";
@@ -2336,6 +2357,7 @@
380F4EF20FC0B67A00B0BFD7 /* Unit Tests */ = {
isa = PBXGroup;
children = (
+ 50D3C3591A771C2300B5429C /* Other */,
1198F5B41174EDDE00670590 /* Database Actions */,
17DC886A126B378A00E9AAEC /* Category Additions */,
);
@@ -2343,6 +2365,15 @@
path = UnitTests;
sourceTree = "<group>";
};
+ 50D3C3591A771C2300B5429C /* Other */ = {
+ isa = PBXGroup;
+ children = (
+ 50D3C35B1A771C4C00B5429C /* SPParserUtilsTest.m */,
+ 503B02CE1AE95C2C0060CAB1 /* SPTableFilterParserTest.m */,
+ );
+ name = Other;
+ sourceTree = "<group>";
+ };
583CE39511722B70008F148E /* File Compression */ = {
isa = PBXGroup;
children = (
@@ -2490,8 +2521,6 @@
58B909A111C3B8EC000826E5 /* Localization */ = {
isa = PBXGroup;
children = (
- 589ED05A11E0ACD100C1DCEA /* DMLocalizedNib.m */,
- 58B909A411C3B919000826E5 /* DMLocalizedNibBundle.m */,
58B9095B11C3A3EC000826E5 /* xibLocalizationPostprocessor.m */,
);
name = Localization;
@@ -2512,6 +2541,8 @@
50E217B518174280009D3580 /* SPFavoriteColorSupport.m */,
58DA8861103E15B5000B98DF /* SPLogger.h */,
58DA8862103E15B5000B98DF /* SPLogger.m */,
+ 50EAB5B61A8FBB08008F627A /* SPOSInfo.h */,
+ 50EAB5B71A8FBB08008F627A /* SPOSInfo.m */,
);
name = "Debugging & Support";
sourceTree = "<group>";
@@ -2528,6 +2559,10 @@
BCD0AD4A0FBBFC480066EA5C /* SPSQLTokenizer.h */,
BCD0AD480FBBFC340066EA5C /* SPSQLTokenizer.l */,
1755A25C16B33BEA00B35787 /* SPSyntaxParser.h */,
+ 50D3C3501A77135F00B5429C /* SPParserUtils.c */,
+ 50D3C3511A77135F00B5429C /* SPParserUtils.h */,
+ 503B02C81AE82C5E0060CAB1 /* SPTableFilterParser.h */,
+ 503B02C91AE82C5E0060CAB1 /* SPTableFilterParser.m */,
);
name = Parsing;
sourceTree = "<group>";
@@ -2922,7 +2957,7 @@
C9AD7C7C1676158C00234EEE /* toolbar-switch-to-sql@2x.png in Resources */,
C9AD7C7F167619B400234EEE /* button_refresh.png in Resources */,
C9AD7C80167619B400234EEE /* button_refresh@2x.png in Resources */,
- 50A9F8AD19EAD4860053E571 /* GotoDatabaseDialog.xib in Resources */,
+ 50D3C3491A75B8A800B5429C /* GotoDatabaseDialog.xib in Resources */,
C9AD7C8316761B3300234EEE /* button_action.png in Resources */,
C9AD7C8416761B3300234EEE /* button_action@2x.png in Resources */,
C9AD7C891676204300234EEE /* button_info_pane_hide.png in Resources */,
@@ -2951,6 +2986,7 @@
582E940216829B0A003459FD /* button_bar_handle.png in Resources */,
582E940E1682A2AD003459FD /* button_bar_spacer@2x.png in Resources */,
582E94161682A463003459FD /* button_clear.png in Resources */,
+ 50F530521ABCF66B002F2C1A /* reset.pdf in Resources */,
582E94181682A4B4003459FD /* button_duplicate.png in Resources */,
582E941F16835DD4003459FD /* button_edit_mode_selected.png in Resources */,
582E942016835DD4003459FD /* button_edit_mode.png in Resources */,
@@ -3016,6 +3052,14 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
+ 503B02D21AE95E010060CAB1 /* SPConstants.m in Sources */,
+ 503B02D11AE95DD40060CAB1 /* SPTableFilterParser.m in Sources */,
+ 503B02CF1AE95C2C0060CAB1 /* SPTableFilterParserTest.m in Sources */,
+ 50EA92681AB23EFC008D3C4F /* SPTableCopy.m in Sources */,
+ 50EA926A1AB246B8008D3C4F /* SPDatabaseActionTest.m in Sources */,
+ 50EA92651AB23EC8008D3C4F /* SPDatabaseAction.m in Sources */,
+ 50EA92641AB23EAD008D3C4F /* SPDatabaseCopy.m in Sources */,
+ 50D3C35D1A77217800B5429C /* SPParserUtils.c in Sources */,
380F4EF50FC0B68F00B0BFD7 /* SPStringAdditionsTests.m in Sources */,
1760599F1336199D0098E162 /* SPMenuAdditionsTests.m in Sources */,
1798F1C4155018E2004B0AB8 /* SPMutableArrayAdditionsTests.m in Sources */,
@@ -3023,6 +3067,7 @@
17DB5F4A1555CA810046834B /* SPMenuAdditions.m in Sources */,
1717F9661557E0450065C036 /* SPStringAdditions.m in Sources */,
1717FA401558313A0065C036 /* RegexKitLite.m in Sources */,
+ 50D3C35C1A771C4C00B5429C /* SPParserUtilsTest.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -3030,6 +3075,7 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
+ 50D3C3541A7715E600B5429C /* SPParserUtils.c in Sources */,
BC34F3281292AD6F000DA1AA /* SPConstants.m in Sources */,
BC6D709E120C4C9F008027B5 /* SPEditorTokens.l in Sources */,
BC0E1487120AAB5C00E52E25 /* SPStringAdditions.m in Sources */,
@@ -3135,6 +3181,7 @@
BC9F0881100FCF2C00A80D32 /* SPFieldEditorController.m in Sources */,
58D2E229101222670063EF1D /* SPTextAndLinkCell.m in Sources */,
BC05F1C5101241DF008A97F8 /* YRKSpinningProgressIndicator.m in Sources */,
+ 503B02CA1AE82C5E0060CAB1 /* SPTableFilterParser.m in Sources */,
4D90B79A101E0CDF00D116A1 /* SPUserManager.m in Sources */,
4D90B79E101E0CF200D116A1 /* SPUserManager.xcdatamodel in Sources */,
4D90B79F101E0CF200D116A1 /* SPUserMO.m in Sources */,
@@ -3143,6 +3190,7 @@
BCA6271C1031B9D40047E5D5 /* SPTooltip.m in Sources */,
58DA8863103E15B5000B98DF /* SPLogger.m in Sources */,
BC01BCCF104024BE006BDEE7 /* SPEncodingPopupAccessory.m in Sources */,
+ 50EAB5B81A8FBB08008F627A /* SPOSInfo.m in Sources */,
173C4366104455E0001F3A30 /* SPQueryFavoriteManager.m in Sources */,
173C44D81044A6B0001F3A30 /* SPOutlineView.m in Sources */,
17F5B1511048C4E400FC794F /* SPCSVExporter.m in Sources */,
@@ -3184,9 +3232,7 @@
173C839311AAD32A00B8B084 /* SPPDFExporterDelegate.m in Sources */,
173C839411AAD32A00B8B084 /* SPSQLExporterDelegate.m in Sources */,
173C839511AAD32A00B8B084 /* SPXMLExporterDelegate.m in Sources */,
- 58B909A511C3B919000826E5 /* DMLocalizedNibBundle.m in Sources */,
17A7773411C52D8E001E27B4 /* SPIndexesController.m in Sources */,
- 589ED05B11E0ACD100C1DCEA /* DMLocalizedNib.m in Sources */,
17AF787B11FC41C00073D043 /* SPExportFilenameUtilities.m in Sources */,
17F90E481210B42700274C98 /* SPExportFile.m in Sources */,
17F90E4B1210B43A00274C98 /* SPExportFileUtilities.m in Sources */,
@@ -3213,10 +3259,12 @@
17FDB04C1280778B00DBBBC2 /* SPFontPreviewTextField.m in Sources */,
17D3DC201281816E002A163A /* SPDatabaseViewController.m in Sources */,
17D3C22212859E070047709F /* SPFavoriteNode.m in Sources */,
+ 506CE9311A311C6C0039F736 /* SPTableContentFilterController.m in Sources */,
17D3C6041289BF350047709F /* SPConnectionControllerDelegate.m in Sources */,
17D3C66E128AD4710047709F /* SPFavoritesController.m in Sources */,
17D3C671128AD8160047709F /* SPSingleton.m in Sources */,
17D3C6D3128B1C900047709F /* SPFavoritesOutlineView.m in Sources */,
+ 50D3C3521A77135F00B5429C /* SPParserUtils.c in Sources */,
BC68BFC7128D4EAE004907D9 /* SPBundleEditorController.m in Sources */,
BC1944D01297291800A236CD /* SPBundleCommandTextView.m in Sources */,
BC77C5E4129AA69E009AD832 /* SPBundleHTMLOutputController.m in Sources */,
@@ -3403,6 +3451,14 @@
name = UserManagerView.xib;
sourceTree = "<group>";
};
+ 50D3C34B1A75B8A800B5429C /* GotoDatabaseDialog.xib */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 50D3C34A1A75B8A800B5429C /* English */,
+ );
+ name = GotoDatabaseDialog.xib;
+ sourceTree = "<group>";
+ };
58186D1F0F4CB38900851FE9 /* ConnectionErrorDialog.xib */ = {
isa = PBXVariantGroup;
children = (
diff --git a/sequel-pro.xcodeproj/xcshareddata/xcschemes/Sequel Pro.xcscheme b/sequel-pro.xcodeproj/xcshareddata/xcschemes/Sequel Pro.xcscheme
index e6b89ad7..579336f6 100644
--- a/sequel-pro.xcodeproj/xcshareddata/xcschemes/Sequel Pro.xcscheme
+++ b/sequel-pro.xcodeproj/xcshareddata/xcschemes/Sequel Pro.xcscheme
@@ -25,7 +25,7 @@
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
- shouldUseLaunchSchemeArgsEnv = "YES"
+ shouldUseLaunchSchemeArgsEnv = "NO"
buildConfiguration = "Debug">
<Testables>
<TestableReference
@@ -48,6 +48,13 @@
ReferencedContainer = "container:sequel-pro.xcodeproj">
</BuildableReference>
</MacroExpansion>
+ <EnvironmentVariables>
+ <EnvironmentVariable
+ key = "OBJC_DISABLE_GC"
+ value = "YES"
+ isEnabled = "YES">
+ </EnvironmentVariable>
+ </EnvironmentVariables>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"