Compare commits

...

2 Commits

Author SHA1 Message Date
Maxluli 44956fbc59 Fixed the eyedropping bug 2022-06-08 16:30:04 +02:00
Maxluli f5f6056db1 Added a eyedropper tool but its buggy af and I dont know why 2022-06-08 16:20:55 +02:00
2 changed files with 60 additions and 14 deletions
+19 -2
View File
@@ -55,6 +55,7 @@
this.btnColorHistory1 = new System.Windows.Forms.Button();
this.btnClear = new System.Windows.Forms.Button();
this.panelTools = new System.Windows.Forms.Panel();
this.btnEyeDrop = new System.Windows.Forms.Button();
this.pbxSample = new System.Windows.Forms.PictureBox();
this.btnRandomColor = new System.Windows.Forms.Button();
this.btnColorPicker = new System.Windows.Forms.Button();
@@ -395,9 +396,9 @@
this.panelTools.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.panelTools.BackColor = System.Drawing.Color.Transparent;
this.panelTools.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.panelTools.Controls.Add(this.btnEyeDrop);
this.panelTools.Controls.Add(this.pbxSample);
this.panelTools.Controls.Add(this.btnRandomColor);
this.panelTools.Controls.Add(this.btnColorPicker);
this.panelTools.Controls.Add(this.btnColorHistory1);
this.panelTools.Controls.Add(this.label4);
this.panelTools.Controls.Add(this.btnColorHistory2);
@@ -409,6 +410,20 @@
this.panelTools.Size = new System.Drawing.Size(200, 193);
this.panelTools.TabIndex = 31;
//
// btnEyeDrop
//
this.btnEyeDrop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(59)))), ((int)(((byte)(59)))), ((int)(((byte)(59)))));
this.btnEyeDrop.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
this.btnEyeDrop.Font = new System.Drawing.Font("Cascadia Code", 10.2F);
this.btnEyeDrop.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(247)))), ((int)(((byte)(247)))), ((int)(((byte)(247)))));
this.btnEyeDrop.Location = new System.Drawing.Point(11, 74);
this.btnEyeDrop.Name = "btnEyeDrop";
this.btnEyeDrop.Size = new System.Drawing.Size(178, 33);
this.btnEyeDrop.TabIndex = 36;
this.btnEyeDrop.Text = "EyeDropper";
this.btnEyeDrop.UseVisualStyleBackColor = false;
this.btnEyeDrop.Click += new System.EventHandler(this.btnEyeDrop_Click);
//
// pbxSample
//
this.pbxSample.Location = new System.Drawing.Point(10, 152);
@@ -437,7 +452,7 @@
this.btnColorPicker.FlatStyle = System.Windows.Forms.FlatStyle.Popup;
this.btnColorPicker.Font = new System.Drawing.Font("Cascadia Code", 10.2F);
this.btnColorPicker.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(247)))), ((int)(((byte)(247)))), ((int)(((byte)(247)))));
this.btnColorPicker.Location = new System.Drawing.Point(10, 72);
this.btnColorPicker.Location = new System.Drawing.Point(733, 12);
this.btnColorPicker.Name = "btnColorPicker";
this.btnColorPicker.Size = new System.Drawing.Size(177, 35);
this.btnColorPicker.TabIndex = 33;
@@ -605,6 +620,7 @@
this.ClientSize = new System.Drawing.Size(1132, 655);
this.Controls.Add(this.panel3);
this.Controls.Add(this.panel2);
this.Controls.Add(this.btnColorPicker);
this.Controls.Add(this.panel1);
this.Controls.Add(this.panelHoverColor);
this.Controls.Add(this.panelSelectedColor);
@@ -685,6 +701,7 @@
private System.Windows.Forms.Button button1;
private System.Windows.Forms.ListBox listBox1;
private System.Windows.Forms.Button btnLoadFile;
private System.Windows.Forms.Button btnEyeDrop;
}
}
+29
View File
@@ -29,6 +29,7 @@ namespace Paint_2
List<PaintTool> toolList;
bool drawing = false;
bool randomColor = false;
bool eyeDropping = false;
Random rnd;
Color hoveringColor;
public PaintForm()
@@ -50,6 +51,17 @@ namespace Paint_2
return canvas.PointToClient(MousePosition);
}
private void canvas_MouseDown(object sender, MouseEventArgs e)
{
if (eyeDropping)
{
Color pointedColor = GetHoverColor();
if (sketch.CurrentTool.Color != pointedColor)
{
sketch.ChangePaintToolColor(pointedColor);
RefreshUi();
}
}
else
{
drawing = true;
if (randomColor)
@@ -61,13 +73,17 @@ namespace Paint_2
sketch.StartDrawing(MousePositionToCanvasPosition(), sketch.CurrentTool.Color, (int)nupPencilWidth.Value);
}
}
}
private void canvas_MouseUp(object sender, MouseEventArgs e)
{
if (!eyeDropping)
{
sketch.AddDrawingPoint(MousePositionToCanvasPosition());
drawing = false;
canvas.Image = sketch.StopDrawing((Bitmap)canvas.Image);
RefreshUi();
}
}
private void tmrRefresh_Tick(object sender, EventArgs e)
{
@@ -127,6 +143,14 @@ namespace Paint_2
{
btnRandomColor.BackColor = FLAT_RED;
}
if (eyeDropping)
{
btnEyeDrop.BackColor = FLAT_GREEN;
}
else
{
btnEyeDrop.BackColor = FLAT_RED;
}
}
private Bitmap DrawSample(Size size)
{
@@ -245,5 +269,10 @@ namespace Paint_2
{
}
private void btnEyeDrop_Click(object sender, EventArgs e)
{
eyeDropping = !eyeDropping;
}
}
}