Remove OpenPrinterIDs from ProfileManager

- Issue MatterHackers/MCCentral#4729
Investigate failing PrinterNameChange test
This commit is contained in:
John Lewin 2018-12-19 09:09:17 -08:00
parent 0bdb7823e9
commit c66b29e90e
3 changed files with 16 additions and 15 deletions

View file

@ -91,8 +91,8 @@ namespace MatterHackers.MatterControl.DataStorage.ClassicDB
printerSettings.UserLayer[SettingsKey.device_token] = printer.DeviceToken ?? "";
printerSettings.UserLayer[SettingsKey.device_type] = printer.DeviceType ?? "";
// Open the first imported printer if undefined
if (!ProfileManager.Instance.OpenPrinterIDs.Any())
// Open the first imported printer if no active printer
if (!ApplicationController.Instance.ActivePrinters.Any())
{
ApplicationController.Instance.OpenEmptyPrinter(printer.Id.ToString()).ConfigureAwait(false);
}

View file

@ -243,9 +243,6 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
}
}
[JsonIgnore]
public IEnumerable<string> OpenPrinterIDs => _activeProfileIDs;
public void ClosePrinter(string printerID)
{
try
@ -689,19 +686,19 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
private void Printer_SettingsChanged(object sender, EventArgs e)
{
string printerID = (sender as PrinterSettings)?.ID;
var settings = (sender as PrinterSettings);
string printerID = settings?.ID;
var printer = ApplicationController.Instance.ActivePrinters.FirstOrDefault(p => p.Settings.ID == printerID);
if (Instance?.OpenPrinterIDs.Any() != true
|| printer == null)
if (string.IsNullOrWhiteSpace(printerID))
{
// Exit early if PrinterSettings or ID is invalid
return;
}
var profile = Instance[printer.Settings.ID];
var profile = Instance[printerID];
if (profile == null)
{
// Exit early if printer is not known
return;
}
@ -709,12 +706,12 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
switch (settingsKey)
{
case SettingsKey.printer_name:
profile.Name = printer.Settings.GetValue(SettingsKey.printer_name);
profile.Name = settings.GetValue(SettingsKey.printer_name);
Instance.Save();
break;
case SettingsKey.com_port:
profile.ComPort = printer.Settings.Helpers.ComPort();
profile.ComPort = settings.Helpers.ComPort();
Instance.Save();
break;
}