123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776 |
- using Resources;
- using SmartCoalApplication.Annotation;
- using SmartCoalApplication.Annotation.Enum;
- using SmartCoalApplication.Annotation.Measure;
- using SmartCoalApplication.Base.CommTool;
- using SmartCoalApplication.Base.SettingModel;
- using SmartCoalApplication.Core;
- using SmartCoalApplication.PluginAssemblys;
- using SmartCoalApplication.Resources;
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.IO;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- namespace SmartCoalApplication.Measure
- {
- internal class MeasurementPropertiesDialog : Form
- {
- #region 控件
- private GroupBox groupBox2;
- private Panel panel3;
- private ComboBox comboBox4;
- private Label label4;
- private ComboBox comboBox3;
- private Label label3;
- private Panel panel2;
- private ComboBox comboBox2;
- private Label label2;
- private NumericUpDown numericUpDown11;
- private ComboBox comboBox21;
- private NumericUpDown numericUpDown21;
- private Label label61;
- private Label label51;
- private Panel linePanel;
- private Label label41;
- private Panel textPanel;
- private Label label31;
- private Label label21;
- private ComboBox comboBox11;
- private Label label11;
- private GroupBox groupBox1;
- //private Button button2;
- private Button button3;
- private Button button1;
- ColorsForm colorsForm;
- ColorsForm colorsForm1;
- private DocumentWorkspaceWindow documentWorkspaceWindow;
- #endregion
- /// <summary>
- /// 主控件
- /// </summary>
- private AppWorkspace appWorkspace;
- private DrawObject drawObject;
- /// <summary>
- /// 测量的样式
- /// </summary>
- private MeasureStyleModel measureStyleModel = Program.instance.measureStyleModel;
- /// <summary>
- /// 主配置文件的model
- /// </summary>
- private ConfigModel configModel = Program.instance.configModel;
- private NumericUpDown numericUpDown1;
- private Label label5;
- private ComboBox comboBox5;
- private Label label6;
- private ComboBox comboBox91;
- private System.Windows.Forms.Label label91;
- /// <summary>
- /// 字体列表
- /// </summary>
- ArrayList fontsItems = new ArrayList();
- public MeasurementPropertiesDialog(AppWorkspace appWorkspace, DrawObject drawObject,DocumentWorkspaceWindow documentWorkspaceWindow = null)
- {
- this.appWorkspace = appWorkspace;
- this.drawObject = drawObject;
- InitializeComponent();
- this.documentWorkspaceWindow = documentWorkspaceWindow;
- this.Icon = PdnInfo.AppIcon;
- this.comboBox3.Items.AddRange(new object[] {
- PdnResources.GetString("Menu.Upperleft.text"),
- PdnResources.GetString("Menu.Uppermiddle.Text"),
- PdnResources.GetString("Menu.Upperright.text"),
- PdnResources.GetString("Menu.Lowerleft.text"),
- PdnResources.GetString("Menu.Themiddleandlower.Text"),
- PdnResources.GetString("Menu.Lowerright.text")});
- this.comboBox91.Items.AddRange(new object[] {
- "度",
- "密位"});
- this.comboBox4.Items.AddRange(new object[] {
- PdnResources.GetString("Menu.Upperleft.text"),
- PdnResources.GetString("Menu.Uppermiddle.Text"),
- PdnResources.GetString("Menu.Upperright.text"),
- PdnResources.GetString("Menu.Lowerleft.text"),
- PdnResources.GetString("Menu.Themiddleandlower.Text"),
- PdnResources.GetString("Menu.Lowerright.text")});
- this.Text = PdnResources.GetString("Menu.MeasureAction." + drawObject.drawToolType.ToString() + ".Text") + "属性设置";
- //绑定线样式数据
- this.comboBox21.Items.AddRange(InvariantData.dashStyles);
- this.colorsForm = new ColorsForm();
- this.colorsForm.StartPosition = FormStartPosition.CenterScreen;
- this.colorsForm.UserPrimaryColorChanged += new ColorEventHandler(this.colorsFormUserPrimaryColorChanged);
- this.colorsForm1 = new ColorsForm();
- this.colorsForm1.StartPosition = FormStartPosition.CenterScreen;
- this.colorsForm1.UserPrimaryColorChanged += new ColorEventHandler(this.colorsFormUserPrimaryColorChanged);
- this.fontsItems.Clear();
- //绑定字体数据
- System.Drawing.Text.InstalledFontCollection fonts = new System.Drawing.Text.InstalledFontCollection();
- foreach (FontFamily fontFamily in fonts.Families)
- {
- fontsItems.Add(fontFamily.Name);
- }
- this.comboBox11.DataSource = fontsItems;
- UpdateRightSettingUI();
- }
- #region 初始化
- private void InitializeComponent()
- {
- this.comboBox91 = new System.Windows.Forms.ComboBox();
- this.label91 = new System.Windows.Forms.Label();
- this.groupBox2 = new System.Windows.Forms.GroupBox();
- this.comboBox5 = new System.Windows.Forms.ComboBox();
- this.label6 = new System.Windows.Forms.Label();
- this.numericUpDown1 = new System.Windows.Forms.NumericUpDown();
- this.label5 = new System.Windows.Forms.Label();
- this.panel3 = new System.Windows.Forms.Panel();
- this.comboBox4 = new System.Windows.Forms.ComboBox();
- this.label4 = new System.Windows.Forms.Label();
- this.comboBox3 = new System.Windows.Forms.ComboBox();
- this.label3 = new System.Windows.Forms.Label();
- this.panel2 = new System.Windows.Forms.Panel();
- this.comboBox2 = new System.Windows.Forms.ComboBox();
- this.label2 = new System.Windows.Forms.Label();
- this.numericUpDown11 = new System.Windows.Forms.NumericUpDown();
- this.comboBox21 = new System.Windows.Forms.ComboBox();
- this.numericUpDown21 = new System.Windows.Forms.NumericUpDown();
- this.label61 = new System.Windows.Forms.Label();
- this.label51 = new System.Windows.Forms.Label();
- this.linePanel = new System.Windows.Forms.Panel();
- this.label41 = new System.Windows.Forms.Label();
- this.textPanel = new System.Windows.Forms.Panel();
- this.label31 = new System.Windows.Forms.Label();
- this.label21 = new System.Windows.Forms.Label();
- this.comboBox11 = new System.Windows.Forms.ComboBox();
- this.label11 = new System.Windows.Forms.Label();
- this.groupBox1 = new System.Windows.Forms.GroupBox();
- this.button3 = new System.Windows.Forms.Button();
- this.button1 = new System.Windows.Forms.Button();
- this.groupBox2.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).BeginInit();
- this.panel3.SuspendLayout();
- this.panel2.SuspendLayout();
- ((System.ComponentModel.ISupportInitialize)(this.numericUpDown11)).BeginInit();
- ((System.ComponentModel.ISupportInitialize)(this.numericUpDown21)).BeginInit();
- this.groupBox1.SuspendLayout();
- this.SuspendLayout();
- //
- // comboBox91
- //
- this.comboBox91.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.comboBox91.FormattingEnabled = true;
- this.comboBox91.Location = new System.Drawing.Point(91, 179);
- this.comboBox91.Name = "comboBox91";
- this.comboBox91.Size = new System.Drawing.Size(152, 20);
- this.comboBox91.TabIndex = 15;
- //
- // label91
- //
- this.label91.AutoSize = true;
- this.label91.Location = new System.Drawing.Point(14, 182);
- this.label91.Name = "label91";
- this.label91.Size = new System.Drawing.Size(65, 12);
- this.label91.TabIndex = 14;
- this.label91.Text = "角度单位:";
- //
- // groupBox2
- //
- this.groupBox2.Controls.Add(this.comboBox5);
- this.groupBox2.Controls.Add(this.label6);
- this.groupBox2.Controls.Add(this.numericUpDown1);
- this.groupBox2.Controls.Add(this.label5);
- this.groupBox2.Controls.Add(this.panel3);
- this.groupBox2.Controls.Add(this.panel2);
- this.groupBox2.Controls.Add(this.numericUpDown11);
- this.groupBox2.Controls.Add(this.comboBox21);
- this.groupBox2.Controls.Add(this.numericUpDown21);
- this.groupBox2.Controls.Add(this.label61);
- this.groupBox2.Controls.Add(this.label51);
- this.groupBox2.Controls.Add(this.linePanel);
- this.groupBox2.Controls.Add(this.label41);
- this.groupBox2.Controls.Add(this.textPanel);
- this.groupBox2.Controls.Add(this.label31);
- this.groupBox2.Controls.Add(this.label21);
- this.groupBox2.Controls.Add(this.comboBox11);
- this.groupBox2.Controls.Add(this.label11);
- this.groupBox2.Controls.Add(this.comboBox91);
- this.groupBox2.Controls.Add(this.label91);
- this.groupBox2.Location = new System.Drawing.Point(10, 76);
- this.groupBox2.Name = "groupBox2";
- this.groupBox2.Size = new System.Drawing.Size(633, 235);
- this.groupBox2.TabIndex = 8;
- this.groupBox2.TabStop = false;
- this.groupBox2.Text = "设置";
- //
- // comboBox5
- //
- this.comboBox5.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.comboBox5.FormattingEnabled = true;
- this.comboBox5.Items.AddRange(new object[] {
- "随线",
- "水平"});
- this.comboBox5.Location = new System.Drawing.Point(337, 46);
- this.comboBox5.Name = "comboBox5";
- this.comboBox5.Size = new System.Drawing.Size(122, 20);
- this.comboBox5.TabIndex = 22;
- //
- // label6
- //
- this.label6.AutoSize = true;
- this.label6.Location = new System.Drawing.Point(260, 50);
- this.label6.Name = "label6";
- this.label6.Size = new System.Drawing.Size(65, 12);
- this.label6.TabIndex = 21;
- this.label6.Text = "文字方向:";
- //
- // numericUpDown1
- //
- this.numericUpDown1.Location = new System.Drawing.Point(337, 21);
- this.numericUpDown1.Name = "numericUpDown1";
- this.numericUpDown1.Size = new System.Drawing.Size(152, 21);
- this.numericUpDown1.TabIndex = 20;
- //
- // label5
- //
- this.label5.AutoSize = true;
- this.label5.Location = new System.Drawing.Point(260, 25);
- this.label5.Name = "label5";
- this.label5.Size = new System.Drawing.Size(65, 12);
- this.label5.TabIndex = 19;
- this.label5.Text = "垂线长度:";
- //
- // panel3
- //
- this.panel3.Controls.Add(this.comboBox4);
- this.panel3.Controls.Add(this.label4);
- this.panel3.Controls.Add(this.comboBox3);
- this.panel3.Controls.Add(this.label3);
- this.panel3.Location = new System.Drawing.Point(9, 175);
- this.panel3.Name = "panel3";
- this.panel3.Size = new System.Drawing.Size(236, 57);
- this.panel3.TabIndex = 16;
- //
- // comboBox4
- //
- this.comboBox4.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.comboBox4.FormattingEnabled = true;
- this.comboBox4.Location = new System.Drawing.Point(112, 30);
- this.comboBox4.Name = "comboBox4";
- this.comboBox4.Size = new System.Drawing.Size(122, 20);
- this.comboBox4.TabIndex = 17;
- //
- // label4
- //
- this.label4.AutoSize = true;
- this.label4.Location = new System.Drawing.Point(5, 34);
- this.label4.Name = "label4";
- this.label4.Size = new System.Drawing.Size(89, 12);
- this.label4.TabIndex = 16;
- this.label4.Text = "文字位置(点):";
- //
- // comboBox3
- //
- this.comboBox3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.comboBox3.FormattingEnabled = true;
- this.comboBox3.Location = new System.Drawing.Point(112, 4);
- this.comboBox3.Name = "comboBox3";
- this.comboBox3.Size = new System.Drawing.Size(122, 20);
- this.comboBox3.TabIndex = 15;
- //
- // label3
- //
- this.label3.AutoSize = true;
- this.label3.Location = new System.Drawing.Point(5, 7);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(89, 12);
- this.label3.TabIndex = 14;
- this.label3.Text = "文字位置(线):";
- //
- // panel2
- //
- this.panel2.Controls.Add(this.comboBox2);
- this.panel2.Controls.Add(this.label2);
- this.panel2.Location = new System.Drawing.Point(9, 175);
- this.panel2.Name = "panel2";
- this.panel2.Size = new System.Drawing.Size(236, 57);
- this.panel2.TabIndex = 15;
- //
- // comboBox2
- //
- this.comboBox2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.comboBox2.FormattingEnabled = true;
- this.comboBox2.Location = new System.Drawing.Point(82, 3);
- this.comboBox2.Name = "comboBox2";
- this.comboBox2.Size = new System.Drawing.Size(152, 20);
- this.comboBox2.TabIndex = 15;
- //
- // label2
- //
- this.label2.AutoSize = true;
- this.label2.Location = new System.Drawing.Point(5, 7);
- this.label2.Name = "label2";
- this.label2.Size = new System.Drawing.Size(65, 12);
- this.label2.TabIndex = 14;
- this.label2.Text = "文字位置:";
- //
- // numericUpDown11
- //
- this.numericUpDown11.Location = new System.Drawing.Point(91, 125);
- this.numericUpDown11.Name = "numericUpDown11";
- this.numericUpDown11.Size = new System.Drawing.Size(152, 21);
- this.numericUpDown11.TabIndex = 14;
- //
- // comboBox21
- //
- this.comboBox21.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.comboBox21.FormattingEnabled = true;
- this.comboBox21.Location = new System.Drawing.Point(91, 151);
- this.comboBox21.Name = "comboBox21";
- this.comboBox21.Size = new System.Drawing.Size(152, 20);
- this.comboBox21.TabIndex = 13;
- //
- // numericUpDown21
- //
- this.numericUpDown21.Location = new System.Drawing.Point(91, 46);
- this.numericUpDown21.Name = "numericUpDown21";
- this.numericUpDown21.Size = new System.Drawing.Size(152, 21);
- this.numericUpDown21.TabIndex = 12;
- //
- // label61
- //
- this.label61.AutoSize = true;
- this.label61.Location = new System.Drawing.Point(13, 155);
- this.label61.Name = "label61";
- this.label61.Size = new System.Drawing.Size(65, 12);
- this.label61.TabIndex = 9;
- this.label61.Text = "线条样式:";
- //
- // label51
- //
- this.label51.AutoSize = true;
- this.label51.Location = new System.Drawing.Point(13, 128);
- this.label51.Name = "label51";
- this.label51.Size = new System.Drawing.Size(65, 12);
- this.label51.TabIndex = 8;
- this.label51.Text = "线条宽度:";
- //
- // linePanel
- //
- this.linePanel.BackColor = System.Drawing.SystemColors.Window;
- this.linePanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.linePanel.Location = new System.Drawing.Point(91, 99);
- this.linePanel.Name = "linePanel";
- this.linePanel.Size = new System.Drawing.Size(152, 20);
- this.linePanel.TabIndex = 7;
- this.linePanel.Click += new System.EventHandler(this.lineColorPanel_Click);
- //
- // label41
- //
- this.label41.AutoSize = true;
- this.label41.Location = new System.Drawing.Point(13, 99);
- this.label41.Name = "label41";
- this.label41.Size = new System.Drawing.Size(65, 12);
- this.label41.TabIndex = 6;
- this.label41.Text = "线条颜色:";
- //
- // textPanel
- //
- this.textPanel.BackColor = System.Drawing.SystemColors.Window;
- this.textPanel.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.textPanel.Location = new System.Drawing.Point(91, 73);
- this.textPanel.Name = "textPanel";
- this.textPanel.Size = new System.Drawing.Size(152, 20);
- this.textPanel.TabIndex = 5;
- this.textPanel.Click += new System.EventHandler(this.textColorPanel_Click);
- //
- // label31
- //
- this.label31.AutoSize = true;
- this.label31.Location = new System.Drawing.Point(13, 76);
- this.label31.Name = "label31";
- this.label31.Size = new System.Drawing.Size(65, 12);
- this.label31.TabIndex = 4;
- this.label31.Text = "文字颜色:";
- //
- // label21
- //
- this.label21.AutoSize = true;
- this.label21.Location = new System.Drawing.Point(13, 50);
- this.label21.Name = "label21";
- this.label21.Size = new System.Drawing.Size(65, 12);
- this.label21.TabIndex = 2;
- this.label21.Text = "文字字号:";
- //
- // comboBox11
- //
- this.comboBox11.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
- this.comboBox11.FormattingEnabled = true;
- this.comboBox11.Location = new System.Drawing.Point(91, 20);
- this.comboBox11.Name = "comboBox11";
- this.comboBox11.Size = new System.Drawing.Size(152, 20);
- this.comboBox11.TabIndex = 1;
- //
- // label11
- //
- this.label11.AutoSize = true;
- this.label11.Location = new System.Drawing.Point(13, 23);
- this.label11.Name = "label11";
- this.label11.Size = new System.Drawing.Size(65, 12);
- this.label11.TabIndex = 0;
- this.label11.Text = "文字字体:";
- //
- // groupBox1
- //
- this.groupBox1.Controls.Add(this.button3);
- this.groupBox1.Controls.Add(this.button1);
- this.groupBox1.Location = new System.Drawing.Point(12, 12);
- this.groupBox1.Name = "groupBox1";
- this.groupBox1.Size = new System.Drawing.Size(633, 58);
- this.groupBox1.TabIndex = 7;
- this.groupBox1.TabStop = false;
- this.groupBox1.Text = "操作";
- //
- // button3
- //
- this.button3.Location = new System.Drawing.Point(541, 20);
- this.button3.Name = "button3";
- this.button3.Size = new System.Drawing.Size(75, 23);
- this.button3.TabIndex = 2;
- this.button3.Text = "关闭";
- this.button3.UseVisualStyleBackColor = true;
- this.button3.Click += new System.EventHandler(this.button3_Click);
- //
- // button1
- //
- this.button1.Location = new System.Drawing.Point(460, 20);
- this.button1.Name = "button1";
- this.button1.Size = new System.Drawing.Size(75, 23);
- this.button1.TabIndex = 0;
- this.button1.Text = "应用";
- this.button1.UseVisualStyleBackColor = true;
- this.button1.Click += new System.EventHandler(this.button1_Click);
- //
- // MeasurementPropertiesDialog
- //
- this.ClientSize = new System.Drawing.Size(652, 319);
- this.Controls.Add(this.groupBox2);
- this.Controls.Add(this.groupBox1);
- this.MinimizeBox = false;
- this.Name = "MeasurementPropertiesDialog";
- this.Text = "测量属性";
- this.groupBox2.ResumeLayout(false);
- this.groupBox2.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.numericUpDown1)).EndInit();
- this.panel3.ResumeLayout(false);
- this.panel3.PerformLayout();
- this.panel2.ResumeLayout(false);
- this.panel2.PerformLayout();
- ((System.ComponentModel.ISupportInitialize)(this.numericUpDown11)).EndInit();
- ((System.ComponentModel.ISupportInitialize)(this.numericUpDown21)).EndInit();
- this.groupBox1.ResumeLayout(false);
- this.ResumeLayout(false);
- }
- #endregion
- private void colorsFormUserPrimaryColorChanged(object sender, ColorEventArgs ce)
- {
- }
- private void textColorPanel_Click(object sender, EventArgs e)
- {
- this.colorsForm.UserPrimaryColor = ColorBgra.FromColor(this.textPanel.BackColor);
- this.colorsForm.setSaveBtn_Click(new System.EventHandler(this.textColorChanged));
- this.colorsForm.ShowDialog();
- }
- private void textColorChanged(object sender, EventArgs e)
- {
- this.textPanel.BackColor = this.colorsForm.UserPrimaryColor.ToColor();
- //this.measureStyleModel.backColor = this.colorsForm.UserPrimaryColor.ToColor().ToArgb();
- this.colorsForm.Close();
- }
- private void lineColorPanel_Click(object sender, EventArgs e)
- {
- this.colorsForm1.UserPrimaryColor = ColorBgra.FromColor(this.linePanel.BackColor);
- this.colorsForm1.setSaveBtn_Click(new System.EventHandler(this.lineColorChanged));
- this.colorsForm1.ShowDialog();
- }
- private void lineColorChanged(object sender, EventArgs e)
- {
- this.linePanel.BackColor = this.colorsForm1.UserPrimaryColor.ToColor();
- // this.measureStyleModel.backColor = this.colorsForm.UserPrimaryColor.ToColor().ToArgb();
- this.colorsForm1.Close();
- }
- /// <summary>
- /// 初始化属性画面
- /// </summary>
- private void UpdateRightSettingUI()
- {
- switch (this.drawObject.drawToolType)
- {
- case DrawToolType.MeasureLine: //长度测量直线
- MeasureStyleModel.MeasureLine measureLine = this.measureStyleModel.measureLine;
- this.panel2.Visible = true;
- this.panel3.Visible = false;
- this.numericUpDown1.Visible = true;
- this.label5.Visible = true;
- this.comboBox5.Visible = true;
- this.label6.Visible = true;
- this.label91.Visible = false;
- this.comboBox91.Visible = false;
- UpdataFontPosition(false);
- this.UpdateMeasureStyleData(measureLine.font, measureLine.fontSize, measureLine.textColor, measureLine.lineColor, measureLine.lineWidth, measureLine.lineStyle, measureLine.linePosition, 0, 0, measureLine.vLineLength, measureLine.followLine);
- break;
- case DrawToolType.MeasureDistanceLine: //长度测量距离
- MeasureStyleModel.MeasureDistanceLine measureDistanceLine = this.measureStyleModel.measureDistanceLine;
- this.panel2.Visible = true;
- this.panel3.Visible = false;
- this.numericUpDown1.Visible = false;
- this.label5.Visible = false;
- this.comboBox5.Visible = false;
- this.label6.Visible = false;
- this.label91.Visible = false;
- this.comboBox91.Visible = false;
- UpdataFontPosition(false);
- this.UpdateMeasureStyleData(measureDistanceLine.font, measureDistanceLine.fontSize, measureDistanceLine.textColor, measureDistanceLine.lineColor, measureDistanceLine.lineWidth, measureDistanceLine.lineStyle, measureDistanceLine.linePosition, 0, 0, -1);
- break;
- case DrawToolType.MeasureLength: //长度测量->长度
- MeasureStyleModel.MeasureLength measureLength = this.measureStyleModel.measureLength;
- this.panel2.Visible = true;
- this.panel3.Visible = false;
- this.numericUpDown1.Visible = false;
- this.label5.Visible = false;
- this.comboBox5.Visible = false;
- this.label6.Visible = false;
- this.label91.Visible = false;
- this.comboBox91.Visible = false;
- UpdataFontPosition(false);
- this.UpdateMeasureStyleData(measureLength.font, measureLength.fontSize, measureLength.textColor, measureLength.lineColor, measureLength.lineWidth, measureLength.lineStyle, measureLength.linePosition, 0, 0, -1);
- break;
- case DrawToolType.MeasureHLine: //长度测量->水平线
- MeasureStyleModel.MeasureHLine measureHLine = this.measureStyleModel.measureHLine;
- this.panel2.Visible = true;
- this.panel3.Visible = false;
- this.numericUpDown1.Visible = true;
- this.label5.Visible = true;
- this.comboBox5.Visible = false;
- this.label6.Visible = false;
- this.label91.Visible = false;
- this.comboBox91.Visible = false;
- UpdataFontPosition(false);
- this.UpdateMeasureStyleData(measureHLine.font, measureHLine.fontSize, measureHLine.textColor, measureHLine.lineColor, measureHLine.lineWidth, measureHLine.lineStyle, measureHLine.linePosition, 0, 0, measureHLine.vLineLength);
- break;
- case DrawToolType.MeasureVLine: //长度测量->垂线
- MeasureStyleModel.MeasureVLine measureVLine = this.measureStyleModel.measureVLine;
- this.panel2.Visible = true;
- this.panel3.Visible = false;
- this.numericUpDown1.Visible = true;
- this.label5.Visible = true;
- this.comboBox5.Visible = true;
- this.label6.Visible = true;
- this.label91.Visible = false;
- this.comboBox91.Visible = false;
- UpdataFontPosition(false);
- this.UpdateMeasureStyleData(measureVLine.font, measureVLine.fontSize, measureVLine.textColor, measureVLine.lineColor, measureVLine.lineWidth, measureVLine.lineStyle, measureVLine.linePosition, 0, 0, measureVLine.vLineLength, measureVLine.followLine);
- break;
- }
- }
- private void UpdataFontPosition(bool curve)
- {
- List<string> position = new List<string> { PdnResources.GetString("Menu.Upperleft.text")
- , PdnResources.GetString("Menu.Uppermiddle.Text")
- , PdnResources.GetString("Menu.Upperright.text")
- , PdnResources.GetString("Menu.Lowerleft.text")
- , PdnResources.GetString("Menu.Themiddleandlower.Text")
- , PdnResources.GetString("Menu.Lowerright.text")};
- List<string> position1 = new List<string> { PdnResources.GetString("Menu.hestartingpoint.Text")
- , PdnResources.GetString("Menu.Theendpoint.Text")
- };
- this.comboBox2.DataSource = null;
- if (curve)
- this.comboBox2.DataSource = position1;
- else
- this.comboBox2.DataSource = position;
- }
- /// <summary>
- /// 更新显示区域控件的数值
- /// </summary>
- /// <param name="font"></param>
- /// <param name="fontSize"></param>
- /// <param name="textColor"></param>
- /// <param name="lineColor"></param>
- /// <param name="lineWidth"></param>
- /// <param name="lineStyle"></param>
- private void UpdateMeasureStyleData(string font, int fontSize, int textColor, int lineColor, int lineWidth, int lineStyle, int linePosition, int linePositionL, int linePositionP, int vLineLength, bool followLine = false, bool isAngle = false)
- {
- //绑定样式默认数据
- this.comboBox11.Text = font;
- this.numericUpDown21.Value = fontSize;
- this.textPanel.BackColor = Color.FromArgb(textColor);
- this.linePanel.BackColor = Color.FromArgb(lineColor);
- this.numericUpDown11.Value = lineWidth;
- this.comboBox21.SelectedIndex = lineStyle;
- if (this.comboBox2.Items.Count > 0)
- this.comboBox2.SelectedIndex = linePosition;
- if (this.comboBox3.Items.Count > 0)
- this.comboBox3.SelectedIndex = linePositionL;
- if (this.comboBox4.Items.Count > 0)
- this.comboBox4.SelectedIndex = linePositionP;
- if (vLineLength > -1)
- this.numericUpDown1.Value = vLineLength;
- if (followLine)
- {
- this.comboBox5.SelectedIndex = 0;
- }
- else
- {
- this.comboBox5.SelectedIndex = 1;
- }
- this.comboBox91.SelectedIndex = isAngle ? 1 : 0;
- }
- /// <summary>
- /// 保存
- /// </summary>
- private void button2_Click()
- {
- //调用检查类型
- this.checkSaveModel();
- //以下保存xml文件信息
- string stageModelXml = XmlSerializeHelper.XmlSerialize<MeasureStyleModel>(this.measureStyleModel);
- string filePath = Application.StartupPath + "\\Config\\" + Program.instance.SettingPrefix + "\\Measure\\" + "Default" + ".xml";
- FileOperationHelper.WriteStringToFile(stageModelXml, filePath, FileMode.Create);
- }
- /// <summary>
- /// 检查保存类型
- /// </summary>
- private void checkSaveModel()
- {
- string font = comboBox11.Text;
- int fontSize = Convert.ToInt32(numericUpDown21.Value);
- int textColor = Convert.ToInt32(this.textPanel.BackColor.ToArgb());
- int lineColor = Convert.ToInt32(this.linePanel.BackColor.ToArgb());
- int lineWidth = Convert.ToInt32(numericUpDown11.Value);
- int lineStyle = this.comboBox21.SelectedIndex;
- int linePosition = this.comboBox2.SelectedIndex;
- int linePositionL = this.comboBox3.SelectedIndex;
- int linePositionP = this.comboBox4.SelectedIndex;
- int vLineLength = Convert.ToInt32(this.numericUpDown1.Value);
- bool isAngle = comboBox91.SelectedIndex == 0 ? false : true;
- switch (this.drawObject.drawToolType)
- {
- case DrawToolType.MeasureLine: //长度测量直线
- this.measureStyleModel.measureLine.font = font;
- this.measureStyleModel.measureLine.fontSize = fontSize;
- this.measureStyleModel.measureLine.textColor = textColor;
- this.measureStyleModel.measureLine.lineColor = lineColor;
- this.measureStyleModel.measureLine.lineWidth = lineWidth;
- this.measureStyleModel.measureLine.lineStyle = lineStyle;
- this.measureStyleModel.measureLine.linePosition = linePosition;
- this.measureStyleModel.measureLine.vLineLength = vLineLength;
- this.measureStyleModel.measureLine.followLine = this.comboBox5.SelectedIndex == 0 ? true : false;
- break;
- case DrawToolType.MeasureDistanceLine: //长度测量距离
- this.measureStyleModel.measureDistanceLine.font = font;
- this.measureStyleModel.measureDistanceLine.fontSize = fontSize;
- this.measureStyleModel.measureDistanceLine.textColor = textColor;
- this.measureStyleModel.measureDistanceLine.lineColor = lineColor;
- this.measureStyleModel.measureDistanceLine.lineWidth = lineWidth;
- this.measureStyleModel.measureDistanceLine.lineStyle = lineStyle;
- this.measureStyleModel.measureDistanceLine.linePosition = linePosition;
- break;
- case DrawToolType.MeasureLength: //长度测量->长度
- this.measureStyleModel.measureLength.font = font;
- this.measureStyleModel.measureLength.fontSize = fontSize;
- this.measureStyleModel.measureLength.textColor = textColor;
- this.measureStyleModel.measureLength.lineColor = lineColor;
- this.measureStyleModel.measureLength.lineWidth = lineWidth;
- this.measureStyleModel.measureLength.lineStyle = lineStyle;
- this.measureStyleModel.measureLength.linePosition = linePosition;
- break;
- case DrawToolType.MeasureHLine: //长度测量->水平线
- this.measureStyleModel.measureHLine.font = font;
- this.measureStyleModel.measureHLine.fontSize = fontSize;
- this.measureStyleModel.measureHLine.textColor = textColor;
- this.measureStyleModel.measureHLine.lineColor = lineColor;
- this.measureStyleModel.measureHLine.lineWidth = lineWidth;
- this.measureStyleModel.measureHLine.lineStyle = lineStyle;
- this.measureStyleModel.measureHLine.linePosition = linePosition;
- this.measureStyleModel.measureHLine.vLineLength = vLineLength;
- break;
- case DrawToolType.MeasureVLine: //长度测量->垂线
- this.measureStyleModel.measureVLine.font = font;
- this.measureStyleModel.measureVLine.fontSize = fontSize;
- this.measureStyleModel.measureVLine.textColor = textColor;
- this.measureStyleModel.measureVLine.lineColor = lineColor;
- this.measureStyleModel.measureVLine.lineWidth = lineWidth;
- this.measureStyleModel.measureVLine.lineStyle = lineStyle;
- this.measureStyleModel.measureVLine.linePosition = linePosition;
- this.measureStyleModel.measureVLine.vLineLength = vLineLength;
- this.measureStyleModel.measureVLine.followLine = this.comboBox5.SelectedIndex == 0 ? true : false;
- break;
- }
- }
- /// <summary>
- /// 应用
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void button1_Click(object sender, EventArgs e)
- {
- button2_Click();
- //修改缓存中的样式数据
- Program.instance.measureStyleModel = this.measureStyleModel;
- //修改主配置文件中的值
- configModel.MeasurementStyle = "Default.xml";
- //修改主配置文件的xml
- string configModelXml = XmlSerializeHelper.XmlSerialize<ConfigModel>(this.configModel);
- string filePath = Application.StartupPath + "\\Config\\" + Program.instance.SettingPrefix + "\\Config.xml";
- FileOperationHelper.WriteStringToFile(configModelXml, filePath, FileMode.Create);
- MessageBox.Show(PdnResources.GetString("Menu.Applicationsuccessfully.Text"));
- ((MeasureDrawObject)(this.drawObject)).mouseUpAttribute = true;
- if (this.appWorkspace.ActiveDocumentWorkspace != null) {
- this.appWorkspace.ActiveDocumentWorkspace.Refresh();
- }
- if (documentWorkspaceWindow != null)
- {
- documentWorkspaceWindow.Refresh();
- }
- this.appWorkspace.RefreshListView();
- this.Close();
- }
- /// <summary>
- /// 关闭
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void button3_Click(object sender, EventArgs e)
- {
- this.Close();
- }
- }
- }
|