Added feature where setup dialog controls are disabled when the telescope or focuser is attached
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
using System;
|
||||
using System.ComponentModel;
|
||||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Windows.Forms;
|
||||
|
||||
@@ -116,5 +115,20 @@ namespace ASCOM.Meade.net
|
||||
{
|
||||
UpdateOKButton();
|
||||
}
|
||||
|
||||
public void SetReadOnlyMode()
|
||||
{
|
||||
foreach (Control control in Controls)
|
||||
{
|
||||
control.Enabled = false;
|
||||
}
|
||||
|
||||
cmdCancel.Enabled = true;
|
||||
//cmdOK.Enabled = false;
|
||||
//comboBoxComPort.Enabled = false;
|
||||
//chkTrace.Enabled = false;
|
||||
//txtGuideRate.Enabled = false;
|
||||
//cboPrecision.Enabled = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -15,6 +15,7 @@
|
||||
//
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using ASCOM.Utilities;
|
||||
|
||||
namespace ASCOM.Meade.net
|
||||
@@ -226,7 +227,12 @@ namespace ASCOM.Meade.net
|
||||
using (SetupDialogForm f = new SetupDialogForm())
|
||||
{
|
||||
f.SetProfile(profileProperties);
|
||||
|
||||
|
||||
if (IsConnected())
|
||||
{
|
||||
f.SetReadOnlyMode();
|
||||
}
|
||||
|
||||
var result = f.ShowDialog();
|
||||
if (result == System.Windows.Forms.DialogResult.OK)
|
||||
{
|
||||
@@ -332,6 +338,17 @@ namespace ASCOM.Meade.net
|
||||
}
|
||||
}
|
||||
|
||||
public static bool IsConnected()
|
||||
{
|
||||
foreach (var device in _connectedDevices)
|
||||
{
|
||||
if (device.Value.Count > 0)
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public static bool IsConnected(string deviceId)
|
||||
{
|
||||
if (_connectedDevices.ContainsKey(deviceId))
|
||||
|
||||
Reference in New Issue
Block a user