Switch to printer rather that PrinterSettings dependency
- MatterHackers/MCCentral#4299 Leveling data ignored by running MatterControl instance
This commit is contained in:
parent
df8db9fe22
commit
544f389946
5 changed files with 20 additions and 20 deletions
|
|
@ -38,16 +38,16 @@ namespace MatterHackers.MatterControl.PrinterCommunication.Io
|
|||
private bool activePrinting;
|
||||
private LevelingFunctions currentLevelingFunctions = null;
|
||||
private double currentProbeOffset;
|
||||
private PrinterSettings printerSettings;
|
||||
private bool wroteLevelingStatus = false;
|
||||
private bool gcodeAlreadyLeveled = false;
|
||||
private PrinterConfig printer;
|
||||
|
||||
public PrintLevelingStream(PrinterSettings printerSettings, GCodeStream internalStream, bool activePrinting)
|
||||
public PrintLevelingStream(PrinterConfig printer, GCodeStream internalStream, bool activePrinting)
|
||||
: base(internalStream)
|
||||
{
|
||||
// always reset this when we construct
|
||||
AllowLeveling = true;
|
||||
this.printerSettings = printerSettings;
|
||||
this.printer = printer;
|
||||
this.activePrinting = activePrinting;
|
||||
}
|
||||
|
||||
|
|
@ -60,8 +60,8 @@ namespace MatterHackers.MatterControl.PrinterCommunication.Io
|
|||
get
|
||||
{
|
||||
return AllowLeveling
|
||||
&& printerSettings.GetValue<bool>(SettingsKey.print_leveling_enabled)
|
||||
&& !printerSettings.GetValue<bool>(SettingsKey.has_hardware_leveling);
|
||||
&& printer.Settings.GetValue<bool>(SettingsKey.print_leveling_enabled)
|
||||
&& !printer.Settings.GetValue<bool>(SettingsKey.has_hardware_leveling);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -128,18 +128,18 @@ namespace MatterHackers.MatterControl.PrinterCommunication.Io
|
|||
|
||||
private string GetLeveledPosition(string lineBeingSent, PrinterMove currentDestination)
|
||||
{
|
||||
PrintLevelingData levelingData = printerSettings.Helpers.GetPrintLevelingData();
|
||||
PrintLevelingData levelingData = printer.Settings.Helpers.GetPrintLevelingData();
|
||||
|
||||
if (levelingData != null
|
||||
&& printerSettings?.GetValue<bool>(SettingsKey.print_leveling_enabled) == true
|
||||
&& printer.Settings?.GetValue<bool>(SettingsKey.print_leveling_enabled) == true
|
||||
&& (lineBeingSent.StartsWith("G0 ") || lineBeingSent.StartsWith("G1 ")))
|
||||
{
|
||||
if (currentLevelingFunctions == null
|
||||
|| currentProbeOffset != printerSettings.GetValue<double>(SettingsKey.z_probe_z_offset)
|
||||
|| currentProbeOffset != printer.Settings.GetValue<double>(SettingsKey.z_probe_z_offset)
|
||||
|| !levelingData.SamplesAreSame(currentLevelingFunctions.SampledPositions))
|
||||
{
|
||||
currentProbeOffset = printerSettings.GetValue<double>(SettingsKey.z_probe_z_offset);
|
||||
currentLevelingFunctions = new LevelingFunctions(printerSettings, levelingData);
|
||||
currentProbeOffset = printer.Settings.GetValue<double>(SettingsKey.z_probe_z_offset);
|
||||
currentLevelingFunctions = new LevelingFunctions(printer.Settings, levelingData);
|
||||
}
|
||||
|
||||
lineBeingSent = currentLevelingFunctions.ApplyLeveling(lineBeingSent, currentDestination.position);
|
||||
|
|
|
|||
|
|
@ -44,12 +44,12 @@ namespace MatterHackers.MatterControl.PrinterCommunication.Io
|
|||
|
||||
private QueuedCommandsStream queueStream;
|
||||
|
||||
private PrinterSettings printerSettings;
|
||||
private PrinterConfig printer;
|
||||
|
||||
public ProcessWriteRegexStream(PrinterSettings printerSettings, GCodeStream internalStream, QueuedCommandsStream queueStream)
|
||||
public ProcessWriteRegexStream(PrinterConfig printer, GCodeStream internalStream, QueuedCommandsStream queueStream)
|
||||
: base(internalStream)
|
||||
{
|
||||
this.printerSettings = printerSettings;
|
||||
this.printer = printer;
|
||||
this.queueStream = queueStream;
|
||||
}
|
||||
|
||||
|
|
@ -82,10 +82,10 @@ namespace MatterHackers.MatterControl.PrinterCommunication.Io
|
|||
{
|
||||
lock (WriteLineReplacements)
|
||||
{
|
||||
if (writeRegexString != printerSettings.GetValue(SettingsKey.write_regex))
|
||||
if (writeRegexString != printer.Settings.GetValue(SettingsKey.write_regex))
|
||||
{
|
||||
WriteLineReplacements.Clear();
|
||||
writeRegexString = printerSettings.GetValue(SettingsKey.write_regex);
|
||||
writeRegexString = printer.Settings.GetValue(SettingsKey.write_regex);
|
||||
foreach (string regExLine in writeRegexString.Split(new string[] { "\\n" }, StringSplitOptions.RemoveEmptyEntries))
|
||||
{
|
||||
var matches = getQuotedParts.Matches(regExLine);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue