diff --git a/Password Manager/GeneratePassword.cs b/Password Manager/GeneratePassword.cs index aff3575..c2e627f 100644 --- a/Password Manager/GeneratePassword.cs +++ b/Password Manager/GeneratePassword.cs @@ -5,12 +5,14 @@ namespace Password_Manager public partial class GeneratePassword : Form { private string currentPath; + private string recipient; - public GeneratePassword(string name, string currentPath) + public GeneratePassword(string name, string currentPath, string recipient) { InitializeComponent(); passwordName.Text = name; this.currentPath = currentPath; + this.recipient = recipient; } public void Generate(object sender, EventArgs e) @@ -27,6 +29,7 @@ namespace Password_Manager File.WriteAllText( currentPath + $"\\{passwordName.Text}.gpg", PasswordGenerator.New( + recipient, Convert.ToInt32(passwordLength.Text), noSymbols.Checked) ); diff --git a/Password Manager/MainForm.cs b/Password Manager/MainForm.cs index 4ecab77..2b76a3a 100644 --- a/Password Manager/MainForm.cs +++ b/Password Manager/MainForm.cs @@ -5,10 +5,12 @@ namespace Password_Manager sealed public partial class MainForm : Form { public event DataRequest PathRequest; + public event DataRequest? RecipientRequest; - public MainForm(DataRequest PathRequest) + public MainForm(DataRequest PathRequest, DataRequest RecipientRequest = null) { this.PathRequest = PathRequest; + this.RecipientRequest = RecipientRequest; InitializeComponent(); ResultList.SearchQueryRequest += () => SearchBox.Text; @@ -22,8 +24,15 @@ namespace Password_Manager private void OpenPasswordGenerator(object sender, EventArgs e) { - GeneratePassword gp = new GeneratePassword(SearchBox.Text, PathRequest()); - gp.ShowDialog(); + if (RecipientRequest != null) + { + GeneratePassword gp = new GeneratePassword(SearchBox.Text, PathRequest(), RecipientRequest()); + gp.ShowDialog(); + } + else + { + throw new InvalidOperationExpression("You cannot use the OpenPasswordGenerator method if you instantiated this form without a RecipientRequest event handler."); + } } private void CancelPressed(object sender, EventArgs e) @@ -64,4 +73,4 @@ namespace Password_Manager Close(); } } -} \ No newline at end of file +}