Ensure single printer tab only, add support for AddTab(widget, index)
- Issue MatterHackers/MCCentral#3303 Don't open the same printer 2x when selecting a different plate
This commit is contained in:
parent
1b01fb1e55
commit
3e600cfd6e
3 changed files with 50 additions and 11 deletions
|
|
@ -184,6 +184,16 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
|
||||
internal ChromeTab CreatePrinterTab(PrinterConfig printer, ThemeConfig theme, string tabTitle)
|
||||
{
|
||||
// Printer page is in fixed position. If exists, save and close
|
||||
var tab1 = tabControl.AllTabs.Skip(1).FirstOrDefault();
|
||||
if (tab1?.TabContent is PrinterTabPage printerTabPage)
|
||||
{
|
||||
// TODO - call save before remove
|
||||
// printerTabPage.sceneContext.SaveChanges();
|
||||
|
||||
tabControl.RemoveTab(tab1);
|
||||
}
|
||||
|
||||
printerTab = new ChromeTab(
|
||||
tabTitle,
|
||||
tabControl,
|
||||
|
|
@ -195,7 +205,8 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
MinimumSize = new Vector2(120, theme.TabButtonHeight)
|
||||
};
|
||||
|
||||
tabControl.AddTab(printerTab);
|
||||
// Add printer into fixed position
|
||||
tabControl.AddTab(printerTab, 1);
|
||||
|
||||
return printerTab;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue