Sliders are now drag and drop

This commit is contained in:
2022-06-08 11:08:50 +02:00
parent 03fb9f3560
commit f334aa7ad1
3 changed files with 40 additions and 4 deletions

View File

@@ -28,6 +28,7 @@
/// </summary> /// </summary>
private void InitializeComponent() private void InitializeComponent()
{ {
this.components = new System.ComponentModel.Container();
this.pbxColor = new System.Windows.Forms.PictureBox(); this.pbxColor = new System.Windows.Forms.PictureBox();
this.pbxSelectedColor = new System.Windows.Forms.PictureBox(); this.pbxSelectedColor = new System.Windows.Forms.PictureBox();
this.nupRed = new System.Windows.Forms.NumericUpDown(); this.nupRed = new System.Windows.Forms.NumericUpDown();
@@ -41,6 +42,7 @@
this.label2 = new System.Windows.Forms.Label(); this.label2 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label(); this.label3 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label(); this.label4 = new System.Windows.Forms.Label();
this.tmrRefresh = new System.Windows.Forms.Timer(this.components);
((System.ComponentModel.ISupportInitialize)(this.pbxColor)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.pbxColor)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.pbxSelectedColor)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.pbxSelectedColor)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nupRed)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.nupRed)).BeginInit();
@@ -160,7 +162,8 @@
this.pbxSliderRed.Size = new System.Drawing.Size(255, 30); this.pbxSliderRed.Size = new System.Drawing.Size(255, 30);
this.pbxSliderRed.TabIndex = 21; this.pbxSliderRed.TabIndex = 21;
this.pbxSliderRed.TabStop = false; this.pbxSliderRed.TabStop = false;
this.pbxSliderRed.Click += new System.EventHandler(this.pbxSliderRed_Click); this.pbxSliderRed.MouseDown += new System.Windows.Forms.MouseEventHandler(this.SliderMouseDown);
this.pbxSliderRed.MouseUp += new System.Windows.Forms.MouseEventHandler(this.SliderMouseUp);
// //
// pbxSliderSaturation // pbxSliderSaturation
// //
@@ -170,7 +173,8 @@
this.pbxSliderSaturation.Size = new System.Drawing.Size(30, 255); this.pbxSliderSaturation.Size = new System.Drawing.Size(30, 255);
this.pbxSliderSaturation.TabIndex = 22; this.pbxSliderSaturation.TabIndex = 22;
this.pbxSliderSaturation.TabStop = false; this.pbxSliderSaturation.TabStop = false;
this.pbxSliderSaturation.Click += new System.EventHandler(this.pbxSliderSaturation_Click); this.pbxSliderSaturation.MouseDown += new System.Windows.Forms.MouseEventHandler(this.SliderMouseDown);
this.pbxSliderSaturation.MouseUp += new System.Windows.Forms.MouseEventHandler(this.SliderMouseUp);
// //
// label1 // label1
// //
@@ -208,6 +212,11 @@
this.label4.TabIndex = 26; this.label4.TabIndex = 26;
this.label4.Text = "A"; this.label4.Text = "A";
// //
// tmrRefresh
//
this.tmrRefresh.Interval = 1;
this.tmrRefresh.Tick += new System.EventHandler(this.tmrRefresh_Tick);
//
// ColorPicker // ColorPicker
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 22F); this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 22F);
@@ -266,5 +275,6 @@
private System.Windows.Forms.Label label2; private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3; private System.Windows.Forms.Label label3;
private System.Windows.Forms.Label label4; private System.Windows.Forms.Label label4;
private System.Windows.Forms.Timer tmrRefresh;
} }
} }

View File

@@ -147,12 +147,19 @@ namespace Paint_2
} }
private void pbxSliderRed_Click(object sender, EventArgs e) private void pbxSliderRed_Click(object sender, EventArgs e)
{ {
SelectedColor = Color.FromArgb(SelectedColor.A,pbxSliderRed.PointToClient(MousePosition).X,SelectedColor.G,SelectedColor.B); int mouseX = pbxSliderRed.PointToClient(MousePosition).X;
if (mouseX >= 0 && mouseX <= 255)
{
SelectedColor = Color.FromArgb(SelectedColor.A, mouseX, SelectedColor.G, SelectedColor.B);
}
RefreshUi(); RefreshUi();
} }
private void pbxSliderSaturation_Click(object sender, EventArgs e) private void pbxSliderSaturation_Click(object sender, EventArgs e)
{ {
SelectedColor = Color.FromArgb(pbxSliderSaturation.PointToClient(MousePosition).Y, SelectedColor.R, SelectedColor.G, SelectedColor.B); int mouseY = pbxSliderSaturation.PointToClient(MousePosition).Y;
if (mouseY >= 0 && mouseY <= 255) {
SelectedColor = Color.FromArgb(mouseY, SelectedColor.R, SelectedColor.G, SelectedColor.B);
}
RefreshUi(); RefreshUi();
} }
public static Color HexToColor(string rgb) public static Color HexToColor(string rgb)
@@ -258,5 +265,21 @@ namespace Paint_2
{ {
main.sketch.ChangePaintToolColor(SelectedColor); main.sketch.ChangePaintToolColor(SelectedColor);
} }
private void tmrRefresh_Tick(object sender, EventArgs e)
{
pbxSliderSaturation_Click(sender, e);
pbxSliderRed_Click(sender,e);
}
private void SliderMouseDown(object sender, MouseEventArgs e)
{
tmrRefresh.Enabled = true;
}
private void SliderMouseUp(object sender, MouseEventArgs e)
{
tmrRefresh.Enabled = false;
}
} }
} }

View File

@@ -117,4 +117,7 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<metadata name="tmrRefresh.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root> </root>