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