Added test for custom field ui. Field can be added/removed. But no data is displayes/stored

This commit is contained in:
michael starke
2013-06-27 04:35:09 +02:00
parent dbd424ffae
commit 81c3bdcb5a
8 changed files with 871 additions and 37 deletions

View File

@@ -110,6 +110,8 @@
4C669BA016760ED100DD0774 /* Salsa20RandomStream.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C669B7716760ED100DD0774 /* Salsa20RandomStream.m */; };
4C669BA216760ED100DD0774 /* UUID.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C669B7B16760ED100DD0774 /* UUID.m */; };
4C69A73A16D589DF00EC1B1A /* HNHGradientView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C69A73916D589DF00EC1B1A /* HNHGradientView.m */; };
4C74DD04177BD00E0034A9DB /* CustomFieldView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4C74DD03177BD00E0034A9DB /* CustomFieldView.xib */; };
4C74DD07177BD1640034A9DB /* MPCustomFieldView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C74DD06177BD1640034A9DB /* MPCustomFieldView.m */; };
4C76155C1764C04C0015A1A6 /* GeneralSettings.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4C76155E1764C04C0015A1A6 /* GeneralSettings.xib */; };
4C7615631764C08C0015A1A6 /* PasswordEditView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4C7615651764C08C0015A1A6 /* PasswordEditView.xib */; };
4C7615681764C0C40015A1A6 /* PasswordInputView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4C76156A1764C0C40015A1A6 /* PasswordInputView.xib */; };
@@ -380,6 +382,9 @@
4C669B7B16760ED100DD0774 /* UUID.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UUID.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>"; };
4C74DD03177BD00E0034A9DB /* CustomFieldView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CustomFieldView.xib; sourceTree = "<group>"; };
4C74DD05177BD1640034A9DB /* MPCustomFieldView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPCustomFieldView.h; sourceTree = "<group>"; };
4C74DD06177BD1640034A9DB /* MPCustomFieldView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPCustomFieldView.m; sourceTree = "<group>"; };
4C76155F1764C0590015A1A6 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/GeneralSettings.xib; sourceTree = "<group>"; };
4C7615601764C05A0015A1A6 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
4C7615661764C08F0015A1A6 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/PasswordEditView.xib; sourceTree = "<group>"; };
@@ -545,6 +550,9 @@
4C3FFD9D16DAF60600DF9186 /* FilterBar.xib */,
4C76156F1764C0E20015A1A6 /* InspectorView.xib */,
4CE39AC016ECE359000FE29D /* IconSelection.xib */,
4C74DD03177BD00E0034A9DB /* CustomFieldView.xib */,
4C74DD05177BD1640034A9DB /* MPCustomFieldView.h */,
4C74DD06177BD1640034A9DB /* MPCustomFieldView.m */,
4CE8247316E2F2B900573141 /* MPOverlayView.h */,
4CE8247416E2F2B900573141 /* MPOverlayView.m */,
4CFC53BD16E94729007396BE /* MPShadowBox.h */,
@@ -1272,6 +1280,7 @@
4CF7805F176E75110032EE71 /* ServerSettings.xib in Resources */,
4C7F35681779DFFB00C57890 /* Errors.strings in Resources */,
4CD5D702177A5EE400100649 /* DocumentSettingsWindow.xib in Resources */,
4C74DD04177BD00E0034A9DB /* CustomFieldView.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -1432,6 +1441,7 @@
4C2A6134177A1D5F00C9826C /* KPLErrorCodes.m in Sources */,
4CD5D705177A5F3300100649 /* MPDocumentSettingsWindowController.m in Sources */,
4C5EC302177B700D00DA955B /* MPRootAdapter.m in Sources */,
4C74DD07177BD1640034A9DB /* MPCustomFieldView.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};

View File

@@ -137,7 +137,6 @@
<string key="NSFrameSize">{299, 30}</string>
<reference key="NSSuperview" ref="87082330"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<string key="NSClassName">HNHGradientView</string>
</object>
@@ -202,13 +201,13 @@
<string key="NSFrame">{{0, 31}, {299, 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">
@@ -216,7 +215,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>
@@ -249,7 +247,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 335}, {259, 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>
@@ -284,7 +281,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>
@@ -305,7 +301,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 283}, {259, 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>
@@ -327,7 +322,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 231}, {259, 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>
@@ -349,7 +343,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>
@@ -370,7 +363,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="25956638"/>
<string key="NSReuseIdentifierKey">_NS:1535</string>
<bool key="NSEnabled">YES</bool>
@@ -391,7 +383,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 179}, {259, 22}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="172507372"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
@@ -413,7 +404,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 152}, {259, 19}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="451174458"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<string key="NSHuggingPriority">{250, 750}</string>
@@ -443,7 +433,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 131}, {42, 14}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="889716404"/>
<string key="NSReuseIdentifierKey">_NS:1535</string>
<bool key="NSEnabled">YES</bool>
@@ -464,7 +453,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{20, 105}, {259, 18}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="13391205"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
@@ -486,7 +474,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 35}, {46, 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>
@@ -511,7 +498,6 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{17, 16}, {43, 11}}</string>
<reference key="NSSuperview" ref="726109125"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="894571713"/>
<string key="NSReuseIdentifierKey">_NS:1535</string>
<bool key="NSEnabled">YES</bool>
@@ -529,8 +515,6 @@
</object>
</array>
<string key="NSFrameSize">{299, 399}</string>
<reference key="NSSuperview" ref="166081160"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="734056912"/>
<string key="NSReuseIdentifierKey">_NS:11</string>
</object>
@@ -557,7 +541,7 @@
<int key="NSvFlags">2322</int>
<string key="NSFrameSize">{257, 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">
@@ -674,7 +658,7 @@
</array>
<string key="NSFrame">{{20, 20}, {259, 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"/>
@@ -934,7 +918,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">
@@ -942,7 +926,8 @@
<int key="NSvFlags">268</int>
<string key="NSFrame">{{247, 362}, {32, 19}}</string>
<reference key="NSSuperview" ref="177600245"/>
<reference key="NSNextKeyView" ref="894571713"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="166081160"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="466119848">
@@ -970,6 +955,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>
@@ -987,6 +973,8 @@
</object>
</array>
<string key="NSFrameSize">{299, 399}</string>
<reference key="NSSuperview" ref="166081160"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="40836012"/>
</object>
<string key="NSLabel">Fields</string>
@@ -994,13 +982,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>
@@ -1149,6 +1137,22 @@
</object>
<int key="connectionID">1554</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">customFieldsTextField</string>
<reference key="source" ref="1001"/>
<reference key="destination" ref="40836012"/>
</object>
<int key="connectionID">2005</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">addCustomField:</string>
<reference key="source" ref="1001"/>
<reference key="destination" ref="966066653"/>
</object>
<int key="connectionID">2006</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">imageView</string>
@@ -3836,7 +3840,7 @@
<nil key="activeLocalization"/>
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
<int key="maxID">2004</int>
<int key="maxID">2008</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
@@ -3883,22 +3887,26 @@
<object class="IBPartialClassDescription">
<string key="className">MPInspectorViewController</string>
<string key="superclassName">MPViewController</string>
<object class="NSMutableDictionary" key="actions">
<string key="NS.key.0">_popUpPasswordGenerator:</string>
<string key="NS.object.0">id</string>
</object>
<object class="NSMutableDictionary" key="actionInfosByName">
<string key="NS.key.0">_popUpPasswordGenerator:</string>
<object class="IBActionInfo" key="NS.object.0">
<dictionary class="NSMutableDictionary" key="actions">
<string key="_popUpPasswordGenerator:">id</string>
<string key="addCustomField:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="_popUpPasswordGenerator:">
<string key="name">_popUpPasswordGenerator:</string>
<string key="candidateClassName">id</string>
</object>
</object>
<object class="IBActionInfo" key="addCustomField:">
<string key="name">addCustomField:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="URLTextField">NSTextField</string>
<string key="attachmentTableView">NSTableView</string>
<string key="bottomBar">HNHGradientView</string>
<string key="createdTextField">NSTextField</string>
<string key="customFieldsTextField">NSTextField</string>
<string key="generatePasswordButton">NSButton</string>
<string key="infoTabControl">NSSegmentedControl</string>
<string key="itemImageView">MPPopupImageView</string>
@@ -3928,6 +3936,10 @@
<string key="name">createdTextField</string>
<string key="candidateClassName">NSTextField</string>
</object>
<object class="IBToOneOutletInfo" key="customFieldsTextField">
<string key="name">customFieldsTextField</string>
<string key="candidateClassName">NSTextField</string>
</object>
<object class="IBToOneOutletInfo" key="generatePasswordButton">
<string key="name">generatePasswordButton</string>
<string key="candidateClassName">NSButton</string>

708
MacPass/CustomFieldView.xib Normal file
View File

@@ -0,0 +1,708 @@
<?xml version="1.0" encoding="UTF-8"?>
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1080</int>
<string key="IBDocument.SystemVersion">12E55</string>
<string key="IBDocument.InterfaceBuilderVersion">3084</string>
<string key="IBDocument.AppKitVersion">1187.39</string>
<string key="IBDocument.HIToolboxVersion">626.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="NS.object.0">3084</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>IBNSLayoutConstraint</string>
<string>NSButton</string>
<string>NSButtonCell</string>
<string>NSCustomObject</string>
<string>NSCustomView</string>
<string>NSTextField</string>
<string>NSTextFieldCell</string>
</array>
<array key="IBDocument.PluginDependencies">
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
</array>
<object class="NSMutableDictionary" key="IBDocument.Metadata">
<string key="NS.key.0">PluginDependencyRecalculationVersion</string>
<integer value="1" key="NS.object.0"/>
</object>
<array class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
<object class="NSCustomObject" id="1001">
<string key="NSClassName">NSObject</string>
</object>
<object class="NSCustomObject" id="1003">
<string key="NSClassName">FirstResponder</string>
</object>
<object class="NSCustomObject" id="1004">
<string key="NSClassName">NSApplication</string>
</object>
<object class="NSCustomView" id="1005">
<reference key="NSNextResponder"/>
<int key="NSvFlags">268</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSButton" id="883661358">
<reference key="NSNextResponder" ref="1005"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{130, 1}, {32, 19}}</string>
<reference key="NSSuperview" ref="1005"/>
<reference key="NSWindow"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="591877581">
<int key="NSCellFlags">-2080374784</int>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport">
<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="883661358"/>
<int key="NSButtonFlags">-2033958912</int>
<int key="NSButtonFlags2">164</int>
<object class="NSCustomResource" key="NSNormalImage">
<string key="NSClassName">NSImage</string>
<string key="NSResourceName">NSRemoveTemplate</string>
</object>
<string key="NSAlternateContents"/>
<string key="NSKeyEquivalent"/>
<int key="NSPeriodicDelay">400</int>
<int key="NSPeriodicInterval">75</int>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSTextField" id="718020345">
<reference key="NSNextResponder" ref="1005"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{-3, 28}, {168, 14}}</string>
<reference key="NSSuperview" ref="1005"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="431212201"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="116280110">
<int key="NSCellFlags">-1808793535</int>
<int key="NSCellFlags2">272761856</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport">
<string key="NSName">LucidaGrande</string>
<double key="NSSize">11</double>
<int key="NSfFlags">3100</int>
</object>
<string key="NSPlaceholderString">New Field</string>
<string key="NSCellIdentifier">_NS:9</string>
<reference key="NSControlView" ref="718020345"/>
<object class="NSColor" key="NSBackgroundColor" id="863763240">
<int key="NSColorSpace">6</int>
<string key="NSCatalogName">System</string>
<string key="NSColorName">textBackgroundColor</string>
<object class="NSColor" key="NSColor">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MQA</bytes>
</object>
</object>
<object class="NSColor" key="NSTextColor">
<int key="NSColorSpace">6</int>
<string key="NSCatalogName">System</string>
<string key="NSColorName">disabledControlTextColor</string>
<object class="NSColor" key="NSColor">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MC4zMzMzMzMzMzMzAA</bytes>
</object>
</object>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSTextField" id="431212201">
<reference key="NSNextResponder" ref="1005"/>
<int key="NSvFlags">268</int>
<string key="NSFrameSize">{122, 22}</string>
<reference key="NSSuperview" ref="1005"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="883661358"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="308384899">
<int key="NSCellFlags">-1804599231</int>
<int key="NSCellFlags2">272630784</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport">
<string key="NSName">LucidaGrande</string>
<double key="NSSize">13</double>
<int key="NSfFlags">1044</int>
</object>
<string key="NSPlaceholderString">Field Value</string>
<string key="NSCellIdentifier">_NS:9</string>
<reference key="NSControlView" ref="431212201"/>
<bool key="NSDrawsBackground">YES</bool>
<reference key="NSBackgroundColor" ref="863763240"/>
<object class="NSColor" key="NSTextColor">
<int key="NSColorSpace">6</int>
<string key="NSCatalogName">System</string>
<string key="NSColorName">textColor</string>
<object class="NSColor" key="NSColor">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MAA</bytes>
</object>
</object>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
</array>
<string key="NSFrameSize">{162, 42}</string>
<reference key="NSSuperview"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="718020345"/>
<string key="NSClassName">MPCustomFieldView</string>
</object>
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<array class="NSMutableArray" key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">removeCustomField:</string>
<reference key="source" ref="1003"/>
<reference key="destination" ref="883661358"/>
</object>
<int key="connectionID">44</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">valueTextField</string>
<reference key="source" ref="1005"/>
<reference key="destination" ref="431212201"/>
</object>
<int key="connectionID">20</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">deleteButton</string>
<reference key="source" ref="1005"/>
<reference key="destination" ref="883661358"/>
</object>
<int key="connectionID">45</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">labelTextField</string>
<reference key="source" ref="1005"/>
<reference key="destination" ref="718020345"/>
</object>
<int key="connectionID">46</int>
</object>
</array>
<object class="IBMutableOrderedSet" key="objectRecords">
<array key="orderedObjects">
<object class="IBObjectRecord">
<int key="objectID">0</int>
<array key="object" id="0"/>
<reference key="children" ref="1000"/>
<nil key="parent"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">-2</int>
<reference key="object" ref="1001"/>
<reference key="parent" ref="0"/>
<string key="objectName">File's Owner</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">-1</int>
<reference key="object" ref="1003"/>
<reference key="parent" ref="0"/>
<string key="objectName">First Responder</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">-3</int>
<reference key="object" ref="1004"/>
<reference key="parent" ref="0"/>
<string key="objectName">Application</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">1</int>
<reference key="object" ref="1005"/>
<array class="NSMutableArray" key="children">
<object class="IBNSLayoutConstraint" id="76102679">
<reference key="firstItem" ref="883661358"/>
<int key="firstAttribute">5</int>
<int key="relation">0</int>
<reference key="secondItem" ref="431212201"/>
<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="1005"/>
<int key="scoringType">6</int>
<float key="scoringTypeFloat">24</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="234531532">
<reference key="firstItem" ref="883661358"/>
<int key="firstAttribute">3</int>
<int key="relation">0</int>
<reference key="secondItem" ref="718020345"/>
<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="1005"/>
<int key="scoringType">6</int>
<float key="scoringTypeFloat">24</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="890884906">
<reference key="firstItem" ref="883661358"/>
<int key="firstAttribute">6</int>
<int key="relation">0</int>
<reference key="secondItem" ref="1005"/>
<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">8</int>
<float key="scoringTypeFloat">29</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="202199433">
<reference key="firstItem" ref="431212201"/>
<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>
<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="357768092">
<reference key="firstItem" ref="431212201"/>
<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="IBLayoutConstant" key="constant">
<double key="value">0.0</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="127458575">
<reference key="firstItem" ref="718020345"/>
<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">0.0</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="345167168">
<reference key="firstItem" ref="718020345"/>
<int key="firstAttribute">6</int>
<int key="relation">0</int>
<reference key="secondItem" ref="1005"/>
<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">8</int>
<float key="scoringTypeFloat">29</float>
<int key="contentType">3</int>
</object>
<object class="IBNSLayoutConstraint" id="194383483">
<reference key="firstItem" ref="718020345"/>
<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="IBLayoutConstant" key="constant">
<double key="value">0.0</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="13420140">
<reference key="firstItem" ref="1005"/>
<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">42</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">1</int>
</object>
<reference ref="431212201"/>
<reference ref="718020345"/>
<reference ref="883661358"/>
</array>
<reference key="parent" ref="0"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2</int>
<reference key="object" ref="431212201"/>
<array class="NSMutableArray" key="children">
<reference ref="308384899"/>
</array>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">3</int>
<reference key="object" ref="308384899"/>
<reference key="parent" ref="431212201"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">15</int>
<reference key="object" ref="357768092"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">16</int>
<reference key="object" ref="202199433"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">18</int>
<reference key="object" ref="13420140"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">21</int>
<reference key="object" ref="718020345"/>
<array class="NSMutableArray" key="children">
<reference ref="116280110"/>
</array>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">22</int>
<reference key="object" ref="116280110"/>
<reference key="parent" ref="718020345"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">30</int>
<reference key="object" ref="194383483"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">32</int>
<reference key="object" ref="345167168"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">34</int>
<reference key="object" ref="883661358"/>
<array class="NSMutableArray" key="children">
<reference ref="591877581"/>
<object class="IBNSLayoutConstraint" id="1070539584">
<reference key="firstItem" ref="883661358"/>
<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">32</double>
</object>
<float key="priority">1000</float>
<reference key="containingView" ref="883661358"/>
<int key="scoringType">3</int>
<float key="scoringTypeFloat">9</float>
<int key="contentType">1</int>
</object>
</array>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">35</int>
<reference key="object" ref="591877581"/>
<reference key="parent" ref="883661358"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">36</int>
<reference key="object" ref="890884906"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">39</int>
<reference key="object" ref="1070539584"/>
<reference key="parent" ref="883661358"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">40</int>
<reference key="object" ref="234531532"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">42</int>
<reference key="object" ref="76102679"/>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">43</int>
<reference key="object" ref="127458575"/>
<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 class="NSMutableArray" key="1.IBNSViewMetadataConstraints">
<reference ref="13420140"/>
<reference ref="194383483"/>
<reference ref="345167168"/>
<reference ref="127458575"/>
<reference ref="357768092"/>
<reference ref="202199433"/>
<reference ref="890884906"/>
<reference ref="234531532"/>
<reference ref="76102679"/>
</array>
<boolean value="NO" key="1.IBNSViewMetadataLastInspectedTranslatesAutoresizingMaskIntoConstraints"/>
<boolean value="NO" key="1.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="15.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="16.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="18.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="2.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="21.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="21.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="22.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="30.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="32.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array class="NSMutableArray" key="34.IBNSViewMetadataConstraints">
<reference ref="1070539584"/>
</array>
<boolean value="NO" key="34.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="34.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="35.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="36.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="39.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="40.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="42.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="43.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">46</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
<object class="IBPartialClassDescription">
<string key="className">HNHGradientView</string>
<string key="superclassName">NSView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/HNHGradientView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">MPCustomFieldView</string>
<string key="superclassName">NSView</string>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="deleteButton">NSButton</string>
<string key="labelTextField">NSTextField</string>
<string key="valueTextField">NSTextField</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
<object class="IBToOneOutletInfo" key="deleteButton">
<string key="name">deleteButton</string>
<string key="candidateClassName">NSButton</string>
</object>
<object class="IBToOneOutletInfo" key="labelTextField">
<string key="name">labelTextField</string>
<string key="candidateClassName">NSTextField</string>
</object>
<object class="IBToOneOutletInfo" key="valueTextField">
<string key="name">valueTextField</string>
<string key="candidateClassName">NSTextField</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/MPCustomFieldView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">MPInspectorViewController</string>
<string key="superclassName">MPViewController</string>
<dictionary class="NSMutableDictionary" key="actions">
<string key="addCustomField:">id</string>
<string key="removeCustomField:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="addCustomField:">
<string key="name">addCustomField:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo" key="removeCustomField:">
<string key="name">removeCustomField:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
<dictionary class="NSMutableDictionary" key="outlets">
<string key="URLTextField">NSTextField</string>
<string key="attachmentTableView">NSTableView</string>
<string key="bottomBar">HNHGradientView</string>
<string key="createdTextField">NSTextField</string>
<string key="customFieldsTextField">NSTextField</string>
<string key="generatePasswordButton">NSButton</string>
<string key="infoTabControl">NSSegmentedControl</string>
<string key="itemImageView">MPPopupImageView</string>
<string key="itemNameTextfield">NSTextField</string>
<string key="modifiedTextField">NSTextField</string>
<string key="notesTextView">NSTextView</string>
<string key="passwordTextField">NSTextField</string>
<string key="tabView">NSTabView</string>
<string key="titleOrNameLabel">NSTextField</string>
<string key="titleTextField">NSTextField</string>
<string key="usernameTextField">NSTextField</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
<object class="IBToOneOutletInfo" key="URLTextField">
<string key="name">URLTextField</string>
<string key="candidateClassName">NSTextField</string>
</object>
<object class="IBToOneOutletInfo" key="attachmentTableView">
<string key="name">attachmentTableView</string>
<string key="candidateClassName">NSTableView</string>
</object>
<object class="IBToOneOutletInfo" key="bottomBar">
<string key="name">bottomBar</string>
<string key="candidateClassName">HNHGradientView</string>
</object>
<object class="IBToOneOutletInfo" key="createdTextField">
<string key="name">createdTextField</string>
<string key="candidateClassName">NSTextField</string>
</object>
<object class="IBToOneOutletInfo" key="customFieldsTextField">
<string key="name">customFieldsTextField</string>
<string key="candidateClassName">NSTextField</string>
</object>
<object class="IBToOneOutletInfo" key="generatePasswordButton">
<string key="name">generatePasswordButton</string>
<string key="candidateClassName">NSButton</string>
</object>
<object class="IBToOneOutletInfo" key="infoTabControl">
<string key="name">infoTabControl</string>
<string key="candidateClassName">NSSegmentedControl</string>
</object>
<object class="IBToOneOutletInfo" key="itemImageView">
<string key="name">itemImageView</string>
<string key="candidateClassName">MPPopupImageView</string>
</object>
<object class="IBToOneOutletInfo" key="itemNameTextfield">
<string key="name">itemNameTextfield</string>
<string key="candidateClassName">NSTextField</string>
</object>
<object class="IBToOneOutletInfo" key="modifiedTextField">
<string key="name">modifiedTextField</string>
<string key="candidateClassName">NSTextField</string>
</object>
<object class="IBToOneOutletInfo" key="notesTextView">
<string key="name">notesTextView</string>
<string key="candidateClassName">NSTextView</string>
</object>
<object class="IBToOneOutletInfo" key="passwordTextField">
<string key="name">passwordTextField</string>
<string key="candidateClassName">NSTextField</string>
</object>
<object class="IBToOneOutletInfo" key="tabView">
<string key="name">tabView</string>
<string key="candidateClassName">NSTabView</string>
</object>
<object class="IBToOneOutletInfo" key="titleOrNameLabel">
<string key="name">titleOrNameLabel</string>
<string key="candidateClassName">NSTextField</string>
</object>
<object class="IBToOneOutletInfo" key="titleTextField">
<string key="name">titleTextField</string>
<string key="candidateClassName">NSTextField</string>
</object>
<object class="IBToOneOutletInfo" key="usernameTextField">
<string key="name">usernameTextField</string>
<string key="candidateClassName">NSTextField</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/MPInspectorViewController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">MPPopupImageView</string>
<string key="superclassName">NSImageView</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/MPPopupImageView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">MPViewController</string>
<string key="superclassName">NSViewController</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/MPViewController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">NSLayoutConstraint</string>
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/NSLayoutConstraint.h</string>
</object>
</object>
</array>
</object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
<int key="IBDocument.defaultPropertyAccessControl">3</int>
<object class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">
<string key="NS.key.0">NSRemoveTemplate</string>
<string key="NS.object.0">{8, 8}</string>
</object>
<bool key="IBDocument.UseAutolayout">YES</bool>
</data>
</archive>

View File

@@ -0,0 +1,17 @@
//
// MPCustomFieldView.h
// MacPass
//
// Created by Michael Starke on 27.06.13.
// Copyright (c) 2013 HicknHack Software GmbH. All rights reserved.
//
#import <Cocoa/Cocoa.h>
@interface MPCustomFieldView : NSView
@property (assign) IBOutlet NSTextField *labelTextField;
@property (assign) IBOutlet NSTextField *valueTextField;
@property (assign) IBOutlet NSButton *deleteButton;
@end

View File

@@ -0,0 +1,14 @@
//
// MPCustomFieldView.m
// MacPass
//
// Created by Michael Starke on 27.06.13.
// Copyright (c) 2013 HicknHack Software GmbH. All rights reserved.
//
#import "MPCustomFieldView.h"
@implementation MPCustomFieldView
@end

View File

@@ -30,6 +30,7 @@
@property (assign) IBOutlet NSSegmentedControl *infoTabControl;
@property (assign) IBOutlet NSTableView *attachmentTableView;
@property (assign) IBOutlet NSTextView *notesTextView;
@property (assign) IBOutlet NSTextField *customFieldsTextField;
/* Seperate call to ensure alle registered objects are in place */

