@@ -26,8 +26,7 @@ public KeyEntriesControlViewModel(ISnackbarMessageQueue snackbarMessageQueue, Ke
26
26
CreateKeyEntryCommand = new AsyncRelayCommand (
27
27
async ( ) =>
28
28
{
29
- var model = new KeyEntryDialogViewModel ( KeyEntryClass ) ;
30
- model . SetKeyEntry ( KeyStore ? . GetDefaultKeyEntry ( KeyEntryClass ) ) ;
29
+ var model = CreateKeyEntryDialogViewModel ( ) ;
31
30
var dialog = new KeyEntryDialog
32
31
{
33
32
DataContext = model
@@ -38,11 +37,8 @@ public KeyEntriesControlViewModel(ISnackbarMessageQueue snackbarMessageQueue, Ke
38
37
GenerateKeyEntryCommand = new AsyncRelayCommand (
39
38
async ( ) =>
40
39
{
41
- var model = new KeyEntryDialogViewModel ( KeyEntryClass )
42
- {
43
- ShowKeyMaterials = false
44
- } ;
45
- model . SetKeyEntry ( KeyStore ? . GetDefaultKeyEntry ( KeyEntryClass ) ) ;
40
+ var model = CreateKeyEntryDialogViewModel ( ) ;
41
+ model . ShowKeyMaterials = false ;
46
42
var dialog = new KeyEntryDialog
47
43
{
48
44
DataContext = model
@@ -53,8 +49,7 @@ public KeyEntriesControlViewModel(ISnackbarMessageQueue snackbarMessageQueue, Ke
53
49
EditDefaultKeyEntryCommand = new AsyncRelayCommand (
54
50
async ( ) =>
55
51
{
56
- var model = new KeyEntryDialogViewModel ( KeyEntryClass ) ;
57
- model . SetKeyEntry ( KeyStore ? . GetDefaultKeyEntry ( KeyEntryClass , false ) ) ;
52
+ var model = CreateKeyEntryDialogViewModel ( false ) ;
58
53
var dialog = new KeyEntryDialog
59
54
{
60
55
DataContext = model
@@ -72,12 +67,10 @@ public KeyEntriesControlViewModel(ISnackbarMessageQueue snackbarMessageQueue, Ke
72
67
{
73
68
if ( KeyStore != null && identifier ? . KeyEntryId != null )
74
69
{
75
- var model = new KeyEntryDialogViewModel ( KeyEntryClass )
76
- {
77
- CanChangeFactory = false ,
78
- AllowSubmit = KeyStore . CanUpdateKeyEntries ,
79
- SubmitButtonText = Properties . Resources . Update
80
- } ;
70
+ var model = CreateKeyEntryDialogViewModel ( ) ;
71
+ model . CanChangeFactory = false ;
72
+ model . AllowSubmit = KeyStore . CanUpdateKeyEntries ;
73
+ model . SubmitButtonText = Properties . Resources . Update ;
81
74
model . SetKeyEntry ( await KeyStore . Get ( identifier . KeyEntryId , KeyEntryClass ) ) ;
82
75
var dialog = new KeyEntryDialog
83
76
{
@@ -186,6 +179,19 @@ protected void OnDefaultKeyEntryUpdated()
186
179
DefaultKeyEntryUpdated ? . Invoke ( this , new EventArgs ( ) ) ;
187
180
}
188
181
182
+ protected KeyEntryDialogViewModel CreateKeyEntryDialogViewModel ( )
183
+ {
184
+ return CreateKeyEntryDialogViewModel ( true ) ;
185
+ }
186
+
187
+ protected KeyEntryDialogViewModel CreateKeyEntryDialogViewModel ( bool keClone )
188
+ {
189
+ var model = new KeyEntryDialogViewModel ( KeyEntryClass ) ;
190
+ model . SetKeyEntry ( KeyStore ? . GetDefaultKeyEntry ( KeyEntryClass , keClone ) ) ;
191
+ model . ShowKeyEntryLabel = ( KeyStore ? . CanDefineKeyEntryLabel ) . GetValueOrDefault ( true ) ;
192
+ return model ;
193
+ }
194
+
189
195
public ObservableCollection < SelectableKeyEntryId > Identifiers { get ; }
190
196
191
197
public ObservableCollection < WizardFactory > WizardFactories { get ; }
0 commit comments