128 lines
5.8 KiB
C#
128 lines
5.8 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
using Common;
|
|
using Config.Entities;
|
|
using TBF.BenchControl;
|
|
|
|
namespace TBF.BenchControl.Configs
|
|
{
|
|
public class ConfigCtrlUtils : UserControl
|
|
{
|
|
protected PageOrientation GetOrientation(string str)
|
|
{
|
|
if (str.Equals(PageOrientation.Landscape.ToString())) return PageOrientation.Landscape;
|
|
if (str.Equals(PageOrientation.Portrait.ToString())) return PageOrientation.Portrait;
|
|
return (PageOrientation)(-1);
|
|
}
|
|
|
|
/// <summary>
|
|
/// Updates destination variable when its value differes from the source value.
|
|
/// Returns appropriate flags
|
|
/// </summary>
|
|
/// <param name="cfgVar">Reference to destination variable</param>
|
|
/// <param name="intVal">Source value</param>
|
|
/// <param name="flagsWhenUpdated">Flags returned when an update occurs</param>
|
|
/// <returns>Flags or 0</returns>
|
|
protected CfgUpdateFlags UpdateDifferent(ref int cfgVar, int intVal, CfgUpdateFlags flagsWhenUpdated)
|
|
{
|
|
if (cfgVar != intVal) { cfgVar = intVal; return flagsWhenUpdated; } else return 0;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Updates destination variable when its value differes from the source value.
|
|
/// Returns appropriate flags
|
|
/// </summary>
|
|
/// <param name="cfgVar">Reference to destination variable</param>
|
|
/// <param name="toBeParsedString">Source integer value is obtained by parsing this string</param>
|
|
/// <param name="flagsWhenUpdated">Flags returned when an update occurs</param>
|
|
/// <returns>Flags or 0</returns>
|
|
protected CfgUpdateFlags UpdateDifferent(ref int cfgVar, string toBeParsedString, CfgUpdateFlags flagsWhenUpdated)
|
|
{
|
|
int itmp = int.Parse(toBeParsedString);
|
|
if (cfgVar != itmp) { cfgVar = itmp; return flagsWhenUpdated; } else return 0;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Updates destination variable when its value differes from the source value.
|
|
/// Returns appropriate flags
|
|
/// </summary>
|
|
/// <param name="cfgVar">Reference to destination variable</param>
|
|
/// <param name="toBeParsedString">Source integer value is obtained by parsing this string</param>
|
|
/// <param name="flagsWhenUpdated">Flags returned when an update occurs</param>
|
|
/// <returns>Flags or 0</returns>
|
|
protected CfgUpdateFlags UpdateDifferent(ref float cfgVar, string toBeParsedString, CfgUpdateFlags flagsWhenUpdated)
|
|
{
|
|
float ftmp = Utils.ParseSFloat(toBeParsedString);
|
|
if (cfgVar != ftmp) { cfgVar = ftmp; return flagsWhenUpdated; } else return 0;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Updates destination variable when its value differes from the source value.
|
|
/// Returns appropriate flags
|
|
/// </summary>
|
|
/// <param name="cfgVar">Reference to destination variable</param>
|
|
/// <param name="toBeParsedString">Source integer value is obtained by parsing this string</param>
|
|
/// <param name="flagsWhenUpdated">Flags returned when an update occurs</param>
|
|
/// <returns>Flags or 0</returns>
|
|
protected CfgUpdateFlags UpdateDifferent(ref double cfgVar, string toBeParsedString, CfgUpdateFlags flagsWhenUpdated)
|
|
{
|
|
double dtmp = Utils.ParseSDouble(toBeParsedString);
|
|
if (cfgVar != dtmp) { cfgVar = dtmp; return flagsWhenUpdated; } else return 0;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Updates destination variable when its value differes from the source value.
|
|
/// Returns appropriate flags
|
|
/// </summary>
|
|
/// <param name="cfgVar">Reference to destination variable</param>
|
|
/// <param name="boolVal">Source value</param>
|
|
/// <param name="flagsWhenUpdated">Flags returned when an update occurs</param>
|
|
/// <returns>Flags or 0</returns>
|
|
protected CfgUpdateFlags UpdateDifferent(ref bool cfgVar, bool boolVal, CfgUpdateFlags flagsWhenUpdated)
|
|
{
|
|
if (cfgVar != boolVal) { cfgVar = boolVal; return flagsWhenUpdated; } else return 0;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Updates destination variable when its value differes from the source value.
|
|
/// Returns appropriate flags
|
|
/// </summary>
|
|
/// <param name="cfgVar">Reference to destination variable</param>
|
|
/// <param name="stringVal">Source value</param>
|
|
/// <param name="flagsWhenUpdated">Flags returned when an update occurs</param>
|
|
/// <returns>Flags or 0</returns>
|
|
protected CfgUpdateFlags UpdateDifferent(ref string cfgVar, string stringVal, CfgUpdateFlags flagsWhenUpdated)
|
|
{
|
|
if (cfgVar != stringVal) { cfgVar = stringVal; return flagsWhenUpdated; } else return 0;
|
|
}
|
|
|
|
/// <summary>
|
|
/// Updates destination variable when its value differes from the source value.
|
|
/// Returns appropriate flags
|
|
/// </summary>
|
|
/// <param name="cfgVar">Reference to destination array</param>
|
|
/// <param name="stringArrVal">Source array of strings</param>
|
|
/// <param name="flagsWhenUpdated">Flags returned when an update occurs</param>
|
|
/// <returns>Flags or 0</returns>
|
|
protected CfgUpdateFlags UpdateDifferent(ref string[] cfgVar, string[] stringArrVal, CfgUpdateFlags flagsWhenUpdated)
|
|
{
|
|
if (cfgVar == null && stringArrVal == null)
|
|
{
|
|
return 0;
|
|
}
|
|
else if (cfgVar == null || stringArrVal == null || !cfgVar.SequenceEqual<string>(stringArrVal))
|
|
{
|
|
cfgVar = stringArrVal;
|
|
return flagsWhenUpdated;
|
|
}
|
|
else
|
|
{
|
|
return 0;
|
|
}
|
|
}
|
|
}
|
|
}
|