View File

@@ -16,6 +16,7 @@
#import "MPDocumentWindowController.h"
#import "MPOutlineViewController.h"
#import "MPDocument.h"
#import "MPCustomFieldView.h"
#import "KdbLib.h"
#import "Kdb4Node.h"
@@ -49,6 +50,10 @@ enum {
@property (nonatomic, assign) NSUInteger activeTab;
@property (assign) IBOutlet NSTabView *tabView;
@property (retain) NSArrayController *attachmentsController;
@property (retain) NSMutableArray *customFieldViews;
- (IBAction)addCustomField:(id)sender;
- (IBAction)removeCustomField:(id)sender;
@end
@@ -65,6 +70,7 @@ enum {
_selectedGroup = nil;
_attachmentsController = [[NSArrayController alloc] init];
_activeTab = MPGeneralTab;
_customFieldViews = [[NSMutableArray alloc] initWithCapacity:5];
}
return self;
}
@@ -73,6 +79,7 @@ enum {
[[NSNotificationCenter defaultCenter] removeObserver:self];
[_activePopover release];
[_attachmentsController release];
[_customFieldViews release];
[super dealloc];
}
@@ -186,7 +193,7 @@ enum {
[self.URLTextField setStringValue:@""];
// Reste toggle. Do not call setter on control or the bindings wont update
self.activeTab = MPGeneralTab;
self.activeTab = MPGeneralTab;
[self _setInputEnabled:YES];
}
@@ -231,7 +238,7 @@ enum {
[self.usernameTextField setEnabled:enabled];
[self.URLTextField setEnabled:enabled];
[self.generatePasswordButton setEnabled:enabled];
[self.infoTabControl setEnabled:enabled forSegment:MPAttachmentsTab];
[self.infoTabControl setEnabled:enabled forSegment:MPNotesTab];
[self.infoTabControl setEnabled:enabled forSegment:MPCustomFieldsTab];
@@ -278,6 +285,72 @@ enum {
_activePopover = nil;
}
#pragma mark Actions
- (IBAction)addCustomField:(id)sender {
NSArray *topLevelObjects;
BOOL success = [[NSBundle mainBundle] loadNibNamed:@"CustomFieldView" owner:self topLevelObjects:&topLevelObjects];
if(success) {
id object = [topLevelObjects lastObject];
MPCustomFieldView *fieldView;
if(![object isKindOfClass:[MPCustomFieldView class]]) {
fieldView = topLevelObjects[0];
}
else {
fieldView = object;
}
[fieldView.deleteButton setTarget:self];
NSTabViewItem *tabViewItem = [self.tabView tabViewItemAtIndex:MPCustomFieldsTab];
NSView *predecessorView = [self.customFieldViews lastObject];
if(!predecessorView) {
predecessorView = _customFieldsTextField;
}
[[tabViewItem view] addSubview:fieldView];
[self.customFieldViews addObject:fieldView];
NSDictionary *views = NSDictionaryOfVariableBindings(fieldView, predecessorView);
[[tabViewItem view] addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-20-[fieldView]-20-|"
options:0
metrics:nil
views:views]];
[[tabViewItem view] addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:[predecessorView]-10-[fieldView]"
options:0
metrics:nil
views:views]];
[[tabViewItem view] layoutSubtreeIfNeeded];
}
}
- (IBAction)removeCustomField:(id)sender {
NSControl *button = sender;
NSView *fieldView = [button superview];
if([self.customFieldViews containsObject:fieldView]) {
[fieldView removeFromSuperview];
NSUInteger index = [self.customFieldViews indexOfObject:fieldView];
NSView *newPredecessorView = nil;
NSView *newSuccesorView = nil;
if(index == 0) {
newPredecessorView = _customFieldsTextField;
}
else {
NSAssert(index > 0, @"");
newPredecessorView = [self.customFieldViews objectAtIndex:index - 1];
}
NSTabViewItem *tabViewItem = [self.tabView tabViewItemAtIndex:MPCustomFieldsTab];
if(index < [self.customFieldViews count] - 1) {
newSuccesorView = [self.customFieldViews objectAtIndex:index + 1];
NSDictionary *views = NSDictionaryOfVariableBindings(newPredecessorView, newSuccesorView);
[[tabViewItem view] addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:[newPredecessorView]-10-[newSuccesorView]"
options:0
metrics:nil
views:views]];
}
[self.customFieldViews removeObject:fieldView];
[[tabViewItem view] layoutSubtreeIfNeeded];
}
}
#pragma mark Notificiations
- (void)_didChangeCurrentItem:(NSNotification *)notification {
MPDocumentWindowController *sender = [notification object];
@@ -311,5 +384,4 @@ enum {
}
return view;
}
@end

View File

@@ -48,7 +48,7 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1324</string>
<string>1354</string>
<key>LSMinimumSystemVersion</key>
<string>${MACOSX_DEPLOYMENT_TARGET}</string>
<key>NSHumanReadableCopyright</key>