private void popupOptions_Click(object sender, EventArgs e)
{
using(var cfg = new ConfigurationDialog())
{
IList<IPluginConfigurationPageProvider> configProviders = new List<IPluginConfigurationPageProvider>();
foreach (var plugin in _controler.Plugins)
{
var configPageProvider = plugin as IPluginConfigurationPageProvider;
if (configPageProvider != null)
{
cfg.AddPages(configPageProvider.ConfigurationPage);
configProviders.Add(configPageProvider);
}
}
if (cfg.ShowDialog() == DialogResult.OK)
{
foreach (var configProvider in configProviders)
{
configProvider.Accept();
}
}
}
}