7 Commits

Author SHA1 Message Date
michael starke
c1b47bdb77 Enhanced password input to check and verify
Added repeat password input in settings
New databases without password request on (it's not changed on file until the saved)
2013-07-19 01:39:52 +02:00
michael starke
0e102d3f0f Saving last state of Inspector (last document wins) 2013-07-18 21:23:32 +02:00
michael starke
d4c7d49d6f Fixed issue with window restoration 2013-07-18 21:16:56 +02:00
michael starke
0144e3c21f Bumped Build number 2013-07-18 04:36:45 +02:00
michael starke
dd5eef4e60 Fixed missing delete button on custom fields 2013-07-18 04:29:17 +02:00
michael starke
bfc610a25e Added "reopen last database" featuer
Removed standard open new db on activate
Enabled windows state restoration
Enabled table column state restoration
Menu items should be validated better
2013-07-18 04:21:23 +02:00
michael starke
0986271199 Updated Submodules
Extracted TabelViewDelegates for Attachments and Custom Fields
2013-07-18 02:55:09 +02:00
29 changed files with 1664 additions and 986 deletions

2
HNHUi

Submodule HNHUi updated: a4186af409...c32f87da30

View File

@@ -10,6 +10,7 @@
4C01C23F1764D2980016D5D0 /* KdbEntry+Undo.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C01C23E1764D2980016D5D0 /* KdbEntry+Undo.m */; };
4C01C2421764D8980016D5D0 /* MPContextMenuHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C01C2411764D8980016D5D0 /* MPContextMenuHelper.m */; };
4C01C245176500C40016D5D0 /* HNHLevelIndicatorCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C01C244176500C40016D5D0 /* HNHLevelIndicatorCell.m */; };
4C055E74179620BF00BD2BAB /* NSString+CommandString.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C055E73179620BF00BD2BAB /* NSString+CommandString.m */; };
4C10412C178CDD44001B5239 /* NSDate+Humanized.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C10412B178CDD44001B5239 /* NSDate+Humanized.m */; };
4C16BA6217879A3C002B42BD /* MPPasswordStringFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C16BA6117879A3C002B42BD /* MPPasswordStringFormatter.m */; };
4C18F9AB178E122500890BCE /* Test_Password_1234.kdb in Resources */ = {isa = PBXBuildFile; fileRef = 4C18F9AA178E122500890BCE /* Test_Password_1234.kdb */; };
@@ -137,6 +138,8 @@
4C669B9F16760ED100DD0774 /* RandomStream.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C669B7516760ED100DD0774 /* RandomStream.m */; };
4C669BA016760ED100DD0774 /* Salsa20RandomStream.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C669B7716760ED100DD0774 /* Salsa20RandomStream.m */; };
4C669BA216760ED100DD0774 /* UUID.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C669B7B16760ED100DD0774 /* UUID.m */; };
4C67D33017981A2B00A7BDFC /* HNHTokenField.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C67D32F17981A2B00A7BDFC /* HNHTokenField.m */; };
4C67D33317981ABA00A7BDFC /* HNHTokenFieldCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C67D33217981ABA00A7BDFC /* HNHTokenFieldCell.m */; };
4C69A73A16D589DF00EC1B1A /* HNHGradientView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C69A73916D589DF00EC1B1A /* HNHGradientView.m */; };
4C6D1D25178579570014C5A5 /* 48_FolderTemplate.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 4C6D1D24178579570014C5A5 /* 48_FolderTemplate.pdf */; };
4C6D1D27178586CA0014C5A5 /* 99_AddFolderTemplate.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 4C6D1D26178586CA0014C5A5 /* 99_AddFolderTemplate.pdf */; };
@@ -186,6 +189,8 @@
4CAF62FC1763604000CD7084 /* HNHBadgedTextFieldCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CAF62FB1763604000CD7084 /* HNHBadgedTextFieldCell.m */; };
4CB9339916D3A0DD00A13B5D /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 4CB9339716D3A0DD00A13B5D /* Credits.rtf */; };
4CBA2ABA17074C07006D8139 /* MPSettingsHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CBA2AB917074C07006D8139 /* MPSettingsHelper.m */; };
4CC0D2CE17974A47000B4BDA /* MPCustomFieldTableViewDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CC0D2CD17974A47000B4BDA /* MPCustomFieldTableViewDelegate.m */; };
4CC0D2D117974A5A000B4BDA /* MPAttachmentTableViewDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CC0D2D017974A5A000B4BDA /* MPAttachmentTableViewDelegate.m */; };
4CC1AEBE16D4467C006D2AAB /* KdbTree+MPAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CC1AEBD16D4467C006D2AAB /* KdbTree+MPAdditions.m */; };
4CC299FF176F99E50050C939 /* MPRequestHandlerService.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CC299FE176F99E50050C939 /* MPRequestHandlerService.m */; };
4CC29A02176F9D140050C939 /* MPTestAssociateRequestHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CC29A01176F9D140050C939 /* MPTestAssociateRequestHandler.m */; };
@@ -234,6 +239,8 @@
4C01C2411764D8980016D5D0 /* MPContextMenuHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPContextMenuHelper.m; sourceTree = "<group>"; };
4C01C243176500C40016D5D0 /* HNHLevelIndicatorCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HNHLevelIndicatorCell.h; sourceTree = "<group>"; };
4C01C244176500C40016D5D0 /* HNHLevelIndicatorCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HNHLevelIndicatorCell.m; sourceTree = "<group>"; };
4C055E72179620BF00BD2BAB /* NSString+CommandString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+CommandString.h"; sourceTree = "<group>"; };
4C055E73179620BF00BD2BAB /* NSString+CommandString.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+CommandString.m"; sourceTree = "<group>"; };
4C10412A178CDD44001B5239 /* NSDate+Humanized.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDate+Humanized.h"; sourceTree = "<group>"; };
4C10412B178CDD44001B5239 /* NSDate+Humanized.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDate+Humanized.m"; sourceTree = "<group>"; };
4C16BA6017879A3C002B42BD /* MPPasswordStringFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPPasswordStringFormatter.h; sourceTree = "<group>"; };
@@ -472,6 +479,10 @@
4C669B7716760ED100DD0774 /* Salsa20RandomStream.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Salsa20RandomStream.m; sourceTree = "<group>"; };
4C669B7A16760ED100DD0774 /* UUID.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UUID.h; sourceTree = "<group>"; };
4C669B7B16760ED100DD0774 /* UUID.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UUID.m; sourceTree = "<group>"; };
4C67D32E17981A2B00A7BDFC /* HNHTokenField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HNHTokenField.h; sourceTree = "<group>"; };
4C67D32F17981A2B00A7BDFC /* HNHTokenField.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HNHTokenField.m; sourceTree = "<group>"; };
4C67D33117981ABA00A7BDFC /* HNHTokenFieldCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HNHTokenFieldCell.h; sourceTree = "<group>"; };
4C67D33217981ABA00A7BDFC /* HNHTokenFieldCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HNHTokenFieldCell.m; sourceTree = "<group>"; };
4C69A73816D589DF00EC1B1A /* HNHGradientView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HNHGradientView.h; sourceTree = "<group>"; };
4C69A73916D589DF00EC1B1A /* HNHGradientView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HNHGradientView.m; sourceTree = "<group>"; };
4C6D1D24178579570014C5A5 /* 48_FolderTemplate.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; path = 48_FolderTemplate.pdf; sourceTree = "<group>"; };
@@ -489,7 +500,6 @@
4C76156B1764C0C80015A1A6 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/PasswordInputView.xib; sourceTree = "<group>"; };
4C76156C1764C0CC0015A1A6 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/PasswordInputView.strings; sourceTree = "<group>"; };
4C7615701764C0E80015A1A6 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/InspectorView.xib; sourceTree = "<group>"; };
4C7615721764C4A40015A1A6 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/GeneralSettings.strings; sourceTree = "<group>"; };
4C7615751764C4A40015A1A6 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/PasswordInputView.strings; sourceTree = "<group>"; };
4C7615771764C4A40015A1A6 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = "<group>"; };
4C7615781764C4A50015A1A6 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = de; path = de.lproj/Credits.rtf; sourceTree = "<group>"; };
@@ -545,7 +555,6 @@
4CA0B30D15BCB6FD00654E32 /* MPSettingsTab.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MPSettingsTab.h; sourceTree = "<group>"; };
4CA0E3A5176FAF99004D18CB /* MPDocumentQueryService.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPDocumentQueryService.h; sourceTree = "<group>"; };
4CA0E3A6176FAF99004D18CB /* MPDocumentQueryService.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPDocumentQueryService.m; sourceTree = "<group>"; };
4CA23357176DB8F000F0B6AC /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/GeneralSettings.strings; sourceTree = "<group>"; };
4CA23358176DBFE100F0B6AC /* MPLockDaemon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPLockDaemon.h; sourceTree = "<group>"; };
4CA23359176DBFE100F0B6AC /* MPLockDaemon.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPLockDaemon.m; sourceTree = "<group>"; };
4CAAFDD51787AED60013FCF9 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/MainMenu.strings; sourceTree = "<group>"; };
@@ -568,6 +577,10 @@
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>"; };
4CC0D2CC17974A47000B4BDA /* MPCustomFieldTableViewDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPCustomFieldTableViewDelegate.h; sourceTree = "<group>"; };
4CC0D2CD17974A47000B4BDA /* MPCustomFieldTableViewDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPCustomFieldTableViewDelegate.m; sourceTree = "<group>"; };
4CC0D2CF17974A5A000B4BDA /* MPAttachmentTableViewDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPAttachmentTableViewDelegate.h; sourceTree = "<group>"; };
4CC0D2D017974A5A000B4BDA /* MPAttachmentTableViewDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPAttachmentTableViewDelegate.m; 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>"; };
@@ -582,6 +595,8 @@
4CC6727B1781D0D2006DEDCF /* KdbEntry+MPAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "KdbEntry+MPAdditions.m"; sourceTree = "<group>"; };
4CC7EA1917807E7E0089D4F3 /* HNHRoundendTextFieldCellHelper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HNHRoundendTextFieldCellHelper.h; sourceTree = "<group>"; };
4CC7EA1A17807E7E0089D4F3 /* HNHRoundendTextFieldCellHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HNHRoundendTextFieldCellHelper.m; sourceTree = "<group>"; };
4CCA7EEC1797866F00B0B55E /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/GeneralSettings.strings; sourceTree = "<group>"; };
4CCA7EEE1797867200B0B55E /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/GeneralSettings.strings; sourceTree = "<group>"; };
4CD3ABB2178F71B50073F5C5 /* KPKVersion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KPKVersion.h; sourceTree = "<group>"; };
4CD3ABB3178F71B50073F5C5 /* KPKTree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KPKTree.h; sourceTree = "<group>"; };
4CD3ABB4178F71B50073F5C5 /* KPKTree.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KPKTree.m; sourceTree = "<group>"; };
@@ -955,6 +970,10 @@
4C811C8216ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.m */,
4CE298E91795FC2A00DF7BDB /* MPEntryMenuDelegate.h */,
4CE298EA1795FC2A00DF7BDB /* MPEntryMenuDelegate.m */,
4CC0D2CC17974A47000B4BDA /* MPCustomFieldTableViewDelegate.h */,
4CC0D2CD17974A47000B4BDA /* MPCustomFieldTableViewDelegate.m */,
4CC0D2CF17974A5A000B4BDA /* MPAttachmentTableViewDelegate.h */,
4CC0D2D017974A5A000B4BDA /* MPAttachmentTableViewDelegate.m */,
);
name = Delegates;
sourceTree = "<group>";
@@ -1316,6 +1335,10 @@
4CC3AAB9175F4983003EF01B /* HNHRoundedTextFieldCell.m */,
4C9D6AA717615199001C660C /* HNHRoundedSecureTextFieldCell.h */,
4C9D6AA817615199001C660C /* HNHRoundedSecureTextFieldCell.m */,
4C67D32E17981A2B00A7BDFC /* HNHTokenField.h */,
4C67D32F17981A2B00A7BDFC /* HNHTokenField.m */,
4C67D33117981ABA00A7BDFC /* HNHTokenFieldCell.h */,
4C67D33217981ABA00A7BDFC /* HNHTokenFieldCell.m */,
4C58BD4D176370B100B8178C /* HNHBadgedTextField.h */,
4C58BD4E176370B100B8178C /* HNHBadgedTextField.m */,
4CAF62FA1763604000CD7084 /* HNHBadgedTextFieldCell.h */,
@@ -1358,6 +1381,8 @@
4C8A173C1790AA41008B5C17 /* NSData+Keyfile.m */,
4CDB5C401794AA4F0017667E /* KPKTree+Serializing.h */,
4CDB5C411794AA4F0017667E /* KPKTree+Serializing.m */,
4C055E72179620BF00BD2BAB /* NSString+CommandString.h */,
4C055E73179620BF00BD2BAB /* NSString+CommandString.m */,
);
path = Categories;
sourceTree = "<group>";
@@ -1790,6 +1815,11 @@
4CDB5C421794AA4F0017667E /* KPKTree+Serializing.m in Sources */,
4C5AA591179549A1008ECAD7 /* KPKXmlTreeWriter.m in Sources */,
4CE298EB1795FC2A00DF7BDB /* MPEntryMenuDelegate.m in Sources */,
4C055E74179620BF00BD2BAB /* NSString+CommandString.m in Sources */,
4CC0D2CE17974A47000B4BDA /* MPCustomFieldTableViewDelegate.m in Sources */,
4CC0D2D117974A5A000B4BDA /* MPAttachmentTableViewDelegate.m in Sources */,
4C67D33017981A2B00A7BDFC /* HNHTokenField.m in Sources */,
4C67D33317981ABA00A7BDFC /* HNHTokenFieldCell.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1808,8 +1838,8 @@
isa = PBXVariantGroup;
children = (
4C76155F1764C0590015A1A6 /* Base */,
4C7615721764C4A40015A1A6 /* de */,
4CA23357176DB8F000F0B6AC /* en */,
4CCA7EEC1797866F00B0B55E /* de */,
4CCA7EEE1797867200B0B55E /* en */,
);
name = GeneralSettings.xib;
sourceTree = "<group>";

