aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Interfaces/English.lproj/DBView.xib1247
-rw-r--r--Interfaces/English.lproj/QueryFavoriteManager.xib1754
-rw-r--r--Source/CustomQuery.h25
-rw-r--r--Source/CustomQuery.m374
-rw-r--r--Source/SPPreferenceController.m22
-rw-r--r--Source/SPQueryFavoriteManager.h74
-rw-r--r--Source/SPQueryFavoriteManager.m415
-rw-r--r--sequel-pro.xcodeproj/project.pbxproj30
8 files changed, 2679 insertions, 1262 deletions
diff --git a/Interfaces/English.lproj/DBView.xib b/Interfaces/English.lproj/DBView.xib
index dcadc284..aeb70ad6 100644
--- a/Interfaces/English.lproj/DBView.xib
+++ b/Interfaces/English.lproj/DBView.xib
@@ -8,7 +8,7 @@
<string key="IBDocument.HIToolboxVersion">353.00</string>
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
<bool key="EncodedWithXMLCoder">YES</bool>
- <integer value="6406"/>
+ <integer value="1182"/>
</object>
<object class="NSArray" key="IBDocument.PluginDependencies">
<bool key="EncodedWithXMLCoder">YES</bool>
@@ -47,7 +47,7 @@
<string key="NSWindowContentMaxSize">{3.40282e+38, 3.40282e+38}</string>
<string key="NSWindowContentMinSize">{780, 480}</string>
<object class="NSView" key="NSWindowView" id="579726586">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
@@ -186,6 +186,7 @@
</object>
<string key="NSFrameSize">{212, 26}</string>
<reference key="NSSuperview" ref="199860064"/>
+ <reference key="NSNextKeyView" ref="643201879"/>
<reference key="NSDocView" ref="643201879"/>
<object class="NSColor" key="NSBGColor" id="529261656">
<int key="NSColorSpace">6</int>
@@ -221,6 +222,7 @@
</object>
<string key="NSFrameSize">{212, 26}</string>
<reference key="NSSuperview" ref="801427893"/>
+ <reference key="NSNextKeyView" ref="588922296"/>
<int key="NSsFlags">0</int>
<reference key="NSVScroller" ref="540853896"/>
<reference key="NSHScroller" ref="566705316"/>
@@ -335,6 +337,7 @@
</object>
<string key="NSFrameSize">{212, 354}</string>
<reference key="NSSuperview" ref="233472824"/>
+ <reference key="NSNextKeyView" ref="251040077"/>
<reference key="NSDocView" ref="251040077"/>
<object class="NSColor" key="NSBGColor" id="1024678221">
<int key="NSColorSpace">6</int>
@@ -366,6 +369,7 @@
</object>
<string key="NSFrameSize">{212, 354}</string>
<reference key="NSSuperview" ref="1017775084"/>
+ <reference key="NSNextKeyView" ref="73685676"/>
<int key="NSsFlags">528</int>
<reference key="NSVScroller" ref="693168867"/>
<reference key="NSHScroller" ref="656188692"/>
@@ -490,6 +494,7 @@
</object>
<string key="NSFrameSize">{212, 145}</string>
<reference key="NSSuperview" ref="298226231"/>
+ <reference key="NSNextKeyView" ref="347093764"/>
<reference key="NSDocView" ref="347093764"/>
<reference key="NSBGColor" ref="1024678221"/>
<int key="NScvFlags">6</int>
@@ -516,6 +521,7 @@
</object>
<string key="NSFrameSize">{212, 145}</string>
<reference key="NSSuperview" ref="192579410"/>
+ <reference key="NSNextKeyView" ref="685057119"/>
<int key="NSsFlags">512</int>
<reference key="NSVScroller" ref="245346414"/>
<reference key="NSHScroller" ref="353686052"/>
@@ -589,7 +595,7 @@
<reference key="NSControlView" ref="500608059"/>
<int key="NSButtonFlags">-2033958657</int>
<int key="NSButtonFlags2">163</int>
- <object class="NSCustomResource" key="NSNormalImage" id="111139599">
+ <object class="NSCustomResource" key="NSNormalImage">
<string key="NSClassName">NSImage</string>
<string key="NSResourceName">NSAddTemplate</string>
</object>
@@ -2046,7 +2052,7 @@
<object class="NSTabViewItem" id="624106058">
<string key="NSIdentifier">content</string>
<object class="NSView" key="NSView" id="1013108064">
- <reference key="NSNextResponder" ref="714795046"/>
+ <nil key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
@@ -2122,6 +2128,7 @@
</object>
<string key="NSFrame">{{1, 17}, {688, 455}}</string>
<reference key="NSSuperview" ref="33038697"/>
+ <reference key="NSNextKeyView" ref="22576329"/>
<reference key="NSDocView" ref="22576329"/>
<reference key="NSBGColor" ref="1024678221"/>
<int key="NScvFlags">2</int>
@@ -2155,6 +2162,7 @@
</object>
<string key="NSFrame">{{1, 0}, {688, 17}}</string>
<reference key="NSSuperview" ref="33038697"/>
+ <reference key="NSNextKeyView" ref="457166030"/>
<reference key="NSDocView" ref="457166030"/>
<reference key="NSBGColor" ref="1024678221"/>
<int key="NScvFlags">4</int>
@@ -2163,6 +2171,7 @@
</object>
<string key="NSFrame">{{6, 32}, {690, 473}}</string>
<reference key="NSSuperview" ref="1013108064"/>
+ <reference key="NSNextKeyView" ref="545438501"/>
<int key="NSsFlags">562</int>
<reference key="NSVScroller" ref="398797698"/>
<reference key="NSHScroller" ref="178353583"/>
@@ -2233,8 +2242,8 @@
<bool key="NS.raise.underflow">YES</bool>
<bool key="NS.raise.dividebyzero">YES</bool>
</object>
- <string key="NS.decimal">,</string>
- <string key="NS.thousand">.</string>
+ <string key="NS.decimal">.</string>
+ <string key="NS.thousand">,</string>
<bool key="NS.hasthousands">NO</bool>
<bool key="NS.localized">YES</bool>
<bool key="NS.allowsfloats">NO</bool>
@@ -2818,7 +2827,6 @@
</object>
</object>
<string key="NSFrame">{{10, 7}, {700, 544}}</string>
- <reference key="NSSuperview" ref="714795046"/>
</object>
<string key="NSLabel">Content</string>
<reference key="NSColor" ref="62854682"/>
@@ -2827,7 +2835,7 @@
<object class="NSTabViewItem" id="105987292">
<string key="NSIdentifier">customQuery</string>
<object class="NSView" key="NSView" id="746504912">
- <nil key="NSNextResponder"/>
+ <reference key="NSNextResponder" ref="714795046"/>
<int key="NSvFlags">256</int>
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
@@ -2854,6 +2862,29 @@
<object class="NSTextView" id="1055190999">
<reference key="NSNextResponder" ref="1072692119"/>
<int key="NSvFlags">6418</int>
+ <object class="NSMutableSet" key="NSDragTypes">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMutableArray" key="set.sortedObjects">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <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>CorePasteboardFlavorType 0x75726C20</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>
+ </object>
+ </object>
<string key="NSFrameSize">{688, 14}</string>
<reference key="NSSuperview" ref="1072692119"/>
<object class="NSTextContainer" key="NSTextContainer" id="326170846">
@@ -3194,13 +3225,12 @@
<string key="NSAction">_popUpItemAction:</string>
<reference key="NSTarget" ref="416049103"/>
</object>
- <object class="NSMenuItem" id="829073375">
+ <object class="NSMenuItem" id="17413925">
<reference key="NSMenu" ref="960790892"/>
<bool key="NSIsDisabled">YES</bool>
<bool key="NSIsSeparator">YES</bool>
<string key="NSTitle"/>
<string key="NSKeyEquiv"/>
- <int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="450876295"/>
<reference key="NSMixedImage" ref="414351669"/>
@@ -3209,6 +3239,7 @@
</object>
</object>
</object>
+ <int key="NSSelectedIndex">-1</int>
<bool key="NSPullDown">YES</bool>
<int key="NSPreferredEdge">3</int>
<bool key="NSUsesItemFromMenu">YES</bool>
@@ -3229,7 +3260,7 @@
<reference key="NSControlView" ref="363916571"/>
<int key="NSButtonFlags">-2042609409</int>
<int key="NSButtonFlags2">35</int>
- <object class="NSCustomResource" key="NSNormalImage" id="607934853">
+ <object class="NSCustomResource" key="NSNormalImage">
<string key="NSClassName">NSImage</string>
<string key="NSResourceName">button_action</string>
</object>
@@ -3244,7 +3275,10 @@
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
- <reference key="NSImage" ref="607934853"/>
+ <object class="NSCustomResource" key="NSImage">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">button_action</string>
+ </object>
<string key="NSAction">_popUpItemAction:</string>
<reference key="NSTarget" ref="984501775"/>
</object>
@@ -3616,6 +3650,7 @@
</object>
</object>
<string key="NSFrame">{{10, 7}, {700, 544}}</string>
+ <reference key="NSSuperview" ref="714795046"/>
</object>
<string key="NSLabel">Custom Query</string>
<reference key="NSColor" ref="62854682"/>
@@ -4655,14 +4690,14 @@
<reference key="NSTabView" ref="714795046"/>
</object>
</object>
- <reference key="NSSelectedTabViewItem" ref="624106058"/>
+ <reference key="NSSelectedTabViewItem" ref="105987292"/>
<reference key="NSFont" ref="26"/>
<int key="NSTvFlags">134217731</int>
<bool key="NSAllowTruncatedLabels">YES</bool>
<bool key="NSDrawsBackground">YES</bool>
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="1013108064"/>
+ <reference ref="746504912"/>
</object>
</object>
</object>
@@ -4678,6 +4713,7 @@
</object>
</object>
<string key="NSFrameSize">{944, 550}</string>
+ <reference key="NSSuperview"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
<string key="NSMinSize">{780, 502}</string>
@@ -6911,260 +6947,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
<string key="NSMaxSize">{3.40282e+38, 3.40282e+38}</string>
</object>
- <object class="NSWindowTemplate" id="99553177">
- <int key="NSWindowStyleMask">15</int>
- <int key="NSWindowBacking">2</int>
- <string key="NSWindowRect">{{503, 367}, {418, 200}}</string>
- <int key="NSWTFlags">1886912512</int>
- <string key="NSWindowTitle">Query Favorites</string>
- <string key="NSWindowClass">NSWindow</string>
- <object class="NSMutableString" key="NSViewClass">
- <characters key="NS.bytes">View</characters>
- </object>
- <string key="NSWindowContentMaxSize">{3.40282e+38, 3.40282e+38}</string>
- <string key="NSWindowContentMinSize">{213, 125}</string>
- <object class="NSView" key="NSWindowView" id="778680541">
- <nil key="NSNextResponder"/>
- <int key="NSvFlags">256</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSScrollView" id="597878738">
- <reference key="NSNextResponder" ref="778680541"/>
- <int key="NSvFlags">274</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSClipView" id="811595075">
- <reference key="NSNextResponder" ref="597878738"/>
- <int key="NSvFlags">2304</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSTableView" id="292088665">
- <reference key="NSNextResponder" ref="811595075"/>
- <int key="NSvFlags">4352</int>
- <string key="NSFrameSize">{418, 140}</string>
- <reference key="NSSuperview" ref="811595075"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSTableHeaderView" key="NSHeaderView" id="50612883">
- <reference key="NSNextResponder" ref="47860018"/>
- <int key="NSvFlags">256</int>
- <string key="NSFrameSize">{418, 17}</string>
- <reference key="NSSuperview" ref="47860018"/>
- <reference key="NSTableView" ref="292088665"/>
- </object>
- <object class="_NSCornerView" key="NSCornerView" id="1020296025">
- <reference key="NSNextResponder" ref="597878738"/>
- <int key="NSvFlags">256</int>
- <string key="NSFrame">{{-22, 0}, {12, 17}}</string>
- <reference key="NSSuperview" ref="597878738"/>
- </object>
- <object class="NSMutableArray" key="NSTableColumns">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSTableColumn" id="413853564">
- <string key="NSIdentifier">name</string>
- <double key="NSWidth">4.153290e+02</double>
- <double key="NSMinWidth">8.932900e+01</double>
- <double key="NSMaxWidth">1.000000e+03</double>
- <object class="NSTableHeaderCell" key="NSHeaderCell">
- <int key="NSCellFlags">75628032</int>
- <int key="NSCellFlags2">134217728</int>
- <string key="NSContents">Query Favorites</string>
- <reference key="NSSupport" ref="26"/>
- <object class="NSColor" key="NSBackgroundColor">
- <int key="NSColorSpace">3</int>
- <bytes key="NSWhite">MC4zMzMzMzI5OQA</bytes>
- </object>
- <reference key="NSTextColor" ref="222976159"/>
- </object>
- <object class="NSTextFieldCell" key="NSDataCell" id="180726999">
- <int key="NSCellFlags">338820672</int>
- <int key="NSCellFlags2">132096</int>
- <string key="NSContents">Text Cell</string>
- <reference key="NSSupport" ref="26"/>
- <reference key="NSControlView" ref="292088665"/>
- <reference key="NSBackgroundColor" ref="449903125"/>
- <reference key="NSTextColor" ref="454249633"/>
- </object>
- <int key="NSResizingMask">1</int>
- <bool key="NSIsResizeable">YES</bool>
- <bool key="NSIsEditable">YES</bool>
- <reference key="NSTableView" ref="292088665"/>
- </object>
- </object>
- <double key="NSIntercellSpacingWidth">3.000000e+00</double>
- <double key="NSIntercellSpacingHeight">2.000000e+00</double>
- <reference key="NSBackgroundColor" ref="1024678221"/>
- <reference key="NSGridColor" ref="864903678"/>
- <double key="NSRowHeight">1.300000e+01</double>
- <int key="NSTvFlags">306184192</int>
- <int key="NSColumnAutoresizingStyle">5</int>
- <int key="NSDraggingSourceMaskForLocal">15</int>
- <int key="NSDraggingSourceMaskForNonLocal">0</int>
- <bool key="NSAllowsTypeSelect">YES</bool>
- </object>
- </object>
- <string key="NSFrame">{{1, 17}, {418, 140}}</string>
- <reference key="NSSuperview" ref="597878738"/>
- <reference key="NSNextKeyView" ref="292088665"/>
- <reference key="NSDocView" ref="292088665"/>
- <reference key="NSBGColor" ref="1024678221"/>
- <int key="NScvFlags">4</int>
- </object>
- <object class="NSScroller" id="4739239">
- <reference key="NSNextResponder" ref="597878738"/>
- <int key="NSvFlags">256</int>
- <string key="NSFrame">{{-100, -100}, {11, 105}}</string>
- <reference key="NSSuperview" ref="597878738"/>
- <int key="NSsFlags">256</int>
- <reference key="NSTarget" ref="597878738"/>
- <string key="NSAction">_doScroller:</string>
- <double key="NSPercent">6.266667e-01</double>
- </object>
- <object class="NSScroller" id="87044874">
- <reference key="NSNextResponder" ref="597878738"/>
- <int key="NSvFlags">256</int>
- <string key="NSFrame">{{-100, -100}, {365, 11}}</string>
- <reference key="NSSuperview" ref="597878738"/>
- <int key="NSsFlags">257</int>
- <reference key="NSTarget" ref="597878738"/>
- <string key="NSAction">_doScroller:</string>
- <double key="NSPercent">9.565217e-01</double>
- </object>
- <object class="NSClipView" id="47860018">
- <reference key="NSNextResponder" ref="597878738"/>
- <int key="NSvFlags">2304</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="50612883"/>
- </object>
- <string key="NSFrame">{{1, 0}, {418, 17}}</string>
- <reference key="NSSuperview" ref="597878738"/>
- <reference key="NSNextKeyView" ref="50612883"/>
- <reference key="NSDocView" ref="50612883"/>
- <reference key="NSBGColor" ref="1024678221"/>
- <int key="NScvFlags">4</int>
- </object>
- <reference ref="1020296025"/>
- </object>
- <string key="NSFrame">{{-1, 22}, {420, 158}}</string>
- <reference key="NSSuperview" ref="778680541"/>
- <reference key="NSNextKeyView" ref="811595075"/>
- <int key="NSsFlags">514</int>
- <reference key="NSVScroller" ref="4739239"/>
- <reference key="NSHScroller" ref="87044874"/>
- <reference key="NSContentView" ref="811595075"/>
- <reference key="NSHeaderClipView" ref="47860018"/>
- <reference key="NSCornerView" ref="1020296025"/>
- <bytes key="NSScrollAmts">QSAAAEEgAABBcAAAQXAAAA</bytes>
- </object>
- <object class="BWAnchoredButtonBar" id="863012065">
- <reference key="NSNextResponder" ref="778680541"/>
- <int key="NSvFlags">290</int>
- <object class="NSMutableArray" key="NSSubviews">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="BWAnchoredButton" id="1008066768">
- <reference key="NSNextResponder" ref="863012065"/>
- <int key="NSvFlags">292</int>
- <string key="NSFrame">{{61, 0}, {32, 24}}</string>
- <reference key="NSSuperview" ref="863012065"/>
- <bool key="NSEnabled">YES</bool>
- <object class="BWAnchoredButtonCell" key="NSCell" id="158724653">
- <int key="NSCellFlags">67239424</int>
- <int key="NSCellFlags2">134348800</int>
- <string key="NSContents"/>
- <reference key="NSSupport" ref="26"/>
- <reference key="NSControlView" ref="1008066768"/>
- <int key="NSButtonFlags">-2033958657</int>
- <int key="NSButtonFlags2">35</int>
- <object class="NSCustomResource" key="NSNormalImage">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">button_duplicate_icon</string>
- </object>
- <string key="NSAlternateContents"/>
- <string key="NSKeyEquivalent"/>
- <int key="NSPeriodicDelay">200</int>
- <int key="NSPeriodicInterval">25</int>
- </object>
- </object>
- <object class="BWAnchoredButton" id="940658689">
- <reference key="NSNextResponder" ref="863012065"/>
- <int key="NSvFlags">292</int>
- <string key="NSFrame">{{-1, 0}, {32, 24}}</string>
- <reference key="NSSuperview" ref="863012065"/>
- <bool key="NSEnabled">YES</bool>
- <object class="BWAnchoredButtonCell" key="NSCell" id="907979979">
- <int key="NSCellFlags">67239424</int>
- <int key="NSCellFlags2">134348800</int>
- <string key="NSContents"/>
- <reference key="NSSupport" ref="26"/>
- <reference key="NSControlView" ref="940658689"/>
- <int key="NSButtonFlags">-2033958657</int>
- <int key="NSButtonFlags2">163</int>
- <reference key="NSNormalImage" ref="111139599"/>
- <string key="NSAlternateContents"/>
- <string key="NSKeyEquivalent"/>
- <int key="NSPeriodicDelay">200</int>
- <int key="NSPeriodicInterval">25</int>
- </object>
- </object>
- <object class="BWAnchoredButton" id="479944752">
- <reference key="NSNextResponder" ref="863012065"/>
- <int key="NSvFlags">292</int>
- <string key="NSFrame">{{30, 0}, {32, 24}}</string>
- <reference key="NSSuperview" ref="863012065"/>
- <bool key="NSEnabled">YES</bool>
- <object class="BWAnchoredButtonCell" key="NSCell" id="380225923">
- <int key="NSCellFlags">67239424</int>
- <int key="NSCellFlags2">134348800</int>
- <string key="NSContents"/>
- <reference key="NSSupport" ref="26"/>
- <reference key="NSControlView" ref="479944752"/>
- <int key="NSButtonFlags">-2033958657</int>
- <int key="NSButtonFlags2">163</int>
- <object class="NSCustomResource" key="NSNormalImage">
- <string key="NSClassName">NSImage</string>
- <string key="NSResourceName">NSRemoveTemplate</string>
- </object>
- <string key="NSAlternateContents"/>
- <string key="NSKeyEquivalent"/>
- <int key="NSPeriodicDelay">200</int>
- <int key="NSPeriodicInterval">25</int>
- </object>
- </object>
- <object class="NSButton" id="317791161">
- <reference key="NSNextResponder" ref="863012065"/>
- <int key="NSvFlags">289</int>
- <string key="NSFrame">{{339, 3}, {60, 17}}</string>
- <reference key="NSSuperview" ref="863012065"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSButtonCell" key="NSCell" id="427625960">
- <int key="NSCellFlags">-2080244224</int>
- <int key="NSCellFlags2">134348800</int>
- <string key="NSContents">Close</string>
- <reference key="NSSupport" ref="26"/>
- <reference key="NSControlView" ref="317791161"/>
- <int key="NSButtonFlags">-2038152961</int>
- <int key="NSButtonFlags2">164</int>
- <string key="NSAlternateContents"/>
- <string key="NSKeyEquivalent"/>
- <int key="NSPeriodicDelay">400</int>
- <int key="NSPeriodicInterval">75</int>
- </object>
- </object>
- </object>
- <string key="NSFrame">{{0, -1}, {419, 24}}</string>
- <reference key="NSSuperview" ref="778680541"/>
- <bool key="BWABBIsResizable">NO</bool>
- <bool key="BWABBIsAtBottom">NO</bool>
- <bool key="BWABBHandleIsRightAligned">NO</bool>
- <int key="BWABBSelectedIndex">2</int>
- </object>
- </object>
- <string key="NSFrameSize">{418, 200}</string>
- </object>
- <string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
- <string key="NSMinSize">{213, 147}</string>
- <string key="NSMaxSize">{3.40282e+38, 3.40282e+38}</string>
- </object>
<object class="NSWindowTemplate" id="1066802919">
<int key="NSWindowStyleMask">3</int>
<int key="NSWindowBacking">2</int>
@@ -9057,119 +8839,106 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="NSMinSize">{350, 272}</string>
<string key="NSMaxSize">{3.40282e+38, 3.40282e+38}</string>
</object>
- <object class="NSWindowTemplate" id="1941">
- <int key="NSWindowStyleMask">17</int>
+ <object class="NSWindowTemplate" id="434046103">
+ <int key="NSWindowStyleMask">9</int>
<int key="NSWindowBacking">2</int>
- <string key="NSWindowRect">{{196, 380}, {287, 130}}</string>
- <int key="NSWTFlags">-1543503872</int>
- <string key="NSWindowTitle">Window</string>
- <string key="NSWindowClass">NSPanel</string>
- <nil key="NSViewClass"/>
- <object class="NSView" key="NSWindowView" id="508398250">
- <reference key="NSNextResponder"/>
+ <string key="NSWindowRect">{{343, 483}, {260, 112}}</string>
+ <int key="NSWTFlags">1886912512</int>
+ <string key="NSWindowTitle">Query Favorite Sheet</string>
+ <string key="NSWindowClass">NSWindow</string>
+ <object class="NSMutableString" key="NSViewClass">
+ <characters key="NS.bytes">View</characters>
+ </object>
+ <string key="NSWindowContentMaxSize">{600, 112}</string>
+ <string key="NSWindowContentMinSize">{260, 112}</string>
+ <object class="NSView" key="NSWindowView" id="965040184">
+ <nil key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSButton" id="704301422">
- <reference key="NSNextResponder" ref="508398250"/>
- <int key="NSvFlags">268</int>
- <string key="NSFrame">{{177, 11}, {96, 32}}</string>
- <reference key="NSSuperview" ref="508398250"/>
+ <object class="NSTextField" id="9909652">
+ <reference key="NSNextResponder" ref="965040184"/>
+ <int key="NSvFlags">266</int>
+ <string key="NSFrame">{{17, 78}, {235, 14}}</string>
+ <reference key="NSSuperview" ref="965040184"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="582381689">
+ <int key="NSCellFlags">67239488</int>
+ <int key="NSCellFlags2">4196864</int>
+ <string key="NSContents">Query Name:</string>
+ <reference key="NSSupport" ref="26"/>
+ <reference key="NSControlView" ref="9909652"/>
+ <reference key="NSBackgroundColor" ref="62854682"/>
+ <reference key="NSTextColor" ref="454249633"/>
+ </object>
+ </object>
+ <object class="NSTextField" id="718519704">
+ <reference key="NSNextResponder" ref="965040184"/>
+ <int key="NSvFlags">258</int>
+ <string key="NSFrame">{{20, 52}, {220, 18}}</string>
+ <reference key="NSSuperview" ref="965040184"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="341924224">
+ <int key="NSCellFlags">-1804468671</int>
+ <int key="NSCellFlags2">4326400</int>
+ <string key="NSContents"/>
+ <reference key="NSSupport" ref="26"/>
+ <reference key="NSControlView" ref="718519704"/>
+ <bool key="NSDrawsBackground">YES</bool>
+ <reference key="NSBackgroundColor" ref="480189472"/>
+ <reference key="NSTextColor" ref="690893883"/>
+ </object>
+ </object>
+ <object class="NSButton" id="168275019">
+ <reference key="NSNextResponder" ref="965040184"/>
+ <int key="NSvFlags">289</int>
+ <string key="NSFrame">{{166, 13}, {79, 28}}</string>
+ <reference key="NSSuperview" ref="965040184"/>
<int key="NSTag">1</int>
<bool key="NSEnabled">YES</bool>
- <object class="NSButtonCell" key="NSCell" id="1065111735">
- <int key="NSCellFlags">67239424</int>
- <int key="NSCellFlags2">134217728</int>
- <string key="NSContents">OK</string>
- <reference key="NSSupport" ref="244931163"/>
- <reference key="NSControlView" ref="704301422"/>
+ <object class="NSButtonCell" key="NSCell" id="434997641">
+ <int key="NSCellFlags">604110336</int>
+ <int key="NSCellFlags2">138018816</int>
+ <string key="NSContents">Save</string>
+ <reference key="NSSupport" ref="26"/>
+ <int key="NSTag">1</int>
+ <reference key="NSControlView" ref="168275019"/>
<int key="NSButtonFlags">-2038284033</int>
- <int key="NSButtonFlags2">129</int>
+ <int key="NSButtonFlags2">1</int>
+ <reference key="NSAlternateImage" ref="932958253"/>
<string key="NSAlternateContents"/>
<string type="base64-UTF8" key="NSKeyEquivalent">DQ</string>
<int key="NSPeriodicDelay">200</int>
<int key="NSPeriodicInterval">25</int>
</object>
</object>
- <object class="NSButton" id="268491146">
- <reference key="NSNextResponder" ref="508398250"/>
- <int key="NSvFlags">268</int>
- <string key="NSFrame">{{74, 11}, {96, 32}}</string>
- <reference key="NSSuperview" ref="508398250"/>
+ <object class="NSButton" id="677710001">
+ <reference key="NSNextResponder" ref="965040184"/>
+ <int key="NSvFlags">257</int>
+ <string key="NSFrame">{{91, 13}, {77, 28}}</string>
+ <reference key="NSSuperview" ref="965040184"/>
<bool key="NSEnabled">YES</bool>
- <object class="NSButtonCell" key="NSCell" id="940328931">
- <int key="NSCellFlags">-2080244224</int>
- <int key="NSCellFlags2">134217728</int>
+ <object class="NSButtonCell" key="NSCell" id="50497565">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">138018816</int>
<string key="NSContents">Cancel</string>
- <reference key="NSSupport" ref="244931163"/>
- <reference key="NSControlView" ref="268491146"/>
+ <reference key="NSSupport" ref="26"/>
+ <reference key="NSControlView" ref="677710001"/>
<int key="NSButtonFlags">-2038284033</int>
- <int key="NSButtonFlags2">129</int>
+ <int key="NSButtonFlags2">1</int>
+ <reference key="NSAlternateImage" ref="932958253"/>
<string key="NSAlternateContents"/>
<string type="base64-UTF8" key="NSKeyEquivalent">Gw</string>
<int key="NSPeriodicDelay">200</int>
<int key="NSPeriodicInterval">25</int>
</object>
</object>
- <object class="NSSecureTextField" id="724880203">
- <reference key="NSNextResponder" ref="508398250"/>
- <int key="NSvFlags">268</int>
- <string key="NSFrame">{{20, 47}, {247, 22}}</string>
- <reference key="NSSuperview" ref="508398250"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSSecureTextFieldCell" key="NSCell" id="408366632">
- <int key="NSCellFlags">343014976</int>
- <int key="NSCellFlags2">272630784</int>
- <string key="NSContents"/>
- <reference key="NSSupport" ref="244931163"/>
- <reference key="NSControlView" ref="724880203"/>
- <bool key="NSDrawsBackground">YES</bool>
- <reference key="NSBackgroundColor" ref="480189472"/>
- <reference key="NSTextColor" ref="690893883"/>
- <object class="NSArray" key="NSAllowedInputLocales">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>NSAllRomanInputSourcesLocaleIdentifier</string>
- </object>
- </object>
- </object>
- <object class="NSTextField" id="846087801">
- <reference key="NSNextResponder" ref="508398250"/>
- <int key="NSvFlags">268</int>
- <string key="NSFrame">{{17, 99}, {257, 17}}</string>
- <reference key="NSSuperview" ref="508398250"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSTextFieldCell" key="NSCell" id="697615126">
- <int key="NSCellFlags">68288064</int>
- <int key="NSCellFlags2">1077937152</int>
- <string key="NSContents">123</string>
- <reference key="NSSupport" ref="244931163"/>
- <reference key="NSControlView" ref="846087801"/>
- <reference key="NSBackgroundColor" ref="62854682"/>
- <reference key="NSTextColor" ref="454249633"/>
- </object>
- </object>
- <object class="NSTextField" id="159544894">
- <reference key="NSNextResponder" ref="508398250"/>
- <int key="NSvFlags">268</int>
- <string key="NSFrame">{{17, 77}, {256, 14}}</string>
- <reference key="NSSuperview" ref="508398250"/>
- <bool key="NSEnabled">YES</bool>
- <object class="NSTextFieldCell" key="NSCell" id="367468456">
- <int key="NSCellFlags">68288064</int>
- <int key="NSCellFlags2">272761856</int>
- <string key="NSContents">123</string>
- <reference key="NSSupport" ref="26"/>
- <reference key="NSControlView" ref="159544894"/>
- <reference key="NSBackgroundColor" ref="62854682"/>
- <reference key="NSTextColor" ref="454249633"/>
- </object>
- </object>
</object>
- <string key="NSFrameSize">{287, 130}</string>
- <reference key="NSSuperview"/>
+ <string key="NSFrameSize">{260, 112}</string>
</object>
- <string key="NSScreenRect">{{0, 0}, {1280, 1002}}</string>
- <string key="NSMaxSize">{3.40282e+38, 3.40282e+38}</string>
+ <string key="NSScreenRect">{{0, 0}, {1680, 1028}}</string>
+ <string key="NSMinSize">{260, 134}</string>
+ <string key="NSMaxSize">{600, 134}</string>
</object>
<object class="NSCustomView" id="139279766">
<nil key="NSNextResponder"/>
@@ -11555,10 +11324,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string key="NSClassName">NSView</string>
</object>
<object class="NSUserDefaultsController" id="461189245">
- <object class="NSMutableArray" key="NSDeclaredKeys">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>_dummy</string>
- </object>
<bool key="NSSharedInstance">YES</bool>
</object>
<object class="NSCustomObject" id="601471102">
@@ -12271,38 +12036,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
- <string key="label">delegate</string>
- <reference key="source" ref="292088665"/>
- <reference key="destination" ref="601471102"/>
- </object>
- <int key="connectionID">737</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
- <string key="label">queryFavoritesView</string>
- <reference key="source" ref="601471102"/>
- <reference key="destination" ref="292088665"/>
- </object>
- <int key="connectionID">738</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
- <string key="label">queryFavoritesSheet</string>
- <reference key="source" ref="601471102"/>
- <reference key="destination" ref="99553177"/>
- </object>
- <int key="connectionID">739</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
- <string key="label">dataSource</string>
- <reference key="source" ref="292088665"/>
- <reference key="destination" ref="601471102"/>
- </object>
- <int key="connectionID">746</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
<string key="label">customQueryInstance</string>
<reference key="source" ref="438574515"/>
<reference key="destination" ref="601471102"/>
@@ -14542,38 +14275,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<int key="connectionID">6088</int>
</object>
<object class="IBConnectionRecord">
- <object class="IBActionConnection" key="connection">
- <string key="label">closeQueryFavoritesSheet:</string>
- <reference key="source" ref="601471102"/>
- <reference key="destination" ref="317791161"/>
- </object>
- <int key="connectionID">6111</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBActionConnection" key="connection">
- <string key="label">addQueryFavorite:</string>
- <reference key="source" ref="601471102"/>
- <reference key="destination" ref="940658689"/>
- </object>
- <int key="connectionID">6112</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBActionConnection" key="connection">
- <string key="label">removeQueryFavorite:</string>
- <reference key="source" ref="601471102"/>
- <reference key="destination" ref="479944752"/>
- </object>
- <int key="connectionID">6113</int>
- </object>
- <object class="IBConnectionRecord">
- <object class="IBActionConnection" key="connection">
- <string key="label">copyQueryFavorite:</string>
- <reference key="source" ref="601471102"/>
- <reference key="destination" ref="1008066768"/>
- </object>
- <int key="connectionID">6114</int>
- </object>
- <object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">singleProgressBar</string>
<reference key="source" ref="225526897"/>
@@ -15339,84 +15040,59 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
- <string key="label">inputTextWindowHeader</string>
- <reference key="source" ref="427689665"/>
- <reference key="destination" ref="846087801"/>
+ <string key="label">queryFavoritesSheet</string>
+ <reference key="source" ref="601471102"/>
+ <reference key="destination" ref="434046103"/>
</object>
- <int key="connectionID">6417</int>
+ <int key="connectionID">6415</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
- <string key="label">inputTextWindowMessage</string>
- <reference key="source" ref="427689665"/>
- <reference key="destination" ref="159544894"/>
+ <string key="label">queryFavoriteNameTextField</string>
+ <reference key="source" ref="601471102"/>
+ <reference key="destination" ref="718519704"/>
</object>
- <int key="connectionID">6418</int>
+ <int key="connectionID">6416</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
- <string key="label">inputTextWindowSecureTextField</string>
- <reference key="source" ref="427689665"/>
- <reference key="destination" ref="724880203"/>
+ <string key="label">delegate</string>
+ <reference key="source" ref="718519704"/>
+ <reference key="destination" ref="601471102"/>
</object>
- <int key="connectionID">6419</int>
+ <int key="connectionID">6417</int>
</object>
<object class="IBConnectionRecord">
- <object class="IBOutletConnection" key="connection">
- <string key="label">inputTextWindow</string>
- <reference key="source" ref="427689665"/>
- <reference key="destination" ref="1941"/>
+ <object class="IBActionConnection" key="connection">
+ <string key="label">closeSheet:</string>
+ <reference key="source" ref="601471102"/>
+ <reference key="destination" ref="677710001"/>
</object>
- <int key="connectionID">6422</int>
+ <int key="connectionID">6418</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
- <string key="label">closePasswordSheet:</string>
- <reference key="source" ref="427689665"/>
- <reference key="destination" ref="704301422"/>
+ <string key="label">closeSheet:</string>
+ <reference key="source" ref="601471102"/>
+ <reference key="destination" ref="168275019"/>
</object>
- <int key="connectionID">6423</int>
+ <int key="connectionID">6419</int>
</object>
<object class="IBConnectionRecord">
- <object class="IBActionConnection" key="connection">
- <string key="label">closePasswordSheet:</string>
- <reference key="source" ref="427689665"/>
- <reference key="destination" ref="268491146"/>
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">saveQueryFavoriteButton</string>
+ <reference key="source" ref="601471102"/>
+ <reference key="destination" ref="168275019"/>
</object>
- <int key="connectionID">6424</int>
+ <int key="connectionID">6420</int>
</object>
<object class="IBConnectionRecord">
- <object class="IBBindingConnection" key="connection">
- <string key="label">fontBold: values._dummy</string>
- <reference key="source" ref="846087801"/>
- <reference key="destination" ref="461189245"/>
- <object class="NSNibBindingConnector" key="connector">
- <reference key="NSSource" ref="846087801"/>
- <reference key="NSDestination" ref="461189245"/>
- <string key="NSLabel">fontBold: values._dummy</string>
- <string key="NSBinding">fontBold</string>
- <string key="NSKeyPath">values._dummy</string>
- <object class="NSDictionary" key="NSOptions">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSMutableArray" key="dict.sortedKeys">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>NSMultipleValuesPlaceholder</string>
- <string>NSNoSelectionPlaceholder</string>
- <string>NSNotApplicablePlaceholder</string>
- <string>NSNullPlaceholder</string>
- </object>
- <object class="NSMutableArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="9"/>
- <reference ref="9"/>
- <reference ref="9"/>
- <reference ref="9"/>
- </object>
- </object>
- <int key="NSNibBindingConnectorVersion">2</int>
- </object>
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">delegate</string>
+ <reference key="source" ref="960790892"/>
+ <reference key="destination" ref="601471102"/>
</object>
- <int key="connectionID">6436</int>
+ <int key="connectionID">6421</int>
</object>
</object>
<object class="IBMutableOrderedSet" key="objectRecords">
@@ -15827,56 +15503,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference key="parent" ref="271089627"/>
</object>
<object class="IBObjectRecord">
- <int key="objectID">724</int>
- <reference key="object" ref="99553177"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="778680541"/>
- </object>
- <reference key="parent" ref="1043842561"/>
- <string key="objectName">Query Favorites Sheet</string>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">725</int>
- <reference key="object" ref="778680541"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="863012065"/>
- <reference ref="597878738"/>
- </object>
- <reference key="parent" ref="99553177"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">730</int>
- <reference key="object" ref="597878738"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="292088665"/>
- <reference ref="4739239"/>
- <reference ref="87044874"/>
- <reference ref="50612883"/>
- </object>
- <reference key="parent" ref="778680541"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">735</int>
- <reference key="object" ref="292088665"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="413853564"/>
- </object>
- <reference key="parent" ref="597878738"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">728</int>
- <reference key="object" ref="413853564"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="180726999"/>
- </object>
- <reference key="parent" ref="292088665"/>
- </object>
- <object class="IBObjectRecord">
<int key="objectID">815</int>
<reference key="object" ref="139279766"/>
<object class="NSMutableArray" key="children">
@@ -16759,11 +16385,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference key="parent" ref="856067573"/>
</object>
<object class="IBObjectRecord">
- <int key="objectID">3904</int>
- <reference key="object" ref="180726999"/>
- <reference key="parent" ref="413853564"/>
- </object>
- <object class="IBObjectRecord">
<int key="objectID">3905</int>
<reference key="object" ref="404029620"/>
<reference key="parent" ref="210880604"/>
@@ -16878,16 +16499,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference key="parent" ref="271089627"/>
</object>
<object class="IBObjectRecord">
- <int key="objectID">3941</int>
- <reference key="object" ref="4739239"/>
- <reference key="parent" ref="597878738"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">3942</int>
- <reference key="object" ref="87044874"/>
- <reference key="parent" ref="597878738"/>
- </object>
- <object class="IBObjectRecord">
<int key="objectID">3946</int>
<reference key="object" ref="297298990"/>
<reference key="parent" ref="294857516"/>
@@ -18379,9 +17990,9 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="923183582"/>
- <reference ref="829073375"/>
<reference ref="5128219"/>
<reference ref="560786252"/>
+ <reference ref="17413925"/>
</object>
<reference key="parent" ref="416049103"/>
</object>
@@ -18391,11 +18002,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference key="parent" ref="960790892"/>
</object>
<object class="IBObjectRecord">
- <int key="objectID">1179</int>
- <reference key="object" ref="829073375"/>
- <reference key="parent" ref="960790892"/>
- </object>
- <object class="IBObjectRecord">
<int key="objectID">1180</int>
<reference key="object" ref="5128219"/>
<reference key="parent" ref="960790892"/>
@@ -20747,79 +20353,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference key="parent" ref="992507944"/>
</object>
<object class="IBObjectRecord">
- <int key="objectID">6094</int>
- <reference key="object" ref="863012065"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="940658689"/>
- <reference ref="479944752"/>
- <reference ref="1008066768"/>
- <reference ref="317791161"/>
- </object>
- <reference key="parent" ref="778680541"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6102</int>
- <reference key="object" ref="50612883"/>
- <reference key="parent" ref="597878738"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6107</int>
- <reference key="object" ref="1008066768"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="158724653"/>
- </object>
- <reference key="parent" ref="863012065"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6108</int>
- <reference key="object" ref="158724653"/>
- <reference key="parent" ref="1008066768"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6100</int>
- <reference key="object" ref="940658689"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="907979979"/>
- </object>
- <reference key="parent" ref="863012065"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6101</int>
- <reference key="object" ref="907979979"/>
- <reference key="parent" ref="940658689"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6103</int>
- <reference key="object" ref="479944752"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="380225923"/>
- </object>
- <reference key="parent" ref="863012065"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6104</int>
- <reference key="object" ref="380225923"/>
- <reference key="parent" ref="479944752"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6109</int>
- <reference key="object" ref="317791161"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="427625960"/>
- </object>
- <reference key="parent" ref="863012065"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6110</int>
- <reference key="object" ref="427625960"/>
- <reference key="parent" ref="317791161"/>
- </object>
- <object class="IBObjectRecord">
<int key="objectID">6116</int>
<reference key="object" ref="770676933"/>
<object class="NSMutableArray" key="children">
@@ -21642,96 +21175,86 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">6405</int>
- <reference key="object" ref="1941"/>
+ <reference key="object" ref="434046103"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="508398250"/>
+ <reference ref="965040184"/>
</object>
<reference key="parent" ref="1043842561"/>
- <string key="objectName">Secure TextInput</string>
+ <string key="objectName">Query Favorite Sheet</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">6406</int>
- <reference key="object" ref="508398250"/>
+ <reference key="object" ref="965040184"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="268491146"/>
- <reference ref="704301422"/>
- <reference ref="724880203"/>
- <reference ref="159544894"/>
- <reference ref="846087801"/>
+ <reference ref="677710001"/>
+ <reference ref="718519704"/>
+ <reference ref="9909652"/>
+ <reference ref="168275019"/>
</object>
- <reference key="parent" ref="1941"/>
+ <reference key="parent" ref="434046103"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">6407</int>
- <reference key="object" ref="704301422"/>
+ <reference key="object" ref="677710001"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="1065111735"/>
+ <reference ref="50497565"/>
</object>
- <reference key="parent" ref="508398250"/>
+ <reference key="parent" ref="965040184"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">6408</int>
- <reference key="object" ref="1065111735"/>
- <reference key="parent" ref="704301422"/>
+ <reference key="object" ref="718519704"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="341924224"/>
+ </object>
+ <reference key="parent" ref="965040184"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">6409</int>
- <reference key="object" ref="268491146"/>
+ <reference key="object" ref="9909652"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="940328931"/>
+ <reference ref="582381689"/>
</object>
- <reference key="parent" ref="508398250"/>
+ <reference key="parent" ref="965040184"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">6410</int>
- <reference key="object" ref="940328931"/>
- <reference key="parent" ref="268491146"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6411</int>
- <reference key="object" ref="724880203"/>
+ <reference key="object" ref="168275019"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="408366632"/>
+ <reference ref="434997641"/>
</object>
- <reference key="parent" ref="508398250"/>
+ <reference key="parent" ref="965040184"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">6411</int>
+ <reference key="object" ref="434997641"/>
+ <reference key="parent" ref="168275019"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">6412</int>
- <reference key="object" ref="408366632"/>
- <reference key="parent" ref="724880203"/>
+ <reference key="object" ref="582381689"/>
+ <reference key="parent" ref="9909652"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">6413</int>
- <reference key="object" ref="846087801"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="697615126"/>
- </object>
- <reference key="parent" ref="508398250"/>
+ <reference key="object" ref="341924224"/>
+ <reference key="parent" ref="718519704"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">6414</int>
- <reference key="object" ref="697615126"/>
- <reference key="parent" ref="846087801"/>
+ <reference key="object" ref="50497565"/>
+ <reference key="parent" ref="677710001"/>
</object>
<object class="IBObjectRecord">
- <int key="objectID">6415</int>
- <reference key="object" ref="159544894"/>
- <object class="NSMutableArray" key="children">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <reference ref="367468456"/>
- </object>
- <reference key="parent" ref="508398250"/>
- </object>
- <object class="IBObjectRecord">
- <int key="objectID">6416</int>
- <reference key="object" ref="367468456"/>
- <reference key="parent" ref="159544894"/>
+ <int key="objectID">6422</int>
+ <reference key="object" ref="17413925"/>
+ <reference key="parent" ref="960790892"/>
</object>
</object>
</object>
@@ -21837,8 +21360,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string>1178.IBEditorWindowLastContentRect</string>
<string>1178.IBPluginDependency</string>
<string>1178.ImportedFromIB2</string>
- <string>1179.IBPluginDependency</string>
- <string>1179.ImportedFromIB2</string>
<string>1180.IBPluginDependency</string>
<string>1180.ImportedFromIB2</string>
<string>1181.IBPluginDependency</string>
@@ -22109,8 +21630,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string>3893.IBPluginDependency</string>
<string>3903.IBPluginDependency</string>
<string>3903.IBShouldRemoveOnLegacySave</string>
- <string>3904.IBPluginDependency</string>
- <string>3904.IBShouldRemoveOnLegacySave</string>
<string>3905.IBPluginDependency</string>
<string>3905.IBShouldRemoveOnLegacySave</string>
<string>3906.IBPluginDependency</string>
@@ -22163,10 +21682,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string>3939.IBShouldRemoveOnLegacySave</string>
<string>3940.IBPluginDependency</string>
<string>3940.IBShouldRemoveOnLegacySave</string>
- <string>3941.IBPluginDependency</string>
- <string>3941.IBShouldRemoveOnLegacySave</string>
- <string>3942.IBPluginDependency</string>
- <string>3942.IBShouldRemoveOnLegacySave</string>
<string>3946.IBPluginDependency</string>
<string>3946.IBShouldRemoveOnLegacySave</string>
<string>3947.IBPluginDependency</string>
@@ -22864,16 +22379,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string>6084.IBPluginDependency</string>
<string>6085.IBPluginDependency</string>
<string>6086.IBPluginDependency</string>
- <string>6094.IBPluginDependency</string>
- <string>6100.IBPluginDependency</string>
- <string>6101.IBPluginDependency</string>
- <string>6102.IBPluginDependency</string>
- <string>6103.IBPluginDependency</string>
- <string>6104.IBPluginDependency</string>
- <string>6107.IBPluginDependency</string>
- <string>6108.IBPluginDependency</string>
- <string>6109.IBPluginDependency</string>
- <string>6110.IBPluginDependency</string>
<string>6116.IBPluginDependency</string>
<string>6117.IBPluginDependency</string>
<string>6125.IBEditorWindowLastContentRect</string>
@@ -23006,20 +22511,27 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string>6384.IBPluginDependency</string>
<string>6385.IBPluginDependency</string>
<string>6405.IBEditorWindowLastContentRect</string>
- <string>6405.IBPluginDependency</string>
<string>6405.IBWindowTemplateEditedContentRect</string>
- <string>6405.NSWindowTemplate.visibleAtLaunch</string>
+ <string>6405.ImportedFromIB2</string>
+ <string>6405.windowTemplate.hasMaxSize</string>
+ <string>6405.windowTemplate.hasMinSize</string>
+ <string>6405.windowTemplate.maxSize</string>
+ <string>6405.windowTemplate.minSize</string>
<string>6406.IBPluginDependency</string>
+ <string>6406.ImportedFromIB2</string>
<string>6407.IBPluginDependency</string>
+ <string>6407.ImportedFromIB2</string>
<string>6408.IBPluginDependency</string>
+ <string>6408.ImportedFromIB2</string>
<string>6409.IBPluginDependency</string>
+ <string>6409.ImportedFromIB2</string>
<string>6410.IBPluginDependency</string>
+ <string>6410.ImportedFromIB2</string>
<string>6411.IBPluginDependency</string>
<string>6412.IBPluginDependency</string>
<string>6413.IBPluginDependency</string>
<string>6414.IBPluginDependency</string>
- <string>6415.IBPluginDependency</string>
- <string>6416.IBPluginDependency</string>
+ <string>6422.IBPluginDependency</string>
<string>654.IBPluginDependency</string>
<string>654.ImportedFromIB2</string>
<string>655.IBPluginDependency</string>
@@ -23067,22 +22579,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string>715.ImportedFromIB2</string>
<string>716.IBPluginDependency</string>
<string>716.ImportedFromIB2</string>
- <string>724.IBEditorWindowLastContentRect</string>
- <string>724.IBWindowTemplateEditedContentRect</string>
- <string>724.ImportedFromIB2</string>
- <string>724.windowTemplate.hasMaxSize</string>
- <string>724.windowTemplate.hasMinSize</string>
- <string>724.windowTemplate.maxSize</string>
- <string>724.windowTemplate.minSize</string>
- <string>725.IBPluginDependency</string>
- <string>725.ImportedFromIB2</string>
- <string>728.IBPluginDependency</string>
- <string>728.ImportedFromIB2</string>
- <string>730.IBAttributePlaceholdersKey</string>
- <string>730.IBPluginDependency</string>
- <string>730.ImportedFromIB2</string>
- <string>735.IBPluginDependency</string>
- <string>735.ImportedFromIB2</string>
<string>748.IBPluginDependency</string>
<string>748.ImportedFromIB2</string>
<string>749.IBPluginDependency</string>
@@ -23371,8 +22867,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <reference ref="9"/>
<object class="NSMutableDictionary">
<string key="NS.key.0">ToolTip</string>
<object class="IBToolTipAttribute" key="NS.object.0">
@@ -23774,12 +23268,6 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <reference ref="9"/>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <reference ref="9"/>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <reference ref="9"/>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -24048,9 +23536,9 @@ IGRvIHlvdSB3YW50IHRvIGFkZCBmb3IgdGhpcyBmaWVsZD8</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string>{{78, 178}, {944, 550}}</string>
- <boolean value="NO" id="6"/>
- <string>{{78, 178}, {944, 550}}</string>
+ <string>{{94, 422}, {944, 550}}</string>
+ <boolean value="NO"/>
+ <string>{{94, 422}, {944, 550}}</string>
<reference ref="9"/>
<reference ref="9"/>
<string>{{62, 352}, {845, 504}}</string>
@@ -24216,7 +23704,7 @@ aGUgYWN0aXZlIHNlbGVjdGlvbiAo4oyl4oyYUik</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string>{{448, 381}, {236, 305}}</string>
+ <string>{{303, 496}, {236, 305}}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -24494,8 +23982,8 @@ aGUgYWN0aXZlIHNlbGVjdGlvbiAo4oyl4oyYUik</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string>{{695, 423}, {260, 112}}</string>
- <string>{{695, 423}, {260, 112}}</string>
+ <string>{{654, 442}, {260, 112}}</string>
+ <string>{{654, 442}, {260, 112}}</string>
<reference ref="9"/>
<reference ref="5"/>
<reference ref="9"/>
@@ -24623,16 +24111,6 @@ aGUgYWN0aXZlIHNlbGVjdGlvbiAo4oyl4oyYUik</string>
<string>com.brandonwalkin.BWToolkit</string>
<string>com.brandonwalkin.BWToolkit</string>
<string>com.brandonwalkin.BWToolkit</string>
- <string>com.brandonwalkin.BWToolkit</string>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string>com.brandonwalkin.BWToolkit</string>
- <string>com.brandonwalkin.BWToolkit</string>
- <string>com.brandonwalkin.BWToolkit</string>
- <string>com.brandonwalkin.BWToolkit</string>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string>com.brandonwalkin.BWToolkit</string>
- <string>com.brandonwalkin.BWToolkit</string>
<string>{{717, 615}, {379, 139}}</string>
<string>{{717, 615}, {379, 139}}</string>
<reference ref="5"/>
@@ -24860,16 +24338,23 @@ aGUgYWN0aXZlIHNlbGVjdGlvbiAo4oyl4oyYUik</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string>{{649, 617}, {287, 130}}</string>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <string>{{649, 617}, {287, 130}}</string>
- <reference ref="6"/>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>{{869, 432}, {260, 112}}</string>
+ <string>{{869, 432}, {260, 112}}</string>
+ <reference ref="9"/>
+ <reference ref="5"/>
+ <reference ref="9"/>
+ <string>{600, 112}</string>
+ <string>{260, 112}</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -24922,30 +24407,6 @@ aGUgYWN0aXZlIHNlbGVjdGlvbiAo4oyl4oyYUik</string>
<reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
- <string>{{570, 250}, {418, 200}}</string>
- <string>{{570, 250}, {418, 200}}</string>
- <reference ref="9"/>
- <reference ref="8"/>
- <reference ref="9"/>
- <string>{3.40282e+38, 3.40282e+38}</string>
- <string>{213, 125}</string>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <reference ref="9"/>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <reference ref="9"/>
- <object class="NSMutableDictionary">
- <string key="NS.key.0">ToolTip</string>
- <object class="IBToolTipAttribute" key="NS.object.0">
- <string key="name">ToolTip</string>
- <reference key="object" ref="597878738"/>
- <string type="base64-UTF8" key="toolTip">RWRpdCBhIGZhdm9yaXRlIGJ5IGRvdWJsZS1jbGlja2luZyBvbiBpdCBvciBkcmFnJmRyb3AgaXQgdG8g
-Y2hhbmdlIHRoZSBvcmRlcg</string>
- </object>
- </object>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <reference ref="9"/>
- <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
- <reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="9"/>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -25095,7 +24556,7 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
</object>
</object>
<nil key="sourceID"/>
- <int key="maxID">6436</int>
+ <int key="maxID">6422</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
@@ -25166,12 +24627,9 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
- <string>addQueryFavorite:</string>
<string>chooseQueryFavorite:</string>
<string>chooseQueryHistory:</string>
- <string>closeQueryFavoritesSheet:</string>
<string>closeSheet:</string>
- <string>copyQueryFavorite:</string>
<string>gearMenuItemSelected:</string>
<string>helpSearchFindNextInPage:</string>
<string>helpSearchFindPreviousInPage:</string>
@@ -25180,7 +24638,6 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<string>helpSelectHelpTargetPage:</string>
<string>helpSelectHelpTargetWeb:</string>
<string>helpTargetDispatcher:</string>
- <string>removeQueryFavorite:</string>
<string>runAllQueries:</string>
<string>runSelectedQueries:</string>
<string>showHelpForCurrentWord:</string>
@@ -25203,10 +24660,6 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<string>id</string>
<string>id</string>
<string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
</object>
</object>
<object class="NSMutableDictionary" key="outlets">
@@ -25222,7 +24675,6 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<string>commentCurrentQueryMenuItem</string>
<string>commentLineOrSelectionMenuItem</string>
<string>completionListMenuItem</string>
- <string>copyQueryFavoriteButton</string>
<string>customQueryView</string>
<string>editorFontMenuItem</string>
<string>errorText</string>
@@ -25233,14 +24685,14 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<string>helpWebView</string>
<string>helpWebViewWindow</string>
<string>multipleLineEditingButton</string>
+ <string>queryFavoriteNameTextField</string>
<string>queryFavoritesButton</string>
<string>queryFavoritesSheet</string>
- <string>queryFavoritesView</string>
<string>queryHistoryButton</string>
- <string>removeQueryFavoriteButton</string>
<string>runAllButton</string>
<string>runSelectionButton</string>
<string>runSelectionMenuItem</string>
+ <string>saveQueryFavoriteButton</string>
<string>shiftLeftMenuItem</string>
<string>shiftRightMenuItem</string>
<string>tableDocumentInstance</string>
@@ -25260,7 +24712,6 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<string>NSMenuItem</string>
<string>NSMenuItem</string>
<string>NSMenuItem</string>
- <string>id</string>
<string>CMCopyTable</string>
<string>NSMenuItem</string>
<string>id</string>
@@ -25271,14 +24722,14 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<string>WebView</string>
<string>NSWindow</string>
<string>id</string>
+ <string>NSTextField</string>
<string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
+ <string>NSWindow</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>NSMenuItem</string>
+ <string>NSButton</string>
<string>NSMenuItem</string>
<string>NSMenuItem</string>
<string>id</string>
@@ -25359,6 +24810,13 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
</object>
<object class="IBPartialClassDescription">
<string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">Source/SPQueryFavoriteManager.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
<object class="NSMutableDictionary" key="actions">
<string key="NS.key.0">toggleCollapse:</string>
<string key="NS.object.0">id</string>
@@ -25846,6 +25304,7 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<string>chooseEncoding:</string>
<string>closeDatabaseSheet:</string>
<string>closeErrorConnectionSheet:</string>
+ <string>closePasswordSheet:</string>
<string>closeSheet:</string>
<string>copyCreateTableSyntax:</string>
<string>export:</string>
@@ -25854,10 +25313,10 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<string>flushPrivileges:</string>
<string>flushTable:</string>
<string>import:</string>
- <string>openConnectionSheet:</string>
<string>optimizeTable:</string>
<string>removeDatabase:</string>
<string>repairTable:</string>
+ <string>saveConnectionAccessoryPasswordButton:</string>
<string>saveConnectionSheet:</string>
<string>saveServerVariables:</string>
<string>setDatabases:</string>
@@ -25906,6 +25365,7 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<string>id</string>
<string>id</string>
<string>id</string>
+ <string>id</string>
</object>
</object>
<object class="NSMutableDictionary" key="outlets">
@@ -25924,13 +25384,24 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<string>databaseNameField</string>
<string>databaseSheet</string>
<string>dbTablesTableView</string>
- <string>encodingAccessoryView</string>
<string>encodingPopUp</string>
<string>extendedTableInfoInstance</string>
<string>favoritesButton</string>
<string>historyControl</string>
+ <string>inputTextWindow</string>
+ <string>inputTextWindowHeader</string>
+ <string>inputTextWindowMessage</string>
+ <string>inputTextWindowSecureTextField</string>
<string>listFilterField</string>
<string>queryProgressBar</string>
+ <string>saveConnectionAccessory</string>
+ <string>saveConnectionAutoConnect</string>
+ <string>saveConnectionEncrypt</string>
+ <string>saveConnectionEncryptString</string>
+ <string>saveConnectionIncludeData</string>
+ <string>saveConnectionIncludeQuery</string>
+ <string>saveConnectionSavePassword</string>
+ <string>saveConnectionSavePasswordAlert</string>
<string>saveVariablesButton</string>
<string>sidebarGrabber</string>
<string>spExportControllerInstance</string>
@@ -25970,13 +25441,24 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
<string>id</string>
<string>id</string>
<string>NSTableView</string>
- <string>id</string>
<string>NSPopUpButton</string>
<string>id</string>
<string>id</string>
<string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
<string>NSSearchField</string>
<string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>NSSecureTextField</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
<string>NSButton</string>
<string>id</string>
<string>id</string>
@@ -26396,205 +25878,6 @@ Y2hhbmdlIHRoZSBvcmRlcg</string>
</object>
</object>
</object>
- <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.1+">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="IBPartialClassDescription">
- <string key="className">TableDocument</string>
- <string key="superclassName">NSDocument</string>
- <object class="NSMutableDictionary" key="actions">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSMutableArray" key="dict.sortedKeys">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>addConnectionToFavorites:</string>
- <string>addDatabase:</string>
- <string>analyzeTable:</string>
- <string>checkTable:</string>
- <string>checksumTable:</string>
- <string>chooseDatabase:</string>
- <string>chooseEncoding:</string>
- <string>closeDatabaseSheet:</string>
- <string>closeErrorConnectionSheet:</string>
- <string>closePasswordSheet:</string>
- <string>closeSheet:</string>
- <string>copyCreateTableSyntax:</string>
- <string>export:</string>
- <string>exportMultipleTables:</string>
- <string>exportTable:</string>
- <string>flushPrivileges:</string>
- <string>flushTable:</string>
- <string>import:</string>
- <string>optimizeTable:</string>
- <string>removeDatabase:</string>
- <string>repairTable:</string>
- <string>saveConnectionAccessoryPasswordButton:</string>
- <string>saveConnectionSheet:</string>
- <string>saveServerVariables:</string>
- <string>setDatabases:</string>
- <string>showCreateTableSyntax:</string>
- <string>showMySQLHelp:</string>
- <string>showUserManager:</string>
- <string>showVariables:</string>
- <string>viewContent:</string>
- <string>viewQuery:</string>
- <string>viewRelations:</string>
- <string>viewStatus:</string>
- <string>viewStructure:</string>
- </object>
- <object class="NSMutableArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- </object>
- </object>
- <object class="NSMutableDictionary" key="outlets">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <object class="NSMutableArray" key="dict.sortedKeys">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>addDatabaseButton</string>
- <string>chooseDatabaseButton</string>
- <string>connectionErrorDialog</string>
- <string>contentViewSplitter</string>
- <string>createTableSyntaxWindow</string>
- <string>customQueryInstance</string>
- <string>customQueryTextView</string>
- <string>databaseDataInstance</string>
- <string>databaseEncodingButton</string>
- <string>databaseNameField</string>
- <string>databaseSheet</string>
- <string>dbTablesTableView</string>
- <string>encodingPopUp</string>
- <string>extendedTableInfoInstance</string>
- <string>favoritesButton</string>
- <string>historyControl</string>
- <string>inputTextWindow</string>
- <string>inputTextWindowHeader</string>
- <string>inputTextWindowMessage</string>
- <string>inputTextWindowSecureTextField</string>
- <string>listFilterField</string>
- <string>queryProgressBar</string>
- <string>saveConnectionAccessory</string>
- <string>saveConnectionEncrypt</string>
- <string>saveConnectionEncryptString</string>
- <string>saveConnectionIncludeData</string>
- <string>saveConnectionSavePassword</string>
- <string>saveVariablesButton</string>
- <string>sidebarGrabber</string>
- <string>spExportControllerInstance</string>
- <string>spHistoryControllerInstance</string>
- <string>syntaxView</string>
- <string>syntaxViewContent</string>
- <string>tableContentInstance</string>
- <string>tableDataInstance</string>
- <string>tableDumpInstance</string>
- <string>tableInfoCollapseButton</string>
- <string>tableInfoTable</string>
- <string>tableListSplitter</string>
- <string>tableRelationsInstance</string>
- <string>tableSourceInstance</string>
- <string>tableTabView</string>
- <string>tableWindow</string>
- <string>tablesListInstance</string>
- <string>titleAccessoryView</string>
- <string>titleImageView</string>
- <string>titleStringView</string>
- <string>variablesCountTextField</string>
- <string>variablesSearchField</string>
- <string>variablesSheet</string>
- <string>variablesTableView</string>
- </object>
- <object class="NSMutableArray" key="dict.values">
- <bool key="EncodedWithXMLCoder">YES</bool>
- <string>id</string>
- <string>id</string>
- <string>NSWindow</string>
- <string>NSSplitView</string>
- <string>NSWindow</string>
- <string>id</string>
- <string>NSTextView</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>NSTableView</string>
- <string>NSPopUpButton</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>NSSearchField</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>NSSecureTextField</string>
- <string>id</string>
- <string>id</string>
- <string>NSButton</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>NSButton</string>
- <string>NSTableView</string>
- <string>NSSplitView</string>
- <string>id</string>
- <string>id</string>
- <string>NSTabView</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>id</string>
- <string>NSTextField</string>
- <string>NSSearchField</string>
- <string>id</string>
- <string>id</string>
- </object>
- </object>
- <object class="IBClassDescriptionSource" key="sourceIdentifier">
- <string key="majorKey">IBDocumentRelativeSource</string>
- <string key="minorKey">../../Source/TableDocument.h</string>
- </object>
- </object>
- </object>
</object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.LastKnownRelativeProjectPath">../../sequel-pro.xcodeproj</string>
diff --git a/Interfaces/English.lproj/QueryFavoriteManager.xib b/Interfaces/English.lproj/QueryFavoriteManager.xib
new file mode 100644
index 00000000..8a3931d1
--- /dev/null
+++ b/Interfaces/English.lproj/QueryFavoriteManager.xib
@@ -0,0 +1,1754 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.03">
+ <data>
+ <int key="IBDocument.SystemTarget">1050</int>
+ <string key="IBDocument.SystemVersion">9L30</string>
+ <string key="IBDocument.InterfaceBuilderVersion">677</string>
+ <string key="IBDocument.AppKitVersion">949.54</string>
+ <string key="IBDocument.HIToolboxVersion">353.00</string>
+ <object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <integer value="240"/>
+ </object>
+ <object class="NSArray" key="IBDocument.PluginDependencies">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>com.brandonwalkin.BWToolkit</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ </object>
+ <object class="NSMutableDictionary" key="IBDocument.Metadata">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ </object>
+ <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSCustomObject" id="1001">
+ <string key="NSClassName">SPQueryFavoriteManager</string>
+ </object>
+ <object class="NSCustomObject" id="1003">
+ <string key="NSClassName">FirstResponder</string>
+ </object>
+ <object class="NSCustomObject" id="1004">
+ <string key="NSClassName">NSApplication</string>
+ </object>
+ <object class="NSWindowTemplate" id="1005">
+ <int key="NSWindowStyleMask">15</int>
+ <int key="NSWindowBacking">2</int>
+ <string key="NSWindowRect">{{593, 356}, {500, 371}}</string>
+ <int key="NSWTFlags">813171712</int>
+ <string key="NSWindowTitle">Query Favorite Manager</string>
+ <string key="NSWindowClass">NSWindow</string>
+ <nil key="NSViewClass"/>
+ <string key="NSWindowContentMaxSize">{3.40282e+38, 3.40282e+38}</string>
+ <string key="NSWindowContentMinSize">{500, 371}</string>
+ <object class="NSView" key="NSWindowView" id="1006">
+ <reference key="NSNextResponder"/>
+ <int key="NSvFlags">256</int>
+ <object class="NSMutableArray" key="NSSubviews">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSSplitView" id="141381185">
+ <reference key="NSNextResponder" ref="1006"/>
+ <int key="NSvFlags">274</int>
+ <object class="NSMutableArray" key="NSSubviews">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSCustomView" id="813298639">
+ <reference key="NSNextResponder" ref="141381185"/>
+ <int key="NSvFlags">256</int>
+ <object class="NSMutableArray" key="NSSubviews">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSButton" id="478413208">
+ <reference key="NSNextResponder" ref="813298639"/>
+ <int key="NSvFlags">292</int>
+ <string key="NSFrame">{{0, -1}, {32, 25}}</string>
+ <reference key="NSSuperview" ref="813298639"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSButtonCell" key="NSCell" id="63587388">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">134217728</int>
+ <string key="NSContents"/>
+ <object class="NSFont" key="NSSupport" id="1071840538">
+ <string key="NSName">LucidaGrande</string>
+ <double key="NSSize">1.300000e+01</double>
+ <int key="NSfFlags">1044</int>
+ </object>
+ <reference key="NSControlView" ref="478413208"/>
+ <int key="NSButtonFlags">-2041822977</int>
+ <int key="NSButtonFlags2">402653219</int>
+ <object class="NSCustomResource" key="NSNormalImage">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">button_add</string>
+ </object>
+ <string key="NSAlternateContents"/>
+ <string key="NSKeyEquivalent">a</string>
+ <int key="NSPeriodicDelay">400</int>
+ <int key="NSPeriodicInterval">75</int>
+ </object>
+ </object>
+ <object class="NSButton" id="960187291">
+ <reference key="NSNextResponder" ref="813298639"/>
+ <int key="NSvFlags">292</int>
+ <string key="NSFrame">{{31, -1}, {32, 25}}</string>
+ <reference key="NSSuperview" ref="813298639"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSButtonCell" key="NSCell" id="1023807891">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">134217728</int>
+ <string key="NSContents"/>
+ <reference key="NSSupport" ref="1071840538"/>
+ <reference key="NSControlView" ref="960187291"/>
+ <int key="NSButtonFlags">-2042347265</int>
+ <int key="NSButtonFlags2">35</int>
+ <object class="NSCustomResource" key="NSNormalImage">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">button_remove</string>
+ </object>
+ <string key="NSAlternateContents"/>
+ <string key="NSKeyEquivalent"/>
+ <int key="NSPeriodicDelay">400</int>
+ <int key="NSPeriodicInterval">75</int>
+ </object>
+ </object>
+ <object class="NSScrollView" id="205303038">
+ <reference key="NSNextResponder" ref="813298639"/>
+ <int key="NSvFlags">4370</int>
+ <object class="NSMutableArray" key="NSSubviews">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSClipView" id="106335880">
+ <reference key="NSNextResponder" ref="205303038"/>
+ <int key="NSvFlags">2304</int>
+ <object class="NSMutableArray" key="NSSubviews">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSTableView" id="522643855">
+ <reference key="NSNextResponder" ref="106335880"/>
+ <int key="NSvFlags">4352</int>
+ <string key="NSFrameSize">{190, 338}</string>
+ <reference key="NSSuperview" ref="106335880"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="_NSCornerView" key="NSCornerView">
+ <nil key="NSNextResponder"/>
+ <int key="NSvFlags">-2147483392</int>
+ <string key="NSFrame">{{176, 0}, {16, 17}}</string>
+ </object>
+ <object class="NSMutableArray" key="NSTableColumns">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSTableColumn" id="901293108">
+ <string key="NSIdentifier">name</string>
+ <double key="NSWidth">1.870000e+02</double>
+ <double key="NSMinWidth">4.000000e+01</double>
+ <double key="NSMaxWidth">1.000000e+03</double>
+ <object class="NSTableHeaderCell" key="NSHeaderCell">
+ <int key="NSCellFlags">75628032</int>
+ <int key="NSCellFlags2">0</int>
+ <string key="NSContents">Favorites</string>
+ <object class="NSFont" key="NSSupport" id="26">
+ <string key="NSName">LucidaGrande</string>
+ <double key="NSSize">1.100000e+01</double>
+ <int key="NSfFlags">3100</int>
+ </object>
+ <object class="NSColor" key="NSBackgroundColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MC4zMzMzMzI5OQA</bytes>
+ </object>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">headerTextColor</string>
+ <object class="NSColor" key="NSColor" id="646528321">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MAA</bytes>
+ </object>
+ </object>
+ </object>
+ <object class="NSTextFieldCell" key="NSDataCell" id="56401947">
+ <int key="NSCellFlags">69336641</int>
+ <int key="NSCellFlags2">133120</int>
+ <string key="NSContents">Text Cell</string>
+ <reference key="NSSupport" ref="26"/>
+ <reference key="NSControlView" ref="522643855"/>
+ <object class="NSColor" key="NSBackgroundColor" id="392588142">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">controlBackgroundColor</string>
+ <object class="NSColor" key="NSColor" id="276872502">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MC42NjY2NjY2OQA</bytes>
+ </object>
+ </object>
+ <object class="NSColor" key="NSTextColor" id="810868150">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">controlTextColor</string>
+ <reference key="NSColor" ref="646528321"/>
+ </object>
+ </object>
+ <reference key="NSTableView" ref="522643855"/>
+ </object>
+ </object>
+ <double key="NSIntercellSpacingWidth">3.000000e+00</double>
+ <double key="NSIntercellSpacingHeight">2.000000e+00</double>
+ <object class="NSColor" key="NSBackgroundColor">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">_sourceListBackgroundColor</string>
+ <object class="NSColor" key="NSColor">
+ <int key="NSColorSpace">1</int>
+ <bytes key="NSRGB">MC44MzkyMTU3IDAuODY2NjY2NjcgMC44OTgwMzkyMgA</bytes>
+ </object>
+ </object>
+ <object class="NSColor" key="NSGridColor">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">gridColor</string>
+ <object class="NSColor" key="NSColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MC41AA</bytes>
+ </object>
+ </object>
+ <double key="NSRowHeight">1.600000e+01</double>
+ <int key="NSTvFlags">308281344</int>
+ <int key="NSColumnAutoresizingStyle">0</int>
+ <int key="NSDraggingSourceMaskForLocal">15</int>
+ <int key="NSDraggingSourceMaskForNonLocal">0</int>
+ <bool key="NSAllowsTypeSelect">NO</bool>
+ <int key="NSTableViewSelectionHighlightStyle">1</int>
+ </object>
+ </object>
+ <string key="NSFrame">{{1, 1}, {168, 338}}</string>
+ <reference key="NSSuperview" ref="205303038"/>
+ <reference key="NSNextKeyView" ref="522643855"/>
+ <reference key="NSDocView" ref="522643855"/>
+ <reference key="NSBGColor" ref="392588142"/>
+ <int key="NScvFlags">4</int>
+ </object>
+ <object class="NSScroller" id="322405876">
+ <reference key="NSNextResponder" ref="205303038"/>
+ <int key="NSvFlags">-2147483392</int>
+ <string key="NSFrame">{{183, 1}, {11, 317}}</string>
+ <reference key="NSSuperview" ref="205303038"/>
+ <int key="NSsFlags">256</int>
+ <reference key="NSTarget" ref="205303038"/>
+ <string key="NSAction">_doScroller:</string>
+ <double key="NSPercent">9.964158e-01</double>
+ </object>
+ <object class="NSScroller" id="336819166">
+ <reference key="NSNextResponder" ref="205303038"/>
+ <int key="NSvFlags">-2147483392</int>
+ <string key="NSFrame">{{-100, -100}, {311, 15}}</string>
+ <reference key="NSSuperview" ref="205303038"/>
+ <bool key="NSEnabled">YES</bool>
+ <int key="NSsFlags">1</int>
+ <reference key="NSTarget" ref="205303038"/>
+ <string key="NSAction">_doScroller:</string>
+ <double key="NSPercent">9.953271e-01</double>
+ </object>
+ </object>
+ <string key="NSFrame">{{-2, 22}, {170, 340}}</string>
+ <reference key="NSSuperview" ref="813298639"/>
+ <reference key="NSNextKeyView" ref="106335880"/>
+ <int key="NSsFlags">658</int>
+ <reference key="NSVScroller" ref="322405876"/>
+ <reference key="NSHScroller" ref="336819166"/>
+ <reference key="NSContentView" ref="106335880"/>
+ <bytes key="NSScrollAmts">QSAAAEEgAABBkAAAQZAAAA</bytes>
+ </object>
+ <object class="NSImageView" id="545397681">
+ <reference key="NSNextResponder" ref="813298639"/>
+ <int key="NSvFlags">290</int>
+ <object class="NSMutableSet" key="NSDragTypes">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMutableArray" key="set.sortedObjects">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>Apple PDF pasteboard type</string>
+ <string>Apple PICT pasteboard type</string>
+ <string>Apple PNG pasteboard type</string>
+ <string>NSFilenamesPboardType</string>
+ <string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
+ <string>NeXT TIFF v4.0 pasteboard type</string>
+ </object>
+ </object>
+ <string key="NSFrame">{{94, 0}, {73, 23}}</string>
+ <reference key="NSSuperview" ref="813298639"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSImageCell" key="NSCell" id="177143920">
+ <int key="NSCellFlags">130560</int>
+ <int key="NSCellFlags2">33554432</int>
+ <object class="NSCustomResource" key="NSContents">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">button_bar_spacer</string>
+ </object>
+ <int key="NSAlign">0</int>
+ <int key="NSScale">1</int>
+ <int key="NSStyle">0</int>
+ <bool key="NSAnimates">NO</bool>
+ </object>
+ <bool key="NSEditable">YES</bool>
+ </object>
+ <object class="BWAnchoredPopUpButton" id="482670840">
+ <reference key="NSNextResponder" ref="813298639"/>
+ <int key="NSvFlags">292</int>
+ <string key="NSFrame">{{62, -1}, {32, 24}}</string>
+ <reference key="NSSuperview" ref="813298639"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="BWAnchoredPopUpButtonCell" key="NSCell" id="929623756">
+ <int key="NSCellFlags">71433792</int>
+ <int key="NSCellFlags2">134219776</int>
+ <reference key="NSSupport" ref="1071840538"/>
+ <reference key="NSControlView" ref="482670840"/>
+ <int key="NSButtonFlags">-2038284033</int>
+ <int key="NSButtonFlags2">163</int>
+ <string key="NSAlternateContents"/>
+ <string key="NSKeyEquivalent"/>
+ <int key="NSPeriodicDelay">400</int>
+ <int key="NSPeriodicInterval">75</int>
+ <object class="NSMenuItem" key="NSMenuItem" id="921722168">
+ <reference key="NSMenu" ref="299613786"/>
+ <bool key="NSIsHidden">YES</bool>
+ <string key="NSTitle"/>
+ <string key="NSKeyEquiv"/>
+ <int key="NSKeyEquivModMask">1048576</int>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <object class="NSCustomResource" key="NSImage">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">NSActionTemplate</string>
+ </object>
+ <object class="NSCustomResource" key="NSOnImage" id="451328194">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">NSMenuCheckmark</string>
+ </object>
+ <object class="NSCustomResource" key="NSMixedImage" id="770393621">
+ <string key="NSClassName">NSImage</string>
+ <string key="NSResourceName">NSMenuMixedState</string>
+ </object>
+ <string key="NSAction">_popUpItemAction:</string>
+ <reference key="NSTarget" ref="929623756"/>
+ </object>
+ <bool key="NSMenuItemRespectAlignment">YES</bool>
+ <object class="NSMenu" key="NSMenu" id="299613786">
+ <string key="NSTitle">OtherViews</string>
+ <object class="NSMutableArray" key="NSMenuItems">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="921722168"/>
+ <object class="NSMenuItem" id="161398571">
+ <reference key="NSMenu" ref="299613786"/>
+ <string key="NSTitle">Duplicate</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="451328194"/>
+ <reference key="NSMixedImage" ref="770393621"/>
+ <string key="NSAction">_popUpItemAction:</string>
+ <reference key="NSTarget" ref="929623756"/>
+ </object>
+ <object class="NSMenuItem" id="717460538">
+ <reference key="NSMenu" ref="299613786"/>
+ <string key="NSTitle">Save to File...</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="451328194"/>
+ <reference key="NSMixedImage" ref="770393621"/>
+ <string key="NSAction">_popUpItemAction:</string>
+ <reference key="NSTarget" ref="929623756"/>
+ </object>
+ <object class="NSMenuItem" id="954405787">
+ <reference key="NSMenu" ref="299613786"/>
+ <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="451328194"/>
+ <reference key="NSMixedImage" ref="770393621"/>
+ <string key="NSAction">_popUpItemAction:</string>
+ <reference key="NSTarget" ref="929623756"/>
+ </object>
+ <object class="NSMenuItem" id="846349687">
+ <reference key="NSMenu" ref="299613786"/>
+ <string key="NSTitle">Remove All...</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="451328194"/>
+ <reference key="NSMixedImage" ref="770393621"/>
+ <string key="NSAction">_popUpItemAction:</string>
+ <reference key="NSTarget" ref="929623756"/>
+ </object>
+ </object>
+ </object>
+ <int key="NSSelectedIndex">4</int>
+ <bool key="NSPullDown">YES</bool>
+ <int key="NSPreferredEdge">1</int>
+ <bool key="NSUsesItemFromMenu">YES</bool>
+ <bool key="NSAltersState">YES</bool>
+ </object>
+ </object>
+ </object>
+ <string key="NSFrameSize">{167, 361}</string>
+ <reference key="NSSuperview" ref="141381185"/>
+ <string key="NSClassName">NSView</string>
+ </object>
+ <object class="NSCustomView" id="36799862">
+ <reference key="NSNextResponder" ref="141381185"/>
+ <int key="NSvFlags">274</int>
+ <object class="NSMutableArray" key="NSSubviews">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSTextField" id="350107303">
+ <reference key="NSNextResponder" ref="36799862"/>
+ <int key="NSvFlags">268</int>
+ <string key="NSFrame">{{17, 327}, {45, 14}}</string>
+ <reference key="NSSuperview" ref="36799862"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="448987091">
+ <int key="NSCellFlags">68288064</int>
+ <int key="NSCellFlags2">272761856</int>
+ <string key="NSContents">Name:</string>
+ <reference key="NSSupport" ref="26"/>
+ <reference key="NSControlView" ref="350107303"/>
+ <object class="NSColor" key="NSBackgroundColor">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">controlColor</string>
+ <reference key="NSColor" ref="276872502"/>
+ </object>
+ <reference key="NSTextColor" ref="810868150"/>
+ </object>
+ </object>
+ <object class="NSTextField" id="247897226">
+ <reference key="NSNextResponder" ref="36799862"/>
+ <int key="NSvFlags">266</int>
+ <string key="NSFrame">{{58, 325}, {254, 19}}</string>
+ <reference key="NSSuperview" ref="36799862"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSTextFieldCell" key="NSCell" id="474077606">
+ <int key="NSCellFlags">-1804468671</int>
+ <int key="NSCellFlags2">272761856</int>
+ <string key="NSContents"/>
+ <reference key="NSSupport" ref="26"/>
+ <reference key="NSControlView" ref="247897226"/>
+ <bool key="NSDrawsBackground">YES</bool>
+ <object class="NSColor" key="NSBackgroundColor" id="570692726">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">textBackgroundColor</string>
+ <object class="NSColor" key="NSColor" id="359131077">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MQA</bytes>
+ </object>
+ </object>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">textColor</string>
+ <reference key="NSColor" ref="646528321"/>
+ </object>
+ </object>
+ </object>
+ <object class="NSScrollView" id="407061848">
+ <reference key="NSNextResponder" ref="36799862"/>
+ <int key="NSvFlags">274</int>
+ <object class="NSMutableArray" key="NSSubviews">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSClipView" id="221447089">
+ <reference key="NSNextResponder" ref="407061848"/>
+ <int key="NSvFlags">2304</int>
+ <object class="NSMutableArray" key="NSSubviews">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSTextView" id="556251150">
+ <reference key="NSNextResponder" ref="221447089"/>
+ <int key="NSvFlags">2322</int>
+ <object class="NSMutableSet" key="NSDragTypes">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMutableArray" key="set.sortedObjects">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <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>CorePasteboardFlavorType 0x75726C20</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>
+ </object>
+ </object>
+ <string key="NSFrameSize">{290, 14}</string>
+ <reference key="NSSuperview" ref="221447089"/>
+ <object class="NSTextContainer" key="NSTextContainer" id="74289808">
+ <object class="NSLayoutManager" key="NSLayoutManager">
+ <object class="NSTextStorage" key="NSTextStorage">
+ <object class="NSMutableString" key="NSString">
+ <characters key="NS.bytes"/>
+ </object>
+ <nil key="NSDelegate"/>
+ </object>
+ <object class="NSMutableArray" key="NSTextContainers">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="74289808"/>
+ </object>
+ <int key="NSLMFlags">6</int>
+ <nil key="NSDelegate"/>
+ </object>
+ <reference key="NSTextView" ref="556251150"/>
+ <double key="NSWidth">2.900000e+02</double>
+ <int key="NSTCFlags">1</int>
+ </object>
+ <object class="NSTextViewSharedData" key="NSSharedData">
+ <int key="NSFlags">11811</int>
+ <reference key="NSBackgroundColor" ref="359131077"/>
+ <reference key="NSInsertionColor" ref="646528321"/>
+ <object class="NSDictionary" key="NSSelectedAttributes">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMutableArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>NSBackgroundColor</string>
+ <string>NSColor</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSColor">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">selectedTextBackgroundColor</string>
+ <reference key="NSColor" ref="276872502"/>
+ </object>
+ <object class="NSColor">
+ <int key="NSColorSpace">6</int>
+ <string key="NSCatalogName">System</string>
+ <string key="NSColorName">selectedTextColor</string>
+ <reference key="NSColor" ref="646528321"/>
+ </object>
+ </object>
+ </object>
+ <nil key="NSMarkedAttributes"/>
+ <object class="NSDictionary" key="NSLinkAttributes">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMutableArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>NSColor</string>
+ <string>NSUnderline</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSColor">
+ <int key="NSColorSpace">1</int>
+ <bytes key="NSRGB">MCAwIDEAA</bytes>
+ </object>
+ <integer value="1" id="9"/>
+ </object>
+ </object>
+ <nil key="NSDefaultParagraphStyle"/>
+ </object>
+ <int key="NSTVFlags">6</int>
+ <string key="NSMaxSize">{582, 1e+07}</string>
+ <string key="NSMinize">{223, 0}</string>
+ <nil key="NSDelegate"/>
+ </object>
+ </object>
+ <string key="NSFrame">{{1, 1}, {290, 270}}</string>
+ <reference key="NSSuperview" ref="407061848"/>
+ <reference key="NSNextKeyView" ref="556251150"/>
+ <reference key="NSDocView" ref="556251150"/>
+ <reference key="NSBGColor" ref="359131077"/>
+ <object class="NSCursor" key="NSCursor">
+ <string key="NSHotSpot">{4, -5}</string>
+ <int key="NSCursorType">1</int>
+ </object>
+ <int key="NScvFlags">4</int>
+ </object>
+ <object class="NSScroller" id="978638217">
+ <reference key="NSNextResponder" ref="407061848"/>
+ <int key="NSvFlags">256</int>
+ <string key="NSFrame">{{-100, -100}, {11, 133}}</string>
+ <reference key="NSSuperview" ref="407061848"/>
+ <int key="NSsFlags">256</int>
+ <reference key="NSTarget" ref="407061848"/>
+ <string key="NSAction">_doScroller:</string>
+ <double key="NSPercent">7.388889e-01</double>
+ </object>
+ <object class="NSScroller" id="1008017707">
+ <reference key="NSNextResponder" ref="407061848"/>
+ <int key="NSvFlags">256</int>
+ <string key="NSFrame">{{-100, -100}, {87, 18}}</string>
+ <reference key="NSSuperview" ref="407061848"/>
+ <int key="NSsFlags">1</int>
+ <reference key="NSTarget" ref="407061848"/>
+ <string key="NSAction">_doScroller:</string>
+ <double key="NSCurValue">1.000000e+00</double>
+ <double key="NSPercent">9.456522e-01</double>
+ </object>
+ </object>
+ <string key="NSFrame">{{20, 45}, {292, 272}}</string>
+ <reference key="NSSuperview" ref="36799862"/>
+ <reference key="NSNextKeyView" ref="221447089"/>
+ <int key="NSsFlags">514</int>
+ <reference key="NSVScroller" ref="978638217"/>
+ <reference key="NSHScroller" ref="1008017707"/>
+ <reference key="NSContentView" ref="221447089"/>
+ </object>
+ <object class="NSButton" id="556514169">
+ <reference key="NSNextResponder" ref="36799862"/>
+ <int key="NSvFlags">289</int>
+ <string key="NSFrame">{{230, 7}, {87, 28}}</string>
+ <reference key="NSSuperview" ref="36799862"/>
+ <bool key="NSEnabled">YES</bool>
+ <object class="NSButtonCell" key="NSCell" id="908635119">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">134348800</int>
+ <string key="NSContents">Close</string>
+ <reference key="NSSupport" ref="26"/>
+ <reference key="NSControlView" ref="556514169"/>
+ <int key="NSButtonFlags">-2038284033</int>
+ <int key="NSButtonFlags2">129</int>
+ <string key="NSAlternateContents"/>
+ <string type="base64-UTF8" key="NSKeyEquivalent">DQ</string>
+ <int key="NSPeriodicDelay">200</int>
+ <int key="NSPeriodicInterval">25</int>
+ </object>
+ </object>
+ </object>
+ <string key="NSFrame">{{168, 0}, {332, 361}}</string>
+ <reference key="NSSuperview" ref="141381185"/>
+ <string key="NSClassName">NSView</string>
+ </object>
+ </object>
+ <string key="NSFrameSize">{500, 361}</string>
+ <reference key="NSSuperview" ref="1006"/>
+ <bool key="NSIsVertical">YES</bool>
+ <int key="NSDividerStyle">2</int>
+ </object>
+ <object class="NSBox" id="594420157">
+ <reference key="NSNextResponder" ref="1006"/>
+ <int key="NSvFlags">10</int>
+ <string key="NSFrame">{{0, 358}, {500, 5}}</string>
+ <reference key="NSSuperview" ref="1006"/>
+ <string key="NSOffsets">{0, 0}</string>
+ <object class="NSTextFieldCell" key="NSTitleCell">
+ <int key="NSCellFlags">67239424</int>
+ <int key="NSCellFlags2">0</int>
+ <string key="NSContents">Box</string>
+ <reference key="NSSupport" ref="1071840538"/>
+ <reference key="NSBackgroundColor" ref="570692726"/>
+ <object class="NSColor" key="NSTextColor">
+ <int key="NSColorSpace">3</int>
+ <bytes key="NSWhite">MCAwLjgwMDAwMDAxAA</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>
+ <string key="NSFrameSize">{500, 371}</string>
+ <reference key="NSSuperview"/>
+ </object>
+ <string key="NSScreenRect">{{0, 0}, {1680, 1028}}</string>
+ <string key="NSMinSize">{500, 393}</string>
+ <string key="NSMaxSize">{3.40282e+38, 3.40282e+38}</string>
+ </object>
+ <object class="NSUserDefaultsController" id="592597522">
+ <bool key="NSSharedInstance">YES</bool>
+ </object>
+ <object class="NSArrayController" id="524128400">
+ <object class="NSMutableArray" key="NSDeclaredKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>name</string>
+ <string>query</string>
+ </object>
+ <bool key="NSEditable">YES</bool>
+ <object class="_NSManagedProxy" key="_NSManagedProxy"/>
+ <bool key="NSPreservesSelection">YES</bool>
+ <bool key="NSSelectsInsertedObjects">YES</bool>
+ <bool key="NSFilterRestrictsInsertion">YES</bool>
+ <bool key="NSClearsFilterPredicateOnInsertion">YES</bool>
+ </object>
+ <object class="NSMenu" id="855448788">
+ <string key="NSTitle"/>
+ <object class="NSMutableArray" key="NSMenuItems">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMenuItem" id="325985429">
+ <reference key="NSMenu" ref="855448788"/>
+ <string key="NSTitle">Remove</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="451328194"/>
+ <reference key="NSMixedImage" ref="770393621"/>
+ </object>
+ <object class="NSMenuItem" id="247392372">
+ <reference key="NSMenu" ref="855448788"/>
+ <string key="NSTitle">Duplicate</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="451328194"/>
+ <reference key="NSMixedImage" ref="770393621"/>
+ </object>
+ <object class="NSMenuItem" id="1029652483">
+ <reference key="NSMenu" ref="855448788"/>
+ <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="451328194"/>
+ <reference key="NSMixedImage" ref="770393621"/>
+ </object>
+ <object class="NSMenuItem" id="1015707754">
+ <reference key="NSMenu" ref="855448788"/>
+ <string key="NSTitle">Save to File...</string>
+ <string key="NSKeyEquiv"/>
+ <int key="NSMnemonicLoc">2147483647</int>
+ <reference key="NSOnImage" ref="451328194"/>
+ <reference key="NSMixedImage" ref="770393621"/>
+ </object>
+ </object>
+ </object>
+ </object>
+ <object class="IBObjectContainer" key="IBDocument.Objects">
+ <object class="NSMutableArray" key="connectionRecords">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">window</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="1005"/>
+ </object>
+ <int key="connectionID">133</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">delegate</string>
+ <reference key="source" ref="141381185"/>
+ <reference key="destination" ref="1001"/>
+ </object>
+ <int key="connectionID">134</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">favoriteNameTextField</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="247897226"/>
+ </object>
+ <int key="connectionID">139</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">favoriteQueryTextView</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="556251150"/>
+ </object>
+ <int key="connectionID">140</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">favoritesTableView</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="522643855"/>
+ </object>
+ <int key="connectionID">141</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBBindingConnection" key="connection">
+ <string key="label">font: values.CustomQueryEditorFont</string>
+ <reference key="source" ref="556251150"/>
+ <reference key="destination" ref="592597522"/>
+ <object class="NSNibBindingConnector" key="connector">
+ <reference key="NSSource" ref="556251150"/>
+ <reference key="NSDestination" ref="592597522"/>
+ <string key="NSLabel">font: values.CustomQueryEditorFont</string>
+ <string key="NSBinding">font</string>
+ <string key="NSKeyPath">values.CustomQueryEditorFont</string>
+ <object class="NSDictionary" key="NSOptions">
+ <string key="NS.key.0">NSValueTransformerName</string>
+ <string key="NS.object.0">NSUnarchiveFromData</string>
+ </object>
+ <int key="NSNibBindingConnectorVersion">2</int>
+ </object>
+ </object>
+ <int key="connectionID">146</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBBindingConnection" key="connection">
+ <string key="label">contentArray: values.queryFavorites</string>
+ <reference key="source" ref="524128400"/>
+ <reference key="destination" ref="592597522"/>
+ <object class="NSNibBindingConnector" key="connector">
+ <reference key="NSSource" ref="524128400"/>
+ <reference key="NSDestination" ref="592597522"/>
+ <string key="NSLabel">contentArray: values.queryFavorites</string>
+ <string key="NSBinding">contentArray</string>
+ <string key="NSKeyPath">values.queryFavorites</string>
+ <object class="NSDictionary" key="NSOptions">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMutableArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>NSDeletesObjectsOnRemove</string>
+ <string>NSHandlesContentAsCompoundValue</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <boolean value="YES" id="5"/>
+ <reference ref="5"/>
+ </object>
+ </object>
+ <int key="NSNibBindingConnectorVersion">2</int>
+ </object>
+ </object>
+ <int key="connectionID">152</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">queryFavoritesController</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="524128400"/>
+ </object>
+ <int key="connectionID">157</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBBindingConnection" key="connection">
+ <string key="label">value: arrangedObjects.name</string>
+ <reference key="source" ref="901293108"/>
+ <reference key="destination" ref="524128400"/>
+ <object class="NSNibBindingConnector" key="connector">
+ <reference key="NSSource" ref="901293108"/>
+ <reference key="NSDestination" ref="524128400"/>
+ <string key="NSLabel">value: arrangedObjects.name</string>
+ <string key="NSBinding">value</string>
+ <string key="NSKeyPath">arrangedObjects.name</string>
+ <int key="NSNibBindingConnectorVersion">2</int>
+ </object>
+ </object>
+ <int key="connectionID">165</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBBindingConnection" key="connection">
+ <string key="label">enabled: canRemove</string>
+ <reference key="source" ref="960187291"/>
+ <reference key="destination" ref="524128400"/>
+ <object class="NSNibBindingConnector" key="connector">
+ <reference key="NSSource" ref="960187291"/>
+ <reference key="NSDestination" ref="524128400"/>
+ <string key="NSLabel">enabled: canRemove</string>
+ <string key="NSBinding">enabled</string>
+ <string key="NSKeyPath">canRemove</string>
+ <int key="NSNibBindingConnectorVersion">2</int>
+ </object>
+ </object>
+ <int key="connectionID">169</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBBindingConnection" key="connection">
+ <string key="label">enabled: canAdd</string>
+ <reference key="source" ref="478413208"/>
+ <reference key="destination" ref="524128400"/>
+ <object class="NSNibBindingConnector" key="connector">
+ <reference key="NSSource" ref="478413208"/>
+ <reference key="NSDestination" ref="524128400"/>
+ <string key="NSLabel">enabled: canAdd</string>
+ <string key="NSBinding">enabled</string>
+ <string key="NSKeyPath">canAdd</string>
+ <int key="NSNibBindingConnectorVersion">2</int>
+ </object>
+ </object>
+ <int key="connectionID">171</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">addQueryFavorite:</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="478413208"/>
+ </object>
+ <int key="connectionID">180</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">removeQueryFavorite:</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="960187291"/>
+ </object>
+ <int key="connectionID">181</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">closeQueryManagerSheet:</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="556514169"/>
+ </object>
+ <int key="connectionID">184</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">nextKeyView</string>
+ <reference key="source" ref="247897226"/>
+ <reference key="destination" ref="556251150"/>
+ </object>
+ <int key="connectionID">185</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">nextKeyView</string>
+ <reference key="source" ref="407061848"/>
+ <reference key="destination" ref="247897226"/>
+ </object>
+ <int key="connectionID">186</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">delegate</string>
+ <reference key="source" ref="1005"/>
+ <reference key="destination" ref="1001"/>
+ </object>
+ <int key="connectionID">187</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">delegate</string>
+ <reference key="source" ref="247897226"/>
+ <reference key="destination" ref="1001"/>
+ </object>
+ <int key="connectionID">188</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">dataSource</string>
+ <reference key="source" ref="522643855"/>
+ <reference key="destination" ref="1001"/>
+ </object>
+ <int key="connectionID">192</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">delegate</string>
+ <reference key="source" ref="522643855"/>
+ <reference key="destination" ref="1001"/>
+ </object>
+ <int key="connectionID">193</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">scrollView</string>
+ <reference key="source" ref="556251150"/>
+ <reference key="destination" ref="407061848"/>
+ </object>
+ <int key="connectionID">197</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">delegate</string>
+ <reference key="source" ref="556251150"/>
+ <reference key="destination" ref="1001"/>
+ </object>
+ <int key="connectionID">198</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBOutletConnection" key="connection">
+ <string key="label">menu</string>
+ <reference key="source" ref="522643855"/>
+ <reference key="destination" ref="855448788"/>
+ </object>
+ <int key="connectionID">209</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">removeQueryFavorite:</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="325985429"/>
+ </object>
+ <int key="connectionID">211</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">copyQueryFavorite:</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="247392372"/>
+ </object>
+ <int key="connectionID">213</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBBindingConnection" key="connection">
+ <string key="label">value: selection.name</string>
+ <reference key="source" ref="247897226"/>
+ <reference key="destination" ref="524128400"/>
+ <object class="NSNibBindingConnector" key="connector">
+ <reference key="NSSource" ref="247897226"/>
+ <reference key="NSDestination" ref="524128400"/>
+ <string key="NSLabel">value: selection.name</string>
+ <string key="NSBinding">value</string>
+ <string key="NSKeyPath">selection.name</string>
+ <object class="NSDictionary" key="NSOptions">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMutableArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>NSContinuouslyUpdatesValue</string>
+ <string>NSNoSelectionPlaceholder</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="5"/>
+ <string>no selection</string>
+ </object>
+ </object>
+ <int key="NSNibBindingConnectorVersion">2</int>
+ </object>
+ </object>
+ <int key="connectionID">232</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBBindingConnection" key="connection">
+ <string key="label">value: selection.query</string>
+ <reference key="source" ref="556251150"/>
+ <reference key="destination" ref="524128400"/>
+ <object class="NSNibBindingConnector" key="connector">
+ <reference key="NSSource" ref="556251150"/>
+ <reference key="NSDestination" ref="524128400"/>
+ <string key="NSLabel">value: selection.query</string>
+ <string key="NSBinding">value</string>
+ <string key="NSKeyPath">selection.query</string>
+ <int key="NSNibBindingConnectorVersion">2</int>
+ </object>
+ </object>
+ <int key="connectionID">237</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">saveFavoriteToFile:</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="1015707754"/>
+ </object>
+ <int key="connectionID">249</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">saveFavoriteToFile:</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="717460538"/>
+ </object>
+ <int key="connectionID">250</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">removeAllQueryFavorites:</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="846349687"/>
+ </object>
+ <int key="connectionID">251</int>
+ </object>
+ <object class="IBConnectionRecord">
+ <object class="IBActionConnection" key="connection">
+ <string key="label">copyQueryFavorite:</string>
+ <reference key="source" ref="1001"/>
+ <reference key="destination" ref="161398571"/>
+ </object>
+ <int key="connectionID">253</int>
+ </object>
+ </object>
+ <object class="IBMutableOrderedSet" key="objectRecords">
+ <object class="NSArray" key="orderedObjects">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBObjectRecord">
+ <int key="objectID">0</int>
+ <object class="NSArray" key="object" id="1002">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ <reference key="children" ref="1000"/>
+ <nil key="parent"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">-2</int>
+ <reference key="object" ref="1001"/>
+ <reference key="parent" ref="1002"/>
+ <string type="base64-UTF8" key="objectName">RmlsZSdzIE93bmVyA</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">-1</int>
+ <reference key="object" ref="1003"/>
+ <reference key="parent" ref="1002"/>
+ <string key="objectName">First Responder</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">-3</int>
+ <reference key="object" ref="1004"/>
+ <reference key="parent" ref="1002"/>
+ <string key="objectName">Application</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">1</int>
+ <reference key="object" ref="1005"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="1006"/>
+ </object>
+ <reference key="parent" ref="1002"/>
+ <string key="objectName">Favorite Manager</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">2</int>
+ <reference key="object" ref="1006"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="141381185"/>
+ <reference ref="594420157"/>
+ </object>
+ <reference key="parent" ref="1005"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">11</int>
+ <reference key="object" ref="141381185"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="813298639"/>
+ <reference ref="36799862"/>
+ </object>
+ <reference key="parent" ref="1006"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">13</int>
+ <reference key="object" ref="813298639"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="205303038"/>
+ <reference ref="960187291"/>
+ <reference ref="478413208"/>
+ <reference ref="545397681"/>
+ <reference ref="482670840"/>
+ </object>
+ <reference key="parent" ref="141381185"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">14</int>
+ <reference key="object" ref="205303038"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="522643855"/>
+ <reference ref="322405876"/>
+ <reference ref="336819166"/>
+ </object>
+ <reference key="parent" ref="813298639"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">17</int>
+ <reference key="object" ref="960187291"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="1023807891"/>
+ </object>
+ <reference key="parent" ref="813298639"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">18</int>
+ <reference key="object" ref="478413208"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="63587388"/>
+ </object>
+ <reference key="parent" ref="813298639"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">19</int>
+ <reference key="object" ref="63587388"/>
+ <reference key="parent" ref="478413208"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">20</int>
+ <reference key="object" ref="1023807891"/>
+ <reference key="parent" ref="960187291"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">23</int>
+ <reference key="object" ref="522643855"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="901293108"/>
+ </object>
+ <reference key="parent" ref="205303038"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">24</int>
+ <reference key="object" ref="322405876"/>
+ <reference key="parent" ref="205303038"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">25</int>
+ <reference key="object" ref="336819166"/>
+ <reference key="parent" ref="205303038"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">26</int>
+ <reference key="object" ref="901293108"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="56401947"/>
+ </object>
+ <reference key="parent" ref="522643855"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">27</int>
+ <reference key="object" ref="56401947"/>
+ <reference key="parent" ref="901293108"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">12</int>
+ <reference key="object" ref="36799862"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="247897226"/>
+ <reference ref="350107303"/>
+ <reference ref="407061848"/>
+ <reference ref="556514169"/>
+ </object>
+ <reference key="parent" ref="141381185"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">127</int>
+ <reference key="object" ref="407061848"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="556251150"/>
+ <reference ref="1008017707"/>
+ <reference ref="978638217"/>
+ </object>
+ <reference key="parent" ref="36799862"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">130</int>
+ <reference key="object" ref="556251150"/>
+ <reference key="parent" ref="407061848"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">129</int>
+ <reference key="object" ref="1008017707"/>
+ <reference key="parent" ref="407061848"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">128</int>
+ <reference key="object" ref="978638217"/>
+ <reference key="parent" ref="407061848"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">123</int>
+ <reference key="object" ref="247897226"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="474077606"/>
+ </object>
+ <reference key="parent" ref="36799862"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">124</int>
+ <reference key="object" ref="474077606"/>
+ <reference key="parent" ref="247897226"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">121</int>
+ <reference key="object" ref="350107303"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="448987091"/>
+ </object>
+ <reference key="parent" ref="36799862"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">122</int>
+ <reference key="object" ref="448987091"/>
+ <reference key="parent" ref="350107303"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">131</int>
+ <reference key="object" ref="556514169"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="908635119"/>
+ </object>
+ <reference key="parent" ref="36799862"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">132</int>
+ <reference key="object" ref="908635119"/>
+ <reference key="parent" ref="556514169"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">15</int>
+ <reference key="object" ref="545397681"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="177143920"/>
+ </object>
+ <reference key="parent" ref="813298639"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">22</int>
+ <reference key="object" ref="177143920"/>
+ <reference key="parent" ref="545397681"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">142</int>
+ <reference key="object" ref="594420157"/>
+ <reference key="parent" ref="1006"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">143</int>
+ <reference key="object" ref="592597522"/>
+ <reference key="parent" ref="1002"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">148</int>
+ <reference key="object" ref="524128400"/>
+ <reference key="parent" ref="1002"/>
+ <string key="objectName">Query Favorites</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">205</int>
+ <reference key="object" ref="855448788"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="325985429"/>
+ <reference ref="247392372"/>
+ <reference ref="1029652483"/>
+ <reference ref="1015707754"/>
+ </object>
+ <reference key="parent" ref="1002"/>
+ <string key="objectName">Favorite Context Menu</string>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">206</int>
+ <reference key="object" ref="325985429"/>
+ <reference key="parent" ref="855448788"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">212</int>
+ <reference key="object" ref="247392372"/>
+ <reference key="parent" ref="855448788"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">238</int>
+ <reference key="object" ref="482670840"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="929623756"/>
+ </object>
+ <reference key="parent" ref="813298639"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">239</int>
+ <reference key="object" ref="929623756"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="299613786"/>
+ </object>
+ <reference key="parent" ref="482670840"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">240</int>
+ <reference key="object" ref="299613786"/>
+ <object class="NSMutableArray" key="children">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <reference ref="921722168"/>
+ <reference ref="954405787"/>
+ <reference ref="846349687"/>
+ <reference ref="717460538"/>
+ <reference ref="161398571"/>
+ </object>
+ <reference key="parent" ref="929623756"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">241</int>
+ <reference key="object" ref="921722168"/>
+ <reference key="parent" ref="299613786"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">243</int>
+ <reference key="object" ref="717460538"/>
+ <reference key="parent" ref="299613786"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">244</int>
+ <reference key="object" ref="954405787"/>
+ <reference key="parent" ref="299613786"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">246</int>
+ <reference key="object" ref="846349687"/>
+ <reference key="parent" ref="299613786"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">247</int>
+ <reference key="object" ref="1029652483"/>
+ <reference key="parent" ref="855448788"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">248</int>
+ <reference key="object" ref="1015707754"/>
+ <reference key="parent" ref="855448788"/>
+ </object>
+ <object class="IBObjectRecord">
+ <int key="objectID">252</int>
+ <reference key="object" ref="161398571"/>
+ <reference key="parent" ref="299613786"/>
+ </object>
+ </object>
+ </object>
+ <object class="NSMutableDictionary" key="flattenedProperties">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMutableArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>-1.IBPluginDependency</string>
+ <string>-2.IBPluginDependency</string>
+ <string>-3.IBPluginDependency</string>
+ <string>1.IBEditorWindowLastContentRect</string>
+ <string>1.IBWindowTemplateEditedContentRect</string>
+ <string>1.NSWindowTemplate.visibleAtLaunch</string>
+ <string>1.WindowOrigin</string>
+ <string>1.editorWindowContentRectSynchronizationRect</string>
+ <string>1.windowTemplate.hasMinSize</string>
+ <string>1.windowTemplate.minSize</string>
+ <string>11.IBPluginDependency</string>
+ <string>12.IBPluginDependency</string>
+ <string>121.IBPluginDependency</string>
+ <string>122.IBPluginDependency</string>
+ <string>123.IBPluginDependency</string>
+ <string>124.IBPluginDependency</string>
+ <string>127.IBPluginDependency</string>
+ <string>128.IBPluginDependency</string>
+ <string>129.IBPluginDependency</string>
+ <string>13.IBPluginDependency</string>
+ <string>130.CustomClassName</string>
+ <string>130.IBPluginDependency</string>
+ <string>131.IBPluginDependency</string>
+ <string>132.IBPluginDependency</string>
+ <string>14.IBPluginDependency</string>
+ <string>14.ImportedFromIB2</string>
+ <string>142.IBPluginDependency</string>
+ <string>143.IBPluginDependency</string>
+ <string>148.IBPluginDependency</string>
+ <string>15.IBPluginDependency</string>
+ <string>17.IBAttributePlaceholdersKey</string>
+ <string>17.IBPluginDependency</string>
+ <string>18.IBAttributePlaceholdersKey</string>
+ <string>18.IBPluginDependency</string>
+ <string>19.IBPluginDependency</string>
+ <string>2.IBPluginDependency</string>
+ <string>20.IBPluginDependency</string>
+ <string>205.IBEditorWindowLastContentRect</string>
+ <string>205.IBPluginDependency</string>
+ <string>206.IBPluginDependency</string>
+ <string>212.IBPluginDependency</string>
+ <string>22.IBPluginDependency</string>
+ <string>23.IBPluginDependency</string>
+ <string>23.ImportedFromIB2</string>
+ <string>238.IBPluginDependency</string>
+ <string>239.IBPluginDependency</string>
+ <string>24.IBPluginDependency</string>
+ <string>24.IBShouldRemoveOnLegacySave</string>
+ <string>240.IBEditorWindowLastContentRect</string>
+ <string>240.IBPluginDependency</string>
+ <string>241.IBPluginDependency</string>
+ <string>243.IBAttributePlaceholdersKey</string>
+ <string>243.IBPluginDependency</string>
+ <string>244.IBPluginDependency</string>
+ <string>246.IBAttributePlaceholdersKey</string>
+ <string>246.IBPluginDependency</string>
+ <string>247.IBPluginDependency</string>
+ <string>248.IBPluginDependency</string>
+ <string>25.IBPluginDependency</string>
+ <string>25.IBShouldRemoveOnLegacySave</string>
+ <string>252.IBPluginDependency</string>
+ <string>26.IBPluginDependency</string>
+ <string>26.ImportedFromIB2</string>
+ <string>27.IBPluginDependency</string>
+ <string>27.ImportedFromIB2</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>{{464, 452}, {500, 371}}</string>
+ <string>{{464, 452}, {500, 371}}</string>
+ <boolean value="NO"/>
+ <string>{196, 240}</string>
+ <string>{{357, 418}, {480, 270}}</string>
+ <reference ref="5"/>
+ <string>{500, 371}</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>CMTextView</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference ref="9"/>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <object class="NSMutableDictionary">
+ <string key="NS.key.0">ToolTip</string>
+ <object class="IBToolTipAttribute" key="NS.object.0">
+ <string key="name">ToolTip</string>
+ <reference key="object" ref="960187291"/>
+ <string key="toolTip">Delete selected favorite</string>
+ </object>
+ </object>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <object class="NSMutableDictionary">
+ <string key="NS.key.0">ToolTip</string>
+ <object class="IBToolTipAttribute" key="NS.object.0">
+ <string key="name">ToolTip</string>
+ <reference key="object" ref="478413208"/>
+ <string key="toolTip">Add favorite</string>
+ </object>
+ </object>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>{{693, 450}, {145, 73}}</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference ref="9"/>
+ <string>com.brandonwalkin.BWToolkit</string>
+ <string>com.brandonwalkin.BWToolkit</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference ref="9"/>
+ <string>{{515, 394}, {134, 81}}</string>
+ <string>com.brandonwalkin.BWToolkit</string>
+ <string>com.brandonwalkin.BWToolkit</string>
+ <object class="NSMutableDictionary">
+ <string key="NS.key.0">ToolTip</string>
+ <object class="IBToolTipAttribute" key="NS.object.0">
+ <string key="name">ToolTip</string>
+ <reference key="object" ref="717460538"/>
+ <string key="toolTip">Delete all records of selected table(s)</string>
+ </object>
+ </object>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <object class="NSMutableDictionary">
+ <string key="NS.key.0">ToolTip</string>
+ <object class="IBToolTipAttribute" key="NS.object.0">
+ <string key="name">ToolTip</string>
+ <reference key="object" ref="846349687"/>
+ <string key="toolTip">Rename the selected item</string>
+ </object>
+ </object>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference ref="9"/>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference ref="9"/>
+ <string>com.apple.InterfaceBuilder.CocoaPlugin</string>
+ <reference ref="9"/>
+ </object>
+ </object>
+ <object class="NSMutableDictionary" key="unlocalizedProperties">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ </object>
+ <nil key="activeLocalization"/>
+ <object class="NSMutableDictionary" key="localizations">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ </object>
+ </object>
+ <nil key="sourceID"/>
+ <int key="maxID">253</int>
+ </object>
+ <object class="IBClassDescriber" key="IBDocument.Classes">
+ <object class="NSMutableArray" key="referencedPartialClassDescriptions">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="IBPartialClassDescription">
+ <string key="className">CMTextView</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="outlets">
+ <string key="NS.key.0">scrollView</string>
+ <string key="NS.object.0">NSScrollView</string>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">Source/CMTextView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">Frameworks/MCPKit/MCPFoundationKit/MCPConnection.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">Frameworks/MCPKit/MCPFoundationKit/MCPNull.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">Source/CMImageView.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">Source/SPConnectionController.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier" id="110708609">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">Source/SPQueryFavoriteManager.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSObject</string>
+ <object class="NSMutableDictionary" key="actions">
+ <string key="NS.key.0">toggleCollapse:</string>
+ <string key="NS.object.0">id</string>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">Source/TablesList.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSTextView</string>
+ <object class="NSMutableDictionary" key="actions">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMutableArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>doDecomposedStringWithCanonicalMapping:</string>
+ <string>doDecomposedStringWithCompatibilityMapping:</string>
+ <string>doPrecomposedStringWithCanonicalMapping:</string>
+ <string>doPrecomposedStringWithCompatibilityMapping:</string>
+ <string>doRemoveDiacritics:</string>
+ <string>doSelectionLowerCase:</string>
+ <string>doSelectionTitleCase:</string>
+ <string>doSelectionUpperCase:</string>
+ <string>doTranspose:</string>
+ <string>insertNULLvalue:</string>
+ <string>selectCurrentLine:</string>
+ <string>selectCurrentWord:</string>
+ <string>selectEnclosingBrackets:</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ </object>
+ </object>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">Source/SPTextViewAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">NSWindow</string>
+ <object class="IBClassDescriptionSource" key="sourceIdentifier">
+ <string key="majorKey">IBProjectSource</string>
+ <string key="minorKey">Source/SPWindowAdditions.h</string>
+ </object>
+ </object>
+ <object class="IBPartialClassDescription">
+ <string key="className">SPQueryFavoriteManager</string>
+ <string key="superclassName">NSWindowController</string>
+ <object class="NSMutableDictionary" key="actions">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMutableArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>addQueryFavorite:</string>
+ <string>closeQueryManagerSheet:</string>
+ <string>copyQueryFavorite:</string>
+ <string>removeAllQueryFavorites:</string>
+ <string>removeQueryFavorite:</string>
+ <string>saveFavoriteToFile:</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ <string>id</string>
+ </object>
+ </object>
+ <object class="NSMutableDictionary" key="outlets">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <object class="NSMutableArray" key="dict.sortedKeys">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>delegate</string>
+ <string>encodingPopUp</string>
+ <string>favoriteNameTextField</string>
+ <string>favoriteQueryTextView</string>
+ <string>favoritesTableView</string>
+ <string>queryFavoritesController</string>
+ </object>
+ <object class="NSMutableArray" key="dict.values">
+ <bool key="EncodedWithXMLCoder">YES</bool>
+ <string>id</string>
+ <string>NSPopUpButton</string>
+ <string>NSTextField</string>
+ <string>NSTextView</string>
+ <string>NSTableView</string>
+ <string>NSArrayController</string>
+ </object>
+ </object>
+ <reference key="sourceIdentifier" ref="110708609"/>
+ </object>
+ </object>
+ </object>
+ <int key="IBDocument.localizationMode">0</int>
+ <string key="IBDocument.LastKnownRelativeProjectPath">../../sequel-pro.xcodeproj</string>
+ <int key="IBDocument.defaultPropertyAccessControl">3</int>
+ </data>
+</archive>
diff --git a/Source/CustomQuery.h b/Source/CustomQuery.h
index 2987efed..eae2de5c 100644
--- a/Source/CustomQuery.h
+++ b/Source/CustomQuery.h
@@ -33,8 +33,10 @@
#define SP_HELP_TOC_SEARCH_STRING @"contents"
+@class SPQueryFavoriteManager;
+
@interface CustomQuery : NSObject
-{
+{
IBOutlet id tableDocumentInstance;
IBOutlet id tableWindow;
IBOutlet id queryFavoritesButton;
@@ -45,10 +47,6 @@
IBOutlet id affectedRowsText;
IBOutlet id valueSheet;
IBOutlet id valueTextField;
- IBOutlet id queryFavoritesSheet;
- IBOutlet id queryFavoritesView;
- IBOutlet id removeQueryFavoriteButton;
- IBOutlet id copyQueryFavoriteButton;
IBOutlet id runSelectionButton;
IBOutlet id runAllButton;
IBOutlet id multipleLineEditingButton;
@@ -66,17 +64,20 @@
IBOutlet NSMenuItem *commentCurrentQueryMenuItem;
IBOutlet NSMenuItem *commentLineOrSelectionMenuItem;
+ IBOutlet NSWindow *queryFavoritesSheet;
+ IBOutlet NSButton *saveQueryFavoriteButton;
+ IBOutlet NSTextField *queryFavoriteNameTextField;
+
IBOutlet NSWindow *helpWebViewWindow;
IBOutlet WebView *helpWebView;
IBOutlet NSSearchField *helpSearchField;
IBOutlet NSSearchFieldCell *helpSearchFieldCell;
IBOutlet NSSegmentedControl *helpNavigator;
IBOutlet NSSegmentedControl *helpTargetSelector;
-
+
+ SPQueryFavoriteManager *favoritesManager;
NSUserDefaults *prefs;
- NSMutableArray *queryFavorites;
-
MCPConnection *mySQLConnection;
NSString *usedQuery;
@@ -103,7 +104,6 @@
NSString *fieldIDQueryString;
unsigned int numberOfQueries;
-
}
// IBAction methods
@@ -123,12 +123,6 @@
- (IBAction)helpSelectHelpTargetPage:(id)sender;
- (IBAction)helpSelectHelpTargetWeb:(id)sender;
-// queryFavoritesSheet methods
-- (IBAction)addQueryFavorite:(id)sender;
-- (IBAction)removeQueryFavorite:(id)sender;
-- (IBAction)copyQueryFavorite:(id)sender;
-- (IBAction)closeQueryFavoritesSheet:(id)sender;
-
// Query actions
- (void)performQueries:(NSArray *)queries;
- (NSString *)queryAtPosition:(long)position lookBehind:(BOOL *)doLookBehind;
@@ -149,7 +143,6 @@
// Other
- (void)setConnection:(MCPConnection *)theConnection;
-- (void)setFavorites;
- (void)doPerformQueryService:(NSString *)query;
- (void)doPerformLoadQueryService:(NSString *)query;
- (void)selectCurrentQuery;
diff --git a/Source/CustomQuery.m b/Source/CustomQuery.m
index daa09cf6..c8ded233 100644
--- a/Source/CustomQuery.m
+++ b/Source/CustomQuery.m
@@ -37,6 +37,7 @@
#import "SPFieldEditorController.h"
#import "SPTextAndLinkCell.h"
#import "SPTooltip.h"
+#import "SPQueryFavoriteManager.h"
#define SP_MYSQL_DEV_SEARCH_URL @"http://search.mysql.com/search?q=%@&site=refman-%@"
#define SP_HELP_SEARCH_IN_MYSQL 0
@@ -89,10 +90,6 @@
[textView setSelectedRange:NSMakeRange(oldRange.location,0)];
[textView insertText:@""];
[textView setSelectedRange:oldRange];
-
-
- // Select the text of the query textView for re-editing
- //[textView selectAll:self];
}
/*
@@ -127,7 +124,7 @@
// Invoke textStorageDidProcessEditing: for syntax highlighting and auto-uppercase
// and preserve the selection
- [textView setSelectedRange:NSMakeRange(selectedRange.location,0)];
+ [textView setSelectedRange:NSMakeRange(selectedRange.location, 0)];
[textView insertText:@""];
[textView setSelectedRange:selectedRange];
@@ -142,43 +139,32 @@
- (IBAction)chooseQueryFavorite:(id)sender
{
if ([queryFavoritesButton indexOfSelectedItem] == 1) {
- // Save query to favorites
- // Check if favorite doesn't exist
- NSEnumerator *enumerator = [queryFavorites objectEnumerator];
- id favorite;
-
- while ((favorite = [enumerator nextObject]))
- {
- if ([favorite isEqualToString:[textView string]]) {
- NSBeginAlertSheet(NSLocalizedString(@"Query already exists", @"query already exists message"), NSLocalizedString(@"OK", @"OK button"), nil, nil, tableWindow, self, nil, nil, nil,
- NSLocalizedString(@"The query you are adding to your favorites already exists.", @"query already exists informative message"));
- return;
- }
- }
+ // This should never evaluate to true as we are now performing menu validation, meaning the 'Save Query to Favorites' menu item will
+ // only be enabled if the query text view has at least one character present.
if ([[textView string] isEqualToString:@""]) {
- NSBeginAlertSheet(NSLocalizedString(@"Empty query", @"empty query message"), NSLocalizedString(@"OK", @"OK button"), nil, nil, tableWindow, self, nil, nil, nil,
- NSLocalizedString(@"Cannot save an empty query.", @"empty query informative message"));
- return;
+ NSBeginAlertSheet(NSLocalizedString(@"Empty query", @"empty query message"), NSLocalizedString(@"OK", @"OK button"), nil, nil, tableWindow, self, nil, nil, nil,
+ NSLocalizedString(@"Cannot save an empty query.", @"empty query informative message"));
+ return;
}
- [queryFavorites addObject:[NSString stringWithString:[textView string]]];
- [queryFavoritesView reloadData];
- [prefs setObject:queryFavorites forKey:@"queryFavorites"];
- [self setFavorites];
-
+ [NSApp beginSheet:queryFavoritesSheet
+ modalForWindow:tableWindow
+ modalDelegate:self
+ didEndSelector:@selector(sheetDidEnd:returnCode:contextInfo:)
+ contextInfo:@"addNewQueryFavorite"];
}
- else if ([queryFavoritesButton indexOfSelectedItem] == 2) {
- // Edit favorites
- [NSApp beginSheet:queryFavoritesSheet
+ else if ([queryFavoritesButton indexOfSelectedItem] == 2) {
+ // Open query favorite manager
+ [NSApp beginSheet:[favoritesManager window]
modalForWindow:tableWindow
- modalDelegate:self
+ modalDelegate:favoritesManager
didEndSelector:nil
contextInfo:nil];
}
- else if ([queryFavoritesButton indexOfSelectedItem] != 3) {
+ else if ([queryFavoritesButton indexOfSelectedItem] > 3) {
// Choose favorite
- [textView insertText:[queryFavoritesButton titleOfSelectedItem]];
+ [textView insertText:[[[prefs objectForKey:@"queryFavorites"] objectAtIndex:([queryFavoritesButton indexOfSelectedItem] - 4)] objectForKey:@"query"]];
}
}
@@ -195,7 +181,8 @@
*/
- (IBAction)closeSheet:(id)sender
{
- [NSApp stopModal];
+ [NSApp endSheet:[sender window] returnCode:[sender tag]];
+ [[sender window] orderOut:self];
}
/*
@@ -292,108 +279,6 @@
return (NSFontPanelAllModesMask ^ NSFontPanelAllEffectsModeMask);
}
-
-#pragma mark -
-#pragma mark queryFavoritesSheet methods
-
-/**
- * Adds a query favorite
- */
-- (IBAction)addQueryFavorite:(id)sender
-{
- int row = [queryFavoritesView editedRow];
- int column = [queryFavoritesView editedColumn];
- NSTableColumn *tableColumn;
- NSCell *cell;
-
- // End editing
- if ( row != -1 ) {
- tableColumn = [[queryFavoritesView tableColumns] objectAtIndex:column];
- cell = [tableColumn dataCellForRow:row];
- [cell endEditing:[queryFavoritesView currentEditor]];
- }
-
- [queryFavorites addObject:[NSString string]];
- [queryFavoritesView reloadData];
- [queryFavoritesView selectRow:[queryFavoritesView numberOfRows]-1 byExtendingSelection:NO];
- [queryFavoritesView editColumn:0 row:[queryFavoritesView numberOfRows]-1 withEvent:nil select:YES];
-}
-
-/**
- * Removes a query favorite
- */
-- (IBAction)removeQueryFavorite:(id)sender
-{
- int row = [queryFavoritesView editedRow];
- int column = [queryFavoritesView editedColumn];
- NSTableColumn *tableColumn;
- NSCell *cell;
-
- // End editing
- if ( row != -1 ) {
- tableColumn = [[queryFavoritesView tableColumns] objectAtIndex:column];
- cell = [tableColumn dataCellForRow:row];
- [cell endEditing:[queryFavoritesView currentEditor]];
- }
-
- if ( [queryFavoritesView numberOfSelectedRows] > 0 ) {
- [queryFavorites removeObjectAtIndex:[queryFavoritesView selectedRow]];
- [queryFavoritesView reloadData];
- }
-}
-
-/**
- * Copies a query favorite
- */
-- (IBAction)copyQueryFavorite:(id)sender
-{
- int row = [queryFavoritesView editedRow];
- int column = [queryFavoritesView editedColumn];
- NSTableColumn *tableColumn;
- NSCell *cell;
-
- // End editing
- if ( row != -1 ) {
- tableColumn = [[queryFavoritesView tableColumns] objectAtIndex:column];
- cell = [tableColumn dataCellForRow:row];
- [cell endEditing:[queryFavoritesView currentEditor]];
- }
-
- if ( [queryFavoritesView numberOfSelectedRows] > 0 ) {
- [queryFavorites insertObject:
- [NSString stringWithString:[queryFavorites objectAtIndex:[queryFavoritesView selectedRow]]]
- atIndex:[queryFavoritesView selectedRow]+1];
- [queryFavoritesView reloadData];
- [queryFavoritesView selectRow:[queryFavoritesView selectedRow]+1 byExtendingSelection:NO];
- [queryFavoritesView editColumn:0 row:[queryFavoritesView selectedRow] withEvent:nil select:YES];
- }
-}
-
-/**
- * Closes queryFavoritesSheet and saves favorites to preferences
- */
-- (IBAction)closeQueryFavoritesSheet:(id)sender
-{
- [NSApp endSheet:queryFavoritesSheet returnCode:0];
- [queryFavoritesSheet orderOut:self];
-
- int row = [queryFavoritesView editedRow];
- int column = [queryFavoritesView editedColumn];
- NSTableColumn *tableColumn;
- NSCell *cell;
-
- // End editing
- if (row != -1) {
- tableColumn = [[queryFavoritesView tableColumns] objectAtIndex:column];
- cell = [tableColumn dataCellForRow:row];
- [cell endEditing:[queryFavoritesView currentEditor]];
- }
-
- [prefs setObject:queryFavorites forKey:@"queryFavorites"];
- [self setFavorites];
-}
-
-
#pragma mark -
#pragma mark Query actions
@@ -403,7 +288,6 @@
*/
- (void)performQueries:(NSArray *)queries;
{
-
NSArray *theColumns;
NSTableColumn *theCol;
MCPStreamingResult *streamingResult = nil;
@@ -1129,21 +1013,9 @@
*/
- (void)setConnection:(MCPConnection *)theConnection
{
- NSArray *tableColumns = [queryFavoritesView tableColumns];
- NSEnumerator *enumerator = [tableColumns objectEnumerator];
- id column;
-
mySQLConnection = theConnection;
-
- prefs = [NSUserDefaults standardUserDefaults];
currentQueryRanges = nil;
- if ( [prefs objectForKey:@"queryFavorites"] ) {
- queryFavorites = [[NSMutableArray alloc] initWithArray:[prefs objectForKey:@"queryFavorites"]];
- } else {
- queryFavorites = [[NSMutableArray array] retain];
- }
-
hasBackgroundAttribute = NO;
// Set up the interface
@@ -1172,39 +1044,14 @@
[textView setAutohelp:[prefs boolForKey:@"CustomQueryUpdateAutoHelp"]];
[autouppercaseKeywordsMenuItem setState:([prefs boolForKey:@"CustomQueryAutoUppercaseKeywords"]?NSOnState:NSOffState)];
[textView setAutouppercaseKeywords:[prefs boolForKey:@"CustomQueryAutoUppercaseKeywords"]];
- [queryFavoritesView registerForDraggedTypes:[NSArray arrayWithObjects:@"SequelProPasteboard", nil]];
- while ( (column = [enumerator nextObject]) )
- {
- if ( [prefs boolForKey:@"UseMonospacedFonts"] ) {
- [[column dataCell] setFont:[NSFont fontWithName:@"Monaco" size:10]];
- } else {
- [[column dataCell] setFont:[NSFont systemFontOfSize:[NSFont smallSystemFontSize]]];
- }
- }
if ( [prefs objectForKey:@"queryHistory"] )
{
[queryHistoryButton addItemsWithTitles:[prefs objectForKey:@"queryHistory"]];
}
- [self setFavorites];
// Disable runSelectionMenuItem in the gear menu
[runSelectionMenuItem setEnabled:NO];
-
-}
-
-/*
- * Set up the favorites popUpButton
- */
-- (void)setFavorites
-{
- int i;
-
-//remove all menuItems and add favorites from preferences
- for ( i = 4 ; i < [queryFavoritesButton numberOfItems] ; i++ ) {
- [queryFavoritesButton removeItemAtIndex:i];
- }
- [queryFavoritesButton addItemsWithTitles:queryFavorites];
}
/*
@@ -1226,7 +1073,7 @@
return usedQuery;
}
-#pragma mark
+#pragma mark -
#pragma mark Field Editing
/*
@@ -1313,8 +1160,6 @@
} else {
return [fullResult count];
}
- } else if ( aTableView == queryFavoritesView ) {
- return [queryFavorites count];
} else {
return 0;
}
@@ -1359,11 +1204,6 @@
return theValue;
}
-
- else if ( aTableView == queryFavoritesView ) {
- return [queryFavorites objectAtIndex:rowIndex];
- }
-
else {
return @"";
}
@@ -1372,37 +1212,7 @@
- (void)tableView:(NSTableView *)aTableView setObjectValue:(id)anObject
forTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex
{
- if ( aTableView == queryFavoritesView ) {
- NSEnumerator *enumerator = [queryFavorites objectEnumerator];
- id favorite;
- int i = 0;
-
- if ( [anObject isEqualToString:@""] ) {
- [queryFavoritesView deselectAll:self];
- [queryFavorites removeObjectAtIndex:rowIndex];
- [queryFavoritesView reloadData];
- return;
- }
-
- while ( (favorite = [enumerator nextObject]) ) {
- if ( [favorite isEqualToString:anObject] && i != rowIndex) {
- NSRunAlertPanel(@"Query already exists", @"The query you are adding to your favorites already exists.", @"OK", nil, nil);
-
- //remove row if it was a (blank) new row or a copied row
- if ( [NSArrayObjectAtIndex(queryFavorites, rowIndex) isEqualToString:@""] ||
- [NSArrayObjectAtIndex(queryFavorites, rowIndex) isEqualToString:anObject] ) {
- [queryFavoritesView deselectAll:self];
- [queryFavorites removeObjectAtIndex:rowIndex];
- [queryFavoritesView reloadData];
- }
- return;
- }
- i++;
- }
- [queryFavorites replaceObjectAtIndex:rowIndex withObject:anObject];
- [queryFavoritesView reloadData];
- }
- else if ( aTableView == customQueryView ) {
+ if ( aTableView == customQueryView ) {
// Field editing
@@ -1608,26 +1418,7 @@
- (BOOL)tableView:(NSTableView *)aTableView writeRows:(NSArray*)rows toPasteboard:(NSPasteboard*)pboard
{
- int originalRow;
- NSArray *pboardTypes;
-
- if ( aTableView == queryFavoritesView )
- {
- if ( [rows count] == 1 )
- {
- pboardTypes = [NSArray arrayWithObjects:@"SequelProPasteboard", nil];
- originalRow = [[rows objectAtIndex:0] intValue];
-
- [pboard declareTypes:pboardTypes owner:nil];
- [pboard setString:[[NSNumber numberWithInt:originalRow] stringValue] forType:@"SequelProPasteboard"];
-
- return YES;
- }
- else
- {
- return NO;
- }
- } else if ( aTableView == customQueryView ) {
+ if ( aTableView == customQueryView ) {
NSString *tmp = [customQueryView draggedRowsAsTabString:rows];
if ( nil != tmp )
{
@@ -1644,7 +1435,7 @@
}
}
-- (NSDragOperation)tableView:(NSTableView*)aTableView validateDrop:(id <NSDraggingInfo>)info proposedRow:(int)row
+/*- (NSDragOperation)tableView:(NSTableView*)aTableView validateDrop:(id <NSDraggingInfo>)info proposedRow:(int)row
proposedDropOperation:(NSTableViewDropOperation)operation
{
NSArray *pboardTypes = [[info draggingPasteboard] types];
@@ -1693,8 +1484,7 @@
} else {
return NO;
}
-}
-
+}*/
#pragma mark -
#pragma mark TableView delegate methods
@@ -1836,19 +1626,6 @@
#pragma mark -
#pragma mark TableView notifications
-/*
- * Updates various interface elements based on the current table view selection.
- */
-- (void)tableViewSelectionDidChange:(NSNotification *)notification
-{
- if ([notification object] == queryFavoritesView) {
-
- // Enable/disable buttons
- [removeQueryFavoriteButton setEnabled:([queryFavoritesView numberOfSelectedRows] == 1)];
- [copyQueryFavoriteButton setEnabled:([queryFavoritesView numberOfSelectedRows] == 1)];
- }
-}
-
/**
* Saves the new column size in the preferences for columns which map to fields
*/
@@ -2016,7 +1793,6 @@
[runSelectionMenuItem setEnabled:YES];
[commentLineOrSelectionMenuItem setTitle:NSLocalizedString(@"Comment Selection", @"Title of action menu item to comment selection")];
}
-
}
/*
@@ -2025,10 +1801,21 @@
- (void)textViewDidChangeTypingAttributes:(NSNotification *)aNotification
{
// Only save the font if prefs have been loaded, ensuring the saved font has been applied once.
- if (prefs)
- [prefs setObject:[NSArchiver archivedDataWithRootObject:[textView font]] forKey:@"CustomQueryEditorFont"];
+ if (prefs) [prefs setObject:[NSArchiver archivedDataWithRootObject:[textView font]] forKey:@"CustomQueryEditorFont"];
}
+#pragma mark -
+#pragma mark TextField delegate methods
+
+/**
+ * Called whenever the user changes the name of the new query favorite.
+ */
+- (void)controlTextDidChange:(NSNotification *)notification
+{
+ if ([notification object] == queryFavoriteNameTextField) {
+ [saveQueryFavoriteButton setEnabled:[[queryFavoriteNameTextField stringValue] length]];
+ }
+}
#pragma mark -
#pragma mark SplitView delegate methods
@@ -2541,14 +2328,39 @@
}
return webViewMenuItems;
+}
+
+#pragma mark -
+#pragma mark Query favorites manager delegate methods
+/**
+ * Called by the query favorites manager whenever the query favorites have been updated.
+ */
+- (void)queryFavoritesHaveBeenUpdated:(id)manager
+{
+ NSInteger i;
+ NSMutableArray *favorites = ([favoritesManager queryFavorites]) ? [favoritesManager queryFavorites] : [prefs objectForKey:@"queryFavorites"];
+
+ // Remove all favorites
+ for (i = 4; i < [queryFavoritesButton numberOfItems]; i++)
+ {
+ [queryFavoritesButton removeItemAtIndex:i];
+ }
+
+ // Re-add favorites
+ for (NSDictionary *favorite in favorites)
+ {
+ [queryFavoritesButton addItemWithTitle:[favorite objectForKey:@"name"]];
+ }
}
#pragma mark -
#pragma mark Other
-
-- (unsigned int)numberOfQueries
+/**
+ * Returns the number of queries.
+ */
+- (NSUInteger)numberOfQueries
{
return numberOfQueries;
}
@@ -2563,10 +2375,48 @@
}
}
+/**
+ * Called when the save query favorite sheet is dismissed.
+ */
+- (void)sheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(NSString *)contextInfo
+{
+ if ([contextInfo isEqualToString:@"addNewQueryFavorite"]) {
+ if (returnCode == NSOKButton) {
+
+ // Add the new query favorite directly the user's preferences here instead of asking the manager to do it
+ // as it may not have been fully initialized yet.
+ NSMutableArray *favorites = [NSMutableArray arrayWithArray:[prefs objectForKey:@"queryFavorites"]];
+
+ [favorites addObject:[NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:[queryFavoriteNameTextField stringValue], [textView string], nil] forKeys:[NSArray arrayWithObjects:@"name", @"query", nil]]];
+
+ [prefs setObject:favorites forKey:@"queryFavorites"];
+ [prefs synchronize];
+
+ [self queryFavoritesHaveBeenUpdated:nil];
+ }
+ }
+
+ [queryFavoriteNameTextField setStringValue:@""];
+}
+
+/**
+ * Menu item validation.
+ */
+- (BOOL)validateMenuItem:(NSMenuItem *)menuItem
+{
+ // Use the menu item's title instead of its action as all menu items in the drop down have the same action
+ if ([[menuItem title] isEqualToString:@"Save Query to Favorites"]) {
+ return ([[textView string] length] > 0);
+ }
+
+ return YES;
+}
+
+
#pragma mark -
// Last but not least
-- (id)init;
+- (id)init
{
if ((self = [super init])) {
@@ -2595,7 +2445,11 @@
// init tableView's data source
fullResult = [[NSMutableArray alloc] init];
-
+
+ // init query favorites controller
+ favoritesManager = [[SPQueryFavoriteManager alloc] initWithDelegate:self];
+
+ prefs = [NSUserDefaults standardUserDefaults];
}
return self;
@@ -2605,14 +2459,22 @@
{
// Set the structure and index view's vertical gridlines if required
[customQueryView setGridStyleMask:([prefs boolForKey:@"DisplayTableViewVerticalGridlines"]) ? NSTableViewSolidVerticalGridLineMask : NSTableViewGridNone];
+
+ // Populate the query favorites popup button
+ for (NSDictionary *favorite in [prefs objectForKey:@"queryFavorites"])
+ {
+ [queryFavoritesButton addItemWithTitle:[favorite objectForKey:@"name"]];
+ }
}
- (void)dealloc
{
- [queryFavorites release];
[usedQuery release];
[fullResult release];
+ [favoritesManager release];
+
if (sortField) [sortField release];
+
[super dealloc];
}
diff --git a/Source/SPPreferenceController.m b/Source/SPPreferenceController.m
index f9618249..d27234d7 100644
--- a/Source/SPPreferenceController.m
+++ b/Source/SPPreferenceController.m
@@ -111,6 +111,7 @@
// -------------------------------------------------------------------------------
- (void)applyRevisionChanges
{
+ int i;
int currentVersionNumber, recordedVersionNumber = 0;
// Get the current bundle version number (the SVN build number) for per-version upgrades
@@ -202,7 +203,6 @@
// For versions prior to r567 (0.9.5), add a timestamp-based identifier to favorites and keychain entries
if (recordedVersionNumber < 567 && [prefs objectForKey:@"favorites"]) {
- int i;
NSMutableArray *favoritesArray = [NSMutableArray arrayWithArray:[prefs objectForKey:@"favorites"]];
NSMutableDictionary *favorite;
NSString *password, *keychainName, *keychainAccount;
@@ -231,7 +231,6 @@
// For versions prior to r981 (~0.9.6), upgrade the favourites to include a connection type for each
if (recordedVersionNumber < 981 && [prefs objectForKey:@"favorites"]) {
- int i;
NSMutableArray *favoritesArray = [NSMutableArray arrayWithArray:[prefs objectForKey:@"favorites"]];
NSMutableDictionary *favorite;
@@ -269,6 +268,25 @@
[toolbarDict removeObjectForKey:@"TB Item Identifiers"];
[prefs setObject:[NSDictionary dictionaryWithDictionary:toolbarDict] forKey:@"NSToolbar Configuration TableWindowToolbar"];
}
+
+ // For versions prior to r1263 (~0.9.7), convert the query favorites array to an array of dictionaries
+ if (recordedVersionNumber < 1263 && [prefs objectForKey:@"queryFavorites"]) {
+ NSMutableArray *queryFavoritesArray = [NSMutableArray arrayWithArray:[prefs objectForKey:@"queryFavorites"]];
+
+ for (i = 0; i < [queryFavoritesArray count]; i++)
+ {
+ id favorite = [queryFavoritesArray objectAtIndex:i];
+
+ if (([favorite isKindOfClass:[NSDictionary class]]) && ([favorite objectForKey:@"name"]) && ([favorite objectForKey:@"query"])) continue;
+
+ // By default make the query's name the first 32 characters of the query with '...' appended
+ NSString *favoriteName = [[[favorite stringByTrimmingCharactersInSet:[NSCharacterSet newlineCharacterSet]] substringToIndex:32] stringByAppendingString:@"..."];
+
+ [queryFavoritesArray replaceObjectAtIndex:i withObject:[NSDictionary dictionaryWithObjects:[NSArray arrayWithObjects:favoriteName, favorite, nil] forKeys:[NSArray arrayWithObjects:@"name", @"query", nil]]];
+ }
+
+ [prefs setObject:queryFavoritesArray forKey:@"queryFavorites"];
+ }
// Update the prefs revision
[prefs setObject:[NSNumber numberWithInt:currentVersionNumber] forKey:@"LastUsedVersion"];
diff --git a/Source/SPQueryFavoriteManager.h b/Source/SPQueryFavoriteManager.h
new file mode 100644
index 00000000..bc0d7e2d
--- /dev/null
+++ b/Source/SPQueryFavoriteManager.h
@@ -0,0 +1,74 @@
+//
+// $Id$
+//
+// SPQueryFavoriteManager.h
+// sequel-pro
+//
+// Created by Stuart Connolly (stuconnolly.com) on Aug 23, 2009
+// Copyright (c) 2009 Stuart Connolly. All rights reserved.
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 2 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+#import <Cocoa/Cocoa.h>
+
+// Query favorite addition constants
+typedef enum {
+ SPQueryFavoriteAdded = 0,
+ SPQueryFavoriteIsBlank = 1,
+ SPQueryFavoriteExists = 2
+} SPQueryFavoriteAddition;
+
+@interface NSObject (SPQueryFavoriteManagerDelegate)
+
+- (void)queryFavoritesHaveBeenUpdated:(id)manager;
+
+@end
+
+@interface SPQueryFavoriteManager : NSWindowController
+{
+ id delegate;
+
+ NSUserDefaults *prefs;
+
+ BOOL delegateRespondsToFavoriteUpdates;
+
+ IBOutlet NSPopUpButton *encodingPopUp;
+ IBOutlet NSTableView *favoritesTableView;
+ IBOutlet NSTextField *favoriteNameTextField;
+ IBOutlet NSTextView *favoriteQueryTextView;
+ IBOutlet NSArrayController *queryFavoritesController;
+}
+
+- (id)initWithDelegate:(id)managerDelegate;
+
+// Accessors
+- (NSMutableArray *)queryFavorites;
+- (id)customQueryInstance;
+
+// IBAction methods
+- (IBAction)addQueryFavorite:(id)sender;
+- (IBAction)removeQueryFavorite:(id)sender;
+- (IBAction)removeAllQueryFavorites:(id)sender;
+- (IBAction)copyQueryFavorite:(id)sender;
+- (IBAction)saveFavoriteToFile:(id)sender;
+- (IBAction)closeQueryManagerSheet:(id)sender;
+
+// Favorite methods
+- (NSString *)queryFavoriteAtIndex:(NSInteger)index;
+- (SPQueryFavoriteAddition)addQueryToFavorites:(NSString *)query;
+
+@end
diff --git a/Source/SPQueryFavoriteManager.m b/Source/SPQueryFavoriteManager.m
new file mode 100644
index 00000000..ee4f8c56
--- /dev/null
+++ b/Source/SPQueryFavoriteManager.m
@@ -0,0 +1,415 @@
+//
+// $Id$
+//
+// SPQueryFavoriteManager.m
+// sequel-pro
+//
+// Created by Stuart Connolly (stuconnolly.com) on Aug 23, 2009
+// Copyright (c) 2009 Stuart Connolly. All rights reserved.
+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 2 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+//
+// More info at <http://code.google.com/p/sequel-pro/>
+
+#import "SPQueryFavoriteManager.h"
+#import "SPEncodingPopupAccessory.h"
+
+#define DEFAULT_QUERY_FAVORITE_FILE_EXTENSION @"sql"
+#define QUERY_FAVORITES_PB_DRAG_TYPE @"SequelProQueryFavoritesPasteboard"
+
+@implementation SPQueryFavoriteManager
+
+/**
+ * Initialize the manager with the supplied delegate
+ */
+- (id)initWithDelegate:(id)managerDelegate
+{
+ if ((self = [super initWithWindowNibName:@"QueryFavoriteManager"])) {
+ delegate = managerDelegate;
+
+ prefs = [NSUserDefaults standardUserDefaults];
+
+ delegateRespondsToFavoriteUpdates = [delegate respondsToSelector:@selector(queryFavoritesHaveBeenUpdated:)];
+ }
+
+ return self;
+}
+
+/**
+ * Upon awakening bind the query text view's background colour.
+ */
+- (void)awakeFromNib
+{
+ [favoriteQueryTextView setAllowsDocumentBackgroundColorChange:YES];
+
+ NSMutableDictionary *bindingOptions = [NSMutableDictionary dictionary];
+
+ [bindingOptions setObject:NSUnarchiveFromDataTransformerName forKey:@"NSValueTransformerName"];
+
+ [favoriteQueryTextView bind:@"backgroundColor"
+ toObject:[NSUserDefaultsController sharedUserDefaultsController]
+ withKeyPath:@"values.CustomQueryEditorBackgroundColor"
+ options:bindingOptions];
+
+ // Select the first query
+ [queryFavoritesController setSelectionIndex:0];
+
+ // Register drag types
+ [favoritesTableView registerForDraggedTypes:[NSArray arrayWithObject:QUERY_FAVORITES_PB_DRAG_TYPE]];
+}
+
+#pragma mark -
+#pragma mark Accessor methods
+
+/**
+ * Returns the query favorites array.
+ */
+- (NSMutableArray *)queryFavorites
+{
+ return [queryFavoritesController arrangedObjects];
+}
+
+/**
+ * This method is only implemented to be compatible with CMTextView.
+ */
+- (id)customQueryInstance
+{
+ return [[[NSApp mainWindow] delegate] valueForKey:@"customQueryInstance"];
+}
+
+#pragma mark -
+#pragma mark IBAction methods
+
+/**
+ * Adds a query favorite
+ */
+- (IBAction)addQueryFavorite:(id)sender
+{
+ NSMutableDictionary *favorite = [NSMutableDictionary dictionaryWithObjects:[NSArray arrayWithObjects:@"New Favorite", @"", nil] forKeys:[NSArray arrayWithObjects:@"name", @"query", nil]];
+
+ [queryFavoritesController addObject:favorite];
+ [queryFavoritesController setSelectionIndex:([[queryFavoritesController arrangedObjects] count] - 1)];
+
+ [favoritesTableView reloadData];
+ [favoritesTableView scrollRowToVisible:[favoritesTableView selectedRow]];
+
+ // Inform the delegate that the query favorites have been updated
+ if (delegateRespondsToFavoriteUpdates) {
+ [delegate queryFavoritesHaveBeenUpdated:self];
+ }
+}
+
+/**
+ * Removes a query favorite
+ */
+- (IBAction)removeQueryFavorite:(id)sender
+{
+ if ([favoritesTableView numberOfSelectedRows] == 1) {
+ [queryFavoritesController removeObjectAtArrangedObjectIndex:[favoritesTableView selectedRow]];
+
+ [favoritesTableView reloadData];
+
+ // Inform the delegate that the query favorites have been updated
+ if (delegateRespondsToFavoriteUpdates) {
+ [delegate queryFavoritesHaveBeenUpdated:self];
+ }
+ }
+}
+
+/**
+ * Removes all query favorites
+ */
+- (IBAction)removeAllQueryFavorites:(id)sender
+{
+ NSAlert *alert = [NSAlert alertWithMessageText:NSLocalizedString(@"Remove all query favorites?", @"remove all query favorites message")
+ defaultButton:NSLocalizedString(@"Cancel", @"cancel button")
+ alternateButton:NSLocalizedString(@"Remove All", @"remove all button")
+ otherButton:nil
+ informativeTextWithFormat:NSLocalizedString(@"Are you sure you want to remove all of your saved query favorites? This action cannot be undone.", @"remove all query favorites informative message")];
+
+ [alert setAlertStyle:NSCriticalAlertStyle];
+
+ NSArray *buttons = [alert buttons];
+
+ // Change the alert's cancel button to have the key equivalent of return
+ [[buttons objectAtIndex:0] setKeyEquivalent:@"\r"];
+ [[buttons objectAtIndex:1] setKeyEquivalent:@""];
+
+ [alert beginSheetModalForWindow:[self window] modalDelegate:self didEndSelector:@selector(sheetDidEnd:returnCode:contextInfo:) contextInfo:@"removeAllFavorites"];
+}
+
+/**
+ * Copies a query favorite
+ */
+- (IBAction)copyQueryFavorite:(id)sender
+{
+ if ([favoritesTableView numberOfSelectedRows] == 1) {
+ NSMutableDictionary *favorite = [NSMutableDictionary dictionaryWithObjects:[NSArray arrayWithObjects:[[favoriteNameTextField stringValue] stringByAppendingFormat:@" Copy"], [favoriteQueryTextView string], nil] forKeys:[NSArray arrayWithObjects:@"name", @"query", nil]];
+
+ [queryFavoritesController addObject:favorite];
+ [queryFavoritesController setSelectionIndex:([[queryFavoritesController arrangedObjects] count] - 1)];
+
+ [favoritesTableView reloadData];
+ [favoritesTableView scrollRowToVisible:[favoritesTableView selectedRow]];
+
+ // Inform the delegate that the query favorites have been updated
+ if (delegateRespondsToFavoriteUpdates) {
+ [delegate queryFavoritesHaveBeenUpdated:self];
+ }
+ }
+}
+
+/**
+ * Saves the currently selected query favorite to a user specified file.
+ */
+- (IBAction)saveFavoriteToFile:(id)sender
+{
+ NSSavePanel *panel = [NSSavePanel savePanel];
+
+ [panel setRequiredFileType:DEFAULT_QUERY_FAVORITE_FILE_EXTENSION];
+
+ [panel setExtensionHidden:NO];
+ [panel setAllowsOtherFileTypes:YES];
+ [panel setCanSelectHiddenExtension:YES];
+
+ [panel setAccessoryView:[SPEncodingPopupAccessory encodingAccessory:[prefs integerForKey:@"lastSqlFileEncoding"] includeDefaultEntry:NO encodingPopUp:&encodingPopUp]];
+
+ [encodingPopUp setEnabled:YES];
+
+ [panel beginSheetForDirectory:nil file:[favoriteNameTextField stringValue] modalForWindow:[self window] modalDelegate:self didEndSelector:@selector(savePanelDidEnd:returnCode:contextInfo:) contextInfo:NULL];
+}
+
+/**
+ * Closes the query favorite manager
+ */
+- (IBAction)closeQueryManagerSheet:(id)sender
+{
+ [NSApp endSheet:[self window] returnCode:0];
+ [[self window] orderOut:self];
+}
+
+#pragma mark -
+#pragma mark Favorite methods
+
+/**
+ * Returns the query favorite at the supplied index.
+ */
+- (NSString *)queryFavoriteAtIndex:(NSInteger)index
+{
+ return [[[queryFavoritesController arrangedObjects] objectAtIndex:index] objectForKey:@"query"];
+}
+
+/**
+ * Adds the supplied query the user's favorites.
+ */
+- (SPQueryFavoriteAddition)addQueryToFavorites:(NSString *)query
+{
+ if ([query isEqualToString:@""]) return SPQueryFavoriteIsBlank;
+
+ // Check that the favorite doesn't already exist
+ for (NSDictionary *favorite in [queryFavoritesController arrangedObjects])
+ {
+ if ([[favorite objectForKey:@"query"] isEqualToString:query]) {
+ return SPQueryFavoriteExists;
+ }
+ }
+
+ NSMutableDictionary *favorite = [NSMutableDictionary dictionaryWithObjects:[NSArray arrayWithObjects:@"test", query, nil] forKeys:[NSArray arrayWithObjects:@"name", @"query", nil]];
+
+ [queryFavoritesController addObject:favorite];
+ [queryFavoritesController setSelectionIndex:([[queryFavoritesController arrangedObjects] count] - 1)];
+
+ [favoritesTableView reloadData];
+ [favoritesTableView scrollRowToVisible:[favoritesTableView selectedRow]];
+
+ // Inform the delegate that the query favorites have been updated
+ if (delegateRespondsToFavoriteUpdates) {
+ [delegate queryFavoritesHaveBeenUpdated:self];
+ }
+
+ return SPQueryFavoriteAdded;
+}
+
+#pragma mark -
+#pragma mark SplitView delegate methods
+
+/**
+ * Return the maximum possible size of the splitview.
+ */
+- (float)splitView:(NSSplitView *)sender constrainMaxCoordinate:(float)proposedMax ofSubviewAt:(int)offset
+{
+ return (proposedMax - 220);
+}
+
+/**
+ * Return the minimum possible size of the splitview.
+ */
+- (float)splitView:(NSSplitView *)sender constrainMinCoordinate:(float)proposedMin ofSubviewAt:(int)offset
+{
+ return (proposedMin + 120);
+}
+
+#pragma mark -
+#pragma mark TableView datasource methods
+
+/**
+ * Returns the number of query favorites.
+ */
+- (int)numberOfRowsInTableView:(NSTableView *)aTableView
+{
+ return [[queryFavoritesController arrangedObjects] count];
+}
+
+/**
+ * Returns the value for the requested table column and row index.
+ */
+- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex
+{
+ return [[[queryFavoritesController arrangedObjects] objectAtIndex:rowIndex] objectForKey:[aTableColumn identifier]];
+}
+
+#pragma mark -
+#pragma mark TableView delegate methods
+
+/**
+ * Called whenever the user's changes the currently selected favorite.
+ */
+/*- (void)tableViewSelectionDidChange:(NSNotification *)notification
+{
+ [favoriteQueryTextView setString:@""];
+
+ if ([favoritesTableView numberOfSelectedRows] == 1) {
+ [favoriteQueryTextView setString:[[[queryFavoritesController arrangedObjects] objectAtIndex:[favoritesTableView selectedRow]] objectForKey:@"query"]];
+ }
+}*/
+
+#pragma mark -
+#pragma mark Menu validation
+
+/**
+ * Menu item validation.
+ */
+- (BOOL)validateMenuItem:(NSMenuItem *)menuItem
+{
+ SEL action = [menuItem action];
+
+ if ((action == @selector(removeQueryFavorite:)) ||
+ (action == @selector(copyQueryFavorite:)) ||
+ (action == @selector(saveFavoriteToFile:)))
+ {
+ return ([favoritesTableView numberOfSelectedRows] == 1);
+ }
+ else if (action == @selector(removeAllQueryFavorites:)) {
+ return ([[queryFavoritesController arrangedObjects] count] > 0);
+ }
+
+ return YES;
+}
+
+#pragma mark -
+#pragma mark TableView drag & drop delegate methods
+
+/**
+ * Return whether or not the supplied rows can be written.
+ */
+- (BOOL)tableView:(NSTableView *)tableView writeRows:(NSArray *)rows toPasteboard:(NSPasteboard *)pboard
+{
+ if ([rows count] == 1) {
+ NSArray *pboardTypes = [NSArray arrayWithObject:QUERY_FAVORITES_PB_DRAG_TYPE];
+ NSInteger originalRow = [[rows objectAtIndex:0] intValue];
+
+ [pboard declareTypes:pboardTypes owner:nil];
+ [pboard setString:[[NSNumber numberWithInt:originalRow] stringValue] forType:QUERY_FAVORITES_PB_DRAG_TYPE];
+
+ return YES;
+ }
+
+ return NO;
+}
+
+/**
+ * Validate the proposed drop of the supplied rows.
+ */
+- (NSDragOperation)tableView:(NSTableView *)tableView validateDrop:(id <NSDraggingInfo>)info proposedRow:(NSInteger)row proposedDropOperation:(NSTableViewDropOperation)operation
+{
+ NSArray *pboardTypes = [[info draggingPasteboard] types];
+
+ if (([pboardTypes count] > 1) && (row != -1)) {
+ if (([pboardTypes containsObject:QUERY_FAVORITES_PB_DRAG_TYPE]) && (operation == NSTableViewDropAbove)) {
+ NSInteger originalRow = [[[info draggingPasteboard] stringForType:QUERY_FAVORITES_PB_DRAG_TYPE] intValue];
+
+ if ((row != originalRow) && (row != (originalRow + 1))) {
+ return NSDragOperationMove;
+ }
+ }
+ }
+
+ return NSDragOperationNone;
+}
+
+/**
+ * Return whether or not to accept the drop of the supplied rows.
+ */
+- (BOOL)tableView:(NSTableView *)tableView acceptDrop:(id <NSDraggingInfo>)info row:(NSInteger)row dropOperation:(NSTableViewDropOperation)operation
+{
+ NSInteger originalRow = [[[info draggingPasteboard] stringForType:QUERY_FAVORITES_PB_DRAG_TYPE] intValue];
+ NSInteger destinationRow = row;
+
+ if (destinationRow > originalRow) destinationRow--;
+
+ NSMutableDictionary *draggedRow = [NSMutableDictionary dictionaryWithDictionary:[[queryFavoritesController arrangedObjects] objectAtIndex:originalRow]];
+
+ [queryFavoritesController removeObjectAtArrangedObjectIndex:originalRow];
+ [queryFavoritesController insertObject:draggedRow atArrangedObjectIndex:destinationRow];
+
+ [favoritesTableView reloadData];
+ [favoritesTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:destinationRow] byExtendingSelection:NO];
+
+ return YES;
+}
+
+#pragma mark -
+#pragma mark Other
+
+/**
+ * Sheet did end method
+ */
+- (void)sheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(NSString *)contextInfo
+{
+ if ([contextInfo isEqualToString:@"removeAllFavorites"]) {
+ if (returnCode == NSAlertAlternateReturn) {
+ [queryFavoritesController removeObjects:[queryFavoritesController arrangedObjects]];
+ }
+ }
+}
+
+/**
+ * Save panel did end method.
+ */
+- (void)savePanelDidEnd:(NSSavePanel *)panel returnCode:(int)returnCode contextInfo:(NSString *)contextInfo
+{
+ if (returnCode == NSOKButton) {
+ NSError *error = nil;
+
+ [prefs setInteger:[[encodingPopUp selectedItem] tag] forKey:@"lastSqlFileEncoding"];
+ [prefs synchronize];
+
+ [[favoriteQueryTextView string] writeToFile:[panel filename] atomically:YES encoding:[[encodingPopUp selectedItem] tag] error:&error];
+
+ if (error) [[NSAlert alertWithError:error] runModal];
+ }
+}
+
+@end
diff --git a/sequel-pro.xcodeproj/project.pbxproj b/sequel-pro.xcodeproj/project.pbxproj
index fe7b98b5..ac8cdfe0 100644
--- a/sequel-pro.xcodeproj/project.pbxproj
+++ b/sequel-pro.xcodeproj/project.pbxproj
@@ -9,6 +9,9 @@
/* Begin PBXBuildFile section */
170088CE0F5870E200DD6B51 /* SPQueryConsole.m in Sources */ = {isa = PBXBuildFile; fileRef = 170088CD0F5870E200DD6B51 /* SPQueryConsole.m */; };
172A65110F7BED7A001E861A /* SPConsoleMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 172A65100F7BED7A001E861A /* SPConsoleMessage.m */; };
+ 173C4362104455CA001F3A30 /* QueryFavoriteManager.xib in Resources */ = {isa = PBXBuildFile; fileRef = 173C4360104455CA001F3A30 /* QueryFavoriteManager.xib */; };
+ 173C4366104455E0001F3A30 /* SPQueryFavoriteManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 173C4365104455E0001F3A30 /* SPQueryFavoriteManager.m */; };
+ 173C44D81044A6B0001F3A30 /* SPOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = 173C44D71044A6B0001F3A30 /* SPOutlineView.m */; };
1740FABB0FC4372F00CF3699 /* SPDatabaseData.m in Sources */ = {isa = PBXBuildFile; fileRef = 1740FABA0FC4372F00CF3699 /* SPDatabaseData.m */; };
1761FD480EF03A6F00331368 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1761FD460EF03A6F00331368 /* MainMenu.xib */; };
177E792E0FCB54EC00E9E122 /* database-small.png in Resources */ = {isa = PBXBuildFile; fileRef = 177E792B0FCB54EC00E9E122 /* database-small.png */; };
@@ -126,7 +129,6 @@
4D90B79E101E0CF200D116A1 /* SPUserManager.xcdatamodel in Sources */ = {isa = PBXBuildFile; fileRef = 4D90B79B101E0CF200D116A1 /* SPUserManager.xcdatamodel */; };
4D90B79F101E0CF200D116A1 /* SPUserMO.m in Sources */ = {isa = PBXBuildFile; fileRef = 4D90B79D101E0CF200D116A1 /* SPUserMO.m */; };
4D90B7A2101E0D1500D116A1 /* UserManagerView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4D90B7A0101E0D1500D116A1 /* UserManagerView.xib */; };
- 4DDF652E104480C5007DA229 /* SPOutlineView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4DDF652D104480C5007DA229 /* SPOutlineView.m */; };
4DECC3350EC2A170008D359E /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DECC3320EC2A170008D359E /* Sparkle.framework */; };
4DECC3370EC2A170008D359E /* Growl.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4DECC3340EC2A170008D359E /* Growl.framework */; };
4DECC48F0EC2B436008D359E /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 4DECC3320EC2A170008D359E /* Sparkle.framework */; };
@@ -328,6 +330,11 @@
17128B8A0FE6E0210035DD75 /* QLPreviewPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QLPreviewPanel.h; sourceTree = "<group>"; };
172A650F0F7BED7A001E861A /* SPConsoleMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPConsoleMessage.h; sourceTree = "<group>"; };
172A65100F7BED7A001E861A /* SPConsoleMessage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPConsoleMessage.m; sourceTree = "<group>"; };
+ 173C4361104455CA001F3A30 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/QueryFavoriteManager.xib; sourceTree = "<group>"; };
+ 173C4364104455E0001F3A30 /* SPQueryFavoriteManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPQueryFavoriteManager.h; sourceTree = "<group>"; };
+ 173C4365104455E0001F3A30 /* SPQueryFavoriteManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPQueryFavoriteManager.m; sourceTree = "<group>"; };
+ 173C44D61044A6AF001F3A30 /* SPOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPOutlineView.h; sourceTree = "<group>"; };
+ 173C44D71044A6B0001F3A30 /* SPOutlineView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPOutlineView.m; sourceTree = "<group>"; };
1740FAB90FC4372F00CF3699 /* SPDatabaseData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPDatabaseData.h; sourceTree = "<group>"; };
1740FABA0FC4372F00CF3699 /* SPDatabaseData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPDatabaseData.m; sourceTree = "<group>"; };
1761FD470EF03A6F00331368 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/MainMenu.xib; sourceTree = "<group>"; };
@@ -492,8 +499,6 @@
4D90B79C101E0CF200D116A1 /* SPUserMO.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPUserMO.h; sourceTree = "<group>"; };
4D90B79D101E0CF200D116A1 /* SPUserMO.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPUserMO.m; sourceTree = "<group>"; };
4D90B7A1101E0D1500D116A1 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/UserManagerView.xib; sourceTree = "<group>"; };
- 4DDF652C104480C5007DA229 /* SPOutlineView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SPOutlineView.h; sourceTree = "<group>"; };
- 4DDF652D104480C5007DA229 /* SPOutlineView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SPOutlineView.m; sourceTree = "<group>"; };
4DECC3320EC2A170008D359E /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Sparkle.framework; path = Frameworks/Sparkle.framework; sourceTree = "<group>"; };
4DECC3340EC2A170008D359E /* Growl.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Growl.framework; path = Frameworks/Growl.framework; sourceTree = "<group>"; };
581068B51015411B0068C6E2 /* link-arrow-highlighted.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "link-arrow-highlighted.png"; sourceTree = "<group>"; };
@@ -924,6 +929,8 @@
29A1B7E40FD1293A000B88E8 /* SPPrintAccessory.m */,
170088CC0F5870E200DD6B51 /* SPQueryConsole.h */,
170088CD0F5870E200DD6B51 /* SPQueryConsole.m */,
+ 173C4364104455E0001F3A30 /* SPQueryFavoriteManager.h */,
+ 173C4365104455E0001F3A30 /* SPQueryFavoriteManager.m */,
58FEF57C0F3B4E9700518E8E /* SPTableData.h */,
58FEF57D0F3B4E9700518E8E /* SPTableData.m */,
387BBBA60FBCB6CB00B31746 /* SPTableRelations.h */,
@@ -973,12 +980,12 @@
17E641690EF01F37001BC333 /* ImageAndTextCell.m */,
B57747DA0F7A89D0003B34F9 /* SPFavoriteTextFieldCell.h */,
B57747DB0F7A89D0003B34F9 /* SPFavoriteTextFieldCell.m */,
+ 173C44D61044A6AF001F3A30 /* SPOutlineView.h */,
+ 173C44D71044A6B0001F3A30 /* SPOutlineView.m */,
BC8C8530100E0A8000D7A129 /* SPTableView.h */,
BC8C8531100E0A8000D7A129 /* SPTableView.m */,
17E6416A0EF01F37001BC333 /* TableDocumentSplitView.h */,
17E6416B0EF01F37001BC333 /* TableDocumentSplitView.m */,
- 4DDF652C104480C5007DA229 /* SPOutlineView.h */,
- 4DDF652D104480C5007DA229 /* SPOutlineView.m */,
);
name = Views;
sourceTree = "<group>";
@@ -1132,6 +1139,7 @@
B5E92F170F75B2D100012500 /* ExportDialog.xib */,
B58DA73B0FF8BBA500FDDACD /* PrintAccessory.xib */,
B58DA7390FF8BB9E00FDDACD /* SSHQuestionDialog.xib */,
+ 173C4360104455CA001F3A30 /* QueryFavoriteManager.xib */,
);
path = Interfaces;
sourceTree = "<group>";
@@ -1521,6 +1529,7 @@
4D90B7A2101E0D1500D116A1 /* UserManagerView.xib in Resources */,
BC8B0DAF104004F900FC02EC /* EncodingPopupView.xib in Resources */,
BCCBD7FC104408B000D4C50A /* SaveSPFAccessory.xib in Resources */,
+ 173C4362104455CA001F3A30 /* QueryFavoriteManager.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1662,7 +1671,8 @@
BCA6271C1031B9D40047E5D5 /* SPTooltip.m in Sources */,
58DA8863103E15B5000B98DF /* SPLogger.m in Sources */,
BC01BCCF104024BE006BDEE7 /* SPEncodingPopupAccessory.m in Sources */,
- 4DDF652E104480C5007DA229 /* SPOutlineView.m in Sources */,
+ 173C4366104455E0001F3A30 /* SPQueryFavoriteManager.m in Sources */,
+ 173C44D81044A6B0001F3A30 /* SPOutlineView.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1697,6 +1707,14 @@
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
+ 173C4360104455CA001F3A30 /* QueryFavoriteManager.xib */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 173C4361104455CA001F3A30 /* English */,
+ );
+ name = QueryFavoriteManager.xib;
+ sourceTree = "<group>";
+ };
1761FD460EF03A6F00331368 /* MainMenu.xib */ = {
isa = PBXVariantGroup;
children = (