using System;
using System.Drawing;
using System.Windows.Forms;
using PaintDotNet.Base.SettingModel;
namespace PaintDotNet.Setting.LabelComponent
{
///
/// 标注设置-多边形设置->多边形
///
public class LabelPolygonControl : UserControl
{
#region 控件
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Label label3;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.ComboBox comboBox1;
private NumericUpDown numericUpDown1;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Panel panel2;
#endregion
///
/// 多边形样式
///
private LabelStyleModel.PolygonPolygon model;
PaintDotNet.ColorsForm colorsForm1;
PaintDotNet.ColorsForm colorsForm2;
public LabelPolygonControl(LabelStyleModel.PolygonPolygon model)
{
this.model = model;
InitializeComponent();
InitializeControlData();
InitializeData();
}
///
/// 获取当前页面model值
///
///
public LabelStyleModel.PolygonPolygon getNowModel(LabelStyleModel.PolygonPolygon model)
{
model.lineStyle = this.comboBox1.SelectedIndex;
model.lineWidth = Convert.ToInt32(this.numericUpDown1.Value);
model.lineColor = Convert.ToInt32(this.panel1.BackColor.ToArgb());
model.fillColor = Convert.ToInt32(this.panel2.BackColor.ToArgb());
return model;
}
///
/// 应用全部
///
///
///
public LabelStyleModel ApplyAll(LabelStyleModel model)
{
model.polygonRectangle.lineStyle = this.comboBox1.SelectedIndex;
model.polygonRectangle.lineWidth = Convert.ToInt32(this.numericUpDown1.Value);
model.polygonRectangle.lineColor = Convert.ToInt32(this.panel1.BackColor.ToArgb());
model.polygonRectangle.fillColor = Convert.ToInt32(this.panel2.BackColor.ToArgb());
model.polygonPolygon.lineStyle = this.comboBox1.SelectedIndex;
model.polygonPolygon.lineWidth = Convert.ToInt32(this.numericUpDown1.Value);
model.polygonPolygon.lineColor = Convert.ToInt32(this.panel1.BackColor.ToArgb());
model.polygonPolygon.fillColor = Convert.ToInt32(this.panel2.BackColor.ToArgb());
model.roundedRectangle.lineStyle = this.comboBox1.SelectedIndex;
model.roundedRectangle.lineWidth = Convert.ToInt32(this.numericUpDown1.Value);
model.roundedRectangle.lineColor = Convert.ToInt32(this.panel1.BackColor.ToArgb());
model.roundedRectangle.fillColor = Convert.ToInt32(this.panel2.BackColor.ToArgb());
return model;
}
///
/// 设置下拉等数据源
///
private void InitializeControlData()
{
//绑定线样式数据
this.comboBox1.Items.AddRange(InvariantData.dashStyles);
}
///
/// 绑定样式数据
///
private void InitializeData()
{
this.comboBox1.SelectedIndex = this.model.lineStyle;
this.numericUpDown1.Value = this.model.lineWidth;
this.panel1.BackColor = Color.FromArgb(this.model.lineColor);
this.panel2.BackColor = Color.FromArgb(this.model.fillColor);
}
private void InitializeComponent()
{
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.label4 = new System.Windows.Forms.Label();
this.comboBox1 = new System.Windows.Forms.ComboBox();
this.numericUpDown1 = new System.Windows.Forms.NumericUpDown();
this.panel1 = new System.Windows.Forms.Panel();
this.panel2 = new System.Windows.Forms.Panel();
((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit();
this.SuspendLayout();
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(4, 8);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(53, 12);
this.label1.TabIndex = 0;
this.label1.Text = PdnResources.GetString("Menu.Set.Labelsettings.Linestyle.text")+":";
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(6, 34);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(41, 12);
this.label2.TabIndex = 2;
this.label2.Text = PdnResources.GetString("Menu.Linewidth.text")+":";
//
// label3
//
this.label3.AutoSize = true;
this.label3.Location = new System.Drawing.Point(6, 60);
this.label3.Name = "label3";
this.label3.Size = new System.Drawing.Size(53, 12);
this.label3.TabIndex = 4;
this.label3.Text = PdnResources.GetString("Menu.Set.Labelsettings.Linecolor.text")+":";
//
// label4
//
this.label4.AutoSize = true;
this.label4.Location = new System.Drawing.Point(254, 8);
this.label4.Name = "label4";
this.label4.Size = new System.Drawing.Size(65, 12);
this.label4.TabIndex = 4;
this.label4.Text = PdnResources.GetString("Menu.Set.Labelsettings.Fillcolor.text")+":";
//
// comboBox1
//
this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.comboBox1.FormattingEnabled = true;
this.comboBox1.Location = new System.Drawing.Point(84, 4);
this.comboBox1.Name = "comboBox1";
this.comboBox1.Size = new System.Drawing.Size(152, 20);
this.comboBox1.TabIndex = 1;
//
// numericUpDown1
//
this.numericUpDown1.Location = new System.Drawing.Point(84, 31);
this.numericUpDown1.Name = "numericUpDown1";
this.numericUpDown1.Size = new System.Drawing.Size(152, 21);
this.numericUpDown1.TabIndex = 11;
//
// panel1
//
this.panel1.Location = new System.Drawing.Point(84, 57);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(152, 20);
this.panel1.TabIndex = 5;
this.panel1.Click += new System.EventHandler(this.panel1_Click);
//
// panel2
//
this.panel2.Location = new System.Drawing.Point(320, 5);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(152, 20);
this.panel2.TabIndex = 5;
this.panel2.Click += new System.EventHandler(this.panel2_Click);
//
// LabelPolygonControl
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.numericUpDown1);
this.Controls.Add(this.panel1);
this.Controls.Add(this.panel2);
this.Controls.Add(this.comboBox1);
this.Controls.Add(this.label1);
this.Controls.Add(this.label2);
this.Controls.Add(this.label3);
this.Controls.Add(this.label4);
this.Name = "LabelPolygonControl";
this.Size = new System.Drawing.Size(490, 205);
((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
this.colorsForm1 = new ColorsForm();
this.colorsForm1.StartPosition = FormStartPosition.CenterScreen;
this.colorsForm1.UserPrimaryColorChanged += new ColorEventHandler(this.colorsFormUserPrimaryColorChanged);
this.colorsForm2 = new ColorsForm();
this.colorsForm2.StartPosition = FormStartPosition.CenterScreen;
this.colorsForm2.UserPrimaryColorChanged += new ColorEventHandler(this.colorsFormUserPrimaryColorChanged);
}
private void colorsFormUserPrimaryColorChanged(object sender, ColorEventArgs ce)
{
}
///
/// panel1画板点击
///
///
///
private void panel1_Click(object sender, EventArgs e)
{
this.colorsForm1.UserPrimaryColor = ColorBgra.FromColor(this.panel1.BackColor);
this.colorsForm1.setSaveBtn_Click(new System.EventHandler(this.panel1Changed));
this.colorsForm1.ShowDialog();
}
private void panel1Changed(object sender, EventArgs e)
{
this.panel1.BackColor = this.colorsForm1.UserPrimaryColor.ToColor();
this.colorsForm1.Close();
}
///
/// panel2画板点击
///
///
///
private void panel2_Click(object sender, EventArgs e)
{
this.colorsForm2.UserPrimaryColor = ColorBgra.FromColor(this.panel2.BackColor);
this.colorsForm2.setSaveBtn_Click(new System.EventHandler(this.panel2Changed));
this.colorsForm2.ShowDialog();
}
private void panel2Changed(object sender, EventArgs e)
{
this.panel2.BackColor = this.colorsForm2.UserPrimaryColor.ToColor();
this.colorsForm2.Close();
}
}
}