init
This commit is contained in:
@@ -0,0 +1,166 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace DTS.Serialization.TSV
|
||||
{
|
||||
public partial class TSVSettingsWindow : Form
|
||||
{
|
||||
protected TSVSettingsWindow() { InitializeComponent(); }
|
||||
|
||||
private volatile bool _bPopulating = false;
|
||||
private TSVTest _test;
|
||||
public TSVSettingsWindow(TSVTest test)
|
||||
{
|
||||
InitializeComponent();
|
||||
_test = test;
|
||||
_bPopulating = true;
|
||||
try
|
||||
{
|
||||
c1GridGlobal.AutoGenerateColumns = false;
|
||||
c1GridGlobal.Styles.Alternate.BackColor = Properties.Settings1.Default.AlternatingRow;
|
||||
c1GridGlobal.Styles.Fixed.BackColor = Properties.Settings1.Default.TableHeader;
|
||||
|
||||
TSVTest.Fields[] fields = Enum.GetValues(typeof(TSVTest.Fields)).Cast<TSVTest.Fields>().ToArray();
|
||||
|
||||
foreach (var field in fields)
|
||||
{
|
||||
switch (field)
|
||||
{
|
||||
case TSVTest.Fields.AAFilterCutoffDescription:
|
||||
case TSVTest.Fields.BitResolution:
|
||||
case TSVTest.Fields.ChannelErrors:
|
||||
case TSVTest.Fields.DataType:
|
||||
case TSVTest.Fields.DigitalFilterType:
|
||||
case TSVTest.Fields.EngineeringUnits:
|
||||
case TSVTest.Fields.SensorAxis:
|
||||
case TSVTest.Fields.SensorLocation:
|
||||
case TSVTest.Fields.SensorMakeModelSerial:
|
||||
case TSVTest.Fields.SensorMountType:
|
||||
//do not display
|
||||
break;
|
||||
default:
|
||||
var row = c1GridGlobal.Rows.Add();
|
||||
row["colField"] = TSVStrings.ResourceManager.GetString(string.Format("{0}_Title", field.ToString()));
|
||||
row["colDescription"] = TSVStrings.ResourceManager.GetString(string.Format("{0}_Description", field.ToString()));
|
||||
row["colValue"] = test.GetValue(field);
|
||||
row.UserData = field;
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
c1GridChannels.Styles.Fixed.BackColor = Properties.Settings1.Default.TableHeader;
|
||||
c1GridChannels.Styles.Alternate.BackColor = Properties.Settings1.Default.AlternatingRow;
|
||||
|
||||
var c = c1GridChannels.Cols.Add();
|
||||
c.Caption = "Channel Number";
|
||||
c.AllowEditing = false;
|
||||
c.DataType = typeof(int);
|
||||
c.Name = "colNumber";
|
||||
c.UserData = null;
|
||||
|
||||
c = c1GridChannels.Cols.Add();
|
||||
c.Caption = "File Name";
|
||||
c.AllowEditing = true;
|
||||
c.DataType = typeof(string);
|
||||
c.Name = "colFileName";
|
||||
c.UserData = null;
|
||||
|
||||
foreach (var field in fields)
|
||||
{
|
||||
c = c1GridChannels.Cols.Add();
|
||||
c.Caption = TSVStrings.ResourceManager.GetString(string.Format("{0}_Title", field.ToString()));
|
||||
c.DataType = typeof(string);
|
||||
c.AllowEditing = true;
|
||||
c.Name = "col" + field.ToString();
|
||||
c.UserData = field;
|
||||
}
|
||||
|
||||
foreach (var channel in test.Channels)
|
||||
{
|
||||
var r = c1GridChannels.Rows.Add();
|
||||
r["colNumber"] = channel.ChannelNumber;
|
||||
r["colFileName"] = channel.FileName;
|
||||
foreach (var field in fields) { r["col" + field.ToString()] = channel.GetValue(field); }
|
||||
r.UserData = channel;
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
_bPopulating = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
DialogResult = DialogResult.OK;
|
||||
Close();
|
||||
}
|
||||
|
||||
private void c1GridGlobal_CellChanged(object sender, C1.Win.C1FlexGrid.RowColEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void gridChannels_CellChanged(object sender, C1.Win.C1FlexGrid.RowColEventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void c1GridChannels_AfterEdit(object sender, C1.Win.C1FlexGrid.RowColEventArgs e)
|
||||
{
|
||||
if (_bPopulating) { return; }
|
||||
try
|
||||
{
|
||||
_bPopulating = true;
|
||||
if (null != c1GridChannels.Rows[e.Row].UserData)
|
||||
{
|
||||
TSVChannel channel = c1GridChannels.Rows[e.Row].UserData as TSVChannel;
|
||||
if (null == channel) { return; }
|
||||
|
||||
if (null != c1GridChannels.Cols[e.Col].UserData)
|
||||
{
|
||||
TSVTest.Fields field = (TSVTest.Fields)c1GridChannels.Cols[e.Col].UserData;
|
||||
channel.SetValue(field, c1GridChannels.Rows[e.Row][e.Col] as string);
|
||||
}
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
_bPopulating = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void c1GridGlobal_AfterEdit(object sender, C1.Win.C1FlexGrid.RowColEventArgs e)
|
||||
{
|
||||
if (_bPopulating) { return; }
|
||||
try
|
||||
{
|
||||
if (null != c1GridGlobal.Rows[e.Row].UserData)
|
||||
{
|
||||
TSVTest.Fields field = (TSVTest.Fields)c1GridGlobal.Rows[e.Row].UserData;
|
||||
_test.SetValue(field, c1GridGlobal.Rows[e.Row]["colValue"] as string);
|
||||
|
||||
for (int i = 0; i < c1GridChannels.Rows.Count; i++)
|
||||
{
|
||||
if (null != c1GridChannels.Rows[i].UserData)
|
||||
{
|
||||
TSVChannel channel = c1GridChannels.Rows[i].UserData as TSVChannel;
|
||||
if (null != channel)
|
||||
{
|
||||
c1GridChannels.Rows[i]["col" + field.ToString()] = channel.GetValue(field);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
finally { _bPopulating = false; }
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user