View File

@@ -48,7 +48,7 @@
<object class="NSButton" id="145041823">
<reference key="NSNextResponder" ref="1005"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{18, 174}, {233, 18}}</string>
<string key="NSFrame">{{18, 177}, {241, 18}}</string>
<reference key="NSSuperview" ref="1005"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="60918609"/>
@@ -56,9 +56,9 @@
<string key="NSHuggingPriority">{250, 252}</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="168279901">
<int key="NSCellFlags">-1543503872</int>
<int key="NSCellFlags">-2080374784</int>
<int key="NSCellFlags2">268435456</int>
<string key="NSContents">Open empty database on activate</string>
<string key="NSContents">Reopen last Database after Launch</string>
<object class="NSFont" key="NSSupport" id="874940307">
<string key="NSName">LucidaGrande</string>
<double key="NSSize">13</double>
@@ -82,34 +82,6 @@
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSButton" id="297534459">
<reference key="NSNextResponder" ref="1005"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{18, 194}, {226, 18}}</string>
<reference key="NSSuperview" ref="1005"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="145041823"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<string key="NSHuggingPriority">{250, 253}</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="197992074">
<int key="NSCellFlags">-1543503872</int>
<int key="NSCellFlags2">268435456</int>
<string key="NSContents">Open empty database on launch</string>
<reference key="NSSupport" ref="874940307"/>
<string key="NSCellIdentifier">_NS:9</string>
<reference key="NSControlView" ref="297534459"/>
<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="NSBox" id="60918609">
<reference key="NSNextResponder" ref="1005"/>
<int key="NSvFlags">12</int>
@@ -121,7 +93,7 @@
<object class="NSTextField" id="958810247">
<reference key="NSNextResponder" ref="731672371"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{15, 96}, {170, 17}}</string>
<string key="NSFrame">{{15, 96}, {124, 17}}</string>
<reference key="NSSuperview" ref="731672371"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="222890410"/>
@@ -158,7 +130,7 @@
<object class="NSPopUpButton" id="222890410">
<reference key="NSNextResponder" ref="731672371"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{237, 92}, {112, 23}}</string>
<string key="NSFrame">{{179, 92}, {170, 23}}</string>
<reference key="NSSuperview" ref="731672371"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="326334884"/>
@@ -200,7 +172,7 @@
<reference ref="855032005"/>
<object class="NSMenuItem" id="303393620">
<reference key="NSMenu" ref="437492746"/>
<string key="NSTitle">10 Seconds</string>
<string key="NSTitle">after 10 Seconds</string>
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
@@ -212,7 +184,7 @@
</object>
<object class="NSMenuItem" id="460415455">
<reference key="NSMenu" ref="437492746"/>
<string key="NSTitle">30 Seconds</string>
<string key="NSTitle">after 30 Seconds</string>
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
@@ -224,7 +196,7 @@
</object>
<object class="NSMenuItem" id="678942088">
<reference key="NSMenu" ref="437492746"/>
<string key="NSTitle">1 Minute</string>
<string key="NSTitle">after 1 Minute</string>
<string key="NSKeyEquiv"/>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
@@ -248,7 +220,7 @@
<object class="NSButton" id="326334884">
<reference key="NSNextResponder" ref="731672371"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{16, 70}, {172, 18}}</string>
<string key="NSFrame">{{31, 72}, {172, 18}}</string>
<reference key="NSSuperview" ref="731672371"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="982397212"/>
@@ -276,7 +248,7 @@
<object class="NSPopUpButton" id="272904029">
<reference key="NSNextResponder" ref="731672371"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{237, 32}, {112, 26}}</string>
<string key="NSFrame">{{179, 33}, {170, 26}}</string>
<reference key="NSSuperview" ref="731672371"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1066302408"/>
@@ -360,7 +332,7 @@
<object class="NSButton" id="1066302408">
<reference key="NSNextResponder" ref="731672371"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{16, 12}, {122, 18}}</string>
<string key="NSFrame">{{31, 12}, {122, 18}}</string>
<reference key="NSSuperview" ref="731672371"/>
<reference key="NSWindow"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
@@ -386,7 +358,7 @@
<object class="NSTextField" id="982397212">
<reference key="NSNextResponder" ref="731672371"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{18, 38}, {98, 17}}</string>
<string key="NSFrame">{{15, 38}, {98, 17}}</string>
<reference key="NSSuperview" ref="731672371"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="272904029"/>
@@ -453,7 +425,7 @@
<string key="NSFrameSize">{400, 230}</string>
<reference key="NSSuperview"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="297534459"/>
<reference key="NSNextKeyView" ref="145041823"/>
<string key="NSClassName">NSView</string>
</object>
</array>
@@ -499,6 +471,14 @@
</object>
<int key="connectionID">810</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">reopenLastDatabase</string>
<reference key="source" ref="1001"/>
<reference key="destination" ref="145041823"/>
</object>
<int key="connectionID">878</int>
</object>
</array>
<object class="IBMutableOrderedSet" key="objectRecords">
<array key="orderedObjects">
@@ -530,6 +510,22 @@
<int key="objectID">1</int>
<reference key="object" ref="1005"/>
<array class="NSMutableArray" key="children">
<object class="IBNSLayoutConstraint" id="505875569">
<reference key="firstItem" ref="60918609"/>
<int key="firstAttribute">3</int>
<int key="relation">0</int>
<reference key="secondItem" ref="1005"/>
<int key="secondAttribute">3</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">74</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="1005"/>
<int key="scoringType">3</int>
<float key="scoringTypeFloat">9</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="213536579">
<reference key="firstItem" ref="1005"/>
<int key="firstAttribute">4</int>
@@ -546,38 +542,6 @@
<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>
<int key="relation">1</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">9</int>
<float key="scoringTypeFloat">40</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="19198291">
<reference key="firstItem" ref="60918609"/>
<int key="firstAttribute">3</int>
<int key="relation">0</int>
<reference key="secondItem" ref="145041823"/>
<int key="secondAttribute">4</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">20</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="1005"/>
<int key="scoringType">9</int>
<float key="scoringTypeFloat">40</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="484547610">
<reference key="firstItem" ref="1005"/>
<int key="firstAttribute">6</int>
@@ -610,56 +574,24 @@
<float key="scoringTypeFloat">40</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="343337820">
<object class="IBNSLayoutConstraint" id="119736576">
<reference key="firstItem" ref="145041823"/>
<int key="firstAttribute">3</int>
<int key="relation">0</int>
<reference key="secondItem" ref="297534459"/>
<int key="secondAttribute">4</int>
<float key="multiplier">1</float>
<object class="IBNSLayoutSymbolicConstant" key="constant">
<double key="value">6</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="1005"/>
<int key="scoringType">9</int>
<float key="scoringTypeFloat">40</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="1065146703">
<reference key="firstItem" ref="145041823"/>
<int key="firstAttribute">5</int>
<int key="relation">0</int>
<reference key="secondItem" ref="1005"/>
<int key="secondAttribute">5</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="799708645">
<reference key="firstItem" ref="297534459"/>
<int key="firstAttribute">3</int>
<int key="relation">0</int>
<reference key="secondItem" ref="1005"/>
<int key="secondAttribute">3</int>
<float key="multiplier">1</float>
<object class="IBNSLayoutSymbolicConstant" key="constant">
<double key="value">20</double>
<object class="IBLayoutConstant" key="constant">
<double key="value">37</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="1005"/>
<int key="scoringType">9</int>
<float key="scoringTypeFloat">40</float>
<int key="scoringType">3</int>
<float key="scoringTypeFloat">9</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="285907299">
<reference key="firstItem" ref="297534459"/>
<object class="IBNSLayoutConstraint" id="1065146703">
<reference key="firstItem" ref="145041823"/>
<int key="firstAttribute">5</int>
<int key="relation">0</int>
<reference key="secondItem" ref="1005"/>
@@ -708,7 +640,6 @@
</object>
<reference ref="60918609"/>
<reference ref="145041823"/>
<reference ref="297534459"/>
</array>
<reference key="parent" ref="0"/>
</object>
@@ -716,7 +647,23 @@
<int key="objectID">465</int>
<reference key="object" ref="60918609"/>
<array class="NSMutableArray" key="children">
<object class="IBNSLayoutConstraint" id="370071994">
<object class="IBNSLayoutConstraint" id="771059501">
<reference key="firstItem" ref="60918609"/>
<int key="firstAttribute">6</int>
<int key="relation">0</int>
<reference key="secondItem" ref="272904029"/>
<int key="secondAttribute">6</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">16</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="920770187">
<reference key="firstItem" ref="60918609"/>
<int key="firstAttribute">4</int>
<int key="relation">0</int>
@@ -724,7 +671,7 @@
<int key="secondAttribute">4</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">32</double>
<double key="value">33</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="60918609"/>
@@ -733,10 +680,10 @@
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="459585909">
<reference key="firstItem" ref="272904029"/>
<reference key="firstItem" ref="222890410"/>
<int key="firstAttribute">5</int>
<int key="relation">0</int>
<reference key="secondItem" ref="222890410"/>
<reference key="secondItem" ref="272904029"/>
<int key="secondAttribute">5</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
@@ -748,11 +695,11 @@
<float key="scoringTypeFloat">24</float>
<int key="contentType">2</int>
</object>
<object class="IBNSLayoutConstraint" id="771059501">
<object class="IBNSLayoutConstraint" id="437525640">
<reference key="firstItem" ref="60918609"/>
<int key="firstAttribute">6</int>
<int key="relation">0</int>
<reference key="secondItem" ref="272904029"/>
<reference key="secondItem" ref="222890410"/>
<int key="secondAttribute">6</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
@@ -780,37 +727,21 @@
<float key="scoringTypeFloat">24</float>
<int key="contentType">2</int>
</object>
<object class="IBNSLayoutConstraint" id="811582841">
<reference key="firstItem" ref="222890410"/>
<object class="IBNSLayoutConstraint" id="1043261939">
<reference key="firstItem" ref="1066302408"/>
<int key="firstAttribute">5</int>
<int key="relation">0</int>
<reference key="secondItem" ref="958810247"/>
<int key="secondAttribute">6</int>
<reference key="secondItem" ref="326334884"/>
<int key="secondAttribute">5</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">57</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>
</object>
<object class="IBNSLayoutConstraint" id="520285939">
<reference key="firstItem" ref="60918609"/>
<int key="firstAttribute">6</int>
<int key="relation">0</int>
<reference key="secondItem" ref="222890410"/>
<int key="secondAttribute">6</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">16</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="806133159">
<reference key="firstItem" ref="60918609"/>
@@ -845,7 +776,7 @@
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="476689522">
<reference key="firstItem" ref="1066302408"/>
<reference key="firstItem" ref="982397212"/>
<int key="firstAttribute">5</int>
<int key="relation">0</int>
<reference key="secondItem" ref="60918609"/>
@@ -860,12 +791,12 @@
<float key="scoringTypeFloat">29</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="287888619">
<object class="IBNSLayoutConstraint" id="1037442692">
<reference key="firstItem" ref="982397212"/>
<int key="firstAttribute">11</int>
<int key="firstAttribute">10</int>
<int key="relation">0</int>
<reference key="secondItem" ref="272904029"/>
<int key="secondAttribute">11</int>
<int key="secondAttribute">10</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">0.0</double>
@@ -876,15 +807,15 @@
<float key="scoringTypeFloat">24</float>
<int key="contentType">2</int>
</object>
<object class="IBNSLayoutConstraint" id="561950720">
<reference key="firstItem" ref="982397212"/>
<object class="IBNSLayoutConstraint" id="236685633">
<reference key="firstItem" ref="326334884"/>
<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">19</double>
<double key="value">31</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="60918609"/>
@@ -892,36 +823,20 @@
<float key="scoringTypeFloat">9</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="376978074">
<object class="IBNSLayoutConstraint" id="933426524">
<reference key="firstItem" ref="326334884"/>
<int key="firstAttribute">3</int>
<int key="relation">0</int>
<reference key="secondItem" ref="958810247"/>
<int key="secondAttribute">4</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">10</double>
<object class="IBNSLayoutSymbolicConstant" key="constant">
<double key="value">8</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="467548005">
<reference key="firstItem" ref="326334884"/>
<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>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="60918609"/>
<int key="scoringType">8</int>
<float key="scoringTypeFloat">29</float>
<int key="scoringType">6</int>
<float key="scoringTypeFloat">24</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="432174165">
@@ -973,11 +888,11 @@
<int key="contentType">3</int>
</object>
<reference ref="958810247"/>
<reference ref="326334884"/>
<reference ref="982397212"/>
<reference ref="272904029"/>
<reference ref="326334884"/>
<reference ref="1066302408"/>
<reference ref="222890410"/>
<reference ref="982397212"/>
</array>
<reference key="parent" ref="1005"/>
</object>
@@ -1020,7 +935,7 @@
<reference key="object" ref="222890410"/>
<array class="NSMutableArray" key="children">
<reference ref="934584997"/>
<object class="IBNSLayoutConstraint" id="943587685">
<object class="IBNSLayoutConstraint" id="777025190">
<reference key="firstItem" ref="222890410"/>
<int key="firstAttribute">7</int>
<int key="relation">0</int>
@@ -1028,7 +943,7 @@
<int key="secondAttribute">0</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">107</double>
<double key="value">165</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="222890410"/>
@@ -1112,34 +1027,6 @@
<reference key="object" ref="891799107"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">506</int>
<reference key="object" ref="520285939"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">509</int>
<reference key="object" ref="811582841"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">526</int>
<reference key="object" ref="297534459"/>
<array class="NSMutableArray" key="children">
<reference ref="197992074"/>
</array>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">527</int>
<reference key="object" ref="197992074"/>
<reference key="parent" ref="297534459"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">528</int>
<reference key="object" ref="285907299"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">530</int>
<reference key="object" ref="145041823"/>
@@ -1158,16 +1045,6 @@
<reference key="object" ref="1065146703"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">535</int>
<reference key="object" ref="343337820"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">536</int>
<reference key="object" ref="799708645"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">584</int>
<reference key="object" ref="272904029"/>
@@ -1210,16 +1087,6 @@
<reference key="object" ref="328220222"/>
<reference key="parent" ref="552398563"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">660</int>
<reference key="object" ref="467548005"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">664</int>
<reference key="object" ref="943587685"/>
<reference key="parent" ref="222890410"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">630</int>
<reference key="object" ref="1066302408"/>
@@ -1233,26 +1100,6 @@
<reference key="object" ref="252113219"/>
<reference key="parent" ref="1066302408"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">706</int>
<reference key="object" ref="771059501"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">708</int>
<reference key="object" ref="459585909"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">718</int>
<reference key="object" ref="476689522"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">759</int>
<reference key="object" ref="376978074"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">773</int>
<reference key="object" ref="871797750"/>
@@ -1288,11 +1135,6 @@
<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"/>
@@ -1317,40 +1159,80 @@
<reference key="parent" ref="982397212"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">807</int>
<reference key="object" ref="561950720"/>
<int key="objectID">788</int>
<reference key="object" ref="772519144"/>
<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>
<object class="IBObjectRecord">
<int key="objectID">537</int>
<reference key="object" ref="19198291"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">721</int>
<reference key="object" ref="528706521"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">800</int>
<int key="objectID">840</int>
<reference key="object" ref="213536579"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">799</int>
<int key="objectID">845</int>
<reference key="object" ref="119736576"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">846</int>
<reference key="object" ref="505875569"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">847</int>
<reference key="object" ref="250630005"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">788</int>
<reference key="object" ref="772519144"/>
<int key="objectID">861</int>
<reference key="object" ref="1037442692"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">862</int>
<reference key="object" ref="920770187"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">867</int>
<reference key="object" ref="933426524"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">868</int>
<reference key="object" ref="1043261939"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">870</int>
<reference key="object" ref="476689522"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">871</int>
<reference key="object" ref="236685633"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">873</int>
<reference key="object" ref="771059501"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">875</int>
<reference key="object" ref="437525640"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">876</int>
<reference key="object" ref="459585909"/>
<reference key="parent" ref="60918609"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">877</int>
<reference key="object" ref="777025190"/>
<reference key="parent" ref="222890410"/>
</object>
</array>
</object>
<dictionary class="NSMutableDictionary" key="flattenedProperties">
@@ -1360,21 +1242,18 @@
<array key="1.IBNSViewMetadataConstraints">
<reference ref="1063893674"/>
<reference ref="250630005"/>
<reference ref="285907299"/>
<reference ref="799708645"/>
<reference ref="1065146703"/>
<reference ref="343337820"/>
<reference ref="119736576"/>
<reference ref="989429017"/>
<reference ref="484547610"/>
<reference ref="19198291"/>
<reference ref="528706521"/>
<reference ref="213536579"/>
<reference ref="505875569"/>
</array>
<boolean value="NO" key="1.IBNSViewMetadataLastInspectedTranslatesAutoresizingMaskIntoConstraints"/>
<boolean value="NO" key="1.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array key="419.IBNSViewMetadataConstraints">
<reference ref="943587685"/>
<reference ref="777025190"/>
</array>
<boolean value="NO" key="419.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="419.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -1400,38 +1279,28 @@
<reference ref="891799107"/>
<reference ref="1014678196"/>
<reference ref="432174165"/>
<reference ref="467548005"/>
<reference ref="376978074"/>
<reference ref="561950720"/>
<reference ref="287888619"/>
<reference ref="933426524"/>
<reference ref="236685633"/>
<reference ref="1037442692"/>
<reference ref="476689522"/>
<reference ref="772519144"/>
<reference ref="806133159"/>
<reference ref="520285939"/>
<reference ref="811582841"/>
<reference ref="1043261939"/>
<reference ref="311160635"/>
<reference ref="771059501"/>
<reference ref="437525640"/>
<reference ref="459585909"/>
<reference ref="370071994"/>
<reference ref="920770187"/>
<reference ref="771059501"/>
</array>
<boolean value="NO" key="465.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="465.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="475.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="499.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="506.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="509.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="525.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="526.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="526.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="527.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="528.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="530.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="530.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="531.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="532.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="535.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="536.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="537.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="584.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="584.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="585.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -1442,36 +1311,38 @@
<boolean value="NO" key="630.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="630.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="631.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="660.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="664.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="706.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="708.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="759.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>
<string key="789.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="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>
<string key="840.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="845.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="846.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="847.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="861.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="862.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="867.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="868.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="870.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="871.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="873.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="875.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="876.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="877.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">814</int>
<int key="maxID">878</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
@@ -1483,6 +1354,7 @@
<string key="clearPasteboardTimeoutPopup">NSPopUpButton</string>
<string key="idleTimeOutPopup">NSPopUpButton</string>
<string key="lockOnSleepCheckButton">NSButton</string>
<string key="reopenLastDatabase">NSButton</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
<object class="IBToOneOutletInfo" key="clearPasteboardOnQuitCheckButton">
@@ -1501,6 +1373,10 @@
<string key="name">lockOnSleepCheckButton</string>
<string key="candidateClassName">NSButton</string>
</object>
<object class="IBToOneOutletInfo" key="reopenLastDatabase">
<string key="name">reopenLastDatabase</string>
<string key="candidateClassName">NSButton</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>

View File

@@ -133,65 +133,11 @@
<object class="NSCustomView" id="816254670">
<reference key="NSNextResponder" ref="87082330"/>
<int key="NSvFlags">268</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSButton" id="277685969">
<reference key="NSNextResponder" ref="816254670"/>
<int key="NSvFlags">-2147483380</int>
<string key="NSFrame">{{184, 5}, {45, 19}}</string>
<reference key="NSSuperview" ref="816254670"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="442762067"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="740692320">
<int key="NSCellFlags">-2080374784</int>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Done</string>
<object class="NSFont" key="NSSupport" id="323604925">
<string key="NSName">LucidaGrande</string>
<double key="NSSize">12</double>
<int key="NSfFlags">16</int>
</object>
<string key="NSCellIdentifier">_NS:9</string>
<reference key="NSControlView" ref="277685969"/>
<int key="NSButtonFlags">-2038153216</int>
<int key="NSButtonFlags2">164</int>
<string key="NSAlternateContents"/>
<string key="NSKeyEquivalent"/>
<int key="NSPeriodicDelay">400</int>
<int key="NSPeriodicInterval">75</int>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSButton" id="442762067">
<reference key="NSNextResponder" ref="816254670"/>
<int key="NSvFlags">-2147483380</int>
<string key="NSFrame">{{237, 5}, {36, 19}}</string>
<reference key="NSSuperview" ref="816254670"/>
<reference key="NSWindow"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="669709526">
<int key="NSCellFlags">-2080374784</int>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Edit</string>
<reference key="NSSupport" ref="323604925"/>
<string key="NSCellIdentifier">_NS:9</string>
<reference key="NSControlView" ref="442762067"/>
<int key="NSButtonFlags">-2038153216</int>
<int key="NSButtonFlags2">164</int>
<string key="NSAlternateContents"/>
<string key="NSKeyEquivalent"/>
<int key="NSPeriodicDelay">400</int>
<int key="NSPeriodicInterval">75</int>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
</array>
<array class="NSMutableArray" key="NSSubviews"/>
<string key="NSFrameSize">{293, 30}</string>
<reference key="NSSuperview" ref="87082330"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="277685969"/>
<reference key="NSNextKeyView"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<string key="NSClassName">HNHGradientView</string>
</object>
@@ -256,13 +202,13 @@
<string key="NSFrame">{{0, 31}, {293, 399}}</string>
<reference key="NSSuperview" ref="87082330"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="726109125"/>
<reference key="NSNextKeyView" ref="177600245"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<array class="NSMutableArray" key="NSTabViewItems">
<object class="NSTabViewItem" id="1002013291">
<string key="NSIdentifier">1</string>
<object class="NSView" key="NSView" id="726109125">
<reference key="NSNextResponder" ref="166081160"/>
<nil key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextField" id="734056912">
@@ -270,7 +216,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 365}, {35, 14}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="909883915"/>
<string key="NSReuseIdentifierKey">_NS:1535</string>
<bool key="NSEnabled">YES</bool>
@@ -303,7 +248,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 335}, {253, 22}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="328122838"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
@@ -338,7 +282,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 313}, {58, 14}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="800408621"/>
<string key="NSReuseIdentifierKey">_NS:1535</string>
<bool key="NSEnabled">YES</bool>
@@ -359,7 +302,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 283}, {253, 22}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="428053603"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
@@ -381,7 +323,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 231}, {253, 22}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="279643156"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
@@ -403,7 +344,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 261}, {25, 14}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="484293743"/>
<string key="NSReuseIdentifierKey">_NS:1535</string>
<bool key="NSEnabled">YES</bool>
@@ -424,7 +364,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 209}, {58, 14}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="685310174"/>
<string key="NSReuseIdentifierKey">_NS:1535</string>
<bool key="NSEnabled">YES</bool>
@@ -445,7 +384,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 152}, {253, 19}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="13391205"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<string key="NSHuggingPriority">{250, 750}</string>
@@ -454,7 +392,11 @@
<int key="NSCellFlags">-2080374784</int>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Generate</string>
<reference key="NSSupport" ref="323604925"/>
<object class="NSFont" key="NSSupport" id="323604925">
<string key="NSName">LucidaGrande</string>
<double key="NSSize">12</double>
<int key="NSfFlags">16</int>
</object>
<string key="NSCellIdentifier">_NS:9</string>
<reference key="NSControlView" ref="172507372"/>
<int key="NSButtonFlags">-2038153216</int>
@@ -471,7 +413,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 35}, {259, 11}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="212627618"/>
<string key="NSReuseIdentifierKey">_NS:1535</string>
<bool key="NSEnabled">YES</bool>
@@ -496,8 +437,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 16}, {259, 11}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="894571713"/>
<reference key="NSNextKeyView" ref="816254670"/>
<string key="NSReuseIdentifierKey">_NS:1535</string>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="72260846">
@@ -517,7 +457,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 179}, {214, 22}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1035439471"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
@@ -542,7 +481,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{242, 177}, {31, 25}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="172507372"/>
<string key="NSReuseIdentifierKey">_NS:22</string>
<bool key="NSEnabled">YES</bool>
@@ -568,8 +506,6 @@
</object>
</array>
<string key="NSFrameSize">{293, 399}</string>
<reference key="NSSuperview" ref="166081160"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="734056912"/>
<string key="NSReuseIdentifierKey">_NS:11</string>
</object>
@@ -596,7 +532,7 @@
<int key="NSvFlags">2322</int>
<string key="NSFrameSize">{251, 332}</string>
<reference key="NSSuperview" ref="454120122"/>
<reference key="NSNextKeyView" ref="942541726"/>
<reference key="NSNextKeyView" ref="657519150"/>
<string key="NSReuseIdentifierKey">_NS:13</string>
<object class="NSTextContainer" key="NSTextContainer" id="77792568">
<object class="NSLayoutManager" key="NSLayoutManager">
@@ -688,7 +624,7 @@
<int key="NSvFlags">256</int>
<string key="NSFrame">{{236, 1}, {16, 332}}</string>
<reference key="NSSuperview" ref="850153963"/>
<reference key="NSNextKeyView" ref="894571713"/>
<reference key="NSNextKeyView" ref="816254670"/>
<string key="NSReuseIdentifierKey">_NS:83</string>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<reference key="NSTarget" ref="850153963"/>
@@ -713,7 +649,7 @@
</array>
<string key="NSFrame">{{20, 20}, {253, 334}}</string>
<reference key="NSSuperview" ref="13134025"/>
<reference key="NSNextKeyView" ref="657519150"/>
<reference key="NSNextKeyView" ref="454120122"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<int key="NSsFlags">133138</int>
<reference key="NSVScroller" ref="942541726"/>
@@ -926,7 +862,6 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{1, 147}, {52, 16}}</string>
<reference key="NSSuperview" ref="994354248"/>
<reference key="NSNextKeyView" ref="894571713"/>
<string key="NSReuseIdentifierKey">_NS:60</string>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
<int key="NSsFlags">1</int>
@@ -958,7 +893,7 @@
</object>
<object class="NSTabViewItem" id="800410412">
<object class="NSView" key="NSView" id="177600245">
<nil key="NSNextResponder"/>
<reference key="NSNextResponder" ref="166081160"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSButton" id="966066653">
@@ -966,6 +901,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{241, 362}, {32, 19}}</string>
<reference key="NSSuperview" ref="177600245"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="892620201"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
@@ -991,6 +927,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 365}, {80, 14}}</string>
<reference key="NSSuperview" ref="177600245"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="966066653"/>
<string key="NSReuseIdentifierKey">_NS:1535</string>
<bool key="NSEnabled">YES</bool>
@@ -1020,6 +957,7 @@
<array class="NSMutableArray" key="NSSubviews"/>
<string key="NSFrameSize">{259, 333}</string>
<reference key="NSSuperview" ref="236190992"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="291769955"/>
<string key="NSReuseIdentifierKey">_NS:13</string>
<bool key="NSEnabled">YES</bool>
@@ -1082,6 +1020,7 @@
</array>
<string key="NSFrame">{{1, 1}, {259, 333}}</string>
<reference key="NSSuperview" ref="892620201"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="441697535"/>
<string key="NSReuseIdentifierKey">_NS:11</string>
<reference key="NSDocView" ref="441697535"/>
@@ -1093,6 +1032,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{224, 17}, {15, 102}}</string>
<reference key="NSSuperview" ref="892620201"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1045948787"/>
<string key="NSReuseIdentifierKey">_NS:58</string>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
@@ -1105,6 +1045,7 @@
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{1, 119}, {223, 15}}</string>
<reference key="NSSuperview" ref="892620201"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="894571713"/>
<string key="NSReuseIdentifierKey">_NS:60</string>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
@@ -1116,6 +1057,7 @@
</array>
<string key="NSFrame">{{16, 20}, {261, 335}}</string>
<reference key="NSSuperview" ref="177600245"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="236190992"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<int key="NSsFlags">133681</int>
@@ -1129,6 +1071,8 @@
</object>
</array>
<string key="NSFrameSize">{293, 399}</string>
<reference key="NSSuperview" ref="166081160"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="40836012"/>
</object>
<string key="NSLabel">Fields</string>
@@ -1136,13 +1080,13 @@
<reference key="NSTabView" ref="166081160"/>
</object>
</array>
<reference key="NSSelectedTabViewItem" ref="1002013291"/>
<reference key="NSSelectedTabViewItem" ref="800410412"/>
<reference key="NSFont" ref="308723166"/>
<int key="NSTvFlags">6</int>
<bool key="NSAllowTruncatedLabels">YES</bool>
<bool key="NSDrawsBackground">YES</bool>
<array class="NSMutableArray" key="NSSubviews">
<reference ref="726109125"/>
<reference ref="177600245"/>
</array>
</object>
</array>
@@ -1463,7 +1407,7 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{223, 11}, {32, 19}}</string>
<reference key="NSSuperview" ref="291769955"/>
<reference key="NSNextKeyView" ref="101606984"/>
<reference key="NSNextKeyView" ref="511009648"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="26197670">
@@ -1653,6 +1597,72 @@
</object>
<int key="connectionID">2260</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">valueTextField</string>
<object class="NSTableCellView" key="source" id="511009648">
<nil key="NSNextResponder"/>
<int key="NSvFlags">274</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextField" id="781002733">
<reference key="NSNextResponder" ref="511009648"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{3, 10}, {250, 22}}</string>
<reference key="NSSuperview" ref="511009648"/>
<reference key="NSNextKeyView" ref="101606984"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="991080261">
<int key="NSCellFlags">-1805647871</int>
<int key="NSCellFlags2">272629760</int>
<string key="NSContents"/>
<reference key="NSSupport" ref="308723166"/>
<string key="NSPlaceholderString">Value</string>
<string key="NSCellIdentifier">_NS:9</string>
<reference key="NSControlView" ref="781002733"/>
<bool key="NSDrawsBackground">YES</bool>
<reference key="NSBackgroundColor" ref="955209345"/>
<reference key="NSTextColor" ref="412903852"/>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSTextField" id="632623009">
<reference key="NSNextResponder" ref="511009648"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{0, 40}, {258, 14}}</string>
<reference key="NSSuperview" ref="511009648"/>
<reference key="NSNextKeyView" ref="781002733"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="304318757">
<int key="NSCellFlags">-1808793535</int>
<int key="NSCellFlags2">272761856</int>
<string key="NSContents"/>
<reference key="NSSupport" ref="26"/>
<string key="NSPlaceholderString">Title</string>
<string key="NSCellIdentifier">_NS:9</string>
<reference key="NSControlView" ref="632623009"/>
<reference key="NSBackgroundColor" ref="955209345"/>
<reference key="NSTextColor" ref="1062890562"/>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
</array>
<string key="NSFrame">{{1, 57}, {256, 54}}</string>
<reference key="NSNextKeyView" ref="632623009"/>
</object>
<reference key="destination" ref="781002733"/>
</object>
<int key="connectionID">2365</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">labelTextField</string>
<reference key="source" ref="511009648"/>
<reference key="destination" ref="632623009"/>
</object>
<int key="connectionID">2366</int>
</object>
</array>
<object class="IBMutableOrderedSet" key="objectRecords">
<array key="orderedObjects">
@@ -2003,70 +2013,6 @@
<int key="objectID">662</int>
<reference key="object" ref="816254670"/>
<array class="NSMutableArray" key="children">
<object class="IBNSLayoutConstraint" id="34368549">
<reference key="firstItem" ref="442762067"/>
<int key="firstAttribute">5</int>
<int key="relation">0</int>
<reference key="secondItem" ref="277685969"/>
<int key="secondAttribute">6</int>
<float key="multiplier">1</float>
<object class="IBNSLayoutSymbolicConstant" key="constant">
<double key="value">8</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="816254670"/>
<int key="scoringType">6</int>
<float key="scoringTypeFloat">24</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="752675649">
<reference key="firstItem" ref="816254670"/>
<int key="firstAttribute">6</int>
<int key="relation">0</int>
<reference key="secondItem" ref="442762067"/>
<int key="secondAttribute">6</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="816254670"/>
<int key="scoringType">8</int>
<float key="scoringTypeFloat">29</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="824671915">
<reference key="firstItem" ref="277685969"/>
<int key="firstAttribute">11</int>
<int key="relation">0</int>
<reference key="secondItem" ref="442762067"/>
<int key="secondAttribute">11</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">0.0</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="816254670"/>
<int key="scoringType">6</int>
<float key="scoringTypeFloat">24</float>
<int key="contentType">2</int>
</object>
<object class="IBNSLayoutConstraint" id="1053370990">
<reference key="firstItem" ref="277685969"/>
<int key="firstAttribute">10</int>
<int key="relation">0</int>
<reference key="secondItem" ref="816254670"/>
<int key="secondAttribute">10</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">0.0</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="816254670"/>
<int key="scoringType">5</int>
<float key="scoringTypeFloat">22</float>
<int key="contentType">2</int>
</object>
<object class="IBNSLayoutConstraint" id="574545128">
<reference key="firstItem" ref="816254670"/>
<int key="firstAttribute">8</int>
@@ -2083,8 +2029,6 @@
<float key="scoringTypeFloat">40</float>
<int key="contentType">1</int>
</object>
<reference ref="442762067"/>
<reference ref="277685969"/>
</array>
<reference key="parent" ref="87082330"/>
</object>
@@ -3841,6 +3785,7 @@
<array class="NSMutableArray" key="children">
<reference ref="559416629"/>
<reference ref="291769955"/>
<reference ref="511009648"/>
</array>
<reference key="parent" ref="441697535"/>
</object>
@@ -4679,57 +4624,256 @@
<reference key="object" ref="849686715"/>
<reference key="parent" ref="726109125"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2313</int>
<reference key="object" ref="442762067"/>
<array class="NSMutableArray" key="children">
<reference ref="669709526"/>
</array>
<reference key="parent" ref="816254670"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2314</int>
<reference key="object" ref="669709526"/>
<reference key="parent" ref="442762067"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2315</int>
<reference key="object" ref="752675649"/>
<reference key="parent" ref="816254670"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2317</int>
<reference key="object" ref="277685969"/>
<array class="NSMutableArray" key="children">
<reference ref="740692320"/>
</array>
<reference key="parent" ref="816254670"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2318</int>
<reference key="object" ref="740692320"/>
<reference key="parent" ref="277685969"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2319</int>
<reference key="object" ref="34368549"/>
<reference key="parent" ref="816254670"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2320</int>
<reference key="object" ref="1053370990"/>
<reference key="parent" ref="816254670"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2321</int>
<reference key="object" ref="824671915"/>
<reference key="parent" ref="816254670"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2322</int>
<reference key="object" ref="775474818"/>
<reference key="parent" ref="726109125"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2345</int>
<reference key="object" ref="511009648"/>
<array class="NSMutableArray" key="children">
<reference ref="781002733"/>
<reference ref="632623009"/>
<object class="IBNSLayoutConstraint" id="346165127">
<reference key="firstItem" ref="511009648"/>
<int key="firstAttribute">6</int>
<int key="relation">0</int>
<reference key="secondItem" ref="781002733"/>
<int key="secondAttribute">6</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">3</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="511009648"/>
<int key="scoringType">8</int>
<float key="scoringTypeFloat">29</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="590616446">
<reference key="firstItem" ref="511009648"/>
<int key="firstAttribute">4</int>
<int key="relation">0</int>
<reference key="secondItem" ref="781002733"/>
<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="511009648"/>
<int key="scoringType">9</int>
<float key="scoringTypeFloat">40</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="179229956">
<reference key="firstItem" ref="781002733"/>
<int key="firstAttribute">3</int>
<int key="relation">0</int>
<reference key="secondItem" ref="632623009"/>
<int key="secondAttribute">4</int>
<float key="multiplier">1</float>
<object class="IBNSLayoutSymbolicConstant" key="constant">
<double key="value">8</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="511009648"/>
<int key="scoringType">9</int>
<float key="scoringTypeFloat">40</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="302253341">
<reference key="firstItem" ref="781002733"/>
<int key="firstAttribute">5</int>
<int key="relation">0</int>
<reference key="secondItem" ref="511009648"/>
<int key="secondAttribute">5</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">3</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="511009648"/>
<int key="scoringType">9</int>
<float key="scoringTypeFloat">40</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="901474527">
<reference key="firstItem" ref="632623009"/>
<int key="firstAttribute">3</int>
<int key="relation">0</int>
<reference key="secondItem" ref="511009648"/>
<int key="secondAttribute">3</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">0.0</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="511009648"/>
<int key="scoringType">9</int>
<float key="scoringTypeFloat">40</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="283957064">
<reference key="firstItem" ref="632623009"/>
<int key="firstAttribute">5</int>
<int key="relation">0</int>
<reference key="secondItem" ref="511009648"/>
<int key="secondAttribute">5</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">3</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="511009648"/>
<int key="scoringType">8</int>
<float key="scoringTypeFloat">29</float>
<int key="contentType">3</int>
</object>
</array>
<reference key="parent" ref="330991171"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2347</int>
<reference key="object" ref="781002733"/>
<array class="NSMutableArray" key="children">
<object class="IBNSLayoutConstraint" id="796932488">
<reference key="firstItem" ref="781002733"/>
<int key="firstAttribute">7</int>
<int key="relation">1</int>
<nil key="secondItem"/>
<int key="secondAttribute">0</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">80</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="781002733"/>
<int key="scoringType">9</int>
<float key="scoringTypeFloat">40</float>
<int key="contentType">1</int>
</object>
<object class="IBNSLayoutConstraint" id="893684750">
<reference key="firstItem" ref="781002733"/>
<int key="firstAttribute">8</int>
<int key="relation">1</int>
<nil key="secondItem"/>
<int key="secondAttribute">0</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">22</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="781002733"/>
<int key="scoringType">9</int>
<float key="scoringTypeFloat">40</float>
<int key="contentType">1</int>
</object>
<reference ref="991080261"/>
</array>
<reference key="parent" ref="511009648"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2348</int>
<reference key="object" ref="632623009"/>
<array class="NSMutableArray" key="children">
<object class="IBNSLayoutConstraint" id="680263316">
<reference key="firstItem" ref="632623009"/>
<int key="firstAttribute">7</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">252</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="632623009"/>
<int key="scoringType">3</int>
<float key="scoringTypeFloat">9</float>
<int key="contentType">1</int>
</object>
<object class="IBNSLayoutConstraint" id="867937555">
<reference key="firstItem" ref="632623009"/>
<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">14</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="632623009"/>
<int key="scoringType">9</int>
<float key="scoringTypeFloat">40</float>
<int key="contentType">1</int>
</object>
<reference ref="304318757"/>
</array>
<reference key="parent" ref="511009648"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2349</int>
<reference key="object" ref="283957064"/>
<reference key="parent" ref="511009648"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2351</int>
<reference key="object" ref="901474527"/>
<reference key="parent" ref="511009648"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2352</int>
<reference key="object" ref="302253341"/>
<reference key="parent" ref="511009648"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2353</int>
<reference key="object" ref="179229956"/>
<reference key="parent" ref="511009648"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2354</int>
<reference key="object" ref="590616446"/>
<reference key="parent" ref="511009648"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2358</int>
<reference key="object" ref="867937555"/>
<reference key="parent" ref="632623009"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2359</int>
<reference key="object" ref="304318757"/>
<reference key="parent" ref="632623009"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2360</int>
<reference key="object" ref="893684750"/>
<reference key="parent" ref="781002733"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2361</int>
<reference key="object" ref="796932488"/>
<reference key="parent" ref="781002733"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2362</int>
<reference key="object" ref="991080261"/>
<reference key="parent" ref="781002733"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2369</int>
<reference key="object" ref="680263316"/>
<reference key="parent" ref="632623009"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2370</int>
<reference key="object" ref="346165127"/>
<reference key="parent" ref="511009648"/>
</object>
</array>
</object>
<dictionary class="NSMutableDictionary" key="flattenedProperties">
@@ -4786,7 +4930,7 @@
<reference ref="171913043"/>
</array>
<string key="1396.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array key="1397.IBNSViewMetadataConstraints">
<array class="NSMutableArray" key="1397.IBNSViewMetadataConstraints">
<reference ref="866470549"/>
<reference ref="496215318"/>
<reference ref="644631459"/>
@@ -4975,6 +5119,7 @@
<boolean value="YES" key="2014.isInViewBasedMode"/>
<array key="2014.prototypeCellViews">
<reference ref="291769955"/>
<reference ref="511009648"/>
</array>
<string key="2017.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2020.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -4994,6 +5139,7 @@
<reference ref="243564120"/>
</array>
<string key="2024.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2024.userInterfaceItemIdentifier">SelectedCell</string>
<array key="2042.IBNSViewMetadataConstraints">
<reference ref="788011316"/>
<reference ref="268050676"/>
@@ -5107,17 +5253,43 @@
<string key="2275.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2276.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2278.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="2313.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="2313.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2314.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2315.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="2317.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="2317.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2318.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2319.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2320.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2321.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2322.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2345.CustomClassName">MPCustomFieldTableCellView</string>
<array key="2345.IBNSViewMetadataConstraints">
<reference ref="283957064"/>
<reference ref="901474527"/>
<reference ref="302253341"/>
<reference ref="179229956"/>
<reference ref="590616446"/>
<reference ref="346165127"/>
</array>
<string key="2345.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2345.userInterfaceItemIdentifier">NormalCell</string>
<array class="NSMutableArray" key="2347.IBNSViewMetadataConstraints">
<reference ref="893684750"/>
<reference ref="796932488"/>
</array>
<boolean value="NO" key="2347.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="2347.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array key="2348.IBNSViewMetadataConstraints">
<reference ref="867937555"/>
<reference ref="680263316"/>
</array>
<boolean value="NO" key="2348.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="2348.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2349.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2351.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2352.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2353.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2354.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2358.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2359.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2360.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2361.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2362.CustomClassName">HNHRoundedTextFieldCell</string>
<string key="2362.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2369.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="2370.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array key="455.IBNSViewMetadataConstraints">
<reference ref="222939184"/>
<reference ref="1058743908"/>
@@ -5152,10 +5324,6 @@
<string key="651.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array class="NSMutableArray" key="662.IBNSViewMetadataConstraints">
<reference ref="574545128"/>
<reference ref="1053370990"/>
<reference ref="824671915"/>
<reference ref="752675649"/>
<reference ref="34368549"/>
</array>
<boolean value="NO" key="662.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="662.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -5168,7 +5336,7 @@
<nil key="activeLocalization"/>
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
<int key="maxID">2322</int>
<int key="maxID">2370</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<array class="NSMutableArray" key="referencedPartialClassDescriptions">

