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(); } } }