Updated translations

Added note to run auto type fix for any newly opened file
This commit is contained in:
michael starke
2014-06-25 19:34:03 +02:00
parent 01b25403b3
commit 24e45b74e9
16 changed files with 227 additions and 117 deletions

View File

@@ -436,6 +436,8 @@
4C1E9884185F71A800943563 /* MPContextBarViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPContextBarViewController.m; sourceTree = "<group>"; };
4C1FA07918231900003A3F8C /* MPDocument+Autotype.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MPDocument+Autotype.h"; sourceTree = "<group>"; };
4C1FA07A18231900003A3F8C /* MPDocument+Autotype.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MPDocument+Autotype.m"; sourceTree = "<group>"; };
4C21F29D195B39B9002D610D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/MainMenu.strings; sourceTree = "<group>"; };
4C21F29F195B3A48002D610D /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/MainMenu.strings; sourceTree = "<group>"; };
4C224B4017DFCB2300FF6AEE /* MPNumericalInputFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPNumericalInputFormatter.h; sourceTree = "<group>"; };
4C224B4117DFCB2400FF6AEE /* MPNumericalInputFormatter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPNumericalInputFormatter.m; sourceTree = "<group>"; };
4C245A69176E1E3C0086100E /* DDData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DDData.h; sourceTree = "<group>"; };
@@ -761,7 +763,6 @@
4CA3530918A53CB800839B0F /* MPKeyMapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MPKeyMapper.h; sourceTree = "<group>"; };
4CA3530A18A53CB800839B0F /* MPKeyMapper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MPKeyMapper.m; sourceTree = "<group>"; };
4CA3531118A5577300839B0F /* dsa_sparkle_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = dsa_sparkle_pub.pem; sourceTree = "<group>"; };
4CAAFDD51787AED60013FCF9 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/MainMenu.strings; sourceTree = "<group>"; };
4CAC614217AD319200023F9E /* KPKTestXmlParsing.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KPKTestXmlParsing.m; sourceTree = "<group>"; };
4CAD745615B887FD00104512 /* DDXMLElementAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DDXMLElementAdditions.h; sourceTree = "<group>"; };
4CAD745715B887FD00104512 /* DDXMLElementAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DDXMLElementAdditions.m; sourceTree = "<group>"; };
@@ -973,7 +974,7 @@
BD6C366019484CF40089EB37 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/GroupInspectorView.strings; sourceTree = "<group>"; };
BD6C366119484CF40089EB37 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/EntryInspectorView.strings; sourceTree = "<group>"; };
BD6C366219484CF40089EB37 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/DatePickingView.strings; sourceTree = "<group>"; };
BD6C366319484CF40089EB37 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = "<group>"; };
BD6C366319484CF40089EB37 /* nl */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = "<group>"; };
BD6C366419484CF40089EB37 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = nl; path = nl.lproj/Credits.rtf; sourceTree = "<group>"; };
BD6C366519484CF40089EB37 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/InfoPlist.strings; sourceTree = "<group>"; };
BD6C366619484CF40089EB37 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/KPKLocalizeable.strings; sourceTree = "<group>"; };
@@ -2543,10 +2544,11 @@
isa = PBXVariantGroup;
children = (
4C7615601764C05A0015A1A6 /* Base */,
4CAAFDD51787AED60013FCF9 /* en */,
4C5CD34617D15912000B7F38 /* fr */,
601F811218E016340028F3DE /* zh-Hans */,
BD6C365C19484CF40089EB37 /* nl */,
4C21F29D195B39B9002D610D /* en */,
4C21F29F195B3A48002D610D /* de */,
);
name = MainMenu.xib;
sourceTree = "<group>";

View File

@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="5053" systemVersion="13C64" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="5056" systemVersion="13D65" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES">
<dependencies>
<deployment defaultVersion="1080" identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="5053"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="5056"/>
</dependencies>
<objects>
<customObject id="-2" userLabel="File's Owner" customClass="MPEntryViewController">
@@ -10,6 +10,7 @@
<outlet property="addEntryButton" destination="732" id="745"/>
<outlet property="bottomBar" destination="690" id="744"/>
<outlet property="entryTable" destination="55" id="111"/>
<outlet property="footerInfoText" destination="uCV-75-BFs" id="Qb3-SD-vFM"/>
<outlet property="tableToTopConstraint" destination="683" id="844"/>
<outlet property="view" destination="336" id="395"/>
</connections>
@@ -48,11 +49,11 @@
<tableColumnResizingMask key="resizingMask" resizeWithTable="YES" userResizable="YES"/>
<prototypeCellViews>
<tableCellView identifier="StringCell" id="269">
<rect key="frame" x="1" y="1" width="104.5" height="17"/>
<rect key="frame" x="1" y="1" width="105" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="270">
<rect key="frame" x="1" y="0.0" width="102.5" height="17"/>
<rect key="frame" x="1" y="0.0" width="103" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
<textFieldCell key="cell" lineBreakMode="truncatingTail" sendsActionOnEndEditing="YES" title="Table View Cell" id="271">
<font key="font" metaFont="system"/>
@@ -86,7 +87,7 @@
<tableColumnResizingMask key="resizingMask" resizeWithTable="YES" userResizable="YES"/>
<prototypeCellViews>
<tableCellView identifier="ImageCell" id="297">
<rect key="frame" x="108.5" y="1" width="144" height="17"/>
<rect key="frame" x="109" y="1" width="144" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<imageView translatesAutoresizingMaskIntoConstraints="NO" id="298">
@@ -137,11 +138,11 @@
<tableColumnResizingMask key="resizingMask" resizeWithTable="YES" userResizable="YES"/>
<prototypeCellViews>
<tableCellView identifier="PasswordCell" id="428">
<rect key="frame" x="255.5" y="1" width="118.5" height="17"/>
<rect key="frame" x="256" y="1" width="119" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="429" customClass="NSSecureTextField">
<rect key="frame" x="1" y="0.0" width="116.5" height="17"/>
<rect key="frame" x="1" y="0.0" width="117" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" flexibleMinY="YES"/>
<textFieldCell key="cell" lineBreakMode="truncatingTail" sendsActionOnEndEditing="YES" title="Table View Cell" id="430">
<font key="font" metaFont="system"/>
@@ -175,7 +176,7 @@
<tableColumnResizingMask key="resizingMask" resizeWithTable="YES" userResizable="YES"/>
<prototypeCellViews>
<tableCellView id="421">
<rect key="frame" x="377" y="1" width="113" height="17"/>
<rect key="frame" x="378" y="1" width="113" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="422">
@@ -213,7 +214,7 @@
<tableColumnResizingMask key="resizingMask" resizeWithTable="YES" userResizable="YES"/>
<prototypeCellViews>
<tableCellView id="616">
<rect key="frame" x="493" y="1" width="198" height="17"/>
<rect key="frame" x="494" y="1" width="198" height="17"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" translatesAutoresizingMaskIntoConstraints="NO" id="617">
@@ -270,11 +271,22 @@
<font key="font" metaFont="cellTitle"/>
</buttonCell>
</button>
<textField hidden="YES" horizontalHuggingPriority="251" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="uCV-75-BFs">
<rect key="frame" x="324" y="8" width="46" height="14"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="infotext" id="GLC-co-PAD">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
</subviews>
<constraints>
<constraint firstAttribute="height" constant="30" id="697"/>
<constraint firstItem="732" firstAttribute="leading" secondItem="690" secondAttribute="leading" constant="7" id="741"/>
<constraint firstItem="732" firstAttribute="centerY" secondItem="690" secondAttribute="centerY" id="878"/>
<constraint firstAttribute="centerX" secondItem="uCV-75-BFs" secondAttribute="centerX" id="bRK-AN-dLs"/>
<constraint firstAttribute="centerY" secondItem="uCV-75-BFs" secondAttribute="centerY" id="sH1-mf-Ryt"/>
</constraints>
</customView>
</subviews>

View File