View File

@@ -286,7 +286,7 @@
<object class="NSButton" id="769513826">
<reference key="NSNextResponder" ref="1005"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{281, 65}, {83, 32}}</string>
<string key="NSFrame">{{320, 65}, {83, 32}}</string>
<reference key="NSSuperview" ref="1005"/>
<reference key="NSWindow"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
@@ -526,6 +526,22 @@
<float key="scoringTypeFloat">24</float>
<int key="contentType">2</int>
</object>
<object class="IBNSLayoutConstraint" id="875982455">
<reference key="firstItem" ref="769513826"/>
<int key="firstAttribute">6</int>
<int key="relation">0</int>
<reference key="secondItem" ref="594061862"/>
<int key="secondAttribute">6</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">0.0</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="1005"/>
<int key="scoringType">6</int>
<float key="scoringTypeFloat">24</float>
<int key="contentType">2</int>
</object>
<object class="IBNSLayoutConstraint" id="641552480">
<reference key="firstItem" ref="769513826"/>
<int key="firstAttribute">3</int>
@@ -542,22 +558,6 @@
<float key="scoringTypeFloat">24</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="875982455">
<reference key="firstItem" ref="769513826"/>
<int key="firstAttribute">6</int>
<int key="relation">0</int>
<reference key="secondItem" ref="1034097047"/>
<int key="secondAttribute">6</int>
<float key="multiplier">1</float>
<object class="IBLayoutConstant" key="constant">
<double key="value">0.0</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="1005"/>
<int key="scoringType">6</int>
<float key="scoringTypeFloat">24</float>
<int key="contentType">2</int>
</object>
<object class="IBNSLayoutConstraint" id="1001566026">
<reference key="firstItem" ref="1005"/>
<int key="firstAttribute">4</int>
@@ -804,9 +804,9 @@
<reference ref="1034097047"/>
<reference ref="333885704"/>
<reference ref="662046682"/>
<reference ref="769513826"/>
<reference ref="594061862"/>
<reference ref="660673733"/>
<reference ref="769513826"/>
</array>
<reference key="parent" ref="0"/>
</object>
@@ -1027,11 +1027,6 @@
<reference key="object" ref="72235716"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">465</int>
<reference key="object" ref="875982455"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">286</int>
<reference key="object" ref="912203343"/>
@@ -1105,13 +1100,18 @@
<reference key="object" ref="1041224580"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">496</int>
<reference key="object" ref="875982455"/>
<reference key="parent" ref="1005"/>
</object>
</array>
</object>
<dictionary class="NSMutableDictionary" key="flattenedProperties">
<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="-3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array key="1.IBNSViewMetadataConstraints">
<array class="NSMutableArray" key="1.IBNSViewMetadataConstraints">
<reference ref="781301592"/>
<reference ref="335819100"/>
<reference ref="915913759"/>
@@ -1127,8 +1127,8 @@
<reference ref="273022298"/>
<reference ref="912203343"/>
<reference ref="1001566026"/>
<reference ref="875982455"/>
<reference ref="641552480"/>
<reference ref="875982455"/>
<reference ref="466444110"/>
<reference ref="72235716"/>
<reference ref="1041224580"/>
@@ -1187,7 +1187,6 @@
<string key="456.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="459.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="462.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="465.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="476.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="478.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="479.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@@ -1200,12 +1199,13 @@
<string key="489.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="490.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="492.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="496.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">495</int>
<int key="maxID">497</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<array class="NSMutableArray" key="referencedPartialClassDescriptions">

