public Node_DataSelector(string name, Node_TireDataSet parent, bool extract) : base(name, parent) { TDSS = new TireDataSetSelector(parent.GetIDataSet()); if (extract) { TDSS.ExtractData(); } TDSS.TireDataSetSelectorStateChanged += OnTDSSStateChanged; base.IDataSet = TDSS; }
public IDataSet SelectedData() { if (Changed) { if (PureSlipX) { Selector.RemoveConstrain(FZ, AttachedTable); Selector.RemoveConstrain(P, AttachedTable); Selector.RemoveConstrain(IA, AttachedTable); Selector.RemoveConstrain(T, AttachedTable); Selector.RemoveConstrain(SA, AttachedTable); FZ = new TireDataConstrain("FZ", TireDataColumn.FZ, FZBar.valueR, FZBar.valueL); P = new TireDataConstrain("P", TireDataColumn.P, PBar.valueR, PBar.valueL); IA = new TireDataConstrain("IA", TireDataColumn.IA, IABar.valueR, IABar.valueL); T = new TireDataConstrain("T", TireDataColumn.TSTC, TBar.valueR, TBar.valueL); SA = new TireDataConstrain("SA", TireDataColumn.SA, 0.5, -0.5); Selector.AddConstrain(FZ, AttachedTable); Selector.AddConstrain(P, AttachedTable); Selector.AddConstrain(IA, AttachedTable); Selector.AddConstrain(T, AttachedTable); Selector.AddConstrain(SA, AttachedTable); Selector.ExtractData(AttachedTable, NumSearch); } else { Selector.RemoveConstrain(FZ, Table.CorneringTable); Selector.RemoveConstrain(P, Table.CorneringTable); Selector.RemoveConstrain(IA, Table.CorneringTable); Selector.RemoveConstrain(T, Table.CorneringTable); Selector.RemoveConstrain(SA, Table.CorneringTable); Selector.RemoveConstrain(SR, Table.CorneringTable); Selector.RemoveConstrain(FZ, Table.DriveBrakeTable); Selector.RemoveConstrain(P, Table.DriveBrakeTable); Selector.RemoveConstrain(IA, Table.DriveBrakeTable); Selector.RemoveConstrain(T, Table.DriveBrakeTable); Selector.RemoveConstrain(SA, Table.DriveBrakeTable); Selector.RemoveConstrain(SR, Table.DriveBrakeTable); Selector.RemoveConstrain(FZ, Table.TransientTable); Selector.RemoveConstrain(P, Table.TransientTable); Selector.RemoveConstrain(IA, Table.TransientTable); Selector.RemoveConstrain(T, Table.TransientTable); Selector.RemoveConstrain(SA, Table.TransientTable); Selector.RemoveConstrain(SR, Table.TransientTable); FZ = new TireDataConstrain("FZ", TireDataColumn.FZ, FZBar.valueR, FZBar.valueL); P = new TireDataConstrain("P", TireDataColumn.P, PBar.valueR, PBar.valueL); IA = new TireDataConstrain("IA", TireDataColumn.IA, IABar.valueR, IABar.valueL); T = new TireDataConstrain("T", TireDataColumn.TSTC, TBar.valueR, TBar.valueL); SA = new TireDataConstrain("SA", TireDataColumn.SA, SABar.valueR, SABar.valueL); SR = new TireDataConstrain("SR", TireDataColumn.SR, SRBar.valueR, SRBar.valueL); Selector.AddConstrain(FZ, Table.CorneringTable); Selector.AddConstrain(P, Table.CorneringTable); Selector.AddConstrain(IA, Table.CorneringTable); Selector.AddConstrain(T, Table.CorneringTable); Selector.AddConstrain(SA, Table.CorneringTable); Selector.AddConstrain(SR, Table.CorneringTable); Selector.AddConstrain(FZ, Table.DriveBrakeTable); Selector.AddConstrain(P, Table.DriveBrakeTable); Selector.AddConstrain(IA, Table.DriveBrakeTable); Selector.AddConstrain(T, Table.DriveBrakeTable); Selector.AddConstrain(SA, Table.DriveBrakeTable); Selector.AddConstrain(SR, Table.DriveBrakeTable); Selector.AddConstrain(FZ, Table.TransientTable); Selector.AddConstrain(P, Table.TransientTable); Selector.AddConstrain(IA, Table.TransientTable); Selector.AddConstrain(T, Table.TransientTable); Selector.AddConstrain(SA, Table.TransientTable); Selector.AddConstrain(SR, Table.TransientTable); Selector.ExtractData(Table.CorneringTable, NumSearch / 4); Selector.ExtractData(Table.DriveBrakeTable, NumSearch * 3 / 4); Selector.ExtractData(Table.TransientTable, NumSearch); } } Changed = false; return(Selector); }
void AddConstrainToNode(TireDataColumn column, TreeNode ParentNode, TireDataConstrain constrain) { var node = new TreeNode(constrain.Name); ParentNode.Nodes.Add(node); node.ContextMenuStrip = new ContextMenuStrip(); EventHandler handler = delegate(object sender, EventArgs e) { var d = new MaxMinDialog(column, Table, Selector, constrain); d.ShowDialog(); if (d.DialogResult == DialogResult.OK) { constrain.CopyFrom(d.Constrain); Selector.ExtractData(); Selector.ConfirmStateChanged(Table); node.Text = constrain.Name; if (SelectedAreaChanged != null) { SelectedAreaChanged(Selector); } property.Changed(); } }; node.TreeView.NodeMouseDoubleClick += delegate(object sender, TreeNodeMouseClickEventArgs e) { if (e.Node == node) { handler(sender, e); } }; node.TreeView.AfterLabelEdit += delegate(object sender, NodeLabelEditEventArgs e) { e.CancelEdit = true; if (e.Node == node && e.Label != null && e.Label != "") { constrain.Name = e.Label; node.Text = e.Label; Selector.ConfirmStateChanged(Table); property.Changed(); } }; node.ContextMenuStrip.Items.Add( new ToolStripMenuItem( "名前の変更", null, delegate(object sender, EventArgs e) { node.BeginEdit(); } ) ); node.ContextMenuStrip.Items.Add( new ToolStripMenuItem( "編集", null, handler ) ); node.ContextMenuStrip.Items.Add( new ToolStripMenuItem( "削除", null, delegate(object sender, EventArgs e) { Selector.RemoveConstrain(constrain, Table); Selector.ExtractData(); ParentNode.Nodes.Remove(node); if (SelectedAreaChanged != null) { SelectedAreaChanged(Selector); } property.Changed(); } ) ); }