@@ -26,6 +26,11 @@
NSString *const kMPWindowTitleKey = @"windowTitle";
NSString *const kMPApplciationNameKey = @"applicationName";
/*
Enabel to activate autotype
#define MP_AUTOTYPE
*/
@interface MPAutotypeDaemon ()
@property (nonatomic, assign) BOOL enabled;
@@ -43,7 +48,7 @@ NSString *const kMPApplciationNameKey = @"applicationName";
self = [super init];
if (self) {
_enabled = NO;
[self bind:@"enabled"
[self bind:NSStringFromSelector(@selector(enabled))
toObject:[NSUserDefaultsController sharedUserDefaultsController]
withKeyPath:[MPSettingsHelper defaultControllerPathForKey:kMPSettingsKeyEnableGlobalAutotype]
options:nil];
@@ -52,7 +57,7 @@ NSString *const kMPApplciationNameKey = @"applicationName";
}
- (void)dealloc {
[self unbind:@"enabled"];
[self unbind:NSStringFromSelector(@selector(enabled))];
}
#pragma mark -
@@ -61,7 +66,9 @@ NSString *const kMPApplciationNameKey = @"applicationName";
- (void)setEnabled:(BOOL)enabled {
if(_enabled != enabled) {
_enabled = enabled;
#ifdef MP_AUTOTYPE
self.enabled ? [self _registerHotKey] : [self _unregisterHotKey];
#endif
}
}
@@ -184,7 +191,7 @@ NSString *const kMPApplciationNameKey = @"applicationName";
NSNumber *processId = windowDict[(NSString *)kCGWindowOwnerPID];
if(processId && [processId isEqualToNumber:@(frontApplication.processIdentifier)]) {
return @{
kMPWindowTitleKey:windowDict[(NSString *)kCGWindowName],
kMPWindowTitleKey: windowDict[(NSString *)kCGWindowName],
kMPApplciationNameKey : name
};
}

View File

@@ -50,7 +50,7 @@
- (IBAction)pickExpiryDate:(id)sender;
#pragma mark Helper
- (void)fixAutotype:(id)sender;
- (IBAction)fixAutotype:(id)sender;
#pragma mark View Actions
- (IBAction)toggleInspector:(id)sender;

View File

@@ -86,15 +86,15 @@ typedef void (^MPPasswordChangedBlock)(void);
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_didRevertDocument:) name:MPDocumentDidRevertNotifiation object:document];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(showEntries) name:MPDocumentDidUnlockDatabaseNotification object:document];
[_entryViewController regsiterNotificationsForDocument:document];
[_inspectorViewController regsiterNotificationsForDocument:document];
[_outlineViewController regsiterNotificationsForDocument:document];
[_toolbarDelegate registerNotificationsForDocument:document];
[self.entryViewController regsiterNotificationsForDocument:document];
[self.inspectorViewController regsiterNotificationsForDocument:document];
[self.outlineViewController regsiterNotificationsForDocument:document];
[self.toolbarDelegate registerNotificationsForDocument:document];
_toolbar = [[NSToolbar alloc] initWithIdentifier:@"MainWindowToolbar"];
[_toolbar setAutosavesConfiguration:YES];
self.toolbar = [[NSToolbar alloc] initWithIdentifier:@"MainWindowToolbar"];
[self.toolbar setAutosavesConfiguration:YES];
[self.toolbar setAllowsUserCustomization:YES];
[self.toolbar setDelegate:self.toolbarDelegate];
[self.window setToolbar:self.toolbar];
@@ -102,15 +102,15 @@ typedef void (^MPPasswordChangedBlock)(void);
[self.splitView setTranslatesAutoresizingMaskIntoConstraints:NO];
NSView *outlineView = [_outlineViewController view];
NSView *inspectorView = [_inspectorViewController view];
NSView *entryView = [_entryViewController view];
[_splitView addSubview:outlineView];
[_splitView addSubview:entryView];
[_splitView addSubview:inspectorView];
NSView *outlineView = [self.outlineViewController view];
NSView *inspectorView = [self.inspectorViewController view];
NSView *entryView = [self.entryViewController view];
[self.splitView addSubview:outlineView];
[self.splitView addSubview:entryView];
[self.splitView addSubview:inspectorView];
[_splitView setHoldingPriority:NSLayoutPriorityDefaultLow+2 forSubviewAtIndex:0];
[_splitView setHoldingPriority:NSLayoutPriorityDefaultLow+1 forSubviewAtIndex:2];
[self.splitView setHoldingPriority:NSLayoutPriorityDefaultLow+2 forSubviewAtIndex:0];
[self.splitView setHoldingPriority:NSLayoutPriorityDefaultLow+1 forSubviewAtIndex:2];
BOOL showInspector = [[NSUserDefaults standardUserDefaults] boolForKey:kMPSettingsKeyShowInspector];
if(!showInspector) {
@@ -124,7 +124,7 @@ typedef void (^MPPasswordChangedBlock)(void);
[self showEntries];
}
[_splitView setAutosaveName:@"SplitView"];
[self.splitView setAutosaveName:@"SplitView"];
}
- (NSSearchField *)searchField {
@@ -291,11 +291,11 @@ typedef void (^MPPasswordChangedBlock)(void);
}
- (void)createGroup:(id)sender {
[_outlineViewController createGroup:nil];
[self.outlineViewController createGroup:nil];
}
- (void)createEntry:(id)sender {
[_outlineViewController createEntry:nil];
[self.outlineViewController createEntry:nil];
}
- (void)pickIcon:(id)sender {
@@ -307,14 +307,14 @@ typedef void (^MPPasswordChangedBlock)(void);
}
- (void)toggleInspector:(id)sender {
NSView *inspectorView = [_inspectorViewController view];
NSView *inspectorView = [self.inspectorViewController view];
BOOL inspectorWasVisible = [self _isInspectorVisible];
if(inspectorWasVisible) {
[inspectorView removeFromSuperview];
}
else {
[_splitView addSubview:inspectorView];
[_splitView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"[inspectorView(>=200)]"
[self.splitView addSubview:inspectorView];
[self.splitView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"[inspectorView(>=200)]"
options:0
metrics:nil
views:NSDictionaryOfVariableBindings(inspectorView)]];
@@ -341,16 +341,16 @@ typedef void (^MPPasswordChangedBlock)(void);
- (void)showEntries {
NSView *contentView = [[self window] contentView];
if(_splitView == contentView) {
if(self.splitView == contentView) {
return; // We are displaying the entries already
}
if([[contentView subviews] count] == 1) {
[[contentView subviews][0] removeFromSuperviewWithoutNeedingDisplay];
}
[contentView addSubview:_splitView];
NSView *outlineView = [_outlineViewController view];
NSView *inspectorView = [_inspectorViewController view];
NSView *entryView = [_entryViewController view];
[contentView addSubview:self.splitView];
NSView *outlineView = [self.outlineViewController view];
NSView *inspectorView = [self.inspectorViewController view];
NSView *entryView = [self.entryViewController view];
/*
The current easy way to prevent layout hickups is to add the inspect
@@ -358,7 +358,7 @@ typedef void (^MPPasswordChangedBlock)(void);
*/
BOOL removeInspector = NO;
if(![inspectorView superview]) {
[_splitView addSubview:inspectorView];
[self.splitView addSubview:inspectorView];
removeInspector = YES;
}
/* Maybe we should consider not double adding constraints */
@@ -389,10 +389,10 @@ typedef void (^MPPasswordChangedBlock)(void);
options:0
metrics:nil
views:views]];
[_entryViewController updateResponderChain];
[_inspectorViewController updateResponderChain];
[_outlineViewController updateResponderChain];
[_outlineViewController showOutline];
[self.entryViewController updateResponderChain];
[self.inspectorViewController updateResponderChain];
[self.outlineViewController updateResponderChain];
[self.outlineViewController showOutline];
/* Restore the State the inspector view was in before the view change */
if(removeInspector) {
@@ -453,7 +453,7 @@ typedef void (^MPPasswordChangedBlock)(void);
}
- (BOOL)_isInspectorVisible {
NSView *inspectorView = [_inspectorViewController view];
NSView *inspectorView = [self.inspectorViewController view];
return (nil != [inspectorView superview]);
}

View File

@@ -77,4 +77,5 @@
}
return ok;
}
@end

View File

@@ -66,6 +66,7 @@ NSString *const _MPTAbleSecurCellView = @"PasswordCell";
@interface MPEntryViewController () {
MPEntryContextMenuDelegate *_menuDelegate;
BOOL _isDisplayingContextBar;
BOOL _showFooterInfo;
}
@property (strong) NSArrayController *entryArrayController;
@@ -81,6 +82,8 @@ NSString *const _MPTAbleSecurCellView = @"PasswordCell";
@property (weak) IBOutlet HNHGradientView *bottomBar;
@property (weak) IBOutlet NSButton *addEntryButton;
@property (weak) IBOutlet NSTextField *footerInfoText;
@property (nonatomic, strong) MPEntryTableDataSource *dataSource;
@end
@@ -188,6 +191,9 @@ NSString *const _MPTAbleSecurCellView = @"PasswordCell";
[self _setupHeaderMenu];
[parentColumn setHidden:YES];
[self.footerInfoText setHidden:!_showFooterInfo];
[self.footerInfoText setStringValue:NSLocalizedString(@"DOCUMENT_AUTOTYPE_CORRUPTION_WARNING", "")];
}
- (NSResponder *)reconmendedFirstResponder {
@@ -217,6 +223,22 @@ NSString *const _MPTAbleSecurCellView = @"PasswordCell";
[self.contextBarViewController registerNotificationsForDocument:document];
/* Setup warning message at the bottom*/
NSArray *array = [[NSUserDefaults standardUserDefaults] arrayForKey:kMPSettingsKeyDocumentsAutotypeFixNoteWasShown];
NSString *path = [[document fileURL] path];
if(!path) {
return; // No path, nothing to do
}
if(![array containsObject:path]) {
array = array ? [array arrayByAddingObject:path] : @[path];
[[NSUserDefaults standardUserDefaults] setObject:array forKey:kMPSettingsKeyDocumentsAutotypeFixNoteWasShown];
[[NSUserDefaults standardUserDefaults] synchronize];
_showFooterInfo = YES;
}
else {
_showFooterInfo = NO;
}
}
#pragma mark NSTableViewDelgate

View File