File diff suppressed because it is too large Load Diff

View File

@@ -50,8 +50,9 @@
<reference key="NSSuperview"/>
<reference key="NSWindow"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1920, 1058}}</string>
<string key="NSScreenRect">{{0, 0}, {2560, 1418}}</string>
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
<string key="NSFrameAutosaveName">DatabaseWindow</string>
<bool key="NSWindowIsRestorable">YES</bool>
</object>
<object class="NSSplitView" id="903506498">
@@ -64,6 +65,7 @@
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSIsVertical">YES</bool>
<int key="NSDividerStyle">2</int>
<string key="NSAutosaveName"/>
</object>
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
@@ -159,6 +161,7 @@
<string key="superclassName">NSWindowController</string>
<dictionary class="NSMutableDictionary" key="actions">
<string key="editPassword:">id</string>
<string key="exportDatabase:">id</string>
<string key="showDatabaseSettings:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
@@ -166,6 +169,10 @@
<string key="name">editPassword:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo" key="exportDatabase:">
<string key="name">exportDatabase:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo" key="showDatabaseSettings:">
<string key="name">showDatabaseSettings:</string>
<string key="candidateClassName">id</string>

View File

@@ -38,16 +38,31 @@
[MPStringLengthValueTransformer registerTransformer];
}
- (void)dealloc {
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
- (BOOL)applicationShouldOpenUntitledFile:(NSApplication *)sender {
return [[NSUserDefaults standardUserDefaults] boolForKey:kMPSettingsKeyOpenEmptyDatabaseOnLaunch];
}
- (void)applicationWillFinishLaunching:(NSNotification *)notification {
BOOL reopen = [[NSUserDefaults standardUserDefaults] boolForKey:kMPSettingsKeyReopenLastDatabaseOnLaunch];
if(reopen) {
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(_applicationDidFinishRestoringWindows:)
name:NSApplicationDidFinishRestoringWindowsNotification
object:nil];
}
}
- (void)applicationDidFinishLaunching:(NSNotification *)notification {
serverDaemon = [[MPServerDaemon alloc] init];
lockDaemon = [[MPLockDaemon alloc] init];
}
- (NSString *)applicationName {
return [[NSBundle mainBundle] infoDictionary][@"CFBundleName"];
}
@@ -93,4 +108,16 @@
}
}
- (void)_applicationDidFinishRestoringWindows:(NSNotification *)notification {
NSDocumentController *documentController = [NSDocumentController sharedDocumentController];
NSArray *documents = [documentController documents];
NSArray *recentDocuments = [documentController recentDocumentURLs];
if([documents count] == 0 && [recentDocuments count] > 0) {
NSURL *url = recentDocuments[0];
[documentController openDocumentWithContentsOfURL:url display:YES completionHandler:^(NSDocument *document, BOOL documentWasAlreadyOpen, NSError *error) {
// do nothing
}];
}
}
@end

View File

@@ -0,0 +1,17 @@
//
// MPAttachmentTableViewDelegate.h
// MacPass
//
// Created by Michael Starke on 17.07.13.
// Copyright (c) 2013 HicknHack Software GmbH. All rights reserved.
//
#import <Foundation/Foundation.h>
@class MPInspectorViewController;
@interface MPAttachmentTableViewDelegate : NSObject <NSTableViewDelegate>
@property (nonatomic, weak) MPInspectorViewController *viewController;
@end

View File

