From b3bbcf55fbc9322a4db5ffd9bb943502808de61d Mon Sep 17 00:00:00 2001 From: michael starke Date: Mon, 29 Apr 2013 01:32:56 +0200 Subject: [PATCH] Removed Create controller. Added change Password controller. TODO: Add step to set password if file has non on first save! --- MacPass.xcodeproj/project.pbxproj | 20 +- MacPass/CreationView.xib | 1248 ------------------------ MacPass/MPCreationViewController.h | 15 - MacPass/MPCreationViewController.m | 76 -- MacPass/MPDatabaseDocument.h | 2 +- MacPass/MPDatabaseDocument.m | 34 +- MacPass/MPMainWindowController.h | 5 + MacPass/MPMainWindowController.m | 58 +- MacPass/MPPasswordEditViewController.h | 13 + MacPass/MPPasswordEditViewController.m | 66 ++ MacPass/MacPass-Info.plist | 2 +- MacPass/PasswordEditView.xib | 881 +++++++++++++++++ MacPass/PasswordInputView.xib | 18 +- MacPass/en.lproj/MainMenu.xib | 683 ++----------- 14 files changed, 1118 insertions(+), 2003 deletions(-) delete mode 100644 MacPass/CreationView.xib delete mode 100644 MacPass/MPCreationViewController.h delete mode 100644 MacPass/MPCreationViewController.m create mode 100644 MacPass/MPPasswordEditViewController.h create mode 100644 MacPass/MPPasswordEditViewController.m create mode 100644 MacPass/PasswordEditView.xib diff --git a/MacPass.xcodeproj/project.pbxproj b/MacPass.xcodeproj/project.pbxproj index a55cb6d6..183e7ad5 100644 --- a/MacPass.xcodeproj/project.pbxproj +++ b/MacPass.xcodeproj/project.pbxproj @@ -79,6 +79,7 @@ 4C77E37315B84A240093A587 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C77E37215B84A240093A587 /* main.m */; }; 4C77E37A15B84A240093A587 /* MPAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C77E37915B84A240093A587 /* MPAppDelegate.m */; }; 4C77E37D15B84A240093A587 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4C77E37B15B84A240093A587 /* MainMenu.xib */; }; + 4C7E832A172DE2F2002493D8 /* MPPasswordEditViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C7E8329172DE2F2002493D8 /* MPPasswordEditViewController.m */; }; 4C811C8316ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C811C8216ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.m */; }; 4C83814215BF4677001AE468 /* MPMainWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4C83814115BF4677001AE468 /* MPMainWindowController.m */; }; 4C888C9016EB6C91003D34A1 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 4C888C8E16EB6C91003D34A1 /* Localizable.strings */; }; @@ -103,6 +104,7 @@ 4CB9339916D3A0DD00A13B5D /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 4CB9339716D3A0DD00A13B5D /* Credits.rtf */; }; 4CBA2ABA17074C07006D8139 /* MPSettingsHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CBA2AB917074C07006D8139 /* MPSettingsHelper.m */; }; 4CBA981815BA0DB600721965 /* MPDatabaseDocument.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CBA981715BA0DB600721965 /* MPDatabaseDocument.m */; }; + 4CBFA240172B385D006090DF /* PasswordEditView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 4CBFA23F172B385D006090DF /* PasswordEditView.xib */; }; 4CC1AEBE16D4467C006D2AAB /* KdbTree+MPAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CC1AEBD16D4467C006D2AAB /* KdbTree+MPAdditions.m */; }; 4CC6259115BA1C99002F5B11 /* MPOutlineViewDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CC6259015BA1C99002F5B11 /* MPOutlineViewDelegate.m */; }; 4CD78ABC16D155FF00768A1D /* 07_NotepadTemplate.pdf in Resources */ = {isa = PBXBuildFile; fileRef = 4CD78AB716D155FF00768A1D /* 07_NotepadTemplate.pdf */; }; @@ -118,8 +120,6 @@ 4CE8246F16E2E93400573141 /* MPOverlayWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE8246E16E2E93400573141 /* MPOverlayWindowController.m */; }; 4CE8247516E2F2B900573141 /* MPOverlayView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE8247416E2F2B900573141 /* MPOverlayView.m */; }; 4CFC53BF16E94729007396BE /* MPShadowBox.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CFC53BE16E94729007396BE /* MPShadowBox.m */; }; - 6E71971217203FB700E4C5FC /* MPCreationViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6E71971017203FB600E4C5FC /* MPCreationViewController.m */; }; - 6E71971317203FB700E4C5FC /* CreationView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 6E71971117203FB600E4C5FC /* CreationView.xib */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -257,6 +257,8 @@ 4C77E37815B84A240093A587 /* MPAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MPAppDelegate.h; sourceTree = ""; }; 4C77E37915B84A240093A587 /* MPAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MPAppDelegate.m; sourceTree = ""; }; 4C77E37C15B84A240093A587 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainMenu.xib; sourceTree = ""; }; + 4C7E8328172DE2F2002493D8 /* MPPasswordEditViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPPasswordEditViewController.h; sourceTree = ""; }; + 4C7E8329172DE2F2002493D8 /* MPPasswordEditViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPPasswordEditViewController.m; sourceTree = ""; }; 4C811C8116ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPKeyfilePathControlDelegate.h; sourceTree = ""; }; 4C811C8216ECD06E00C4BAC6 /* MPKeyfilePathControlDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPKeyfilePathControlDelegate.m; sourceTree = ""; }; 4C83814015BF4677001AE468 /* MPMainWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPMainWindowController.h; sourceTree = ""; }; @@ -301,6 +303,7 @@ 4CBA2AB917074C07006D8139 /* MPSettingsHelper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPSettingsHelper.m; sourceTree = ""; }; 4CBA981615BA0DB600721965 /* MPDatabaseDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPDatabaseDocument.h; sourceTree = ""; }; 4CBA981715BA0DB600721965 /* MPDatabaseDocument.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPDatabaseDocument.m; sourceTree = ""; }; + 4CBFA23F172B385D006090DF /* PasswordEditView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = PasswordEditView.xib; sourceTree = ""; }; 4CC1AEBC16D4467C006D2AAB /* KdbTree+MPAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "KdbTree+MPAdditions.h"; sourceTree = ""; }; 4CC1AEBD16D4467C006D2AAB /* KdbTree+MPAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "KdbTree+MPAdditions.m"; sourceTree = ""; }; 4CC6258F15BA1C99002F5B11 /* MPOutlineViewDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPOutlineViewDelegate.h; sourceTree = ""; }; @@ -324,9 +327,6 @@ 4CE8247416E2F2B900573141 /* MPOverlayView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPOverlayView.m; sourceTree = ""; }; 4CFC53BD16E94729007396BE /* MPShadowBox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPShadowBox.h; sourceTree = ""; }; 4CFC53BE16E94729007396BE /* MPShadowBox.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPShadowBox.m; sourceTree = ""; }; - 6E71970F17203FB600E4C5FC /* MPCreationViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPCreationViewController.h; sourceTree = ""; }; - 6E71971017203FB600E4C5FC /* MPCreationViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPCreationViewController.m; sourceTree = ""; }; - 6E71971117203FB600E4C5FC /* CreationView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CreationView.xib; sourceTree = ""; }; 6E719715172058BA00E4C5FC /* MPDatabaseVersion.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MPDatabaseVersion.h; sourceTree = ""; }; /* End PBXFileReference section */ @@ -348,12 +348,12 @@ 4C06398C15B980480004DE27 /* Views */ = { isa = PBXGroup; children = ( - 6E71971117203FB600E4C5FC /* CreationView.xib */, 4C25D58616CF0FAA00F6806C /* EntryView.xib */, 4CA0B2EF15BCADC800654E32 /* GeneralSettings.xib */, 4C77E37B15B84A240093A587 /* MainMenu.xib */, 4C61EA0416D2FFE200AC519E /* OutlineView.xib */, 4CA0B2EC15BCADAC00654E32 /* SettingsWindow.xib */, + 4CBFA23F172B385D006090DF /* PasswordEditView.xib */, 4C6B0E8B16C9B99B00A9ED23 /* PasswordInputView.xib */, 4C5A11FD1708DE8700223D8A /* PasswordCreatorView.xib */, 4C25D58416CF0F8800F6806C /* WelcomeView.xib */, @@ -641,6 +641,8 @@ 4C2E382516D1470200037A9D /* MPViewController.m */, 4C65FAE616D16DDB006E0577 /* MPPasswordInputController.h */, 4C65FAE716D16DDB006E0577 /* MPPasswordInputController.m */, + 4C7E8328172DE2F2002493D8 /* MPPasswordEditViewController.h */, + 4C7E8329172DE2F2002493D8 /* MPPasswordEditViewController.m */, 4CDF01A116D1B76700D0AC08 /* MPEntryViewController.h */, 4CDF01A216D1B76700D0AC08 /* MPEntryViewController.m */, 4C61EA0116D2FD0800AC519E /* MPOutlineViewController.h */, @@ -653,8 +655,6 @@ 4C40AC5B170782730073D1C3 /* MPAbstractSettingsViewController.m */, 4C5A11FB1708DE8700223D8A /* MPPasswordCreatorViewController.h */, 4C5A11FC1708DE8700223D8A /* MPPasswordCreatorViewController.m */, - 6E71970F17203FB600E4C5FC /* MPCreationViewController.h */, - 6E71971017203FB600E4C5FC /* MPCreationViewController.m */, ); name = "View Controller"; sourceTree = ""; @@ -855,7 +855,7 @@ 4CE39AC116ECE359000FE29D /* IconSelection.xib in Resources */, 4C5A11FF1708DE8800223D8A /* PasswordCreatorView.xib in Resources */, 4C1DDCDD1711ECEB00C98DA3 /* PasswordCreatorWindow.xib in Resources */, - 6E71971317203FB700E4C5FC /* CreationView.xib in Resources */, + 4CBFA240172B385D006090DF /* PasswordEditView.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -961,7 +961,7 @@ 4C46B88B1706D16E0046109A /* NSData+MPRandomBytes.m in Sources */, 4C40AC5C170782730073D1C3 /* MPAbstractSettingsViewController.m in Sources */, 4C5A11FE1708DE8700223D8A /* MPPasswordCreatorViewController.m in Sources */, - 6E71971217203FB700E4C5FC /* MPCreationViewController.m in Sources */, + 4C7E832A172DE2F2002493D8 /* MPPasswordEditViewController.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/MacPass/CreationView.xib b/MacPass/CreationView.xib deleted file mode 100644 index 3dd39f02..00000000 --- a/MacPass/CreationView.xib +++ /dev/null @@ -1,1248 +0,0 @@ - - - - 1070 - 12C60 - 2549 - 1187.34 - 625.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 2549 - - - IBNSLayoutConstraint - NSButton - NSButtonCell - NSCustomObject - NSCustomView - NSPathCell - NSPathControl - NSSecureTextField - NSSecureTextFieldCell - NSTextField - NSTextFieldCell - - - com.apple.InterfaceBuilder.CocoaPlugin - - - PluginDependencyRecalculationVersion - - - - - MPCreationViewController - - - FirstResponder - - - NSApplication - - - - 268 - - - - 268 - {{17, 20}, {449, 42}} - - - _NS:9 - {250, 750} - YES - - 67108864 - 272891904 - A KeePass database can be encrypted with a password and/or a keyfile. If both methods are used to encrypt the database, both will be required to decrypt the database. - - LucidaGrande - 11 - 16 - - _NS:9 - - - 6 - System - controlColor - - 3 - MC42NjY2NjY2NjY3AA - - - - 6 - System - controlTextColor - - 3 - MAA - - - - NO - YES - - - - 268 - {{146, 179}, {191, 22}} - - - - _NS:9 - YES - - 342884416 - 272630848 - - - LucidaGrande - 13 - 1044 - - _NS:9 - - YES - - 6 - System - textBackgroundColor - - 3 - MQA - - - - 6 - System - textColor - - - - NSAllRomanInputSourcesLocaleIdentifier - - - NO - - - - 268 - {{37, 181}, {104, 17}} - - - - _NS:1535 - YES - - 68157504 - 272630784 - Verify Password - - _NS:1535 - - - - - NO - - - - 268 - {{172, 241}, {139, 17}} - - - - _NS:1535 - YES - - 68157504 - 272630784 - Create New Database - - _NS:1535 - - - - - NO - - - - 268 - {{180, 106}, {82, 32}} - - - - _NS:9 - YES - - 67108864 - 134217728 - Cancel - - _NS:9 - - -2038284288 - 129 - - Gw - 200 - 25 - - NO - - - - 268 - - Apple URL pasteboard type - NSFilenamesPboardType - - {{143, 150}, {197, 22}} - - - - _NS:9 - YES - - 337641473 - 131072 - - LucidaGrande - 11 - 3100 - - _NS:9 - - - 2 - - - NO - - - - 268 - {{146, 211}, {191, 22}} - - - - _NS:9 - YES - - 342884416 - 272630848 - - - _NS:9 - - YES - - - - NSAllRomanInputSourcesLocaleIdentifier - - - NO - - - - 268 - {{77, 213}, {64, 17}} - - - - _NS:1535 - YES - - 68157504 - 272630784 - Password - - _NS:1535 - - - - - NO - - - - 268 - {{95, 155}, {46, 17}} - - - - _NS:1535 - YES - - 68157504 - 272630784 - Keyfile - - _NS:1535 - - - - - NO - - - - 268 - {{262, 106}, {81, 32}} - - - - _NS:9 - {250, 250} - YES - - 67108864 - 134217728 - Create - - _NS:9 - - -2038284288 - 129 - - DQ - 200 - 25 - - NO - - - {483, 380} - - - - NSView - - - - - - - view - - - - 2 - - - - passwordTextField - - - - 199 - - - - keyPathControl - - - - 200 - - - - _new: - - - - 201 - - - - validatePasswordTextField - - - - 202 - - - - errorInfoTextField - - - - 203 - - - - - - 0 - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - -3 - - - Application - - - 1 - - - - - 5 - 0 - - 6 - 1 - - 12 - - 1000 - - 9 - 40 - 3 - - - - 6 - 0 - - 6 - 1 - - 0.0 - - 1000 - - 9 - 40 - 2 - - - - 3 - 0 - - 4 - 1 - - 20 - - 1000 - - 6 - 24 - 3 - - - - 11 - 0 - - 11 - 1 - - 0.0 - - 1000 - - 6 - 24 - 2 - - - - 11 - 0 - - 11 - 1 - - 0.0 - - 1000 - - 6 - 24 - 2 - - - - 6 - 0 - - 6 - 1 - - 0.0 - - 1000 - - 9 - 40 - 2 - - - - 5 - 0 - - 5 - 1 - - 0.0 - - 1000 - - 9 - 40 - 2 - - - - 3 - 0 - - 4 - 1 - - 8 - - 1000 - - 9 - 40 - 3 - - - - 5 - 0 - - 6 - 1 - - 8 - - 1000 - - 6 - 24 - 3 - - - - 9 - 0 - - 9 - 1 - - 0.0 - - 1000 - - 6 - 24 - 2 - - - - 10 - 0 - - 10 - 1 - - 0.0 - - 1000 - - 9 - 40 - 2 - - - - 9 - 0 - - 9 - 1 - - 0.0 - - 1000 - - 9 - 40 - 2 - - - - 3 - 0 - - 4 - 1 - - 10 - - 1000 - - 9 - 40 - 3 - - - - 5 - 0 - - 6 - 1 - - 8 - - 1000 - - 9 - 40 - 3 - - - - 6 - 0 - - 6 - 1 - - 0.0 - - 1000 - - 6 - 24 - 2 - - - - 5 - 0 - - 5 - 1 - - 0.0 - - 1000 - - 6 - 24 - 2 - - - - 5 - 0 - - 6 - 1 - - 8 - - 1000 - - 6 - 24 - 3 - - - - 3 - 0 - - 4 - 1 - - 8 - - 1000 - - 9 - 40 - 3 - - - - 4 - 0 - - 4 - 1 - - 20 - - 1000 - - 8 - 29 - 3 - - - - 6 - 0 - - 6 - 1 - - 20 - - 1000 - - 9 - 40 - 3 - - - - 5 - 0 - - 5 - 1 - - 20 - - 1000 - - 9 - 40 - 3 - - - - 9 - 0 - - 9 - 1 - - 0.0 - - 1000 - - 9 - 40 - 2 - - - - 11 - 0 - - 11 - 1 - - 0.0 - - 1000 - - 6 - 24 - 2 - - - - 11 - 0 - - 11 - 1 - - 0.0 - - 1000 - - 6 - 24 - 2 - - - - - - - - - - - - - - - - 3 - - - - - - - - 4 - - - - - - - - 5 - - - - - - - - 6 - - - - - - 7 - 0 - - 0 - 1 - - 191 - - 1000 - - 3 - 9 - 1 - - - - - - 7 - - - - - - - - 8 - - - - - - - - 10 - - - - - - - - 11 - - - - - 15 - - - - - 16 - - - - - 18 - - - - - 19 - - - - - 20 - - - - - 21 - - - - - 61 - - - - - 62 - - - - - - - - 63 - - - - - - - - 64 - - - - - 66 - - - - - 71 - - - - - 78 - - - - - 84 - - - - - 86 - - - - - 94 - - - - - 96 - - - - - 97 - - - - - - - - 98 - - - - - 133 - - - - - 91 - - - - - 103 - - - - - 89 - - - - - 85 - - - - - 67 - - - - - 75 - - - - - 53 - - - - - 162 - - - - - 167 - - - - - 168 - - - - - 170 - - - - - 181 - - - - - 134 - - - - - 132 - - - - - 193 - - - - - 194 - - - - - 191 - - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - - - - - - - - - - - - - - - - - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - 203 - - - - - MPCreationViewController - MPViewController - - _new: - id - - - _new: - - _new: - id - - - - NSTextField - NSPathControl - NSSecureTextField - NSSecureTextField - - - - errorInfoTextField - NSTextField - - - keyPathControl - NSPathControl - - - passwordTextField - NSSecureTextField - - - validatePasswordTextField - NSSecureTextField - - - - IBProjectSource - ./Classes/MPCreationViewController.h - - - - MPViewController - NSViewController - - IBProjectSource - ./Classes/MPViewController.h - - - - NSLayoutConstraint - NSObject - - IBProjectSource - ./Classes/NSLayoutConstraint.h - - - - - 0 - IBCocoaFramework - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - YES - 3 - YES - - diff --git a/MacPass/MPCreationViewController.h b/MacPass/MPCreationViewController.h deleted file mode 100644 index 3593f424..00000000 --- a/MacPass/MPCreationViewController.h +++ /dev/null @@ -1,15 +0,0 @@ -// -// MPCreationViewController.h -// MacPass -// -// Created by Nathaniel Madura on 18/04/13. -// Copyright (c) 2013 HicknHack Software GmbH. All rights reserved. -// - -#import "MPViewController.h" - -@interface MPCreationViewController : MPViewController - -@property (retain) NSURL *fileURL; - -@end diff --git a/MacPass/MPCreationViewController.m b/MacPass/MPCreationViewController.m deleted file mode 100644 index 419d7b3d..00000000 --- a/MacPass/MPCreationViewController.m +++ /dev/null @@ -1,76 +0,0 @@ -// -// MPCreationViewController.m -// MacPass -// -// Created by Nathaniel Madura on 18/04/13. -// Copyright (c) 2013 HicknHack Software GmbH. All rights reserved. -// - -#import "MPCreationViewController.h" -#import "MPKeyfilePathControlDelegate.h" -#import "MPDatabaseController.h" -#import "MPDatabaseDocument.h" - -@interface MPCreationViewController () - -@property (assign) IBOutlet NSSecureTextField *passwordTextField; -@property (assign) IBOutlet NSSecureTextField *validatePasswordTextField; -@property (assign) IBOutlet NSPathControl *keyPathControl; -@property (retain) MPKeyfilePathControlDelegate *pathControlDelegate; -@property (assign) IBOutlet NSTextField *errorInfoTextField; - -- (IBAction)_new:(id)sender; -- (void)_showError; -- (void)_reset; - -@end - -@implementation MPCreationViewController - -- (id)init { - return [[MPCreationViewController alloc] initWithNibName:@"CreationView" bundle:nil]; -} - -- (void)dealloc { - [_fileURL release]; - [_pathControlDelegate release]; - [super dealloc]; -} - -- (void)didLoadView { - [self.keyPathControl setDelegate:self.pathControlDelegate]; - [self _reset]; -} - -- (NSResponder *)reconmendedFirstResponder { - return self.passwordTextField; -} - -- (IBAction)_new:(id)sender { - NSString *password = self.passwordTextField.stringValue; - NSURL *keyfile = [self.keyPathControl URL]; - if ([password compare:self.validatePasswordTextField.stringValue] != NSOrderedSame) - { - [self.errorInfoTextField setStringValue:@"Passwords do not match"]; - [self.errorInfoTextField setHidden:NO]; - } - [self _reset]; - - [[MPDatabaseController defaultController] newDatabaseAtURL:self.fileURL - databaseVersion:MPDatabaseVersion4 - password:password - keyfile:keyfile]; -} - -- (void)_reset { - [self.passwordTextField setStringValue:@""]; - [self.validatePasswordTextField setStringValue:@""]; - [self.keyPathControl setURL:nil]; - [self.errorInfoTextField setHidden:YES]; -} - -- (void)_showError { - [self.errorInfoTextField setHidden:NO]; -} - -@end diff --git a/MacPass/MPDatabaseDocument.h b/MacPass/MPDatabaseDocument.h index 4e070dae..33b6b8dc 100644 --- a/MacPass/MPDatabaseDocument.h +++ b/MacPass/MPDatabaseDocument.h @@ -25,7 +25,7 @@ APPKIT_EXTERN NSString *const MPDatabaseDocumentDocumentKey; @property (assign, readonly) MPDatabaseVersion version; + (id)documentWithFile:(NSURL *)file password:(NSString *)password keyfile:(NSURL *)key; -+ (id)documentWithNewDatabase:(MPDatabaseVersion)version; ++ (id)newDocument:(MPDatabaseVersion)version; + (id)newDocumentAtURL:(NSURL *)url databaseVersion:(MPDatabaseVersion)dbversion password:(NSString *)password keyfile:(NSURL *)key; - (id)initWithFile:(NSURL *)file password:(NSString *)password keyfile:(NSURL *)key; - (id)initWithNewDatabase:(MPDatabaseVersion)version; diff --git a/MacPass/MPDatabaseDocument.m b/MacPass/MPDatabaseDocument.m index 7a7615ed..76d68cd7 100644 --- a/MacPass/MPDatabaseDocument.m +++ b/MacPass/MPDatabaseDocument.m @@ -29,12 +29,11 @@ NSString *const MPDidLoadDatabaseNotification = @"DidLoadDataBaseNotification"; return [[[MPDatabaseDocument alloc] initWithFile:file password:password keyfile:key] autorelease]; } -+ (id)documentWithNewDatabase:(MPDatabaseVersion)version { ++ (id)newDocument:(MPDatabaseVersion)version { return [[[MPDatabaseDocument alloc] initWithNewDatabase:version] autorelease]; } -+ (id)newDocumentAtURL:(NSURL *)url databaseVersion:(MPDatabaseVersion)dbversion password:(NSString *)password keyfile:(NSURL *)key -{ ++ (id)newDocumentAtURL:(NSURL *)url databaseVersion:(MPDatabaseVersion)dbversion password:(NSString *)password keyfile:(NSURL *)key { return [[[MPDatabaseDocument alloc] initNewDocumentAtURL:url databaseVersion:dbversion password:password keyfile:key] autorelease]; } @@ -46,25 +45,11 @@ NSString *const MPDidLoadDatabaseNotification = @"DidLoadDataBaseNotification"; - (id)initNewDocumentAtURL:(NSURL *)url databaseVersion:(MPDatabaseVersion)dbversion password:(NSString *)password keyfile:(NSURL *)key { - self = [super init]; + self = [self initWithNewDatabase:dbversion]; if(self) { self.file = url; - self.key = key; self.password = password; - _isNewFile = YES; - switch(dbversion) { - case MPDatabaseVersion3: - self.tree = [[[Kdb3Tree alloc] init] autorelease]; - break; - case MPDatabaseVersion4: - self.tree = [[[Kdb4Tree alloc] init] autorelease]; - break; - default: - [self release]; - return nil; - } - KdbGroup *newGroup = [self.tree createGroup:self.tree.root]; - newGroup.name = @"Default"; + self.key = key; } return self; } @@ -151,18 +136,21 @@ NSString *const MPDidLoadDatabaseNotification = @"DidLoadDataBaseNotification"; } return YES; } - else - { + else { NSLog(@"File Error: %@", fileError); return NO; } } - (BOOL)saveAsFile:(NSURL *)file withPassword:(NSString *)password keyfile:(NSURL *)key { - return NO; + self.file = file; + self.password = password; + self.key = key; + return [self save]; } -- (KdbPassword *)passwordHash { +- (KdbPassword *)passwordHash { + // TODO: Use defaults to determine Encoding? return [[[KdbPassword alloc] initWithPassword:self.password passwordEncoding:NSUTF8StringEncoding keyFile:[self.key path]] autorelease]; } diff --git a/MacPass/MPMainWindowController.h b/MacPass/MPMainWindowController.h index 6fa9134f..77f18763 100644 --- a/MacPass/MPMainWindowController.h +++ b/MacPass/MPMainWindowController.h @@ -11,19 +11,23 @@ @class MPViewController; @class MPEntryViewController; @class MPInspectorTabViewController; +@class MPPasswordEditViewController; @class MPPasswordInputController; @class MPOutlineViewController; @class MPCreationViewController; + @interface MPMainWindowController : NSWindowController @property (readonly, retain) MPPasswordInputController *passwordInputController; +@property (readonly, retain) MPPasswordEditViewController *passwordEditController; @property (readonly, retain) MPEntryViewController *entryViewController; @property (readonly, retain) MPOutlineViewController *outlineViewController; @property (readonly, retain) MPInspectorTabViewController *inspectorTabViewController; @property (readonly, retain) MPCreationViewController *creationViewController; + /* Document handling */ - (void)newDocument:(id)sender; - (void)openDocument:(id)sender; @@ -32,6 +36,7 @@ - (void)showMainWindow:(id)sender; - (void)performFindPanelAction:(id)sender; - (void)clearOutlineSelection:(id)sender; +- (IBAction)editPassword:(id)sender; /* Clears the Search filter */ diff --git a/MacPass/MPMainWindowController.m b/MacPass/MPMainWindowController.m index e23c93be..fe4ff6c5 100644 --- a/MacPass/MPMainWindowController.m +++ b/MacPass/MPMainWindowController.m @@ -11,12 +11,12 @@ #import "MPDatabaseDocument.h" #import "MPPasswordInputController.h" #import "MPEntryViewController.h" +#import "MPPasswordEditViewController.h" #import "MPToolbarDelegate.h" #import "MPOutlineViewController.h" #import "MPMainWindowSplitViewDelegate.h" #import "MPInspectorTabViewController.h" #import "MPAppDelegate.h" -#import "MPCreationViewController.h" @interface MPMainWindowController () @@ -30,10 +30,10 @@ @property (retain) NSToolbar *toolbar; @property (retain) MPPasswordInputController *passwordInputController; +@property (retain) MPPasswordEditViewController *passwordEditController; @property (retain) MPEntryViewController *entryViewController; @property (retain) MPOutlineViewController *outlineViewController; @property (retain) MPInspectorTabViewController *inspectorTabViewController; -@property (retain) MPCreationViewController *creationViewController; @property (retain) MPToolbarDelegate *toolbarDelegate; @property (retain) MPMainWindowSplitViewDelegate *splitViewDelegate; @@ -52,11 +52,11 @@ -(id)init { self = [super initWithWindowNibName:@"MainWindow" owner:self]; if( self ) { - _toolbarDelegate = [[MPToolbarDelegate alloc] init]; + _toolbarDelegate = [[MPToolbarDelegate alloc] init]; _outlineViewController = [[MPOutlineViewController alloc] init]; _inspectorTabViewController = [[MPInspectorTabViewController alloc] init]; _splitViewDelegate = [[MPMainWindowSplitViewDelegate alloc] init]; - _creationViewController = [[MPCreationViewController alloc] init]; + _passwordEditController = [[MPPasswordEditViewController alloc] init]; [[NSBundle mainBundle] loadNibNamed:@"WelcomeView" owner:self topLevelObjects:NULL]; [self.welcomeView setAutoresizingMask:NSViewWidthSizable | NSViewHeightSizable]; @@ -92,7 +92,7 @@ { [super windowDidLoad]; [self _updateWindowTitle]; - + [[self.welcomeText cell] setBackgroundStyle:NSBackgroundStyleRaised]; CGFloat minWidht = MPMainWindowSplitViewDelegateMinimumContentWidth + MPMainWindowSplitViewDelegateMinimumOutlineWidth + [self.splitView dividerThickness]; [self.window setMinSize:NSMakeSize( minWidht, 400)]; @@ -117,7 +117,7 @@ [self.inspectorTabViewController.view setAutoresizesSubviews:NSViewWidthSizable | NSViewHeightSizable ]; [self.splitView replaceSubview:self.inspectorView with:[self.inspectorTabViewController view]]; [self.inspectorTabViewController updateResponderChain]; - + [self.splitView adjustSubviews]; [self toggleInspector:nil]; @@ -202,7 +202,7 @@ NSView *outlineView = [self.splitView subviews][MPSplitViewOutlineViewIndex]; BOOL outlineIsHidden = [self.splitView isSubviewCollapsed:outlineView]; NSString *title = outlineIsHidden ? NSLocalizedString(@"SHOW_OUTLINE_VIEW", @"") : NSLocalizedString(@"HIDE_OUTLINE_VIEW", @"Hide the Outline View"); - + [menuItem setTitle:title]; return YES; } @@ -227,7 +227,7 @@ } - (void)openDocument:(id)sender { - + if(!self.passwordInputController) { self.passwordInputController = [[[MPPasswordInputController alloc] init] autorelease]; } @@ -250,24 +250,28 @@ [self.outlineViewController clearSelection]; } -- (void)showEditForm:(id)sender { +- (void)editPassword:(id)sender { + if(!self.passwordEditController) { + _passwordEditController = [[MPPasswordEditViewController alloc] init]; + } + [self _setContentViewController:self.passwordEditController]; } - (void)newDocument:(id)sender { - if (!self.creationViewController) { - self.creationViewController = [[[MPCreationViewController alloc] init] autorelease]; - } - - NSSavePanel *savePanel = [NSSavePanel savePanel]; - [savePanel setAllowedFileTypes:@[@"kdbx", @"kdb"]]; - [savePanel beginSheetModalForWindow:self.window completionHandler:^(NSInteger result) { - if (result == NSFileHandlingPanelOKButton) { - NSURL *file = [savePanel URL]; - NSLog(@"Will create file at: %@", file); - self.creationViewController.fileURL = file; - [self _setContentViewController:self.creationViewController]; - } - }]; + // if (!self.creationViewController) { + // self.creationViewController = [[[MPCreationViewController alloc] init] autorelease]; + // } + // + // NSSavePanel *savePanel = [NSSavePanel savePanel]; + // [savePanel setAllowedFileTypes:@[@"kdbx", @"kdb"]]; + // [savePanel beginSheetModalForWindow:self.window completionHandler:^(NSInteger result) { + // if (result == NSFileHandlingPanelOKButton) { + // NSURL *file = [savePanel URL]; + // NSLog(@"Will create file at: %@", file); + // self.creationViewController.fileURL = file; + // [self _setContentViewController:self.creationViewController]; + // } + // }]; } - (void)saveDocument:(id)sender @@ -294,16 +298,16 @@ - (BOOL)_windowsIsLargeEnoughForInspectorView { return ( MPMainWindowSplitViewDelegateMinimumInspectorWidth < ([self.splitView frame].size.width - - MPMainWindowSplitViewDelegateMinimumContentWidth - - MPMainWindowSplitViewDelegateMinimumOutlineWidth - - 2 * [self.splitView dividerThickness]) ); + - MPMainWindowSplitViewDelegateMinimumContentWidth + - MPMainWindowSplitViewDelegateMinimumOutlineWidth + - 2 * [self.splitView dividerThickness]) ); } - (void)_resizeWindowForInspectorView { NSRect frame = [self.window frame]; NSView *outlinView = [self.splitView subviews][MPSplitViewOutlineViewIndex]; NSView *contentView = [self.splitView subviews][MPSplitViewContentViewIndex]; - + CGFloat outlineWidth = [self.splitView isSubviewCollapsed:outlinView] ? 0 : [outlinView frame].size.width; frame.size.width = outlineWidth + [contentView frame].size.width + MPMainWindowSplitViewDelegateMinimumInspectorWidth; [self.window setFrame:frame display:YES animate:YES]; diff --git a/MacPass/MPPasswordEditViewController.h b/MacPass/MPPasswordEditViewController.h new file mode 100644 index 00000000..3954a89d --- /dev/null +++ b/MacPass/MPPasswordEditViewController.h @@ -0,0 +1,13 @@ +// +// MPPasswordEditViewController.h +// MacPass +// +// Created by Michael Starke on 29.04.13. +// Copyright (c) 2013 HicknHack Software GmbH. All rights reserved. +// + +#import "MPViewController.h" + +@interface MPPasswordEditViewController : MPViewController + +@end diff --git a/MacPass/MPPasswordEditViewController.m b/MacPass/MPPasswordEditViewController.m new file mode 100644 index 00000000..9c62e7c5 --- /dev/null +++ b/MacPass/MPPasswordEditViewController.m @@ -0,0 +1,66 @@ +// +// MPPasswordEditViewController.m +// MacPass +// +// Created by Michael Starke on 29.04.13. +// Copyright (c) 2013 HicknHack Software GmbH. All rights reserved. +// + +#import "MPPasswordEditViewController.h" +#import "MPKeyfilePathControlDelegate.h" +#import "MPMainWindowController.h" +#import "MPDatabaseController.h" +#import "MPDatabaseDocument.h" + +@interface MPPasswordEditViewController () +@property (assign) IBOutlet NSSecureTextField *passwordTextField; +@property (assign) IBOutlet NSPathControl *keyfilePathControl; +@property (retain) MPKeyfilePathControlDelegate *pathControlDelegate; + +- (IBAction)_change:(id)sender; +- (IBAction)_cancel:(id)sender; + +@end + +@implementation MPPasswordEditViewController + +- (id)init { + return [self initWithNibName:@"PasswordEditView" bundle:nil]; +} + +- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { + self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; + if(self) { + _pathControlDelegate = [[MPKeyfilePathControlDelegate alloc] init]; + } + return self; +} + +- (void)dealloc { + [self.pathControlDelegate release]; + [super dealloc]; +} + +- (NSResponder *)reconmendedFirstResponder { + return self.passwordTextField; +} + +- (void)didLoadView { + [self.keyfilePathControl setDelegate:self.pathControlDelegate]; +} + +- (IBAction)_change:(id)sender { + MPDatabaseDocument *database = [MPDatabaseController defaultController].database; + database.key = [self.keyfilePathControl URL]; + database.password = [self.passwordTextField stringValue]; + [database save]; + MPMainWindowController *mainWindowController = (MPMainWindowController *)[[[self view] window] windowController]; + [mainWindowController showEntries]; + // save automatically? +} + +- (IBAction)_cancel:(id)sender { + MPMainWindowController *mainWindowController = (MPMainWindowController *)[[[self view] window] windowController]; + [mainWindowController showEntries]; +} +@end diff --git a/MacPass/MacPass-Info.plist b/MacPass/MacPass-Info.plist index be7e1083..b9480498 100644 --- a/MacPass/MacPass-Info.plist +++ b/MacPass/MacPass-Info.plist @@ -21,7 +21,7 @@ CFBundleSignature ???? CFBundleVersion - 633 + 63A LSMinimumSystemVersion ${MACOSX_DEPLOYMENT_TARGET} NSHumanReadableCopyright diff --git a/MacPass/PasswordEditView.xib b/MacPass/PasswordEditView.xib new file mode 100644 index 00000000..676f7629 --- /dev/null +++ b/MacPass/PasswordEditView.xib @@ -0,0 +1,881 @@ + + + + 1080 + 12D78 + 3084 + 1187.37 + 626.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 3084 + + + IBNSLayoutConstraint + NSButton + NSButtonCell + NSCustomObject + NSCustomView + NSPathCell + NSPathControl + NSSecureTextField + NSSecureTextFieldCell + NSTextField + NSTextFieldCell + + + com.apple.InterfaceBuilder.CocoaPlugin + + + PluginDependencyRecalculationVersion + + + + + MPPasswordEditViewController + + + FirstResponder + + + NSApplication + + + + 268 + + + + 268 + {{99, 156}, {164, 17}} + + + _NS:1535 + YES + + 68157504 + 272630784 + Change Password/Keyfile + + LucidaGrande + 13 + 1044 + + _NS:1535 + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + NO + + + + 268 + {{113, 13}, {82, 32}} + + + _NS:9 + YES + + 67108864 + 134217728 + Cancel + + _NS:9 + + -2038284288 + 129 + + Gw + 200 + 25 + + NO + + + + 268 + + Apple URL pasteboard type + NSFilenamesPboardType + + {{83, 57}, {197, 22}} + + + _NS:9 + YES + + 337641473 + 131072 + + LucidaGrande + 11 + 3100 + + _NS:9 + + + 2 + + + NO + + + + 268 + {{86, 86}, {191, 22}} + + + _NS:9 + YES + + 342884416 + 272630848 + + + _NS:9 + + YES + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + + + NSAllRomanInputSourcesLocaleIdentifier + + + NO + + + + 268 + {{17, 89}, {64, 17}} + + + _NS:1535 + YES + + 68157504 + 272630784 + Password + + _NS:1535 + + + + + NO + + + + 268 + {{35, 62}, {46, 17}} + + + _NS:1535 + YES + + 68157504 + 272630784 + Keyfile + + _NS:1535 + + + + + NO + + + + 268 + {{195, 13}, {88, 32}} + + _NS:9 + {250, 250} + YES + + 67108864 + 134217728 + Change + + _NS:9 + + -2038284288 + 129 + + DQ + 200 + 25 + + NO + + + {363, 193} + + + NSView + + + + + + + view + + + + 52 + + + + passwordTextField + + + + 53 + + + + keyfilePathControl + + + + 54 + + + + _change: + + + + 55 + + + + _cancel: + + + + 56 + + + + + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + + + + + + + + 5 + 0 + + 6 + 1 + + 12 + + 1000 + + 6 + 24 + 3 + + + + 3 + 0 + + 4 + 1 + + 20 + + 1000 + + 9 + 40 + 3 + + + + 6 + 0 + + 6 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 4 + 1 + + 4 + 1 + + 20 + + 1000 + + 9 + 40 + 3 + + + + 4 + 0 + + 4 + 1 + + 20 + + 1000 + + 8 + 29 + 3 + + + + 5 + 0 + + 6 + 1 + + 8 + + 1000 + + 6 + 24 + 3 + + + + 6 + 0 + + 6 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 5 + 0 + + 5 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 3 + 0 + + 4 + 1 + + 8 + + 1000 + + 9 + 40 + 3 + + + + 10 + 0 + + 10 + 1 + + 0.0 + + 1000 + + 9 + 40 + 2 + + + + 5 + 0 + + 6 + 1 + + 8 + + 1000 + + 9 + 40 + 3 + + + + 9 + 0 + + 9 + 1 + + 0.0 + + 1000 + + 9 + 40 + 2 + + + + 10 + 0 + + 10 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 11 + 0 + + 11 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 3 + 0 + + 3 + 1 + + 20 + + 1000 + + 8 + 29 + 3 + + + + 9 + 0 + + 9 + 1 + + 0.0 + + 1000 + + 6 + 24 + 2 + + + + 5 + 1 + + 5 + 1 + + 20 + + 1000 + + 9 + 40 + 3 + + + + + + + + 5 + + + + + + + + 6 + + + + + + + + 7 + + + + + + + + 8 + + + + + 7 + 0 + + 0 + 1 + + 191 + + 1000 + + 9 + 40 + 1 + + + + + + + 9 + + + + + + + + 10 + + + + + + + + 14 + + + + + 17 + + + + + 18 + + + + + 19 + + + + + 20 + + + + + 22 + + + + + 23 + + + + + 24 + + + + + 25 + + + + + 26 + + + + + 28 + + + + + 29 + + + + + 30 + + + + + 31 + + + + + 32 + + + + + 33 + + + + + 34 + + + + + 35 + + + + + 36 + + + + + 37 + + + + + 38 + + + + + 45 + + + + + + + + 46 + + + + + 48 + + + + + 49 + + + + + 51 + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + + + + + + + + + + + + + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + + + 56 + + + 0 + IBCocoaFramework + YES + 3 + YES + + diff --git a/MacPass/PasswordInputView.xib b/MacPass/PasswordInputView.xib index 1bf05113..001d2cd7 100644 --- a/MacPass/PasswordInputView.xib +++ b/MacPass/PasswordInputView.xib @@ -49,7 +49,7 @@ 268 - {{154, 276}, {184, 17}} + {{96, 175}, {184, 17}} _NS:1535 @@ -97,7 +97,7 @@ NeXT Encapsulated PostScript v1.2 pasteboard type NeXT TIFF v4.0 pasteboard type - {{216, 301}, {48, 48}} + {{157, 200}, {48, 48}} _NS:9 @@ -121,7 +121,7 @@ 268 - {{185, 151}, {82, 32}} + {{127, 50}, {82, 32}} _NS:9 @@ -149,7 +149,7 @@ Apple URL pasteboard type NSFilenamesPboardType - {{141, 195}, {197, 22}} + {{83, 94}, {197, 22}} _NS:9 @@ -173,7 +173,7 @@ 268 - {{144, 224}, {191, 22}} + {{86, 123}, {191, 22}} _NS:9 @@ -210,7 +210,7 @@ 268 - {{75, 227}, {64, 17}} + {{17, 126}, {64, 17}} _NS:1535 @@ -230,7 +230,7 @@ 268 - {{93, 200}, {46, 17}} + {{35, 99}, {46, 17}} _NS:1535 @@ -250,7 +250,7 @@ 268 - {{267, 151}, {74, 32}} + {{209, 50}, {74, 32}} _NS:9 {250, 250} @@ -272,7 +272,7 @@ NO - {479, 470} + {362, 268} NSView diff --git a/MacPass/en.lproj/MainMenu.xib b/MacPass/en.lproj/MainMenu.xib index 0f228b1d..fa01fb7b 100644 --- a/MacPass/en.lproj/MainMenu.xib +++ b/MacPass/en.lproj/MainMenu.xib @@ -272,21 +272,10 @@ - + - Page Setup... - P - 1179648 - 2147483647 - - - - - - - Print… - p - 1048576 + Change Password… + 2147483647 @@ -435,225 +424,6 @@ - - - Spelling and Grammar - - 1048576 - 2147483647 - - - submenuAction: - - Spelling and Grammar - - - - Show Spelling and Grammar - : - 1048576 - 2147483647 - - - - - - Check Document Now - ; - 1048576 - 2147483647 - - - - - - YES - YES - - - 2147483647 - - - - - - Check Spelling While Typing - - 1048576 - 2147483647 - - - - - - Check Grammar With Spelling - - 1048576 - 2147483647 - - - - - - Correct Spelling Automatically - - 2147483647 - - - - - - - - - Substitutions - - 1048576 - 2147483647 - - - submenuAction: - - Substitutions - - - - Show Substitutions - - 2147483647 - - - - - - YES - YES - - - 2147483647 - - - - - - Smart Copy/Paste - f - 1048576 - 2147483647 - - - 1 - - - - Smart Quotes - g - 1048576 - 2147483647 - - - 2 - - - - Smart Dashes - - 2147483647 - - - - - - Smart Links - G - 1179648 - 2147483647 - - - 3 - - - - Text Replacement - - 2147483647 - - - - - - - - - Transformations - - 2147483647 - - - submenuAction: - - Transformations - - - - Make Upper Case - - 2147483647 - - - - - - Make Lower Case - - 2147483647 - - - - - - Capitalize - - 2147483647 - - - - - - - - - Speech - - 1048576 - 2147483647 - - - submenuAction: - - Speech - - - - Start Speaking - - 1048576 - 2147483647 - - - - - - Stop Speaking - - 1048576 - 2147483647 - - - - - - @@ -867,22 +637,6 @@ 39 - - - print: - - - - 86 - - - - runPageLayout: - - - - 87 - clearRecentDocuments: @@ -899,14 +653,6 @@ 193 - - - toggleContinuousSpellChecking: - - - - 222 - undo: @@ -923,14 +669,6 @@ 224 - - - checkSpelling: - - - - 225 - paste: @@ -939,14 +677,6 @@ 226 - - - stopSpeaking: - - - - 227 - cut: @@ -955,14 +685,6 @@ 228 - - - showGuessPanel: - - - - 230 - redo: @@ -979,14 +701,6 @@ 232 - - - startSpeaking: - - - - 233 - delete: @@ -1019,38 +733,6 @@ 245 - - - toggleGrammarChecking: - - - - 347 - - - - toggleSmartInsertDelete: - - - - 355 - - - - toggleAutomaticQuoteSubstitution: - - - - 356 - - - - toggleAutomaticLinkDetection: - - - - 357 - saveDocument: @@ -1123,62 +805,6 @@ 374 - - - toggleAutomaticSpellingCorrection: - - - - 456 - - - - orderFrontSubstitutionsPanel: - - - - 458 - - - - toggleAutomaticDashSubstitution: - - - - 461 - - - - toggleAutomaticTextReplacement: - - - - 463 - - - - uppercaseWord: - - - - 464 - - - - capitalizeWord: - - - - 467 - - - - lowercaseWord: - - - - 468 - performFindPanelAction: @@ -1203,6 +829,14 @@ 1199 + + + editPassword: + + + + 1206 + showPreferences: @@ -1304,15 +938,14 @@ - - + @@ -1321,11 +954,6 @@ - - 78 - - - 72 @@ -1344,11 +972,6 @@ - - 77 - - - 73 @@ -1396,10 +1019,6 @@ - - - - @@ -1456,42 +1075,6 @@ - - 216 - - - - - - - - 200 - - - - - - - - - - - - - 219 - - - - - 201 - - - - - 204 - - - 220 @@ -1661,143 +1244,11 @@ - - 211 - - - - - - - - 212 - - - - - - - - - 195 - - - - - 196 - - - - - 346 - - - - - 348 - - - - - - - - 349 - - - - - - - - - - - - - - 350 - - - - - 351 - - - - - 354 - - - 420 - - 450 - - - - - - - - 451 - - - - - - - - - - 452 - - - - - 453 - - - - - 454 - - - - - 457 - - - - - 459 - - - - - 460 - - - - - 462 - - - - - 465 - - - - - 466 - - - 490 @@ -1849,6 +1300,11 @@ + + 1203 + + + @@ -1861,6 +1317,8 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -1875,29 +1333,20 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -1909,24 +1358,7 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -1939,8 +1371,6 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -1951,7 +1381,7 @@ - 1202 + 1206 @@ -1978,7 +1408,7 @@ NSObject id - id + id id @@ -1986,8 +1416,8 @@ showMainWindow: id - - showPasswordWizzard: + + showPasswordCreator: id @@ -1995,11 +1425,78 @@ id + + passwordCreatorWindow + NSWindow + + + passwordCreatorWindow + + passwordCreatorWindow + NSWindow + + IBProjectSource ./Classes/MPAppDelegate.h + + MPMainWindowController + NSWindowController + + id + id + + + + changedFileType: + id + + + editPassword: + id + + + + NSView + NSView + NSView + NSSplitView + NSTextField + NSView + + + + contentView + NSView + + + inspectorView + NSView + + + outlineView + NSView + + + splitView + NSSplitView + + + welcomeText + NSTextField + + + welcomeView + NSView + + + + IBProjectSource + ./Classes/MPMainWindowController.h + + 0