@@ -50,6 +50,7 @@ APPKIT_EXTERN NSString *const kMPSettingsKeyRememberKeyFilesForDatabases;
APPKIT_EXTERN NSString *const kMPSettingsKeySendCommandForControlKey;
APPKIT_EXTERN NSString *const kMPSettingsKeyEnableGlobalAutotype;
APPKIT_EXTERN NSString *const kMPSettingsKeyGlobalAutotypeKeyKey;
APPKIT_EXTERN NSString *const kMPSettingsKeyDocumentsAutotypeFixNoteWasShown;
/* Search */
APPKIT_EXTERN NSString *const kMPSettingsKeyEntrySearchFilterMode;

View File

@@ -8,41 +8,42 @@
#import "MPSettingsHelper.h"
NSString *const kMPSettingsKeyPasteboardClearTimeout = @"ClipboardClearTimeout";
NSString *const kMPSettingsKeyClearPasteboardOnQuit = @"ClearClipboardOnQuit";
NSString *const kMPSettingsKeyDoubleClickURLToLaunch = @"DoubleClickURLToLaunch";
NSString *const kMPSettingsKeyBrowserBundleId = @"BrowserBundleId";
NSString *const kMPSettingsKeyOpenEmptyDatabaseOnLaunch = @"OpenEmptyDatabaseOnLaunch";
NSString *const kMPSettingsKeyReopenLastDatabaseOnLaunch = @"ReopenLastDatabaseOnLaunch";
NSString *const kMPSettingsKeyHttpPort = @"HttpPort";
NSString *const kMPSettingsKeyEnableHttpServer = @"EnableHttpServer";
NSString *const kMPSettingsKeyShowMenuItem = @"ShowMenuItem";
NSString *const kMPSettingsKeyLockOnSleep = @"LockOnSleep";
NSString *const kMPSettingsKeyIdleLockTimeOut = @"IdleLockTimeOut";
NSString *const kMPSettingsKeyShowInspector = @"ShowInspector";
NSString *const kMPSettingsKeyEntryTableSortDescriptors = @"EntryTableSortDescriptors";
NSString *const kMPSettingsKeyPasteboardClearTimeout = @"ClipboardClearTimeout";
NSString *const kMPSettingsKeyClearPasteboardOnQuit = @"ClearClipboardOnQuit";
NSString *const kMPSettingsKeyDoubleClickURLToLaunch = @"DoubleClickURLToLaunch";
NSString *const kMPSettingsKeyBrowserBundleId = @"BrowserBundleId";
NSString *const kMPSettingsKeyOpenEmptyDatabaseOnLaunch = @"OpenEmptyDatabaseOnLaunch";
NSString *const kMPSettingsKeyReopenLastDatabaseOnLaunch = @"ReopenLastDatabaseOnLaunch";
NSString *const kMPSettingsKeyHttpPort = @"HttpPort";
NSString *const kMPSettingsKeyEnableHttpServer = @"EnableHttpServer";
NSString *const kMPSettingsKeyShowMenuItem = @"ShowMenuItem";
NSString *const kMPSettingsKeyLockOnSleep = @"LockOnSleep";
NSString *const kMPSettingsKeyIdleLockTimeOut = @"IdleLockTimeOut";
NSString *const kMPSettingsKeyShowInspector = @"ShowInspector";
NSString *const kMPSettingsKeyEntryTableSortDescriptors = @"EntryTableSortDescriptors";
NSString *const kMPSettingsKeyLegacyHideTitle = @"LegacyHideTitle";
NSString *const kMPSettingsKeyLegacyHideUsername = @"LegacyHideUsername ";
NSString *const kMPSettingsKeyLegacyHidePassword = @"LegacyHidePassword";
NSString *const kMPSettingsKeyLegacyHideNotes = @"LegacyHideNotes";
NSString *const kMPSettingsKeyLegacyHideURL = @"LegacyHideURL";
NSString *const kMPSettingsKeyLegacyHideTitle = @"LegacyHideTitle";
NSString *const kMPSettingsKeyLegacyHideUsername = @"LegacyHideUsername ";
NSString *const kMPSettingsKeyLegacyHidePassword = @"LegacyHidePassword";
NSString *const kMPSettingsKeyLegacyHideNotes = @"LegacyHideNotes";
NSString *const kMPSettingsKeyLegacyHideURL = @"LegacyHideURL";
NSString *const kMPSettingsKeyLastDatabasePath = @"LastDatabasePath";
NSString *const kMPSettingsKeyRememeberdKeysForDatabases = @"RememeberdKeysForDatabases";
NSString *const kMPSettingsKeyRememberKeyFilesForDatabases = @"RememberKeyFilesForDatabases";
NSString *const kMPSettingsKeyLastDatabasePath = @"LastDatabasePath";
NSString *const kMPSettingsKeyRememeberdKeysForDatabases = @"RememeberdKeysForDatabases";
NSString *const kMPSettingsKeyRememberKeyFilesForDatabases = @"RememberKeyFilesForDatabases";
NSString *const kMPSettingsKeySendCommandForControlKey = @"SendCommandKeyForControlKey";
NSString *const kMPSettingsKeyEnableGlobalAutotype = @"EnableGlobalAutotype";
NSString *const kMPSettingsKeyGlobalAutotypeKeyKey = @"GlobalAutotypeKey";
NSString *const kMPSettingsKeySendCommandForControlKey = @"SendCommandKeyForControlKey";
NSString *const kMPSettingsKeyEnableGlobalAutotype = @"EnableGlobalAutotype";
NSString *const kMPSettingsKeyGlobalAutotypeKeyKey = @"GlobalAutotypeKey";
NSString *const kMPSettingsKeyDocumentsAutotypeFixNoteWasShown = @"DocumentsAutotypeFixNoteWasShown";
NSString *const kMPSettingsKeyEntrySearchFilterMode = @"EntrySearchFilterMode";
NSString *const kMPSettingsKeyEntrySearchFilterMode = @"EntrySearchFilterMode";
NSString *const kMPSettingsKeyEnableQuicklookPreview = @"EnableQuicklookPreview";
NSString *const kMPSettingsKeyEnableQuicklookPreview = @"EnableQuicklookPreview";
NSString *const kMPSettingsKeyCopyGeneratedPasswordToClipboard = @"CopyGeneratedPasswordToClipboard";
NSString *const kMPSettingsKeyCopyGeneratedPasswordToClipboard = @"CopyGeneratedPasswordToClipboard";
NSString *const kMPSettingsKeyDefaultPasswordRounds = @"KeyDefaultPasswordRounds";
NSString *const kMPSettingsKeyDefaultPasswordRounds = @"KeyDefaultPasswordRounds";
@implementation MPSettingsHelper

