mirror of
https://github.com/MacPass/MacPass.git
synced 2025-12-14 00:02:28 +00:00
Revamped selection handling to ensure Groupt/Entry display on view switchting
This commit is contained in:
@@ -122,7 +122,7 @@
|
|||||||
4C77E37D15B84A240093A587 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4C77E37B15B84A240093A587 /* MainMenu.xib */; };
|
4C77E37D15B84A240093A587 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4C77E37B15B84A240093A587 /* MainMenu.xib */; };
|
||||||
4C79DF2A176685870083708F /* HNHRoundedTextField.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C79DF29176685870083708F /* HNHRoundedTextField.m */; };
|
4C79DF2A176685870083708F /* HNHRoundedTextField.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C79DF29176685870083708F /* HNHRoundedTextField.m */; };
|
||||||
4C7E832A172DE2F2002493D8 /* MPPasswordEditViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C7E8329172DE2F2002493D8 /* MPPasswordEditViewController.m */; };
|
4C7E832A172DE2F2002493D8 /* MPPasswordEditViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C7E8329172DE2F2002493D8 /* MPPasswordEditViewController.m */; };
|
||||||
4C80BB6F176DE06F00E5E248 /* HNHFlippedView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C80BB6E176DE06F00E5E248 /* HNHFlippedView.m */; };
|
4C80BB6F176DE06F00E5E248 /* HNHScrollDocumentViewAdapter.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C80BB6E176DE06F00E5E248 /* HNHScrollDocumentViewAdapter.m */; };
|
||||||
4C811C8316ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C811C8216ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.m */; };
|
4C811C8316ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C811C8216ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.m */; };
|
||||||
4C83814215BF4677001AE468 /* MPDocumentWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C83814115BF4677001AE468 /* MPDocumentWindowController.m */; };
|
4C83814215BF4677001AE468 /* MPDocumentWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C83814115BF4677001AE468 /* MPDocumentWindowController.m */; };
|
||||||
4C888C9016EB6C91003D34A1 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4C888C8E16EB6C91003D34A1 /* Localizable.strings */; };
|
4C888C9016EB6C91003D34A1 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4C888C8E16EB6C91003D34A1 /* Localizable.strings */; };
|
||||||
@@ -407,8 +407,8 @@
|
|||||||
4C79DF2F1766941D0083708F /* MPResponderQuery.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MPResponderQuery.h; sourceTree = "<group>"; };
|
4C79DF2F1766941D0083708F /* MPResponderQuery.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MPResponderQuery.h; sourceTree = "<group>"; };
|
||||||
4C7E8328172DE2F2002493D8 /* MPPasswordEditViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPPasswordEditViewController.h; sourceTree = "<group>"; };
|
4C7E8328172DE2F2002493D8 /* MPPasswordEditViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPPasswordEditViewController.h; sourceTree = "<group>"; };
|
||||||
4C7E8329172DE2F2002493D8 /* MPPasswordEditViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPPasswordEditViewController.m; sourceTree = "<group>"; };
|
4C7E8329172DE2F2002493D8 /* MPPasswordEditViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPPasswordEditViewController.m; sourceTree = "<group>"; };
|
||||||
4C80BB6D176DE06F00E5E248 /* HNHFlippedView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HNHFlippedView.h; sourceTree = "<group>"; };
|
4C80BB6D176DE06F00E5E248 /* HNHScrollDocumentViewAdapter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HNHScrollDocumentViewAdapter.h; sourceTree = "<group>"; };
|
||||||
4C80BB6E176DE06F00E5E248 /* HNHFlippedView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HNHFlippedView.m; sourceTree = "<group>"; };
|
4C80BB6E176DE06F00E5E248 /* HNHScrollDocumentViewAdapter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HNHScrollDocumentViewAdapter.m; sourceTree = "<group>"; };
|
||||||
4C811C8116ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPKeyfilePathControlDelegate.h; sourceTree = "<group>"; };
|
4C811C8116ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPKeyfilePathControlDelegate.h; sourceTree = "<group>"; };
|
||||||
4C811C8216ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPKeyfilePathControlDelegate.m; sourceTree = "<group>"; };
|
4C811C8216ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPKeyfilePathControlDelegate.m; sourceTree = "<group>"; };
|
||||||
4C83814015BF4677001AE468 /* MPDocumentWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPDocumentWindowController.h; sourceTree = "<group>"; };
|
4C83814015BF4677001AE468 /* MPDocumentWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPDocumentWindowController.h; sourceTree = "<group>"; };
|
||||||
@@ -453,6 +453,7 @@
|
|||||||
4CB9339816D3A0DD00A13B5D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/Credits.rtf; sourceTree = "<group>"; };
|
4CB9339816D3A0DD00A13B5D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/Credits.rtf; sourceTree = "<group>"; };
|
||||||
4CBA2AB617074B59006D8139 /* MPSettingsHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPSettingsHelper.h; sourceTree = "<group>"; };
|
4CBA2AB617074B59006D8139 /* MPSettingsHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPSettingsHelper.h; sourceTree = "<group>"; };
|
||||||
4CBA2AB917074C07006D8139 /* MPSettingsHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPSettingsHelper.m; sourceTree = "<group>"; };
|
4CBA2AB917074C07006D8139 /* MPSettingsHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPSettingsHelper.m; sourceTree = "<group>"; };
|
||||||
|
4CC0B8DA1773729F00311E8C /* MPFirstResonderNotification.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MPFirstResonderNotification.h; sourceTree = "<group>"; };
|
||||||
4CC1AEBC16D4467C006D2AAB /* KdbTree+MPAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "KdbTree+MPAdditions.h"; sourceTree = "<group>"; };
|
4CC1AEBC16D4467C006D2AAB /* KdbTree+MPAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "KdbTree+MPAdditions.h"; sourceTree = "<group>"; };
|
||||||
4CC1AEBD16D4467C006D2AAB /* KdbTree+MPAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "KdbTree+MPAdditions.m"; sourceTree = "<group>"; };
|
4CC1AEBD16D4467C006D2AAB /* KdbTree+MPAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "KdbTree+MPAdditions.m"; sourceTree = "<group>"; };
|
||||||
4CC299FD176F99E50050C939 /* MPRequestHandlerService.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPRequestHandlerService.h; sourceTree = "<group>"; };
|
4CC299FD176F99E50050C939 /* MPRequestHandlerService.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPRequestHandlerService.h; sourceTree = "<group>"; };
|
||||||
@@ -993,6 +994,7 @@
|
|||||||
4CF6C715176F5183007A811D /* MPServerRequestHandler.h */,
|
4CF6C715176F5183007A811D /* MPServerRequestHandler.h */,
|
||||||
4CA0B30D15BCB6FD00654E32 /* MPSettingsTab.h */,
|
4CA0B30D15BCB6FD00654E32 /* MPSettingsTab.h */,
|
||||||
4C79DF2F1766941D0083708F /* MPResponderQuery.h */,
|
4C79DF2F1766941D0083708F /* MPResponderQuery.h */,
|
||||||
|
4CC0B8DA1773729F00311E8C /* MPFirstResonderNotification.h */,
|
||||||
);
|
);
|
||||||
name = Protocolls;
|
name = Protocolls;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -1075,8 +1077,8 @@
|
|||||||
4C37A6721769393300AD0A40 /* HNHTableHeaderCell.m */,
|
4C37A6721769393300AD0A40 /* HNHTableHeaderCell.m */,
|
||||||
4C099931176D4EA600C885CB /* HNHScrollView.h */,
|
4C099931176D4EA600C885CB /* HNHScrollView.h */,
|
||||||
4C099932176D4EA600C885CB /* HNHScrollView.m */,
|
4C099932176D4EA600C885CB /* HNHScrollView.m */,
|
||||||
4C80BB6D176DE06F00E5E248 /* HNHFlippedView.h */,
|
4C80BB6D176DE06F00E5E248 /* HNHScrollDocumentViewAdapter.h */,
|
||||||
4C80BB6E176DE06F00E5E248 /* HNHFlippedView.m */,
|
4C80BB6E176DE06F00E5E248 /* HNHScrollDocumentViewAdapter.m */,
|
||||||
4CF78058176E6D5F0032EE71 /* HNHTableRowView.h */,
|
4CF78058176E6D5F0032EE71 /* HNHTableRowView.h */,
|
||||||
4CF78059176E6D5F0032EE71 /* HNHTableRowView.m */,
|
4CF78059176E6D5F0032EE71 /* HNHTableRowView.m */,
|
||||||
);
|
);
|
||||||
@@ -1354,7 +1356,7 @@
|
|||||||
4C37A6731769393300AD0A40 /* HNHTableHeaderCell.m in Sources */,
|
4C37A6731769393300AD0A40 /* HNHTableHeaderCell.m in Sources */,
|
||||||
4C099933176D4EA600C885CB /* HNHScrollView.m in Sources */,
|
4C099933176D4EA600C885CB /* HNHScrollView.m in Sources */,
|
||||||
4CA2335A176DBFE100F0B6AC /* MPLockDaemon.m in Sources */,
|
4CA2335A176DBFE100F0B6AC /* MPLockDaemon.m in Sources */,
|
||||||
4C80BB6F176DE06F00E5E248 /* HNHFlippedView.m in Sources */,
|
4C80BB6F176DE06F00E5E248 /* HNHScrollDocumentViewAdapter.m in Sources */,
|
||||||
4C245B76176E1E3D0086100E /* DDData.m in Sources */,
|
4C245B76176E1E3D0086100E /* DDData.m in Sources */,
|
||||||
4C245B77176E1E3D0086100E /* DDNumber.m in Sources */,
|
4C245B77176E1E3D0086100E /* DDNumber.m in Sources */,
|
||||||
4C245B78176E1E3D0086100E /* DDRange.m in Sources */,
|
4C245B78176E1E3D0086100E /* DDRange.m in Sources */,
|
||||||
|
|||||||
@@ -134,7 +134,7 @@
|
|||||||
<reference key="NSSupport" ref="874940307"/>
|
<reference key="NSSupport" ref="874940307"/>
|
||||||
<string key="NSCellIdentifier">_NS:1535</string>
|
<string key="NSCellIdentifier">_NS:1535</string>
|
||||||
<reference key="NSControlView" ref="958810247"/>
|
<reference key="NSControlView" ref="958810247"/>
|
||||||
<object class="NSColor" key="NSBackgroundColor">
|
<object class="NSColor" key="NSBackgroundColor" id="631365604">
|
||||||
<int key="NSColorSpace">6</int>
|
<int key="NSColorSpace">6</int>
|
||||||
<string key="NSCatalogName">System</string>
|
<string key="NSCatalogName">System</string>
|
||||||
<string key="NSColorName">controlColor</string>
|
<string key="NSColorName">controlColor</string>
|
||||||
@@ -143,7 +143,7 @@
|
|||||||
<bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes>
|
<bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes>
|
||||||
</object>
|
</object>
|
||||||
</object>
|
</object>
|
||||||
<object class="NSColor" key="NSTextColor">
|
<object class="NSColor" key="NSTextColor" id="238448884">
|
||||||
<int key="NSColorSpace">6</int>
|
<int key="NSColorSpace">6</int>
|
||||||
<string key="NSCatalogName">System</string>
|
<string key="NSCatalogName">System</string>
|
||||||
<string key="NSColorName">controlTextColor</string>
|
<string key="NSColorName">controlTextColor</string>
|
||||||
@@ -251,7 +251,7 @@
|
|||||||
<string key="NSFrame">{{16, 70}, {172, 18}}</string>
|
<string key="NSFrame">{{16, 70}, {172, 18}}</string>
|
||||||
<reference key="NSSuperview" ref="731672371"/>
|
<reference key="NSSuperview" ref="731672371"/>
|
||||||
<reference key="NSWindow"/>
|
<reference key="NSWindow"/>
|
||||||
<reference key="NSNextKeyView" ref="449248526"/>
|
<reference key="NSNextKeyView" ref="982397212"/>
|
||||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||||
<string key="NSHuggingPriority">{250, 251}</string>
|
<string key="NSHuggingPriority">{250, 251}</string>
|
||||||
<bool key="NSEnabled">YES</bool>
|
<bool key="NSEnabled">YES</bool>
|
||||||
@@ -283,7 +283,7 @@
|
|||||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||||
<bool key="NSEnabled">YES</bool>
|
<bool key="NSEnabled">YES</bool>
|
||||||
<object class="NSPopUpButtonCell" key="NSCell" id="52406626">
|
<object class="NSPopUpButtonCell" key="NSCell" id="52406626">
|
||||||
<int key="NSCellFlags">-1539309504</int>
|
<int key="NSCellFlags">-2076180416</int>
|
||||||
<int key="NSCellFlags2">2048</int>
|
<int key="NSCellFlags2">2048</int>
|
||||||
<reference key="NSSupport" ref="874940307"/>
|
<reference key="NSSupport" ref="874940307"/>
|
||||||
<string key="NSCellIdentifier">_NS:9</string>
|
<string key="NSCellIdentifier">_NS:9</string>
|
||||||
@@ -294,27 +294,38 @@
|
|||||||
<string key="NSKeyEquivalent"/>
|
<string key="NSKeyEquivalent"/>
|
||||||
<int key="NSPeriodicDelay">400</int>
|
<int key="NSPeriodicDelay">400</int>
|
||||||
<int key="NSPeriodicInterval">75</int>
|
<int key="NSPeriodicInterval">75</int>
|
||||||
<object class="NSMenuItem" key="NSMenuItem" id="158936574">
|
<nil key="NSMenuItem"/>
|
||||||
<reference key="NSMenu" ref="552398563"/>
|
|
||||||
<string key="NSTitle">1 Minute</string>
|
|
||||||
<string key="NSKeyEquiv"/>
|
|
||||||
<int key="NSKeyEquivModMask">1048576</int>
|
|
||||||
<int key="NSMnemonicLoc">2147483647</int>
|
|
||||||
<int key="NSState">1</int>
|
|
||||||
<reference key="NSOnImage" ref="45262901"/>
|
|
||||||
<reference key="NSMixedImage" ref="738594033"/>
|
|
||||||
<string key="NSAction">_popUpItemAction:</string>
|
|
||||||
<int key="NSTag">60</int>
|
|
||||||
<reference key="NSTarget" ref="52406626"/>
|
|
||||||
</object>
|
|
||||||
<bool key="NSMenuItemRespectAlignment">YES</bool>
|
<bool key="NSMenuItemRespectAlignment">YES</bool>
|
||||||
<object class="NSMenu" key="NSMenu" id="552398563">
|
<object class="NSMenu" key="NSMenu" id="552398563">
|
||||||
<string key="NSTitle">LockTimes</string>
|
<string key="NSTitle">LockTimes</string>
|
||||||
<array class="NSMutableArray" key="NSMenuItems">
|
<array class="NSMutableArray" key="NSMenuItems">
|
||||||
<reference ref="158936574"/>
|
<object class="NSMenuItem" id="17771272">
|
||||||
|
<reference key="NSMenu" ref="552398563"/>
|
||||||
|
<string key="NSTitle">Never</string>
|
||||||
|
<string key="NSKeyEquiv"/>
|
||||||
|
<int key="NSKeyEquivModMask">1048576</int>
|
||||||
|
<int key="NSMnemonicLoc">2147483647</int>
|
||||||
|
<int key="NSState">1</int>
|
||||||
|
<reference key="NSOnImage" ref="45262901"/>
|
||||||
|
<reference key="NSMixedImage" ref="738594033"/>
|
||||||
|
<string key="NSAction">_popUpItemAction:</string>
|
||||||
|
<reference key="NSTarget" ref="52406626"/>
|
||||||
|
</object>
|
||||||
|
<object class="NSMenuItem" id="158936574">
|
||||||
|
<reference key="NSMenu" ref="552398563"/>
|
||||||
|
<string key="NSTitle">for 1 Minute</string>
|
||||||
|
<string key="NSKeyEquiv"/>
|
||||||
|
<int key="NSKeyEquivModMask">1048576</int>
|
||||||
|
<int key="NSMnemonicLoc">2147483647</int>
|
||||||
|
<reference key="NSOnImage" ref="45262901"/>
|
||||||
|
<reference key="NSMixedImage" ref="738594033"/>
|
||||||
|
<string key="NSAction">_popUpItemAction:</string>
|
||||||
|
<int key="NSTag">60</int>
|
||||||
|
<reference key="NSTarget" ref="52406626"/>
|
||||||
|
</object>
|
||||||
<object class="NSMenuItem" id="492507667">
|
<object class="NSMenuItem" id="492507667">
|
||||||
<reference key="NSMenu" ref="552398563"/>
|
<reference key="NSMenu" ref="552398563"/>
|
||||||
<string key="NSTitle">5 Minutes</string>
|
<string key="NSTitle">for 5 Minutes</string>
|
||||||
<string key="NSKeyEquiv"/>
|
<string key="NSKeyEquiv"/>
|
||||||
<int key="NSKeyEquivModMask">1048576</int>
|
<int key="NSKeyEquivModMask">1048576</int>
|
||||||
<int key="NSMnemonicLoc">2147483647</int>
|
<int key="NSMnemonicLoc">2147483647</int>
|
||||||
@@ -326,7 +337,7 @@
|
|||||||
</object>
|
</object>
|
||||||
<object class="NSMenuItem" id="328220222">
|
<object class="NSMenuItem" id="328220222">
|
||||||
<reference key="NSMenu" ref="552398563"/>
|
<reference key="NSMenu" ref="552398563"/>
|
||||||
<string key="NSTitle">15 Minutes</string>
|
<string key="NSTitle">for 15 Minutes</string>
|
||||||
<string key="NSKeyEquiv"/>
|
<string key="NSKeyEquiv"/>
|
||||||
<int key="NSMnemonicLoc">2147483647</int>
|
<int key="NSMnemonicLoc">2147483647</int>
|
||||||
<reference key="NSOnImage" ref="45262901"/>
|
<reference key="NSOnImage" ref="45262901"/>
|
||||||
@@ -346,39 +357,13 @@
|
|||||||
</object>
|
</object>
|
||||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||||
</object>
|
</object>
|
||||||
<object class="NSButton" id="449248526">
|
|
||||||
<reference key="NSNextResponder" ref="731672371"/>
|
|
||||||
<int key="NSvFlags">268</int>
|
|
||||||
<string key="NSFrame">{{16, 36}, {138, 18}}</string>
|
|
||||||
<reference key="NSSuperview" ref="731672371"/>
|
|
||||||
<reference key="NSWindow"/>
|
|
||||||
<reference key="NSNextKeyView" ref="272904029"/>
|
|
||||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
|
||||||
<bool key="NSEnabled">YES</bool>
|
|
||||||
<object class="NSButtonCell" key="NSCell" id="947992670">
|
|
||||||
<int key="NSCellFlags">-1543503872</int>
|
|
||||||
<int key="NSCellFlags2">268435456</int>
|
|
||||||
<string key="NSContents">Lock while idle for</string>
|
|
||||||
<reference key="NSSupport" ref="874940307"/>
|
|
||||||
<string key="NSCellIdentifier">_NS:9</string>
|
|
||||||
<reference key="NSControlView" ref="449248526"/>
|
|
||||||
<int key="NSButtonFlags">1211912448</int>
|
|
||||||
<int key="NSButtonFlags2">2</int>
|
|
||||||
<reference key="NSNormalImage" ref="125685135"/>
|
|
||||||
<reference key="NSAlternateImage" ref="765261007"/>
|
|
||||||
<string key="NSAlternateContents"/>
|
|
||||||
<string key="NSKeyEquivalent"/>
|
|
||||||
<int key="NSPeriodicDelay">200</int>
|
|
||||||
<int key="NSPeriodicInterval">25</int>
|
|
||||||
</object>
|
|
||||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
|
||||||
</object>
|
|
||||||
<object class="NSButton" id="1066302408">
|
<object class="NSButton" id="1066302408">
|
||||||
<reference key="NSNextResponder" ref="731672371"/>
|
<reference key="NSNextResponder" ref="731672371"/>
|
||||||
<int key="NSvFlags">268</int>
|
<int key="NSvFlags">268</int>
|
||||||
<string key="NSFrame">{{16, 12}, {122, 18}}</string>
|
<string key="NSFrame">{{16, 12}, {122, 18}}</string>
|
||||||
<reference key="NSSuperview" ref="731672371"/>
|
<reference key="NSSuperview" ref="731672371"/>
|
||||||
<reference key="NSWindow"/>
|
<reference key="NSWindow"/>
|
||||||
|
<reference key="NSNextKeyView"/>
|
||||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||||
<bool key="NSEnabled">YES</bool>
|
<bool key="NSEnabled">YES</bool>
|
||||||
<object class="NSButtonCell" key="NSCell" id="252113219">
|
<object class="NSButtonCell" key="NSCell" id="252113219">
|
||||||
@@ -399,6 +384,27 @@
|
|||||||
</object>
|
</object>
|
||||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="NSTextField" id="982397212">
|
||||||
|
<reference key="NSNextResponder" ref="731672371"/>
|
||||||
|
<int key="NSvFlags">268</int>
|
||||||
|
<string key="NSFrame">{{18, 38}, {98, 17}}</string>
|
||||||
|
<reference key="NSSuperview" ref="731672371"/>
|
||||||
|
<reference key="NSWindow"/>
|
||||||
|
<reference key="NSNextKeyView" ref="272904029"/>
|
||||||
|
<string key="NSReuseIdentifierKey">_NS:1535</string>
|
||||||
|
<bool key="NSEnabled">YES</bool>
|
||||||
|
<object class="NSTextFieldCell" key="NSCell" id="263977101">
|
||||||
|
<int key="NSCellFlags">68157504</int>
|
||||||
|
<int key="NSCellFlags2">272630784</int>
|
||||||
|
<string key="NSContents">Lock while idle</string>
|
||||||
|
<reference key="NSSupport" ref="874940307"/>
|
||||||
|
<string key="NSCellIdentifier">_NS:1535</string>
|
||||||
|
<reference key="NSControlView" ref="982397212"/>
|
||||||
|
<reference key="NSBackgroundColor" ref="631365604"/>
|
||||||
|
<reference key="NSTextColor" ref="238448884"/>
|
||||||
|
</object>
|
||||||
|
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||||
|
</object>
|
||||||
</array>
|
</array>
|
||||||
<string key="NSFrame">{{1, 1}, {364, 124}}</string>
|
<string key="NSFrame">{{1, 1}, {364, 124}}</string>
|
||||||
<reference key="NSSuperview" ref="60918609"/>
|
<reference key="NSSuperview" ref="60918609"/>
|
||||||
@@ -509,6 +515,22 @@
|
|||||||
<int key="objectID">1</int>
|
<int key="objectID">1</int>
|
||||||
<reference key="object" ref="1005"/>
|
<reference key="object" ref="1005"/>
|
||||||
<array class="NSMutableArray" key="children">
|
<array class="NSMutableArray" key="children">
|
||||||
|
<object class="IBNSLayoutConstraint" id="213536579">
|
||||||
|
<reference key="firstItem" ref="1005"/>
|
||||||
|
<int key="firstAttribute">4</int>
|
||||||
|
<int key="relation">0</int>
|
||||||
|
<reference key="secondItem" ref="60918609"/>
|
||||||
|
<int key="secondAttribute">4</int>
|
||||||
|
<float key="multiplier">1</float>
|
||||||
|
<object class="IBNSLayoutSymbolicConstant" key="constant">
|
||||||
|
<double key="value">20</double>
|
||||||
|
</object>
|
||||||
|
<float key="priority">1000</float>
|
||||||
|
<reference key="containingView" ref="1005"/>
|
||||||
|
<int key="scoringType">8</int>
|
||||||
|
<float key="scoringTypeFloat">29</float>
|
||||||
|
<int key="contentType">3</int>
|
||||||
|
</object>
|
||||||
<object class="IBNSLayoutConstraint" id="528706521">
|
<object class="IBNSLayoutConstraint" id="528706521">
|
||||||
<reference key="firstItem" ref="1005"/>
|
<reference key="firstItem" ref="1005"/>
|
||||||
<int key="firstAttribute">4</int>
|
<int key="firstAttribute">4</int>
|
||||||
@@ -679,21 +701,21 @@
|
|||||||
<int key="objectID">465</int>
|
<int key="objectID">465</int>
|
||||||
<reference key="object" ref="60918609"/>
|
<reference key="object" ref="60918609"/>
|
||||||
<array class="NSMutableArray" key="children">
|
<array class="NSMutableArray" key="children">
|
||||||
<object class="IBNSLayoutConstraint" id="736506015">
|
<object class="IBNSLayoutConstraint" id="370071994">
|
||||||
<reference key="firstItem" ref="272904029"/>
|
<reference key="firstItem" ref="60918609"/>
|
||||||
<int key="firstAttribute">10</int>
|
<int key="firstAttribute">4</int>
|
||||||
<int key="relation">0</int>
|
<int key="relation">0</int>
|
||||||
<reference key="secondItem" ref="449248526"/>
|
<reference key="secondItem" ref="272904029"/>
|
||||||
<int key="secondAttribute">10</int>
|
<int key="secondAttribute">4</int>
|
||||||
<float key="multiplier">1</float>
|
<float key="multiplier">1</float>
|
||||||
<object class="IBLayoutConstant" key="constant">
|
<object class="IBLayoutConstant" key="constant">
|
||||||
<double key="value">0.0</double>
|
<double key="value">32</double>
|
||||||
</object>
|
</object>
|
||||||
<float key="priority">1000</float>
|
<float key="priority">1000</float>
|
||||||
<reference key="containingView" ref="60918609"/>
|
<reference key="containingView" ref="60918609"/>
|
||||||
<int key="scoringType">6</int>
|
<int key="scoringType">3</int>
|
||||||
<float key="scoringTypeFloat">24</float>
|
<float key="scoringTypeFloat">9</float>
|
||||||
<int key="contentType">2</int>
|
<int key="contentType">3</int>
|
||||||
</object>
|
</object>
|
||||||
<object class="IBNSLayoutConstraint" id="459585909">
|
<object class="IBNSLayoutConstraint" id="459585909">
|
||||||
<reference key="firstItem" ref="272904029"/>
|
<reference key="firstItem" ref="272904029"/>
|
||||||
@@ -775,6 +797,22 @@
|
|||||||
<float key="scoringTypeFloat">40</float>
|
<float key="scoringTypeFloat">40</float>
|
||||||
<int key="contentType">3</int>
|
<int key="contentType">3</int>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="IBNSLayoutConstraint" id="806133159">
|
||||||
|
<reference key="firstItem" ref="60918609"/>
|
||||||
|
<int key="firstAttribute">4</int>
|
||||||
|
<int key="relation">0</int>
|
||||||
|
<reference key="secondItem" ref="1066302408"/>
|
||||||
|
<int key="secondAttribute">4</int>
|
||||||
|
<float key="multiplier">1</float>
|
||||||
|
<object class="IBLayoutConstant" key="constant">
|
||||||
|
<double key="value">11</double>
|
||||||
|
</object>
|
||||||
|
<float key="priority">1000</float>
|
||||||
|
<reference key="containingView" ref="60918609"/>
|
||||||
|
<int key="scoringType">8</int>
|
||||||
|
<float key="scoringTypeFloat">29</float>
|
||||||
|
<int key="contentType">3</int>
|
||||||
|
</object>
|
||||||
<object class="IBNSLayoutConstraint" id="772519144">
|
<object class="IBNSLayoutConstraint" id="772519144">
|
||||||
<reference key="firstItem" ref="60918609"/>
|
<reference key="firstItem" ref="60918609"/>
|
||||||
<int key="firstAttribute">4</int>
|
<int key="firstAttribute">4</int>
|
||||||
@@ -791,22 +829,6 @@
|
|||||||
<float key="scoringTypeFloat">40</float>
|
<float key="scoringTypeFloat">40</float>
|
||||||
<int key="contentType">3</int>
|
<int key="contentType">3</int>
|
||||||
</object>
|
</object>
|
||||||
<object class="IBNSLayoutConstraint" id="819759363">
|
|
||||||
<reference key="firstItem" ref="1066302408"/>
|
|
||||||
<int key="firstAttribute">3</int>
|
|
||||||
<int key="relation">0</int>
|
|
||||||
<reference key="secondItem" ref="449248526"/>
|
|
||||||
<int key="secondAttribute">4</int>
|
|
||||||
<float key="multiplier">1</float>
|
|
||||||
<object class="IBLayoutConstant" key="constant">
|
|
||||||
<double key="value">10</double>
|
|
||||||
</object>
|
|
||||||
<float key="priority">1000</float>
|
|
||||||
<reference key="containingView" ref="60918609"/>
|
|
||||||
<int key="scoringType">9</int>
|
|
||||||
<float key="scoringTypeFloat">40</float>
|
|
||||||
<int key="contentType">3</int>
|
|
||||||
</object>
|
|
||||||
<object class="IBNSLayoutConstraint" id="476689522">
|
<object class="IBNSLayoutConstraint" id="476689522">
|
||||||
<reference key="firstItem" ref="1066302408"/>
|
<reference key="firstItem" ref="1066302408"/>
|
||||||
<int key="firstAttribute">5</int>
|
<int key="firstAttribute">5</int>
|
||||||
@@ -823,36 +845,36 @@
|
|||||||
<float key="scoringTypeFloat">29</float>
|
<float key="scoringTypeFloat">29</float>
|
||||||
<int key="contentType">3</int>
|
<int key="contentType">3</int>
|
||||||
</object>
|
</object>
|
||||||
<object class="IBNSLayoutConstraint" id="1062332302">
|
<object class="IBNSLayoutConstraint" id="287888619">
|
||||||
<reference key="firstItem" ref="449248526"/>
|
<reference key="firstItem" ref="982397212"/>
|
||||||
<int key="firstAttribute">3</int>
|
<int key="firstAttribute">11</int>
|
||||||
<int key="relation">0</int>
|
<int key="relation">0</int>
|
||||||
<reference key="secondItem" ref="326334884"/>
|
<reference key="secondItem" ref="272904029"/>
|
||||||
<int key="secondAttribute">4</int>
|
<int key="secondAttribute">11</int>
|
||||||
<float key="multiplier">1</float>
|
<float key="multiplier">1</float>
|
||||||
<object class="IBLayoutConstant" key="constant">
|
<object class="IBLayoutConstant" key="constant">
|
||||||
<double key="value">20</double>
|
<double key="value">0.0</double>
|
||||||
</object>
|
</object>
|
||||||
<float key="priority">1000</float>
|
<float key="priority">1000</float>
|
||||||
<reference key="containingView" ref="60918609"/>
|
<reference key="containingView" ref="60918609"/>
|
||||||
<int key="scoringType">9</int>
|
<int key="scoringType">6</int>
|
||||||
<float key="scoringTypeFloat">40</float>
|
<float key="scoringTypeFloat">24</float>
|
||||||
<int key="contentType">3</int>
|
<int key="contentType">2</int>
|
||||||
</object>
|
</object>
|
||||||
<object class="IBNSLayoutConstraint" id="566620574">
|
<object class="IBNSLayoutConstraint" id="561950720">
|
||||||
<reference key="firstItem" ref="449248526"/>
|
<reference key="firstItem" ref="982397212"/>
|
||||||
<int key="firstAttribute">5</int>
|
<int key="firstAttribute">5</int>
|
||||||
<int key="relation">0</int>
|
<int key="relation">0</int>
|
||||||
<reference key="secondItem" ref="60918609"/>
|
<reference key="secondItem" ref="60918609"/>
|
||||||
<int key="secondAttribute">5</int>
|
<int key="secondAttribute">5</int>
|
||||||
<float key="multiplier">1</float>
|
<float key="multiplier">1</float>
|
||||||
<object class="IBLayoutConstant" key="constant">
|
<object class="IBLayoutConstant" key="constant">
|
||||||
<double key="value">16</double>
|
<double key="value">19</double>
|
||||||
</object>
|
</object>
|
||||||
<float key="priority">1000</float>
|
<float key="priority">1000</float>
|
||||||
<reference key="containingView" ref="60918609"/>
|
<reference key="containingView" ref="60918609"/>
|
||||||
<int key="scoringType">8</int>
|
<int key="scoringType">3</int>
|
||||||
<float key="scoringTypeFloat">29</float>
|
<float key="scoringTypeFloat">9</float>
|
||||||
<int key="contentType">3</int>
|
<int key="contentType">3</int>
|
||||||
</object>
|
</object>
|
||||||
<object class="IBNSLayoutConstraint" id="376978074">
|
<object class="IBNSLayoutConstraint" id="376978074">
|
||||||
@@ -936,11 +958,11 @@
|
|||||||
<int key="contentType">3</int>
|
<int key="contentType">3</int>
|
||||||
</object>
|
</object>
|
||||||
<reference ref="958810247"/>
|
<reference ref="958810247"/>
|
||||||
<reference ref="449248526"/>
|
|
||||||
<reference ref="326334884"/>
|
<reference ref="326334884"/>
|
||||||
<reference ref="272904029"/>
|
<reference ref="272904029"/>
|
||||||
<reference ref="1066302408"/>
|
<reference ref="1066302408"/>
|
||||||
<reference ref="222890410"/>
|
<reference ref="222890410"/>
|
||||||
|
<reference ref="982397212"/>
|
||||||
</array>
|
</array>
|
||||||
<reference key="parent" ref="1005"/>
|
<reference key="parent" ref="1005"/>
|
||||||
</object>
|
</object>
|
||||||
@@ -949,6 +971,22 @@
|
|||||||
<reference key="object" ref="958810247"/>
|
<reference key="object" ref="958810247"/>
|
||||||
<array class="NSMutableArray" key="children">
|
<array class="NSMutableArray" key="children">
|
||||||
<reference ref="664984457"/>
|
<reference ref="664984457"/>
|
||||||
|
<object class="IBNSLayoutConstraint" id="15468834">
|
||||||
|
<reference key="firstItem" ref="958810247"/>
|
||||||
|
<int key="firstAttribute">8</int>
|
||||||
|
<int key="relation">0</int>
|
||||||
|
<nil key="secondItem"/>
|
||||||
|
<int key="secondAttribute">0</int>
|
||||||
|
<float key="multiplier">1</float>
|
||||||
|
<object class="IBLayoutConstant" key="constant">
|
||||||
|
<double key="value">17</double>
|
||||||
|
</object>
|
||||||
|
<float key="priority">1000</float>
|
||||||
|
<reference key="containingView" ref="958810247"/>
|
||||||
|
<int key="scoringType">3</int>
|
||||||
|
<float key="scoringTypeFloat">9</float>
|
||||||
|
<int key="contentType">1</int>
|
||||||
|
</object>
|
||||||
</array>
|
</array>
|
||||||
<reference key="parent" ref="60918609"/>
|
<reference key="parent" ref="60918609"/>
|
||||||
</object>
|
</object>
|
||||||
@@ -1138,6 +1176,7 @@
|
|||||||
<reference ref="158936574"/>
|
<reference ref="158936574"/>
|
||||||
<reference ref="492507667"/>
|
<reference ref="492507667"/>
|
||||||
<reference ref="328220222"/>
|
<reference ref="328220222"/>
|
||||||
|
<reference ref="17771272"/>
|
||||||
</array>
|
</array>
|
||||||
<reference key="parent" ref="52406626"/>
|
<reference key="parent" ref="52406626"/>
|
||||||
</object>
|
</object>
|
||||||
@@ -1156,24 +1195,6 @@
|
|||||||
<reference key="object" ref="328220222"/>
|
<reference key="object" ref="328220222"/>
|
||||||
<reference key="parent" ref="552398563"/>
|
<reference key="parent" ref="552398563"/>
|
||||||
</object>
|
</object>
|
||||||
<object class="IBObjectRecord">
|
|
||||||
<int key="objectID">605</int>
|
|
||||||
<reference key="object" ref="449248526"/>
|
|
||||||
<array class="NSMutableArray" key="children">
|
|
||||||
<reference ref="947992670"/>
|
|
||||||
</array>
|
|
||||||
<reference key="parent" ref="60918609"/>
|
|
||||||
</object>
|
|
||||||
<object class="IBObjectRecord">
|
|
||||||
<int key="objectID">606</int>
|
|
||||||
<reference key="object" ref="947992670"/>
|
|
||||||
<reference key="parent" ref="449248526"/>
|
|
||||||
</object>
|
|
||||||
<object class="IBObjectRecord">
|
|
||||||
<int key="objectID">627</int>
|
|
||||||
<reference key="object" ref="566620574"/>
|
|
||||||
<reference key="parent" ref="60918609"/>
|
|
||||||
</object>
|
|
||||||
<object class="IBObjectRecord">
|
<object class="IBObjectRecord">
|
||||||
<int key="objectID">660</int>
|
<int key="objectID">660</int>
|
||||||
<reference key="object" ref="467548005"/>
|
<reference key="object" ref="467548005"/>
|
||||||
@@ -1227,21 +1248,6 @@
|
|||||||
<reference key="object" ref="376978074"/>
|
<reference key="object" ref="376978074"/>
|
||||||
<reference key="parent" ref="60918609"/>
|
<reference key="parent" ref="60918609"/>
|
||||||
</object>
|
</object>
|
||||||
<object class="IBObjectRecord">
|
|
||||||
<int key="objectID">765</int>
|
|
||||||
<reference key="object" ref="1062332302"/>
|
|
||||||
<reference key="parent" ref="60918609"/>
|
|
||||||
</object>
|
|
||||||
<object class="IBObjectRecord">
|
|
||||||
<int key="objectID">769</int>
|
|
||||||
<reference key="object" ref="736506015"/>
|
|
||||||
<reference key="parent" ref="60918609"/>
|
|
||||||
</object>
|
|
||||||
<object class="IBObjectRecord">
|
|
||||||
<int key="objectID">771</int>
|
|
||||||
<reference key="object" ref="819759363"/>
|
|
||||||
<reference key="parent" ref="60918609"/>
|
|
||||||
</object>
|
|
||||||
<object class="IBObjectRecord">
|
<object class="IBObjectRecord">
|
||||||
<int key="objectID">773</int>
|
<int key="objectID">773</int>
|
||||||
<reference key="object" ref="871797750"/>
|
<reference key="object" ref="871797750"/>
|
||||||
@@ -1282,6 +1288,54 @@
|
|||||||
<reference key="object" ref="250630005"/>
|
<reference key="object" ref="250630005"/>
|
||||||
<reference key="parent" ref="1005"/>
|
<reference key="parent" ref="1005"/>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="IBObjectRecord">
|
||||||
|
<int key="objectID">800</int>
|
||||||
|
<reference key="object" ref="213536579"/>
|
||||||
|
<reference key="parent" ref="1005"/>
|
||||||
|
</object>
|
||||||
|
<object class="IBObjectRecord">
|
||||||
|
<int key="objectID">801</int>
|
||||||
|
<reference key="object" ref="806133159"/>
|
||||||
|
<reference key="parent" ref="60918609"/>
|
||||||
|
</object>
|
||||||
|
<object class="IBObjectRecord">
|
||||||
|
<int key="objectID">802</int>
|
||||||
|
<reference key="object" ref="370071994"/>
|
||||||
|
<reference key="parent" ref="60918609"/>
|
||||||
|
</object>
|
||||||
|
<object class="IBObjectRecord">
|
||||||
|
<int key="objectID">803</int>
|
||||||
|
<reference key="object" ref="15468834"/>
|
||||||
|
<reference key="parent" ref="958810247"/>
|
||||||
|
</object>
|
||||||
|
<object class="IBObjectRecord">
|
||||||
|
<int key="objectID">804</int>
|
||||||
|
<reference key="object" ref="17771272"/>
|
||||||
|
<reference key="parent" ref="552398563"/>
|
||||||
|
</object>
|
||||||
|
<object class="IBObjectRecord">
|
||||||
|
<int key="objectID">805</int>
|
||||||
|
<reference key="object" ref="982397212"/>
|
||||||
|
<array class="NSMutableArray" key="children">
|
||||||
|
<reference ref="263977101"/>
|
||||||
|
</array>
|
||||||
|
<reference key="parent" ref="60918609"/>
|
||||||
|
</object>
|
||||||
|
<object class="IBObjectRecord">
|
||||||
|
<int key="objectID">806</int>
|
||||||
|
<reference key="object" ref="263977101"/>
|
||||||
|
<reference key="parent" ref="982397212"/>
|
||||||
|
</object>
|
||||||
|
<object class="IBObjectRecord">
|
||||||
|
<int key="objectID">807</int>
|
||||||
|
<reference key="object" ref="561950720"/>
|
||||||
|
<reference key="parent" ref="60918609"/>
|
||||||
|
</object>
|
||||||
|
<object class="IBObjectRecord">
|
||||||
|
<int key="objectID">808</int>
|
||||||
|
<reference key="object" ref="287888619"/>
|
||||||
|
<reference key="parent" ref="60918609"/>
|
||||||
|
</object>
|
||||||
</array>
|
</array>
|
||||||
</object>
|
</object>
|
||||||
<dictionary class="NSMutableDictionary" key="flattenedProperties">
|
<dictionary class="NSMutableDictionary" key="flattenedProperties">
|
||||||
@@ -1299,6 +1353,7 @@
|
|||||||
<reference ref="484547610"/>
|
<reference ref="484547610"/>
|
||||||
<reference ref="19198291"/>
|
<reference ref="19198291"/>
|
||||||
<reference ref="528706521"/>
|
<reference ref="528706521"/>
|
||||||
|
<reference ref="213536579"/>
|
||||||
</array>
|
</array>
|
||||||
<boolean value="NO" key="1.IBNSViewMetadataLastInspectedTranslatesAutoresizingMaskIntoConstraints"/>
|
<boolean value="NO" key="1.IBNSViewMetadataLastInspectedTranslatesAutoresizingMaskIntoConstraints"/>
|
||||||
<boolean value="NO" key="1.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
<boolean value="NO" key="1.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
||||||
@@ -1314,6 +1369,9 @@
|
|||||||
<string key="423.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="423.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="424.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="424.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="429.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="429.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
|
<array key="431.IBNSViewMetadataConstraints">
|
||||||
|
<reference ref="15468834"/>
|
||||||
|
</array>
|
||||||
<boolean value="NO" key="431.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
<boolean value="NO" key="431.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
||||||
<string key="431.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="431.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="432.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="432.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
@@ -1323,23 +1381,23 @@
|
|||||||
<boolean value="NO" key="447.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
<boolean value="NO" key="447.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
||||||
<string key="447.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="447.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="448.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="448.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<array class="NSMutableArray" key="465.IBNSViewMetadataConstraints">
|
<array key="465.IBNSViewMetadataConstraints">
|
||||||
<reference ref="891799107"/>
|
<reference ref="891799107"/>
|
||||||
<reference ref="1014678196"/>
|
<reference ref="1014678196"/>
|
||||||
<reference ref="432174165"/>
|
<reference ref="432174165"/>
|
||||||
<reference ref="467548005"/>
|
<reference ref="467548005"/>
|
||||||
<reference ref="376978074"/>
|
<reference ref="376978074"/>
|
||||||
<reference ref="566620574"/>
|
<reference ref="561950720"/>
|
||||||
<reference ref="1062332302"/>
|
<reference ref="287888619"/>
|
||||||
<reference ref="476689522"/>
|
<reference ref="476689522"/>
|
||||||
<reference ref="819759363"/>
|
|
||||||
<reference ref="772519144"/>
|
<reference ref="772519144"/>
|
||||||
|
<reference ref="806133159"/>
|
||||||
<reference ref="520285939"/>
|
<reference ref="520285939"/>
|
||||||
<reference ref="811582841"/>
|
<reference ref="811582841"/>
|
||||||
<reference ref="311160635"/>
|
<reference ref="311160635"/>
|
||||||
<reference ref="771059501"/>
|
<reference ref="771059501"/>
|
||||||
<reference ref="459585909"/>
|
<reference ref="459585909"/>
|
||||||
<reference ref="736506015"/>
|
<reference ref="370071994"/>
|
||||||
</array>
|
</array>
|
||||||
<boolean value="NO" key="465.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
<boolean value="NO" key="465.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
||||||
<string key="465.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="465.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
@@ -1366,10 +1424,6 @@
|
|||||||
<string key="588.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="588.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="589.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="589.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="603.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="603.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<boolean value="NO" key="605.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
|
||||||
<string key="605.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
|
||||||
<string key="606.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
|
||||||
<string key="627.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
|
||||||
<boolean value="NO" key="630.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
<boolean value="NO" key="630.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
||||||
<string key="630.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="630.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="631.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="631.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
@@ -1380,9 +1434,6 @@
|
|||||||
<string key="718.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="718.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="721.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="721.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="759.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="759.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="765.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
|
||||||
<string key="769.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
|
||||||
<string key="771.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
|
||||||
<string key="773.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="773.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="784.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="784.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="788.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="788.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
@@ -1390,12 +1441,22 @@
|
|||||||
<string key="792.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="792.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="798.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="798.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
<string key="799.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
<string key="799.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
|
<string key="800.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
|
<string key="801.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
|
<string key="802.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
|
<string key="803.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
|
<string key="804.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
|
<boolean value="NO" key="805.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
|
||||||
|
<string key="805.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
|
<string key="806.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
|
<string key="807.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
|
<string key="808.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||||
</dictionary>
|
</dictionary>
|
||||||
<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
|
<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
|
||||||
<nil key="activeLocalization"/>
|
<nil key="activeLocalization"/>
|
||||||
<dictionary class="NSMutableDictionary" key="localizations"/>
|
<dictionary class="NSMutableDictionary" key="localizations"/>
|
||||||
<nil key="sourceID"/>
|
<nil key="sourceID"/>
|
||||||
<int key="maxID">799</int>
|
<int key="maxID">808</int>
|
||||||
</object>
|
</object>
|
||||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||||
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -57,11 +57,10 @@
|
|||||||
<int key="NSvFlags">268</int>
|
<int key="NSvFlags">268</int>
|
||||||
<string key="NSFrame">{{7, 5}, {32, 19}}</string>
|
<string key="NSFrame">{{7, 5}, {32, 19}}</string>
|
||||||
<reference key="NSSuperview" ref="163272962"/>
|
<reference key="NSSuperview" ref="163272962"/>
|
||||||
<reference key="NSWindow"/>
|
|
||||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||||
<bool key="NSEnabled">YES</bool>
|
<bool key="NSEnabled">YES</bool>
|
||||||
<object class="NSButtonCell" key="NSCell" id="160641004">
|
<object class="NSButtonCell" key="NSCell" id="160641004">
|
||||||
<int key="NSCellFlags">-1543503872</int>
|
<int key="NSCellFlags">-2080374784</int>
|
||||||
<int key="NSCellFlags2">134217728</int>
|
<int key="NSCellFlags2">134217728</int>
|
||||||
<string key="NSContents">Round Rect Button</string>
|
<string key="NSContents">Round Rect Button</string>
|
||||||
<object class="NSFont" key="NSSupport">
|
<object class="NSFont" key="NSSupport">
|
||||||
@@ -87,7 +86,6 @@
|
|||||||
</array>
|
</array>
|
||||||
<string key="NSFrameSize">{684, 30}</string>
|
<string key="NSFrameSize">{684, 30}</string>
|
||||||
<reference key="NSSuperview" ref="997686550"/>
|
<reference key="NSSuperview" ref="997686550"/>
|
||||||
<reference key="NSWindow"/>
|
|
||||||
<reference key="NSNextKeyView" ref="276578969"/>
|
<reference key="NSNextKeyView" ref="276578969"/>
|
||||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||||
<string key="NSClassName">HNHGradientView</string>
|
<string key="NSClassName">HNHGradientView</string>
|
||||||
@@ -106,7 +104,6 @@
|
|||||||
<array class="NSMutableArray" key="NSSubviews"/>
|
<array class="NSMutableArray" key="NSSubviews"/>
|
||||||
<string key="NSFrameSize">{684, 548}</string>
|
<string key="NSFrameSize">{684, 548}</string>
|
||||||
<reference key="NSSuperview" ref="262664416"/>
|
<reference key="NSSuperview" ref="262664416"/>
|
||||||
<reference key="NSWindow"/>
|
|
||||||
<reference key="NSNextKeyView" ref="736877784"/>
|
<reference key="NSNextKeyView" ref="736877784"/>
|
||||||
<string key="NSReuseIdentifierKey">_NS:13</string>
|
<string key="NSReuseIdentifierKey">_NS:13</string>
|
||||||
<bool key="NSEnabled">YES</bool>
|
<bool key="NSEnabled">YES</bool>
|
||||||
@@ -117,7 +114,6 @@
|
|||||||
<int key="NSvFlags">256</int>
|
<int key="NSvFlags">256</int>
|
||||||
<string key="NSFrameSize">{684, 17}</string>
|
<string key="NSFrameSize">{684, 17}</string>
|
||||||
<reference key="NSSuperview" ref="736877784"/>
|
<reference key="NSSuperview" ref="736877784"/>
|
||||||
<reference key="NSWindow"/>
|
|
||||||
<reference key="NSNextKeyView" ref="262664416"/>
|
<reference key="NSNextKeyView" ref="262664416"/>
|
||||||
<reference key="NSTableView" ref="528076956"/>
|
<reference key="NSTableView" ref="528076956"/>
|
||||||
</object>
|
</object>
|
||||||
@@ -340,7 +336,6 @@
|
|||||||
</array>
|
</array>
|
||||||
<string key="NSFrame">{{0, 17}, {684, 548}}</string>
|
<string key="NSFrame">{{0, 17}, {684, 548}}</string>
|
||||||
<reference key="NSSuperview" ref="613995671"/>
|
<reference key="NSSuperview" ref="613995671"/>
|
||||||
<reference key="NSWindow"/>
|
|
||||||
<reference key="NSNextKeyView" ref="528076956"/>
|
<reference key="NSNextKeyView" ref="528076956"/>
|
||||||
<string key="NSReuseIdentifierKey">_NS:11</string>
|
<string key="NSReuseIdentifierKey">_NS:11</string>
|
||||||
<reference key="NSDocView" ref="528076956"/>
|
<reference key="NSDocView" ref="528076956"/>
|
||||||
@@ -352,7 +347,6 @@
|
|||||||
<int key="NSvFlags">-2147483392</int>
|
<int key="NSvFlags">-2147483392</int>
|
||||||
<string key="NSFrame">{{224, 17}, {15, 102}}</string>
|
<string key="NSFrame">{{224, 17}, {15, 102}}</string>
|
||||||
<reference key="NSSuperview" ref="613995671"/>
|
<reference key="NSSuperview" ref="613995671"/>
|
||||||
<reference key="NSWindow"/>
|
|
||||||
<reference key="NSNextKeyView" ref="802411427"/>
|
<reference key="NSNextKeyView" ref="802411427"/>
|
||||||
<string key="NSReuseIdentifierKey">_NS:58</string>
|
<string key="NSReuseIdentifierKey">_NS:58</string>
|
||||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||||
@@ -365,7 +359,6 @@
|
|||||||
<int key="NSvFlags">-2147483392</int>
|
<int key="NSvFlags">-2147483392</int>
|
||||||
<string key="NSFrame">{{0, 310}, {480, 16}}</string>
|
<string key="NSFrame">{{0, 310}, {480, 16}}</string>
|
||||||
<reference key="NSSuperview" ref="613995671"/>
|
<reference key="NSSuperview" ref="613995671"/>
|
||||||
<reference key="NSWindow"/>
|
|
||||||
<reference key="NSNextKeyView" ref="163272962"/>
|
<reference key="NSNextKeyView" ref="163272962"/>
|
||||||
<string key="NSReuseIdentifierKey">_NS:60</string>
|
<string key="NSReuseIdentifierKey">_NS:60</string>
|
||||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||||
@@ -382,7 +375,6 @@
|
|||||||
</array>
|
</array>
|
||||||
<string key="NSFrameSize">{684, 17}</string>
|
<string key="NSFrameSize">{684, 17}</string>
|
||||||
<reference key="NSSuperview" ref="613995671"/>
|
<reference key="NSSuperview" ref="613995671"/>
|
||||||
<reference key="NSWindow"/>
|
|
||||||
<reference key="NSNextKeyView" ref="253618752"/>
|
<reference key="NSNextKeyView" ref="253618752"/>
|
||||||
<reference key="NSDocView" ref="253618752"/>
|
<reference key="NSDocView" ref="253618752"/>
|
||||||
<reference key="NSBGColor" ref="136901388"/>
|
<reference key="NSBGColor" ref="136901388"/>
|
||||||
@@ -391,7 +383,6 @@
|
|||||||
</array>
|
</array>
|
||||||
<string key="NSFrame">{{0, 30}, {684, 565}}</string>
|
<string key="NSFrame">{{0, 30}, {684, 565}}</string>
|
||||||
<reference key="NSSuperview" ref="997686550"/>
|
<reference key="NSSuperview" ref="997686550"/>
|
||||||
<reference key="NSWindow"/>
|
|
||||||
<reference key="NSNextKeyView" ref="262664416"/>
|
<reference key="NSNextKeyView" ref="262664416"/>
|
||||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||||
<int key="NSsFlags">133680</int>
|
<int key="NSsFlags">133680</int>
|
||||||
@@ -407,7 +398,6 @@
|
|||||||
</array>
|
</array>
|
||||||
<string key="NSFrameSize">{684, 594}</string>
|
<string key="NSFrameSize">{684, 594}</string>
|
||||||
<reference key="NSSuperview"/>
|
<reference key="NSSuperview"/>
|
||||||
<reference key="NSWindow"/>
|
|
||||||
<reference key="NSNextKeyView" ref="613995671"/>
|
<reference key="NSNextKeyView" ref="613995671"/>
|
||||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||||
<string key="NSClassName">NSView</string>
|
<string key="NSClassName">NSView</string>
|
||||||
@@ -462,6 +452,14 @@
|
|||||||
</object>
|
</object>
|
||||||
<int key="connectionID">744</int>
|
<int key="connectionID">744</int>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="IBConnectionRecord">
|
||||||
|
<object class="IBOutletConnection" key="connection">
|
||||||
|
<string key="label">addEntryButton</string>
|
||||||
|
<reference key="source" ref="1001"/>
|
||||||
|
<reference key="destination" ref="276578969"/>
|
||||||
|
</object>
|
||||||
|
<int key="connectionID">745</int>
|
||||||
|
</object>
|
||||||
<object class="IBConnectionRecord">
|
<object class="IBConnectionRecord">
|
||||||
<object class="IBOutletConnection" key="connection">
|
<object class="IBOutletConnection" key="connection">
|
||||||
<string key="label">textField</string>
|
<string key="label">textField</string>
|
||||||
@@ -472,7 +470,7 @@
|
|||||||
<object class="NSTextField" id="306813103">
|
<object class="NSTextField" id="306813103">
|
||||||
<reference key="NSNextResponder" ref="788738248"/>
|
<reference key="NSNextResponder" ref="788738248"/>
|
||||||
<int key="NSvFlags">266</int>
|
<int key="NSvFlags">266</int>
|
||||||
<string key="NSFrameSize">{105, 17}</string>
|
<string key="NSFrameSize">{104, 17}</string>
|
||||||
<reference key="NSSuperview" ref="788738248"/>
|
<reference key="NSSuperview" ref="788738248"/>
|
||||||
<reference key="NSNextKeyView" ref="804102913"/>
|
<reference key="NSNextKeyView" ref="804102913"/>
|
||||||
<string key="NSAntiCompressionPriority">{250, 750}</string>
|
<string key="NSAntiCompressionPriority">{250, 750}</string>
|
||||||
@@ -494,7 +492,7 @@
|
|||||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||||
</object>
|
</object>
|
||||||
</array>
|
</array>
|
||||||
<string key="NSFrame">{{1, 1}, {105, 17}}</string>
|
<string key="NSFrame">{{1, 1}, {104.5, 17}}</string>
|
||||||
<reference key="NSNextKeyView" ref="306813103"/>
|
<reference key="NSNextKeyView" ref="306813103"/>
|
||||||
</object>
|
</object>
|
||||||
<reference key="destination" ref="306813103"/>
|
<reference key="destination" ref="306813103"/>
|
||||||
@@ -563,7 +561,7 @@
|
|||||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||||
</object>
|
</object>
|
||||||
</array>
|
</array>
|
||||||
<string key="NSFrame">{{109, 1}, {144, 17}}</string>
|
<string key="NSFrame">{{108.5, 1}, {144, 17}}</string>
|
||||||
<reference key="NSNextKeyView" ref="591921532"/>
|
<reference key="NSNextKeyView" ref="591921532"/>
|
||||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||||
</object>
|
</object>
|
||||||
@@ -606,7 +604,7 @@
|
|||||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||||
</object>
|
</object>
|
||||||
</array>
|
</array>
|
||||||
<string key="NSFrame">{{378, 1}, {113, 17}}</string>
|
<string key="NSFrame">{{377, 1}, {113, 17}}</string>
|
||||||
<reference key="NSNextKeyView" ref="441850286"/>
|
<reference key="NSNextKeyView" ref="441850286"/>
|
||||||
</object>
|
</object>
|
||||||
<reference key="destination" ref="441850286"/>
|
<reference key="destination" ref="441850286"/>
|
||||||
@@ -623,7 +621,7 @@
|
|||||||
<object class="NSTextField" id="1042596093">
|
<object class="NSTextField" id="1042596093">
|
||||||
<reference key="NSNextResponder" ref="878614701"/>
|
<reference key="NSNextResponder" ref="878614701"/>
|
||||||
<int key="NSvFlags">266</int>
|
<int key="NSvFlags">266</int>
|
||||||
<string key="NSFrameSize">{119, 17}</string>
|
<string key="NSFrameSize">{118, 17}</string>
|
||||||
<reference key="NSSuperview" ref="878614701"/>
|
<reference key="NSSuperview" ref="878614701"/>
|
||||||
<reference key="NSNextKeyView" ref="542633869"/>
|
<reference key="NSNextKeyView" ref="542633869"/>
|
||||||
<string key="NSAntiCompressionPriority">{250, 750}</string>
|
<string key="NSAntiCompressionPriority">{250, 750}</string>
|
||||||
@@ -640,7 +638,7 @@
|
|||||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||||
</object>
|
</object>
|
||||||
</array>
|
</array>
|
||||||
<string key="NSFrame">{{256, 1}, {119, 17}}</string>
|
<string key="NSFrame">{{255.5, 1}, {118.5, 17}}</string>
|
||||||
<reference key="NSNextKeyView" ref="1042596093"/>
|
<reference key="NSNextKeyView" ref="1042596093"/>
|
||||||
</object>
|
</object>
|
||||||
<reference key="destination" ref="1042596093"/>
|
<reference key="destination" ref="1042596093"/>
|
||||||
@@ -674,7 +672,7 @@
|
|||||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||||
</object>
|
</object>
|
||||||
</array>
|
</array>
|
||||||
<string key="NSFrame">{{494, 1}, {188, 17}}</string>
|
<string key="NSFrame">{{493, 1}, {188, 17}}</string>
|
||||||
<reference key="NSNextKeyView" ref="488604658"/>
|
<reference key="NSNextKeyView" ref="488604658"/>
|
||||||
</object>
|
</object>
|
||||||
<reference key="destination" ref="488604658"/>
|
<reference key="destination" ref="488604658"/>
|
||||||
@@ -1742,106 +1740,9 @@
|
|||||||
<nil key="activeLocalization"/>
|
<nil key="activeLocalization"/>
|
||||||
<dictionary class="NSMutableDictionary" key="localizations"/>
|
<dictionary class="NSMutableDictionary" key="localizations"/>
|
||||||
<nil key="sourceID"/>
|
<nil key="sourceID"/>
|
||||||
<int key="maxID">744</int>
|
<int key="maxID">745</int>
|
||||||
</object>
|
|
||||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
|
||||||
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
|
||||||
<object class="IBPartialClassDescription">
|
|
||||||
<string key="className">HNHGradientView</string>
|
|
||||||
<string key="superclassName">NSView</string>
|
|
||||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
|
||||||
<string key="majorKey">IBProjectSource</string>
|
|
||||||
<string key="minorKey">./Classes/HNHGradientView.h</string>
|
|
||||||
</object>
|
|
||||||
</object>
|
|
||||||
<object class="IBPartialClassDescription">
|
|
||||||
<string key="className">MPEntryViewController</string>
|
|
||||||
<string key="superclassName">MPViewController</string>
|
|
||||||
<dictionary class="NSMutableDictionary" key="outlets">
|
|
||||||
<string key="bottomBar">HNHGradientView</string>
|
|
||||||
<string key="entryTable">NSTableView</string>
|
|
||||||
<string key="filterBar">NSView</string>
|
|
||||||
<string key="filterDoneButton">NSButton</string>
|
|
||||||
<string key="filterLabelTextField">NSTextField</string>
|
|
||||||
<string key="filterSearchField">NSSearchField</string>
|
|
||||||
<string key="filterTitleButton">NSButton</string>
|
|
||||||
<string key="filterURLButton">NSButton</string>
|
|
||||||
<string key="filterUsernameButton">NSButton</string>
|
|
||||||
<string key="tableToTop">NSLayoutConstraint</string>
|
|
||||||
</dictionary>
|
|
||||||
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
|
|
||||||
<object class="IBToOneOutletInfo" key="bottomBar">
|
|
||||||
<string key="name">bottomBar</string>
|
|
||||||
<string key="candidateClassName">HNHGradientView</string>
|
|
||||||
</object>
|
|
||||||
<object class="IBToOneOutletInfo" key="entryTable">
|
|
||||||
<string key="name">entryTable</string>
|
|
||||||
<string key="candidateClassName">NSTableView</string>
|
|
||||||
</object>
|
|
||||||
<object class="IBToOneOutletInfo" key="filterBar">
|
|
||||||
<string key="name">filterBar</string>
|
|
||||||
<string key="candidateClassName">NSView</string>
|
|
||||||
</object>
|
|
||||||
<object class="IBToOneOutletInfo" key="filterDoneButton">
|
|
||||||
<string key="name">filterDoneButton</string>
|
|
||||||
<string key="candidateClassName">NSButton</string>
|
|
||||||
</object>
|
|
||||||
<object class="IBToOneOutletInfo" key="filterLabelTextField">
|
|
||||||
<string key="name">filterLabelTextField</string>
|
|
||||||
<string key="candidateClassName">NSTextField</string>
|
|
||||||
</object>
|
|
||||||
<object class="IBToOneOutletInfo" key="filterSearchField">
|
|
||||||
<string key="name">filterSearchField</string>
|
|
||||||
<string key="candidateClassName">NSSearchField</string>
|
|
||||||
</object>
|
|
||||||
<object class="IBToOneOutletInfo" key="filterTitleButton">
|
|
||||||
<string key="name">filterTitleButton</string>
|
|
||||||
<string key="candidateClassName">NSButton</string>
|
|
||||||
</object>
|
|
||||||
<object class="IBToOneOutletInfo" key="filterURLButton">
|
|
||||||
<string key="name">filterURLButton</string>
|
|
||||||
<string key="candidateClassName">NSButton</string>
|
|
||||||
</object>
|
|
||||||
<object class="IBToOneOutletInfo" key="filterUsernameButton">
|
|
||||||
<string key="name">filterUsernameButton</string>
|
|
||||||
<string key="candidateClassName">NSButton</string>
|
|
||||||
</object>
|
|
||||||
<object class="IBToOneOutletInfo" key="tableToTop">
|
|
||||||
<string key="name">tableToTop</string>
|
|
||||||
<string key="candidateClassName">NSLayoutConstraint</string>
|
|
||||||
</object>
|
|
||||||
</dictionary>
|
|
||||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
|
||||||
<string key="majorKey">IBProjectSource</string>
|
|
||||||
<string key="minorKey">./Classes/MPEntryViewController.h</string>
|
|
||||||
</object>
|
|
||||||
</object>
|
|
||||||
<object class="IBPartialClassDescription">
|
|
||||||
<string key="className">MPTableView</string>
|
|
||||||
<string key="superclassName">NSTableView</string>
|
|
||||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
|
||||||
<string key="majorKey">IBProjectSource</string>
|
|
||||||
<string key="minorKey">./Classes/MPTableView.h</string>
|
|
||||||
</object>
|
|
||||||
</object>
|
|
||||||
<object class="IBPartialClassDescription">
|
|
||||||
<string key="className">MPViewController</string>
|
|
||||||
<string key="superclassName">NSViewController</string>
|
|
||||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
|
||||||
<string key="majorKey">IBProjectSource</string>
|
|
||||||
<string key="minorKey">./Classes/MPViewController.h</string>
|
|
||||||
</object>
|
|
||||||
</object>
|
|
||||||
<object class="IBPartialClassDescription">
|
|
||||||
<string key="className">NSLayoutConstraint</string>
|
|
||||||
<string key="superclassName">NSObject</string>
|
|
||||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
|
||||||
<string key="majorKey">IBProjectSource</string>
|
|
||||||
<string key="minorKey">./Classes/NSLayoutConstraint.h</string>
|
|
||||||
</object>
|
|
||||||
</object>
|
|
||||||
</array>
|
|
||||||
</object>
|
</object>
|
||||||
|
<object class="IBClassDescriber" key="IBDocument.Classes"/>
|
||||||
<int key="IBDocument.localizationMode">0</int>
|
<int key="IBDocument.localizationMode">0</int>
|
||||||
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
|
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
|
||||||
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
|
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
|
||||||
|
|||||||
@@ -14,10 +14,12 @@
|
|||||||
#import "MPUppercaseStringValueTransformer.h"
|
#import "MPUppercaseStringValueTransformer.h"
|
||||||
#import "MPStringLengthValueTransformer.h"
|
#import "MPStringLengthValueTransformer.h"
|
||||||
#import "MPServerDaemon.h"
|
#import "MPServerDaemon.h"
|
||||||
|
#import "MPLockDaemon.h"
|
||||||
|
|
||||||
@interface MPAppDelegate () {
|
@interface MPAppDelegate () {
|
||||||
@private
|
@private
|
||||||
MPServerDaemon *serverDaemon;
|
MPServerDaemon *serverDaemon;
|
||||||
|
MPLockDaemon *lockDaemon;
|
||||||
}
|
}
|
||||||
|
|
||||||
@property (retain, nonatomic) MPSettingsWindowController *settingsController;
|
@property (retain, nonatomic) MPSettingsWindowController *settingsController;
|
||||||
@@ -41,6 +43,7 @@
|
|||||||
|
|
||||||
- (void)applicationDidFinishLaunching:(NSNotification *)notification {
|
- (void)applicationDidFinishLaunching:(NSNotification *)notification {
|
||||||
serverDaemon = [[MPServerDaemon alloc] init];
|
serverDaemon = [[MPServerDaemon alloc] init];
|
||||||
|
lockDaemon = [[MPLockDaemon alloc] init];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -48,6 +51,7 @@
|
|||||||
[_settingsController release];
|
[_settingsController release];
|
||||||
[_passwordCreatorController release];
|
[_passwordCreatorController release];
|
||||||
[serverDaemon release];
|
[serverDaemon release];
|
||||||
|
[lockDaemon release];
|
||||||
[super dealloc];
|
[super dealloc];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -16,6 +16,10 @@
|
|||||||
@class MPOutlineViewController;
|
@class MPOutlineViewController;
|
||||||
@class MPCreationViewController;
|
@class MPCreationViewController;
|
||||||
|
|
||||||
|
@class KdbGroup;
|
||||||
|
@class KdbEntry;
|
||||||
|
|
||||||
|
APPKIT_EXTERN NSString *const MPCurrentItemChangedNotification;
|
||||||
|
|
||||||
@interface MPDocumentWindowController : NSWindowController <NSWindowDelegate>
|
@interface MPDocumentWindowController : NSWindowController <NSWindowDelegate>
|
||||||
|
|
||||||
@@ -26,11 +30,13 @@
|
|||||||
@property (readonly, retain) MPInspectorViewController *inspectorViewController;
|
@property (readonly, retain) MPInspectorViewController *inspectorViewController;
|
||||||
@property (readonly, retain) MPCreationViewController *creationViewController;
|
@property (readonly, retain) MPCreationViewController *creationViewController;
|
||||||
|
|
||||||
|
/* Holds the current item. That is either a KdbGroup or a KdbEntry */
|
||||||
|
@property (readonly, assign) id currentItem;
|
||||||
|
|
||||||
|
|
||||||
- (void)showEntries;
|
- (void)showEntries;
|
||||||
- (void)showPasswordInput;
|
- (void)showPasswordInput;
|
||||||
- (void)performFindPanelAction:(id)sender;
|
- (void)performFindPanelAction:(id)sender;
|
||||||
- (void)clearOutlineSelection:(id)sender;
|
|
||||||
- (IBAction)editPassword:(id)sender;
|
- (IBAction)editPassword:(id)sender;
|
||||||
- (void)lock:(id)sender;
|
- (void)lock:(id)sender;
|
||||||
|
|
||||||
|
|||||||
@@ -18,6 +18,8 @@
|
|||||||
#import "MPAppDelegate.h"
|
#import "MPAppDelegate.h"
|
||||||
#import "MPActionHelper.h"
|
#import "MPActionHelper.h"
|
||||||
|
|
||||||
|
NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCurrentItemChangedNotification";
|
||||||
|
|
||||||
@interface MPDocumentWindowController () {
|
@interface MPDocumentWindowController () {
|
||||||
@private
|
@private
|
||||||
id _firstResponder;
|
id _firstResponder;
|
||||||
@@ -26,6 +28,7 @@
|
|||||||
@property (retain) IBOutlet NSSplitView *splitView;
|
@property (retain) IBOutlet NSSplitView *splitView;
|
||||||
|
|
||||||
@property (retain) NSToolbar *toolbar;
|
@property (retain) NSToolbar *toolbar;
|
||||||
|
@property (assign) id currentItem;
|
||||||
|
|
||||||
@property (retain) MPPasswordInputController *passwordInputController;
|
@property (retain) MPPasswordInputController *passwordInputController;
|
||||||
@property (retain) MPPasswordEditViewController *passwordEditController;
|
@property (retain) MPPasswordEditViewController *passwordEditController;
|
||||||
@@ -49,6 +52,11 @@
|
|||||||
_passwordEditController = [[MPPasswordEditViewController alloc] init];
|
_passwordEditController = [[MPPasswordEditViewController alloc] init];
|
||||||
_entryViewController = [[MPEntryViewController alloc] init];
|
_entryViewController = [[MPEntryViewController alloc] init];
|
||||||
_inspectorViewController = [[MPInspectorViewController alloc] init];
|
_inspectorViewController = [[MPInspectorViewController alloc] init];
|
||||||
|
_currentItem = nil;
|
||||||
|
|
||||||
|
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_updateCurrentItem:) name:MPOutlineViewDidChangeGroupSelection object:_outlineViewController.outlineDelegate];
|
||||||
|
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_updateCurrentItem:) name:MPDidChangeSelectedEntryNotification object:_entryViewController];
|
||||||
|
|
||||||
}
|
}
|
||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
@@ -134,6 +142,21 @@
|
|||||||
[self.window makeFirstResponder:[viewController reconmendedFirstResponder]];
|
[self.window makeFirstResponder:[viewController reconmendedFirstResponder]];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#pragma mark Resonder handling
|
||||||
|
- (void)_updateCurrentItem:(NSNotification *)notification {
|
||||||
|
id sender = [notification object];
|
||||||
|
if( sender == _outlineViewController.outlineView || sender == _outlineViewController.outlineDelegate ) {
|
||||||
|
self.currentItem = _outlineViewController.outlineDelegate.selectedGroup;
|
||||||
|
}
|
||||||
|
else if( sender == _entryViewController.entryTable || sender == _entryViewController) {
|
||||||
|
self.currentItem = _entryViewController.selectedEntry;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return; // no notification!
|
||||||
|
}
|
||||||
|
[[NSNotificationCenter defaultCenter] postNotificationName:MPCurrentItemChangedNotification object:self];
|
||||||
|
}
|
||||||
|
|
||||||
#pragma mark Actions
|
#pragma mark Actions
|
||||||
- (void)performFindPanelAction:(id)sender {
|
- (void)performFindPanelAction:(id)sender {
|
||||||
[self.entryViewController showFilter:sender];
|
[self.entryViewController showFilter:sender];
|
||||||
@@ -151,10 +174,10 @@
|
|||||||
return showsNoLockScreen && document.isProtected;
|
return showsNoLockScreen && document.isProtected;
|
||||||
}
|
}
|
||||||
if(itemAction == [MPActionHelper actionOfType:MPActionAddEntry]) {
|
if(itemAction == [MPActionHelper actionOfType:MPActionAddEntry]) {
|
||||||
return (nil != _entryViewController.activeGroup);
|
return (nil != _outlineViewController.outlineDelegate.selectedGroup);
|
||||||
}
|
}
|
||||||
if(itemAction == [MPActionHelper actionOfType:MPActionDelete]) {
|
if(itemAction == [MPActionHelper actionOfType:MPActionDelete]) {
|
||||||
return (_entryViewController.activeGroup || _entryViewController.selectedEntry);
|
return (nil != _currentItem);
|
||||||
}
|
}
|
||||||
if(itemAction == [MPActionHelper actionOfType:MPActionToggleInspector]) {
|
if(itemAction == [MPActionHelper actionOfType:MPActionToggleInspector]) {
|
||||||
return (nil != [_splitView superview]);
|
return (nil != [_splitView superview]);
|
||||||
@@ -171,10 +194,6 @@
|
|||||||
[self.passwordInputController requestPassword];
|
[self.passwordInputController requestPassword];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)clearOutlineSelection:(id)sender {
|
|
||||||
[self.outlineViewController clearSelection];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)editPassword:(id)sender {
|
- (void)editPassword:(id)sender {
|
||||||
if(!self.passwordEditController) {
|
if(!self.passwordEditController) {
|
||||||
_passwordEditController = [[MPPasswordEditViewController alloc] init];
|
_passwordEditController = [[MPPasswordEditViewController alloc] init];
|
||||||
@@ -190,6 +209,10 @@
|
|||||||
[_outlineViewController createGroup:nil];
|
[_outlineViewController createGroup:nil];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (void)createEntry:(id)sender {
|
||||||
|
[_outlineViewController createEntry:nil];
|
||||||
|
}
|
||||||
|
|
||||||
- (void)toggleInspector:(id)sender {
|
- (void)toggleInspector:(id)sender {
|
||||||
NSView *inspectorView = [_inspectorViewController view];
|
NSView *inspectorView = [_inspectorViewController view];
|
||||||
if([inspectorView superview]) {
|
if([inspectorView superview]) {
|
||||||
@@ -263,22 +286,18 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark NSWindowDelegate
|
#pragma mark NSWindowDelegate
|
||||||
|
|
||||||
- (void)windowDidUpdate:(NSNotification *)notification {
|
- (void)windowDidUpdate:(NSNotification *)notification {
|
||||||
if(_firstResponder != [[self window] firstResponder]) {
|
id firstResonder = [[self window] firstResponder];
|
||||||
_firstResponder = [[self window] firstResponder];
|
if(_firstResponder == firstResonder) {
|
||||||
if(![_firstResponder isKindOfClass:[NSView class]]) {
|
return;
|
||||||
return; // wrong responder
|
}
|
||||||
}
|
_firstResponder = firstResonder;
|
||||||
if( [_firstResponder isDescendantOf:[_entryViewController view]] ) {
|
if([_firstResponder isKindOfClass:[NSView class]]) {
|
||||||
//[_inspectorTabViewController showEntry];
|
[self _updateCurrentItem:[NSNotification notificationWithName:@"dummy" object:_firstResponder ]];
|
||||||
}
|
|
||||||
else if([_firstResponder isDescendantOf:[_outlineViewController view]]) {
|
|
||||||
//[_inspectorTabViewController showGroup];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#pragma mark Helper
|
#pragma mark Helper
|
||||||
- (NSSearchField *)locateToolbarSearchField {
|
- (NSSearchField *)locateToolbarSearchField {
|
||||||
for(NSToolbarItem *toolbarItem in [[self.window toolbar] items]) {
|
for(NSToolbarItem *toolbarItem in [[self.window toolbar] items]) {
|
||||||
|
|||||||
@@ -31,9 +31,9 @@ typedef enum {
|
|||||||
|
|
||||||
@interface MPEntryViewController : MPViewController <NSTableViewDelegate>
|
@interface MPEntryViewController : MPViewController <NSTableViewDelegate>
|
||||||
|
|
||||||
@property (assign) KdbGroup *activeGroup;
|
|
||||||
@property (readonly, assign, nonatomic) KdbEntry *selectedEntry;
|
@property (readonly, assign, nonatomic) KdbEntry *selectedEntry;
|
||||||
|
|
||||||
|
@property (assign,readonly) NSTableView *entryTable;
|
||||||
@property (readonly, retain) NSArrayController *entryArrayController;
|
@property (readonly, retain) NSArrayController *entryArrayController;
|
||||||
@property (nonatomic, retain) NSString *filter;
|
@property (nonatomic, retain) NSString *filter;
|
||||||
|
|
||||||
@@ -52,7 +52,6 @@ typedef enum {
|
|||||||
- (void)openURL:(id)sender;
|
- (void)openURL:(id)sender;
|
||||||
|
|
||||||
/* Entry Handling*/
|
/* Entry Handling*/
|
||||||
- (void)createEntry:(id)sender;
|
|
||||||
- (void)deleteEntry:(id)sender;
|
- (void)deleteEntry:(id)sender;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -17,6 +17,7 @@
|
|||||||
#import "MPOverlayWindowController.h"
|
#import "MPOverlayWindowController.h"
|
||||||
|
|
||||||
#import "MPContextMenuHelper.h"
|
#import "MPContextMenuHelper.h"
|
||||||
|
#import "MPActionHelper.h"
|
||||||
#import "MPConstants.h"
|
#import "MPConstants.h"
|
||||||
#import "MPEntryTableDataSource.h"
|
#import "MPEntryTableDataSource.h"
|
||||||
#import "MPStringLengthValueTransformer.h"
|
#import "MPStringLengthValueTransformer.h"
|
||||||
@@ -74,6 +75,7 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername";
|
|||||||
@property (assign) IBOutlet NSTextField *filterLabelTextField;
|
@property (assign) IBOutlet NSTextField *filterLabelTextField;
|
||||||
@property (assign) IBOutlet NSSearchField *filterSearchField;
|
@property (assign) IBOutlet NSSearchField *filterSearchField;
|
||||||
@property (assign) IBOutlet HNHGradientView *bottomBar;
|
@property (assign) IBOutlet HNHGradientView *bottomBar;
|
||||||
|
@property (assign) IBOutlet NSButton *addEntryButton;
|
||||||
|
|
||||||
@property (assign) KdbEntry *selectedEntry;
|
@property (assign) KdbEntry *selectedEntry;
|
||||||
|
|
||||||
@@ -102,7 +104,7 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername";
|
|||||||
_entryArrayController = [[NSArrayController alloc] init];
|
_entryArrayController = [[NSArrayController alloc] init];
|
||||||
_dataSource = [[MPEntryTableDataSource alloc] init];
|
_dataSource = [[MPEntryTableDataSource alloc] init];
|
||||||
_dataSource.viewController = self;
|
_dataSource.viewController = self;
|
||||||
_selectedEntry = nil;
|
_selectedEntry = nil;
|
||||||
}
|
}
|
||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
@@ -123,6 +125,7 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername";
|
|||||||
[self.view setWantsLayer:YES];
|
[self.view setWantsLayer:YES];
|
||||||
[self _hideFilterBarAnimated:NO];
|
[self _hideFilterBarAnimated:NO];
|
||||||
[_bottomBar setBorderType:HNHBorderTop];
|
[_bottomBar setBorderType:HNHBorderTop];
|
||||||
|
[self.addEntryButton setAction:[MPActionHelper actionOfType:MPActionAddEntry]];
|
||||||
|
|
||||||
[self.entryTable setDelegate:self];
|
[self.entryTable setDelegate:self];
|
||||||
[self.entryTable setDoubleAction:@selector(_columnDoubleClick:)];
|
[self.entryTable setDoubleAction:@selector(_columnDoubleClick:)];
|
||||||
@@ -130,13 +133,13 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername";
|
|||||||
[self.entryTable setFloatsGroupRows:NO];
|
[self.entryTable setFloatsGroupRows:NO];
|
||||||
[self.entryTable registerForDraggedTypes:@[MPPasteBoardType]];
|
[self.entryTable registerForDraggedTypes:@[MPPasteBoardType]];
|
||||||
[self _setupEntryMenu];
|
[self _setupEntryMenu];
|
||||||
|
|
||||||
NSTableColumn *parentColumn = [self.entryTable tableColumns][0];
|
NSTableColumn *parentColumn = [self.entryTable tableColumns][0];
|
||||||
NSTableColumn *titleColumn = [self.entryTable tableColumns][1];
|
NSTableColumn *titleColumn = [self.entryTable tableColumns][1];
|
||||||
NSTableColumn *userNameColumn = [self.entryTable tableColumns][2];
|
NSTableColumn *userNameColumn = [self.entryTable tableColumns][2];
|
||||||
NSTableColumn *passwordColumn = [self.entryTable tableColumns][3];
|
NSTableColumn *passwordColumn = [self.entryTable tableColumns][3];
|
||||||
NSTableColumn *urlColumn = [self.entryTable tableColumns][4];
|
NSTableColumn *urlColumn = [self.entryTable tableColumns][4];
|
||||||
|
|
||||||
|
|
||||||
[parentColumn setIdentifier:MPEntryTableParentColumnIdentifier];
|
[parentColumn setIdentifier:MPEntryTableParentColumnIdentifier];
|
||||||
[titleColumn setIdentifier:MPEntryTableTitleColumnIdentifier];
|
[titleColumn setIdentifier:MPEntryTableTitleColumnIdentifier];
|
||||||
@@ -161,15 +164,15 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername";
|
|||||||
[self.entryTable bind:NSContentBinding toObject:self.entryArrayController withKeyPath:@"arrangedObjects" options:nil];
|
[self.entryTable bind:NSContentBinding toObject:self.entryArrayController withKeyPath:@"arrangedObjects" options:nil];
|
||||||
[self.entryTable bind:NSSortDescriptorsBinding toObject:self.entryArrayController withKeyPath:@"sortDescriptors" options:nil];
|
[self.entryTable bind:NSSortDescriptorsBinding toObject:self.entryArrayController withKeyPath:@"sortDescriptors" options:nil];
|
||||||
[self.entryTable setDataSource:_dataSource];
|
[self.entryTable setDataSource:_dataSource];
|
||||||
|
|
||||||
[parentColumn setHidden:YES];
|
[parentColumn setHidden:YES];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)setupNotifications:(MPDocumentWindowController *)windowController {
|
- (void)setupNotifications:(MPDocumentWindowController *)windowController {
|
||||||
[[NSNotificationCenter defaultCenter] addObserver:self
|
[[NSNotificationCenter defaultCenter] addObserver:self
|
||||||
selector:@selector(_didChangeGroupSelectionInOutlineView:)
|
selector:@selector(_didChangeCurrentItem:)
|
||||||
name:MPOutlineViewDidChangeGroupSelection
|
name:MPCurrentItemChangedNotification
|
||||||
object:windowController.outlineViewController.outlineDelegate];
|
object:windowController];
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark NSTableViewDelgate
|
#pragma mark NSTableViewDelgate
|
||||||
@@ -227,20 +230,27 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername";
|
|||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark Notifications
|
#pragma mark Notifications
|
||||||
- (void)_didChangeGroupSelectionInOutlineView:(NSNotification *)notification {
|
- (void)_didChangeCurrentItem:(NSNotification *)notification {
|
||||||
if([self _showsFilterBar]) {
|
if([self _showsFilterBar]) {
|
||||||
//[self.filterSearchField setStringValue:@""];
|
//[self.filterSearchField setStringValue:@""];
|
||||||
[self clearFilter:nil];
|
[self clearFilter:nil];
|
||||||
}
|
}
|
||||||
MPOutlineViewDelegate *delegate = [notification object];
|
MPDocumentWindowController *sender = [notification object];
|
||||||
self.activeGroup = delegate.selectedGroup;
|
if([sender.currentItem isKindOfClass:[KdbGroup class]]) {
|
||||||
|
KdbGroup *item = sender.currentItem;
|
||||||
if(_activeGroup) {
|
if(item) {
|
||||||
[self.entryArrayController bind:NSContentArrayBinding toObject:_activeGroup withKeyPath:@"entries" options:nil];
|
if([[self.entryArrayController content] count] > 0) {
|
||||||
}
|
KdbEntry *entry = [[self.entryArrayController content] lastObject];
|
||||||
else {
|
if(entry.parent == item) {
|
||||||
[self.entryArrayController unbind:NSContentArrayBinding];
|
return; // we are showing the correct object right now.
|
||||||
[self.entryArrayController setContent:nil];
|
}
|
||||||
|
}
|
||||||
|
[self.entryArrayController bind:NSContentArrayBinding toObject:item withKeyPath:@"entries" options:nil];
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
[self.entryArrayController unbind:NSContentArrayBinding];
|
||||||
|
[self.entryArrayController setContent:nil];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -263,10 +273,6 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername";
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)deselectAll:(id)sender {
|
|
||||||
[self.entryTable deselectAll:nil];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)clearFilter:(id)sender {
|
- (void)clearFilter:(id)sender {
|
||||||
self.filter = nil;
|
self.filter = nil;
|
||||||
[[self.entryTable tableColumnWithIdentifier:MPEntryTableParentColumnIdentifier] setHidden:YES];
|
[[self.entryTable tableColumnWithIdentifier:MPEntryTableParentColumnIdentifier] setHidden:YES];
|
||||||
@@ -347,9 +353,7 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername";
|
|||||||
if([self _showsFilterBar]) {
|
if([self _showsFilterBar]) {
|
||||||
return; // nothing to to
|
return; // nothing to to
|
||||||
}
|
}
|
||||||
|
|
||||||
[[[self.view window] windowController] clearOutlineSelection:nil];
|
|
||||||
|
|
||||||
NSView *scrollView = [_entryTable enclosingScrollView];
|
NSView *scrollView = [_entryTable enclosingScrollView];
|
||||||
NSDictionary *views = NSDictionaryOfVariableBindings(scrollView, _filterBar);
|
NSDictionary *views = NSDictionaryOfVariableBindings(scrollView, _filterBar);
|
||||||
[self.view layout];
|
[self.view layout];
|
||||||
@@ -357,7 +361,7 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername";
|
|||||||
[self.view addSubview:self.filterBar];
|
[self.view addSubview:self.filterBar];
|
||||||
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[_filterBar]|" options:0 metrics:nil views:views]];
|
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[_filterBar]|" options:0 metrics:nil views:views]];
|
||||||
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[_filterBar(==30)]-0-[scrollView]" options:0 metrics:nil views:views]];
|
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[_filterBar(==30)]-0-[scrollView]" options:0 metrics:nil views:views]];
|
||||||
|
|
||||||
|
|
||||||
if(animate) {
|
if(animate) {
|
||||||
[NSAnimationContext runAnimationGroup:^(NSAnimationContext* context) {
|
[NSAnimationContext runAnimationGroup:^(NSAnimationContext* context) {
|
||||||
@@ -475,15 +479,6 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername";
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)createEntry:(id)sender {
|
|
||||||
if(!_activeGroup) {
|
|
||||||
return; // Entries are not allowed in root group
|
|
||||||
}
|
|
||||||
|
|
||||||
MPDocument *document = [[NSDocumentController sharedDocumentController] currentDocument];
|
|
||||||
[document createEntry:_activeGroup];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)deleteEntry:(id)sender {
|
- (void)deleteEntry:(id)sender {
|
||||||
KdbEntry *entry =[self _clickedOrSelectedEntry];
|
KdbEntry *entry =[self _clickedOrSelectedEntry];
|
||||||
[entry.parent removeEntryUndoable:entry];
|
[entry.parent removeEntryUndoable:entry];
|
||||||
|
|||||||
@@ -10,4 +10,7 @@
|
|||||||
|
|
||||||
@protocol MPFirstResonderNotification <NSObject>
|
@protocol MPFirstResonderNotification <NSObject>
|
||||||
|
|
||||||
|
@required
|
||||||
|
- (BOOL)becomeFirstResponder;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
@@ -24,11 +24,14 @@
|
|||||||
@property (assign) IBOutlet NSTextField *URLTextField;
|
@property (assign) IBOutlet NSTextField *URLTextField;
|
||||||
@property (assign) IBOutlet NSTextField *passwordTextField;
|
@property (assign) IBOutlet NSTextField *passwordTextField;
|
||||||
@property (assign) IBOutlet NSTextField *titleOrNameLabel;
|
@property (assign) IBOutlet NSTextField *titleOrNameLabel;
|
||||||
@property (assign) IBOutlet NSTextField *notesTextField;
|
|
||||||
@property (assign) IBOutlet HNHGradientView *bottomBar;
|
@property (assign) IBOutlet HNHGradientView *bottomBar;
|
||||||
@property (assign) IBOutlet NSTextField *infoTextField;
|
@property (assign) IBOutlet NSTextField *infoTextField;
|
||||||
@property (assign) IBOutlet NSTableView *attachmentTableView;
|
@property (assign) IBOutlet NSTableView *attachmentTableView;
|
||||||
@property (assign) IBOutlet NSView *scrollContentView;
|
@property (assign) IBOutlet NSView *scrollContentView;
|
||||||
|
@property (assign) IBOutlet NSSegmentedControl *notesOrAttachmentControl;
|
||||||
|
@property (retain) IBOutlet NSScrollView *attachmenScrollView;
|
||||||
|
@property (assign) IBOutlet NSScrollView *notesScrollView;
|
||||||
|
@property (assign) IBOutlet NSTextView *notesTextView;
|
||||||
|
|
||||||
- (void)closeActivePopup:(id)sender;
|
- (void)closeActivePopup:(id)sender;
|
||||||
/* Seperate call to ensure alle registered objects are in place */
|
/* Seperate call to ensure alle registered objects are in place */
|
||||||
|
|||||||
@@ -23,6 +23,11 @@
|
|||||||
#import "KdbEntry+Undo.h"
|
#import "KdbEntry+Undo.h"
|
||||||
#import "HNHGradientView.h"
|
#import "HNHGradientView.h"
|
||||||
|
|
||||||
|
enum {
|
||||||
|
MPNotesTab,
|
||||||
|
MPAttachmentTab
|
||||||
|
};
|
||||||
|
|
||||||
@interface MPInspectorViewController () {
|
@interface MPInspectorViewController () {
|
||||||
BOOL _visible;
|
BOOL _visible;
|
||||||
}
|
}
|
||||||
@@ -30,7 +35,6 @@
|
|||||||
@property (assign, nonatomic) KdbEntry *selectedEntry;
|
@property (assign, nonatomic) KdbEntry *selectedEntry;
|
||||||
@property (assign, nonatomic) KdbGroup *selectedGroup;
|
@property (assign, nonatomic) KdbGroup *selectedGroup;
|
||||||
|
|
||||||
@property (assign, nonatomic) BOOL showsEntry;
|
|
||||||
@property (retain) NSPopover *activePopover;
|
@property (retain) NSPopover *activePopover;
|
||||||
@property (assign) IBOutlet NSButton *generatePasswordButton;
|
@property (assign) IBOutlet NSButton *generatePasswordButton;
|
||||||
@property (nonatomic, assign) NSDate *modificationDate;
|
@property (nonatomic, assign) NSDate *modificationDate;
|
||||||
@@ -50,7 +54,6 @@
|
|||||||
if (self) {
|
if (self) {
|
||||||
_selectedEntry = nil;
|
_selectedEntry = nil;
|
||||||
_selectedGroup = nil;
|
_selectedGroup = nil;
|
||||||
_showsEntry = NO;
|
|
||||||
_attachmentController = [[NSArrayController alloc] init];
|
_attachmentController = [[NSArrayController alloc] init];
|
||||||
}
|
}
|
||||||
return self;
|
return self;
|
||||||
@@ -72,6 +75,11 @@
|
|||||||
[_attachmentTableView setDelegate:self];
|
[_attachmentTableView setDelegate:self];
|
||||||
[_attachmentTableView bind:NSContentBinding toObject:_attachmentController withKeyPath:@"arrangedObjects" options:nil];
|
[_attachmentTableView bind:NSContentBinding toObject:_attachmentController withKeyPath:@"arrangedObjects" options:nil];
|
||||||
[_attachmentTableView setHidden:YES];
|
[_attachmentTableView setHidden:YES];
|
||||||
|
|
||||||
|
[_notesOrAttachmentControl setAction:@selector(_toggleInfoTab:)];
|
||||||
|
[_notesOrAttachmentControl setTarget:self];
|
||||||
|
[[_notesOrAttachmentControl cell] setTag:MPAttachmentTab forSegment:MPAttachmentTab];
|
||||||
|
[[_notesOrAttachmentControl cell] setTag:MPNotesTab forSegment:MPNotesTab];
|
||||||
|
|
||||||
[self _clearContent];
|
[self _clearContent];
|
||||||
}
|
}
|
||||||
@@ -79,21 +87,15 @@
|
|||||||
- (void)setupNotifications:(MPDocumentWindowController *)windowController {
|
- (void)setupNotifications:(MPDocumentWindowController *)windowController {
|
||||||
/* Register for Entry selection */
|
/* Register for Entry selection */
|
||||||
[[NSNotificationCenter defaultCenter] addObserver:self
|
[[NSNotificationCenter defaultCenter] addObserver:self
|
||||||
selector:@selector(_didChangeSelectedEntry:)
|
selector:@selector(_didChangeCurrentItem:)
|
||||||
name:MPDidChangeSelectedEntryNotification
|
name:MPCurrentItemChangedNotification
|
||||||
object:windowController.entryViewController];
|
object:windowController];
|
||||||
|
|
||||||
/* Register for Group selection */
|
|
||||||
[[NSNotificationCenter defaultCenter] addObserver:self
|
|
||||||
selector:@selector(_didChangeSelectedGroup:)
|
|
||||||
name:MPOutlineViewDidChangeGroupSelection
|
|
||||||
object:windowController.outlineViewController.outlineDelegate];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)_updateInfoString {
|
- (void)_updateInfoString {
|
||||||
NSDate *modificationDate;
|
NSDate *modificationDate;
|
||||||
NSDate *creationDate;
|
NSDate *creationDate;
|
||||||
if(_showsEntry) {
|
if(self.selectedEntry) {
|
||||||
modificationDate = self.selectedEntry.lastModificationTime;
|
modificationDate = self.selectedEntry.lastModificationTime;
|
||||||
creationDate = self.selectedEntry.creationTime;
|
creationDate = self.selectedEntry.creationTime;
|
||||||
}
|
}
|
||||||
@@ -113,10 +115,10 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)_updateContent {
|
- (void)_updateContent {
|
||||||
if(self.showsEntry && self.selectedEntry) {
|
if(self.selectedEntry) {
|
||||||
[self _showEntry];
|
[self _showEntry];
|
||||||
}
|
}
|
||||||
else if(!self.showsEntry && self.selectedGroup) {
|
else if(self.selectedGroup) {
|
||||||
[self _showGroup];
|
[self _showGroup];
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@@ -137,7 +139,7 @@
|
|||||||
[self.titleOrNameLabel setStringValue:NSLocalizedString(@"TITLE",@"")];
|
[self.titleOrNameLabel setStringValue:NSLocalizedString(@"TITLE",@"")];
|
||||||
[self.titleTextField bind:NSValueBinding toObject:self.selectedEntry withKeyPath:MPEntryTitleUndoableKey options:nil];
|
[self.titleTextField bind:NSValueBinding toObject:self.selectedEntry withKeyPath:MPEntryTitleUndoableKey options:nil];
|
||||||
[self.URLTextField bind:NSValueBinding toObject:self.selectedEntry withKeyPath:MPEntryUrlUndoableKey options:nil];
|
[self.URLTextField bind:NSValueBinding toObject:self.selectedEntry withKeyPath:MPEntryUrlUndoableKey options:nil];
|
||||||
[self.notesTextField bind:NSValueBinding toObject:self.selectedEntry withKeyPath:MPEntryNotesUndoableKey options:nil];
|
[self.notesTextView bind:NSValueBinding toObject:self.selectedEntry withKeyPath:MPEntryNotesUndoableKey options:nil];
|
||||||
|
|
||||||
[self _setInputEnabled:YES];
|
[self _setInputEnabled:YES];
|
||||||
}
|
}
|
||||||
@@ -160,7 +162,11 @@
|
|||||||
[self.passwordTextField setStringValue:@""];
|
[self.passwordTextField setStringValue:@""];
|
||||||
[self.usernameTextField setStringValue:@""];
|
[self.usernameTextField setStringValue:@""];
|
||||||
[self.URLTextField setStringValue:@""];
|
[self.URLTextField setStringValue:@""];
|
||||||
[self.notesTextField setStringValue:@""];
|
[self.notesTextView setString:@""];
|
||||||
|
|
||||||
|
// Reste toggle
|
||||||
|
[self.notesOrAttachmentControl setSelected:NO forSegment:MPNotesTab];
|
||||||
|
[self.notesOrAttachmentControl setSelected:NO forSegment:MPAttachmentTab];
|
||||||
|
|
||||||
[self _setInputEnabled:YES];
|
[self _setInputEnabled:YES];
|
||||||
}
|
}
|
||||||
@@ -174,7 +180,7 @@
|
|||||||
[self.usernameTextField unbind:NSValueBinding];
|
[self.usernameTextField unbind:NSValueBinding];
|
||||||
[self.titleTextField unbind:NSValueBinding];
|
[self.titleTextField unbind:NSValueBinding];
|
||||||
[self.URLTextField unbind:NSValueBinding];
|
[self.URLTextField unbind:NSValueBinding];
|
||||||
[self.notesTextField unbind:NSValueBinding];
|
[self.notesTextView unbind:NSValueBinding];
|
||||||
|
|
||||||
[self.itemNameTextfield setStringValue:NSLocalizedString(@"INSPECTOR_NO_SELECTION", @"No item selected in inspector")];
|
[self.itemNameTextfield setStringValue:NSLocalizedString(@"INSPECTOR_NO_SELECTION", @"No item selected in inspector")];
|
||||||
[self.itemImageView setImage:[NSImage imageNamed:NSImageNameActionTemplate]];
|
[self.itemImageView setImage:[NSImage imageNamed:NSImageNameActionTemplate]];
|
||||||
@@ -184,7 +190,7 @@
|
|||||||
[self.usernameTextField setStringValue:@""];
|
[self.usernameTextField setStringValue:@""];
|
||||||
[self.titleTextField setStringValue:@""];
|
[self.titleTextField setStringValue:@""];
|
||||||
[self.URLTextField setStringValue:@""];
|
[self.URLTextField setStringValue:@""];
|
||||||
[self.notesTextField setStringValue:@""];
|
[self.notesTextView setString:@""];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -196,17 +202,18 @@
|
|||||||
[self.itemNameTextfield setEnabled:enabled];
|
[self.itemNameTextfield setEnabled:enabled];
|
||||||
[self.titleTextField setEnabled:enabled];
|
[self.titleTextField setEnabled:enabled];
|
||||||
|
|
||||||
enabled &= self.showsEntry;
|
enabled &= (self.selectedEntry != nil);
|
||||||
[self.passwordTextField setEnabled:enabled];
|
[self.passwordTextField setEnabled:enabled];
|
||||||
[self.usernameTextField setEnabled:enabled];
|
[self.usernameTextField setEnabled:enabled];
|
||||||
[self.URLTextField setEnabled:enabled];
|
[self.URLTextField setEnabled:enabled];
|
||||||
[self.generatePasswordButton setEnabled:enabled];
|
[self.generatePasswordButton setEnabled:enabled];
|
||||||
[self.notesTextField setEditable:enabled];
|
[self.notesTextView setEditable:enabled];
|
||||||
|
[self.notesOrAttachmentControl setEnabled:enabled forSegment:MPNotesTab];
|
||||||
|
[self.notesOrAttachmentControl setEnabled:enabled forSegment:MPAttachmentTab];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)_updateAttachments {
|
- (void)_updateAttachments {
|
||||||
if(self.selectedEntry && self.showsEntry) {
|
if(self.selectedEntry) {
|
||||||
if([self.selectedEntry isKindOfClass:[Kdb4Entry class]]) {
|
if([self.selectedEntry isKindOfClass:[Kdb4Entry class]]) {
|
||||||
[self.attachmentController bind:NSContentArrayBinding toObject:self.selectedEntry withKeyPath:@"binaries" options:nil];
|
[self.attachmentController bind:NSContentArrayBinding toObject:self.selectedEntry withKeyPath:@"binaries" options:nil];
|
||||||
}
|
}
|
||||||
@@ -220,6 +227,38 @@
|
|||||||
|
|
||||||
#pragma mark Actions
|
#pragma mark Actions
|
||||||
|
|
||||||
|
- (void)_toggleInfoTab:(id)sender {
|
||||||
|
NSUInteger selectedSegment = [sender selectedSegment];
|
||||||
|
NSUInteger tab = [[sender cell] tagForSegment:selectedSegment];
|
||||||
|
NSView *infoView = nil;
|
||||||
|
NSView *oldView = nil;
|
||||||
|
switch (tab) {
|
||||||
|
case MPNotesTab:
|
||||||
|
infoView = _notesScrollView;
|
||||||
|
oldView = _attachmenScrollView;
|
||||||
|
break;
|
||||||
|
case MPAttachmentTab:
|
||||||
|
oldView = _notesScrollView;
|
||||||
|
infoView = _attachmenScrollView;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if([oldView superview]) {
|
||||||
|
[oldView removeFromSuperview];
|
||||||
|
}
|
||||||
|
[self.scrollContentView addSubview:infoView];
|
||||||
|
NSDictionary *views = NSDictionaryOfVariableBindings(_notesOrAttachmentControl, infoView);
|
||||||
|
[self.scrollContentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:[_notesOrAttachmentControl]-10-[infoView(>=100)]-10-|"
|
||||||
|
options:0
|
||||||
|
metrics:nil
|
||||||
|
views:views]];
|
||||||
|
[self.scrollContentView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-10-[infoView]-10-|"
|
||||||
|
options:0
|
||||||
|
metrics:nil
|
||||||
|
views:views]];
|
||||||
|
[[self view] layout];
|
||||||
|
}
|
||||||
|
|
||||||
- (void)_showImagePopup:(id)sender {
|
- (void)_showImagePopup:(id)sender {
|
||||||
[self _showPopopver:[[[MPIconSelectViewController alloc] init] autorelease] atView:self.itemImageView onEdge:NSMinYEdge];
|
[self _showPopopver:[[[MPIconSelectViewController alloc] init] autorelease] atView:self.itemImageView onEdge:NSMinYEdge];
|
||||||
}
|
}
|
||||||
@@ -241,36 +280,40 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark Notificiations
|
#pragma mark Notificiations
|
||||||
- (void)_didChangeSelectedEntry:(NSNotification *)notification {
|
- (void)_didChangeCurrentItem:(NSNotification *)notification {
|
||||||
MPEntryViewController *entryViewController = [notification object];
|
MPDocumentWindowController *sender = [notification object];
|
||||||
if(entryViewController) {
|
id item = sender.currentItem;
|
||||||
self.selectedEntry = entryViewController.selectedEntry;
|
if(!item) {
|
||||||
|
self.selectedGroup = nil;
|
||||||
|
self.selectedEntry = nil;
|
||||||
}
|
}
|
||||||
}
|
if([item isKindOfClass:[KdbGroup class]]) {
|
||||||
|
self.selectedEntry = nil;
|
||||||
- (void)_didChangeSelectedGroup:(NSNotification *)notification {
|
self.selectedGroup = sender.currentItem;
|
||||||
MPOutlineViewDelegate *outlineViewDelegae = [notification object];
|
|
||||||
if(outlineViewDelegae) {
|
|
||||||
self.selectedGroup = outlineViewDelegae.selectedGroup;
|
|
||||||
}
|
}
|
||||||
|
else if([item isKindOfClass:[KdbEntry class]]) {
|
||||||
|
self.selectedGroup = nil;
|
||||||
|
self.selectedEntry = sender.currentItem;
|
||||||
|
}
|
||||||
|
[self _updateContent];
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark Properties
|
#pragma mark Properties
|
||||||
- (void)setSelectedEntry:(KdbEntry *)selectedEntry {
|
//- (void)setSelectedEntry:(KdbEntry *)selectedEntry {
|
||||||
if(_selectedEntry != selectedEntry) {
|
// if(_selectedEntry != selectedEntry) {
|
||||||
_selectedEntry = selectedEntry;
|
// _selectedEntry = selectedEntry;
|
||||||
self.showsEntry = YES;
|
// self.showsEntry = YES;
|
||||||
[self _updateContent];
|
// [self _updateContent];
|
||||||
}
|
// }
|
||||||
}
|
//}
|
||||||
|
//
|
||||||
- (void)setSelectedGroup:(KdbGroup *)selectedGroup {
|
//- (void)setSelectedGroup:(KdbGroup *)selectedGroup {
|
||||||
if(_selectedGroup != selectedGroup) {
|
// if(_selectedGroup != selectedGroup) {
|
||||||
_selectedGroup = selectedGroup;
|
// _selectedGroup = selectedGroup;
|
||||||
self.showsEntry = NO;
|
// self.showsEntry = NO;
|
||||||
[self _updateContent];
|
// [self _updateContent];
|
||||||
}
|
// }
|
||||||
}
|
//}
|
||||||
|
|
||||||
#pragma mark NSTableViewDelegate
|
#pragma mark NSTableViewDelegate
|
||||||
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
|
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
|
||||||
|
|||||||
@@ -7,9 +7,17 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "MPLockDaemon.h"
|
#import "MPLockDaemon.h"
|
||||||
|
#import "MPSettingsHelper.h"
|
||||||
|
|
||||||
NSString *const MPShouldLockDatabaseNotification = @"com.hicknhack.macpass.MPShouldLockDatabaseNotification";
|
NSString *const MPShouldLockDatabaseNotification = @"com.hicknhack.macpass.MPShouldLockDatabaseNotification";
|
||||||
|
|
||||||
|
@interface MPLockDaemon ()
|
||||||
|
|
||||||
|
@property (nonatomic,assign) BOOL lockOnSleep;
|
||||||
|
@property (nonatomic,assign) NSUInteger idleLockTime;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
@implementation MPLockDaemon
|
@implementation MPLockDaemon
|
||||||
|
|
||||||
+ (MPLockDaemon *)sharedInstance {
|
+ (MPLockDaemon *)sharedInstance {
|
||||||
@@ -24,8 +32,11 @@ NSString *const MPShouldLockDatabaseNotification = @"com.hicknhack.macpass.MPSho
|
|||||||
- (id)init {
|
- (id)init {
|
||||||
self = [super init];
|
self = [super init];
|
||||||
if (self) {
|
if (self) {
|
||||||
NSNotificationCenter *notificationCenter = [[NSWorkspace sharedWorkspace] notificationCenter];
|
NSString *lockOnSleepKey = [NSString stringWithFormat:@"values.%@", kMPSettingsKeyLockOnSleep];
|
||||||
[notificationCenter addObserver:self selector:@selector(_willSleepNotification:) name:NSWorkspaceWillSleepNotification object:nil];
|
NSString *idleTimeOutKey = [NSString stringWithFormat:@"values.%@", kMPSEttingsKeyIdleLockTimeOut];
|
||||||
|
NSUserDefaultsController *defaultsController = [NSUserDefaultsController sharedUserDefaultsController];
|
||||||
|
[self bind:@"lockOnSleep" toObject:defaultsController withKeyPath:lockOnSleepKey options:nil];
|
||||||
|
[self bind:@"idleLockTime" toObject:defaultsController withKeyPath:idleTimeOutKey options:nil];
|
||||||
}
|
}
|
||||||
return self;
|
return self;
|
||||||
}
|
}
|
||||||
@@ -36,6 +47,30 @@ NSString *const MPShouldLockDatabaseNotification = @"com.hicknhack.macpass.MPSho
|
|||||||
[super dealloc];
|
[super dealloc];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (void)setLockOnSleep:(BOOL)lockOnSleep {
|
||||||
|
if(_lockOnSleep != lockOnSleep) {
|
||||||
|
_lockOnSleep = lockOnSleep;
|
||||||
|
NSNotificationCenter *notificationCenter = [[NSWorkspace sharedWorkspace] notificationCenter];
|
||||||
|
if(_lockOnSleep) {
|
||||||
|
[notificationCenter addObserver:self selector:@selector(_willSleepNotification:) name:NSWorkspaceWillSleepNotification object:nil];
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
[notificationCenter removeObserver:self];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)setIdleLockTime:(NSUInteger)idleLockTime {
|
||||||
|
if(_idleLockTime != idleLockTime) {
|
||||||
|
_idleLockTime = idleLockTime;
|
||||||
|
if(_idleLockTime == 0) {
|
||||||
|
// disable
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// update timer
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
- (void)_willSleepNotification:(NSNotification *)notification {
|
- (void)_willSleepNotification:(NSNotification *)notification {
|
||||||
[[NSNotificationCenter defaultCenter] postNotificationName:MPShouldLockDatabaseNotification object:self];
|
[[NSNotificationCenter defaultCenter] postNotificationName:MPShouldLockDatabaseNotification object:self];
|
||||||
|
|||||||
@@ -14,10 +14,10 @@
|
|||||||
|
|
||||||
@interface MPOutlineViewController : MPViewController
|
@interface MPOutlineViewController : MPViewController
|
||||||
|
|
||||||
|
@property (readonly, assign) NSOutlineView *outlineView;
|
||||||
@property (retain, readonly) MPOutlineViewDelegate *outlineDelegate;
|
@property (retain, readonly) MPOutlineViewDelegate *outlineDelegate;
|
||||||
@property (assign) IBOutlet HNHGradientView *bottomBar;
|
@property (assign) IBOutlet HNHGradientView *bottomBar;
|
||||||
|
|
||||||
- (void)clearSelection;
|
|
||||||
- (void)showOutline;
|
- (void)showOutline;
|
||||||
|
|
||||||
- (void)createGroup:(id)sender;
|
- (void)createGroup:(id)sender;
|
||||||
|
|||||||
@@ -9,12 +9,16 @@
|
|||||||
#import "MPOutlineViewController.h"
|
#import "MPOutlineViewController.h"
|
||||||
#import "MPOutlineViewDelegate.h"
|
#import "MPOutlineViewDelegate.h"
|
||||||
#import "MPOutlineDataSource.h"
|
#import "MPOutlineDataSource.h"
|
||||||
|
|
||||||
#import "MPDocument.h"
|
#import "MPDocument.h"
|
||||||
#import "MPAppDelegate.h"
|
#import "MPAppDelegate.h"
|
||||||
#import "KdbLib.h"
|
|
||||||
#import "KdbGroup+Undo.h"
|
|
||||||
#import "MPContextMenuHelper.h"
|
#import "MPContextMenuHelper.h"
|
||||||
#import "MPConstants.h"
|
#import "MPConstants.h"
|
||||||
|
#import "MPActionHelper.h"
|
||||||
|
|
||||||
|
#import "KdbLib.h"
|
||||||
|
#import "KdbGroup+Undo.h"
|
||||||
|
|
||||||
#import "HNHGradientView.h"
|
#import "HNHGradientView.h"
|
||||||
|
|
||||||
|
|
||||||
@@ -22,6 +26,7 @@
|
|||||||
BOOL _bindingEstablished;
|
BOOL _bindingEstablished;
|
||||||
}
|
}
|
||||||
@property (assign) IBOutlet NSOutlineView *outlineView;
|
@property (assign) IBOutlet NSOutlineView *outlineView;
|
||||||
|
@property (assign) IBOutlet NSButton *addGroupButton;
|
||||||
|
|
||||||
@property (retain) NSTreeController *treeController;
|
@property (retain) NSTreeController *treeController;
|
||||||
@property (retain) MPOutlineDataSource *datasource;
|
@property (retain) MPOutlineDataSource *datasource;
|
||||||
@@ -50,20 +55,22 @@
|
|||||||
|
|
||||||
- (void)dealloc
|
- (void)dealloc
|
||||||
{
|
{
|
||||||
self.datasource = nil;
|
[_datasource release];
|
||||||
self.outlineDelegate = nil;
|
[_outlineDelegate release];
|
||||||
self.menu = nil;
|
[_menu release];
|
||||||
|
|
||||||
[super dealloc];
|
[super dealloc];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)didLoadView {
|
- (void)didLoadView {
|
||||||
[self.outlineView setDelegate:self.outlineDelegate];
|
[_outlineView setDelegate:_outlineDelegate];
|
||||||
[self.outlineView setMenu:[self _contextMenu]];
|
[_outlineView setMenu:[self _contextMenu]];
|
||||||
[self.outlineView setAllowsEmptySelection:YES];
|
[_outlineView setAllowsEmptySelection:YES];
|
||||||
[self.outlineView setFloatsGroupRows:NO];
|
[_outlineView setFloatsGroupRows:NO];
|
||||||
[_outlineView registerForDraggedTypes:@[ MPPasteBoardType ]];
|
[_outlineView registerForDraggedTypes:@[ MPPasteBoardType ]];
|
||||||
[self.outlineView setDraggingSourceOperationMask:NSDragOperationEvery forLocal:YES];
|
[_outlineView setDraggingSourceOperationMask:NSDragOperationEvery forLocal:YES];
|
||||||
[_bottomBar setBorderType:HNHBorderTop];
|
[_bottomBar setBorderType:HNHBorderTop];
|
||||||
|
[_addGroupButton setAction:[MPActionHelper actionOfType:MPActionAddGroup]];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)showOutline {
|
- (void)showOutline {
|
||||||
@@ -79,10 +86,6 @@
|
|||||||
[_outlineView expandItem:node expandChildren:NO];
|
[_outlineView expandItem:node expandChildren:NO];
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)clearSelection {
|
|
||||||
[self.outlineView deselectAll:nil];
|
|
||||||
}
|
|
||||||
|
|
||||||
- (NSMenu *)_contextMenu {
|
- (NSMenu *)_contextMenu {
|
||||||
NSMenu *menu = [[NSMenu alloc] init];
|
NSMenu *menu = [[NSMenu alloc] init];
|
||||||
NSArray *items = [MPContextMenuHelper contextMenuItemsWithItems:MPContextMenuMinimal];
|
NSArray *items = [MPContextMenuHelper contextMenuItemsWithItems:MPContextMenuMinimal];
|
||||||
|
|||||||
@@ -59,8 +59,9 @@ NSString *const _MPOutlinveViewHeaderViewIdentifier = @"HeaderCell";
|
|||||||
- (BOOL)outlineView:(NSOutlineView *)outlineView shouldSelectItem:(id)item {
|
- (BOOL)outlineView:(NSOutlineView *)outlineView shouldSelectItem:(id)item {
|
||||||
NSTreeNode *treeNode = item;
|
NSTreeNode *treeNode = item;
|
||||||
KdbGroup *group = [treeNode representedObject];
|
KdbGroup *group = [treeNode representedObject];
|
||||||
|
return YES;
|
||||||
//KdbGroup *group = item;
|
//KdbGroup *group = item;
|
||||||
return (nil != [group parent]);
|
//return (nil != [group parent]);
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)outlineViewSelectionDidChange:(NSNotification *)notification {
|
- (void)outlineViewSelectionDidChange:(NSNotification *)notification {
|
||||||
|
|||||||
@@ -8,14 +8,24 @@
|
|||||||
|
|
||||||
#import <Cocoa/Cocoa.h>
|
#import <Cocoa/Cocoa.h>
|
||||||
|
|
||||||
|
/* Clipboard */
|
||||||
APPKIT_EXTERN NSString *const kMPSettingsKeyPasteboardClearTimeout;
|
APPKIT_EXTERN NSString *const kMPSettingsKeyPasteboardClearTimeout;
|
||||||
APPKIT_EXTERN NSString *const kMPSettingsKeyClearPasteboardOnQuit;
|
APPKIT_EXTERN NSString *const kMPSettingsKeyClearPasteboardOnQuit;
|
||||||
|
|
||||||
|
/* Behaviour */
|
||||||
APPKIT_EXTERN NSString *const kMPSettingsKeyPasswordEncoding;
|
APPKIT_EXTERN NSString *const kMPSettingsKeyPasswordEncoding;
|
||||||
APPKIT_EXTERN NSString *const kMPSettingsKeyOpenEmptyDatabaseOnLaunch;
|
APPKIT_EXTERN NSString *const kMPSettingsKeyOpenEmptyDatabaseOnLaunch;
|
||||||
|
|
||||||
|
/* Server Settings */
|
||||||
APPKIT_EXTERN NSString *const kMPSettingsKeyHttpPort;
|
APPKIT_EXTERN NSString *const kMPSettingsKeyHttpPort;
|
||||||
APPKIT_EXTERN NSString *const kMPSettingsKeyEnableHttpServer;
|
APPKIT_EXTERN NSString *const kMPSettingsKeyEnableHttpServer;
|
||||||
APPKIT_EXTERN NSString *const kMPSettingsKeyShowMenuItem;
|
APPKIT_EXTERN NSString *const kMPSettingsKeyShowMenuItem;
|
||||||
|
|
||||||
|
/* Autolock */
|
||||||
|
APPKIT_EXTERN NSString *const kMPSettingsKeyLockOnSleep;
|
||||||
|
APPKIT_EXTERN NSString *const kMPSEttingsKeyIdleLockTimeOut;
|
||||||
|
|
||||||
|
|
||||||
typedef NS_ENUM(NSUInteger, MPPasswordEncoding) {
|
typedef NS_ENUM(NSUInteger, MPPasswordEncoding) {
|
||||||
MPPasswordEncodingUTF8,
|
MPPasswordEncodingUTF8,
|
||||||
MPPasswordEncodingASCII,
|
MPPasswordEncodingASCII,
|
||||||
|
|||||||
@@ -14,7 +14,8 @@ NSString *const kMPSettingsKeyOpenEmptyDatabaseOnLaunch = @"OpenEmptyDatabaseOnL
|
|||||||
NSString *const kMPSettingsKeyHttpPort =@"HttpPort";
|
NSString *const kMPSettingsKeyHttpPort =@"HttpPort";
|
||||||
NSString *const kMPSettingsKeyEnableHttpServer = @"EnableHttpServer";
|
NSString *const kMPSettingsKeyEnableHttpServer = @"EnableHttpServer";
|
||||||
NSString *const kMPSettingsKeyShowMenuItem = @"ShowMenuItem";
|
NSString *const kMPSettingsKeyShowMenuItem = @"ShowMenuItem";
|
||||||
|
NSString *const kMPSettingsKeyLockOnSleep = @"LockOnSleep";
|
||||||
|
NSString *const kMPSEttingsKeyIdleLockTimeOut = @"IdleLockTimeOut";
|
||||||
|
|
||||||
@implementation MPSettingsHelper
|
@implementation MPSettingsHelper
|
||||||
|
|
||||||
@@ -24,12 +25,14 @@ NSString *const kMPSettingsKeyShowMenuItem = @"ShowMenuItem";
|
|||||||
|
|
||||||
+ (NSDictionary *)_standardDefaults {
|
+ (NSDictionary *)_standardDefaults {
|
||||||
return @{
|
return @{
|
||||||
kMPSettingsKeyPasteboardClearTimeout: @10,
|
kMPSettingsKeyPasteboardClearTimeout: @30, // 30 seconds
|
||||||
kMPSettingsKeyClearPasteboardOnQuit: @YES,
|
kMPSettingsKeyClearPasteboardOnQuit: @YES,
|
||||||
kMPSettingsKeyOpenEmptyDatabaseOnLaunch: @YES,
|
kMPSettingsKeyOpenEmptyDatabaseOnLaunch: @YES,
|
||||||
kMPSettingsKeyHttpPort: @19455,
|
kMPSettingsKeyHttpPort: @19455,
|
||||||
kMPSettingsKeyEnableHttpServer: @NO,
|
kMPSettingsKeyEnableHttpServer: @NO,
|
||||||
kMPSettingsKeyShowMenuItem: @YES,
|
kMPSettingsKeyShowMenuItem: @YES,
|
||||||
|
kMPSettingsKeyLockOnSleep: @YES,
|
||||||
|
kMPSEttingsKeyIdleLockTimeOut: @300 // 5 minutes
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -29,11 +29,6 @@
|
|||||||
return nil; // override
|
return nil; // override
|
||||||
}
|
}
|
||||||
|
|
||||||
- (BOOL)becomeFirstResponder {
|
|
||||||
NSLog(@"%@: about to become firt responder.", [self class]);
|
|
||||||
return YES;
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)updateResponderChain {
|
- (void)updateResponderChain {
|
||||||
if(self.view && [self.view nextResponder] != self) {
|
if(self.view && [self.view nextResponder] != self) {
|
||||||
NSResponder *nextResponder = [[self view] nextResponder];
|
NSResponder *nextResponder = [[self view] nextResponder];
|
||||||
|
|||||||
@@ -48,7 +48,7 @@
|
|||||||
<key>CFBundleSignature</key>
|
<key>CFBundleSignature</key>
|
||||||
<string>????</string>
|
<string>????</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>592</string>
|
<string>747</string>
|
||||||
<key>LSMinimumSystemVersion</key>
|
<key>LSMinimumSystemVersion</key>
|
||||||
<string>${MACOSX_DEPLOYMENT_TARGET}</string>
|
<string>${MACOSX_DEPLOYMENT_TARGET}</string>
|
||||||
<key>NSHumanReadableCopyright</key>
|
<key>NSHumanReadableCopyright</key>
|
||||||
@@ -57,5 +57,7 @@
|
|||||||
<string>MainMenu</string>
|
<string>MainMenu</string>
|
||||||
<key>NSPrincipalClass</key>
|
<key>NSPrincipalClass</key>
|
||||||
<string>NSApplication</string>
|
<string>NSApplication</string>
|
||||||
|
<key>NSSupportsAutomaticGraphicsSwitching</key>
|
||||||
|
<true/>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|||||||
@@ -60,7 +60,7 @@
|
|||||||
<string key="NSReuseIdentifierKey">_NS:9</string>
|
<string key="NSReuseIdentifierKey">_NS:9</string>
|
||||||
<bool key="NSEnabled">YES</bool>
|
<bool key="NSEnabled">YES</bool>
|
||||||
<object class="NSButtonCell" key="NSCell" id="573415016">
|
<object class="NSButtonCell" key="NSCell" id="573415016">
|
||||||
<int key="NSCellFlags">-1543503872</int>
|
<int key="NSCellFlags">-2080374784</int>
|
||||||
<int key="NSCellFlags2">134217728</int>
|
<int key="NSCellFlags2">134217728</int>
|
||||||
<string key="NSContents"/>
|
<string key="NSContents"/>
|
||||||
<object class="NSFont" key="NSSupport">
|
<object class="NSFont" key="NSSupport">
|
||||||
@@ -304,6 +304,14 @@
|
|||||||
</object>
|
</object>
|
||||||
<int key="connectionID">433</int>
|
<int key="connectionID">433</int>
|
||||||
</object>
|
</object>
|
||||||
|
<object class="IBConnectionRecord">
|
||||||
|
<object class="IBOutletConnection" key="connection">
|
||||||
|
<string key="label">addGroupButton</string>
|
||||||
|
<reference key="source" ref="1001"/>
|
||||||
|
<reference key="destination" ref="483226599"/>
|
||||||
|
</object>
|
||||||
|
<int key="connectionID">434</int>
|
||||||
|
</object>
|
||||||
<object class="IBConnectionRecord">
|
<object class="IBConnectionRecord">
|
||||||
<object class="IBOutletConnection" key="connection">
|
<object class="IBOutletConnection" key="connection">
|
||||||
<string key="label">textField</string>
|
<string key="label">textField</string>
|
||||||
@@ -1126,7 +1134,7 @@
|
|||||||
<nil key="activeLocalization"/>
|
<nil key="activeLocalization"/>
|
||||||
<dictionary class="NSMutableDictionary" key="localizations"/>
|
<dictionary class="NSMutableDictionary" key="localizations"/>
|
||||||
<nil key="sourceID"/>
|
<nil key="sourceID"/>
|
||||||
<int key="maxID">433</int>
|
<int key="maxID">434</int>
|
||||||
</object>
|
</object>
|
||||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||||
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||||
@@ -1158,10 +1166,15 @@
|
|||||||
<string key="className">MPOutlineViewController</string>
|
<string key="className">MPOutlineViewController</string>
|
||||||
<string key="superclassName">MPViewController</string>
|
<string key="superclassName">MPViewController</string>
|
||||||
<dictionary class="NSMutableDictionary" key="outlets">
|
<dictionary class="NSMutableDictionary" key="outlets">
|
||||||
|
<string key="addGroupButton">NSButton</string>
|
||||||
<string key="bottomBar">HNHGradientView</string>
|
<string key="bottomBar">HNHGradientView</string>
|
||||||
<string key="outlineView">NSOutlineView</string>
|
<string key="outlineView">NSOutlineView</string>
|
||||||
</dictionary>
|
</dictionary>
|
||||||
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
|
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||||
|
<object class="IBToOneOutletInfo" key="addGroupButton">
|
||||||
|
<string key="name">addGroupButton</string>
|
||||||
|
<string key="candidateClassName">NSButton</string>
|
||||||
|
</object>
|
||||||
<object class="IBToOneOutletInfo" key="bottomBar">
|
<object class="IBToOneOutletInfo" key="bottomBar">
|
||||||
<string key="name">bottomBar</string>
|
<string key="name">bottomBar</string>
|
||||||
<string key="candidateClassName">HNHGradientView</string>
|
<string key="candidateClassName">HNHGradientView</string>
|
||||||
|
|||||||
Reference in New Issue
Block a user