From 95864c36a75a8ad90b6a08caf2350c0ca8a7fb4c Mon Sep 17 00:00:00 2001 From: Fabio Ferretti Date: Thu, 28 Feb 2019 10:16:01 +0100 Subject: [PATCH 1/3] Modern jog Control Adding a modern looking jog custom Usercontrol. It replace the direction and home button. It also replace the distance trackbar. --- LaserGRBL/GrblCore.cs | 20 + LaserGRBL/JogForm.Designer.cs | 349 ++------------- LaserGRBL/JogForm.cs | 37 +- LaserGRBL/JogForm.resx | 467 -------------------- LaserGRBL/LaserGRBL.csproj | 3 + LaserGRBL/UserControls/Move2DControl.cs | 543 ++++++++++++++++++++++++ 6 files changed, 613 insertions(+), 806 deletions(-) create mode 100644 LaserGRBL/UserControls/Move2DControl.cs diff --git a/LaserGRBL/GrblCore.cs b/LaserGRBL/GrblCore.cs index f5d36f7c4..b8d1474ea 100644 --- a/LaserGRBL/GrblCore.cs +++ b/LaserGRBL/GrblCore.cs @@ -1016,6 +1016,26 @@ public bool JogEnabled } } + public void Move(Point move) + { + if (JogEnabled) + { + decimal speed = JogSpeed; + + string cmd = SupportJogging ? "$J=G91X{0}Y{1}F{2}" : "G0X{0}Y{1}F{2}"; + cmd = string.Format(cmd, move.X, move.Y, speed); + + if (!SupportJogging) + EnqueueCommand(new GrblCommand("G91")); + + EnqueueCommand(new GrblCommand(cmd)); + + if (!SupportJogging) + EnqueueCommand(new GrblCommand("G90")); + + } + + } public void Jog(JogDirection dir) { if (JogEnabled) diff --git a/LaserGRBL/JogForm.Designer.cs b/LaserGRBL/JogForm.Designer.cs index 557c972a7..724c8ec07 100644 --- a/LaserGRBL/JogForm.Designer.cs +++ b/LaserGRBL/JogForm.Designer.cs @@ -29,94 +29,41 @@ protected override void Dispose(bool disposing) private void InitializeComponent() { this.components = new System.ComponentModel.Container(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(JogForm)); - this.tlp = new System.Windows.Forms.TableLayoutPanel(); - this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); - this.TbSpeed = new System.Windows.Forms.TrackBar(); - this.LblSpeed = new System.Windows.Forms.Label(); - this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel(); - this.TbStep = new System.Windows.Forms.TrackBar(); - this.LblStep = new System.Windows.Forms.Label(); this.TT = new System.Windows.Forms.ToolTip(this.components); this.UpdateFMax = new System.Windows.Forms.Timer(this.components); - this.BtnHome = new LaserGRBL.DirectionButton(); - this.imageButton1 = new LaserGRBL.DirectionButton(); - this.imageButton2 = new LaserGRBL.DirectionButton(); - this.imageButton4 = new LaserGRBL.DirectionButton(); - this.imageButton6 = new LaserGRBL.DirectionButton(); - this.imageButton5 = new LaserGRBL.DirectionButton(); - this.imageButton8 = new LaserGRBL.DirectionButton(); - this.imageButton7 = new LaserGRBL.DirectionButton(); - this.imageButton3 = new LaserGRBL.DirectionButton(); - this.tlp.SuspendLayout(); - this.tableLayoutPanel1.SuspendLayout(); + this.LblSpeed = new System.Windows.Forms.Label(); + this.TbSpeed = new System.Windows.Forms.TrackBar(); + this.LeftPanel = new System.Windows.Forms.Panel(); + this.move2DControl1 = new LaserGRBL.UserControls.Move2DControl(); ((System.ComponentModel.ISupportInitialize)(this.TbSpeed)).BeginInit(); - this.tableLayoutPanel2.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.TbStep)).BeginInit(); + this.LeftPanel.SuspendLayout(); this.SuspendLayout(); // - // tlp + // UpdateFMax // - this.tlp.ColumnCount = 7; - this.tlp.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F)); - this.tlp.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tlp.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tlp.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tlp.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tlp.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tlp.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F)); - this.tlp.Controls.Add(this.BtnHome, 3, 2); - this.tlp.Controls.Add(this.imageButton1, 2, 2); - this.tlp.Controls.Add(this.imageButton2, 3, 1); - this.tlp.Controls.Add(this.imageButton4, 4, 2); - this.tlp.Controls.Add(this.imageButton6, 2, 1); - this.tlp.Controls.Add(this.imageButton5, 4, 1); - this.tlp.Controls.Add(this.imageButton8, 3, 3); - this.tlp.Controls.Add(this.imageButton7, 2, 3); - this.tlp.Controls.Add(this.imageButton3, 4, 3); - this.tlp.Controls.Add(this.tableLayoutPanel1, 1, 1); - this.tlp.Controls.Add(this.tableLayoutPanel2, 5, 1); - this.tlp.Dock = System.Windows.Forms.DockStyle.Fill; - this.tlp.Location = new System.Drawing.Point(0, 0); - this.tlp.Name = "tlp"; - this.tlp.RowCount = 5; - this.tlp.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); - this.tlp.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tlp.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tlp.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tlp.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); - this.tlp.Size = new System.Drawing.Size(234, 125); - this.tlp.TabIndex = 0; + this.UpdateFMax.Interval = 1000; + this.UpdateFMax.Tick += new System.EventHandler(this.UpdateFMax_Tick); // - // tableLayoutPanel1 + // LblSpeed // - this.tableLayoutPanel1.AutoSize = true; - this.tableLayoutPanel1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; - this.tableLayoutPanel1.ColumnCount = 1; - this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel1.Controls.Add(this.TbSpeed, 0, 0); - this.tableLayoutPanel1.Controls.Add(this.LblSpeed, 0, 1); - this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; - this.tableLayoutPanel1.Location = new System.Drawing.Point(4, 3); - this.tableLayoutPanel1.Margin = new System.Windows.Forms.Padding(0); - this.tableLayoutPanel1.Name = "tableLayoutPanel1"; - this.tableLayoutPanel1.RowCount = 2; - this.tlp.SetRowSpan(this.tableLayoutPanel1, 3); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); - this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel1.Size = new System.Drawing.Size(51, 119); - this.tableLayoutPanel1.TabIndex = 18; + this.LblSpeed.AutoSize = true; + this.LblSpeed.Dock = System.Windows.Forms.DockStyle.Bottom; + this.LblSpeed.Location = new System.Drawing.Point(0, 112); + this.LblSpeed.Name = "LblSpeed"; + this.LblSpeed.Size = new System.Drawing.Size(37, 13); + this.LblSpeed.TabIndex = 17; + this.LblSpeed.Text = "F1000"; // // TbSpeed // this.TbSpeed.Dock = System.Windows.Forms.DockStyle.Fill; this.TbSpeed.LargeChange = 100; - this.TbSpeed.Location = new System.Drawing.Point(3, 3); + this.TbSpeed.Location = new System.Drawing.Point(0, 0); this.TbSpeed.Maximum = 4000; this.TbSpeed.Minimum = 10; this.TbSpeed.Name = "TbSpeed"; this.TbSpeed.Orientation = System.Windows.Forms.Orientation.Vertical; - this.TbSpeed.Size = new System.Drawing.Size(45, 100); + this.TbSpeed.Size = new System.Drawing.Size(42, 112); this.TbSpeed.SmallChange = 50; this.TbSpeed.TabIndex = 16; this.TbSpeed.TickFrequency = 200; @@ -125,259 +72,49 @@ private void InitializeComponent() this.TbSpeed.ValueChanged += new System.EventHandler(this.TbSpeed_ValueChanged); this.TbSpeed.MouseUp += new System.Windows.Forms.MouseEventHandler(this.OnSliderMouseUP); // - // LblSpeed - // - this.LblSpeed.Anchor = System.Windows.Forms.AnchorStyles.None; - this.LblSpeed.AutoSize = true; - this.LblSpeed.Location = new System.Drawing.Point(7, 106); - this.LblSpeed.Name = "LblSpeed"; - this.LblSpeed.Size = new System.Drawing.Size(37, 13); - this.LblSpeed.TabIndex = 17; - this.LblSpeed.Text = "F1000"; + // LeftPanel // - // tableLayoutPanel2 + this.LeftPanel.Controls.Add(this.TbSpeed); + this.LeftPanel.Controls.Add(this.LblSpeed); + this.LeftPanel.Dock = System.Windows.Forms.DockStyle.Left; + this.LeftPanel.Location = new System.Drawing.Point(0, 0); + this.LeftPanel.Name = "LeftPanel"; + this.LeftPanel.Size = new System.Drawing.Size(42, 125); + this.LeftPanel.TabIndex = 1; // - this.tableLayoutPanel2.AutoSize = true; - this.tableLayoutPanel2.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; - this.tableLayoutPanel2.ColumnCount = 1; - this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle()); - this.tableLayoutPanel2.Controls.Add(this.TbStep, 0, 0); - this.tableLayoutPanel2.Controls.Add(this.LblStep, 0, 1); - this.tableLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Fill; - this.tableLayoutPanel2.Location = new System.Drawing.Point(178, 3); - this.tableLayoutPanel2.Margin = new System.Windows.Forms.Padding(0); - this.tableLayoutPanel2.Name = "tableLayoutPanel2"; - this.tableLayoutPanel2.RowCount = 2; - this.tlp.SetRowSpan(this.tableLayoutPanel2, 3); - this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); - this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle()); - this.tableLayoutPanel2.Size = new System.Drawing.Size(51, 119); - this.tableLayoutPanel2.TabIndex = 19; + // move2DControl1 // - // TbStep - // - this.TbStep.Dock = System.Windows.Forms.DockStyle.Fill; - this.TbStep.LargeChange = 10; - this.TbStep.Location = new System.Drawing.Point(3, 3); - this.TbStep.Maximum = 200; - this.TbStep.Minimum = 1; - this.TbStep.Name = "TbStep"; - this.TbStep.Orientation = System.Windows.Forms.Orientation.Vertical; - this.TbStep.Size = new System.Drawing.Size(45, 100); - this.TbStep.TabIndex = 17; - this.TbStep.TickFrequency = 10; - this.TbStep.TickStyle = System.Windows.Forms.TickStyle.Both; - this.TbStep.Value = 10; - this.TbStep.ValueChanged += new System.EventHandler(this.TbStep_ValueChanged); - this.TbStep.MouseUp += new System.Windows.Forms.MouseEventHandler(this.OnSliderMouseUP); - // - // LblStep - // - this.LblStep.Anchor = System.Windows.Forms.AnchorStyles.None; - this.LblStep.AutoSize = true; - this.LblStep.Location = new System.Drawing.Point(16, 106); - this.LblStep.Name = "LblStep"; - this.LblStep.Size = new System.Drawing.Size(19, 13); - this.LblStep.TabIndex = 18; - this.LblStep.Text = "10"; - // - // UpdateFMax - // - this.UpdateFMax.Interval = 1000; - this.UpdateFMax.Tick += new System.EventHandler(this.UpdateFMax_Tick); - // - // BtnHome - // - this.BtnHome.AltImage = null; - this.BtnHome.Anchor = System.Windows.Forms.AnchorStyles.None; - this.BtnHome.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.BtnHome.Coloration = System.Drawing.Color.Empty; - this.BtnHome.Image = ((System.Drawing.Image)(resources.GetObject("BtnHome.Image"))); - this.BtnHome.JogDirection = LaserGRBL.GrblCore.JogDirection.N; - this.BtnHome.Location = new System.Drawing.Point(100, 45); - this.BtnHome.MaximumSize = new System.Drawing.Size(48, 48); - this.BtnHome.Name = "BtnHome"; - this.BtnHome.Size = new System.Drawing.Size(33, 33); - this.BtnHome.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.StretchImage; - this.BtnHome.TabIndex = 7; - this.BtnHome.UseAltImage = false; - this.BtnHome.Click += new System.EventHandler(this.BtnHome_Click); - // - // imageButton1 - // - this.imageButton1.AltImage = null; - this.imageButton1.Anchor = System.Windows.Forms.AnchorStyles.None; - this.imageButton1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.imageButton1.Coloration = System.Drawing.Color.Empty; - this.imageButton1.Image = ((System.Drawing.Image)(resources.GetObject("imageButton1.Image"))); - this.imageButton1.JogDirection = LaserGRBL.GrblCore.JogDirection.W; - this.imageButton1.Location = new System.Drawing.Point(59, 45); - this.imageButton1.MaximumSize = new System.Drawing.Size(48, 48); - this.imageButton1.Name = "imageButton1"; - this.imageButton1.Size = new System.Drawing.Size(33, 33); - this.imageButton1.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.StretchImage; - this.imageButton1.TabIndex = 8; - this.imageButton1.UseAltImage = false; - this.imageButton1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.OnJogButtonMouseDown); - // - // imageButton2 - // - this.imageButton2.AltImage = null; - this.imageButton2.Anchor = System.Windows.Forms.AnchorStyles.None; - this.imageButton2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.imageButton2.Coloration = System.Drawing.Color.Empty; - this.imageButton2.Image = ((System.Drawing.Image)(resources.GetObject("imageButton2.Image"))); - this.imageButton2.JogDirection = LaserGRBL.GrblCore.JogDirection.N; - this.imageButton2.Location = new System.Drawing.Point(100, 6); - this.imageButton2.MaximumSize = new System.Drawing.Size(48, 48); - this.imageButton2.Name = "imageButton2"; - this.imageButton2.Size = new System.Drawing.Size(33, 33); - this.imageButton2.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.StretchImage; - this.imageButton2.TabIndex = 9; - this.imageButton2.UseAltImage = false; - this.imageButton2.MouseDown += new System.Windows.Forms.MouseEventHandler(this.OnJogButtonMouseDown); - // - // imageButton4 - // - this.imageButton4.AltImage = null; - this.imageButton4.Anchor = System.Windows.Forms.AnchorStyles.None; - this.imageButton4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.imageButton4.Coloration = System.Drawing.Color.Empty; - this.imageButton4.Image = ((System.Drawing.Image)(resources.GetObject("imageButton4.Image"))); - this.imageButton4.JogDirection = LaserGRBL.GrblCore.JogDirection.E; - this.imageButton4.Location = new System.Drawing.Point(141, 45); - this.imageButton4.MaximumSize = new System.Drawing.Size(48, 48); - this.imageButton4.Name = "imageButton4"; - this.imageButton4.Size = new System.Drawing.Size(33, 33); - this.imageButton4.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.StretchImage; - this.imageButton4.TabIndex = 11; - this.imageButton4.UseAltImage = false; - this.imageButton4.MouseDown += new System.Windows.Forms.MouseEventHandler(this.OnJogButtonMouseDown); - // - // imageButton6 - // - this.imageButton6.AltImage = null; - this.imageButton6.Anchor = System.Windows.Forms.AnchorStyles.None; - this.imageButton6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.imageButton6.Coloration = System.Drawing.Color.Empty; - this.imageButton6.Image = ((System.Drawing.Image)(resources.GetObject("imageButton6.Image"))); - this.imageButton6.JogDirection = LaserGRBL.GrblCore.JogDirection.NW; - this.imageButton6.Location = new System.Drawing.Point(59, 6); - this.imageButton6.MaximumSize = new System.Drawing.Size(48, 48); - this.imageButton6.Name = "imageButton6"; - this.imageButton6.Size = new System.Drawing.Size(33, 33); - this.imageButton6.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.StretchImage; - this.imageButton6.TabIndex = 13; - this.imageButton6.UseAltImage = false; - this.imageButton6.MouseDown += new System.Windows.Forms.MouseEventHandler(this.OnJogButtonMouseDown); - // - // imageButton5 - // - this.imageButton5.AltImage = null; - this.imageButton5.Anchor = System.Windows.Forms.AnchorStyles.None; - this.imageButton5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.imageButton5.Coloration = System.Drawing.Color.Empty; - this.imageButton5.Image = ((System.Drawing.Image)(resources.GetObject("imageButton5.Image"))); - this.imageButton5.JogDirection = LaserGRBL.GrblCore.JogDirection.NE; - this.imageButton5.Location = new System.Drawing.Point(141, 6); - this.imageButton5.MaximumSize = new System.Drawing.Size(48, 48); - this.imageButton5.Name = "imageButton5"; - this.imageButton5.Size = new System.Drawing.Size(33, 33); - this.imageButton5.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.StretchImage; - this.imageButton5.TabIndex = 12; - this.imageButton5.UseAltImage = false; - this.imageButton5.MouseDown += new System.Windows.Forms.MouseEventHandler(this.OnJogButtonMouseDown); - // - // imageButton8 - // - this.imageButton8.AltImage = null; - this.imageButton8.Anchor = System.Windows.Forms.AnchorStyles.None; - this.imageButton8.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.imageButton8.Coloration = System.Drawing.Color.Empty; - this.imageButton8.Image = ((System.Drawing.Image)(resources.GetObject("imageButton8.Image"))); - this.imageButton8.JogDirection = LaserGRBL.GrblCore.JogDirection.S; - this.imageButton8.Location = new System.Drawing.Point(99, 84); - this.imageButton8.MaximumSize = new System.Drawing.Size(48, 48); - this.imageButton8.Name = "imageButton8"; - this.imageButton8.Size = new System.Drawing.Size(35, 35); - this.imageButton8.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.StretchImage; - this.imageButton8.TabIndex = 15; - this.imageButton8.UseAltImage = false; - this.imageButton8.MouseDown += new System.Windows.Forms.MouseEventHandler(this.OnJogButtonMouseDown); - // - // imageButton7 - // - this.imageButton7.AltImage = null; - this.imageButton7.Anchor = System.Windows.Forms.AnchorStyles.None; - this.imageButton7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.imageButton7.Coloration = System.Drawing.Color.Empty; - this.imageButton7.Image = ((System.Drawing.Image)(resources.GetObject("imageButton7.Image"))); - this.imageButton7.JogDirection = LaserGRBL.GrblCore.JogDirection.SW; - this.imageButton7.Location = new System.Drawing.Point(58, 84); - this.imageButton7.MaximumSize = new System.Drawing.Size(48, 48); - this.imageButton7.Name = "imageButton7"; - this.imageButton7.Size = new System.Drawing.Size(35, 35); - this.imageButton7.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.StretchImage; - this.imageButton7.TabIndex = 14; - this.imageButton7.UseAltImage = false; - this.imageButton7.MouseDown += new System.Windows.Forms.MouseEventHandler(this.OnJogButtonMouseDown); - // - // imageButton3 - // - this.imageButton3.AltImage = null; - this.imageButton3.Anchor = System.Windows.Forms.AnchorStyles.None; - this.imageButton3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.imageButton3.Coloration = System.Drawing.Color.Empty; - this.imageButton3.Image = ((System.Drawing.Image)(resources.GetObject("imageButton3.Image"))); - this.imageButton3.JogDirection = LaserGRBL.GrblCore.JogDirection.SE; - this.imageButton3.Location = new System.Drawing.Point(140, 84); - this.imageButton3.MaximumSize = new System.Drawing.Size(48, 48); - this.imageButton3.Name = "imageButton3"; - this.imageButton3.Size = new System.Drawing.Size(35, 35); - this.imageButton3.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.StretchImage; - this.imageButton3.TabIndex = 10; - this.imageButton3.UseAltImage = false; - this.imageButton3.MouseDown += new System.Windows.Forms.MouseEventHandler(this.OnJogButtonMouseDown); + this.move2DControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.move2DControl1.Location = new System.Drawing.Point(42, 0); + this.move2DControl1.Name = "move2DControl1"; + this.move2DControl1.Padding = new System.Windows.Forms.Padding(2); + this.move2DControl1.Size = new System.Drawing.Size(192, 125); + this.move2DControl1.TabIndex = 2; + this.move2DControl1.MoveClick += new LaserGRBL.UserControls.Move2DControl.MoveEventHandler(this.Move_Click); + this.move2DControl1.HomeClick += new System.EventHandler(this.Home_Click); // // JogForm // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.Controls.Add(this.tlp); + this.Controls.Add(this.move2DControl1); + this.Controls.Add(this.LeftPanel); this.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.Name = "JogForm"; this.Size = new System.Drawing.Size(234, 125); - this.tlp.ResumeLayout(false); - this.tlp.PerformLayout(); - this.tableLayoutPanel1.ResumeLayout(false); - this.tableLayoutPanel1.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.TbSpeed)).EndInit(); - this.tableLayoutPanel2.ResumeLayout(false); - this.tableLayoutPanel2.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.TbStep)).EndInit(); + this.LeftPanel.ResumeLayout(false); + this.LeftPanel.PerformLayout(); this.ResumeLayout(false); } #endregion - - private System.Windows.Forms.TableLayoutPanel tlp; - private DirectionButton imageButton8; - private DirectionButton imageButton7; - private DirectionButton BtnHome; - private DirectionButton imageButton1; - private DirectionButton imageButton2; - private DirectionButton imageButton3; - private DirectionButton imageButton4; - private DirectionButton imageButton6; - private DirectionButton imageButton5; - private System.Windows.Forms.TrackBar TbSpeed; - private System.Windows.Forms.TrackBar TbStep; private System.Windows.Forms.ToolTip TT; - private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1; - private System.Windows.Forms.Label LblSpeed; - private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2; - private System.Windows.Forms.Label LblStep; private System.Windows.Forms.Timer UpdateFMax; + private System.Windows.Forms.Label LblSpeed; + private System.Windows.Forms.TrackBar TbSpeed; + private System.Windows.Forms.Panel LeftPanel; + private UserControls.Move2DControl move2DControl1; } } diff --git a/LaserGRBL/JogForm.cs b/LaserGRBL/JogForm.cs index 19e01bd31..274116a6b 100644 --- a/LaserGRBL/JogForm.cs +++ b/LaserGRBL/JogForm.cs @@ -20,15 +20,7 @@ public void SetCore(GrblCore core) UpdateFMax_Tick(null, null); TbSpeed.Value = Math.Min((int)Settings.GetObject("Jog Speed", 1000), TbSpeed.Maximum); - TbStep.Value = (int)Settings.GetObject("Jog Step", 10); - TbSpeed_ValueChanged(null, null); //set tooltip - TbStep_ValueChanged(null, null); //set tooltip - } - - private void OnJogButtonMouseDown(object sender, MouseEventArgs e) - { - Core.Jog((sender as DirectionButton).JogDirection); } private void TbSpeed_ValueChanged(object sender, EventArgs e) @@ -40,16 +32,8 @@ private void TbSpeed_ValueChanged(object sender, EventArgs e) needsave = true; } - private void TbStep_ValueChanged(object sender, EventArgs e) - { - TT.SetToolTip(TbStep, string.Format("Step: {0}", TbStep.Value)); - LblStep.Text = TbStep.Value.ToString(); - Settings.SetObject("Jog Step", TbStep.Value); - Core.JogStep = TbStep.Value; - needsave = true; - } - private void BtnHome_Click(object sender, EventArgs e) + private void Home_Click(object sender, EventArgs e) { Core.JogHome(); } @@ -77,24 +61,11 @@ private void UpdateFMax_Tick(object sender, EventArgs e) oldVal = curVal; } } - } - - public class DirectionButton : UserControls.ImageButton - { - private GrblCore.JogDirection mDir = GrblCore.JogDirection.N; - public GrblCore.JogDirection JogDirection + private void Move_Click(object sender, UserControls.Move2DControl.MoveEventArgs e) { - get { return mDir; } - set { mDir = value; } - } - - protected override void OnSizeChanged(EventArgs e) - { - if (Width != Height) - Width = Height; - - base.OnSizeChanged(e); + var move = e.Move; + Core.Move(move.Mouvement); } } } diff --git a/LaserGRBL/JogForm.resx b/LaserGRBL/JogForm.resx index 83d6e3548..0b097011c 100644 --- a/LaserGRBL/JogForm.resx +++ b/LaserGRBL/JogForm.resx @@ -117,473 +117,6 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - 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 - 3lieqYIAAAAASUVORK5CYII= - - - - - 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 - kQAAAABJRU5ErkJggg== - - - - - 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 - QmCC - - - - - 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 - +UvGAAAAAElFTkSuQmCC - - - - - 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 - - 17, 31 diff --git a/LaserGRBL/LaserGRBL.csproj b/LaserGRBL/LaserGRBL.csproj index 5ae4f427f..71ea34739 100644 --- a/LaserGRBL/LaserGRBL.csproj +++ b/LaserGRBL/LaserGRBL.csproj @@ -645,6 +645,9 @@ ImageButton.cs + + UserControl + UserControl diff --git a/LaserGRBL/UserControls/Move2DControl.cs b/LaserGRBL/UserControls/Move2DControl.cs new file mode 100644 index 000000000..61f8fad4f --- /dev/null +++ b/LaserGRBL/UserControls/Move2DControl.cs @@ -0,0 +1,543 @@ +using System; +using System.Collections.Generic; +using System.Drawing; +using System.Windows.Forms; +using System.Drawing.Drawing2D; + +namespace LaserGRBL.UserControls +{ + public class Move2DControl : UserControl + { + #region SubClass + public class MouvementZone + { + public MouvementZone(GraphicsPath path, Point mouvement, Color color) + { + Path = path; + Mouvement = mouvement; + Color = color; + } + + public GraphicsPath Path { get; private set; } + public Point Mouvement { get; private set; } + public Color Color { get; private set; } + + public GrblCore.JogDirection Direction + { + get + { + if(IsUp) + { + if (IsLeft) + return GrblCore.JogDirection.NW; + if (IsRight) + return GrblCore.JogDirection.NE; + return GrblCore.JogDirection.N; + } + if (IsDown) + { + if (IsLeft) + return GrblCore.JogDirection.SW; + if (IsRight) + return GrblCore.JogDirection.SE; + return GrblCore.JogDirection.S; + } + if (IsLeft) + return GrblCore.JogDirection.W; + return GrblCore.JogDirection.E; + } + } + public int Speed + { + get { return IsHome ? 0 : (int)Math.Max(Math.Abs(Mouvement.X), Math.Abs(Mouvement.Y)); } + } + public bool HitTest(Point pt) + { + return Path.IsVisible(pt); + } + + + public bool IsHome { get { return Mouvement.IsEmpty; } } + public bool IsLeft { get { return !IsHome && Mouvement.X < 0; } } + public bool IsRight { get { return !IsHome && Mouvement.X > 0; } } + + public bool IsUp { get { return !IsHome && Mouvement.Y > 0; } } + public bool IsDown { get { return !IsHome && Mouvement.Y < 0; } } + + + public bool Draw(Graphics g, Point mouseLocation, Brush hlBrush, Pen hlPen) + { + bool hit = HitTest(mouseLocation); + using (var b = new SolidBrush(Color)) + g.FillPath(b, Path); + if (hit) + { + if (hlBrush != null) + g.FillPath(hlBrush, Path); + if (hlPen != null) + g.DrawPath(hlPen, Path); + } + return hit; + } + + } + #endregion + + #region ctor + public Move2DControl() + { + InitializeComponent(); + ResizeRedraw = true; + } + #endregion + + #region Member and properties + List Zones; + #endregion + + #region Events + private void Move2DControl_Paint(object sender, PaintEventArgs e) + { + // Invalidate(); + + int size = Math.Min(Width, Height); + Rectangle rect = new Rectangle(0, 0, size, size); + rect.X = Padding.Left + (Width - size) / 2; + rect.Y = Padding.Top + (Height - size) / 2; + rect.Width -= Padding.Horizontal; + rect.Height -= Padding.Vertical; + + int shadowOffset = size / 50; + + rect.Width -= shadowOffset; + rect.Height -= shadowOffset; + + + + + Graphics g = e.Graphics; + g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias; + g.SmoothingMode = SmoothingMode.AntiAlias; + g.InterpolationMode = InterpolationMode.HighQualityBicubic; + + + float outerRadius = rect.Width / 2f; + float innerRadius = outerRadius / 3f; + PointF center = new PointF(rect.X + rect.Width / 2f, rect.Y + rect.Width / 2f); + + Zones = CreateMouvementList(center, innerRadius, outerRadius); + + + #region Background + GraphicsPath bg = new GraphicsPath(); + bg.AddEllipse(rect); + using (var b = new SolidBrush(Color.White)) + PaintWithShadow(g, bg, b, shadowOffset); + #endregion + + string info = string.Empty; + Point local = this.PointToClient(Cursor.Position); + + MouvementZone hit = null; + int nalpha = this.Enabled ? 128 : 64; + int halpha = 255; + + using (var hb = new SolidBrush(Color.FromArgb(128, SystemColors.Highlight))) + { + foreach (var m in Zones) + { + if (m.Draw(g, local, Enabled ? hb : null, null)) + { + if (Enabled) + { + hit = m; + if (m.IsHome) + info = "Home"; + else + info = String.Format("X{0,5 }\r\nY{1,5 }", m.Mouvement.X, m.Mouvement.Y); + } + } + } + } + + if (!string.IsNullOrEmpty(info)) + { + var s = g.MeasureString(info, this.Font); + g.DrawString(info, Font, Brushes.Black, new PointF(Width - Padding.Right - s.Width, Height - Padding.Bottom - s.Height)); + } + + #region icons + var upArrow = GetUpArrow(new PointF(rect.Left + rect.Width / 2, rect.Top + rect.Height / 6), rect.Height / 4); + var bottomArrow = GetBottomArrow(new PointF(rect.Left + rect.Width / 2, rect.Bottom - rect.Height / 6), rect.Height / 4); + var leftArrow = GetLeftArrow(new PointF(rect.Left + rect.Width / 6, rect.Top + rect.Height / 2), rect.Height / 4); + var rightArrow = GetRigthArrow(new PointF(rect.Right - rect.Width / 6, rect.Top + rect.Height / 2), rect.Height / 4); + var homeIcon = GetHomeIcon(center, innerRadius / 1.5f, shadowOffset / 2); + + using (Brush nb = new SolidBrush(Color.FromArgb(nalpha, Enabled ? SystemColors.Highlight : Color.LightGray))) + using (var hb = new SolidBrush(Color.FromArgb(halpha, SystemColors.Highlight))) + using (var np = new Pen(Color.FromArgb(nalpha, 0, 0, 0), shadowOffset / 2)) + using (var hp = new Pen(Color.FromArgb(halpha, 0, 0, 0), shadowOffset / 2)) + { + hp.LineJoin = LineJoin.Round; + np.LineJoin = LineJoin.Round; + + bool h = hit == null ? false : hit.IsHome; + bool l = hit == null ? false : hit.IsLeft; + bool r = hit == null ? false : hit.IsRight; + bool u = hit == null ? false : hit.IsUp; + bool d = hit == null ? false : hit.IsDown; + + + PaintIcon(g, upArrow, u ? hb : nb, u ? hp : np, shadowOffset); + PaintIcon(g, bottomArrow, d ? hb : nb, d ? hp : np, shadowOffset); + PaintIcon(g, leftArrow, l ? hb : nb, l ? hp : np, shadowOffset); + PaintIcon(g, rightArrow, r ? hb : nb, r ? hp : np, shadowOffset); + PaintIcon(g, homeIcon, h ? hb : nb, h ? hp : np, shadowOffset); + } + #endregion + } + private void Move2DControl_MouseMove(object sender, MouseEventArgs e) + { + Invalidate(); + } + private void MoveHearControl_Click(object sender, EventArgs e) + { + if (Enabled && Zones != null) + { + Point local = this.PointToClient(Cursor.Position); + foreach (var m in Zones) + { + if (m.HitTest(local)) + { + if (m.Mouvement.IsEmpty) + { + if (this.HomeClick != null) + this.HomeClick(this, e); + } + else + { + if (this.MoveClick != null) + this.MoveClick(this, new MoveEventArgs(m)); + } + } + } + } + } + #endregion + + #region MouvementZone generation + private List CreateMouvementList(PointF center, float innerRadius, float outerRadius) + { + GraphicsPath home = new GraphicsPath(); + home.AddEllipse(new RectangleF(center.X - innerRadius, center.Y - innerRadius, innerRadius * 2f, innerRadius * 2f)); + List ret = new List(); + ret.Add(new MouvementZone(home, Point.Empty, ScaleColor(5))); + ret.AddRange(CreateMouvementRange(center, innerRadius, outerRadius, 0, new Point(0, 1))); + ret.AddRange(CreateMouvementRange(center, innerRadius, outerRadius, 45, new Point(1, 1))); + ret.AddRange(CreateMouvementRange(center, innerRadius, outerRadius, 90, new Point(1, 0))); + ret.AddRange(CreateMouvementRange(center, innerRadius, outerRadius, 135, new Point(1, -1))); + ret.AddRange(CreateMouvementRange(center, innerRadius, outerRadius, 180, new Point(0, -1))); + ret.AddRange(CreateMouvementRange(center, innerRadius, outerRadius, 225, new Point(-1, -1))); + ret.AddRange(CreateMouvementRange(center, innerRadius, outerRadius, 270, new Point(-1, 0))); + ret.AddRange(CreateMouvementRange(center, innerRadius, outerRadius, 315, new Point(-1, 1))); + + return ret; + } + private List CreateMouvementRange(PointF center, float innerRadius, float outerRadius, int angle, Point direction) + { + int numsteps = 6; + float deltaRadius = (outerRadius - innerRadius) / numsteps; + + float gap = 0 * deltaRadius / 15; + + float radius1 = outerRadius; + float radius2 = radius1 - deltaRadius; + float radius3 = radius2 - deltaRadius; + float radius4 = radius3 - deltaRadius; + float radius5 = radius4 - deltaRadius; + float radius6 = radius5 - deltaRadius; + float radius7 = radius6 - deltaRadius; + + List ret = new List(); + ret.Add(CreateMouvement(center, radius1 - gap, radius2 + gap, angle, direction, 200, ScaleColor(200))); + ret.Add(CreateMouvement(center, radius2 - gap, radius3 + gap, angle, direction, 100, ScaleColor(180))); + ret.Add(CreateMouvement(center, radius3 - gap, radius4 + gap, angle, direction, 50, ScaleColor(160))); + ret.Add(CreateMouvement(center, radius4 - gap, radius5 + gap, angle, direction, 10, ScaleColor(140))); + ret.Add(CreateMouvement(center, radius5 - gap, radius6 + gap, angle, direction, 5, ScaleColor(120))); + ret.Add(CreateMouvement(center, radius6 - gap, radius7 + gap, angle, direction, 1, ScaleColor(100))); + + return ret; + } + public MouvementZone CreateMouvement(PointF center, float innerRadius, float outerRadius, int angle, Point direction, int mouvementFactor, Color color) + { + var mouvement = new Point(direction.X * mouvementFactor, direction.Y * mouvementFactor); + float sweepAngle = 44; + float startAngle = angle - sweepAngle / 2; + + RectangleF innerRectangle = new RectangleF(center.X - innerRadius, center.Y - innerRadius, innerRadius * 2, innerRadius * 2); + RectangleF outerRectangle = new RectangleF(center.X - outerRadius, center.Y - outerRadius, outerRadius * 2, outerRadius * 2); + + GraphicsPath p = new GraphicsPath(); + PointF iStart = GetPeriferical(startAngle, center, innerRadius); + PointF oStart = GetPeriferical(startAngle, center, outerRadius); + p.AddLine(iStart, oStart); + p.AddArc(outerRectangle, startAngle - 90, sweepAngle); + + PointF iEnd = GetPeriferical(startAngle + sweepAngle, center, innerRadius); + PointF oEnd = GetPeriferical(startAngle + sweepAngle, center, outerRadius); + p.AddLine(oEnd, iEnd); + p.AddArc(innerRectangle, startAngle - 90 + sweepAngle, -sweepAngle); + + p.CloseFigure(); + + return new MouvementZone(p, mouvement, color); + } + #endregion + + #region Graphical Paths + GraphicsPath GetUpArrow(PointF center, float size) + { + + GraphicsPath p = new GraphicsPath(); + float u = size / 10f; + var pts = new List(); + float x = center.X - size / 2; + float y = center.Y - size / 2; + pts.Add(new PointF(x + u * 5, y + u * 0)); + pts.Add(new PointF(x + u * 10, y + u * 5)); + pts.Add(new PointF(x + u * 8, y + u * 5)); + pts.Add(new PointF(x + u * 8, y + u * 10)); + pts.Add(new PointF(x + u * 2, y + u * 10)); + pts.Add(new PointF(x + u * 2, y + u * 5)); + pts.Add(new PointF(x + u * 0, y + u * 5)); + pts.Add(new PointF(x + u * 5, y + u * 0)); + p.AddPolygon(pts.ToArray()); + // p.AddRectangle(new RectangleF(x, y, size, size)); + return p; + } + GraphicsPath GetBottomArrow(PointF center, float size) + { + + GraphicsPath p = new GraphicsPath(); + float u = size / 10f; + var pts = new List(); + float x = center.X - size / 2; + float y = center.Y - size / 2; + pts.Add(new PointF(x + u * 5, y + u * 10)); + pts.Add(new PointF(x + u * 0, y + u * 5)); + pts.Add(new PointF(x + u * 2, y + u * 5)); + pts.Add(new PointF(x + u * 2, y + u * 0)); + pts.Add(new PointF(x + u * 8, y + u * 0)); + pts.Add(new PointF(x + u * 8, y + u * 5)); + pts.Add(new PointF(x + u * 10, y + u * 5)); + pts.Add(new PointF(x + u * 5, y + u * 10)); + p.AddPolygon(pts.ToArray()); + // p.AddRectangle(new RectangleF(x, y, size, size)); + return p; + } + GraphicsPath GetLeftArrow(PointF center, float size) + { + + GraphicsPath p = new GraphicsPath(); + float u = size / 10f; + var pts = new List(); + float x = center.X - size / 2; + float y = center.Y - size / 2; + pts.Add(new PointF(x + u * 0, y + u * 5)); + pts.Add(new PointF(x + u * 5, y + u * 0)); + pts.Add(new PointF(x + u * 5, y + u * 2)); + pts.Add(new PointF(x + u * 10, y + u * 2)); + pts.Add(new PointF(x + u * 10, y + u * 8)); + pts.Add(new PointF(x + u * 5, y + u * 8)); + pts.Add(new PointF(x + u * 5, y + u * 10)); + pts.Add(pts[0]); + p.AddPolygon(pts.ToArray()); + // p.AddRectangle(new RectangleF(x, y, size, size)); + return p; + } + GraphicsPath GetRigthArrow(PointF center, float size) + { + + GraphicsPath p = new GraphicsPath(); + float u = size / 10f; + var pts = new List(); + float x = center.X - size / 2; + float y = center.Y - size / 2; + pts.Add(new PointF(x + u * 10, y + u * 5)); + pts.Add(new PointF(x + u * 5, y + u * 0)); + pts.Add(new PointF(x + u * 5, y + u * 2)); + pts.Add(new PointF(x + u * 0, y + u * 2)); + pts.Add(new PointF(x + u * 0, y + u * 8)); + pts.Add(new PointF(x + u * 5, y + u * 8)); + pts.Add(new PointF(x + u * 5, y + u * 10)); + pts.Add(pts[0]); + p.AddPolygon(pts.ToArray()); + // p.AddRectangle(new RectangleF(x, y, size, size)); + return p; + } + + + GraphicsPath GetHomeIcon(PointF center, float size, int shadowOffset) + { + GraphicsPath home = new GraphicsPath(); + float x = center.X - size - shadowOffset / 2f; + float y = center.Y - size - shadowOffset / 2f; + + float u = size / 50f; + var pts = new List(); + + pts.Add(new PointF(x + u * 50, y + u * 00)); + pts.Add(new PointF(x + u * 100, y + u * 50)); + pts.Add(new PointF(x + u * 95, y + u * 55)); + pts.Add(new PointF(x + u * 90, y + u * 55)); + pts.Add(new PointF(x + u * 90, y + u * 55)); + pts.Add(new PointF(x + u * 90, y + u * 100)); + pts.Add(new PointF(x + u * 60, y + u * 100)); + pts.Add(new PointF(x + u * 60, y + u * 60)); + pts.Add(new PointF(x + u * 40, y + u * 60)); + pts.Add(new PointF(x + u * 40, y + u * 100)); + pts.Add(new PointF(x + u * 10, y + u * 100)); + pts.Add(new PointF(x + u * 10, y + u * 55)); + pts.Add(new PointF(x + u * 05, y + u * 55)); + pts.Add(new PointF(x + u * 00, y + u * 50)); + pts.Add(new PointF(x + u * 50, y + u * 00)); + home.AddPolygon(pts.ToArray()); + return home; + } + + #endregion + + #region Custom Event + public delegate void MoveEventHandler(object sender, MoveEventArgs e); + public class MoveEventArgs : EventArgs + { + public MoveEventArgs(MouvementZone move) + : base() + { + Move = move; + } + + public readonly MouvementZone Move; + } + public event MoveEventHandler MoveClick; + public event EventHandler HomeClick; + #endregion + + #region utils + Color ScaleColor(int step) + { + int a = step * 2 / 3; + Color c = this.ForeColor; + if (!Enabled) + { + int val = (c.R + c.G + c.B) / 3; + return Color.FromArgb(a / 2, val, val, val); + + } + else + return Color.FromArgb(a, c); + } + public PointF GetPeriferical(double angle, PointF center, float radius) + { + double rad = angle * System.Math.PI / 180; + return new PointF(center.X + (float)Math.Sin(rad) * radius, center.Y - (float)Math.Cos(rad) * radius); + + } + + public void PaintWithShadow(Graphics g, GraphicsPath path, Brush brush, int shadowOffset) + { + int microstep = 2; + if (shadowOffset > microstep) + { + /* + using (PathGradientBrush _Brush = new PathGradientBrush(path)) + { + ColorBlend _ColorBlend = new ColorBlend(3); + _ColorBlend.Colors = new Color[]{Color.Transparent, + Color.FromArgb(180, Color.Black), + Color.FromArgb(180, Color.DimGray)}; + _ColorBlend.Positions = new float[] { 0f, .5f, 1f }; + + _Brush.WrapMode = WrapMode.Clamp; + _Brush.InterpolationColors = _ColorBlend; + g.TranslateTransform(shadowOffset, shadowOffset); + g.FillPath(_Brush, path); + g.TranslateTransform(-shadowOffset, -shadowOffset); + }*/ + using (var _Brush = new SolidBrush(Color.FromArgb(microstep * 128 / shadowOffset, 0, 0, 0))) + { + var oldClip = g.Clip; + var oldransform = g.Transform; + g.Clip = new Region(); + g.SetClip(path, CombineMode.Exclude); + for (int i = 0; i < shadowOffset / microstep; i++) + { + g.TranslateTransform(microstep, microstep); + g.FillPath(_Brush, path); + } + g.Transform = oldransform; + g.Clip = oldClip; + } + + } + g.FillPath(brush, path); + } + + public void PaintIcon(Graphics g, GraphicsPath path, Brush brush, Pen pen, int shadowOffset) + { + + PaintWithShadow(g, path, brush, shadowOffset); + if (pen != null) + g.DrawPath(pen, path); + } + + #endregion + + #region Editor Designer stuff + /// + /// 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 Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.SuspendLayout(); + // + // MoveHearControl + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.DoubleBuffered = true; + this.Name = "Move2DControl"; + this.Padding = new System.Windows.Forms.Padding(2); + this.Size = new System.Drawing.Size(228, 217); + this.Click += new System.EventHandler(this.MoveHearControl_Click); + this.Paint += new System.Windows.Forms.PaintEventHandler(this.Move2DControl_Paint); + this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Move2DControl_MouseMove); + this.ResumeLayout(false); + + } + + #endregion + #endregion + } +} From 3edbacc69052fc74ecdd8fd7f60360031312689e Mon Sep 17 00:00:00 2001 From: Fabio Ferretti Date: Thu, 28 Feb 2019 10:23:04 +0100 Subject: [PATCH 2/3] allow compilation on standart visual 2015 --- LaserGRBL/Autotrace/Autotrace.cs | 2 +- LaserGRBL/RasterConverter/ImageProcessor.cs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/LaserGRBL/Autotrace/Autotrace.cs b/LaserGRBL/Autotrace/Autotrace.cs index 81fea127e..6d743ebaf 100644 --- a/LaserGRBL/Autotrace/Autotrace.cs +++ b/LaserGRBL/Autotrace/Autotrace.cs @@ -6,7 +6,7 @@ namespace LaserGRBL { public class Autotrace { - public static string TempPath { get => $"{GrblCore.DataPath}\\Autotrace\\"; } + public static string TempPath { get { return $"{GrblCore.DataPath}\\Autotrace\\"; } } public static void CleanupTmpFolder() { diff --git a/LaserGRBL/RasterConverter/ImageProcessor.cs b/LaserGRBL/RasterConverter/ImageProcessor.cs index bc0d6c94b..69c914abf 100644 --- a/LaserGRBL/RasterConverter/ImageProcessor.cs +++ b/LaserGRBL/RasterConverter/ImageProcessor.cs @@ -1055,7 +1055,7 @@ private static Size CalculateResizeToFit(Size imageSize, Size boxSize) public Bitmap Original { get { return mResized; } } - public int FileDPI { get => mFileDPI; } - public Size FileResolution { get => mFileResolution; } + public int FileDPI { get { return mFileDPI; } } + public Size FileResolution { get { return mFileResolution; } } } } From 2a4a4d6de72c475cf1cb006ff41316b18fe20425 Mon Sep 17 00:00:00 2001 From: Fabio Ferretti Date: Thu, 28 Feb 2019 10:29:37 +0100 Subject: [PATCH 3/3] resize RasterToLaserForm for 1024x764 resolution Resize the RasterToLaserForm for smaller resolution screen. --- .../RasterToLaserForm.Designer.cs | 2050 ++++++++--------- .../RasterConverter/RasterToLaserForm.resx | 64 +- 2 files changed, 1057 insertions(+), 1057 deletions(-) diff --git a/LaserGRBL/RasterConverter/RasterToLaserForm.Designer.cs b/LaserGRBL/RasterConverter/RasterToLaserForm.Designer.cs index 525f0a22e..9c2716748 100644 --- a/LaserGRBL/RasterConverter/RasterToLaserForm.Designer.cs +++ b/LaserGRBL/RasterConverter/RasterToLaserForm.Designer.cs @@ -28,1103 +28,1103 @@ protected override void Dispose(bool disposing) /// private void InitializeComponent() { - this.components = new System.ComponentModel.Container(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(RasterToLaserForm)); - this.RightGrid = new System.Windows.Forms.TableLayoutPanel(); - this.TCOriginalPreview = new System.Windows.Forms.TabControl(); - this.TpPreview = new System.Windows.Forms.TabPage(); - this.WB = new LaserGRBL.UserControls.WaitingProgressBar(); - this.PbConverted = new System.Windows.Forms.PictureBox(); - this.TpOriginal = new System.Windows.Forms.TabPage(); - this.PbOriginal = new System.Windows.Forms.PictureBox(); - this.FlipControl = new System.Windows.Forms.TableLayoutPanel(); - this.BtFlipV = new LaserGRBL.UserControls.ImageButton(); - this.BtFlipH = new LaserGRBL.UserControls.ImageButton(); - this.BtRotateCW = new LaserGRBL.UserControls.ImageButton(); - this.BtRotateCCW = new LaserGRBL.UserControls.ImageButton(); - this.BtnRevert = new LaserGRBL.UserControls.ImageButton(); - this.BtnReverse = new LaserGRBL.UserControls.ImageButton(); - this.BtnCrop = new LaserGRBL.UserControls.ImageButton(); - this.tableLayoutPanel8 = new System.Windows.Forms.TableLayoutPanel(); - this.GbCenterlineOptions = new System.Windows.Forms.GroupBox(); - this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel(); - this.label6 = new System.Windows.Forms.Label(); - this.label7 = new System.Windows.Forms.Label(); - this.TBLineThreshold = new LaserGRBL.UserControls.ColorSlider(); - this.TBCornerThreshold = new LaserGRBL.UserControls.ColorSlider(); - this.CbLineThreshold = new System.Windows.Forms.CheckBox(); - this.CbCornerThreshold = new System.Windows.Forms.CheckBox(); - this.GbVectorizeOptions = new System.Windows.Forms.GroupBox(); - this.tableLayoutPanel5 = new System.Windows.Forms.TableLayoutPanel(); - this.label22 = new System.Windows.Forms.Label(); - this.UDSpotRemoval = new System.Windows.Forms.NumericUpDown(); - this.CbSpotRemoval = new System.Windows.Forms.CheckBox(); - this.label24 = new System.Windows.Forms.Label(); - this.label23 = new System.Windows.Forms.Label(); - this.UDOptimize = new System.Windows.Forms.NumericUpDown(); - this.UDSmoothing = new System.Windows.Forms.NumericUpDown(); - this.CbOptimize = new System.Windows.Forms.CheckBox(); - this.CbSmoothing = new System.Windows.Forms.CheckBox(); - this.label14 = new System.Windows.Forms.Label(); - this.CbFillingDirection = new LaserGRBL.UserControls.EnumComboBox(); - this.LblFillingQuality = new System.Windows.Forms.Label(); - this.UDFillingQuality = new System.Windows.Forms.NumericUpDown(); - this.LblFillingLineLbl = new System.Windows.Forms.Label(); - this.UDDownSample = new System.Windows.Forms.NumericUpDown(); - this.label1 = new System.Windows.Forms.Label(); - this.CbDownSample = new System.Windows.Forms.CheckBox(); - this.lOptimizeFast = new System.Windows.Forms.Label(); - this.BtnFillingQualityInfo = new LaserGRBL.UserControls.ImageButton(); - this.CbOptimizeFast = new System.Windows.Forms.CheckBox(); - this.GbParameters = new System.Windows.Forms.GroupBox(); - this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel(); - this.CbResize = new LaserGRBL.UserControls.EnumComboBox(); - this.LblGrayscale = new System.Windows.Forms.Label(); - this.CbMode = new LaserGRBL.UserControls.EnumComboBox(); - this.TBRed = new LaserGRBL.UserControls.ColorSlider(); - this.LblRed = new System.Windows.Forms.Label(); - this.LblBlue = new System.Windows.Forms.Label(); - this.LblGreen = new System.Windows.Forms.Label(); - this.label2 = new System.Windows.Forms.Label(); - this.TBGreen = new LaserGRBL.UserControls.ColorSlider(); - this.TbBright = new LaserGRBL.UserControls.ColorSlider(); - this.TBBlue = new LaserGRBL.UserControls.ColorSlider(); - this.TbContrast = new LaserGRBL.UserControls.ColorSlider(); - this.label3 = new System.Windows.Forms.Label(); - this.CbThreshold = new System.Windows.Forms.CheckBox(); - this.label28 = new System.Windows.Forms.Label(); - this.TbThreshold = new LaserGRBL.UserControls.ColorSlider(); - this.TBWhiteClip = new LaserGRBL.UserControls.ColorSlider(); - this.label4 = new System.Windows.Forms.Label(); - this.GbLineToLineOptions = new System.Windows.Forms.GroupBox(); - this.TLP = new System.Windows.Forms.TableLayoutPanel(); - this.CbDirections = new LaserGRBL.UserControls.EnumComboBox(); - this.UDQuality = new System.Windows.Forms.NumericUpDown(); - this.CbLinePreview = new System.Windows.Forms.CheckBox(); - this.label5 = new System.Windows.Forms.Label(); - this.label27 = new System.Windows.Forms.Label(); - this.label8 = new System.Windows.Forms.Label(); - this.LblDitherMode = new System.Windows.Forms.Label(); - this.CbDither = new System.Windows.Forms.ComboBox(); - this.BtnQualityInfo = new LaserGRBL.UserControls.ImageButton(); - this.GbConversionTool = new System.Windows.Forms.GroupBox(); - this.tableLayoutPanel4 = new System.Windows.Forms.TableLayoutPanel(); - this.RbCenterline = new System.Windows.Forms.RadioButton(); - this.RbDithering = new System.Windows.Forms.RadioButton(); - this.RbVectorize = new System.Windows.Forms.RadioButton(); - this.RbLineToLineTracing = new System.Windows.Forms.RadioButton(); - this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); - this.BtnCancel = new System.Windows.Forms.Button(); - this.BtnCreate = new System.Windows.Forms.Button(); - this.WT = new System.Windows.Forms.Timer(this.components); - this.TT = new System.Windows.Forms.ToolTip(this.components); - this.RightGrid.SuspendLayout(); - this.TCOriginalPreview.SuspendLayout(); - this.TpPreview.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.PbConverted)).BeginInit(); - this.TpOriginal.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.PbOriginal)).BeginInit(); - this.FlipControl.SuspendLayout(); - this.tableLayoutPanel8.SuspendLayout(); - this.GbCenterlineOptions.SuspendLayout(); - this.tableLayoutPanel3.SuspendLayout(); - this.GbVectorizeOptions.SuspendLayout(); - this.tableLayoutPanel5.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.UDSpotRemoval)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.UDOptimize)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.UDSmoothing)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.UDFillingQuality)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.UDDownSample)).BeginInit(); - this.GbParameters.SuspendLayout(); - this.tableLayoutPanel2.SuspendLayout(); - this.GbLineToLineOptions.SuspendLayout(); - this.TLP.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.UDQuality)).BeginInit(); - this.GbConversionTool.SuspendLayout(); - this.tableLayoutPanel4.SuspendLayout(); - this.tableLayoutPanel1.SuspendLayout(); - this.SuspendLayout(); - // - // RightGrid - // - resources.ApplyResources(this.RightGrid, "RightGrid"); - this.RightGrid.Controls.Add(this.TCOriginalPreview, 1, 0); - this.RightGrid.Controls.Add(this.FlipControl, 1, 1); - this.RightGrid.Controls.Add(this.tableLayoutPanel8, 0, 0); - this.RightGrid.Controls.Add(this.tableLayoutPanel1, 3, 1); - this.RightGrid.Name = "RightGrid"; - // - // TCOriginalPreview - // - this.RightGrid.SetColumnSpan(this.TCOriginalPreview, 3); - this.TCOriginalPreview.Controls.Add(this.TpPreview); - this.TCOriginalPreview.Controls.Add(this.TpOriginal); - resources.ApplyResources(this.TCOriginalPreview, "TCOriginalPreview"); - this.TCOriginalPreview.Name = "TCOriginalPreview"; - this.TCOriginalPreview.SelectedIndex = 0; - // - // TpPreview - // - this.TpPreview.Controls.Add(this.WB); - this.TpPreview.Controls.Add(this.PbConverted); - resources.ApplyResources(this.TpPreview, "TpPreview"); - this.TpPreview.Name = "TpPreview"; - this.TpPreview.UseVisualStyleBackColor = true; - // - // WB - // - resources.ApplyResources(this.WB, "WB"); - this.WB.BarColor = System.Drawing.Color.SteelBlue; - this.WB.BorderColor = System.Drawing.Color.Black; - this.WB.BouncingMode = LaserGRBL.UserControls.WaitingProgressBar.BouncingModeEnum.PingPong; - this.WB.DrawProgressString = false; - this.WB.FillColor = System.Drawing.Color.White; - this.WB.FillStyle = LaserGRBL.UserControls.FillStyles.Solid; - this.WB.Interval = 25D; - this.WB.Maximum = 20D; - this.WB.Minimum = 0D; - this.WB.Name = "WB"; - this.WB.ProgressStringDecimals = 0; - this.WB.Reverse = true; - this.WB.Running = false; - this.WB.Step = 1D; - this.WB.ThrowExceprion = false; - this.WB.Value = 0D; - // - // PbConverted - // - this.PbConverted.BackColor = System.Drawing.Color.White; - resources.ApplyResources(this.PbConverted, "PbConverted"); - this.PbConverted.Name = "PbConverted"; - this.PbConverted.TabStop = false; - this.PbConverted.MouseDown += new System.Windows.Forms.MouseEventHandler(this.PbConvertedMouseDown); - this.PbConverted.MouseMove += new System.Windows.Forms.MouseEventHandler(this.PbConvertedMouseMove); - this.PbConverted.MouseUp += new System.Windows.Forms.MouseEventHandler(this.PbConvertedMouseUp); - this.PbConverted.Resize += new System.EventHandler(this.PbConverted_Resize); - // - // TpOriginal - // - this.TpOriginal.Controls.Add(this.PbOriginal); - resources.ApplyResources(this.TpOriginal, "TpOriginal"); - this.TpOriginal.Name = "TpOriginal"; - this.TpOriginal.UseVisualStyleBackColor = true; - // - // PbOriginal - // - this.PbOriginal.BackColor = System.Drawing.Color.White; - resources.ApplyResources(this.PbOriginal, "PbOriginal"); - this.PbOriginal.Name = "PbOriginal"; - this.PbOriginal.TabStop = false; - // - // FlipControl - // - resources.ApplyResources(this.FlipControl, "FlipControl"); - this.FlipControl.Controls.Add(this.BtFlipV, 5, 0); - this.FlipControl.Controls.Add(this.BtFlipH, 4, 0); - this.FlipControl.Controls.Add(this.BtRotateCW, 2, 0); - this.FlipControl.Controls.Add(this.BtRotateCCW, 3, 0); - this.FlipControl.Controls.Add(this.BtnRevert, 0, 0); - this.FlipControl.Controls.Add(this.BtnReverse, 7, 0); - this.FlipControl.Controls.Add(this.BtnCrop, 6, 0); - this.FlipControl.GrowStyle = System.Windows.Forms.TableLayoutPanelGrowStyle.AddColumns; - this.FlipControl.Name = "FlipControl"; - // - // BtFlipV - // - this.BtFlipV.AltImage = null; - this.BtFlipV.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.BtFlipV.Coloration = System.Drawing.Color.Empty; - this.BtFlipV.Image = ((System.Drawing.Image)(resources.GetObject("BtFlipV.Image"))); - resources.ApplyResources(this.BtFlipV, "BtFlipV"); - this.BtFlipV.Name = "BtFlipV"; - this.BtFlipV.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; - this.TT.SetToolTip(this.BtFlipV, resources.GetString("BtFlipV.ToolTip")); - this.BtFlipV.UseAltImage = false; - this.BtFlipV.Click += new System.EventHandler(this.BtFlipVClick); - // - // BtFlipH - // - this.BtFlipH.AltImage = null; - this.BtFlipH.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.BtFlipH.Coloration = System.Drawing.Color.Empty; - this.BtFlipH.Image = ((System.Drawing.Image)(resources.GetObject("BtFlipH.Image"))); - resources.ApplyResources(this.BtFlipH, "BtFlipH"); - this.BtFlipH.Name = "BtFlipH"; - this.BtFlipH.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; - this.TT.SetToolTip(this.BtFlipH, resources.GetString("BtFlipH.ToolTip")); - this.BtFlipH.UseAltImage = false; - this.BtFlipH.Click += new System.EventHandler(this.BtFlipHClick); - // - // BtRotateCW - // - this.BtRotateCW.AltImage = null; - this.BtRotateCW.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.BtRotateCW.Coloration = System.Drawing.Color.Empty; - this.BtRotateCW.Image = ((System.Drawing.Image)(resources.GetObject("BtRotateCW.Image"))); - resources.ApplyResources(this.BtRotateCW, "BtRotateCW"); - this.BtRotateCW.Name = "BtRotateCW"; - this.BtRotateCW.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; - this.TT.SetToolTip(this.BtRotateCW, resources.GetString("BtRotateCW.ToolTip")); - this.BtRotateCW.UseAltImage = false; - this.BtRotateCW.Click += new System.EventHandler(this.BtRotateCWClick); - // - // BtRotateCCW - // - this.BtRotateCCW.AltImage = null; - this.BtRotateCCW.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.BtRotateCCW.Coloration = System.Drawing.Color.Empty; - this.BtRotateCCW.Image = ((System.Drawing.Image)(resources.GetObject("BtRotateCCW.Image"))); - resources.ApplyResources(this.BtRotateCCW, "BtRotateCCW"); - this.BtRotateCCW.Name = "BtRotateCCW"; - this.BtRotateCCW.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; - this.TT.SetToolTip(this.BtRotateCCW, resources.GetString("BtRotateCCW.ToolTip")); - this.BtRotateCCW.UseAltImage = false; - this.BtRotateCCW.Click += new System.EventHandler(this.BtRotateCCWClick); - // - // BtnRevert - // - this.BtnRevert.AltImage = null; - this.BtnRevert.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.BtnRevert.Coloration = System.Drawing.Color.Empty; - this.BtnRevert.Image = ((System.Drawing.Image)(resources.GetObject("BtnRevert.Image"))); - resources.ApplyResources(this.BtnRevert, "BtnRevert"); - this.BtnRevert.Name = "BtnRevert"; - this.BtnRevert.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; - this.TT.SetToolTip(this.BtnRevert, resources.GetString("BtnRevert.ToolTip")); - this.BtnRevert.UseAltImage = false; - this.BtnRevert.Click += new System.EventHandler(this.BtnRevertClick); - // - // BtnReverse - // - this.BtnReverse.AltImage = null; - this.BtnReverse.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.BtnReverse.Coloration = System.Drawing.Color.Empty; - this.BtnReverse.Image = ((System.Drawing.Image)(resources.GetObject("BtnReverse.Image"))); - resources.ApplyResources(this.BtnReverse, "BtnReverse"); - this.BtnReverse.Name = "BtnReverse"; - this.BtnReverse.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; - this.TT.SetToolTip(this.BtnReverse, resources.GetString("BtnReverse.ToolTip")); - this.BtnReverse.UseAltImage = false; - this.BtnReverse.Click += new System.EventHandler(this.BtnReverse_Click); - // - // BtnCrop - // - this.BtnCrop.AltImage = null; - this.BtnCrop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.BtnCrop.Coloration = System.Drawing.Color.Empty; - this.BtnCrop.Image = ((System.Drawing.Image)(resources.GetObject("BtnCrop.Image"))); - resources.ApplyResources(this.BtnCrop, "BtnCrop"); - this.BtnCrop.Name = "BtnCrop"; - this.BtnCrop.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; - this.TT.SetToolTip(this.BtnCrop, resources.GetString("BtnCrop.ToolTip")); - this.BtnCrop.UseAltImage = false; - this.BtnCrop.Click += new System.EventHandler(this.BtnCropClick); - // - // tableLayoutPanel8 - // - resources.ApplyResources(this.tableLayoutPanel8, "tableLayoutPanel8"); - this.tableLayoutPanel8.Controls.Add(this.GbCenterlineOptions, 0, 2); - this.tableLayoutPanel8.Controls.Add(this.GbVectorizeOptions, 0, 4); - this.tableLayoutPanel8.Controls.Add(this.GbParameters, 0, 0); - this.tableLayoutPanel8.Controls.Add(this.GbLineToLineOptions, 0, 3); - this.tableLayoutPanel8.Controls.Add(this.GbConversionTool, 0, 1); - this.tableLayoutPanel8.Name = "tableLayoutPanel8"; - this.RightGrid.SetRowSpan(this.tableLayoutPanel8, 2); - // - // GbCenterlineOptions - // - resources.ApplyResources(this.GbCenterlineOptions, "GbCenterlineOptions"); - this.GbCenterlineOptions.Controls.Add(this.tableLayoutPanel3); - this.GbCenterlineOptions.Name = "GbCenterlineOptions"; - this.GbCenterlineOptions.TabStop = false; - // - // tableLayoutPanel3 - // - resources.ApplyResources(this.tableLayoutPanel3, "tableLayoutPanel3"); - this.tableLayoutPanel3.Controls.Add(this.label6, 0, 1); - this.tableLayoutPanel3.Controls.Add(this.label7, 0, 0); - this.tableLayoutPanel3.Controls.Add(this.TBLineThreshold, 2, 1); - this.tableLayoutPanel3.Controls.Add(this.TBCornerThreshold, 2, 0); - this.tableLayoutPanel3.Controls.Add(this.CbLineThreshold, 3, 1); - this.tableLayoutPanel3.Controls.Add(this.CbCornerThreshold, 3, 0); - this.tableLayoutPanel3.Name = "tableLayoutPanel3"; - // - // label6 - // - resources.ApplyResources(this.label6, "label6"); - this.label6.Name = "label6"; - // - // label7 - // - resources.ApplyResources(this.label7, "label7"); - this.label7.Name = "label7"; - // - // TBLineThreshold - // - resources.ApplyResources(this.TBLineThreshold, "TBLineThreshold"); - this.TBLineThreshold.BackColor = System.Drawing.Color.Transparent; - this.TBLineThreshold.BarInnerColor = System.Drawing.Color.LightGoldenrodYellow; - this.TBLineThreshold.BarOuterColor = System.Drawing.Color.Gold; - this.TBLineThreshold.BorderRoundRectSize = new System.Drawing.Size(8, 8); - this.TBLineThreshold.ElapsedInnerColor = System.Drawing.Color.Yellow; - this.TBLineThreshold.ElapsedOuterColor = System.Drawing.Color.Gold; - this.TBLineThreshold.LargeChange = ((uint)(5u)); - this.TBLineThreshold.Name = "TBLineThreshold"; - this.TBLineThreshold.SmallChange = ((uint)(1u)); - this.TBLineThreshold.ThumbRoundRectSize = new System.Drawing.Size(4, 4); - this.TBLineThreshold.ThumbSize = 8; - this.TT.SetToolTip(this.TBLineThreshold, resources.GetString("TBLineThreshold.ToolTip")); - this.TBLineThreshold.Value = 10; - this.TBLineThreshold.ValueChanged += new System.EventHandler(this.TBLineThreshold_ValueChanged); - this.TBLineThreshold.DoubleClick += new System.EventHandler(this.TBLineThreshold_DoubleClick); - // - // TBCornerThreshold - // - resources.ApplyResources(this.TBCornerThreshold, "TBCornerThreshold"); - this.TBCornerThreshold.BackColor = System.Drawing.Color.Transparent; - this.TBCornerThreshold.BarInnerColor = System.Drawing.Color.LightGoldenrodYellow; - this.TBCornerThreshold.BarOuterColor = System.Drawing.Color.Gold; - this.TBCornerThreshold.BorderRoundRectSize = new System.Drawing.Size(8, 8); - this.TBCornerThreshold.ElapsedInnerColor = System.Drawing.Color.Yellow; - this.TBCornerThreshold.ElapsedOuterColor = System.Drawing.Color.Gold; - this.TBCornerThreshold.LargeChange = ((uint)(5u)); - this.TBCornerThreshold.Maximum = 360; - this.TBCornerThreshold.Name = "TBCornerThreshold"; - this.TBCornerThreshold.SmallChange = ((uint)(1u)); - this.TBCornerThreshold.ThumbRoundRectSize = new System.Drawing.Size(4, 4); - this.TBCornerThreshold.ThumbSize = 8; - this.TT.SetToolTip(this.TBCornerThreshold, resources.GetString("TBCornerThreshold.ToolTip")); - this.TBCornerThreshold.Value = 110; - this.TBCornerThreshold.ValueChanged += new System.EventHandler(this.TBCornerThreshold_ValueChanged); - this.TBCornerThreshold.DoubleClick += new System.EventHandler(this.TBCornerThreshold_DoubleClick); - // - // CbLineThreshold - // - resources.ApplyResources(this.CbLineThreshold, "CbLineThreshold"); - this.CbLineThreshold.Name = "CbLineThreshold"; - this.CbLineThreshold.UseVisualStyleBackColor = true; - this.CbLineThreshold.CheckedChanged += new System.EventHandler(this.CbUseLineThreshold_CheckedChanged); - // - // CbCornerThreshold - // - resources.ApplyResources(this.CbCornerThreshold, "CbCornerThreshold"); - this.CbCornerThreshold.Name = "CbCornerThreshold"; - this.CbCornerThreshold.UseVisualStyleBackColor = true; - this.CbCornerThreshold.CheckedChanged += new System.EventHandler(this.CbCornerThreshold_CheckedChanged); - // - // GbVectorizeOptions - // - resources.ApplyResources(this.GbVectorizeOptions, "GbVectorizeOptions"); - this.GbVectorizeOptions.Controls.Add(this.tableLayoutPanel5); - this.GbVectorizeOptions.Name = "GbVectorizeOptions"; - this.GbVectorizeOptions.TabStop = false; - // - // tableLayoutPanel5 - // - resources.ApplyResources(this.tableLayoutPanel5, "tableLayoutPanel5"); - this.tableLayoutPanel5.Controls.Add(this.label22, 0, 0); - this.tableLayoutPanel5.Controls.Add(this.UDSpotRemoval, 1, 0); - this.tableLayoutPanel5.Controls.Add(this.CbSpotRemoval, 2, 0); - this.tableLayoutPanel5.Controls.Add(this.label24, 0, 2); - this.tableLayoutPanel5.Controls.Add(this.label23, 0, 1); - this.tableLayoutPanel5.Controls.Add(this.UDOptimize, 1, 2); - this.tableLayoutPanel5.Controls.Add(this.UDSmoothing, 1, 1); - this.tableLayoutPanel5.Controls.Add(this.CbOptimize, 2, 2); - this.tableLayoutPanel5.Controls.Add(this.CbSmoothing, 2, 1); - this.tableLayoutPanel5.Controls.Add(this.label14, 0, 5); - this.tableLayoutPanel5.Controls.Add(this.CbFillingDirection, 1, 5); - this.tableLayoutPanel5.Controls.Add(this.LblFillingQuality, 0, 6); - this.tableLayoutPanel5.Controls.Add(this.UDFillingQuality, 1, 6); - this.tableLayoutPanel5.Controls.Add(this.LblFillingLineLbl, 2, 6); - this.tableLayoutPanel5.Controls.Add(this.UDDownSample, 1, 3); - this.tableLayoutPanel5.Controls.Add(this.label1, 0, 3); - this.tableLayoutPanel5.Controls.Add(this.CbDownSample, 2, 3); - this.tableLayoutPanel5.Controls.Add(this.lOptimizeFast, 0, 4); - this.tableLayoutPanel5.Controls.Add(this.BtnFillingQualityInfo, 3, 6); - this.tableLayoutPanel5.Controls.Add(this.CbOptimizeFast, 1, 4); - this.tableLayoutPanel5.Name = "tableLayoutPanel5"; - // - // label22 - // - resources.ApplyResources(this.label22, "label22"); - this.label22.Name = "label22"; - // - // UDSpotRemoval - // - resources.ApplyResources(this.UDSpotRemoval, "UDSpotRemoval"); - this.UDSpotRemoval.Minimum = new decimal(new int[] { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(RasterToLaserForm)); + this.RightGrid = new System.Windows.Forms.TableLayoutPanel(); + this.TCOriginalPreview = new System.Windows.Forms.TabControl(); + this.TpPreview = new System.Windows.Forms.TabPage(); + this.WB = new LaserGRBL.UserControls.WaitingProgressBar(); + this.PbConverted = new System.Windows.Forms.PictureBox(); + this.TpOriginal = new System.Windows.Forms.TabPage(); + this.PbOriginal = new System.Windows.Forms.PictureBox(); + this.FlipControl = new System.Windows.Forms.TableLayoutPanel(); + this.BtFlipV = new LaserGRBL.UserControls.ImageButton(); + this.BtFlipH = new LaserGRBL.UserControls.ImageButton(); + this.BtRotateCW = new LaserGRBL.UserControls.ImageButton(); + this.BtRotateCCW = new LaserGRBL.UserControls.ImageButton(); + this.BtnRevert = new LaserGRBL.UserControls.ImageButton(); + this.BtnReverse = new LaserGRBL.UserControls.ImageButton(); + this.BtnCrop = new LaserGRBL.UserControls.ImageButton(); + this.tableLayoutPanel8 = new System.Windows.Forms.TableLayoutPanel(); + this.GbCenterlineOptions = new System.Windows.Forms.GroupBox(); + this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel(); + this.label6 = new System.Windows.Forms.Label(); + this.label7 = new System.Windows.Forms.Label(); + this.TBLineThreshold = new LaserGRBL.UserControls.ColorSlider(); + this.TBCornerThreshold = new LaserGRBL.UserControls.ColorSlider(); + this.CbLineThreshold = new System.Windows.Forms.CheckBox(); + this.CbCornerThreshold = new System.Windows.Forms.CheckBox(); + this.GbVectorizeOptions = new System.Windows.Forms.GroupBox(); + this.tableLayoutPanel5 = new System.Windows.Forms.TableLayoutPanel(); + this.label22 = new System.Windows.Forms.Label(); + this.UDSpotRemoval = new System.Windows.Forms.NumericUpDown(); + this.CbSpotRemoval = new System.Windows.Forms.CheckBox(); + this.label24 = new System.Windows.Forms.Label(); + this.label23 = new System.Windows.Forms.Label(); + this.UDOptimize = new System.Windows.Forms.NumericUpDown(); + this.UDSmoothing = new System.Windows.Forms.NumericUpDown(); + this.CbOptimize = new System.Windows.Forms.CheckBox(); + this.CbSmoothing = new System.Windows.Forms.CheckBox(); + this.label14 = new System.Windows.Forms.Label(); + this.CbFillingDirection = new LaserGRBL.UserControls.EnumComboBox(); + this.LblFillingQuality = new System.Windows.Forms.Label(); + this.UDFillingQuality = new System.Windows.Forms.NumericUpDown(); + this.LblFillingLineLbl = new System.Windows.Forms.Label(); + this.UDDownSample = new System.Windows.Forms.NumericUpDown(); + this.label1 = new System.Windows.Forms.Label(); + this.CbDownSample = new System.Windows.Forms.CheckBox(); + this.lOptimizeFast = new System.Windows.Forms.Label(); + this.BtnFillingQualityInfo = new LaserGRBL.UserControls.ImageButton(); + this.CbOptimizeFast = new System.Windows.Forms.CheckBox(); + this.GbParameters = new System.Windows.Forms.GroupBox(); + this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel(); + this.CbResize = new LaserGRBL.UserControls.EnumComboBox(); + this.LblGrayscale = new System.Windows.Forms.Label(); + this.CbMode = new LaserGRBL.UserControls.EnumComboBox(); + this.TBRed = new LaserGRBL.UserControls.ColorSlider(); + this.LblRed = new System.Windows.Forms.Label(); + this.LblBlue = new System.Windows.Forms.Label(); + this.LblGreen = new System.Windows.Forms.Label(); + this.label2 = new System.Windows.Forms.Label(); + this.TBGreen = new LaserGRBL.UserControls.ColorSlider(); + this.TbBright = new LaserGRBL.UserControls.ColorSlider(); + this.TBBlue = new LaserGRBL.UserControls.ColorSlider(); + this.TbContrast = new LaserGRBL.UserControls.ColorSlider(); + this.label3 = new System.Windows.Forms.Label(); + this.CbThreshold = new System.Windows.Forms.CheckBox(); + this.label28 = new System.Windows.Forms.Label(); + this.TbThreshold = new LaserGRBL.UserControls.ColorSlider(); + this.TBWhiteClip = new LaserGRBL.UserControls.ColorSlider(); + this.label4 = new System.Windows.Forms.Label(); + this.GbLineToLineOptions = new System.Windows.Forms.GroupBox(); + this.TLP = new System.Windows.Forms.TableLayoutPanel(); + this.CbDirections = new LaserGRBL.UserControls.EnumComboBox(); + this.UDQuality = new System.Windows.Forms.NumericUpDown(); + this.CbLinePreview = new System.Windows.Forms.CheckBox(); + this.label5 = new System.Windows.Forms.Label(); + this.label27 = new System.Windows.Forms.Label(); + this.label8 = new System.Windows.Forms.Label(); + this.LblDitherMode = new System.Windows.Forms.Label(); + this.CbDither = new System.Windows.Forms.ComboBox(); + this.BtnQualityInfo = new LaserGRBL.UserControls.ImageButton(); + this.GbConversionTool = new System.Windows.Forms.GroupBox(); + this.tableLayoutPanel4 = new System.Windows.Forms.TableLayoutPanel(); + this.RbCenterline = new System.Windows.Forms.RadioButton(); + this.RbDithering = new System.Windows.Forms.RadioButton(); + this.RbVectorize = new System.Windows.Forms.RadioButton(); + this.RbLineToLineTracing = new System.Windows.Forms.RadioButton(); + this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); + this.BtnCancel = new System.Windows.Forms.Button(); + this.BtnCreate = new System.Windows.Forms.Button(); + this.WT = new System.Windows.Forms.Timer(this.components); + this.TT = new System.Windows.Forms.ToolTip(this.components); + this.RightGrid.SuspendLayout(); + this.TCOriginalPreview.SuspendLayout(); + this.TpPreview.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.PbConverted)).BeginInit(); + this.TpOriginal.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.PbOriginal)).BeginInit(); + this.FlipControl.SuspendLayout(); + this.tableLayoutPanel8.SuspendLayout(); + this.GbCenterlineOptions.SuspendLayout(); + this.tableLayoutPanel3.SuspendLayout(); + this.GbVectorizeOptions.SuspendLayout(); + this.tableLayoutPanel5.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.UDSpotRemoval)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.UDOptimize)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.UDSmoothing)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.UDFillingQuality)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.UDDownSample)).BeginInit(); + this.GbParameters.SuspendLayout(); + this.tableLayoutPanel2.SuspendLayout(); + this.GbLineToLineOptions.SuspendLayout(); + this.TLP.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.UDQuality)).BeginInit(); + this.GbConversionTool.SuspendLayout(); + this.tableLayoutPanel4.SuspendLayout(); + this.tableLayoutPanel1.SuspendLayout(); + this.SuspendLayout(); + // + // RightGrid + // + resources.ApplyResources(this.RightGrid, "RightGrid"); + this.RightGrid.Controls.Add(this.TCOriginalPreview, 1, 0); + this.RightGrid.Controls.Add(this.FlipControl, 1, 1); + this.RightGrid.Controls.Add(this.tableLayoutPanel8, 0, 0); + this.RightGrid.Controls.Add(this.tableLayoutPanel1, 3, 1); + this.RightGrid.Name = "RightGrid"; + // + // TCOriginalPreview + // + this.RightGrid.SetColumnSpan(this.TCOriginalPreview, 3); + this.TCOriginalPreview.Controls.Add(this.TpPreview); + this.TCOriginalPreview.Controls.Add(this.TpOriginal); + resources.ApplyResources(this.TCOriginalPreview, "TCOriginalPreview"); + this.TCOriginalPreview.Name = "TCOriginalPreview"; + this.TCOriginalPreview.SelectedIndex = 0; + // + // TpPreview + // + this.TpPreview.Controls.Add(this.WB); + this.TpPreview.Controls.Add(this.PbConverted); + resources.ApplyResources(this.TpPreview, "TpPreview"); + this.TpPreview.Name = "TpPreview"; + this.TpPreview.UseVisualStyleBackColor = true; + // + // WB + // + resources.ApplyResources(this.WB, "WB"); + this.WB.BarColor = System.Drawing.Color.SteelBlue; + this.WB.BorderColor = System.Drawing.Color.Black; + this.WB.BouncingMode = LaserGRBL.UserControls.WaitingProgressBar.BouncingModeEnum.PingPong; + this.WB.DrawProgressString = false; + this.WB.FillColor = System.Drawing.Color.White; + this.WB.FillStyle = LaserGRBL.UserControls.FillStyles.Solid; + this.WB.Interval = 25D; + this.WB.Maximum = 20D; + this.WB.Minimum = 0D; + this.WB.Name = "WB"; + this.WB.ProgressStringDecimals = 0; + this.WB.Reverse = true; + this.WB.Running = false; + this.WB.Step = 1D; + this.WB.ThrowExceprion = false; + this.WB.Value = 0D; + // + // PbConverted + // + this.PbConverted.BackColor = System.Drawing.Color.White; + resources.ApplyResources(this.PbConverted, "PbConverted"); + this.PbConverted.Name = "PbConverted"; + this.PbConverted.TabStop = false; + this.PbConverted.MouseDown += new System.Windows.Forms.MouseEventHandler(this.PbConvertedMouseDown); + this.PbConverted.MouseMove += new System.Windows.Forms.MouseEventHandler(this.PbConvertedMouseMove); + this.PbConverted.MouseUp += new System.Windows.Forms.MouseEventHandler(this.PbConvertedMouseUp); + this.PbConverted.Resize += new System.EventHandler(this.PbConverted_Resize); + // + // TpOriginal + // + this.TpOriginal.Controls.Add(this.PbOriginal); + resources.ApplyResources(this.TpOriginal, "TpOriginal"); + this.TpOriginal.Name = "TpOriginal"; + this.TpOriginal.UseVisualStyleBackColor = true; + // + // PbOriginal + // + this.PbOriginal.BackColor = System.Drawing.Color.White; + resources.ApplyResources(this.PbOriginal, "PbOriginal"); + this.PbOriginal.Name = "PbOriginal"; + this.PbOriginal.TabStop = false; + // + // FlipControl + // + resources.ApplyResources(this.FlipControl, "FlipControl"); + this.FlipControl.Controls.Add(this.BtFlipV, 5, 0); + this.FlipControl.Controls.Add(this.BtFlipH, 4, 0); + this.FlipControl.Controls.Add(this.BtRotateCW, 2, 0); + this.FlipControl.Controls.Add(this.BtRotateCCW, 3, 0); + this.FlipControl.Controls.Add(this.BtnRevert, 0, 0); + this.FlipControl.Controls.Add(this.BtnReverse, 7, 0); + this.FlipControl.Controls.Add(this.BtnCrop, 6, 0); + this.FlipControl.GrowStyle = System.Windows.Forms.TableLayoutPanelGrowStyle.AddColumns; + this.FlipControl.Name = "FlipControl"; + // + // BtFlipV + // + this.BtFlipV.AltImage = null; + this.BtFlipV.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); + this.BtFlipV.Coloration = System.Drawing.Color.Empty; + this.BtFlipV.Image = ((System.Drawing.Image)(resources.GetObject("BtFlipV.Image"))); + resources.ApplyResources(this.BtFlipV, "BtFlipV"); + this.BtFlipV.Name = "BtFlipV"; + this.BtFlipV.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; + this.TT.SetToolTip(this.BtFlipV, resources.GetString("BtFlipV.ToolTip")); + this.BtFlipV.UseAltImage = false; + this.BtFlipV.Click += new System.EventHandler(this.BtFlipVClick); + // + // BtFlipH + // + this.BtFlipH.AltImage = null; + this.BtFlipH.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); + this.BtFlipH.Coloration = System.Drawing.Color.Empty; + this.BtFlipH.Image = ((System.Drawing.Image)(resources.GetObject("BtFlipH.Image"))); + resources.ApplyResources(this.BtFlipH, "BtFlipH"); + this.BtFlipH.Name = "BtFlipH"; + this.BtFlipH.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; + this.TT.SetToolTip(this.BtFlipH, resources.GetString("BtFlipH.ToolTip")); + this.BtFlipH.UseAltImage = false; + this.BtFlipH.Click += new System.EventHandler(this.BtFlipHClick); + // + // BtRotateCW + // + this.BtRotateCW.AltImage = null; + this.BtRotateCW.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); + this.BtRotateCW.Coloration = System.Drawing.Color.Empty; + this.BtRotateCW.Image = ((System.Drawing.Image)(resources.GetObject("BtRotateCW.Image"))); + resources.ApplyResources(this.BtRotateCW, "BtRotateCW"); + this.BtRotateCW.Name = "BtRotateCW"; + this.BtRotateCW.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; + this.TT.SetToolTip(this.BtRotateCW, resources.GetString("BtRotateCW.ToolTip")); + this.BtRotateCW.UseAltImage = false; + this.BtRotateCW.Click += new System.EventHandler(this.BtRotateCWClick); + // + // BtRotateCCW + // + this.BtRotateCCW.AltImage = null; + this.BtRotateCCW.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); + this.BtRotateCCW.Coloration = System.Drawing.Color.Empty; + this.BtRotateCCW.Image = ((System.Drawing.Image)(resources.GetObject("BtRotateCCW.Image"))); + resources.ApplyResources(this.BtRotateCCW, "BtRotateCCW"); + this.BtRotateCCW.Name = "BtRotateCCW"; + this.BtRotateCCW.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; + this.TT.SetToolTip(this.BtRotateCCW, resources.GetString("BtRotateCCW.ToolTip")); + this.BtRotateCCW.UseAltImage = false; + this.BtRotateCCW.Click += new System.EventHandler(this.BtRotateCCWClick); + // + // BtnRevert + // + this.BtnRevert.AltImage = null; + this.BtnRevert.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); + this.BtnRevert.Coloration = System.Drawing.Color.Empty; + this.BtnRevert.Image = ((System.Drawing.Image)(resources.GetObject("BtnRevert.Image"))); + resources.ApplyResources(this.BtnRevert, "BtnRevert"); + this.BtnRevert.Name = "BtnRevert"; + this.BtnRevert.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; + this.TT.SetToolTip(this.BtnRevert, resources.GetString("BtnRevert.ToolTip")); + this.BtnRevert.UseAltImage = false; + this.BtnRevert.Click += new System.EventHandler(this.BtnRevertClick); + // + // BtnReverse + // + this.BtnReverse.AltImage = null; + this.BtnReverse.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); + this.BtnReverse.Coloration = System.Drawing.Color.Empty; + this.BtnReverse.Image = ((System.Drawing.Image)(resources.GetObject("BtnReverse.Image"))); + resources.ApplyResources(this.BtnReverse, "BtnReverse"); + this.BtnReverse.Name = "BtnReverse"; + this.BtnReverse.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; + this.TT.SetToolTip(this.BtnReverse, resources.GetString("BtnReverse.ToolTip")); + this.BtnReverse.UseAltImage = false; + this.BtnReverse.Click += new System.EventHandler(this.BtnReverse_Click); + // + // BtnCrop + // + this.BtnCrop.AltImage = null; + this.BtnCrop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); + this.BtnCrop.Coloration = System.Drawing.Color.Empty; + this.BtnCrop.Image = ((System.Drawing.Image)(resources.GetObject("BtnCrop.Image"))); + resources.ApplyResources(this.BtnCrop, "BtnCrop"); + this.BtnCrop.Name = "BtnCrop"; + this.BtnCrop.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; + this.TT.SetToolTip(this.BtnCrop, resources.GetString("BtnCrop.ToolTip")); + this.BtnCrop.UseAltImage = false; + this.BtnCrop.Click += new System.EventHandler(this.BtnCropClick); + // + // tableLayoutPanel8 + // + resources.ApplyResources(this.tableLayoutPanel8, "tableLayoutPanel8"); + this.tableLayoutPanel8.Controls.Add(this.GbCenterlineOptions, 0, 2); + this.tableLayoutPanel8.Controls.Add(this.GbVectorizeOptions, 0, 4); + this.tableLayoutPanel8.Controls.Add(this.GbParameters, 0, 0); + this.tableLayoutPanel8.Controls.Add(this.GbLineToLineOptions, 0, 3); + this.tableLayoutPanel8.Controls.Add(this.GbConversionTool, 0, 1); + this.tableLayoutPanel8.Name = "tableLayoutPanel8"; + this.RightGrid.SetRowSpan(this.tableLayoutPanel8, 2); + // + // GbCenterlineOptions + // + resources.ApplyResources(this.GbCenterlineOptions, "GbCenterlineOptions"); + this.GbCenterlineOptions.Controls.Add(this.tableLayoutPanel3); + this.GbCenterlineOptions.Name = "GbCenterlineOptions"; + this.GbCenterlineOptions.TabStop = false; + // + // tableLayoutPanel3 + // + resources.ApplyResources(this.tableLayoutPanel3, "tableLayoutPanel3"); + this.tableLayoutPanel3.Controls.Add(this.label6, 0, 1); + this.tableLayoutPanel3.Controls.Add(this.label7, 0, 0); + this.tableLayoutPanel3.Controls.Add(this.TBLineThreshold, 2, 1); + this.tableLayoutPanel3.Controls.Add(this.TBCornerThreshold, 2, 0); + this.tableLayoutPanel3.Controls.Add(this.CbLineThreshold, 3, 1); + this.tableLayoutPanel3.Controls.Add(this.CbCornerThreshold, 3, 0); + this.tableLayoutPanel3.Name = "tableLayoutPanel3"; + // + // label6 + // + resources.ApplyResources(this.label6, "label6"); + this.label6.Name = "label6"; + // + // label7 + // + resources.ApplyResources(this.label7, "label7"); + this.label7.Name = "label7"; + // + // TBLineThreshold + // + resources.ApplyResources(this.TBLineThreshold, "TBLineThreshold"); + this.TBLineThreshold.BackColor = System.Drawing.Color.Transparent; + this.TBLineThreshold.BarInnerColor = System.Drawing.Color.LightGoldenrodYellow; + this.TBLineThreshold.BarOuterColor = System.Drawing.Color.Gold; + this.TBLineThreshold.BorderRoundRectSize = new System.Drawing.Size(8, 8); + this.TBLineThreshold.ElapsedInnerColor = System.Drawing.Color.Yellow; + this.TBLineThreshold.ElapsedOuterColor = System.Drawing.Color.Gold; + this.TBLineThreshold.LargeChange = ((uint)(5u)); + this.TBLineThreshold.Name = "TBLineThreshold"; + this.TBLineThreshold.SmallChange = ((uint)(1u)); + this.TBLineThreshold.ThumbRoundRectSize = new System.Drawing.Size(4, 4); + this.TBLineThreshold.ThumbSize = 8; + this.TT.SetToolTip(this.TBLineThreshold, resources.GetString("TBLineThreshold.ToolTip")); + this.TBLineThreshold.Value = 10; + this.TBLineThreshold.ValueChanged += new System.EventHandler(this.TBLineThreshold_ValueChanged); + this.TBLineThreshold.DoubleClick += new System.EventHandler(this.TBLineThreshold_DoubleClick); + // + // TBCornerThreshold + // + resources.ApplyResources(this.TBCornerThreshold, "TBCornerThreshold"); + this.TBCornerThreshold.BackColor = System.Drawing.Color.Transparent; + this.TBCornerThreshold.BarInnerColor = System.Drawing.Color.LightGoldenrodYellow; + this.TBCornerThreshold.BarOuterColor = System.Drawing.Color.Gold; + this.TBCornerThreshold.BorderRoundRectSize = new System.Drawing.Size(8, 8); + this.TBCornerThreshold.ElapsedInnerColor = System.Drawing.Color.Yellow; + this.TBCornerThreshold.ElapsedOuterColor = System.Drawing.Color.Gold; + this.TBCornerThreshold.LargeChange = ((uint)(5u)); + this.TBCornerThreshold.Maximum = 360; + this.TBCornerThreshold.Name = "TBCornerThreshold"; + this.TBCornerThreshold.SmallChange = ((uint)(1u)); + this.TBCornerThreshold.ThumbRoundRectSize = new System.Drawing.Size(4, 4); + this.TBCornerThreshold.ThumbSize = 8; + this.TT.SetToolTip(this.TBCornerThreshold, resources.GetString("TBCornerThreshold.ToolTip")); + this.TBCornerThreshold.Value = 110; + this.TBCornerThreshold.ValueChanged += new System.EventHandler(this.TBCornerThreshold_ValueChanged); + this.TBCornerThreshold.DoubleClick += new System.EventHandler(this.TBCornerThreshold_DoubleClick); + // + // CbLineThreshold + // + resources.ApplyResources(this.CbLineThreshold, "CbLineThreshold"); + this.CbLineThreshold.Name = "CbLineThreshold"; + this.CbLineThreshold.UseVisualStyleBackColor = true; + this.CbLineThreshold.CheckedChanged += new System.EventHandler(this.CbUseLineThreshold_CheckedChanged); + // + // CbCornerThreshold + // + resources.ApplyResources(this.CbCornerThreshold, "CbCornerThreshold"); + this.CbCornerThreshold.Name = "CbCornerThreshold"; + this.CbCornerThreshold.UseVisualStyleBackColor = true; + this.CbCornerThreshold.CheckedChanged += new System.EventHandler(this.CbCornerThreshold_CheckedChanged); + // + // GbVectorizeOptions + // + resources.ApplyResources(this.GbVectorizeOptions, "GbVectorizeOptions"); + this.GbVectorizeOptions.Controls.Add(this.tableLayoutPanel5); + this.GbVectorizeOptions.Name = "GbVectorizeOptions"; + this.GbVectorizeOptions.TabStop = false; + // + // tableLayoutPanel5 + // + resources.ApplyResources(this.tableLayoutPanel5, "tableLayoutPanel5"); + this.tableLayoutPanel5.Controls.Add(this.label22, 0, 0); + this.tableLayoutPanel5.Controls.Add(this.UDSpotRemoval, 1, 0); + this.tableLayoutPanel5.Controls.Add(this.CbSpotRemoval, 2, 0); + this.tableLayoutPanel5.Controls.Add(this.label24, 0, 2); + this.tableLayoutPanel5.Controls.Add(this.label23, 0, 1); + this.tableLayoutPanel5.Controls.Add(this.UDOptimize, 1, 2); + this.tableLayoutPanel5.Controls.Add(this.UDSmoothing, 1, 1); + this.tableLayoutPanel5.Controls.Add(this.CbOptimize, 2, 2); + this.tableLayoutPanel5.Controls.Add(this.CbSmoothing, 2, 1); + this.tableLayoutPanel5.Controls.Add(this.label14, 0, 5); + this.tableLayoutPanel5.Controls.Add(this.CbFillingDirection, 1, 5); + this.tableLayoutPanel5.Controls.Add(this.LblFillingQuality, 0, 6); + this.tableLayoutPanel5.Controls.Add(this.UDFillingQuality, 1, 6); + this.tableLayoutPanel5.Controls.Add(this.LblFillingLineLbl, 2, 6); + this.tableLayoutPanel5.Controls.Add(this.UDDownSample, 1, 3); + this.tableLayoutPanel5.Controls.Add(this.label1, 0, 3); + this.tableLayoutPanel5.Controls.Add(this.CbDownSample, 2, 3); + this.tableLayoutPanel5.Controls.Add(this.lOptimizeFast, 0, 4); + this.tableLayoutPanel5.Controls.Add(this.BtnFillingQualityInfo, 3, 6); + this.tableLayoutPanel5.Controls.Add(this.CbOptimizeFast, 1, 4); + this.tableLayoutPanel5.Name = "tableLayoutPanel5"; + // + // label22 + // + resources.ApplyResources(this.label22, "label22"); + this.label22.Name = "label22"; + // + // UDSpotRemoval + // + resources.ApplyResources(this.UDSpotRemoval, "UDSpotRemoval"); + this.UDSpotRemoval.Minimum = new decimal(new int[] { 2, 0, 0, 0}); - this.UDSpotRemoval.Name = "UDSpotRemoval"; - this.TT.SetToolTip(this.UDSpotRemoval, resources.GetString("UDSpotRemoval.ToolTip")); - this.UDSpotRemoval.Value = new decimal(new int[] { + this.UDSpotRemoval.Name = "UDSpotRemoval"; + this.TT.SetToolTip(this.UDSpotRemoval, resources.GetString("UDSpotRemoval.ToolTip")); + this.UDSpotRemoval.Value = new decimal(new int[] { 2, 0, 0, 0}); - this.UDSpotRemoval.ValueChanged += new System.EventHandler(this.UDSpotRemoval_ValueChanged); - // - // CbSpotRemoval - // - resources.ApplyResources(this.CbSpotRemoval, "CbSpotRemoval"); - this.CbSpotRemoval.Name = "CbSpotRemoval"; - this.CbSpotRemoval.UseVisualStyleBackColor = true; - this.CbSpotRemoval.CheckedChanged += new System.EventHandler(this.CbSpotRemoval_CheckedChanged); - // - // label24 - // - resources.ApplyResources(this.label24, "label24"); - this.label24.Name = "label24"; - // - // label23 - // - resources.ApplyResources(this.label23, "label23"); - this.label23.Name = "label23"; - // - // UDOptimize - // - resources.ApplyResources(this.UDOptimize, "UDOptimize"); - this.UDOptimize.DecimalPlaces = 1; - this.UDOptimize.Increment = new decimal(new int[] { + this.UDSpotRemoval.ValueChanged += new System.EventHandler(this.UDSpotRemoval_ValueChanged); + // + // CbSpotRemoval + // + resources.ApplyResources(this.CbSpotRemoval, "CbSpotRemoval"); + this.CbSpotRemoval.Name = "CbSpotRemoval"; + this.CbSpotRemoval.UseVisualStyleBackColor = true; + this.CbSpotRemoval.CheckedChanged += new System.EventHandler(this.CbSpotRemoval_CheckedChanged); + // + // label24 + // + resources.ApplyResources(this.label24, "label24"); + this.label24.Name = "label24"; + // + // label23 + // + resources.ApplyResources(this.label23, "label23"); + this.label23.Name = "label23"; + // + // UDOptimize + // + resources.ApplyResources(this.UDOptimize, "UDOptimize"); + this.UDOptimize.DecimalPlaces = 1; + this.UDOptimize.Increment = new decimal(new int[] { 1, 0, 0, 65536}); - this.UDOptimize.Maximum = new decimal(new int[] { + this.UDOptimize.Maximum = new decimal(new int[] { 50, 0, 0, 0}); - this.UDOptimize.Minimum = new decimal(new int[] { + this.UDOptimize.Minimum = new decimal(new int[] { 2, 0, 0, 65536}); - this.UDOptimize.Name = "UDOptimize"; - this.TT.SetToolTip(this.UDOptimize, resources.GetString("UDOptimize.ToolTip")); - this.UDOptimize.Value = new decimal(new int[] { + this.UDOptimize.Name = "UDOptimize"; + this.TT.SetToolTip(this.UDOptimize, resources.GetString("UDOptimize.ToolTip")); + this.UDOptimize.Value = new decimal(new int[] { 2, 0, 0, 65536}); - this.UDOptimize.ValueChanged += new System.EventHandler(this.UDOptimize_ValueChanged); - // - // UDSmoothing - // - resources.ApplyResources(this.UDSmoothing, "UDSmoothing"); - this.UDSmoothing.DecimalPlaces = 1; - this.UDSmoothing.Increment = new decimal(new int[] { + this.UDOptimize.ValueChanged += new System.EventHandler(this.UDOptimize_ValueChanged); + // + // UDSmoothing + // + resources.ApplyResources(this.UDSmoothing, "UDSmoothing"); + this.UDSmoothing.DecimalPlaces = 1; + this.UDSmoothing.Increment = new decimal(new int[] { 1, 0, 0, 65536}); - this.UDSmoothing.Name = "UDSmoothing"; - this.TT.SetToolTip(this.UDSmoothing, resources.GetString("UDSmoothing.ToolTip")); - this.UDSmoothing.Value = new decimal(new int[] { + this.UDSmoothing.Name = "UDSmoothing"; + this.TT.SetToolTip(this.UDSmoothing, resources.GetString("UDSmoothing.ToolTip")); + this.UDSmoothing.Value = new decimal(new int[] { 10, 0, 0, 65536}); - this.UDSmoothing.ValueChanged += new System.EventHandler(this.UDSmoothing_ValueChanged); - // - // CbOptimize - // - resources.ApplyResources(this.CbOptimize, "CbOptimize"); - this.CbOptimize.Name = "CbOptimize"; - this.CbOptimize.UseVisualStyleBackColor = true; - this.CbOptimize.CheckedChanged += new System.EventHandler(this.CbOptimize_CheckedChanged); - // - // CbSmoothing - // - resources.ApplyResources(this.CbSmoothing, "CbSmoothing"); - this.CbSmoothing.Name = "CbSmoothing"; - this.CbSmoothing.UseVisualStyleBackColor = true; - this.CbSmoothing.CheckedChanged += new System.EventHandler(this.CbSmoothing_CheckedChanged); - // - // label14 - // - resources.ApplyResources(this.label14, "label14"); - this.label14.Name = "label14"; - // - // CbFillingDirection - // - resources.ApplyResources(this.CbFillingDirection, "CbFillingDirection"); - this.tableLayoutPanel5.SetColumnSpan(this.CbFillingDirection, 3); - this.CbFillingDirection.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.CbFillingDirection.FormattingEnabled = true; - this.CbFillingDirection.Name = "CbFillingDirection"; - this.CbFillingDirection.SelectedItem = null; - this.TT.SetToolTip(this.CbFillingDirection, resources.GetString("CbFillingDirection.ToolTip")); - this.CbFillingDirection.SelectedIndexChanged += new System.EventHandler(this.CbFillingDirection_SelectedIndexChanged); - // - // LblFillingQuality - // - resources.ApplyResources(this.LblFillingQuality, "LblFillingQuality"); - this.LblFillingQuality.Name = "LblFillingQuality"; - // - // UDFillingQuality - // - resources.ApplyResources(this.UDFillingQuality, "UDFillingQuality"); - this.UDFillingQuality.DecimalPlaces = 3; - this.UDFillingQuality.Maximum = new decimal(new int[] { + this.UDSmoothing.ValueChanged += new System.EventHandler(this.UDSmoothing_ValueChanged); + // + // CbOptimize + // + resources.ApplyResources(this.CbOptimize, "CbOptimize"); + this.CbOptimize.Name = "CbOptimize"; + this.CbOptimize.UseVisualStyleBackColor = true; + this.CbOptimize.CheckedChanged += new System.EventHandler(this.CbOptimize_CheckedChanged); + // + // CbSmoothing + // + resources.ApplyResources(this.CbSmoothing, "CbSmoothing"); + this.CbSmoothing.Name = "CbSmoothing"; + this.CbSmoothing.UseVisualStyleBackColor = true; + this.CbSmoothing.CheckedChanged += new System.EventHandler(this.CbSmoothing_CheckedChanged); + // + // label14 + // + resources.ApplyResources(this.label14, "label14"); + this.label14.Name = "label14"; + // + // CbFillingDirection + // + resources.ApplyResources(this.CbFillingDirection, "CbFillingDirection"); + this.tableLayoutPanel5.SetColumnSpan(this.CbFillingDirection, 3); + this.CbFillingDirection.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.CbFillingDirection.FormattingEnabled = true; + this.CbFillingDirection.Name = "CbFillingDirection"; + this.CbFillingDirection.SelectedItem = null; + this.TT.SetToolTip(this.CbFillingDirection, resources.GetString("CbFillingDirection.ToolTip")); + this.CbFillingDirection.SelectedIndexChanged += new System.EventHandler(this.CbFillingDirection_SelectedIndexChanged); + // + // LblFillingQuality + // + resources.ApplyResources(this.LblFillingQuality, "LblFillingQuality"); + this.LblFillingQuality.Name = "LblFillingQuality"; + // + // UDFillingQuality + // + resources.ApplyResources(this.UDFillingQuality, "UDFillingQuality"); + this.UDFillingQuality.DecimalPlaces = 3; + this.UDFillingQuality.Maximum = new decimal(new int[] { 20, 0, 0, 0}); - this.UDFillingQuality.Minimum = new decimal(new int[] { + this.UDFillingQuality.Minimum = new decimal(new int[] { 1, 0, 0, 0}); - this.UDFillingQuality.Name = "UDFillingQuality"; - this.TT.SetToolTip(this.UDFillingQuality, resources.GetString("UDFillingQuality.ToolTip")); - this.UDFillingQuality.Value = new decimal(new int[] { + this.UDFillingQuality.Name = "UDFillingQuality"; + this.TT.SetToolTip(this.UDFillingQuality, resources.GetString("UDFillingQuality.ToolTip")); + this.UDFillingQuality.Value = new decimal(new int[] { 3, 0, 0, 0}); - this.UDFillingQuality.ValueChanged += new System.EventHandler(this.UDFillingQuality_ValueChanged); - // - // LblFillingLineLbl - // - resources.ApplyResources(this.LblFillingLineLbl, "LblFillingLineLbl"); - this.LblFillingLineLbl.Name = "LblFillingLineLbl"; - // - // UDDownSample - // - resources.ApplyResources(this.UDDownSample, "UDDownSample"); - this.UDDownSample.DecimalPlaces = 1; - this.UDDownSample.Increment = new decimal(new int[] { + this.UDFillingQuality.ValueChanged += new System.EventHandler(this.UDFillingQuality_ValueChanged); + // + // LblFillingLineLbl + // + resources.ApplyResources(this.LblFillingLineLbl, "LblFillingLineLbl"); + this.LblFillingLineLbl.Name = "LblFillingLineLbl"; + // + // UDDownSample + // + resources.ApplyResources(this.UDDownSample, "UDDownSample"); + this.UDDownSample.DecimalPlaces = 1; + this.UDDownSample.Increment = new decimal(new int[] { 1, 0, 0, 65536}); - this.UDDownSample.Maximum = new decimal(new int[] { + this.UDDownSample.Maximum = new decimal(new int[] { 10, 0, 0, 0}); - this.UDDownSample.Minimum = new decimal(new int[] { + this.UDDownSample.Minimum = new decimal(new int[] { 1, 0, 0, 0}); - this.UDDownSample.Name = "UDDownSample"; - this.TT.SetToolTip(this.UDDownSample, resources.GetString("UDDownSample.ToolTip")); - this.UDDownSample.Value = new decimal(new int[] { + this.UDDownSample.Name = "UDDownSample"; + this.TT.SetToolTip(this.UDDownSample, resources.GetString("UDDownSample.ToolTip")); + this.UDDownSample.Value = new decimal(new int[] { 1, 0, 0, 0}); - this.UDDownSample.ValueChanged += new System.EventHandler(this.UDDownSample_ValueChanged); - // - // label1 - // - resources.ApplyResources(this.label1, "label1"); - this.label1.Name = "label1"; - // - // CbDownSample - // - resources.ApplyResources(this.CbDownSample, "CbDownSample"); - this.CbDownSample.Name = "CbDownSample"; - this.CbDownSample.UseVisualStyleBackColor = true; - this.CbDownSample.CheckedChanged += new System.EventHandler(this.CbDownSample_CheckedChanged); - // - // lOptimizeFast - // - resources.ApplyResources(this.lOptimizeFast, "lOptimizeFast"); - this.lOptimizeFast.Name = "lOptimizeFast"; - // - // BtnFillingQualityInfo - // - this.BtnFillingQualityInfo.AltImage = null; - resources.ApplyResources(this.BtnFillingQualityInfo, "BtnFillingQualityInfo"); - this.BtnFillingQualityInfo.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.BtnFillingQualityInfo.Coloration = System.Drawing.Color.Empty; - this.BtnFillingQualityInfo.Image = ((System.Drawing.Image)(resources.GetObject("BtnFillingQualityInfo.Image"))); - this.BtnFillingQualityInfo.Name = "BtnFillingQualityInfo"; - this.BtnFillingQualityInfo.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; - this.TT.SetToolTip(this.BtnFillingQualityInfo, resources.GetString("BtnFillingQualityInfo.ToolTip")); - this.BtnFillingQualityInfo.UseAltImage = false; - this.BtnFillingQualityInfo.Click += new System.EventHandler(this.BtnFillingQualityInfo_Click); - // - // CbOptimizeFast - // - resources.ApplyResources(this.CbOptimizeFast, "CbOptimizeFast"); - this.CbOptimizeFast.Name = "CbOptimizeFast"; - this.CbOptimizeFast.UseVisualStyleBackColor = true; - this.CbOptimizeFast.CheckedChanged += new System.EventHandler(this.CbOptimizeFast_CheckedChanged); - // - // GbParameters - // - resources.ApplyResources(this.GbParameters, "GbParameters"); - this.GbParameters.Controls.Add(this.tableLayoutPanel2); - this.GbParameters.Name = "GbParameters"; - this.GbParameters.TabStop = false; - // - // tableLayoutPanel2 - // - resources.ApplyResources(this.tableLayoutPanel2, "tableLayoutPanel2"); - this.tableLayoutPanel2.Controls.Add(this.CbResize, 1, 0); - this.tableLayoutPanel2.Controls.Add(this.LblGrayscale, 0, 1); - this.tableLayoutPanel2.Controls.Add(this.CbMode, 1, 1); - this.tableLayoutPanel2.Controls.Add(this.TBRed, 1, 2); - this.tableLayoutPanel2.Controls.Add(this.LblRed, 0, 2); - this.tableLayoutPanel2.Controls.Add(this.LblBlue, 0, 4); - this.tableLayoutPanel2.Controls.Add(this.LblGreen, 0, 3); - this.tableLayoutPanel2.Controls.Add(this.label2, 0, 5); - this.tableLayoutPanel2.Controls.Add(this.TBGreen, 1, 3); - this.tableLayoutPanel2.Controls.Add(this.TbBright, 1, 5); - this.tableLayoutPanel2.Controls.Add(this.TBBlue, 1, 4); - this.tableLayoutPanel2.Controls.Add(this.TbContrast, 1, 6); - this.tableLayoutPanel2.Controls.Add(this.label3, 0, 6); - this.tableLayoutPanel2.Controls.Add(this.CbThreshold, 0, 8); - this.tableLayoutPanel2.Controls.Add(this.label28, 0, 0); - this.tableLayoutPanel2.Controls.Add(this.TbThreshold, 1, 8); - this.tableLayoutPanel2.Controls.Add(this.TBWhiteClip, 1, 7); - this.tableLayoutPanel2.Controls.Add(this.label4, 0, 7); - this.tableLayoutPanel2.Name = "tableLayoutPanel2"; - // - // CbResize - // - resources.ApplyResources(this.CbResize, "CbResize"); - this.CbResize.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.CbResize.FormattingEnabled = true; - this.CbResize.Name = "CbResize"; - this.CbResize.SelectedItem = null; - this.TT.SetToolTip(this.CbResize, resources.GetString("CbResize.ToolTip")); - this.CbResize.SelectedIndexChanged += new System.EventHandler(this.CbResizeSelectedIndexChanged); - // - // LblGrayscale - // - resources.ApplyResources(this.LblGrayscale, "LblGrayscale"); - this.LblGrayscale.Name = "LblGrayscale"; - // - // CbMode - // - resources.ApplyResources(this.CbMode, "CbMode"); - this.CbMode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.CbMode.FormattingEnabled = true; - this.CbMode.Name = "CbMode"; - this.CbMode.SelectedItem = null; - this.TT.SetToolTip(this.CbMode, resources.GetString("CbMode.ToolTip")); - this.CbMode.SelectedIndexChanged += new System.EventHandler(this.CbMode_SelectedIndexChanged); - // - // TBRed - // - resources.ApplyResources(this.TBRed, "TBRed"); - this.TBRed.BackColor = System.Drawing.Color.Transparent; - this.TBRed.BarInnerColor = System.Drawing.Color.Firebrick; - this.TBRed.BarOuterColor = System.Drawing.Color.DarkRed; - this.TBRed.BorderRoundRectSize = new System.Drawing.Size(8, 8); - this.TBRed.ElapsedInnerColor = System.Drawing.Color.Red; - this.TBRed.ElapsedOuterColor = System.Drawing.Color.DarkRed; - this.TBRed.LargeChange = ((uint)(5u)); - this.TBRed.Maximum = 160; - this.TBRed.Minimum = 40; - this.TBRed.Name = "TBRed"; - this.TBRed.SmallChange = ((uint)(1u)); - this.TBRed.ThumbRoundRectSize = new System.Drawing.Size(4, 4); - this.TBRed.ThumbSize = 8; - this.TBRed.Value = 100; - this.TBRed.ValueChanged += new System.EventHandler(this.TBRed_ValueChanged); - this.TBRed.DoubleClick += new System.EventHandler(this.OnRGBCBDoubleClick); - // - // LblRed - // - resources.ApplyResources(this.LblRed, "LblRed"); - this.LblRed.Name = "LblRed"; - // - // LblBlue - // - resources.ApplyResources(this.LblBlue, "LblBlue"); - this.LblBlue.Name = "LblBlue"; - // - // LblGreen - // - resources.ApplyResources(this.LblGreen, "LblGreen"); - this.LblGreen.Name = "LblGreen"; - // - // label2 - // - resources.ApplyResources(this.label2, "label2"); - this.label2.Name = "label2"; - // - // TBGreen - // - resources.ApplyResources(this.TBGreen, "TBGreen"); - this.TBGreen.BackColor = System.Drawing.Color.Transparent; - this.TBGreen.BarInnerColor = System.Drawing.Color.Green; - this.TBGreen.BarOuterColor = System.Drawing.Color.DarkGreen; - this.TBGreen.BorderRoundRectSize = new System.Drawing.Size(8, 8); - this.TBGreen.LargeChange = ((uint)(5u)); - this.TBGreen.Maximum = 160; - this.TBGreen.Minimum = 40; - this.TBGreen.Name = "TBGreen"; - this.TBGreen.SmallChange = ((uint)(1u)); - this.TBGreen.ThumbRoundRectSize = new System.Drawing.Size(4, 4); - this.TBGreen.ThumbSize = 8; - this.TBGreen.Value = 100; - this.TBGreen.ValueChanged += new System.EventHandler(this.TBGreen_ValueChanged); - this.TBGreen.DoubleClick += new System.EventHandler(this.OnRGBCBDoubleClick); - // - // TbBright - // - resources.ApplyResources(this.TbBright, "TbBright"); - this.TbBright.BackColor = System.Drawing.Color.Transparent; - this.TbBright.BarInnerColor = System.Drawing.Color.DimGray; - this.TbBright.BarOuterColor = System.Drawing.Color.Black; - this.TbBright.BorderRoundRectSize = new System.Drawing.Size(8, 8); - this.TbBright.ElapsedInnerColor = System.Drawing.Color.White; - this.TbBright.ElapsedOuterColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - this.TbBright.LargeChange = ((uint)(5u)); - this.TbBright.Maximum = 160; - this.TbBright.Minimum = 40; - this.TbBright.Name = "TbBright"; - this.TbBright.SmallChange = ((uint)(1u)); - this.TbBright.ThumbRoundRectSize = new System.Drawing.Size(4, 4); - this.TbBright.ThumbSize = 8; - this.TbBright.Value = 100; - this.TbBright.ValueChanged += new System.EventHandler(this.TbBright_ValueChanged); - this.TbBright.DoubleClick += new System.EventHandler(this.OnRGBCBDoubleClick); - // - // TBBlue - // - resources.ApplyResources(this.TBBlue, "TBBlue"); - this.TBBlue.BackColor = System.Drawing.Color.Transparent; - this.TBBlue.BarInnerColor = System.Drawing.Color.MediumBlue; - this.TBBlue.BarOuterColor = System.Drawing.Color.DarkBlue; - this.TBBlue.BorderRoundRectSize = new System.Drawing.Size(8, 8); - this.TBBlue.ElapsedInnerColor = System.Drawing.Color.DodgerBlue; - this.TBBlue.ElapsedOuterColor = System.Drawing.Color.SteelBlue; - this.TBBlue.LargeChange = ((uint)(5u)); - this.TBBlue.Maximum = 160; - this.TBBlue.Minimum = 40; - this.TBBlue.Name = "TBBlue"; - this.TBBlue.SmallChange = ((uint)(1u)); - this.TBBlue.ThumbRoundRectSize = new System.Drawing.Size(4, 4); - this.TBBlue.ThumbSize = 8; - this.TBBlue.Value = 100; - this.TBBlue.ValueChanged += new System.EventHandler(this.TBBlue_ValueChanged); - this.TBBlue.DoubleClick += new System.EventHandler(this.OnRGBCBDoubleClick); - // - // TbContrast - // - resources.ApplyResources(this.TbContrast, "TbContrast"); - this.TbContrast.BackColor = System.Drawing.Color.Transparent; - this.TbContrast.BarInnerColor = System.Drawing.Color.DimGray; - this.TbContrast.BarOuterColor = System.Drawing.Color.Black; - this.TbContrast.BorderRoundRectSize = new System.Drawing.Size(8, 8); - this.TbContrast.ElapsedInnerColor = System.Drawing.Color.White; - this.TbContrast.ElapsedOuterColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - this.TbContrast.LargeChange = ((uint)(5u)); - this.TbContrast.Maximum = 160; - this.TbContrast.Minimum = 40; - this.TbContrast.Name = "TbContrast"; - this.TbContrast.SmallChange = ((uint)(1u)); - this.TbContrast.ThumbRoundRectSize = new System.Drawing.Size(4, 4); - this.TbContrast.ThumbSize = 8; - this.TbContrast.Value = 100; - this.TbContrast.ValueChanged += new System.EventHandler(this.TbContrast_ValueChanged); - this.TbContrast.DoubleClick += new System.EventHandler(this.OnRGBCBDoubleClick); - // - // label3 - // - resources.ApplyResources(this.label3, "label3"); - this.label3.Name = "label3"; - // - // CbThreshold - // - resources.ApplyResources(this.CbThreshold, "CbThreshold"); - this.CbThreshold.Name = "CbThreshold"; - this.TT.SetToolTip(this.CbThreshold, resources.GetString("CbThreshold.ToolTip")); - this.CbThreshold.UseVisualStyleBackColor = true; - this.CbThreshold.CheckedChanged += new System.EventHandler(this.CbThreshold_CheckedChanged); - // - // label28 - // - resources.ApplyResources(this.label28, "label28"); - this.label28.Name = "label28"; - // - // TbThreshold - // - resources.ApplyResources(this.TbThreshold, "TbThreshold"); - this.TbThreshold.BackColor = System.Drawing.Color.Transparent; - this.TbThreshold.BarInnerColor = System.Drawing.Color.DimGray; - this.TbThreshold.BarOuterColor = System.Drawing.Color.Black; - this.TbThreshold.BorderRoundRectSize = new System.Drawing.Size(8, 8); - this.TbThreshold.ElapsedInnerColor = System.Drawing.Color.White; - this.TbThreshold.ElapsedOuterColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - this.TbThreshold.LargeChange = ((uint)(5u)); - this.TbThreshold.Name = "TbThreshold"; - this.TbThreshold.SmallChange = ((uint)(1u)); - this.TbThreshold.ThumbRoundRectSize = new System.Drawing.Size(4, 4); - this.TbThreshold.ThumbSize = 8; - this.TbThreshold.ValueChanged += new System.EventHandler(this.TbThreshold_ValueChanged); - this.TbThreshold.DoubleClick += new System.EventHandler(this.OnThresholdDoubleClick); - // - // TBWhiteClip - // - resources.ApplyResources(this.TBWhiteClip, "TBWhiteClip"); - this.TBWhiteClip.BackColor = System.Drawing.Color.Transparent; - this.TBWhiteClip.BarInnerColor = System.Drawing.Color.DimGray; - this.TBWhiteClip.BarOuterColor = System.Drawing.Color.Black; - this.TBWhiteClip.BorderRoundRectSize = new System.Drawing.Size(8, 8); - this.TBWhiteClip.ElapsedInnerColor = System.Drawing.Color.White; - this.TBWhiteClip.ElapsedOuterColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); - this.TBWhiteClip.LargeChange = ((uint)(5u)); - this.TBWhiteClip.Name = "TBWhiteClip"; - this.TBWhiteClip.SmallChange = ((uint)(1u)); - this.TBWhiteClip.ThumbRoundRectSize = new System.Drawing.Size(4, 4); - this.TBWhiteClip.ThumbSize = 8; - this.TBWhiteClip.Value = 5; - this.TBWhiteClip.ValueChanged += new System.EventHandler(this.TBWhiteClip_ValueChanged); - this.TBWhiteClip.MouseDown += new System.Windows.Forms.MouseEventHandler(this.TBWhiteClip_MouseDown); - this.TBWhiteClip.MouseUp += new System.Windows.Forms.MouseEventHandler(this.TBWhiteClip_MouseUp); - // - // label4 - // - resources.ApplyResources(this.label4, "label4"); - this.label4.Name = "label4"; - // - // GbLineToLineOptions - // - resources.ApplyResources(this.GbLineToLineOptions, "GbLineToLineOptions"); - this.GbLineToLineOptions.Controls.Add(this.TLP); - this.GbLineToLineOptions.Name = "GbLineToLineOptions"; - this.GbLineToLineOptions.TabStop = false; - // - // TLP - // - resources.ApplyResources(this.TLP, "TLP"); - this.TLP.Controls.Add(this.CbDirections, 1, 1); - this.TLP.Controls.Add(this.UDQuality, 1, 2); - this.TLP.Controls.Add(this.CbLinePreview, 0, 3); - this.TLP.Controls.Add(this.label5, 0, 2); - this.TLP.Controls.Add(this.label27, 0, 1); - this.TLP.Controls.Add(this.label8, 2, 2); - this.TLP.Controls.Add(this.LblDitherMode, 0, 0); - this.TLP.Controls.Add(this.CbDither, 1, 0); - this.TLP.Controls.Add(this.BtnQualityInfo, 3, 2); - this.TLP.Name = "TLP"; - // - // CbDirections - // - resources.ApplyResources(this.CbDirections, "CbDirections"); - this.TLP.SetColumnSpan(this.CbDirections, 3); - this.CbDirections.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.CbDirections.FormattingEnabled = true; - this.CbDirections.Name = "CbDirections"; - this.CbDirections.SelectedItem = null; - this.TT.SetToolTip(this.CbDirections, resources.GetString("CbDirections.ToolTip")); - this.CbDirections.SelectedIndexChanged += new System.EventHandler(this.CbDirectionsSelectedIndexChanged); - // - // UDQuality - // - this.UDQuality.DecimalPlaces = 3; - resources.ApplyResources(this.UDQuality, "UDQuality"); - this.UDQuality.Maximum = new decimal(new int[] { + this.UDDownSample.ValueChanged += new System.EventHandler(this.UDDownSample_ValueChanged); + // + // label1 + // + resources.ApplyResources(this.label1, "label1"); + this.label1.Name = "label1"; + // + // CbDownSample + // + resources.ApplyResources(this.CbDownSample, "CbDownSample"); + this.CbDownSample.Name = "CbDownSample"; + this.CbDownSample.UseVisualStyleBackColor = true; + this.CbDownSample.CheckedChanged += new System.EventHandler(this.CbDownSample_CheckedChanged); + // + // lOptimizeFast + // + resources.ApplyResources(this.lOptimizeFast, "lOptimizeFast"); + this.lOptimizeFast.Name = "lOptimizeFast"; + // + // BtnFillingQualityInfo + // + this.BtnFillingQualityInfo.AltImage = null; + resources.ApplyResources(this.BtnFillingQualityInfo, "BtnFillingQualityInfo"); + this.BtnFillingQualityInfo.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); + this.BtnFillingQualityInfo.Coloration = System.Drawing.Color.Empty; + this.BtnFillingQualityInfo.Image = ((System.Drawing.Image)(resources.GetObject("BtnFillingQualityInfo.Image"))); + this.BtnFillingQualityInfo.Name = "BtnFillingQualityInfo"; + this.BtnFillingQualityInfo.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; + this.TT.SetToolTip(this.BtnFillingQualityInfo, resources.GetString("BtnFillingQualityInfo.ToolTip")); + this.BtnFillingQualityInfo.UseAltImage = false; + this.BtnFillingQualityInfo.Click += new System.EventHandler(this.BtnFillingQualityInfo_Click); + // + // CbOptimizeFast + // + resources.ApplyResources(this.CbOptimizeFast, "CbOptimizeFast"); + this.CbOptimizeFast.Name = "CbOptimizeFast"; + this.CbOptimizeFast.UseVisualStyleBackColor = true; + this.CbOptimizeFast.CheckedChanged += new System.EventHandler(this.CbOptimizeFast_CheckedChanged); + // + // GbParameters + // + resources.ApplyResources(this.GbParameters, "GbParameters"); + this.GbParameters.Controls.Add(this.tableLayoutPanel2); + this.GbParameters.Name = "GbParameters"; + this.GbParameters.TabStop = false; + // + // tableLayoutPanel2 + // + resources.ApplyResources(this.tableLayoutPanel2, "tableLayoutPanel2"); + this.tableLayoutPanel2.Controls.Add(this.CbResize, 1, 0); + this.tableLayoutPanel2.Controls.Add(this.LblGrayscale, 0, 1); + this.tableLayoutPanel2.Controls.Add(this.CbMode, 1, 1); + this.tableLayoutPanel2.Controls.Add(this.TBRed, 1, 2); + this.tableLayoutPanel2.Controls.Add(this.LblRed, 0, 2); + this.tableLayoutPanel2.Controls.Add(this.LblBlue, 0, 4); + this.tableLayoutPanel2.Controls.Add(this.LblGreen, 0, 3); + this.tableLayoutPanel2.Controls.Add(this.label2, 0, 5); + this.tableLayoutPanel2.Controls.Add(this.TBGreen, 1, 3); + this.tableLayoutPanel2.Controls.Add(this.TbBright, 1, 5); + this.tableLayoutPanel2.Controls.Add(this.TBBlue, 1, 4); + this.tableLayoutPanel2.Controls.Add(this.TbContrast, 1, 6); + this.tableLayoutPanel2.Controls.Add(this.label3, 0, 6); + this.tableLayoutPanel2.Controls.Add(this.CbThreshold, 0, 8); + this.tableLayoutPanel2.Controls.Add(this.label28, 0, 0); + this.tableLayoutPanel2.Controls.Add(this.TbThreshold, 1, 8); + this.tableLayoutPanel2.Controls.Add(this.TBWhiteClip, 1, 7); + this.tableLayoutPanel2.Controls.Add(this.label4, 0, 7); + this.tableLayoutPanel2.Name = "tableLayoutPanel2"; + // + // CbResize + // + resources.ApplyResources(this.CbResize, "CbResize"); + this.CbResize.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.CbResize.FormattingEnabled = true; + this.CbResize.Name = "CbResize"; + this.CbResize.SelectedItem = null; + this.TT.SetToolTip(this.CbResize, resources.GetString("CbResize.ToolTip")); + this.CbResize.SelectedIndexChanged += new System.EventHandler(this.CbResizeSelectedIndexChanged); + // + // LblGrayscale + // + resources.ApplyResources(this.LblGrayscale, "LblGrayscale"); + this.LblGrayscale.Name = "LblGrayscale"; + // + // CbMode + // + resources.ApplyResources(this.CbMode, "CbMode"); + this.CbMode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.CbMode.FormattingEnabled = true; + this.CbMode.Name = "CbMode"; + this.CbMode.SelectedItem = null; + this.TT.SetToolTip(this.CbMode, resources.GetString("CbMode.ToolTip")); + this.CbMode.SelectedIndexChanged += new System.EventHandler(this.CbMode_SelectedIndexChanged); + // + // TBRed + // + resources.ApplyResources(this.TBRed, "TBRed"); + this.TBRed.BackColor = System.Drawing.Color.Transparent; + this.TBRed.BarInnerColor = System.Drawing.Color.Firebrick; + this.TBRed.BarOuterColor = System.Drawing.Color.DarkRed; + this.TBRed.BorderRoundRectSize = new System.Drawing.Size(8, 8); + this.TBRed.ElapsedInnerColor = System.Drawing.Color.Red; + this.TBRed.ElapsedOuterColor = System.Drawing.Color.DarkRed; + this.TBRed.LargeChange = ((uint)(5u)); + this.TBRed.Maximum = 160; + this.TBRed.Minimum = 40; + this.TBRed.Name = "TBRed"; + this.TBRed.SmallChange = ((uint)(1u)); + this.TBRed.ThumbRoundRectSize = new System.Drawing.Size(4, 4); + this.TBRed.ThumbSize = 8; + this.TBRed.Value = 100; + this.TBRed.ValueChanged += new System.EventHandler(this.TBRed_ValueChanged); + this.TBRed.DoubleClick += new System.EventHandler(this.OnRGBCBDoubleClick); + // + // LblRed + // + resources.ApplyResources(this.LblRed, "LblRed"); + this.LblRed.Name = "LblRed"; + // + // LblBlue + // + resources.ApplyResources(this.LblBlue, "LblBlue"); + this.LblBlue.Name = "LblBlue"; + // + // LblGreen + // + resources.ApplyResources(this.LblGreen, "LblGreen"); + this.LblGreen.Name = "LblGreen"; + // + // label2 + // + resources.ApplyResources(this.label2, "label2"); + this.label2.Name = "label2"; + // + // TBGreen + // + resources.ApplyResources(this.TBGreen, "TBGreen"); + this.TBGreen.BackColor = System.Drawing.Color.Transparent; + this.TBGreen.BarInnerColor = System.Drawing.Color.Green; + this.TBGreen.BarOuterColor = System.Drawing.Color.DarkGreen; + this.TBGreen.BorderRoundRectSize = new System.Drawing.Size(8, 8); + this.TBGreen.LargeChange = ((uint)(5u)); + this.TBGreen.Maximum = 160; + this.TBGreen.Minimum = 40; + this.TBGreen.Name = "TBGreen"; + this.TBGreen.SmallChange = ((uint)(1u)); + this.TBGreen.ThumbRoundRectSize = new System.Drawing.Size(4, 4); + this.TBGreen.ThumbSize = 8; + this.TBGreen.Value = 100; + this.TBGreen.ValueChanged += new System.EventHandler(this.TBGreen_ValueChanged); + this.TBGreen.DoubleClick += new System.EventHandler(this.OnRGBCBDoubleClick); + // + // TbBright + // + resources.ApplyResources(this.TbBright, "TbBright"); + this.TbBright.BackColor = System.Drawing.Color.Transparent; + this.TbBright.BarInnerColor = System.Drawing.Color.DimGray; + this.TbBright.BarOuterColor = System.Drawing.Color.Black; + this.TbBright.BorderRoundRectSize = new System.Drawing.Size(8, 8); + this.TbBright.ElapsedInnerColor = System.Drawing.Color.White; + this.TbBright.ElapsedOuterColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this.TbBright.LargeChange = ((uint)(5u)); + this.TbBright.Maximum = 160; + this.TbBright.Minimum = 40; + this.TbBright.Name = "TbBright"; + this.TbBright.SmallChange = ((uint)(1u)); + this.TbBright.ThumbRoundRectSize = new System.Drawing.Size(4, 4); + this.TbBright.ThumbSize = 8; + this.TbBright.Value = 100; + this.TbBright.ValueChanged += new System.EventHandler(this.TbBright_ValueChanged); + this.TbBright.DoubleClick += new System.EventHandler(this.OnRGBCBDoubleClick); + // + // TBBlue + // + resources.ApplyResources(this.TBBlue, "TBBlue"); + this.TBBlue.BackColor = System.Drawing.Color.Transparent; + this.TBBlue.BarInnerColor = System.Drawing.Color.MediumBlue; + this.TBBlue.BarOuterColor = System.Drawing.Color.DarkBlue; + this.TBBlue.BorderRoundRectSize = new System.Drawing.Size(8, 8); + this.TBBlue.ElapsedInnerColor = System.Drawing.Color.DodgerBlue; + this.TBBlue.ElapsedOuterColor = System.Drawing.Color.SteelBlue; + this.TBBlue.LargeChange = ((uint)(5u)); + this.TBBlue.Maximum = 160; + this.TBBlue.Minimum = 40; + this.TBBlue.Name = "TBBlue"; + this.TBBlue.SmallChange = ((uint)(1u)); + this.TBBlue.ThumbRoundRectSize = new System.Drawing.Size(4, 4); + this.TBBlue.ThumbSize = 8; + this.TBBlue.Value = 100; + this.TBBlue.ValueChanged += new System.EventHandler(this.TBBlue_ValueChanged); + this.TBBlue.DoubleClick += new System.EventHandler(this.OnRGBCBDoubleClick); + // + // TbContrast + // + resources.ApplyResources(this.TbContrast, "TbContrast"); + this.TbContrast.BackColor = System.Drawing.Color.Transparent; + this.TbContrast.BarInnerColor = System.Drawing.Color.DimGray; + this.TbContrast.BarOuterColor = System.Drawing.Color.Black; + this.TbContrast.BorderRoundRectSize = new System.Drawing.Size(8, 8); + this.TbContrast.ElapsedInnerColor = System.Drawing.Color.White; + this.TbContrast.ElapsedOuterColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this.TbContrast.LargeChange = ((uint)(5u)); + this.TbContrast.Maximum = 160; + this.TbContrast.Minimum = 40; + this.TbContrast.Name = "TbContrast"; + this.TbContrast.SmallChange = ((uint)(1u)); + this.TbContrast.ThumbRoundRectSize = new System.Drawing.Size(4, 4); + this.TbContrast.ThumbSize = 8; + this.TbContrast.Value = 100; + this.TbContrast.ValueChanged += new System.EventHandler(this.TbContrast_ValueChanged); + this.TbContrast.DoubleClick += new System.EventHandler(this.OnRGBCBDoubleClick); + // + // label3 + // + resources.ApplyResources(this.label3, "label3"); + this.label3.Name = "label3"; + // + // CbThreshold + // + resources.ApplyResources(this.CbThreshold, "CbThreshold"); + this.CbThreshold.Name = "CbThreshold"; + this.TT.SetToolTip(this.CbThreshold, resources.GetString("CbThreshold.ToolTip")); + this.CbThreshold.UseVisualStyleBackColor = true; + this.CbThreshold.CheckedChanged += new System.EventHandler(this.CbThreshold_CheckedChanged); + // + // label28 + // + resources.ApplyResources(this.label28, "label28"); + this.label28.Name = "label28"; + // + // TbThreshold + // + resources.ApplyResources(this.TbThreshold, "TbThreshold"); + this.TbThreshold.BackColor = System.Drawing.Color.Transparent; + this.TbThreshold.BarInnerColor = System.Drawing.Color.DimGray; + this.TbThreshold.BarOuterColor = System.Drawing.Color.Black; + this.TbThreshold.BorderRoundRectSize = new System.Drawing.Size(8, 8); + this.TbThreshold.ElapsedInnerColor = System.Drawing.Color.White; + this.TbThreshold.ElapsedOuterColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this.TbThreshold.LargeChange = ((uint)(5u)); + this.TbThreshold.Name = "TbThreshold"; + this.TbThreshold.SmallChange = ((uint)(1u)); + this.TbThreshold.ThumbRoundRectSize = new System.Drawing.Size(4, 4); + this.TbThreshold.ThumbSize = 8; + this.TbThreshold.ValueChanged += new System.EventHandler(this.TbThreshold_ValueChanged); + this.TbThreshold.DoubleClick += new System.EventHandler(this.OnThresholdDoubleClick); + // + // TBWhiteClip + // + resources.ApplyResources(this.TBWhiteClip, "TBWhiteClip"); + this.TBWhiteClip.BackColor = System.Drawing.Color.Transparent; + this.TBWhiteClip.BarInnerColor = System.Drawing.Color.DimGray; + this.TBWhiteClip.BarOuterColor = System.Drawing.Color.Black; + this.TBWhiteClip.BorderRoundRectSize = new System.Drawing.Size(8, 8); + this.TBWhiteClip.ElapsedInnerColor = System.Drawing.Color.White; + this.TBWhiteClip.ElapsedOuterColor = System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(224)))), ((int)(((byte)(224))))); + this.TBWhiteClip.LargeChange = ((uint)(5u)); + this.TBWhiteClip.Name = "TBWhiteClip"; + this.TBWhiteClip.SmallChange = ((uint)(1u)); + this.TBWhiteClip.ThumbRoundRectSize = new System.Drawing.Size(4, 4); + this.TBWhiteClip.ThumbSize = 8; + this.TBWhiteClip.Value = 5; + this.TBWhiteClip.ValueChanged += new System.EventHandler(this.TBWhiteClip_ValueChanged); + this.TBWhiteClip.MouseDown += new System.Windows.Forms.MouseEventHandler(this.TBWhiteClip_MouseDown); + this.TBWhiteClip.MouseUp += new System.Windows.Forms.MouseEventHandler(this.TBWhiteClip_MouseUp); + // + // label4 + // + resources.ApplyResources(this.label4, "label4"); + this.label4.Name = "label4"; + // + // GbLineToLineOptions + // + resources.ApplyResources(this.GbLineToLineOptions, "GbLineToLineOptions"); + this.GbLineToLineOptions.Controls.Add(this.TLP); + this.GbLineToLineOptions.Name = "GbLineToLineOptions"; + this.GbLineToLineOptions.TabStop = false; + // + // TLP + // + resources.ApplyResources(this.TLP, "TLP"); + this.TLP.Controls.Add(this.CbDirections, 1, 1); + this.TLP.Controls.Add(this.UDQuality, 1, 2); + this.TLP.Controls.Add(this.CbLinePreview, 0, 3); + this.TLP.Controls.Add(this.label5, 0, 2); + this.TLP.Controls.Add(this.label27, 0, 1); + this.TLP.Controls.Add(this.label8, 2, 2); + this.TLP.Controls.Add(this.LblDitherMode, 0, 0); + this.TLP.Controls.Add(this.CbDither, 1, 0); + this.TLP.Controls.Add(this.BtnQualityInfo, 3, 2); + this.TLP.Name = "TLP"; + // + // CbDirections + // + resources.ApplyResources(this.CbDirections, "CbDirections"); + this.TLP.SetColumnSpan(this.CbDirections, 3); + this.CbDirections.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.CbDirections.FormattingEnabled = true; + this.CbDirections.Name = "CbDirections"; + this.CbDirections.SelectedItem = null; + this.TT.SetToolTip(this.CbDirections, resources.GetString("CbDirections.ToolTip")); + this.CbDirections.SelectedIndexChanged += new System.EventHandler(this.CbDirectionsSelectedIndexChanged); + // + // UDQuality + // + this.UDQuality.DecimalPlaces = 3; + resources.ApplyResources(this.UDQuality, "UDQuality"); + this.UDQuality.Maximum = new decimal(new int[] { 20, 0, 0, 0}); - this.UDQuality.Minimum = new decimal(new int[] { + this.UDQuality.Minimum = new decimal(new int[] { 1, 0, 0, 0}); - this.UDQuality.Name = "UDQuality"; - this.TT.SetToolTip(this.UDQuality, resources.GetString("UDQuality.ToolTip")); - this.UDQuality.Value = new decimal(new int[] { + this.UDQuality.Name = "UDQuality"; + this.TT.SetToolTip(this.UDQuality, resources.GetString("UDQuality.ToolTip")); + this.UDQuality.Value = new decimal(new int[] { 3, 0, 0, 0}); - this.UDQuality.ValueChanged += new System.EventHandler(this.UDQuality_ValueChanged); - // - // CbLinePreview - // - resources.ApplyResources(this.CbLinePreview, "CbLinePreview"); - this.CbLinePreview.Checked = true; - this.CbLinePreview.CheckState = System.Windows.Forms.CheckState.Checked; - this.TLP.SetColumnSpan(this.CbLinePreview, 3); - this.CbLinePreview.Name = "CbLinePreview"; - this.TT.SetToolTip(this.CbLinePreview, resources.GetString("CbLinePreview.ToolTip")); - this.CbLinePreview.UseVisualStyleBackColor = true; - this.CbLinePreview.CheckedChanged += new System.EventHandler(this.CbLinePreview_CheckedChanged); - // - // label5 - // - resources.ApplyResources(this.label5, "label5"); - this.label5.Name = "label5"; - // - // label27 - // - resources.ApplyResources(this.label27, "label27"); - this.label27.Name = "label27"; - // - // label8 - // - resources.ApplyResources(this.label8, "label8"); - this.label8.Name = "label8"; - // - // LblDitherMode - // - resources.ApplyResources(this.LblDitherMode, "LblDitherMode"); - this.LblDitherMode.Name = "LblDitherMode"; - // - // CbDither - // - resources.ApplyResources(this.CbDither, "CbDither"); - this.TLP.SetColumnSpan(this.CbDither, 3); - this.CbDither.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.CbDither.FormattingEnabled = true; - this.CbDither.Name = "CbDither"; - this.CbDither.SelectedIndexChanged += new System.EventHandler(this.CbDither_SelectedIndexChanged); - // - // BtnQualityInfo - // - this.BtnQualityInfo.AltImage = null; - resources.ApplyResources(this.BtnQualityInfo, "BtnQualityInfo"); - this.BtnQualityInfo.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); - this.BtnQualityInfo.Coloration = System.Drawing.Color.Empty; - this.BtnQualityInfo.Image = ((System.Drawing.Image)(resources.GetObject("BtnQualityInfo.Image"))); - this.BtnQualityInfo.Name = "BtnQualityInfo"; - this.BtnQualityInfo.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; - this.TT.SetToolTip(this.BtnQualityInfo, resources.GetString("BtnQualityInfo.ToolTip")); - this.BtnQualityInfo.UseAltImage = false; - this.BtnQualityInfo.Click += new System.EventHandler(this.BtnQualityInfo_Click); - // - // GbConversionTool - // - resources.ApplyResources(this.GbConversionTool, "GbConversionTool"); - this.GbConversionTool.Controls.Add(this.tableLayoutPanel4); - this.GbConversionTool.Name = "GbConversionTool"; - this.GbConversionTool.TabStop = false; - // - // tableLayoutPanel4 - // - resources.ApplyResources(this.tableLayoutPanel4, "tableLayoutPanel4"); - this.tableLayoutPanel4.Controls.Add(this.RbCenterline, 0, 3); - this.tableLayoutPanel4.Controls.Add(this.RbDithering, 0, 1); - this.tableLayoutPanel4.Controls.Add(this.RbVectorize, 0, 2); - this.tableLayoutPanel4.Controls.Add(this.RbLineToLineTracing, 0, 0); - this.tableLayoutPanel4.Name = "tableLayoutPanel4"; - // - // RbCenterline - // - resources.ApplyResources(this.RbCenterline, "RbCenterline"); - this.tableLayoutPanel4.SetColumnSpan(this.RbCenterline, 3); - this.RbCenterline.Name = "RbCenterline"; - this.TT.SetToolTip(this.RbCenterline, resources.GetString("RbCenterline.ToolTip")); - this.RbCenterline.UseVisualStyleBackColor = true; - this.RbCenterline.CheckedChanged += new System.EventHandler(this.RbCenterline_CheckedChanged); - // - // RbDithering - // - resources.ApplyResources(this.RbDithering, "RbDithering"); - this.tableLayoutPanel4.SetColumnSpan(this.RbDithering, 3); - this.RbDithering.Name = "RbDithering"; - this.TT.SetToolTip(this.RbDithering, resources.GetString("RbDithering.ToolTip")); - this.RbDithering.UseVisualStyleBackColor = true; - this.RbDithering.CheckedChanged += new System.EventHandler(this.RbDithering_CheckedChanged); - // - // RbVectorize - // - resources.ApplyResources(this.RbVectorize, "RbVectorize"); - this.tableLayoutPanel4.SetColumnSpan(this.RbVectorize, 3); - this.RbVectorize.Name = "RbVectorize"; - this.TT.SetToolTip(this.RbVectorize, resources.GetString("RbVectorize.ToolTip")); - this.RbVectorize.UseVisualStyleBackColor = true; - this.RbVectorize.CheckedChanged += new System.EventHandler(this.RbVectorize_CheckedChanged); - // - // RbLineToLineTracing - // - resources.ApplyResources(this.RbLineToLineTracing, "RbLineToLineTracing"); - this.RbLineToLineTracing.Checked = true; - this.tableLayoutPanel4.SetColumnSpan(this.RbLineToLineTracing, 3); - this.RbLineToLineTracing.Name = "RbLineToLineTracing"; - this.RbLineToLineTracing.TabStop = true; - this.TT.SetToolTip(this.RbLineToLineTracing, resources.GetString("RbLineToLineTracing.ToolTip")); - this.RbLineToLineTracing.UseVisualStyleBackColor = true; - this.RbLineToLineTracing.CheckedChanged += new System.EventHandler(this.RbLineToLineTracing_CheckedChanged); - // - // tableLayoutPanel1 - // - resources.ApplyResources(this.tableLayoutPanel1, "tableLayoutPanel1"); - this.tableLayoutPanel1.Controls.Add(this.BtnCancel, 0, 0); - this.tableLayoutPanel1.Controls.Add(this.BtnCreate, 1, 0); - this.tableLayoutPanel1.Name = "tableLayoutPanel1"; - // - // BtnCancel - // - resources.ApplyResources(this.BtnCancel, "BtnCancel"); - this.BtnCancel.Name = "BtnCancel"; - this.BtnCancel.UseVisualStyleBackColor = true; - this.BtnCancel.Click += new System.EventHandler(this.BtnCancelClick); - // - // BtnCreate - // - resources.ApplyResources(this.BtnCreate, "BtnCreate"); - this.BtnCreate.Name = "BtnCreate"; - this.BtnCreate.UseVisualStyleBackColor = true; - this.BtnCreate.Click += new System.EventHandler(this.BtnCreateClick); - // - // WT - // - this.WT.Interval = 50; - this.WT.Tick += new System.EventHandler(this.WTTick); - // - // RasterToLaserForm - // - resources.ApplyResources(this, "$this"); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.Controls.Add(this.RightGrid); - this.MinimizeBox = false; - this.Name = "RasterToLaserForm"; - this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Show; - this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.RasterToLaserFormFormClosing); - this.Load += new System.EventHandler(this.RasterToLaserForm_Load); - this.RightGrid.ResumeLayout(false); - this.RightGrid.PerformLayout(); - this.TCOriginalPreview.ResumeLayout(false); - this.TpPreview.ResumeLayout(false); - ((System.ComponentModel.ISupportInitialize)(this.PbConverted)).EndInit(); - this.TpOriginal.ResumeLayout(false); - ((System.ComponentModel.ISupportInitialize)(this.PbOriginal)).EndInit(); - this.FlipControl.ResumeLayout(false); - this.tableLayoutPanel8.ResumeLayout(false); - this.tableLayoutPanel8.PerformLayout(); - this.GbCenterlineOptions.ResumeLayout(false); - this.GbCenterlineOptions.PerformLayout(); - this.tableLayoutPanel3.ResumeLayout(false); - this.tableLayoutPanel3.PerformLayout(); - this.GbVectorizeOptions.ResumeLayout(false); - this.GbVectorizeOptions.PerformLayout(); - this.tableLayoutPanel5.ResumeLayout(false); - this.tableLayoutPanel5.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.UDSpotRemoval)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.UDOptimize)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.UDSmoothing)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.UDFillingQuality)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.UDDownSample)).EndInit(); - this.GbParameters.ResumeLayout(false); - this.GbParameters.PerformLayout(); - this.tableLayoutPanel2.ResumeLayout(false); - this.tableLayoutPanel2.PerformLayout(); - this.GbLineToLineOptions.ResumeLayout(false); - this.GbLineToLineOptions.PerformLayout(); - this.TLP.ResumeLayout(false); - this.TLP.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.UDQuality)).EndInit(); - this.GbConversionTool.ResumeLayout(false); - this.GbConversionTool.PerformLayout(); - this.tableLayoutPanel4.ResumeLayout(false); - this.tableLayoutPanel4.PerformLayout(); - this.tableLayoutPanel1.ResumeLayout(false); - this.ResumeLayout(false); + this.UDQuality.ValueChanged += new System.EventHandler(this.UDQuality_ValueChanged); + // + // CbLinePreview + // + resources.ApplyResources(this.CbLinePreview, "CbLinePreview"); + this.CbLinePreview.Checked = true; + this.CbLinePreview.CheckState = System.Windows.Forms.CheckState.Checked; + this.TLP.SetColumnSpan(this.CbLinePreview, 3); + this.CbLinePreview.Name = "CbLinePreview"; + this.TT.SetToolTip(this.CbLinePreview, resources.GetString("CbLinePreview.ToolTip")); + this.CbLinePreview.UseVisualStyleBackColor = true; + this.CbLinePreview.CheckedChanged += new System.EventHandler(this.CbLinePreview_CheckedChanged); + // + // label5 + // + resources.ApplyResources(this.label5, "label5"); + this.label5.Name = "label5"; + // + // label27 + // + resources.ApplyResources(this.label27, "label27"); + this.label27.Name = "label27"; + // + // label8 + // + resources.ApplyResources(this.label8, "label8"); + this.label8.Name = "label8"; + // + // LblDitherMode + // + resources.ApplyResources(this.LblDitherMode, "LblDitherMode"); + this.LblDitherMode.Name = "LblDitherMode"; + // + // CbDither + // + resources.ApplyResources(this.CbDither, "CbDither"); + this.TLP.SetColumnSpan(this.CbDither, 3); + this.CbDither.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.CbDither.FormattingEnabled = true; + this.CbDither.Name = "CbDither"; + this.CbDither.SelectedIndexChanged += new System.EventHandler(this.CbDither_SelectedIndexChanged); + // + // BtnQualityInfo + // + this.BtnQualityInfo.AltImage = null; + resources.ApplyResources(this.BtnQualityInfo, "BtnQualityInfo"); + this.BtnQualityInfo.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); + this.BtnQualityInfo.Coloration = System.Drawing.Color.Empty; + this.BtnQualityInfo.Image = ((System.Drawing.Image)(resources.GetObject("BtnQualityInfo.Image"))); + this.BtnQualityInfo.Name = "BtnQualityInfo"; + this.BtnQualityInfo.SizingMode = LaserGRBL.UserControls.ImageButton.SizingModes.FixedSize; + this.TT.SetToolTip(this.BtnQualityInfo, resources.GetString("BtnQualityInfo.ToolTip")); + this.BtnQualityInfo.UseAltImage = false; + this.BtnQualityInfo.Click += new System.EventHandler(this.BtnQualityInfo_Click); + // + // GbConversionTool + // + resources.ApplyResources(this.GbConversionTool, "GbConversionTool"); + this.GbConversionTool.Controls.Add(this.tableLayoutPanel4); + this.GbConversionTool.Name = "GbConversionTool"; + this.GbConversionTool.TabStop = false; + // + // tableLayoutPanel4 + // + resources.ApplyResources(this.tableLayoutPanel4, "tableLayoutPanel4"); + this.tableLayoutPanel4.Controls.Add(this.RbCenterline, 0, 3); + this.tableLayoutPanel4.Controls.Add(this.RbDithering, 0, 1); + this.tableLayoutPanel4.Controls.Add(this.RbVectorize, 0, 2); + this.tableLayoutPanel4.Controls.Add(this.RbLineToLineTracing, 0, 0); + this.tableLayoutPanel4.Name = "tableLayoutPanel4"; + // + // RbCenterline + // + resources.ApplyResources(this.RbCenterline, "RbCenterline"); + this.tableLayoutPanel4.SetColumnSpan(this.RbCenterline, 3); + this.RbCenterline.Name = "RbCenterline"; + this.TT.SetToolTip(this.RbCenterline, resources.GetString("RbCenterline.ToolTip")); + this.RbCenterline.UseVisualStyleBackColor = true; + this.RbCenterline.CheckedChanged += new System.EventHandler(this.RbCenterline_CheckedChanged); + // + // RbDithering + // + resources.ApplyResources(this.RbDithering, "RbDithering"); + this.tableLayoutPanel4.SetColumnSpan(this.RbDithering, 3); + this.RbDithering.Name = "RbDithering"; + this.TT.SetToolTip(this.RbDithering, resources.GetString("RbDithering.ToolTip")); + this.RbDithering.UseVisualStyleBackColor = true; + this.RbDithering.CheckedChanged += new System.EventHandler(this.RbDithering_CheckedChanged); + // + // RbVectorize + // + resources.ApplyResources(this.RbVectorize, "RbVectorize"); + this.tableLayoutPanel4.SetColumnSpan(this.RbVectorize, 3); + this.RbVectorize.Name = "RbVectorize"; + this.TT.SetToolTip(this.RbVectorize, resources.GetString("RbVectorize.ToolTip")); + this.RbVectorize.UseVisualStyleBackColor = true; + this.RbVectorize.CheckedChanged += new System.EventHandler(this.RbVectorize_CheckedChanged); + // + // RbLineToLineTracing + // + resources.ApplyResources(this.RbLineToLineTracing, "RbLineToLineTracing"); + this.RbLineToLineTracing.Checked = true; + this.tableLayoutPanel4.SetColumnSpan(this.RbLineToLineTracing, 3); + this.RbLineToLineTracing.Name = "RbLineToLineTracing"; + this.RbLineToLineTracing.TabStop = true; + this.TT.SetToolTip(this.RbLineToLineTracing, resources.GetString("RbLineToLineTracing.ToolTip")); + this.RbLineToLineTracing.UseVisualStyleBackColor = true; + this.RbLineToLineTracing.CheckedChanged += new System.EventHandler(this.RbLineToLineTracing_CheckedChanged); + // + // tableLayoutPanel1 + // + resources.ApplyResources(this.tableLayoutPanel1, "tableLayoutPanel1"); + this.tableLayoutPanel1.Controls.Add(this.BtnCancel, 0, 0); + this.tableLayoutPanel1.Controls.Add(this.BtnCreate, 1, 0); + this.tableLayoutPanel1.Name = "tableLayoutPanel1"; + // + // BtnCancel + // + resources.ApplyResources(this.BtnCancel, "BtnCancel"); + this.BtnCancel.Name = "BtnCancel"; + this.BtnCancel.UseVisualStyleBackColor = true; + this.BtnCancel.Click += new System.EventHandler(this.BtnCancelClick); + // + // BtnCreate + // + resources.ApplyResources(this.BtnCreate, "BtnCreate"); + this.BtnCreate.Name = "BtnCreate"; + this.BtnCreate.UseVisualStyleBackColor = true; + this.BtnCreate.Click += new System.EventHandler(this.BtnCreateClick); + // + // WT + // + this.WT.Interval = 50; + this.WT.Tick += new System.EventHandler(this.WTTick); + // + // RasterToLaserForm + // + resources.ApplyResources(this, "$this"); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.RightGrid); + this.MinimizeBox = false; + this.Name = "RasterToLaserForm"; + this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Show; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.RasterToLaserFormFormClosing); + this.Load += new System.EventHandler(this.RasterToLaserForm_Load); + this.RightGrid.ResumeLayout(false); + this.RightGrid.PerformLayout(); + this.TCOriginalPreview.ResumeLayout(false); + this.TpPreview.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.PbConverted)).EndInit(); + this.TpOriginal.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.PbOriginal)).EndInit(); + this.FlipControl.ResumeLayout(false); + this.tableLayoutPanel8.ResumeLayout(false); + this.tableLayoutPanel8.PerformLayout(); + this.GbCenterlineOptions.ResumeLayout(false); + this.GbCenterlineOptions.PerformLayout(); + this.tableLayoutPanel3.ResumeLayout(false); + this.tableLayoutPanel3.PerformLayout(); + this.GbVectorizeOptions.ResumeLayout(false); + this.GbVectorizeOptions.PerformLayout(); + this.tableLayoutPanel5.ResumeLayout(false); + this.tableLayoutPanel5.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.UDSpotRemoval)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.UDOptimize)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.UDSmoothing)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.UDFillingQuality)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.UDDownSample)).EndInit(); + this.GbParameters.ResumeLayout(false); + this.GbParameters.PerformLayout(); + this.tableLayoutPanel2.ResumeLayout(false); + this.tableLayoutPanel2.PerformLayout(); + this.GbLineToLineOptions.ResumeLayout(false); + this.GbLineToLineOptions.PerformLayout(); + this.TLP.ResumeLayout(false); + this.TLP.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.UDQuality)).EndInit(); + this.GbConversionTool.ResumeLayout(false); + this.GbConversionTool.PerformLayout(); + this.tableLayoutPanel4.ResumeLayout(false); + this.tableLayoutPanel4.PerformLayout(); + this.tableLayoutPanel1.ResumeLayout(false); + this.ResumeLayout(false); } diff --git a/LaserGRBL/RasterConverter/RasterToLaserForm.resx b/LaserGRBL/RasterConverter/RasterToLaserForm.resx index 03a11f6e1..7a1b520e2 100644 --- a/LaserGRBL/RasterConverter/RasterToLaserForm.resx +++ b/LaserGRBL/RasterConverter/RasterToLaserForm.resx @@ -127,7 +127,7 @@ - 447, 578 + 453, 470 65, 16 @@ -139,7 +139,7 @@ WB - LaserGRBL.UserControls.WaitingProgressBar, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.WaitingProgressBar, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null TpPreview @@ -157,7 +157,7 @@ 3, 3 - 512, 594 + 518, 486 Zoom @@ -184,7 +184,7 @@ 3, 3, 3, 3 - 518, 600 + 524, 492 0 @@ -268,7 +268,7 @@ 255, 3 - 526, 626 + 532, 518 3 @@ -349,7 +349,7 @@ BtFlipV - LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null FlipControl @@ -408,7 +408,7 @@ BtFlipH - LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null FlipControl @@ -463,7 +463,7 @@ BtRotateCW - LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null FlipControl @@ -519,7 +519,7 @@ BtRotateCCW - LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null FlipControl @@ -570,7 +570,7 @@ BtnRevert - LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null FlipControl @@ -654,7 +654,7 @@ BtnReverse - LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null FlipControl @@ -702,7 +702,7 @@ BtnCrop - LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null FlipControl @@ -711,7 +711,7 @@ 6 - 255, 635 + 255, 527 1 @@ -852,7 +852,7 @@ TBLineThreshold - LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel3 @@ -885,7 +885,7 @@ TBCornerThreshold - LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel3 @@ -1383,7 +1383,7 @@ CbFillingDirection - LaserGRBL.UserControls.EnumComboBox, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.EnumComboBox, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel5 @@ -1656,7 +1656,7 @@ BtnFillingQualityInfo - LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel5 @@ -1791,7 +1791,7 @@ CbResize - LaserGRBL.UserControls.EnumComboBox, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.EnumComboBox, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel2 @@ -1854,7 +1854,7 @@ CbMode - LaserGRBL.UserControls.EnumComboBox, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.EnumComboBox, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel2 @@ -1884,7 +1884,7 @@ TBRed - LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel2 @@ -2055,7 +2055,7 @@ TBGreen - LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel2 @@ -2082,7 +2082,7 @@ TbBright - LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel2 @@ -2112,7 +2112,7 @@ TBBlue - LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel2 @@ -2139,7 +2139,7 @@ TbContrast - LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel2 @@ -2274,7 +2274,7 @@ TbThreshold - LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel2 @@ -2301,7 +2301,7 @@ TBWhiteClip - LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ColorSlider, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null tableLayoutPanel2 @@ -2436,7 +2436,7 @@ CbDirections - LaserGRBL.UserControls.EnumComboBox, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.EnumComboBox, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null TLP @@ -2697,7 +2697,7 @@ BtnQualityInfo - LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.6.0, Culture=neutral, PublicKeyToken=null + LaserGRBL.UserControls.ImageButton, LaserGRBL, Version=3.0.9.0, Culture=neutral, PublicKeyToken=null TLP @@ -2988,7 +2988,7 @@ 6 - 246, 665 + 246, 557 3 @@ -3081,7 +3081,7 @@ Fill - 621, 635 + 627, 527 1 @@ -3117,7 +3117,7 @@ 2 - 784, 671 + 790, 563 0 @@ -3150,7 +3150,7 @@ 6, 13 - 784, 671 + 790, 563