Binary file not shown.

View File

@@ -1,15 +1,15 @@
/* Class = "NSMenuItem"; title = "Bring All to Front"; ObjectID = "5"; */
"5.title" = "Bring All to Front";
"5.title" = "Alle nach vorne bringen";
/* Class = "NSMenuItem"; title = "Window"; ObjectID = "19"; */
"19.title" = "Window";
"19.title" = "Fenster";
/* Class = "NSMenuItem"; title = "Minimize"; ObjectID = "23"; */
"23.title" = "Minimize";
"23.title" = "Im Dock ablegen";
/* Class = "NSMenu"; title = "Window"; ObjectID = "24"; */
"24.title" = "Window";
"24.title" = "Fenster";
/* Class = "NSMenu"; title = "AMainMenu"; ObjectID = "29"; */
"29.title" = "AMainMenu";
@@ -21,103 +21,103 @@
"57.title" = "MacPass";
/* Class = "NSMenuItem"; title = "About MacPass"; ObjectID = "58"; */
"58.title" = "About MacPass";
"58.title" = "Über MacPass";
/* Class = "NSMenuItem"; title = "Open…"; ObjectID = "72"; */
"72.title" = "Open…";
"72.title" = "Öffnen…";
/* Class = "NSMenuItem"; title = "Close"; ObjectID = "73"; */
"73.title" = "Close";
"73.title" = "Schließen";
/* Class = "NSMenuItem"; title = "Save…"; ObjectID = "75"; */
"75.title" = "Save…";
"75.title" = "Sichern…";
/* Class = "NSMenu"; title = "File"; ObjectID = "81"; */
"81.title" = "File";
"81.title" = "Ablage";
/* Class = "NSMenuItem"; title = "New"; ObjectID = "82"; */
"82.title" = "New";
"82.title" = "Neu";
/* Class = "NSMenuItem"; title = "File"; ObjectID = "83"; */
"83.title" = "File";
"83.title" = "Ablage";
/* Class = "NSMenuItem"; title = "Revert to Saved"; ObjectID = "112"; */
"112.title" = "Revert to Saved";
"112.title" = "Alle Änderungen verwerfen";
/* Class = "NSMenuItem"; title = "Open Recent"; ObjectID = "124"; */
"124.title" = "Open Recent";
"124.title" = "Benutzte Dokumente";
/* Class = "NSMenu"; title = "Open Recent"; ObjectID = "125"; */
"125.title" = "Open Recent";
"125.title" = "Benutzte Dokumente";
/* Class = "NSMenuItem"; title = "Clear Menu"; ObjectID = "126"; */
"126.title" = "Clear Menu";
"126.title" = "Einträge löschen";
/* Class = "NSMenuItem"; title = "Preferences…"; ObjectID = "129"; */
"129.title" = "Preferences…";
"129.title" = "Einstellungen…";
/* Class = "NSMenu"; title = "Services"; ObjectID = "130"; */
"130.title" = "Services";
"130.title" = "Dienste";
/* Class = "NSMenuItem"; title = "Services"; ObjectID = "131"; */
"131.title" = "Services";
"131.title" = "Dienste";
/* Class = "NSMenuItem"; title = "Hide MacPass"; ObjectID = "134"; */
"134.title" = "Hide MacPass";
"134.title" = "MacPass ausblenden";
/* Class = "NSMenuItem"; title = "Quit MacPass"; ObjectID = "136"; */
"136.title" = "Quit MacPass";
"136.title" = "MacPass beenden";
/* Class = "NSMenuItem"; title = "Hide Others"; ObjectID = "145"; */
"145.title" = "Hide Others";
"145.title" = "Andere ausblenden";
/* Class = "NSMenuItem"; title = "Show All"; ObjectID = "150"; */
"150.title" = "Show All";
"150.title" = "Alle einblenden";
/* Class = "NSMenuItem"; title = "Copy"; ObjectID = "197"; */
"197.title" = "Copy";
"197.title" = "Kopieren";
/* Class = "NSMenuItem"; title = "Select All"; ObjectID = "198"; */
"198.title" = "Select All";
"198.title" = "Alles auswählen";
/* Class = "NSMenuItem"; title = "Cut"; ObjectID = "199"; */
"199.title" = "Cut";
"199.title" = "Ausschneiden";
/* Class = "NSMenuItem"; title = "Delete"; ObjectID = "202"; */
"202.title" = "Delete";
"202.title" = "Löschen";
/* Class = "NSMenuItem"; title = "Paste"; ObjectID = "203"; */
"203.title" = "Paste";
"203.title" = "Einsetzen";
/* Class = "NSMenu"; title = "Edit"; ObjectID = "205"; */
"205.title" = "Edit";
"205.title" = "Bearbeiten";
/* Class = "NSMenuItem"; title = "Undo"; ObjectID = "207"; */
"207.title" = "Undo";
"207.title" = "Widerrufen";
/* Class = "NSMenuItem"; title = "Find…"; ObjectID = "209"; */
"209.title" = "Find…";
"209.title" = "Suchen…";
/* Class = "NSMenuItem"; title = "Redo"; ObjectID = "215"; */
"215.title" = "Redo";
"215.title" = "Wiederholen";
/* Class = "NSMenuItem"; title = "Edit"; ObjectID = "217"; */
"217.title" = "Edit";
"217.title" = "Bearbeiten";
/* Class = "NSMenuItem"; title = "Zoom"; ObjectID = "239"; */
"239.title" = "Zoom";
"239.title" = "Zoomen";
/* Class = "NSMenuItem"; title = "View"; ObjectID = "295"; */
"295.title" = "View";
"295.title" = "Darstellung";
/* Class = "NSMenu"; title = "View"; ObjectID = "296"; */
"296.title" = "View";
"296.title" = "Darstellung";
/* Class = "NSMenuItem"; title = "Show Toolbar"; ObjectID = "297"; */
"297.title" = "Show Toolbar";
"297.title" = "Symbolleiste anzeigen";
/* Class = "NSMenuItem"; title = "Customize Toolbar…"; ObjectID = "298"; */
"298.title" = "Customize Toolbar…";
"298.title" = "Symbolleiste anpassen…";
/* Class = "NSMenuItem"; title = "Help"; ObjectID = "490"; */
"490.title" = "Hilfe";
@@ -126,16 +126,46 @@
"491.title" = "Hilfe";
/* Class = "NSMenuItem"; title = "MacPass Help"; ObjectID = "492"; */
"492.title" = "MacPass Hilfe";
"492.title" = "MacPass-Hilfe";
/* Class = "NSMenuItem"; title = "Toggle Inspector"; ObjectID = "1181"; */
"1181.title" = "Inspector umschalten";
"1181.title" = "Inspector ein/ausblenden";
/* Class = "NSMenuItem"; title = "Show Password Creator"; ObjectID = "1200"; */
"1200.title" = "Passwortgenerator";
"1200.title" = "Passwortwerkzeug anzeigen";
/* Class = "NSMenuItem"; title = "Change Master Password…"; ObjectID = "1203"; */
"1203.title" = "Hauptpassword ändern…";
/* Class = "NSMenuItem"; title = "Database Settings…"; ObjectID = "1231"; */
"1231.title" = "Datenbankeinstellungen…";
/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "1243"; */
"1243.title" = "Sichern unter…";
/* Class = "NSMenuItem"; title = "Export As XML…"; ObjectID = "1259"; */
"1259.title" = "Als XML exportieren…";
/* Class = "NSMenuItem"; title = "Lock"; ObjectID = "1261"; */
"1261.title" = "Verschließen";
/* Class = "NSMenuItem"; title = "Focus Entries"; ObjectID = "2VP-vB-IeX"; */
"2VP-vB-IeX.title" = "Einträge fokusieren";
/* Class = "NSMenuItem"; title = "Focus Groups"; ObjectID = "HxM-dV-LIH"; */
"HxM-dV-LIH.title" = "Gruppen fokusieren";
/* Class = "NSMenuItem"; title = "Focus Inspector"; ObjectID = "Zje-Me-5c8"; */
"Zje-Me-5c8.title" = "Inspektor fokusieren";
/* Class = "NSMenuItem"; title = "Quicklook"; ObjectID = "aVO-9F-Lwc"; */
"aVO-9F-Lwc.title" = "Quicklook";
/* Class = "NSMenuItem"; title = "Fix Autotype…"; ObjectID = "nx7-Vf-LiD"; */
"nx7-Vf-LiD.title" = "Autotype korrigieren…";
/* Class = "NSMenuItem"; title = "Import XML…"; ObjectID = "rW0-r1-QYL"; */
"rW0-r1-QYL.title" = "XML importieren…";
/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "zMO-8r-g5v"; */
"zMO-8r-g5v.title" = "Nach Updates suchen…";

Binary file not shown.

View File

@@ -139,3 +139,33 @@
/* Class = "NSMenuItem"; title = "Database Settings…"; ObjectID = "1231"; */
"1231.title" = "Database Settings…";
/* Class = "NSMenuItem"; title = "Save As…"; ObjectID = "1243"; */
"1243.title" = "Save As…";
/* Class = "NSMenuItem"; title = "Export As XML…"; ObjectID = "1259"; */
"1259.title" = "Export As XML…";
/* Class = "NSMenuItem"; title = "Lock"; ObjectID = "1261"; */
"1261.title" = "Lock";
/* Class = "NSMenuItem"; title = "Focus Entries"; ObjectID = "2VP-vB-IeX"; */
"2VP-vB-IeX.title" = "Focus Entries";
/* Class = "NSMenuItem"; title = "Focus Groups"; ObjectID = "HxM-dV-LIH"; */
"HxM-dV-LIH.title" = "Focus Groups";
/* Class = "NSMenuItem"; title = "Focus Inspector"; ObjectID = "Zje-Me-5c8"; */
"Zje-Me-5c8.title" = "Focus Inspector";
/* Class = "NSMenuItem"; title = "Quicklook"; ObjectID = "aVO-9F-Lwc"; */
"aVO-9F-Lwc.title" = "Quicklook";
/* Class = "NSMenuItem"; title = "Fix Autotype…"; ObjectID = "nx7-Vf-LiD"; */
"nx7-Vf-LiD.title" = "Fix Autotype…";
/* Class = "NSMenuItem"; title = "Import XML…"; ObjectID = "rW0-r1-QYL"; */
"rW0-r1-QYL.title" = "Import XML…";
/* Class = "NSMenuItem"; title = "Check for Updates…"; ObjectID = "zMO-8r-g5v"; */
"zMO-8r-g5v.title" = "Check for Updates…";

