private void UpdateTabConnection(TabPage tab) { tab.GetPlugin().UpdateConnection(service, currentConnectionDetail); tab.Text = string.Format("{0} ({1})", ((Lazy <IXrmToolBoxPlugin, IPluginMetadata>)tab.Tag).Metadata.Name, currentConnectionDetail != null ? currentConnectionDetail.ConnectionName : "Not connected"); }
private void RequestCloseTab(TabPage page, PluginCloseInfo info) { var plugin = page.GetPlugin(); plugin.ClosingPlugin(info); if (info.Cancel) { return; } CloseTab(page); }
/// <summary> /// Only to be called from the RequestCloseTab /// </summary> /// <param name="page"></param> private void CloseTab(TabPage page) { tabControl1.TabPages.Remove(page); if (page.Controls.Count == 0) { return; } var plugin = page.GetPlugin() as UserControl; plugin?.Dispose(); }
private void RequestCloseTab(TabPage page, PluginCloseInfo info) { info.Silent = currentOptions.CloseEachPluginSilently; var plugin = page.GetPlugin(); plugin.ClosingPlugin(info); if (info.Cancel) { return; } CloseTab(page); }
private void UpdateTabConnection(TabPage tab) { if (pluginConnections.ContainsKey(tab.TabIndex)) { pluginConnections[tab.TabIndex] = currentConnectionDetail; } tab.GetPlugin()?.UpdateConnection(service, currentConnectionDetail); tab.Text = string.Format("{0} ({1})", ((Lazy <IXrmToolBoxPlugin, IPluginMetadata>)tab.Tag).Metadata.Name, currentConnectionDetail != null ? currentConnectionDetail.ConnectionName : "Not connected"); }
private void RequestCloseTab(TabPage page, PluginCloseInfo info) { info.Silent = currentOptions.CloseEachPluginSilently; var plugin = page.GetPlugin(); plugin?.ClosingPlugin(info); if (info.Cancel) { return; } int index = tabControl1.TabPages.IndexOf(page); CloseTab(page); pluginConnections.Remove(index); for (var i = index; i <= pluginConnections.Count; i++) { pluginConnections.Add(i, pluginConnections[i + 1]); pluginConnections.Remove(i + 1); } }