tbf/TBF/Forms/EmergencyStopForm.cs

61 lines
1.9 KiB
C#

///
/// Copyright (c) 2013-2015 Sensus Metering Systems
///
using System;
using System.Drawing;
using System.Windows.Forms;
using TBF.Resources;
namespace TBF.Forms
{
public partial class EmergencyStopForm : Form
{
bool closingForm = false;
/// <summary>
/// Parameterless constructor (does the localization)
/// </summary>
public EmergencyStopForm()
{
Visible = true;
InitializeComponent();
emergencyStopMsgLabel.Text = Strings.Emergency_STOP;
emergencyStopMsgLabel.Enabled = true;
emergencyStopMsgLabel.Visible = true;
UiBridge.Bridge.EmergencyStopChangedHandler += delegate(object sender, UiBridge.EmergencyStopEventArgs args)
{
if (closingForm) return;
if (InvokeRequired)
{
Invoke(new EventHandler<UiBridge.EmergencyStopEventArgs>(OnEmergencyStopStateChanged), sender, args);
}
else OnEmergencyStopStateChanged(sender, args);
};
}
void OnEmergencyStopStateChanged(Object sender, UiBridge.EmergencyStopEventArgs args)
{
if (args.EmergencyStopState == UiBridge.EmergencyStopEventArgs.State.CloseForm)
{
closingForm = true;
Close();
}
//else if (args.EmergencyStopState == UiBridge.EmergencyStopEventArgs.State.Active)
//{
// Visible = true;
// emergencyStopMsgLabel.Enabled = true;
// emergencyStopMsgLabel.Visible = true;
//}
//else if (args.EmergencyStopState == UiBridge.EmergencyStopEventArgs.State.Inactive)
//{
// Visible = false;
// emergencyStopMsgLabel.Enabled = false;
// emergencyStopMsgLabel.Visible = false;
//}
}
}
}