@@ -0,0 +1,65 @@
//
// MPAttachmentTableViewDelegate.m
// MacPass
//
// Created by Michael Starke on 17.07.13.
// Copyright (c) 2013 HicknHack Software GmbH. All rights reserved.
//
#import "MPAttachmentTableViewDelegate.h"
#import "MPInspectorViewController.h"
#import "MPSelectedAttachmentTableCellView.h"
#import "Kdb4Node.h"
#import "HNHTableRowView.h"
@implementation MPAttachmentTableViewDelegate
- (void)tableViewSelectionDidChange:(NSNotification *)notification {
NSTableView *tableView = [notification object];
NSIndexSet *allColumns = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, [[tableView tableColumns] count])];
Kdb4Entry *entryv4 = (Kdb4Entry *)self.viewController.selectedEntry;
NSIndexSet *indexSet = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, [entryv4.binaries count] )];
[tableView reloadDataForRowIndexes:indexSet columnIndexes:allColumns];
}
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
/* Decide what view to use */
NSIndexSet *selectedIndexes = [tableView selectedRowIndexes];
NSTableCellView *view;
if([selectedIndexes containsIndex:row]) {
MPSelectedAttachmentTableCellView *cellView = [tableView makeViewWithIdentifier:@"SelectedCell" owner:tableView];
[cellView.saveButton setTag:row];
[cellView.saveButton setAction:@selector(saveAttachment:)];
[cellView.saveButton setTarget:self.viewController];
[cellView.removeButton setTag:row];
[cellView.removeButton setAction:@selector(removeAttachment:)];
[cellView.removeButton setTarget:self.viewController];
view = cellView;
}
else {
view = [tableView makeViewWithIdentifier:@"NormalCell" owner:tableView];
}
/* Bind view */
if([self.viewController.selectedEntry isKindOfClass:[Kdb4Entry class]]) {
Kdb4Entry *entry = (Kdb4Entry *)self.viewController.selectedEntry;
BinaryRef *binaryRef = entry.binaries[row];
[[view textField] bind:NSValueBinding toObject:binaryRef withKeyPath:@"key" options:nil];
[[view imageView] setImage:[[NSWorkspace sharedWorkspace] iconForFileType:[binaryRef.key pathExtension]]];
}
else {
// Create view to support only one binary!
}
return view;
}
- (NSTableRowView *)tableView:(NSTableView *)tableView rowViewForRow:(NSInteger)row {
HNHTableRowView *view = nil;
view = [[HNHTableRowView alloc] init];
view.selectionCornerRadius = 7;
return view;
}
@end

View File

@@ -0,0 +1,17 @@
//
// MPCustomFieldTableDelegate.h
// MacPass
//
// Created by Michael Starke on 17.07.13.
// Copyright (c) 2013 HicknHack Software GmbH. All rights reserved.
//
#import <Foundation/Foundation.h>
@class MPInspectorViewController;
@interface MPCustomFieldTableViewDelegate : NSObject <NSTableViewDelegate>
@property (nonatomic, weak) MPInspectorViewController *viewController;
@end

View File

@@ -0,0 +1,41 @@
//
// MPCustomFieldTableDelegate.m
// MacPass
//
// Created by Michael Starke on 17.07.13.
// Copyright (c) 2013 HicknHack Software GmbH. All rights reserved.
//
#import "MPCustomFieldTableViewDelegate.h"
#import "MPInspectorViewController.h"
#import "MPCustomFieldTableCellView.h"
#import "Kdb4Node.h"
#import "StringField+Undo.h"
@implementation MPCustomFieldTableViewDelegate
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
if(![self.viewController.selectedEntry isKindOfClass:[Kdb4Entry class]]) {
return nil;
}
Kdb4Entry *entry = (Kdb4Entry *)self.viewController.selectedEntry;
MPCustomFieldTableCellView *view = [tableView makeViewWithIdentifier:@"SelectedCell" owner:tableView];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_customFieldFrameChanged:) name:NSViewFrameDidChangeNotification object:view];
if([self.viewController.selectedEntry isKindOfClass:[Kdb4Entry class]]) {
StringField *stringField = entry.stringFields[row];
[view.labelTextField bind:NSValueBinding toObject:stringField withKeyPath:MPStringFieldKeyUndoableKey options:nil];
[view.valueTextField bind:NSValueBinding toObject:stringField withKeyPath:MPStringFieldValueUndoableKey options:nil];
[view.removeButton setTarget:self.viewController];
[view.removeButton setAction:@selector(removeCustomField:)];
[view.removeButton setTag:row];
}
return view;
}
- (void)_customFieldFrameChanged:(NSNotification *)notification {
// NSView *sender = [notification object];
// NSLog(@"didChangeFrameFor: %@ to: %@", sender, NSStringFromRect([sender frame]));
}
@end

View File

@@ -18,9 +18,11 @@ typedef NS_ENUM(NSUInteger, MPDatabaseSettingsTab) {
@class MPDocument;
@class HNHRoundedSecureTextField;
@interface MPDatabaseSettingsWindowController : NSWindowController
@interface MPDatabaseSettingsWindowController : NSWindowController <NSTextFieldDelegate>
@property (weak) IBOutlet NSTabView *sectionTabView;
@property (weak) IBOutlet NSButton *saveButton;
@property (weak) IBOutlet NSButton *cancelButton;
/* General Tab */
@property (weak) IBOutlet NSTextField *databaseNameTextField;
@@ -28,8 +30,11 @@ typedef NS_ENUM(NSUInteger, MPDatabaseSettingsTab) {
/* Protection */
@property (weak) IBOutlet HNHRoundedSecureTextField *passwordTextField;
@property (weak) IBOutlet HNHRoundedSecureTextField *passwordRepeatTextField;
@property (weak) IBOutlet NSPathControl *keyfilePathControl;
@property (weak) IBOutlet NSButton *togglePasswordButton;
@property (weak) IBOutlet NSTextField *errorTextField;
- (IBAction)clearKey:(id)sender;
- (IBAction)generateKey:(id)sender;

View File

@@ -14,6 +14,8 @@
#import "HNHRoundedSecureTextField.h"
#import "NSString+Empty.h"
#import "Kdb.h"
#import "Kdb4Node.h"
#import "KdbGroup+MPAdditions.h"
@@ -24,6 +26,8 @@
@property (nonatomic,assign) BOOL trashEnabled;
@property (nonatomic,assign) BOOL showPassword;
@property (nonatomic,assign) BOOL hasValidPasswordOrKey;
@property (nonatomic,weak) NSURL *keyURL;
@end
@@ -38,6 +42,7 @@
if(self) {
_document = document;
_showPassword = NO;
_hasValidPasswordOrKey = NO;
}
return self;
}
@@ -47,6 +52,9 @@
NSAssert(_document != nil, @"Document needs to be present");
[self.saveButton bind:NSEnabledBinding toObject:self withKeyPath:@"hasValidPasswordOrKey" options:nil];
[self.cancelButton bind:NSEnabledBinding toObject:self withKeyPath:@"hasValidPasswordOrKey" options:nil];
Kdb4Tree *tree = _document.treeV4;
if( tree ) {
[self _setupDatabase:tree];
@@ -109,15 +117,68 @@
[self.sectionTabView selectTabViewItemAtIndex:tab];
}
- (void)setShowPassword:(BOOL)showPassword {
if(_showPassword != showPassword) {
_showPassword = showPassword;
[self.passwordRepeatTextField setStringValue:@""];
[self _verifyPasswordAndKey];
}
}
- (void)setKeyURL:(NSURL *)keyURL {
_keyURL = keyURL;
[self _verifyPasswordAndKey];
}
#pragma mark Actions
- (IBAction)clearKey:(id)sender {
[self.keyfilePathControl setURL:nil];
self.keyURL = nil;
}
- (IBAction)generateKey:(id)sender {
}
#pragma makr NSTextFieldDelegate
- (void)controlTextDidChange:(NSNotification *)obj {
[self _verifyPasswordAndKey];
}
#pragma mark Private Helper
- (void)_verifyPasswordAndKey {
NSString *password = [self.passwordTextField stringValue];
NSString *repeat = [self.passwordRepeatTextField stringValue];
BOOL hasKey = (self.keyURL != nil);
BOOL keyOk = YES;
if(hasKey) {
keyOk = [self.keyURL checkResourceIsReachableAndReturnError:nil];
}
BOOL hasPassword = ![password isEmpty];
BOOL passwordOk = YES;
if(hasPassword ) {
passwordOk = [password isEqualToString:repeat] || self.showPassword;
}
BOOL hasPasswordOrKey = (hasKey || hasPassword);
keyOk = hasKey ? keyOk : YES;
passwordOk = hasPassword ? passwordOk : YES;
self.hasValidPasswordOrKey = hasPasswordOrKey && passwordOk && keyOk;
if(!hasPasswordOrKey) {
[self.errorTextField setStringValue:NSLocalizedString(@"ERROR_NO_PASSWORD_OR_KEYFILE", "Missing Key or Password")];
return; // alldone
}
if(!passwordOk && !keyOk ) {
[self.errorTextField setStringValue:NSLocalizedString(@"ERROR_PASSWORD_MISSMATCH_INVALID_KEYFILE", "Passwords do not match, keyfile is invalid")];
}
else if(!passwordOk) {
[self.errorTextField setStringValue:NSLocalizedString(@"ERROR_PASSWORD_MISSMATCH", "Passwords do not match")];
}
else {
[self.errorTextField setStringValue:NSLocalizedString(@"ERROR_INVALID_KEYFILE", "Keyfile not valid")];
}
}
- (void)_setupDatabase:(Kdb4Tree *)tree {
[self.databaseNameTextField setStringValue:tree.databaseName];
[self.databaseDescriptionTextView setString:tree.databaseDescription];
@@ -140,10 +201,21 @@
- (void)_setupPasswordTab:(Kdb4Tree *)tree {
[self.passwordTextField setStringValue:_document.password ? _document.password : @""];
[self.keyfilePathControl setURL:_document.key];
[self.passwordRepeatTextField setStringValue:[self.passwordRepeatTextField stringValue]];
self.keyURL = _document.key;
NSDictionary *negateOption = @{ NSValueTransformerNameBindingOption : NSNegateBooleanTransformerName };
[self.passwordTextField bind:@"showPassword" toObject:self withKeyPath:@"showPassword" options:nil];
[self.togglePasswordButton bind:NSValueBinding toObject:self withKeyPath:@"showPassword" options:nil];
[self.passwordRepeatTextField bind:NSEnabledBinding toObject:self withKeyPath:@"showPassword" options:negateOption];
[self.errorTextField bind:NSHiddenBinding toObject:self withKeyPath:@"hasValidPasswordOrKey" options:nil];
[self.keyfilePathControl bind:NSValueBinding toObject:self withKeyPath:@"keyURL" options:nil];
[self.passwordRepeatTextField setDelegate:self];
[self.passwordTextField setDelegate:self];
/* Manually initate the first check */
[self _verifyPasswordAndKey];
}
- (void)_updateTrashFolders:(Kdb4Tree *)tree {

View File

@@ -263,7 +263,7 @@ NSString *const MPDocumentGroupKey = @"MPDocumentGroupKey";
- (Kdb3Tree *)treeV3 {
switch (_version) {
case MPDatabaseVersion3:
NSAssert([self.tree isKindOfClass:[Kdb3Tree class]], @"Tree has to be Version3");
NSAssert(self.tree == nil || [self.tree isKindOfClass:[Kdb3Tree class]], @"Tree has to be Version3");
return (Kdb3Tree *)self.tree;
case MPDatabaseVersion4:
return nil;
@@ -277,7 +277,7 @@ NSString *const MPDocumentGroupKey = @"MPDocumentGroupKey";
case MPDatabaseVersion3:
return nil;
case MPDatabaseVersion4:
NSAssert([self.tree isKindOfClass:[Kdb4Tree class]], @"Tree has to be Version4");
NSAssert(self.tree == nil || [self.tree isKindOfClass:[Kdb4Tree class]], @"Tree has to be Version4");
return (Kdb4Tree *)self.tree;
default:
return nil;
@@ -354,7 +354,6 @@ NSString *const MPDocumentGroupKey = @"MPDocumentGroupKey";
return newStringField;
}
- (void)moveGroup:(KdbGroup *)group toGroup:(KdbGroup *)target index:(NSInteger)index {
NSInteger oldIndex = [group.parent.groups indexOfObject:group];
if(group.parent == target && oldIndex == index) {
@@ -455,13 +454,13 @@ NSString *const MPDocumentGroupKey = @"MPDocumentGroupKey";
}
}
- (BOOL)validateMenuItem:(NSMenuItem *)menuItem {
if([menuItem action] == [MPActionHelper actionOfType:MPActionEmptyTrash]) {
- (BOOL)validateUserInterfaceItem:(id<NSValidatedUserInterfaceItem>)anItem {
if([anItem action] == [MPActionHelper actionOfType:MPActionEmptyTrash]) {
BOOL hasGroups = [self.trash.groups count] > 0;
BOOL hasEntries = [self.trash.entries count] > 0;
return (hasEntries || hasGroups);
}
return YES;
return [super validateUserInterfaceItem:anItem];
}
#pragma mark Private

View File

@@ -17,6 +17,7 @@
#import "MPActionHelper.h"
#import "MPDatabaseSettingsWindowController.h"
#import "MPConstants.h"
#import "MPSettingsHelper.h"
NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCurrentItemChangedNotification";
@@ -62,9 +63,6 @@ NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCur
- (void)dealloc {
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
#pragma mark View Handling
@@ -94,6 +92,11 @@ NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCur
[_splitView setHoldingPriority:NSLayoutPriorityDefaultLow+2 forSubviewAtIndex:0];
[_splitView setHoldingPriority:NSLayoutPriorityDefaultLow+1 forSubviewAtIndex:2];
BOOL showInspector = [[NSUserDefaults standardUserDefaults] boolForKey:kMPSettingsKeyShowInspector];
if(!showInspector) {
[inspectorView removeFromSuperview];
}
[[self window] setDelegate:self];
MPDocument *document = [self document];
@@ -103,6 +106,8 @@ NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCur
else {
[self showEntries];
}
[_splitView setAutosaveName:@"SplitView"];
}
- (void)_setContentViewController:(MPViewController *)viewController {
@@ -176,18 +181,25 @@ NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCur
}
- (BOOL)validateMenuItem:(NSMenuItem *)menuItem {
BOOL enabled = YES;
MPDocument *document = [self document];
if([menuItem action] == @selector(exportDatabase:)) {
SEL itemAction = [menuItem action];
if(itemAction == @selector(showDatabaseSettings:)
|| itemAction == @selector(editPassword:)) {
return document.decrypted && !document.isLocked;
}
BOOL enabled = YES;
if(itemAction == @selector(exportDatabase:)) {
enabled = (nil != document.treeV4);
}
enabled &= !( document.isLocked || document.isReadOnly );
enabled &= !( !document.decrypted || document.isLocked || document.isReadOnly );
return enabled;
}
- (BOOL)validateToolbarItem:(NSToolbarItem *)theItem {
MPDocument *document = [self document];
if(document.isLocked || document.isReadOnly) {
if(!document.decrypted || document.isLocked || document.isReadOnly) {
return NO;
}
SEL itemAction = [theItem action];
@@ -245,18 +257,21 @@ NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCur
- (void)toggleInspector:(id)sender {
NSView *inspectorView = [_inspectorViewController view];
BOOL inspectorVisible = NO;
if([inspectorView superview]) {
//[inspectorView animator]
[inspectorView removeFromSuperview];
}
else {
// Remove contraint on view removal.
inspectorVisible = YES;
[_splitView addSubview:inspectorView];
[_splitView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"[inspectorView(>=200)]"
options:0
metrics:nil
views:NSDictionaryOfVariableBindings(inspectorView)]];
}
[[NSUserDefaults standardUserDefaults] setBool:inspectorVisible forKey:kMPSettingsKeyShowInspector];
}
- (void)showEntries {
@@ -268,7 +283,7 @@ NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCur
[[contentView subviews][0] removeFromSuperviewWithoutNeedingDisplay];
}
[contentView addSubview:_splitView];
[_splitView adjustSubviews];
//[_splitView adjustSubviews];
NSView *outlineView = [_outlineViewController view];
NSView *inspectorView = [_inspectorViewController view];
NSView *entryView = [_entryViewController view];
@@ -314,7 +329,7 @@ NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCur
if(removeInspector) {
[inspectorView removeFromSuperview];
}
[contentView layout];
[contentView layoutSubtreeIfNeeded];
MPDocument *document = [self document];
document.locked = NO;
@@ -325,6 +340,7 @@ NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCur
[_outlineViewController showOutline];
}
#pragma mark NSWindowDelegate
- (void)windowDidUpdate:(NSNotification *)notification {
id firstResonder = [[self window] firstResponder];
@@ -333,10 +349,16 @@ NSString *const MPCurrentItemChangedNotification = @"com.hicknhack.macpass.MPCur
}
_firstResponder = firstResonder;
if([_firstResponder isKindOfClass:[NSView class]]) {
[self _updateCurrentItem:[NSNotification notificationWithName:@"dummy" object:_firstResponder ]];
//self _updateCurrentItem:[NSNotification notificationWithName:@"dummy" object:_firstResponder ]];
}
}
- (void)windowDidBecomeKey:(NSNotification *)notification {
MPDocument *document = [self document];
if(!document.hasPasswordOrKey && document.decrypted) {
[self performSelector:@selector(editPassword:) withObject:nil afterDelay:0.5];
}
}
#pragma mark Helper

View File

@@ -148,6 +148,9 @@ NSString *const _toggleFilterUsernameButton = @"SearchUsername";
[passwordColumn setIdentifier:MPEntryTablePasswordColumnIdentifier];
[urlColumn setIdentifier:MPEntryTableURLColumnIdentifier];
[self.entryTable setAutosaveName:@"EntryTable"];
[self.entryTable setAutosaveTableColumns:YES];
NSSortDescriptor *titleColumSortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"title" ascending:YES selector:@selector(compare:)];
NSSortDescriptor *userNameSortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"username" ascending:YES selector:@selector(compare:)];
NSSortDescriptor *urlSortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"url" ascending:YES selector:@selector(compare:)];

View File

@@ -16,5 +16,6 @@
@property (weak) IBOutlet NSPopUpButton *clearPasteboardTimeoutPopup;
@property (weak) IBOutlet NSPopUpButton *idleTimeOutPopup;
@property (weak) IBOutlet NSButton *lockOnSleepCheckButton;
@property (weak) IBOutlet NSButton *reopenLastDatabase;
@end

View File

@@ -32,6 +32,7 @@ NSString *const MPGeneralSetingsIdentifier = @"GeneralSettingsTab";
- (void)didLoadView {
NSUserDefaultsController *defaultsController = [NSUserDefaultsController sharedUserDefaultsController];
NSString *reopenLastFilePath = [NSString stringWithFormat:@"values.%@", kMPSettingsKeyReopenLastDatabaseOnLaunch];
NSString *clearPasteboardKeyPath = [NSString stringWithFormat:@"values.%@", kMPSettingsKeyClearPasteboardOnQuit];
NSString *clearPasteboardTimeOutKeyPath = [NSString stringWithFormat:@"values.%@", kMPSettingsKeyPasteboardClearTimeout];
NSString *idleTimeOutKeyPath = [NSString stringWithFormat:@"values.%@", kMPSettingsKeyIdleLockTimeOut];
@@ -40,5 +41,6 @@ NSString *const MPGeneralSetingsIdentifier = @"GeneralSettingsTab";
[self.clearPasteboardTimeoutPopup bind:NSSelectedTagBinding toObject:defaultsController withKeyPath:clearPasteboardTimeOutKeyPath options:nil];
[self.lockOnSleepCheckButton bind:NSValueBinding toObject:defaultsController withKeyPath:lockOnSleepKeyPath options:nil];
[self.idleTimeOutPopup bind:NSSelectedTagBinding toObject:defaultsController withKeyPath:idleTimeOutKeyPath options:nil];
[self.reopenLastDatabase bind:NSValueBinding toObject:defaultsController withKeyPath:reopenLastFilePath options:nil];
}
@end

View File

@@ -15,7 +15,7 @@
@class HNHRoundedSecureTextField;
@class MPDocumentWindowController;
@interface MPInspectorViewController : MPViewController <NSPopoverDelegate, NSTableViewDelegate>
@interface MPInspectorViewController : MPViewController <NSPopoverDelegate>
@property (weak) IBOutlet MPPopupImageView *itemImageView;
@property (weak) IBOutlet NSTextField *itemNameTextfield;
@@ -36,6 +36,9 @@
@property (weak) IBOutlet NSButton *togglePassword;
@property (weak, nonatomic, readonly) KdbEntry *selectedEntry;
@property (weak, nonatomic, readonly) KdbGroup *selectedGroup;
/* Seperate call to ensure alle registered objects are in place */
- (void)setupNotifications:(MPDocumentWindowController *)windowController;

View File

@@ -20,6 +20,8 @@
#import "MPDatabaseVersion.h"
#import "MPCustomFieldTableCellView.h"
#import "MPSelectedAttachmentTableCellView.h"
#import "MPAttachmentTableViewDelegate.h"
#import "MPCustomFieldTableViewDelegate.h"
#import "NSDate+Humanized.h"
@@ -45,6 +47,10 @@ enum {
@interface MPInspectorViewController () {
BOOL _visible;
NSArrayController *_attachmentsController;
NSArrayController *_customFieldsController;
MPAttachmentTableViewDelegate *_attachmentTableDelegate;
MPCustomFieldTableViewDelegate *_customFieldTableDelegate;
}
@property (weak, nonatomic) KdbEntry *selectedEntry;
@@ -60,8 +66,6 @@ enum {
@property (nonatomic, assign) NSUInteger activeTab;
@property (weak) IBOutlet NSTabView *tabView;
@property (strong) NSArrayController *attachmentsController;
@property (strong) NSArrayController *customFieldsController;
- (IBAction)addCustomField:(id)sender;
- (IBAction)removeCustomField:(id)sender;
@@ -87,6 +91,10 @@ enum {
_selectedGroup = nil;
_attachmentsController = [[NSArrayController alloc] init];
_customFieldsController = [[NSArrayController alloc] init];
_attachmentTableDelegate = [[MPAttachmentTableViewDelegate alloc] init];
_attachmentTableDelegate.viewController = self;
_customFieldTableDelegate = [[MPCustomFieldTableViewDelegate alloc] init];
_customFieldTableDelegate.viewController = self;
_activeTab = MPGeneralTab;
}
return self;
@@ -107,12 +115,12 @@ enum {
/* Set background to clearcolor so we can draw in the scrollview */
[_attachmentTableView setBackgroundColor:[NSColor clearColor]];
[_attachmentTableView bind:NSContentBinding toObject:self.attachmentsController withKeyPath:@"arrangedObjects" options:nil];
[_attachmentTableView setDelegate:self];
[_attachmentTableView bind:NSContentBinding toObject:_attachmentsController withKeyPath:@"arrangedObjects" options:nil];
[_attachmentTableView setDelegate:_attachmentTableDelegate];
/* Set background to clearcolor so we can draw in the scrollview */
[_customFieldsTableView setBackgroundColor:[NSColor clearColor]];
[_customFieldsTableView bind:NSContentBinding toObject:self.customFieldsController withKeyPath:@"arrangedObjects" options:nil];
[_customFieldsTableView setDelegate:self];
[_customFieldsTableView bind:NSContentBinding toObject:_customFieldsController withKeyPath:@"arrangedObjects" options:nil];
[_customFieldsTableView setDelegate:_customFieldTableDelegate];
[self.passwordTextField bind:@"showPassword" toObject:self withKeyPath:@"showPassword" options:nil];
[self.togglePassword bind:NSValueBinding toObject:self withKeyPath:@"showPassword" options:nil];
@@ -167,26 +175,26 @@ enum {
- (void)_updateAttachments {
if(self.selectedEntry) {
if([self.selectedEntry isKindOfClass:[Kdb4Entry class]]) {
[self.attachmentsController bind:NSContentArrayBinding toObject:self.selectedEntry withKeyPath:@"binaries" options:nil];
[_attachmentsController bind:NSContentArrayBinding toObject:self.selectedEntry withKeyPath:@"binaries" options:nil];
}
else {
/* Use binary from Kdb3Entry */
}
}
else if([self.attachmentsController content] != nil){
[self.attachmentsController unbind:NSContentArrayBinding];
[self.attachmentsController setContent:nil];
else if([_attachmentsController content] != nil){
[_attachmentsController unbind:NSContentArrayBinding];
[_attachmentsController setContent:nil];
}
}
- (void)_updateCustomFields {
if(self.selectedEntry && [self.selectedEntry isKindOfClass:[Kdb4Entry class]]) {
[self.customFieldsController bind:NSContentArrayBinding toObject:self.selectedEntry withKeyPath:@"stringFields" options:nil];
[_customFieldsController bind:NSContentArrayBinding toObject:self.selectedEntry withKeyPath:@"stringFields" options:nil];
}
else if([self.customFieldsController content] != nil){
[self.customFieldsController unbind:NSContentArrayBinding];
[self.customFieldsController setContent:nil];
else if([_customFieldsController content] != nil){
[_customFieldsController unbind:NSContentArrayBinding];
[_customFieldsController setContent:nil];
}
}
@@ -412,78 +420,4 @@ enum {
[self _updateContent];
}
#pragma mark NSTableViewDelegate
/* TODO: Divide this into single delegates */
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
if(tableView == self.attachmentTableView) {
return [self _viewForAttachmentTableColumn:tableColumn row:row];
}
return [self _viewForCustomFieldTableColumn:tableColumn row:row];
}
- (void)tableViewSelectionDidChange:(NSNotification *)notification {
if([notification object] == self.attachmentTableView) {
NSIndexSet *allColumns = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, [[self.attachmentTableView tableColumns] count])];
Kdb4Entry *entryv4 = (Kdb4Entry *)self.selectedEntry;
NSIndexSet *indexSet = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, [entryv4.binaries count] )];
[self.attachmentTableView reloadDataForRowIndexes:indexSet columnIndexes:allColumns];
}
}
- (NSView *)_viewForAttachmentTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
/* Decide what view to use */
NSIndexSet *selectedIndexes = [self.attachmentTableView selectedRowIndexes];
NSTableCellView *view;
if([selectedIndexes containsIndex:row]) {
MPSelectedAttachmentTableCellView *cellView = [_attachmentTableView makeViewWithIdentifier:@"SelectedCell" owner:_attachmentTableView];
[cellView.saveButton setTag:row];
[cellView.saveButton setAction:@selector(saveAttachment:)];
[cellView.saveButton setTarget:self];
[cellView.removeButton setTag:row];
[cellView.removeButton setAction:@selector(removeAttachment:)];
[cellView.removeButton setTarget:self];
view = cellView;
}
else {
view = [_attachmentTableView makeViewWithIdentifier:@"NormalCell" owner:_attachmentTableView];
}
/* Bind view */
if([self.selectedEntry isKindOfClass:[Kdb4Entry class]]) {
Kdb4Entry *entry = (Kdb4Entry *)self.selectedEntry;
BinaryRef *binaryRef = entry.binaries[row];
[[view textField] bind:NSValueBinding toObject:binaryRef withKeyPath:@"key" options:nil];
[[view imageView] setImage:[[NSWorkspace sharedWorkspace] iconForFileType:[binaryRef.key pathExtension]]];
}
return view;
}
- (NSView *)_viewForCustomFieldTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
MPCustomFieldTableCellView *view = [_customFieldsTableView makeViewWithIdentifier:[tableColumn identifier] owner:_customFieldsTableView];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_customFieldFrameChanged:) name:NSViewFrameDidChangeNotification object:view];
if([self.selectedEntry isKindOfClass:[Kdb4Entry class]]) {
Kdb4Entry *entry = (Kdb4Entry *)self.selectedEntry;
StringField *stringField = entry.stringFields[row];
[view.labelTextField bind:NSValueBinding toObject:stringField withKeyPath:MPStringFieldKeyUndoableKey options:nil];
[view.valueTextField bind:NSValueBinding toObject:stringField withKeyPath:MPStringFieldValueUndoableKey options:nil];
[view.removeButton setTarget:self];
[view.removeButton setAction:@selector(removeCustomField:)];
[view.removeButton setTag:row];
}
return view;
}
- (NSTableRowView *)tableView:(NSTableView *)tableView rowViewForRow:(NSInteger)row {
HNHTableRowView *view = nil;
if(tableView == self.attachmentTableView) {
view = [[HNHTableRowView alloc] init];
view.selectionCornerRadius = 7;
}
return view;
}
- (void)_customFieldFrameChanged:(NSNotification *)notification {
// NSView *sender = [notification object];
// NSLog(@"didChangeFrameFor: %@ to: %@", sender, NSStringFromRect([sender frame]));
}
@end

View File

@@ -15,6 +15,7 @@ APPKIT_EXTERN NSString *const kMPSettingsKeyClearPasteboardOnQuit;
/* Behaviour */
APPKIT_EXTERN NSString *const kMPSettingsKeyPasswordEncoding;
APPKIT_EXTERN NSString *const kMPSettingsKeyOpenEmptyDatabaseOnLaunch;
APPKIT_EXTERN NSString *const kMPSettingsKeyReopenLastDatabaseOnLaunch;
/* Server Settings */
APPKIT_EXTERN NSString *const kMPSettingsKeyHttpPort;
@@ -26,6 +27,9 @@ APPKIT_EXTERN NSString *const kMPSettingsKeyLockOnSleep;
APPKIT_EXTERN NSString *const kMPSettingsKeyIdleLockTimeOut;
/* Autosaving states */
APPKIT_EXTERN NSString *const kMPSettingsKeyShowInspector;
typedef NS_ENUM(NSUInteger, MPPasswordEncoding) {
MPPasswordEncodingUTF8,
MPPasswordEncodingASCII,

View File

@@ -11,11 +11,13 @@
NSString *const kMPSettingsKeyPasteboardClearTimeout = @"ClipboardClearTimeout";
NSString *const kMPSettingsKeyClearPasteboardOnQuit = @"ClearClipboardOnQuit";
NSString *const kMPSettingsKeyOpenEmptyDatabaseOnLaunch = @"OpenEmptyDatabaseOnLaunch";
NSString *const kMPSettingsKeyReopenLastDatabaseOnLaunch = @"ReopenLastDatabaseOnLaunch";
NSString *const kMPSettingsKeyHttpPort =@"HttpPort";
NSString *const kMPSettingsKeyEnableHttpServer = @"EnableHttpServer";
NSString *const kMPSettingsKeyShowMenuItem = @"ShowMenuItem";
NSString *const kMPSettingsKeyLockOnSleep = @"LockOnSleep";
NSString *const kMPSettingsKeyIdleLockTimeOut = @"IdleLockTimeOut";
NSString *const kMPSettingsKeyShowInspector = @"ShowInspector";
@implementation MPSettingsHelper
@@ -25,9 +27,11 @@ NSString *const kMPSettingsKeyIdleLockTimeOut = @"IdleLockTimeOut";
+ (NSDictionary *)_standardDefaults {
return @{
kMPSettingsKeyShowInspector: @YES, // Show the Inspector by default
kMPSettingsKeyPasteboardClearTimeout: @30, // 30 seconds
kMPSettingsKeyClearPasteboardOnQuit: @YES,
kMPSettingsKeyOpenEmptyDatabaseOnLaunch: @YES,
kMPSettingsKeyOpenEmptyDatabaseOnLaunch: @NO,
kMPSettingsKeyReopenLastDatabaseOnLaunch: @YES,
kMPSettingsKeyHttpPort: @19455,
kMPSettingsKeyEnableHttpServer: @NO,
kMPSettingsKeyShowMenuItem: @YES,

View File

@@ -44,11 +44,11 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>0.3.2</string>
<string>0.3.4</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>2506</string>
<string>2514</string>
<key>LSMinimumSystemVersion</key>
<string>${MACOSX_DEPLOYMENT_TARGET}</string>
<key>NSHumanReadableCopyright</key>

View File

@@ -1,30 +1,48 @@
/* Class = "NSMenu"; title = "OtherViews"; ObjectID = "421"; */
"421.title" = "OtherViews";
/* Class = "NSMenu"; title = "ClipboardClearInterval"; ObjectID = "421"; */
"421.title" = "ClipboardClearInterval";
/* Class = "NSMenuItem"; title = "10 Seconds"; ObjectID = "422"; */
"422.title" = "10 Sekunden";
/* Class = "NSMenuItem"; title = "after 10 Seconds"; ObjectID = "422"; */
"422.title" = "nach 10 Sekunden";
/* Class = "NSMenuItem"; title = "30 Seconds"; ObjectID = "423"; */
"423.title" = "30 Sekunden";
/* Class = "NSMenuItem"; title = "after 30 Seconds"; ObjectID = "423"; */
"423.title" = "nach 30 Sekunden";
/* Class = "NSMenuItem"; title = "1 Minute"; ObjectID = "424"; */
"424.title" = "1 Minute";
/* Class = "NSMenuItem"; title = "after 1 Minute"; ObjectID = "424"; */
"424.title" = "nach 1 Minute";
/* Class = "NSMenuItem"; title = "Never"; ObjectID = "429"; */
"429.title" = "Nie";
/* Class = "NSTextFieldCell"; title = "Clear Copied Items"; ObjectID = "432"; */
"432.title" = "Zwischenablage Leere";
"432.title" = "Leere Zwischenablage";
/* Class = "NSButtonCell"; title = "Clear Clipboard on Quit"; ObjectID = "448"; */
"448.title" = "Zwischenablage beim Beenden leeren";
/* Class = "NSBox"; title = "Clipboard"; ObjectID = "465"; */
"465.title" = "Zwischenablage";
/* Class = "NSBox"; title = "Security"; ObjectID = "465"; */
"465.title" = "Sicherheit";
/* Class = "NSButtonCell"; title = "Open empty database on launch"; ObjectID = "527"; */
"527.title" = "Leere Datenbank beim Programmstart öffnen";
/* Class = "NSButtonCell"; title = "Reopen last Database after Launch"; ObjectID = "531"; */
"531.title" = "Letzte Datenbank beim Start wieder öffnen";
/* Class = "NSButtonCell"; title = "Open empty database on activate"; ObjectID = "531"; */
"531.title" = "Lerre Datenbank beim Aktiveren öffnen";
/* Class = "NSMenu"; title = "LockTimes"; ObjectID = "586"; */
"586.title" = "LockTimes";
/* Class = "NSMenuItem"; title = "for 1 Minute"; ObjectID = "588"; */
"588.title" = "für 1 Minute";
/* Class = "NSMenuItem"; title = "for 5 Minutes"; ObjectID = "589"; */
"589.title" = "für 5 Minuten";
/* Class = "NSMenuItem"; title = "for 15 Minutes"; ObjectID = "603"; */
"603.title" = "für 15 Minuten";
/* Class = "NSButtonCell"; title = "Lock after sleep"; ObjectID = "631"; */
"631.title" = "Datenbank im Ruhezustand sperren";
/* Class = "NSMenuItem"; title = "Never"; ObjectID = "804"; */
"804.title" = "Nie";
/* Class = "NSTextFieldCell"; title = "Lock while idle"; ObjectID = "806"; */
"806.title" = "Sperren nach Inaktivität";

Binary file not shown.

View File

@@ -2,14 +2,14 @@
/* Class = "NSMenu"; title = "ClipboardClearInterval"; ObjectID = "421"; */
"421.title" = "ClipboardClearInterval";
/* Class = "NSMenuItem"; title = "10 Seconds"; ObjectID = "422"; */
"422.title" = "10 Seconds";
/* Class = "NSMenuItem"; title = "after 10 Seconds"; ObjectID = "422"; */
"422.title" = "after 10 Seconds";
/* Class = "NSMenuItem"; title = "30 Seconds"; ObjectID = "423"; */
"423.title" = "30 Seconds";
/* Class = "NSMenuItem"; title = "after 30 Seconds"; ObjectID = "423"; */
"423.title" = "after 30 Seconds";
/* Class = "NSMenuItem"; title = "1 Minute"; ObjectID = "424"; */
"424.title" = "1 Minute";
/* Class = "NSMenuItem"; title = "after 1 Minute"; ObjectID = "424"; */
"424.title" = "after 1 Minute";
/* Class = "NSMenuItem"; title = "Never"; ObjectID = "429"; */
"429.title" = "Never";
@@ -23,26 +23,26 @@
/* Class = "NSBox"; title = "Security"; ObjectID = "465"; */
"465.title" = "Security";
/* Class = "NSButtonCell"; title = "Open empty database on launch"; ObjectID = "527"; */
"527.title" = "Open empty database on launch";
/* Class = "NSButtonCell"; title = "Open empty database on activate"; ObjectID = "531"; */
"531.title" = "Open empty database on activate";
/* Class = "NSButtonCell"; title = "Reopen last Database after Launch"; ObjectID = "531"; */
"531.title" = "Reopen last Database after Launch";
/* Class = "NSMenu"; title = "LockTimes"; ObjectID = "586"; */
"586.title" = "LockTimes";
/* Class = "NSMenuItem"; title = "1 Minute"; ObjectID = "588"; */
"588.title" = "1 Minute";
/* Class = "NSMenuItem"; title = "for 1 Minute"; ObjectID = "588"; */
"588.title" = "for 1 Minute";
/* Class = "NSMenuItem"; title = "5 Minutes"; ObjectID = "589"; */
"589.title" = "5 Minutes";
/* Class = "NSMenuItem"; title = "for 5 Minutes"; ObjectID = "589"; */
"589.title" = "for 5 Minutes";
/* Class = "NSMenuItem"; title = "15 Minutes"; ObjectID = "603"; */
"603.title" = "15 Minutes";
/* Class = "NSButtonCell"; title = "Lock while idle for"; ObjectID = "606"; */
"606.title" = "Lock while idle for";
/* Class = "NSMenuItem"; title = "for 15 Minutes"; ObjectID = "603"; */
"603.title" = "for 15 Minutes";
/* Class = "NSButtonCell"; title = "Lock after sleep"; ObjectID = "631"; */
"631.title" = "Lock after sleep";
/* Class = "NSMenuItem"; title = "Never"; ObjectID = "804"; */
"804.title" = "Never";
/* Class = "NSTextFieldCell"; title = "Lock while idle"; ObjectID = "806"; */
"806.title" = "Lock while idle";

Binary file not shown.