Added device type to Printer model. Refactoring changes.
This commit is contained in:
parent
7e72699e94
commit
c593396647
7 changed files with 205 additions and 37 deletions
|
|
@ -54,6 +54,7 @@ namespace MatterHackers.MatterControl
|
|||
{
|
||||
static ApplicationWidget globalInstance;
|
||||
public RootedObjectEventHandler ReloadPanelTrigger = new RootedObjectEventHandler();
|
||||
public RootedObjectEventHandler CloudSyncStatusChanged = new RootedObjectEventHandler();
|
||||
|
||||
public SlicePresetsWindow EditSlicePresetsWindow { get; set;}
|
||||
|
||||
|
|
@ -125,5 +126,10 @@ namespace MatterHackers.MatterControl
|
|||
{
|
||||
ReloadPanelTrigger.CallEvents(this, null);
|
||||
}
|
||||
|
||||
public void ChangeCloudSyncStatus()
|
||||
{
|
||||
CloudSyncStatusChanged.CallEvents(this, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -60,10 +60,13 @@ namespace MatterHackers.MatterControl
|
|||
|
||||
Button enablePrintLevelingButton;
|
||||
Button disablePrintLevelingButton;
|
||||
Button enableCloudMonitorButton;
|
||||
Button disableCloudMonitorButton;
|
||||
|
||||
DisableableWidget eePromControlsContainer;
|
||||
DisableableWidget terminalCommunicationsContainer;
|
||||
DisableableWidget printLevelContainer;
|
||||
DisableableWidget cloudMonitorContainer;
|
||||
DisableableWidget printLevelingContainer;
|
||||
|
||||
TextImageButtonFactory textImageButtonFactory = new TextImageButtonFactory();
|
||||
|
||||
|
|
@ -100,6 +103,7 @@ namespace MatterHackers.MatterControl
|
|||
|
||||
mainLayoutContainer.AddChild(terminalControls);
|
||||
AddPrintLevelingControls(mainLayoutContainer);
|
||||
AddCloudMonitorControls(mainLayoutContainer);
|
||||
mainLayoutContainer.AddChild(settingsControls);
|
||||
//mainLayoutContainer.AddChild(releaseControls);
|
||||
|
||||
|
|
@ -275,12 +279,12 @@ namespace MatterHackers.MatterControl
|
|||
UserSettings.Instance.set("UpdateFeedType", releaseCode);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void AddTerminalControls(FlowLayoutWidget controlsTopToBottomLayout)
|
||||
{
|
||||
GroupBox terminalControlsContainer;
|
||||
terminalControlsContainer = new GroupBox(LocalizedString.Get("Communications"));
|
||||
|
||||
|
||||
terminalControlsContainer.Margin = new BorderDouble(0);
|
||||
terminalControlsContainer.TextColor = ActiveTheme.Instance.PrimaryTextColor;
|
||||
terminalControlsContainer.BorderColor = ActiveTheme.Instance.PrimaryTextColor;
|
||||
|
|
@ -320,8 +324,100 @@ namespace MatterHackers.MatterControl
|
|||
terminalCommunicationsContainer.AddChild(terminalControlsContainer);
|
||||
|
||||
controlsTopToBottomLayout.AddChild(terminalCommunicationsContainer);
|
||||
}
|
||||
|
||||
private static GuiWidget CreateSeparatorLine()
|
||||
{
|
||||
GuiWidget topLine = new GuiWidget(10, 1);
|
||||
topLine.Margin = new BorderDouble(0, 5);
|
||||
topLine.HAnchor = Agg.UI.HAnchor.ParentLeftRight;
|
||||
topLine.BackgroundColor = RGBA_Bytes.White;
|
||||
return topLine;
|
||||
}
|
||||
|
||||
public override void OnClosed(EventArgs e)
|
||||
{
|
||||
if (unregisterEvents != null)
|
||||
{
|
||||
unregisterEvents(this, null);
|
||||
}
|
||||
|
||||
base.OnClosed(e);
|
||||
}
|
||||
|
||||
TextWidget cloudMonitorStatusLabel;
|
||||
private void AddCloudMonitorControls(FlowLayoutWidget controlsTopToBottomLayout)
|
||||
{
|
||||
cloudMonitorContainer = new DisableableWidget();
|
||||
cloudMonitorContainer.AddChild(CreateCloudMonitorControls());
|
||||
controlsTopToBottomLayout.AddChild(cloudMonitorContainer);
|
||||
}
|
||||
|
||||
private GuiWidget CreateCloudMonitorControls()
|
||||
{
|
||||
|
||||
GroupBox cloudMonitorContainer = new GroupBox(LocalizedString.Get("Cloud Services"));
|
||||
|
||||
cloudMonitorContainer.Margin = new BorderDouble(0);
|
||||
cloudMonitorContainer.TextColor = ActiveTheme.Instance.PrimaryTextColor;
|
||||
cloudMonitorContainer.BorderColor = ActiveTheme.Instance.PrimaryTextColor;
|
||||
cloudMonitorContainer.HAnchor = Agg.UI.HAnchor.ParentLeftRight;
|
||||
cloudMonitorContainer.Height = 68;
|
||||
|
||||
{
|
||||
FlowLayoutWidget buttonBar = new FlowLayoutWidget();
|
||||
buttonBar.HAnchor |= HAnchor.ParentLeftRight;
|
||||
buttonBar.VAnchor |= Agg.UI.VAnchor.ParentCenter;
|
||||
buttonBar.Margin = new BorderDouble(0, 0, 0, 0);
|
||||
buttonBar.Padding = new BorderDouble(0);
|
||||
|
||||
this.textImageButtonFactory.FixedHeight = TallButtonHeight;
|
||||
|
||||
Agg.Image.ImageBuffer cloudMonitorImage = new Agg.Image.ImageBuffer();
|
||||
ImageIO.LoadImageData(Path.Combine(ApplicationDataStorage.Instance.ApplicationStaticDataPath, "Icons", "PrintStatusControls", "cloud-24x24.png"), cloudMonitorImage);
|
||||
if (!ActiveTheme.Instance.IsDarkTheme)
|
||||
{
|
||||
InvertLightness.DoInvertLightness(cloudMonitorImage);
|
||||
}
|
||||
|
||||
ImageWidget levelingIcon = new ImageWidget(cloudMonitorImage);
|
||||
levelingIcon.Margin = new BorderDouble(right: 6);
|
||||
|
||||
enableCloudMonitorButton = textImageButtonFactory.Generate("Enable".Localize().ToUpper());
|
||||
enableCloudMonitorButton.Margin = new BorderDouble(left: 6);
|
||||
enableCloudMonitorButton.VAnchor = VAnchor.ParentCenter;
|
||||
enableCloudMonitorButton.Click += new ButtonBase.ButtonEventHandler(enableCloudMonitor_Click);
|
||||
|
||||
disableCloudMonitorButton = textImageButtonFactory.Generate("Disable".Localize().ToUpper());
|
||||
disableCloudMonitorButton.Margin = new BorderDouble(left: 6);
|
||||
disableCloudMonitorButton.VAnchor = VAnchor.ParentCenter;
|
||||
disableCloudMonitorButton.Click += new ButtonBase.ButtonEventHandler(disableCloudMonitor_Click);
|
||||
|
||||
cloudMonitorStatusLabel = new TextWidget("");
|
||||
cloudMonitorStatusLabel.AutoExpandBoundsToText = true;
|
||||
cloudMonitorStatusLabel.TextColor = ActiveTheme.Instance.PrimaryTextColor;
|
||||
cloudMonitorStatusLabel.VAnchor = VAnchor.ParentCenter;
|
||||
|
||||
GuiWidget hSpacer = new GuiWidget();
|
||||
hSpacer.HAnchor = HAnchor.ParentLeftRight;
|
||||
|
||||
buttonBar.AddChild(levelingIcon);
|
||||
buttonBar.AddChild(cloudMonitorStatusLabel);
|
||||
buttonBar.AddChild(hSpacer);
|
||||
buttonBar.AddChild(enableCloudMonitorButton);
|
||||
buttonBar.AddChild(disableCloudMonitorButton);
|
||||
ActivePrinterProfile.Instance.DoPrintLevelingChanged.RegisterEvent((sender, e) =>
|
||||
{
|
||||
SetCloudButtonVisiblity();
|
||||
|
||||
}, ref unregisterEvents);
|
||||
|
||||
cloudMonitorContainer.AddChild(buttonBar);
|
||||
}
|
||||
SetCloudButtonVisiblity();
|
||||
return cloudMonitorContainer;
|
||||
}
|
||||
|
||||
string noEepromMappingMessage = "Oops! There is no eeprom mapping for your printer's firmware.".Localize();
|
||||
string noEepromMappingTitle = "Warning no eeprom mapping".Localize();
|
||||
string groupBoxTitle = "EEProm Settings".Localize();
|
||||
|
|
@ -385,34 +481,16 @@ namespace MatterHackers.MatterControl
|
|||
|
||||
controlsTopToBottomLayout.AddChild(eePromControlsContainer);
|
||||
}
|
||||
|
||||
private static GuiWidget CreateSeparatorLine()
|
||||
{
|
||||
GuiWidget topLine = new GuiWidget(10, 1);
|
||||
topLine.Margin = new BorderDouble(0, 5);
|
||||
topLine.HAnchor = Agg.UI.HAnchor.ParentLeftRight;
|
||||
topLine.BackgroundColor = RGBA_Bytes.White;
|
||||
return topLine;
|
||||
}
|
||||
|
||||
SystemWindow printLevelWizardWindow;
|
||||
|
||||
public override void OnClosed(EventArgs e)
|
||||
{
|
||||
if (unregisterEvents != null)
|
||||
{
|
||||
unregisterEvents(this, null);
|
||||
}
|
||||
|
||||
base.OnClosed(e);
|
||||
}
|
||||
SystemWindow printLevelWizardWindow;
|
||||
|
||||
TextWidget printLevelingStatusLabel;
|
||||
|
||||
private void AddPrintLevelingControls(FlowLayoutWidget controlsTopToBottomLayout)
|
||||
{
|
||||
printLevelContainer = new DisableableWidget();
|
||||
printLevelContainer.AddChild(CreatePrintLevelingControlsContainer());
|
||||
controlsTopToBottomLayout.AddChild(printLevelContainer);
|
||||
printLevelingContainer = new DisableableWidget();
|
||||
printLevelingContainer.AddChild(CreatePrintLevelingControlsContainer());
|
||||
controlsTopToBottomLayout.AddChild(printLevelingContainer);
|
||||
}
|
||||
|
||||
EditLevelingSettingsWindow editLevelingSettingsWindow;
|
||||
|
|
@ -536,12 +614,13 @@ namespace MatterHackers.MatterControl
|
|||
|
||||
private void SetVisibleControls()
|
||||
{
|
||||
cloudMonitorContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
if (ActivePrinterProfile.Instance.ActivePrinter == null)
|
||||
{
|
||||
// no printer selected
|
||||
eePromControlsContainer.SetEnableLevel(DisableableWidget.EnableLevel.Disabled);
|
||||
terminalCommunicationsContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
printLevelContainer.SetEnableLevel(DisableableWidget.EnableLevel.Disabled);
|
||||
printLevelingContainer.SetEnableLevel(DisableableWidget.EnableLevel.Disabled);
|
||||
}
|
||||
else // we at least have a printer selected
|
||||
{
|
||||
|
|
@ -553,14 +632,14 @@ namespace MatterHackers.MatterControl
|
|||
case PrinterConnectionAndCommunication.CommunicationStates.AttemptingToConnect:
|
||||
case PrinterConnectionAndCommunication.CommunicationStates.FailedToConnect:
|
||||
eePromControlsContainer.SetEnableLevel(DisableableWidget.EnableLevel.Disabled);
|
||||
printLevelContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
printLevelingContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
terminalCommunicationsContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
break;
|
||||
|
||||
case PrinterConnectionAndCommunication.CommunicationStates.FinishedPrint:
|
||||
case PrinterConnectionAndCommunication.CommunicationStates.Connected:
|
||||
eePromControlsContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
printLevelContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
printLevelingContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
terminalCommunicationsContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
break;
|
||||
|
||||
|
|
@ -574,7 +653,7 @@ namespace MatterHackers.MatterControl
|
|||
case PrinterConnectionAndCommunication.DetailedPrintingState.Printing:
|
||||
|
||||
eePromControlsContainer.SetEnableLevel(DisableableWidget.EnableLevel.Disabled);
|
||||
printLevelContainer.SetEnableLevel(DisableableWidget.EnableLevel.Disabled);
|
||||
printLevelingContainer.SetEnableLevel(DisableableWidget.EnableLevel.Disabled);
|
||||
terminalCommunicationsContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
break;
|
||||
|
||||
|
|
@ -585,7 +664,7 @@ namespace MatterHackers.MatterControl
|
|||
|
||||
case PrinterConnectionAndCommunication.CommunicationStates.Paused:
|
||||
eePromControlsContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
printLevelContainer.SetEnableLevel(DisableableWidget.EnableLevel.Disabled);
|
||||
printLevelingContainer.SetEnableLevel(DisableableWidget.EnableLevel.Disabled);
|
||||
terminalCommunicationsContainer.SetEnableLevel(DisableableWidget.EnableLevel.Enabled);
|
||||
break;
|
||||
|
||||
|
|
@ -616,16 +695,46 @@ namespace MatterHackers.MatterControl
|
|||
//this.Invalidate();
|
||||
}
|
||||
|
||||
void enablePrintLeveling_Click(object sender, MouseEventArgs mouseEvent)
|
||||
void enableCloudMonitor_Click(object sender, MouseEventArgs mouseEvent)
|
||||
{
|
||||
ActivePrinterProfile.Instance.DoPrintLeveling = true;
|
||||
UserSettings.Instance.set("CloudMonitorEnabled","true");
|
||||
ApplicationWidget.Instance.ChangeCloudSyncStatus();
|
||||
ApplicationWidget.Instance.ReloadAdvancedControlsPanel();
|
||||
}
|
||||
|
||||
void disablePrintLeveling_Click(object sender, MouseEventArgs mouseEvent)
|
||||
void disableCloudMonitor_Click(object sender, MouseEventArgs mouseEvent)
|
||||
{
|
||||
ActivePrinterProfile.Instance.DoPrintLeveling = false;
|
||||
UserSettings.Instance.set("CloudMonitorEnabled", "false");
|
||||
ApplicationWidget.Instance.ChangeCloudSyncStatus();
|
||||
ApplicationWidget.Instance.ReloadAdvancedControlsPanel();
|
||||
}
|
||||
|
||||
void enablePrintLeveling_Click(object sender, MouseEventArgs mouseEvent)
|
||||
{
|
||||
ActivePrinterProfile.Instance.DoPrintLeveling = true;
|
||||
}
|
||||
|
||||
void disablePrintLeveling_Click(object sender, MouseEventArgs mouseEvent)
|
||||
{
|
||||
ActivePrinterProfile.Instance.DoPrintLeveling = false;
|
||||
}
|
||||
|
||||
void SetCloudButtonVisiblity()
|
||||
{
|
||||
bool cloudMontitorEnabled = (UserSettings.Instance.get("CloudMonitorEnabled") == "true");
|
||||
enableCloudMonitorButton.Visible = !cloudMontitorEnabled;
|
||||
disableCloudMonitorButton.Visible = cloudMontitorEnabled;
|
||||
|
||||
if (cloudMontitorEnabled)
|
||||
{
|
||||
cloudMonitorStatusLabel.Text = LocalizedString.Get("Cloud Monitoring (enabled)");
|
||||
}
|
||||
else
|
||||
{
|
||||
cloudMonitorStatusLabel.Text = LocalizedString.Get("Cloud Monitoring (disabled)");
|
||||
}
|
||||
}
|
||||
|
||||
void SetPrintLevelButtonVisiblity()
|
||||
{
|
||||
enablePrintLevelingButton.Visible = !ActivePrinterProfile.Instance.DoPrintLeveling;
|
||||
|
|
|
|||
|
|
@ -300,6 +300,8 @@ namespace MatterHackers.MatterControl.DataStorage
|
|||
public string ComPort { get; set; }
|
||||
public string BaudRate { get; set; }
|
||||
public bool AutoConnectFlag { get; set; } //Auto connect to printer (if available)
|
||||
public string DeviceToken { get; set; }
|
||||
public string DeviceType { get; set; }
|
||||
|
||||
// all the data about print leveling
|
||||
public bool DoPrintLeveling { get; set; }
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2012
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MatterControl", "MatterControl.csproj", "{0B8D6F56-BD7F-4426-B858-D9292B084656}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{657DBC6D-C3EA-4398-A3FA-DDB73C14F71B} = {657DBC6D-C3EA-4398-A3FA-DDB73C14F71B}
|
||||
|
|
@ -68,6 +68,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MatterRepair", "..\MatterRe
|
|||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PlatformAbstract", "..\agg-sharp\PlatformAbstract\PlatformAbstract.csproj", "{3E4AABA8-D85F-4922-88C6-5C1B2D2308FB}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CloudServices", "..\CloudServicesPlugin\CloudServices\CloudServices.csproj", "{6782BF37-8139-4DC6-885E-98D22D1FB258}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
|
|
@ -480,6 +482,18 @@ Global
|
|||
{3E4AABA8-D85F-4922-88C6-5C1B2D2308FB}.Release64|Any CPU.Build.0 = Release64|Any CPU
|
||||
{3E4AABA8-D85F-4922-88C6-5C1B2D2308FB}.Release64|x64.ActiveCfg = Release64|Any CPU
|
||||
{3E4AABA8-D85F-4922-88C6-5C1B2D2308FB}.Release64|x86.ActiveCfg = Release64|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Debug|x64.ActiveCfg = Debug|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Release|x64.ActiveCfg = Release|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Release64|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Release64|Any CPU.Build.0 = Release|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Release64|x64.ActiveCfg = Release|Any CPU
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258}.Release64|x86.ActiveCfg = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
|
@ -491,6 +505,7 @@ Global
|
|||
{BEC6FD13-C765-4B90-836B-53823AC12E20} = {DA2BE4E5-5FB2-4C74-9170-0D2513AAFC84}
|
||||
{A3680C51-A549-4D1F-AEA5-3931EA755E9A} = {DA2BE4E5-5FB2-4C74-9170-0D2513AAFC84}
|
||||
{DA4A9C04-C54A-4571-B6B0-957C7E6E868B} = {DA2BE4E5-5FB2-4C74-9170-0D2513AAFC84}
|
||||
{6782BF37-8139-4DC6-885E-98D22D1FB258} = {DA2BE4E5-5FB2-4C74-9170-0D2513AAFC84}
|
||||
EndGlobalSection
|
||||
GlobalSection(MonoDevelopProperties) = preSolution
|
||||
StartupItem = MatterControl.csproj
|
||||
|
|
|
|||
|
|
@ -138,6 +138,7 @@ namespace MatterHackers.MatterControl.PrinterCommunication
|
|||
public RootedObjectEventHandler PositionRead = new RootedObjectEventHandler();
|
||||
public RootedObjectEventHandler ReadLine = new RootedObjectEventHandler();
|
||||
public RootedObjectEventHandler WroteLine = new RootedObjectEventHandler();
|
||||
public RootedObjectEventHandler UpdateEventHook = new RootedObjectEventHandler();
|
||||
|
||||
FoundStringStartsWithCallbacks ReadLineStartCallBacks = new FoundStringStartsWithCallbacks();
|
||||
FoundStringContainsCallbacks ReadLineContainsCallBacks = new FoundStringContainsCallbacks();
|
||||
|
|
@ -154,6 +155,8 @@ namespace MatterHackers.MatterControl.PrinterCommunication
|
|||
|
||||
Stopwatch timeSinceLastReadAnything = new Stopwatch();
|
||||
Stopwatch timeHaveBeenWaitingForOK = new Stopwatch();
|
||||
Stopwatch timeSinceUpdateEvent = new Stopwatch();
|
||||
int secondsBetweenUpdateEvent = 300;
|
||||
|
||||
public enum CommunicationStates { Disconnected, AttemptingToConnect, FailedToConnect, Connected, PreparingToPrint, Printing, Paused, FinishedPrint, Disconnecting, ConnectionLost };
|
||||
CommunicationStates communicationState = CommunicationStates.Disconnected;
|
||||
|
|
@ -606,6 +609,22 @@ namespace MatterHackers.MatterControl.PrinterCommunication
|
|||
}
|
||||
}
|
||||
|
||||
public int TotalLayersInPrint
|
||||
{
|
||||
get
|
||||
{
|
||||
try
|
||||
{
|
||||
int layerCount = loadedGCode.NumChangesInZ;
|
||||
return layerCount;
|
||||
}
|
||||
catch
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public double RatioIntoCurrentLayer
|
||||
{
|
||||
get
|
||||
|
|
@ -713,6 +732,14 @@ namespace MatterHackers.MatterControl.PrinterCommunication
|
|||
temperatureRequestTimer.Restart();
|
||||
}
|
||||
|
||||
if (timeSinceUpdateEvent.Elapsed.Seconds > secondsBetweenUpdateEvent)
|
||||
{
|
||||
UpdateEventHook.CallEvents(null, null);
|
||||
timeSinceUpdateEvent.Restart();
|
||||
}
|
||||
|
||||
|
||||
|
||||
bool waited30SeconsdForOk = timeHaveBeenWaitingForOK.Elapsed.Seconds > 30; // waited for more than 30 seconds
|
||||
bool noResponseFor5Seconds = timeSinceLastReadAnything.Elapsed.Seconds > 5;
|
||||
bool waitedToLongForOK = waited30SeconsdForOk && noResponseFor5Seconds;
|
||||
|
|
|
|||
BIN
StaticData/Icons/PrintStatusControls/cloud-24x24.png
Normal file
BIN
StaticData/Icons/PrintStatusControls/cloud-24x24.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 425 B |
|
|
@ -2406,3 +2406,12 @@ Translated:Has Heated Bed
|
|||
English:Has SD Card Reader
|
||||
Translated:Has SD Card Reader
|
||||
|
||||
English:Cloud Services
|
||||
Translated:Cloud Services
|
||||
|
||||
English:Cloud Monitoring (disabled)
|
||||
Translated:Cloud Monitoring (disabled)
|
||||
|
||||
English:Cloud Monitoring (enabled)
|
||||
Translated:Cloud Monitoring (enabled)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue