private void WindowAddedHandler(object aSender,
GwmWindowEventArgs aEventArgs)
{
/* Add KeeAgent tab to PwEntryForm dialog */
var pwEntryForm = aEventArgs.Form as PwEntryForm;
if (pwEntryForm != null) {
var optionsPanel = new EntryPanel(this);
pwEntryForm.Shown +=
delegate(object sender, EventArgs args)
{
pwEntryForm.AddTab(optionsPanel);
};
var foundControls = pwEntryForm.Controls.Find("m_btnOK", true);
var okButton = foundControls[0] as Button;
okButton.GotFocus += (sender, args) =>
{
if (optionsPanel.CurrentSettings != optionsPanel.IntialSettings) {
pwEntryForm.EntryBinaries.SetKeeAgentSettings(optionsPanel.CurrentSettings);
}
};
pwEntryForm.EntrySaving += PwEntryForm_EntrySaving;
pwEntryForm.FormClosing += PwEntryForm_FormClosing;
}
/* Add KeeAgent tab to Database Settings dialog */
var databaseSettingForm = aEventArgs.Form as DatabaseSettingsForm;
if (databaseSettingForm != null) {
databaseSettingForm.Shown +=
delegate(object sender, EventArgs args)
{
var dbSettingsPanel =
new DatabaseSettingsPanel(pluginHost.MainWindow.ActiveDatabase);
databaseSettingForm.AddTab(dbSettingsPanel);
};
}
/* Add KeeAgent tab to Options dialog */
var optionsForm = aEventArgs.Form as OptionsForm;
if (optionsForm != null) {
optionsForm.Shown +=
delegate(object sender, EventArgs args)
{
var optionsPanel = new OptionsPanel(this);
optionsForm.AddTab(optionsPanel);
};
optionsForm.FormClosed += OptionsForm_FormClosed;
}
}