Skip to content

Commit

Permalink
user-defined primed switch delay
Browse files Browse the repository at this point in the history
  • Loading branch information
SK21 committed Feb 9, 2024
1 parent fbc163c commit 2f40ad5
Show file tree
Hide file tree
Showing 20 changed files with 198 additions and 67 deletions.
2 changes: 1 addition & 1 deletion RateAppSource/RateController/Classes/clsSectionControl.cs
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ void SetPriming()
{
if (MasterOnSB)
{
if (((DateTime.Now - OnFirstPressed).TotalSeconds > 2) && mf.SwitchBox.SwitchIsOn(SwIDs.MasterOn))
if (((DateTime.Now - OnFirstPressed).TotalSeconds > mf.PrimedDelay) && mf.SwitchBox.SwitchIsOn(SwIDs.MasterOn))
{
// priming mode
TimedOn = true;
Expand Down
2 changes: 1 addition & 1 deletion RateAppSource/RateController/Classes/clsTools.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ public class clsTools
private string cPropertiesApp;
private string cPropertiesFile;
private string cSettingsDir;
private string cVersionDate = "05-Feb-2024";
private string cVersionDate = "09-Feb-2024";
private FormStart mf;

public clsTools(FormStart CallingForm)
Expand Down
13 changes: 13 additions & 0 deletions RateAppSource/RateController/FormStart.cs
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,9 @@ public partial class FormStart : Form
public clsVirtualSwitchBox vSwitchBox;
public string WiFiIP;
public clsZones Zones;
private int cPrimedDelay = 2;


private int cDefaultProduct = 0;
private byte cPressureToShowID;
private bool cShowPressure;
Expand Down Expand Up @@ -341,6 +344,7 @@ public void LoadSettings()
if (byte.TryParse(Tls.LoadProperty("PressureID"), out byte ID)) cPressureToShowID = ID;
if (bool.TryParse(Tls.LoadProperty("ShowQuantityRemaining"), out bool QR)) ShowQuantityRemaining = QR;
if (bool.TryParse(Tls.LoadProperty("ShowCoverageRemaining"), out bool CR)) ShowCoverageRemaining = CR;
if (int.TryParse(Tls.LoadProperty("PrimedDelay"), out int PD)) cPrimedDelay = PD;

if (double.TryParse(Tls.LoadProperty("SimSpeed"), out double Spd))
{
Expand Down Expand Up @@ -769,6 +773,14 @@ private void FormatDisplay()
Tls.WriteErrorLog("FormStart/FormatDisplay: " + ex.Message);
}
}
public int PrimedDelay
{
get { return cPrimedDelay; }
set
{
if (value >= 0 && value < 9) { cPrimedDelay = value; }
}
}

private void FormRateControl_FormClosed(object sender, FormClosedEventArgs e)
{
Expand All @@ -786,6 +798,7 @@ private void FormRateControl_FormClosed(object sender, FormClosedEventArgs e)
Tls.SaveProperty("ShowQuantityRemaining", ShowQuantityRemaining.ToString());
Tls.SaveProperty("ShowCoverageRemaining", ShowCoverageRemaining.ToString());
Tls.SaveProperty("PrimedTime", cPrimedTime.ToString());
Tls.SaveProperty("PrimedDelay",cPrimedDelay.ToString());
UDPaog.Close();
UDPmodules.Close();

Expand Down
59 changes: 51 additions & 8 deletions RateAppSource/RateController/frmPrimedStart.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

140 changes: 83 additions & 57 deletions RateAppSource/RateController/frmPrimedStart.cs
Original file line number Diff line number Diff line change
@@ -1,12 +1,7 @@
using AgOpenGPS;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace RateController
Expand All @@ -23,6 +18,49 @@ public frmPrimedStart(FormStart CalledFrom)
mf = CalledFrom;
}

private void btnOK_Click(object sender, EventArgs e)
{
try
{
if (!FormEdited)
{
this.Close();
}
else
{
// save data

if (double.TryParse(tbSpeed.Text, out double Speed))
{
mf.Tls.SaveProperty("CalSpeed", Speed.ToString());
mf.SimSpeed = Speed;
}

if (double.TryParse(tbTime.Text, out double Time))
{
mf.Tls.SaveProperty("PrimedTime", Time.ToString());
mf.PrimedTime = Time;
}

if (int.TryParse(tbDelay.Text, out int Delay)) mf.PrimedDelay = Delay;

SetButtons(false);
}
}
catch (Exception ex)
{
mf.Tls.ShowHelp(ex.Message, this.Text, 3000, true);
}
}

private void frmPrimedStart_FormClosed(object sender, FormClosedEventArgs e)
{
if (this.WindowState == FormWindowState.Normal)
{
mf.Tls.SaveFormData(this);
}
}

private void frmPrimedStart_Load(object sender, EventArgs e)
{
mf.Tls.LoadFormData(this);
Expand Down Expand Up @@ -50,86 +88,74 @@ private void frmPrimedStart_Load(object sender, EventArgs e)
tbTime.Text = Time.ToString("N0");
}

tbDelay.Text = mf.PrimedDelay.ToString("N0");

SetDayMode();

Initializing = false;
}

private void SetButtons(bool Edited = false)
{
if (!Initializing)
{
if (Edited)
{
btnCancel.Enabled = true;
btnOK.Image = Properties.Resources.Save;
}
else
{
btnCancel.Enabled = false;
btnOK.Image = Properties.Resources.OK;
btnOK.Enabled = true;
}
FormEdited = Edited;
}
}

private void SetDayMode()
{
if (Properties.Settings.Default.IsDay)
{
this.BackColor = Properties.Settings.Default.DayColour;

foreach (Control c in this.Controls)
{
c.ForeColor = (Color)c.Tag;
c.ForeColor = Color.Black;
}
}
else
{
this.BackColor = Properties.Settings.Default.NightColour;

foreach (Control c in this.Controls)
{
c.ForeColor = Color.White;
}
}
}

private void frmPrimedStart_FormClosed(object sender, FormClosedEventArgs e)
private void tbDelay_Enter(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Normal)
{
mf.Tls.SaveFormData(this);
}
}

private void btnOK_Click(object sender, EventArgs e)
{
try
double tempD;
double.TryParse(tbDelay.Text, out tempD);
using (var form = new FormNumeric(0, 8, tempD))
{
if (!FormEdited)
var result = form.ShowDialog();
if (result == DialogResult.OK)
{
this.Close();
}
else
{
// save data

if (double.TryParse(tbSpeed.Text, out double Speed))
{
mf.Tls.SaveProperty("CalSpeed", Speed.ToString());
mf.SimSpeed = Speed;
}

if (double.TryParse(tbTime.Text, out double Time))
{
mf.Tls.SaveProperty("PrimedTime", Time.ToString());
mf.PrimedTime= Time;
}

SetButtons(false);
tbDelay.Text = form.ReturnValue.ToString("N0");
}
}
catch (Exception ex)
{
mf.Tls.ShowHelp(ex.Message, this.Text, 3000, true);
}
}
private void SetButtons(bool Edited = false)

private void tbDelay_Validating(object sender, CancelEventArgs e)
{
if (!Initializing)
double tempD;
double.TryParse(tbDelay.Text, out tempD);
if (tempD < 0 || tempD > 8)
{
if (Edited)
{
btnCancel.Enabled = true;
btnOK.Image = Properties.Resources.Save;
}
else
{
btnCancel.Enabled = false;
btnOK.Image = Properties.Resources.OK;
btnOK.Enabled = true;
}
FormEdited = Edited;
System.Media.SystemSounds.Exclamation.Play();
e.Cancel = true;
}
}

Expand Down Expand Up @@ -193,4 +219,4 @@ private void tbTime_Validating(object sender, CancelEventArgs e)
}
}
}
}
}
Binary file not shown.
Binary file not shown.
Loading

0 comments on commit 2f40ad5

Please sign in to comment.