Binary file not shown.

Binary file not shown.

View File

@@ -99,6 +99,9 @@
"COPY_URL" = "拷贝 URL";
"COPY_USERNAME" = "拷贝用户名";
/* Dock Badge */
"CLEARING_PASTEBOARD" = "…";
/*
Date/Time Displays
@@ -144,8 +147,6 @@
/* Autoype Dialog */
"SELECT_AUTOTYPE_CANDIDATE" = "选择候选!";
/* Mask to create autotype entries for selection by the user. %1 Title %2 Username %3 Password %4 Sequence */
"TITLE_%@_USERNAME_%@_PASSWORD_%@_AUTOTYPE_SEQUENCE_%@" = "%@: 用户名:%@ 密码:%@ 序列:%@";
/* Alert Dialogs */
"WARNING_ON_EMPTY_TRASH_DESCRIPTION" = "清空废纸篓无法撤销";
@@ -163,3 +164,6 @@
"ERROR_PASSWORD_MISSMATCH_INVALID_KEYFILE" = "密码和密钥文件不正确!";
"ERROR_PASSWORD_MISSMATCH" = "密码不正确!";
"ERROR_INVALID_KEYFILE" = "密钥文件不正确!";
/* Misc */
"DOCUMENT_AUTOTYPE_CORRUPTION_WARNING" = "Please run Fix Autotype...";