namespace Password_Manager { sealed public partial class MainForm : PasswordManagerForm { public override event ProfileDataRequest CurrentProfilePathRequest; public override event ProfileDataRequest CurrentProfileNameRequest; public override event ProfileList CurrentProfileListRequest; public override event ProfileChange CurrentProfileChanged; public override event Save SaveRequest; public override event NewProfile NewProfileRequest; public MainForm(ProfileDataRequest CurrentProfileNameRequest, ProfileDataRequest CurrentProfilePathRequest, ProfileList CurrentProfileListRequest, ProfileChange CurrentProfileChanged, Save SaveRequest, NewProfile NewProfileRequest) : base(CurrentProfileNameRequest, CurrentProfilePathRequest, CurrentProfileListRequest, CurrentProfileChanged, SaveRequest, NewProfileRequest) { InitializeComponent(); RefreshCurrentProfile(); SaveRequest(); } private void OpenProfileCreator(object sender, EventArgs e) { NewProfileForm npf = new NewProfileForm(); npf.ReloadMainFormRequest += () => RefreshCurrentProfile(); npf.SaveRequest += this.SaveRequest; npf.NewProfileRequest += this.NewProfileRequest; npf.ShowDialog(); } private void OpenPasswordGenerator(object sender, EventArgs e) { string? tmp = CurrentProfilePathRequest(); if (tmp != null) { GeneratePassword gp = new GeneratePassword(SearchBox.Text, tmp); gp.ShowDialog(); } else { MessageBox.Show("No path specified", "Event error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } }