namespace Controls { using System; using System.ComponentModel; using System.Drawing; using System.Runtime.CompilerServices; using System.Windows.Forms; public class ctrlMapSensor : UserControl { private bool bool_0; private Class18 class18_0; private ErrorProvider errorProvider_0; private IContainer icontainer_0; private int int_1 = 10; //Map Sensors available Number private int[,] int_0 = new int[10, 2]; //Map Sensors Parameters array (10x sensors of 2x values, Min and Max Values) private Label label2; private Label label3; private Label label6; private ComboBox lstMapSensor; private IContainer components; private Label label1; private NumericUpDown txtScalar; private NumericUpDown txtbMapMinMbar; private NumericUpDown txtbMapMaxMbar; private TextBox txtMapKoeo; public event MapSensorChangedDelegate mapSensorChangedDelegate_0; public ctrlMapSensor() { this.InitializeComponent(); } private void ctrlMapSensor_Load(object sender, EventArgs e) { this.method_2(); } protected override void Dispose(bool disposing) { if (disposing && (this.icontainer_0 != null)) { this.icontainer_0.Dispose(); } base.Dispose(disposing); } private void InitializeComponent() { this.components = new System.ComponentModel.Container(); this.lstMapSensor = new System.Windows.Forms.ComboBox(); this.txtMapKoeo = new System.Windows.Forms.TextBox(); this.label6 = new System.Windows.Forms.Label(); this.label3 = new System.Windows.Forms.Label(); this.label2 = new System.Windows.Forms.Label(); this.errorProvider_0 = new System.Windows.Forms.ErrorProvider(this.components); this.label1 = new System.Windows.Forms.Label(); this.txtScalar = new System.Windows.Forms.NumericUpDown(); this.txtbMapMaxMbar = new System.Windows.Forms.NumericUpDown(); this.txtbMapMinMbar = new System.Windows.Forms.NumericUpDown(); ((System.ComponentModel.ISupportInitialize)(this.errorProvider_0)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.txtScalar)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.txtbMapMaxMbar)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.txtbMapMinMbar)).BeginInit(); this.SuspendLayout(); // // lstMapSensor // this.lstMapSensor.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend; this.lstMapSensor.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems; this.lstMapSensor.FormattingEnabled = true; this.lstMapSensor.Items.AddRange(new object[] { "Stock 1.75Bar", "GM 2Bar", "GM 3Bar", "Motorola 2.5Bar", "AEM 3.5Bar", "AEM 5Bar", "Xenocron/Omni 3Bar", "Xenocron/Omni 4Bar", "Sparkks Racing 3Bar", "Custom"}); this.lstMapSensor.Location = new System.Drawing.Point(0, 3); this.lstMapSensor.Name = "lstMapSensor"; this.lstMapSensor.Size = new System.Drawing.Size(156, 21); this.lstMapSensor.TabIndex = 1; this.lstMapSensor.SelectedIndexChanged += new System.EventHandler(this.lstMapSensor_SelectedIndexChanged); // // txtMapKoeo // this.txtMapKoeo.Location = new System.Drawing.Point(102, 94); this.txtMapKoeo.Name = "txtMapKoeo"; this.txtMapKoeo.ReadOnly = true; this.txtMapKoeo.Size = new System.Drawing.Size(51, 20); this.txtMapKoeo.TabIndex = 4; // // label6 // this.label6.AutoSize = true; this.label6.Location = new System.Drawing.Point(2, 97); this.label6.Name = "label6"; this.label6.Size = new System.Drawing.Size(81, 13); this.label6.TabIndex = 8; this.label6.Text = "Engine Off Volt:"; // // label3 // this.label3.AutoSize = true; this.label3.Location = new System.Drawing.Point(2, 53); this.label3.Name = "label3"; this.label3.Size = new System.Drawing.Size(62, 13); this.label3.TabIndex = 4; this.label3.Text = "mBar at 5V:"; // // label2 // this.label2.AutoSize = true; this.label2.Location = new System.Drawing.Point(2, 31); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(97, 13); this.label2.TabIndex = 3; this.label2.Text = "mBar at 0V (offset):"; // // errorProvider_0 // this.errorProvider_0.ContainerControl = this; // // label1 // this.label1.AutoSize = true; this.label1.Location = new System.Drawing.Point(2, 75); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(90, 13); this.label1.TabIndex = 10; this.label1.Text = "mBar/Volt Scalar:"; // // txtScalar // this.txtScalar.Location = new System.Drawing.Point(102, 72); this.txtScalar.Maximum = new decimal(new int[] { 2000, 0, 0, 0}); this.txtScalar.Minimum = new decimal(new int[] { 250, 0, 0, 0}); this.txtScalar.Name = "txtScalar"; this.txtScalar.Size = new System.Drawing.Size(51, 20); this.txtScalar.TabIndex = 11; this.txtScalar.Value = new decimal(new int[] { 250, 0, 0, 0}); this.txtScalar.ValueChanged += new System.EventHandler(this.txtbScalar_TextChanged); this.txtScalar.Validating += new System.ComponentModel.CancelEventHandler(this.txtbMapMinMbar_Validating); this.txtScalar.Validated += new System.EventHandler(this.txtbScalar_Validated); // // txtbMapMaxMbar // this.txtbMapMaxMbar.Increment = new decimal(new int[] { 10, 0, 0, 0}); this.txtbMapMaxMbar.Location = new System.Drawing.Point(102, 50); this.txtbMapMaxMbar.Maximum = new decimal(new int[] { 6500, 0, 0, 0}); this.txtbMapMaxMbar.Minimum = new decimal(new int[] { 1500, 0, 0, 0}); this.txtbMapMaxMbar.Name = "txtbMapMaxMbar"; this.txtbMapMaxMbar.Size = new System.Drawing.Size(51, 20); this.txtbMapMaxMbar.TabIndex = 12; this.txtbMapMaxMbar.Value = new decimal(new int[] { 1500, 0, 0, 0}); this.txtbMapMaxMbar.ValueChanged += new System.EventHandler(this.txtbMapMinMbar_TextChanged); this.txtbMapMaxMbar.Validating += new System.ComponentModel.CancelEventHandler(this.txtbMapMinMbar_Validating); this.txtbMapMaxMbar.Validated += new System.EventHandler(this.txtbMapMinMbar_Validated); // // txtbMapMinMbar // this.txtbMapMinMbar.Location = new System.Drawing.Point(102, 28); this.txtbMapMinMbar.Maximum = new decimal(new int[] { 150, 0, 0, 0}); this.txtbMapMinMbar.Minimum = new decimal(new int[] { 700, 0, 0, -2147483648}); this.txtbMapMinMbar.Name = "txtbMapMinMbar"; this.txtbMapMinMbar.Size = new System.Drawing.Size(51, 20); this.txtbMapMinMbar.TabIndex = 13; this.txtbMapMinMbar.Value = new decimal(new int[] { 700, 0, 0, -2147483648}); this.txtbMapMinMbar.ValueChanged += new System.EventHandler(this.txtbMapMinMbar_TextChanged); this.txtbMapMinMbar.Validating += new System.ComponentModel.CancelEventHandler(this.txtbMapMinMbar_Validating); this.txtbMapMinMbar.Validated += new System.EventHandler(this.txtbMapMinMbar_Validated); // // ctrlMapSensor // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.Controls.Add(this.txtbMapMinMbar); this.Controls.Add(this.txtbMapMaxMbar); this.Controls.Add(this.txtScalar); this.Controls.Add(this.label1); this.Controls.Add(this.lstMapSensor); this.Controls.Add(this.label2); this.Controls.Add(this.txtMapKoeo); this.Controls.Add(this.label3); this.Controls.Add(this.label6); this.Name = "ctrlMapSensor"; this.Size = new System.Drawing.Size(158, 117); this.Load += new System.EventHandler(this.ctrlMapSensor_Load); ((System.ComponentModel.ISupportInitialize)(this.errorProvider_0)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.txtScalar)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.txtbMapMaxMbar)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.txtbMapMinMbar)).EndInit(); this.ResumeLayout(false); this.PerformLayout(); } private void lstMapSensor_SelectedIndexChanged(object sender, EventArgs e) { int selectedIndex = this.lstMapSensor.SelectedIndex; if (selectedIndex < this.int_1) { this.bool_0 = true; this.txtbMapMinMbar.Text = this.int_0[selectedIndex, 0].ToString(); this.txtbMapMaxMbar.Text = this.int_0[selectedIndex, 1].ToString(); this.txtMapKoeo.Text = this.method_3(int.Parse(this.txtbMapMinMbar.Text), int.Parse(this.txtbMapMaxMbar.Text)).ToString("0.00"); this.txtScalar.Text = ((double.Parse(this.txtbMapMaxMbar.Text) - double.Parse(this.txtbMapMinMbar.Text)) / 5.0).ToString(); this.bool_0 = false; } else { this.txtMapKoeo.Text = ""; } if (((this.errorProvider_0.GetError(this.txtbMapMaxMbar) == string.Empty) && (this.errorProvider_0.GetError(this.txtbMapMinMbar) == string.Empty)) && (this.mapSensorChangedDelegate_0 != null)) { this.mapSensorChangedDelegate_0(this.getMinMbar, this.getMaxMbar, this.lstMapSensor.SelectedIndex + 2); } } internal void method_0(ref Class18 class18_1) { this.class18_0 = class18_1; this.bool_0 = true; this.lstMapSensor.SelectedIndex = 0; this.bool_0 = false; foreach (Control control in base.Controls) { float emSize = control.Font.Size * (class18_0.class10_settings_0.scaleRate / 100f); control.Font = new Font(control.Font.Name, emSize, control.Font.Style, control.Font.Unit); } } private void method_2() { //Minimum and Maximum mBar values for each available MAP Sensors //Stock 1.75Bar" this.int_0[0, 0] = -70; this.int_0[0, 1] = 1790; //GM 2Bar this.int_0[1, 0] = 8; this.int_0[1, 1] = 2041; //GM 3Bar this.int_0[2, 0] = 11; this.int_0[2, 1] = 3155; //Motorola 2.5Bar this.int_0[3, 0] = 70; this.int_0[3, 1] = 2590; //AEM 3.5Bar this.int_0[4, 0] = -431; this.int_0[4, 1] = 3844; //AEM 5Bar this.int_0[5, 0] = -625; this.int_0[5, 1] = 5625; //Xenocron/Omni 3Bar this.int_0[6, 0] = 11; this.int_0[6, 1] = 3040; //Xenocron/Omni 4Bar this.int_0[7, 0] = 35; this.int_0[7, 1] = 4180; //Sparkks Racing 3Bar this.int_0[8, 0] = -132; this.int_0[8, 1] = 3163; //Custom Map Sensor this.int_0[9, 0] = -70; this.int_0[9, 1] = 1790; } private double method_3(int int_2, int int_3) { double num = 5.0 / (int_3 + Math.Abs((double) int_2)); double num2 = this.class18_0.class10_settings_0.int_6 - int_2; return (num * num2); } private void method_4(NumericUpDown textBox_0) { textBox_0.Focus(); textBox_0.Focus(); } public void setMapSensor(int min, int max, int index) { this.bool_0 = true; this.txtbMapMinMbar.Text = min.ToString(); this.txtbMapMaxMbar.Text = max.ToString(); this.lstMapSensor.SelectedIndex = index; this.txtMapKoeo.Text = this.method_3(min, max).ToString("0.00"); int IntegerVal = (int)((double.Parse(this.txtbMapMaxMbar.Text) - double.Parse(this.txtbMapMinMbar.Text)) / 5.0); this.txtScalar.Text = IntegerVal.ToString(); this.bool_0 = false; } private void txtbMapMinMbar_TextChanged(object sender, EventArgs e) { if (!this.bool_0) { this.method_4((NumericUpDown)sender); //select 'custom' map sensor in the sensors list if (this.lstMapSensor.SelectedIndex != this.int_1) { string PreviousText1 = this.txtbMapMinMbar.Text; string PreviousText2 = this.txtbMapMaxMbar.Text; this.bool_0 = true; this.lstMapSensor.SelectedIndex = this.int_1 - 1; this.txtbMapMinMbar.Text = PreviousText1; this.txtbMapMaxMbar.Text = PreviousText2; this.bool_0 = false; } txtbMapMinMbar_Validated(sender, e); } } private void txtbScalar_TextChanged(object sender, EventArgs e) { if (!this.bool_0) { this.method_4((NumericUpDown)sender); //select 'custom' map sensor in the sensors list if (this.lstMapSensor.SelectedIndex != this.int_1) { string PreviousText1 = this.txtbMapMinMbar.Text; string PreviousText2 = this.txtScalar.Text; this.bool_0 = true; this.lstMapSensor.SelectedIndex = this.int_1 - 1; this.txtbMapMinMbar.Text = PreviousText1; this.txtScalar.Text = PreviousText2; this.bool_0 = false; } txtbScalar_Validated(sender, e); } } private void txtbMapMinMbar_Validated(object sender, EventArgs e) { if ((!this.bool_0 && (this.txtbMapMinMbar.Text != "")) && (this.txtbMapMaxMbar.Text != "")) { this.bool_0 = true; this.txtMapKoeo.Text = this.method_3(int.Parse(this.txtbMapMinMbar.Text), int.Parse(this.txtbMapMaxMbar.Text)).ToString("0.00"); this.txtScalar.Text = ((double.Parse(this.txtbMapMaxMbar.Text) - double.Parse(this.txtbMapMinMbar.Text)) / 5.0).ToString(); this.bool_0 = false; if (this.mapSensorChangedDelegate_0 != null) { this.mapSensorChangedDelegate_0(this.getMinMbar, this.getMaxMbar, this.lstMapSensor.SelectedIndex + 2); } this.Invalidate(); } } private void txtbScalar_Validated(object sender, EventArgs e) { if ((!this.bool_0 && (this.txtbMapMinMbar.Text != "")) && (this.txtbMapMaxMbar.Text != "")) { this.bool_0 = true; this.txtbMapMaxMbar.Text = ((double.Parse(this.txtScalar.Text) * 5.0) + double.Parse(this.txtbMapMinMbar.Text)).ToString(); this.txtMapKoeo.Text = this.method_3(int.Parse(this.txtbMapMinMbar.Text), int.Parse(this.txtbMapMaxMbar.Text)).ToString("0.00"); this.txtScalar.Text = ((double.Parse(this.txtbMapMaxMbar.Text) - double.Parse(this.txtbMapMinMbar.Text)) / 5.0).ToString(); this.bool_0 = false; if (this.mapSensorChangedDelegate_0 != null) { this.mapSensorChangedDelegate_0(this.getMinMbar, this.getMaxMbar, this.lstMapSensor.SelectedIndex + 2); } this.Invalidate(); } } private void txtbMapMinMbar_Validating(object sender, CancelEventArgs e) { /*NumericUpDown control = (NumericUpDown) sender; if (!this.class18_0.method_255(control.Text.ToString())) { this.errorProvider_0.SetError(control, "Invalid input, integer required"); e.Cancel = true; } else { this.errorProvider_0.SetError(control, ""); }*/ } public int getMaxMbar { get { return int.Parse(this.txtbMapMaxMbar.Text); } } public int getMinMbar { get { return int.Parse(this.txtbMapMinMbar.Text); } } public delegate void MapSensorChangedDelegate(int MbarMin, int MbarMax, int Index); } }