public PluginPage AddPlugin(string Path, string ClassName) { //if this is the first plugin, simply put it on the panel PluginPage pp = new PluginPage(); pp.Dock = DockStyle.Fill; if (FPluginCount == 0) { pp.Parent = MainPanel; } else { TabPage tab; //if not yet there, create the TabControl if (PluginTabs == null) { PluginTabs = new TabControl(); PluginTabs.MouseClick += PluginTabsMouseClick; PluginTabs.SelectedIndexChanged += PluginTabsSelectedIndexChanged; PluginTabs.Parent = MainPanel; PluginTabs.Dock = DockStyle.Fill; //move first plugin to TabPage tab = new TabPage(); MainPanel.Controls[0].Parent = tab; tab.Text = (tab.Controls[0] as PluginPage).NodeInfoName; PluginTabs.TabPages.Add(tab); } tab = new TabPage(); PluginTabs.TabPages.Add(tab); pp.Parent = tab; //tab.Height = PluginPages.Height; //initializing PluginTabs.SelectedIndex = PluginTabs.TabPages.Count - 1; } //if this is an additional plugin (to the first) //create a TabPage and put allplugins there //AddPluginPage(FPlugins[PlugIndex].Path, FPlugins[PlugIndex].ClassName); pp.LoadPlugin(Path, ClassName); if (PluginTabs != null) { PluginTabs.TabPages[PluginTabs.SelectedIndex].Text = pp.NodeInfoName; } this.Text = pp.NodeInfoName + "SA"; FPluginCount++; return(pp); }
private PluginPage AddPluginPage(string Path, string ClassName) { TabPage tab = new TabPage(); tab.Text = ClassName; PluginTabs.TabPages.Add(tab); tab.Height = PluginTabs.Height; //initializing PluginTabs.SelectedIndex = PluginTabs.TabPages.Count - 1; PluginPage pp = new PluginPage(); pp.Parent = tab; pp.Dock = DockStyle.Fill; pp.LoadPlugin(Path, ClassName); this.Text = pp.NodeInfoName + "SA"; return(pp); }