diff --git a/ShuntCalculator.sln b/ShuntCalculator.sln new file mode 100644 index 0000000..8f8c11b --- /dev/null +++ b/ShuntCalculator.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.30523.141 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShuntCalculator", "ShuntCalculator\ShuntCalculator.csproj", "{91D3DC06-E7E4-47AB-9897-85AEEDDDFF72}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {91D3DC06-E7E4-47AB-9897-85AEEDDDFF72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {91D3DC06-E7E4-47AB-9897-85AEEDDDFF72}.Debug|Any CPU.Build.0 = Debug|Any CPU + {91D3DC06-E7E4-47AB-9897-85AEEDDDFF72}.Release|Any CPU.ActiveCfg = Release|Any CPU + {91D3DC06-E7E4-47AB-9897-85AEEDDDFF72}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {FD5D1169-0BFB-4135-9794-74E34971CFDF} + EndGlobalSection +EndGlobal diff --git a/ShuntCalculator/App.config b/ShuntCalculator/App.config new file mode 100644 index 0000000..56efbc7 --- /dev/null +++ b/ShuntCalculator/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ShuntCalculator/Form1.Designer.cs b/ShuntCalculator/Form1.Designer.cs new file mode 100644 index 0000000..42bb728 --- /dev/null +++ b/ShuntCalculator/Form1.Designer.cs @@ -0,0 +1,317 @@ +namespace ShuntCalculator +{ + partial class Form1 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1)); + this.maskedTextBox1 = new System.Windows.Forms.MaskedTextBox(); + this.groupBox1 = new System.Windows.Forms.GroupBox(); + this.label8 = new System.Windows.Forms.Label(); + this.label7 = new System.Windows.Forms.Label(); + this.label6 = new System.Windows.Forms.Label(); + this.label5 = new System.Windows.Forms.Label(); + this.maskedTextBox4 = new System.Windows.Forms.MaskedTextBox(); + this.label4 = new System.Windows.Forms.Label(); + this.maskedTextBox3 = new System.Windows.Forms.MaskedTextBox(); + this.label3 = new System.Windows.Forms.Label(); + this.maskedTextBox2 = new System.Windows.Forms.MaskedTextBox(); + this.label2 = new System.Windows.Forms.Label(); + this.label1 = new System.Windows.Forms.Label(); + this.groupBox2 = new System.Windows.Forms.GroupBox(); + this.label13 = new System.Windows.Forms.Label(); + this.label12 = new System.Windows.Forms.Label(); + this.label11 = new System.Windows.Forms.Label(); + this.label10 = new System.Windows.Forms.Label(); + this.label9 = new System.Windows.Forms.Label(); + this.checkBox1 = new System.Windows.Forms.CheckBox(); + this.toolTip1 = new System.Windows.Forms.ToolTip(this.components); + this.groupBox1.SuspendLayout(); + this.groupBox2.SuspendLayout(); + this.SuspendLayout(); + // + // maskedTextBox1 + // + this.maskedTextBox1.Location = new System.Drawing.Point(11, 77); + this.maskedTextBox1.Mask = "000"; + this.maskedTextBox1.Name = "maskedTextBox1"; + this.maskedTextBox1.Size = new System.Drawing.Size(285, 31); + this.maskedTextBox1.TabIndex = 0; + this.maskedTextBox1.Text = "350"; + this.toolTip1.SetToolTip(this.maskedTextBox1, "Enter your cards default power limit"); + this.maskedTextBox1.TextChanged += new System.EventHandler(this.maskedTextBox1_TextChanged); + // + // groupBox1 + // + this.groupBox1.Controls.Add(this.checkBox1); + this.groupBox1.Controls.Add(this.label8); + this.groupBox1.Controls.Add(this.label7); + this.groupBox1.Controls.Add(this.label6); + this.groupBox1.Controls.Add(this.label5); + this.groupBox1.Controls.Add(this.maskedTextBox4); + this.groupBox1.Controls.Add(this.label4); + this.groupBox1.Controls.Add(this.maskedTextBox3); + this.groupBox1.Controls.Add(this.label3); + this.groupBox1.Controls.Add(this.maskedTextBox2); + this.groupBox1.Controls.Add(this.label2); + this.groupBox1.Controls.Add(this.label1); + this.groupBox1.Controls.Add(this.maskedTextBox1); + this.groupBox1.Location = new System.Drawing.Point(12, 12); + this.groupBox1.Name = "groupBox1"; + this.groupBox1.Size = new System.Drawing.Size(713, 313); + this.groupBox1.TabIndex = 1; + this.groupBox1.TabStop = false; + this.groupBox1.Text = "Calculator"; + // + // label8 + // + this.label8.AutoSize = true; + this.label8.Location = new System.Drawing.Point(375, 255); + this.label8.Name = "label8"; + this.label8.Size = new System.Drawing.Size(48, 25); + this.label8.TabIndex = 11; + this.label8.Text = "732"; + this.toolTip1.SetToolTip(this.label8, "New max power limit thats adjustable too."); + // + // label7 + // + this.label7.AutoSize = true; + this.label7.Location = new System.Drawing.Point(6, 255); + this.label7.Name = "label7"; + this.label7.Size = new System.Drawing.Size(48, 25); + this.label7.TabIndex = 10; + this.label7.Text = "700"; + this.toolTip1.SetToolTip(this.label7, "New power limit with card on defaulk setting."); + // + // label6 + // + this.label6.AutoSize = true; + this.label6.Location = new System.Drawing.Point(375, 215); + this.label6.Name = "label6"; + this.label6.Size = new System.Drawing.Size(224, 25); + this.label6.TabIndex = 9; + this.label6.Text = "New Max Power Limit:"; + // + // label5 + // + this.label5.AutoSize = true; + this.label5.Location = new System.Drawing.Point(6, 215); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(177, 25); + this.label5.TabIndex = 8; + this.label5.Text = "New Power Limit:"; + // + // maskedTextBox4 + // + this.maskedTextBox4.Location = new System.Drawing.Point(380, 164); + this.maskedTextBox4.Mask = "000"; + this.maskedTextBox4.Name = "maskedTextBox4"; + this.maskedTextBox4.PromptChar = ' '; + this.maskedTextBox4.Size = new System.Drawing.Size(142, 31); + this.maskedTextBox4.TabIndex = 7; + this.maskedTextBox4.Text = "005"; + this.toolTip1.SetToolTip(this.maskedTextBox4, "Shunt value that is stacked or value of resistor replacing."); + this.maskedTextBox4.TextChanged += new System.EventHandler(this.maskedTextBox4_TextChanged); + // + // label4 + // + this.label4.AutoSize = true; + this.label4.Location = new System.Drawing.Point(375, 127); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(136, 25); + this.label4.TabIndex = 6; + this.label4.Text = "Added Shunt"; + // + // maskedTextBox3 + // + this.maskedTextBox3.Location = new System.Drawing.Point(11, 164); + this.maskedTextBox3.Mask = "000"; + this.maskedTextBox3.Name = "maskedTextBox3"; + this.maskedTextBox3.PromptChar = ' '; + this.maskedTextBox3.Size = new System.Drawing.Size(142, 31); + this.maskedTextBox3.TabIndex = 5; + this.maskedTextBox3.Text = "005"; + this.toolTip1.SetToolTip(this.maskedTextBox3, "Default Shunt resistors found on gpu"); + this.maskedTextBox3.TextChanged += new System.EventHandler(this.maskedTextBox3_TextChanged); + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Location = new System.Drawing.Point(11, 127); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(142, 25); + this.label3.TabIndex = 4; + this.label3.Text = "Default Shunt"; + // + // maskedTextBox2 + // + this.maskedTextBox2.Location = new System.Drawing.Point(380, 77); + this.maskedTextBox2.Mask = "000"; + this.maskedTextBox2.Name = "maskedTextBox2"; + this.maskedTextBox2.Size = new System.Drawing.Size(285, 31); + this.maskedTextBox2.TabIndex = 3; + this.maskedTextBox2.Text = "366"; + this.toolTip1.SetToolTip(this.maskedTextBox2, "Enter your cards max power limit"); + this.maskedTextBox2.TextChanged += new System.EventHandler(this.maskedTextBox2_TextChanged); + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(375, 40); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(279, 25); + this.label2.TabIndex = 2; + this.label2.Text = "Cards Max Power Limit (W):"; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(6, 40); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(292, 25); + this.label1.TabIndex = 1; + this.label1.Text = "Cards Stock Power Limit (W):"; + // + // groupBox2 + // + this.groupBox2.Controls.Add(this.label13); + this.groupBox2.Controls.Add(this.label12); + this.groupBox2.Controls.Add(this.label11); + this.groupBox2.Controls.Add(this.label10); + this.groupBox2.Controls.Add(this.label9); + this.groupBox2.Location = new System.Drawing.Point(12, 339); + this.groupBox2.Name = "groupBox2"; + this.groupBox2.Size = new System.Drawing.Size(713, 245); + this.groupBox2.TabIndex = 2; + this.groupBox2.TabStop = false; + this.groupBox2.Text = "Maths"; + // + // label13 + // + this.label13.AutoSize = true; + this.label13.Location = new System.Drawing.Point(11, 194); + this.label13.Name = "label13"; + this.label13.Size = new System.Drawing.Size(84, 25); + this.label13.TabIndex = 4; + this.label13.Text = " "; + // + // label12 + // + this.label12.AutoSize = true; + this.label12.Location = new System.Drawing.Point(11, 154); + this.label12.Name = "label12"; + this.label12.Size = new System.Drawing.Size(84, 25); + this.label12.TabIndex = 3; + this.label12.Text = " "; + // + // label11 + // + this.label11.AutoSize = true; + this.label11.Location = new System.Drawing.Point(11, 107); + this.label11.Name = "label11"; + this.label11.Size = new System.Drawing.Size(102, 25); + this.label11.TabIndex = 2; + this.label11.Text = " "; + // + // label10 + // + this.label10.AutoSize = true; + this.label10.Location = new System.Drawing.Point(11, 72); + this.label10.Name = "label10"; + this.label10.Size = new System.Drawing.Size(66, 25); + this.label10.TabIndex = 1; + this.label10.Text = " "; + // + // label9 + // + this.label9.AutoSize = true; + this.label9.Location = new System.Drawing.Point(11, 37); + this.label9.Name = "label9"; + this.label9.Size = new System.Drawing.Size(96, 25); + this.label9.TabIndex = 0; + this.label9.Text = " "; + // + // checkBox1 + // + this.checkBox1.AutoSize = true; + this.checkBox1.Location = new System.Drawing.Point(163, 166); + this.checkBox1.Name = "checkBox1"; + this.checkBox1.Size = new System.Drawing.Size(135, 29); + this.checkBox1.TabIndex = 12; + this.checkBox1.Text = "Replaced"; + this.toolTip1.SetToolTip(this.checkBox1, "Replacing the shunt instead of stacking them."); + this.checkBox1.UseVisualStyleBackColor = true; + this.checkBox1.CheckedChanged += new System.EventHandler(this.checkBox1_CheckedChanged); + // + // Form1 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(12F, 25F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(740, 602); + this.Controls.Add(this.groupBox2); + this.Controls.Add(this.groupBox1); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "Form1"; + this.Text = "ShuntMod Calculator by bmgjet"; + this.groupBox1.ResumeLayout(false); + this.groupBox1.PerformLayout(); + this.groupBox2.ResumeLayout(false); + this.groupBox2.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.MaskedTextBox maskedTextBox1; + private System.Windows.Forms.GroupBox groupBox1; + private System.Windows.Forms.Label label8; + private System.Windows.Forms.Label label7; + private System.Windows.Forms.Label label6; + private System.Windows.Forms.Label label5; + private System.Windows.Forms.MaskedTextBox maskedTextBox4; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.MaskedTextBox maskedTextBox3; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.MaskedTextBox maskedTextBox2; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.GroupBox groupBox2; + private System.Windows.Forms.Label label9; + private System.Windows.Forms.Label label10; + private System.Windows.Forms.Label label11; + private System.Windows.Forms.Label label13; + private System.Windows.Forms.Label label12; + private System.Windows.Forms.CheckBox checkBox1; + private System.Windows.Forms.ToolTip toolTip1; + } +} + diff --git a/ShuntCalculator/Form1.cs b/ShuntCalculator/Form1.cs new file mode 100644 index 0000000..6122927 --- /dev/null +++ b/ShuntCalculator/Form1.cs @@ -0,0 +1,89 @@ +using System; +using System.Windows.Forms; + +namespace ShuntCalculator +{ + public partial class Form1 : Form + { + public Form1() + { + InitializeComponent(); + } + + private void maskedTextBox1_TextChanged(object sender, EventArgs e) + { + Setdefaultlimiter(); + } + + + private void Setdefaultlimiter() + { + try + { + float defpl = float.Parse(maskedTextBox1.Text); + float maxpl = float.Parse(maskedTextBox2.Text); + float defaulshunt = float.Parse(maskedTextBox3.Text); + float newshunt = float.Parse(maskedTextBox4.Text); + + float newrestance = (defaulshunt * newshunt) / (defaulshunt + newshunt); + float sensevoltage1 = (defpl / 12f) * defaulshunt; + float sensevoltage2 = (maxpl / 12f) * defaulshunt; + if (checkBox1.Checked) + { + newrestance = newshunt; + } + Double dc = Math.Round(newrestance, 2); + label9.Text = "New Shunt Restance = " + dc.ToString() + "MΩ"; + + + label10.Text = defpl.ToString() + "W = " + Math.Round(sensevoltage1, 2).ToString() + "mv Sensor voltage"; + + float NewAmps1 = sensevoltage1 / newrestance; + float NewAmps2 = sensevoltage2 / newrestance; + + double newdefpl = Math.Round(NewAmps1 * 12, 2); + double newmaxpl = Math.Round(NewAmps2 * 12, 2); + + + label11.Text = Math.Round(sensevoltage1, 2).ToString() + "mv now = " + Math.Round(NewAmps1, 2).ToString() + "Amp with " + dc.ToString() + "MΩ"; + label7.Text = newdefpl.ToString() + "W"; + label8.Text = newmaxpl.ToString() + "W"; + + label12.Text = "2 Plug: Slot=" + Math.Round(0.205 * newdefpl, 1).ToString() + "W Plug1=" + Math.Round(0.395 * newdefpl, 1).ToString() + "W Plug2=" + Math.Round(0.395 * newdefpl, 1).ToString() + "w"; + label13.Text = "3 Plug: Slot=" + Math.Round(0.19 * newdefpl, 1).ToString() + "W Plug1=" + Math.Round(0.27 * newdefpl, 1).ToString() + "W Plug2=" + Math.Round(0.27 * newdefpl, 1).ToString() + "W Plug3=" + Math.Round(0.27 * newdefpl, 1).ToString() + "W"; + } + catch + { + + } + } + + + private void maskedTextBox3_TextChanged(object sender, EventArgs e) + { + Setdefaultlimiter(); + } + + private void maskedTextBox2_TextChanged(object sender, EventArgs e) + { + Setdefaultlimiter(); + } + + private void maskedTextBox4_TextChanged(object sender, EventArgs e) + { + Setdefaultlimiter(); + } + + private void checkBox1_CheckedChanged(object sender, EventArgs e) + { + if (checkBox1.Checked) + { + label4.Text = "Replaced With"; + } + else + { + label4.Text = "Added Shunt"; + } + } + } +} diff --git a/ShuntCalculator/Form1.resx b/ShuntCalculator/Form1.resx new file mode 100644 index 0000000..01e462e --- /dev/null +++ b/ShuntCalculator/Form1.resx @@ -0,0 +1,200 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAIcdAACHHQAAAAAAAAAA + AAD+/v5x/v7+cf7+/nH+/v5x/v7+cf7+/nH+/v5x/v7+cf7+/nH+/v5x/v7+cf7+/nH+/v5x/v7+cf7+ + /nH+/v5x/v7+cf7+/nH+/v5x/v7+cf7+/nH+/v5x/v7+cf7+/nH+/v5x/v7+cf7+/nH+/v5x/v7+cf7+ + /nH+/v5x////cf7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+/v7+ + /v7+/v7+/v7+/v7+/v7////+/v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+///////+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v///////v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7///////7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//f39/+/v7//4+Pj///////7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v///////v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//3+/v/n6Oj/vr+//8LC + wf/v7+////////7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+///////+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v//////5+fo/8bI + yf+4ubn/pKSk/7Ozs//h4eH//f39//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7///////7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//////9fX + 1/+oqar/wsXG/7m6uv+kpKT/oqKi/6mpqf/Q0ND/+Pj4///////+/v7//v7+//7+/v/+/v7//v7+//7+ + /v///////v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//// + ///V1dX/Z2dn/4iJiv/GyMn/ysvL/7Gxsf+jo6P/o6Oj/6SkpP+/v7//7u7u///////+/v7//v7+//7+ + /v/+/v7//v7+///////+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v//////0dHR/2VlZf9GRkb/jIyN/9LT0//Y2Nj/1dXV/7y8vP+mpqb/o6Oj/6Kiov+xsbH/39/f//39 + /f///////v7+//7+/v/+/v7///////7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//////87Ozv9hYWH/R0dH/0dHR/9iYmL/rK2t/9DQ0P/V1dX/1tbW/8bGxv+srKz/o6Oj/6Ki + ov+np6f/zc3N//f39////////v7+//7+/v///////v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/IyMj/Xl5e/0ZGRv9ISEj/RERE/0BAQP9MTEz/ioqK/8PDw//S0tL/1dXV/8/P + z/+1tbX/pKSk/6Kiov+jo6P/u7u7/+zs7P///////v7+///////+/v7//v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7/xMTE/1paWv9FRUX/R0dH/0RERP9CQkL/QkJC/0FBQf9BQUH/Z2dn/6ys + rP/Nzc3/09PT/9PT0/+/v7//qKio/6Kiov+hoaH/ra2t/93d3f/9/f3///////7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+/8DAwP9XV1f/RUVF/0ZGRv9DQ0P/QkJC/0JCQv9BQUH/QkJC/0JC + Qv8/Pz//Tk5O/4yMjP/Dw8P/0NDQ/9PT0//Kysr/sLCw/6Kiov+fn5//r6+v//b29v///////v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//39/f+8vLz/VVVV/0RERP9FRUX/QkJC/0JCQv9CQkL/QkJC/0JC + Qv9CQkL/QkJC/0JCQv9BQUH/QUFB/2tra/+vr6//zc3N/9LS0v/Q0ND/urq6/6Ojo/+pqan/8fHx//// + ///+/v7//v7+//7+/v/+/v7//v7+//7+/v/8/Pz/tbW1/1FRUf9DQ0P/RERE/0JCQv9BQUH/QkJC/0JC + Qv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/Pz8//1BQUP+RkZH/xcXF/9DQ0P/S0tL/xMTE/7Gx + sf/u7u7///////7+/v/+/v7//v7+//7+/v//////+/v7/7Gxsf9OTk7/Q0ND/0NDQ/9CQkL/QUFB/0FB + Qf9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9CQkL/QkJC/0JCQv9DQ0P/QUFB/0NDQ/9wcHD/s7Oz/8/P + z//U1NT/29vb//f39////////v7+//7+/v/+/v7///////v7+/+rq6v/TExM/0JCQv9CQkL/QUFB/0BA + QP9BQUH/QUFB/0FBQf9BQUH/QkJC/0JCQv9CQkL/QkJC/0JCQv9DQ0P/Q0ND/0NDQ/9DQ0P/Q0ND/0BA + QP9UVFT/mpqa/+Hh4f/6+vr////////////+/v7//v7+///////5+fn/pqam/0pKSv9BQUH/QkJC/0BA + QP9AQED/QEBA/0BAQP9BQUH/QUFB/0FBQf9CQkL/QkJC/0JCQv9CQkL/QkJC/0NDQ/9DQ0P/Q0ND/0ND + Q/9DQ0P/QkJC/0JCQv+IiIj/9vb2///////+/v7///////7+/v//////+Pj4/6CgoP9HR0f/QUFB/0FB + Qf9AQED/QEBA/0BAQP9AQED/QEBA/0BAQP9AQED/QUFB/0JCQv9CQkL/QkJC/0JCQv9DQ0P/Q0ND/0ND + Q/9DQ0P/Q0ND/0FBQf9QUFD/pKSk//Pz8////////v7+//7+/v////////////Hx8f+ZmZn/RUVF/z8/ + P/9AQED/QEBA/0BAQP9AQED/QEBA/0BAQP9AQED/QEBA/0BAQP9BQUH/QkJC/0JCQv9CQkL/QkJC/0ND + Q/9DQ0P/Q0ND/0NDQ/9BQUH/Z2dn/8jIyP/9/f3///////7+/v/+/v7//v7+///////29vb/tLS0/0ZG + Rv8/Pz//QEBA/0BAQP9AQED/QEBA/0BAQP9AQED/QEBA/0BAQP9AQED/QEBA/0FBQf9CQkL/QkJC/0JC + Qv9CQkL/Q0ND/0NDQ/9BQUH/R0dH/4eHh//l5eX///////7+/v/+/v7//v7+//7+/v/+/v7//////9zc + 3P+enp7/Q0ND/z8/P/9AQED/QEBA/0BAQP9AQED/QEBA/0BAQP9AQED/QEBA/0BAQP9AQED/QUFB/0JC + Qv9CQkL/QkJC/0NDQ/9DQ0P/QUFB/1VVVf+urq7/9/f3///////+/v7//v7+//7+/v/+/v7//v7+//7+ + /v//////1dXV/5eXl/8/Pz//Pz8//0BAQP9AQED/QEBA/0BAQP9AQED/QEBA/0BAQP9AQED/QEBA/0BA + QP9BQUH/QkJC/0JCQv9CQkL/QkJC/0JCQv9ubm7/0dHR//7+/v///////v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+///////W1tb/wcHB/35+fv9NTU3/Pj4+/z8/P/9AQED/QEBA/0BAQP9AQED/QEBA/0BA + QP9AQED/QEBA/0FBQf9CQkL/QkJC/0BAQP9JSUn/kZGR/+rq6v///////v7+//7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7///////Hx8f/m5ub/2NjY/7S0tP97e3v/TU1N/z4+Pv8/Pz//QEBA/0BA + QP9AQED/QEBA/0BAQP9BQUH/QUFB/0JCQv9AQED/Wlpa/7e3t//5+fn///////7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v////////////z8/P/y8vL/4+Pj/9PT0/+ysrL/enp6/0xM + TP8+Pj7/Pz8//0BAQP9AQED/QEBA/0FBQf9BQUH/QkJC/3Z2dv/Y2Nj///////7+/v/+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+///////+/v7//v7+//7+/v/8/Pz/8vLy/+Li + 4v/R0dH/sbGx/3t7e/9NTU3/Pz8//0BAQP9AQED/Pz8//0xMTP+bm5v/7+/v///////+/v7//v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7///////7+/v/+/v7//v7+//7+ + /v///////Pz8//Ly8v/i4uL/0tLS/7Kysv97e3v/TU1N/z4+Pv9fX1//wMDA//v7+////////v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v///////v7+//7+ + /v/+/v7//v7+//7+/v/+/v7///////39/f/z8/P/4+Pj/9PT0/+4uLj/o6Oj/9/f3////////v7+//7+ + /v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//7+/v/+/v7//v7+//// + ///+/v74/v7++P7+/vj+/v74/v7++P7+/vj+/v74/v7++P////j9/f349PT0+Pb29vj////4////+P7+ + /vj+/v74/v7++P7+/vj+/v74/v7++P7+/vj+/v74/v7++P7+/vj+/v74/v7++P7+/vj+/v74/v7++P7+ + /vj+/v74////+P7+/lP+/v5T/v7+U/7+/lP+/v5T/v7+U/7+/lP+/v5T/v7+U/7+/lP///9T////U/7+ + /lP+/v5T/v7+U/7+/lP+/v5T/v7+U/7+/lP+/v5T/v7+U/7+/lP+/v5T/v7+U/7+/lP+/v5T/v7+U/7+ + /lP+/v5T/v7+U/7+/lP///9TAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + + \ No newline at end of file diff --git a/ShuntCalculator/Program.cs b/ShuntCalculator/Program.cs new file mode 100644 index 0000000..71ad4ec --- /dev/null +++ b/ShuntCalculator/Program.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace ShuntCalculator +{ + static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new Form1()); + } + } +} diff --git a/ShuntCalculator/Properties/AssemblyInfo.cs b/ShuntCalculator/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..de504e3 --- /dev/null +++ b/ShuntCalculator/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("ShuntCalculator")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("ShuntCalculator")] +[assembly: AssemblyCopyright("Copyright © 2020")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("91d3dc06-e7e4-47ab-9897-85aeedddff72")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/ShuntCalculator/Properties/Resources.Designer.cs b/ShuntCalculator/Properties/Resources.Designer.cs new file mode 100644 index 0000000..91cafb2 --- /dev/null +++ b/ShuntCalculator/Properties/Resources.Designer.cs @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace ShuntCalculator.Properties +{ + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources + { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() + { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager + { + get + { + if ((resourceMan == null)) + { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("ShuntCalculator.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture + { + get + { + return resourceCulture; + } + set + { + resourceCulture = value; + } + } + } +} diff --git a/ShuntCalculator/Properties/Resources.resx b/ShuntCalculator/Properties/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/ShuntCalculator/Properties/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/ShuntCalculator/Properties/Settings.Designer.cs b/ShuntCalculator/Properties/Settings.Designer.cs new file mode 100644 index 0000000..2fe92d5 --- /dev/null +++ b/ShuntCalculator/Properties/Settings.Designer.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace ShuntCalculator.Properties +{ + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase + { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default + { + get + { + return defaultInstance; + } + } + } +} diff --git a/ShuntCalculator/Properties/Settings.settings b/ShuntCalculator/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/ShuntCalculator/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/ShuntCalculator/ShuntCalculator.csproj b/ShuntCalculator/ShuntCalculator.csproj new file mode 100644 index 0000000..24533e6 --- /dev/null +++ b/ShuntCalculator/ShuntCalculator.csproj @@ -0,0 +1,89 @@ + + + + + Debug + AnyCPU + {91D3DC06-E7E4-47AB-9897-85AEEDDDFF72} + WinExe + ShuntCalculator + ShuntCalculator + v4.7.2 + 512 + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + icon_CZI_icon.ico + + + + + + + + + + + + + + + + + Form + + + Form1.cs + + + + + Form1.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + + + + \ No newline at end of file diff --git a/ShuntCalculator/icon_CZI_icon.ico b/ShuntCalculator/icon_CZI_icon.ico new file mode 100644 index 0000000..161035c Binary files /dev/null and b/ShuntCalculator/icon_CZI_icon.ico differ