diff --git a/MacPass/Base.lproj/DatabaseSettingsWindow.xib b/MacPass/Base.lproj/DatabaseSettingsWindow.xib
index 00b85e53..a62fb99d 100644
--- a/MacPass/Base.lproj/DatabaseSettingsWindow.xib
+++ b/MacPass/Base.lproj/DatabaseSettingsWindow.xib
@@ -30,6 +30,7 @@
+
@@ -50,10 +51,10 @@
-
-
+
+
-
+
-
+
-
+
-
+
@@ -103,7 +104,7 @@ Gw
-
+
@@ -111,7 +112,7 @@ Gw
-
+
@@ -119,7 +120,7 @@ Gw
-
+
@@ -132,7 +133,7 @@ Gw
-
+
@@ -140,7 +141,7 @@ Gw
-
+
@@ -148,7 +149,7 @@ Gw
-
+
@@ -156,7 +157,7 @@ Gw
-
+
@@ -185,14 +186,34 @@ Gw
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -204,11 +225,13 @@ Gw
-
+
+
+
@@ -727,7 +750,7 @@ Gw
-
+
diff --git a/MacPass/MPDatabaseSettingsWindowController.h b/MacPass/MPDatabaseSettingsWindowController.h
index bbd85033..951175c5 100644
--- a/MacPass/MPDatabaseSettingsWindowController.h
+++ b/MacPass/MPDatabaseSettingsWindowController.h
@@ -41,6 +41,7 @@ typedef NS_ENUM(NSUInteger, MPDatabaseSettingsTab) {
@property (weak) IBOutlet NSPopUpButton *databaseCompressionPopupButton;
@property (unsafe_unretained) IBOutlet NSTextView *databaseDescriptionTextView;
@property (weak) IBOutlet NSColorWell *databaseColorColorWell;
+@property (weak) IBOutlet NSTextField *fileVersionTextField;
/* Security Tab */
@property (weak) IBOutlet NSButton *createKeyDerivationParametersButton;
diff --git a/MacPass/MPDatabaseSettingsWindowController.m b/MacPass/MPDatabaseSettingsWindowController.m
index 71d39778..48a9bdba 100644
--- a/MacPass/MPDatabaseSettingsWindowController.m
+++ b/MacPass/MPDatabaseSettingsWindowController.m
@@ -204,10 +204,10 @@
return; // no document, just leave
}
/* Update all stuff that might have changed */
- KPKMetaData *metaData = ((MPDocument *)self.document).tree.metaData;
- [self _setupDatabaseTab:metaData];
- [self _setupSecurityTab:metaData];
- [self _setupAdvancedTab:((MPDocument *)self.document).tree];
+ KPKTree *tree = ((MPDocument *)self.document).tree;
+ [self _setupDatabaseTab:tree];
+ [self _setupSecurityTab:tree.metaData];
+ [self _setupAdvancedTab:tree];
self.isDirty = NO;
}
@@ -237,12 +237,25 @@
}
#pragma mark Private Helper
-- (void)_setupDatabaseTab:(KPKMetaData *)metaData {
- self.databaseNameTextField.stringValue = metaData.databaseName;
- self.databaseDescriptionTextView.string = metaData.databaseDescription;
- [self.databaseCompressionPopupButton selectItemAtIndex:metaData.compressionAlgorithm];
- NSColor *databaseColor = metaData.color ? metaData.color : [NSColor clearColor];
- self.databaseColorColorWell.color = databaseColor;
+- (void)_setupDatabaseTab:(KPKTree *)tree {
+ self.databaseNameTextField.stringValue = tree.metaData.databaseName;
+ self.databaseDescriptionTextView.string = tree.metaData.databaseDescription;
+ [self.databaseCompressionPopupButton selectItemAtIndex:tree.metaData.compressionAlgorithm];
+ self.databaseColorColorWell.color = tree.metaData.color ? tree.metaData.color : NSColor.clearColor;
+
+
+ //MPDocument *document = self.document;
+ KPKFileVersion version = tree.minimumVersion;
+ NSDictionary *nameMappings = @{
+ @(KPKDatabaseFormatKdb): @"Kdb",
+ @(KPKDatabaseFormatKdbx): @"Kdbx",
+ @(KPKDatabaseFormatUnknown): NSLocalizedString(@"UNKNOWN_FORMAT", "Unknown databas format.")
+ };
+
+ NSUInteger mayor = (version.version >> 16);
+ NSUInteger minor = (version.version & 0xFFFF);
+
+ self.fileVersionTextField.stringValue = [NSString stringWithFormat:@"%@ (Version %ld.%ld)", nameMappings[@(version.format)], mayor, minor];
}
- (void)_setupSecurityTab:(KPKMetaData *)metaData {