diff --git a/MainForm.Designer.cs b/MainForm.Designer.cs new file mode 100644 index 0000000..c44ee0b --- /dev/null +++ b/MainForm.Designer.cs @@ -0,0 +1,235 @@ +namespace TeklaModelPlugin1 +{ + partial class MainForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm)); + this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); + this.saveLoad1 = new Tekla.Structures.Dialog.UIControls.SaveLoad(); + this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel(); + this.saveLoad2 = new Tekla.Structures.Dialog.UIControls.SaveLoad(); + this.tabControl2 = new System.Windows.Forms.TabControl(); + this.tabPage3 = new System.Windows.Forms.TabPage(); + this.tabPage4 = new System.Windows.Forms.TabPage(); + this.tabControl1 = new System.Windows.Forms.TabControl(); + this.ParametersTabPage = new System.Windows.Forms.TabPage(); + this.OkApplyModifyGetOnOffCancel = new Tekla.Structures.Dialog.UIControls.OkApplyModifyGetOnOffCancel(); + this.tableLayoutPanel1.SuspendLayout(); + this.tableLayoutPanel2.SuspendLayout(); + this.tabControl2.SuspendLayout(); + this.tabControl1.SuspendLayout(); + this.SuspendLayout(); + // + // tableLayoutPanel1 + // + this.structuresExtender.SetAttributeName(this.tableLayoutPanel1, null); + this.structuresExtender.SetAttributeTypeName(this.tableLayoutPanel1, null); + this.structuresExtender.SetBindPropertyName(this.tableLayoutPanel1, null); + this.tableLayoutPanel1.ColumnCount = 1; + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); + this.tableLayoutPanel1.Controls.Add(this.OkApplyModifyGetOnOffCancel, 0, 2); + this.tableLayoutPanel1.Controls.Add(this.tabControl1, 0, 1); + this.tableLayoutPanel1.Controls.Add(this.saveLoad1, 0, 0); + this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0); + this.tableLayoutPanel1.Name = "tableLayoutPanel1"; + this.tableLayoutPanel1.RowCount = 3; + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle()); + this.tableLayoutPanel1.Size = new System.Drawing.Size(534, 414); + this.tableLayoutPanel1.TabIndex = 0; + // + // saveLoad1 + // + this.structuresExtender.SetAttributeName(this.saveLoad1, null); + this.structuresExtender.SetAttributeTypeName(this.saveLoad1, null); + this.saveLoad1.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.structuresExtender.SetBindPropertyName(this.saveLoad1, null); + this.saveLoad1.Dock = System.Windows.Forms.DockStyle.Top; + this.saveLoad1.Location = new System.Drawing.Point(3, 3); + this.saveLoad1.Name = "saveLoad1"; + this.saveLoad1.SaveAsText = ""; + this.saveLoad1.Size = new System.Drawing.Size(528, 43); + this.saveLoad1.TabIndex = 0; + // + // tableLayoutPanel2 + // + this.structuresExtender.SetAttributeName(this.tableLayoutPanel2, null); + this.structuresExtender.SetAttributeTypeName(this.tableLayoutPanel2, null); + this.structuresExtender.SetBindPropertyName(this.tableLayoutPanel2, null); + this.tableLayoutPanel2.ColumnCount = 4; + this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F)); + this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F)); + this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel2.Controls.Add(this.saveLoad2, 0, 0); + this.tableLayoutPanel2.Location = new System.Drawing.Point(0, 0); + this.tableLayoutPanel2.Name = "tableLayoutPanel2"; + this.tableLayoutPanel2.RowCount = 8; + this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); + this.tableLayoutPanel2.Size = new System.Drawing.Size(200, 100); + this.tableLayoutPanel2.TabIndex = 0; + // + // saveLoad2 + // + this.structuresExtender.SetAttributeName(this.saveLoad2, null); + this.structuresExtender.SetAttributeTypeName(this.saveLoad2, null); + this.saveLoad2.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.structuresExtender.SetBindPropertyName(this.saveLoad2, null); + this.tableLayoutPanel2.SetColumnSpan(this.saveLoad2, 4); + this.saveLoad2.Dock = System.Windows.Forms.DockStyle.Top; + this.saveLoad2.Location = new System.Drawing.Point(3, 3); + this.saveLoad2.Name = "saveLoad2"; + this.saveLoad2.SaveAsText = ""; + this.saveLoad2.Size = new System.Drawing.Size(194, 14); + this.saveLoad2.TabIndex = 0; + // + // tabControl2 + // + this.structuresExtender.SetAttributeName(this.tabControl2, null); + this.structuresExtender.SetAttributeTypeName(this.tabControl2, null); + this.structuresExtender.SetBindPropertyName(this.tabControl2, null); + this.tabControl2.Controls.Add(this.tabPage3); + this.tabControl2.Controls.Add(this.tabPage4); + this.tabControl2.Location = new System.Drawing.Point(3, -6); + this.tabControl2.Name = "tabControl2"; + this.tabControl2.SelectedIndex = 0; + this.tabControl2.Size = new System.Drawing.Size(90, 1); + this.tabControl2.TabIndex = 2; + // + // tabPage3 + // + this.structuresExtender.SetAttributeName(this.tabPage3, null); + this.structuresExtender.SetAttributeTypeName(this.tabPage3, null); + this.structuresExtender.SetBindPropertyName(this.tabPage3, null); + this.tabPage3.Location = new System.Drawing.Point(4, 22); + this.tabPage3.Name = "tabPage3"; + this.tabPage3.Padding = new System.Windows.Forms.Padding(3); + this.tabPage3.Size = new System.Drawing.Size(82, 0); + this.tabPage3.TabIndex = 0; + this.tabPage3.Text = "tabPage3"; + this.tabPage3.UseVisualStyleBackColor = true; + // + // tabPage4 + // + this.structuresExtender.SetAttributeName(this.tabPage4, null); + this.structuresExtender.SetAttributeTypeName(this.tabPage4, null); + this.structuresExtender.SetBindPropertyName(this.tabPage4, null); + this.tabPage4.Location = new System.Drawing.Point(4, 22); + this.tabPage4.Name = "tabPage4"; + this.tabPage4.Padding = new System.Windows.Forms.Padding(3); + this.tabPage4.Size = new System.Drawing.Size(82, 0); + this.tabPage4.TabIndex = 1; + this.tabPage4.Text = "tabPage4"; + this.tabPage4.UseVisualStyleBackColor = true; + // + // tabControl1 + // + this.structuresExtender.SetAttributeName(this.tabControl1, null); + this.structuresExtender.SetAttributeTypeName(this.tabControl1, null); + this.structuresExtender.SetBindPropertyName(this.tabControl1, null); + this.tabControl1.Controls.Add(this.ParametersTabPage); + this.tabControl1.Dock = System.Windows.Forms.DockStyle.Fill; + this.tabControl1.Location = new System.Drawing.Point(3, 52); + this.tabControl1.Name = "tabControl1"; + this.tabControl1.SelectedIndex = 0; + this.tabControl1.Size = new System.Drawing.Size(528, 324); + this.tabControl1.TabIndex = 18; + // + // ParametersTabPage + // + this.structuresExtender.SetAttributeName(this.ParametersTabPage, null); + this.structuresExtender.SetAttributeTypeName(this.ParametersTabPage, null); + this.structuresExtender.SetBindPropertyName(this.ParametersTabPage, null); + this.ParametersTabPage.Location = new System.Drawing.Point(4, 22); + this.ParametersTabPage.Name = "ParametersTabPage"; + this.ParametersTabPage.Padding = new System.Windows.Forms.Padding(3); + this.ParametersTabPage.Size = new System.Drawing.Size(520, 298); + this.ParametersTabPage.TabIndex = 2; + this.ParametersTabPage.Text = "albl_Parameters"; + this.ParametersTabPage.UseVisualStyleBackColor = true; + // + // OkApplyModifyGetOnOffCancel + // + this.structuresExtender.SetAttributeName(this.OkApplyModifyGetOnOffCancel, null); + this.structuresExtender.SetAttributeTypeName(this.OkApplyModifyGetOnOffCancel, null); + this.structuresExtender.SetBindPropertyName(this.OkApplyModifyGetOnOffCancel, null); + this.OkApplyModifyGetOnOffCancel.Dock = System.Windows.Forms.DockStyle.Bottom; + this.OkApplyModifyGetOnOffCancel.Location = new System.Drawing.Point(3, 382); + this.OkApplyModifyGetOnOffCancel.Name = "OkApplyModifyGetOnOffCancel"; + this.OkApplyModifyGetOnOffCancel.Size = new System.Drawing.Size(528, 29); + this.OkApplyModifyGetOnOffCancel.TabIndex = 19; + this.OkApplyModifyGetOnOffCancel.OkClicked += new System.EventHandler(this.OkApplyModifyGetOnOffCancel_OkClicked); + this.OkApplyModifyGetOnOffCancel.ModifyClicked += new System.EventHandler(this.OkApplyModifyGetOnOffCancel_ModifyClicked); + this.OkApplyModifyGetOnOffCancel.CancelClicked += new System.EventHandler(this.OkApplyModifyGetOnOffCancel_CancelClicked); + this.OkApplyModifyGetOnOffCancel.OnOffClicked += new System.EventHandler(this.OkApplyModifyGetOnOffCancel_OnOffClicked); + this.OkApplyModifyGetOnOffCancel.GetClicked += new System.EventHandler(this.OkApplyModifyGetOnOffCancel_GetClicked); + this.OkApplyModifyGetOnOffCancel.ApplyClicked += new System.EventHandler(this.OkApplyModifyGetOnOffCancel_ApplyClicked); + // + // MainForm + // + this.structuresExtender.SetAttributeName(this, null); + this.structuresExtender.SetAttributeTypeName(this, null); + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.structuresExtender.SetBindPropertyName(this, null); + this.ClientSize = new System.Drawing.Size(534, 414); + this.Controls.Add(this.tableLayoutPanel1); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.Name = "MainForm"; + this.Text = "Model Plug-in"; + this.tableLayoutPanel1.ResumeLayout(false); + this.tableLayoutPanel2.ResumeLayout(false); + this.tabControl2.ResumeLayout(false); + this.tabControl1.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1; + private Tekla.Structures.Dialog.UIControls.SaveLoad saveLoad1; + private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2; + private Tekla.Structures.Dialog.UIControls.SaveLoad saveLoad2; + private System.Windows.Forms.TabControl tabControl2; + private System.Windows.Forms.TabPage tabPage3; + private System.Windows.Forms.TabPage tabPage4; + private Tekla.Structures.Dialog.UIControls.OkApplyModifyGetOnOffCancel OkApplyModifyGetOnOffCancel; + private System.Windows.Forms.TabControl tabControl1; + private System.Windows.Forms.TabPage ParametersTabPage; + } +} \ No newline at end of file diff --git a/MainForm.cs b/MainForm.cs new file mode 100644 index 0000000..6b811e7 --- /dev/null +++ b/MainForm.cs @@ -0,0 +1,43 @@ +using System; + +namespace TeklaModelPlugin1 +{ + public partial class MainForm : Tekla.Structures.Dialog.PluginFormBase + { + public MainForm() + { + InitializeComponent(); + } + + private void OkApplyModifyGetOnOffCancel_OkClicked(object sender, EventArgs e) + { + this.Apply(); + this.Close(); + } + + private void OkApplyModifyGetOnOffCancel_ApplyClicked(object sender, EventArgs e) + { + this.Apply(); + } + + private void OkApplyModifyGetOnOffCancel_ModifyClicked(object sender, EventArgs e) + { + this.Modify(); + } + + private void OkApplyModifyGetOnOffCancel_GetClicked(object sender, EventArgs e) + { + this.Get(); + } + + private void OkApplyModifyGetOnOffCancel_OnOffClicked(object sender, EventArgs e) + { + this.ToggleSelection(); + } + + private void OkApplyModifyGetOnOffCancel_CancelClicked(object sender, EventArgs e) + { + this.Close(); + } + } +} \ No newline at end of file diff --git a/MainForm.resx b/MainForm.resx new file mode 100644 index 0000000..9b38ede --- /dev/null +++ b/MainForm.resx @@ -0,0 +1,549 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + AAABAAkAMDAQAAEABABoBgAAlgAAACAgEAABAAQA6AIAAP4GAAAQEBAAAQAEACgBAADmCQAAMDAAAAEA + CACoDgAADgsAACAgAAABAAgAqAgAALYZAAAQEAAAAQAIAGgFAABeIgAAMDAAAAEAIACoJQAAxicAACAg + AAABACAAqBAAAG5NAAAQEAAAAQAgAGgEAAAWXgAAKAAAADAAAABgAAAAAQAEAAAAAAAABgAAAAAAAAAA + AAAQAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICAAACAgIAAwMDAAAAA/wAA/wAAAP//AP8A + AAD/AP8A//8AAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + +IAAAAAAAAAAAAAAAAAACP//////////dPAAAAAAAAAAAAAAAAAIhwcHdHd3d3d3dIAAAAAAAAAAAAAA + AAAIAAAEBEREREd3d3gAAAAAAAAAAAAAAACHAAAARERERER3d3gAAAAAAAAAAAAAAACHAAAEAEREREdH + d3gAAAAAAAAAAAAAAACHAAAARERERER3d08AAAAAAAAAAAAAAACHAAAEQEREREd3d3gAAAAAAAAAAAAA + AACHAAAABERERERHd3eAAAAAAAAAAAAAAAAIEAAAQERERER3d3eAAAAAAAAAAAAAAAAPBwAABERERERH + d3eAAAAAAAAAAAAAAAAIAXd3d3d3d3d3d3eP//////+IAAAAAAAIUBEBAREVFRFVVVVVVVVVUVWIgAAA + AAAIcBEREREREVEVVVVZmZmZmZlViAAAAAAAgRERERERFRFVVVWZmZmZmZmVWIAAAAAAgBERERERURVV + VZmZmZmZmZmZWIAAAAAA8BEREREREVFVV4iJmZmZmZmZV/AAAAAAgREREREVEVFVj///iZmZmZmZlfAA + AAAAhxERERERFRVX////iZmZmZmZlfAAAAAACAERERERUVVV////iXmZmZmZlYgAAAAACBERERFRV4hV + eIiId3iHmZmZlYgAAAAADwFREREV///4V1d3f///iZmZlX8AAAAACHEVERUY////dXV5j///93mZmV8A + AAAACHFVUREX////h1d4////h5mZmV8AAAAACIAViIiFWIj//4iP/4iIl4iIeViAAAAAAIEX///4V1VY + ////95eZj///iViAAAAAAPAY////VVVX////h3d3j///+VjwAAAAAIEViP/4VYiP///4d3d5eP/4eZXw + AAAAAIcRVVFVj///+Hd3f///eXmZmZXwAAAAAIcRVVVV////h3d3j///iZmZmZWIAAAAAAgRmVVVj//4 + d3d3j//4d5mZmZWIAAAAAA8BmVVVWXd3eP+Id4d3eXmZmZmIAAAAAAgRWZVVWVlZj///d5d3l5eXmZVf + AAAAAAhxWZVVVVlZj///d5mZmZmZmZlfAAAAAAiBWZVVVVWVmXh5mZmZmZmZmZdYgAAAAACAFZVRVVlZ + lZmZmZmZmZmZmZlYgAAAAACBEVlVVVVZWZmZmZmZmZmZmZlYgAAAAAAPERERERFRVVVVlZWZWZWZWVVV + 8AAAAAAAiHERERERERERERERERERERER8AAAAAAACIj///////////////////hxiAAAAAAAAAAAAAAA + AAAAAAAAAAAAAACIeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + jwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////8AAP///////wAA////////AAD///n///8AAP// + 8f///wAA4AAB////AACAAAH///8AAIAAAP///wAAAAAA////AAAAAAD///8AAAAAAP///wAAAAAA//// + AAAAAAB///8AAIAAAH///wAAgAAAf///AACAAAAAA/8AAIAAAAAB/wAAgAAAAAD/AADAAAAAAH8AAMAA + AAAAfwAAwAAAAAB/AADAAAAAAH8AAMAAAAAAfwAA4AAAAAA/AADgAAAAAD8AAOAAAAAAPwAA4AAAAAA/ + AADgAAAAAD8AAOAAAAAAHwAA8AAAAAAfAADwAAAAAB8AAPAAAAAAHwAA8AAAAAAfAADwAAAAAA8AAPgA + AAAADwAA+AAAAAAPAAD4AAAAAA8AAPgAAAAADwAA+AAAAAAHAAD8AAAAAAcAAPwAAAAABwAA/gAAAAAH + AAD/AAAAAAcAAP+AAAAAAwAA///////DAAD///////MAAP//////8wAA////////AAAoAAAAIAAAAEAA + AAABAAQAAAAAAIACAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAAAACAAIAAgIAAAICA + gADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAI/wAAAAAAAAAAAP///////3iAAAAAAAAAAA9ABERERE + d38AAAAAAAAAAPAAQERER3d/AAAAAAAAAADwBERERER3fwAAAAAAAAAA8AQEREREd38AAAAAAAAAAPEA + RERERHd4gAAAAAAAAADxQURER0d3d/////8AAAAAhwERERERFVd3d3d3/wAAAIcRERERFRVVmZmZmVfw + AAAPERERERFVWZmZmZmV8AAADxERERFRV/+HmZmZlfAAAA8REREREV///5mZmZn4AAAIcREREVVY//eX + mZmZfwAACIERER//9XWX//iZmX8AAACBERF///hZf///mZlfAAAA8ReId4/////4h4iHXwAAAPEf//dV + f///eZj//5+AAAD3GP+Hd4//93d3//eY8AAAhxERX///d5j/+JmZl/AAAAgVVVf/95d4//d5mZXwAAAP + EVVVWZj/95eZmZmZ8AAADxFVVVWY//eZmZmZlYgAAA9xVVFVWZeZmZmZmZmPAAAAgREVUVVVmZmZmZmV + fwAAAIgRERERERERERERER8AAAAA//////////////gfAAAAAAAAAAAAAAAAAAAA+AAAAAAAAAAAAAAA + AAAAAA/w/////////////f////H//4AA//8AAP//AAD//wAA//8AAP//AAB//wAAAP8AAAA/AAAAH4AA + AB+AAAAfgAAAD4AAAA+AAAAPwAAAD8AAAA/AAAAHwAAAB8AAAAfgAAAH4AAAB+AAAAPgAAAD8AAAA/AA + AAP8AAAD////8/////koAAAAEAAAACAAAAABAAQAAAAAAMAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAA + gAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AAZm + Z3d3AAAAZmZ2d3cAAABWZmd3dwAAAFkRFREZmZUAWRERWIeZmZVZERGP+JmZmVkXiFiFiImZWZ//gRj/ + +ZmIhYj/j4h4iP/1FY/4mX//V5j/h1f/iXlZF4h3d4iJmVkREY/4mZmZCRERF3mZmZkAVVVVVVVVWQAA + AAAAAAAAgD8AAAA/AAAAPwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAA + AADAAAAA//8AACgAAAAwAAAAYAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AGA8 + 6AAAAAAARSDKAEMfwgBRJu0AUiftAFEn6gBNJeEAQB+5AFIo7QBSKOsAPh6yAEgkzQBUKu0AUinlAEYj + wwA8HqoAVCrpAEwm0wBWLO0AVSzsAFYt7gBRKt4AQiK0AFcu7gBEJLsAWC/uAFgv7QBXL+wAUCvZAEAi + rQBZMO4AWTDtAFMt3gBaMe4AUi3aAFEs1QBaMewAWjHpAEkowABcM+4AWzPuAFAszwBNK8kAXDTuAFsz + 7AAtGXQAXDTtAFYx3ABdNuwAXDXpAFs05ABUMdUARSiwAF437gBfOO4AYDnuAEwtugBiOu8AYTrvAGA5 + 6wBQMMIAYzzvAGQ+7wBcOdwASy+zAGZA7wBJLqsATTGzAGhD7wBDK5sASC+kAEEqkgBrRvAAVDa4AE4z + rABtSOoAcE3wAFU8qgB1VeUAfFzxAIhq8wB9YtwAim3rAI5y8wBLPIAAk3n0AJuC7gC2o/YA1sz6ADQX + iQA3GZMALRR2ADQZiQA7HZ0APSOKADchfQBaNssAQSmLAGtF5gBSNasAKxxXAE82nwBaP6wAVT2jAHRT + 2QBRPI4AknjiAIZvzgCnkusAi3y3AMa48wDb0vYA7Oj5APXz+wA0FoEAMRV9AC8VeQA7HZEANBp7AC0X + bABXLsgASi6WAGtG0gBIL4kAaUbGADkmbABXP5kAYEanAHdXzABlTaMAe2a3AJ2OxgCpmtMAe3GWADsa + igA4GYQARiCfAEIelQBMJKoAMxl0AFMquQBIJJwATSelADwfgwBEI5AASCaWAFEsrQBUM6AAZ0W2AHJS + vQA/MGUAYUuYAG5WqQBOK50ARSx6AFpHgwDZ0eoAVEJ3AMS33AC2qcsAUCeJAJyVpQDp3fUAZDuGAGNO + cgBtIZwAbiKeAGwhmQDbyOcAah+UAGQaiQB/HKUAbSeKANXH2gB/MJkAfBKSALITwgCdFKUA6wPvANIG + 2AD/AP8AvwC/AI8AjwB5AHkA/wL/AAAAAAD0OPQA7FrrAPuR+wD/rv8A6qzqAPS29ABPP08AxITDANyc + 2wDzCOAA6RHHAJUgXAA6MTEAYmFhAKCfnwBuLiAAg358AKqEcgCROAAAjDUAAIUzAACAMQAAey8AAHUs + AABtKgAAYiYAAFYhAABKHAAAPhcAADASAAAjDQAAlz0FAI46BwCfRg4AplAbALBZIwBrNxgAilg5AEUv + IgCMbFgAFgoCAMRxOwC2aTcAzHpFAM+FVABxSjEA2JBgAOWaaADtpHIApXJRAMWnkwBKR0QAj4+OAPj4 + +ADx8fEA5ubmANXV1QDKysoAwsLCALy8vACzs7MAra2tAKWlpQCampoAlJSUAIiIiABxcXEAAwMDAwMD + AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMD + AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMD + AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDc8ADAwMDAwMDAwMDAwMDAwMDAwMD + AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwN0+/MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDwgEB + AQEBAQEBAQEBAQEBAfPv4fIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwP18fDq6urq4uLi4uLi4uLu + 7u7u4vYDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA/XJ5drZ2NfW1tXU09LR0d3f5+nr7u8DAwMDAwMD + AwMDAwMDAwMDAwMDAwMDAwMDwP7l29rY2NfW1dTT0dDQz9zg5uvs7s7BAwMDAwMDAwMDAwMDAwMDAwMD + AwMDAwMDpcPl29rZ2NfW1dTT0dDQz8/f5unt6eKlAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDpcoA29rZ + 2NfW1dTT0tDQz8/f5+nt6+LyAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDwv8A29rZ2NfW1tTT0tHQz8/e + 5+js7OL1AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA8vl5drZ2NjW1dXT0tHQz8/e4Ojs7ef4AwMDAwMD + AwMDAwMDAwMDAwMDAwMDAwMDA/bJ5dvZ2NfX1tXU0tHQz8/c4Ojs7e7OAwMDAwMDAwMDAwMDAwMDAwMD + AwMDAwMDA3TJw+Pa2djX1tXT0tLR3c/c4Obr7ejkqwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA6XJZ8r+ + zeTk5OTk5O7u7u7uzs7v7+/O9AEBAQEBAQEBAQHywgMDAwMDAwMDAwMDA8HKZ2dnZ2dnmaCgoKCgoKCe + np6ampqahIJJSUlJSUlJSWqbhp+lAwMDAwMDAwMDAwPNZ3owenp6jo6OeXmKkpKJk5CNlY+PjyYmJiYm + JiYmJiwtO2ikcwMDAwMDAwMDAwP4Z3p2d153dnV1iomJeIyMi42Vj3t7ex0WDwwMCAgICAgQHz9J9QMD + AwMDAwMDAwP0Z2d2dl53dnV1iomJeIyMi42Pe2NjYzUhFw8LBwcGBgYGCB87h6UDAwMDAwMDAwPzZ2dc + dV5ednZ1iomJeIyMi5VMg29vWWUuJBcPCwsHBwYGBhAshQEDAwMDAwMDAwOroGd2XF5ed3Z1iomJjIyQ + nJWhAQEBAXRYLiQaFQ8PCwcHBggmUAEDAwMDAwMDAwMD/Wd3XHZed3Z1iomTk5ScnIUBAQEBAQFbPTgu + JBwXDwsLBwYYQ3QDAwMDAwMDAwMD92cwXHVed3mKkmGTlHyWlpd0AQEBAQFaREE5OC4rHA8PCwcYO6UD + AwMDAwMDAwMD9WeAeFx3d3mKkmSBcIeGm2mXoXJyq29LS1ZaWlI5KxwVDwsQP6HCAwMDAwMDAwMDAWeA + fHh5eWKSZIR0AQEBAaGXl39/fX1VcwEBAQFbOi4hFw8TLHB0AwMDAwMDAwMDq6eAbGpkeWJkfocBAQEB + AQGFl399fX1xAQEBAQEBUz04KyEeNlABAwMDAwMDAwMDA/5nfmqBbH5+fpt0AQEBAQGfmH9/fW10AQEB + AQFbR0FAOi4rMk10AwMDAwMDAwMDA/pnfmpwop+whoGahoeicwEBAZ9ycwEBAXJaWllLUlpbW29ENUb0 + AwMDAwMDAwMDA/VnnYUBAQEBAfSBgYGCgocBAQEBAQFzUk9LS0tZAQEBAQGlNT+hwgMDAwMDAwMDAwFn + gIYBAQEBAQGEhISEgoUBAQEBAQFaZU9LS0taAQEBAQF0NGOGcwMDAwMDAwMDA5/DgHyHcwEBc4aahHBw + onMBAQEBdHFrTlJWUktPcXQBAVtSLzaCAQMDAwMDAwMDAwP/Z2RmaGxsbIGGdAEBAQF0h26Dg2tVcwEB + AXNSQUFAPTgrHTZNdAMDAwMDAwMDAwP8Z5JFTEloaFABAQEBAQGHg4NrUVJyAQEBAQFaPTk4LiQcFSNG + nwMDAwMDAwMDAwP2Z2IjMj9DRkyHAQEBAaVUUVFRUVJvAQEBAXNTRzocGhUPCxA7osADAwMDAwMDAwMB + Z18UEC03N0NMf25uVH1UcXQBpVpPUlhYU09LS0dEORoLBxAthnMDAwMDAwMDAwOlmXYOEA4ZIBk7Oz9j + Y0JyAQEBAQFYS0tHR0dEQUBAQEA8GggshAEDAwMDAwMDAwPB/zAKCRQKEiAZGyk/e2NvAQEBAXNSREFA + PT06OTk5Ojk6PTMmSfIDAwMDAwMDAwMDpGcSCQkFEhINGRspKS02a21vVQI+OC4uLiorKi4qLi44ODlC + Rp8DAwMDAwMDAwMDn2d2EQkEDRISDQoFES0sLDYyNTUoIh0aHRocHBwhJCQrKjFCTPcDAwMDAwMDAwMD + q6dnXxEEDRISDQ0KEREOFB8lIxATDw8PDw8PFRUXFxodIjVCTIalAwMDAwMDAwMDA3SZZ2JgXVxdYGBg + YCAgNzcbKSkRLQ4ODg4ODi0tLCwsLC07SZoBAwMDAwMDAwMDAwOl+aeZZ2dnZ2d6enp6eo6OYo5iYmJi + YmJiYmJiYmJiYmKAgIDzAwMDAwMDAwMDAwMDA8KlAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQGw + iGf3AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDwbCkAwMDAwMDAwMD + AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwP3pQMDAwMDAwMDAwMDAwMDAwMDAwMD + AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwOl8gMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMD + AwMDAwMDAwMDAwMDAwMDAwMD////////AAD///////8AAP///////wAA///5////AAD///H///8AAOAA + Af///wAAwAAB////AACAAAH///8AAAAAAP///wAAAAAA////AAAAAAD///8AAAAAAP///wAAgAAA//// + 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 + 3ACyotsAwrLrANHD9wDUxvkAzsPsAM3C6gDMwugA5+H3AObh9ABTG+EAWTayAFs4tABmP8kAflTpAHpa + ywCGadAAn3/uAKmN8AChid4Ayrj3ANPF9gDSxfMA0cTxANDE7gDMwecA2tHvAOfh9QBCE6MAahnpAPbw + /gBaGKkAdwvpAMyk9wB0D9UAeBHdAH4U6QB7E+MAgBbsAGUGuACCCuoAawq/AG4LxgBxDc4AXhqaAFch + hwBoB7oAZge3AIYH2ACVEu8AtA30ANEE9wDdA/kA9AL9AAAAAAB8KjgAijQhAJM5BgCbQhAApk0aALBY + JgC7ZDIAxm49AM53RgDUfkwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABhYmNkZWZnaGgAAAAAAABfYWJjZGVmZ2hoAAAAAAAAVGBiY2Rl + ZmdoaAAAAAAAAEcHBAMFVUQICQoLDDJFWQBHBwQDBQYcLUAaCwwyDQ1ORwcEAwUGLgEBPwsMMg0NDUgH + BCFBKBYgOxUlPToNDQ1IBw4BAQEnCAkmAQEBEQ0NSSsqGSIoAUMwASUfNjwsI0YBATMFNDEBASYLDBQB + AQJIFxIpAQFCNzUaAQEkExgNSAcEHkEvHDcbGj49OQ0NDVAHBAMFBicBASYLDDINDQ1bBwQDBQYPOB0Q + CwwyDQ0NAFxYT1dWUVJTSktNTE5ODQAAAAAAAAAAAAAAAAAAAFqAP+n1AD/j4QA/3OsAAfrXAAAAAAAA + AAAAAAAAAAAAAAAA6fUAAOThAADc6wAA/NsAAAAAAAAAAIAAAAD//gAAKAAAADAAAABgAAAAAQAgAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAQAAAAJAAAABwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAABAAAABwAAAAzAAAAIgAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + 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 + ef82HoH/Mhp4/ywXa/8tF2v/Lxdu/zEYcf8zGXT/NRp3/zcbev85G33/OxyA/z0dg/8/Hob/QR+K/0Qh + kf9IJJv/TSel/1Aqr/9SK7X/VCy3/1Msvv9TLtb/Ui3V/1Et1f9RLNX/UCvV/1Ar1f9QK9X/UCvV/1As + 0/9QLND/Ti3I/0wuuf9ON6L/g3qe/2ZlZNwAAAB8AAAAKwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAOSxm9zYhfP85Ho7/NBmJ/y4Vef8tFHX/LxV4/zEWfP80Fn//NheC/zcYhv86GIn/PBqM/z0a + kP9AHJP/QhyW/0Ufn/9LIqr/UCa1/1Qqv/9YLMj/WS3K/1ktyv9XL+z/VSzr/1Qq6/9SKev/Uijr/1En + 6/9RJ+v/USfq/1En6v9RKOj/USjk/1Ar2P9OLsL/SC+h/5GOmv4AAACXAAAARQAAAAsAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAATkNz3jUhev86HpT/NhmR/zAVgP8tFHX/LxR4/zEVfP8zFn//NRaC/zcY + hv85GIn/OxmM/z4akP9AHJT/Qh2X/0chn/9NJqr/Uyq2/1kwwf9eM8r/XzXO/14zzv9cM+j/WTDu/1Yt + 7v9UKu3/Uijt/1In7f9SJ+3/USbt/1Em7f9RJu3/USbt/1En6v9QKtr/TS67/4p9tv9/fn7MAAAAWgAA + ABUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUEdwsjknef86H5P/OBqX/zIWhf8tFHb/LhR3/zAV + e/8yFX7/NRaB/zgYhf86GYj/PRqM/z8bkP9BHpT/RB+X/0kjn/9QKqr/VzG2/3xbzf+nkOH/sZ3n/52E + 4f9rReb/XTXu/1ox7v9WLe7/VCrt/1Mp7f9SKO3/Uift/1In7f9RJu3/USbt/1Em7f9RKOX/Ty3L/3Vj + t//CwsLlAAAAagAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASD9ncUw9gf86H5D/ORub/zQX + iv8uFHn/LhR2/zAVev8yFX3/NReA/zgZhf86G4j/PRyM/0Eekf9DIJT/RySa/00on/9TL6r/wbPj//// + ///////////////////18/3/k3j0/1017v9aMe7/Vy7u/1Ys7f9UKu3/VCnt/1Io7f9SJ+3/Uift/1Em + 7f9RJ+r/UCvV/1Q8rf/j4+P0AAAAegAAACUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFdK + gv9AKJD/Ohye/zUYkP8vFX3/LRR1/y8Uef8yFn3/NRiA/zgbhf89HYn/QSCO/0Qjkv9IJpb/TCmb/1Et + oP+BZr//////////////////////////////////2M77/2E67/9fN+7/XDTu/1ox7v9YL+7/Vi3u/1Qq + 7f9TKe3/Uijt/1In7f9RJ+z/USrc/0svsf/T0N/7AAAAiwAAADEAAAACAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAFNHffdUQJf/PR+f/zcYlf8xFoL/LhV2/zAVef8zGH3/NxqB/zsdhv9AIYr/RSaQ/0oq + lf9OLpn/UjGe/1Y0ov9mRrD/9fP6////////////////////////////va34/2ZA7/9kPu//YTrv/184 + 7v9dNe7/WzLu/1gv7v9VK+3/VCnt/1Io7f9SJ+3/Uirh/00uu//Bu9r/AAAAmAAAAEIAAAAJAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAExAdehXRZP/Vjyp/zwdm/80F4j/LxZ4/zAXef80Gn3/OByC/z8i + h/9DJoz/Vzqa/4ZxuP+pmc3/oI/K/29Tr/9ePqv/bEy4/7ys4v/a0fH/29Hz/9HF8f+ki+P/bEfs/2pF + 8P+Oc/P/s6D3/7Kf9/9/YPL/Xzju/1sz7v9YL+7/Vizt/1Qp7f9TKe3/Uirl/08uxP+fk8n/b29vwQAA + AFQAAAASAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEc8bsNSQor/WUGn/1Q5q/85HI//Mxp9/zMa + ev84Hn7/PCGE/0Imif9rVKT/9PL4///////////////////////Et9//ZEGz/2VCu/9pRMT/a0XN/21G + 0/9tRtP/iWvr/+3o/f//////////////////////1877/2A57/9cNO7/WTDu/1Yt7v9VK+3/VCro/1Ev + zf90YrT/ra2s3gAAAGUAAAAbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEU7Z3JOP4H/VkCj/1o+ + r/9UO6P/QCeJ/zggfP89JIH/QSeG/0ctjP+lmMj/////////////////////////////////gmfA/2ZE + uv9pRcP/a0XM/25H0v9uSNP/wLDy/////////////////////////////////4pt8/9hOu//Xjbu/1sz + 7v9ZMO7/Vy/r/1Qw1f9VPaj/0NDQ8QICAnoAAAAlAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD4w + cSFJPHj/VD6d/1k9r/9ZQKn/WEKc/045i/9FLob/SC+J/0wxjv9xXKf/9PL4//////////////////// + ////////2dHr/3JSvf9rR8L/bUjK/3BK0v+UeN7/9vT9////////////////////////////2dD7/2hC + 7/9lP+//Yzzv/2A57/9dNe7/WzPt/1Yy2/9ONK//y8fV+wICAosAAAAxAAAAAgAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///wFDN3D7UDyW/1g+rf9bQa3/g3K4/7eu0f/X0uX/zMXe/56Qwf9dRZn/YEee/6KS + x/+uoM//ua3X/+vo9P/////////////////a0e//29Ly/+3o+f/////////////////c0/v/t6X4/7ak + 9/+agfX/a0bw/31c8v+0off/2c/7/9jO+/+mkPb/aEPv/1o04f9SNbj/xb/Z/wMDA5gAAABAAAAACAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wFANWroTjuP/1Y9qv+Db8T///////////////////////// + ///i3u3/XEOa/1k9mv9aPp3/X0Ki/2NGpv+pmc//////////////////////////////////7en6/4Fi + 8f9uS/D/bUnw/2xH8P9rRvD/mYD0////////////////////////////4dr8/1s15v9TNcL/mo/D/2xs + bMADAwNQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wE8MWLESTiG/1M6pP+Xhs7///////// + ////////////////////////Zk+g/2hQo/9mTKT/Zkul/2VIpv95YLT///////////////////////// + ////////t6Tp/25K6f9sSPD/a0bw/2pF8P9qRfD/taL3////////////////////////////9fL+/1w1 + 6f9VNMr/fGy2/5OTk9YDAwNiAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wE5LWCLRDR8/082 + n/9WOq//q53U/+rn8v///////////+ro8v+bjcD/Ykuc/2VNof+PfLz/k4C//7Ci0f/u6/X///////// + //////////////b0/P/Ju+7/d1PW/21I6P9/X/L/kHTz/31c8v9qRfD/clDw/8a4+f/18/7///////// + ///Owvr/fVzy/1sz6/9VM9H/X0ms/7q6uuwCAgJ3AAAAIwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /wE7MGY/PS1w/0kxl/9PM6v/UjWr/1I4nf9QOY//UTyN/1U+kf9ZQJX/movA//Xz+f////////////// + ////////9vT6/6qY0/+Jbsf/eFnH/3ZTzf91UNX/jG7s/+3o/f/////////////////t6P3/g2Xy/2VA + 7/9kPu//Yz3v/2E67/9fN+7/WzPu/1gv7f9UMNj/TDGs/8nIzvsAAACIAAAALgAAAAEAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAD///8BNypo/kMsj/9JLab/Ti+y/1I0t/9ONKf/TTWc/1E4of9WPKf///////// + ////////////////////////r6Df/3RXy/90VtD/dlbW/3dX4P95We7/3tb8//////////////////// + ////////sZ73/2E67/9fOO7/Xjbu/1w07v9aMe7/WC/u/1Ys7f9TLd7/TTG2/7Ktxf8AAACUAAAAPQAA + AAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8BMSRe8D0nhv9KKrn/WjHs/1Ux3P9PL8P/Si6w/00y + tP9TNrr/oZHb///////////////////////k3/j/eV3e/3JT4P9zVOP/dFXn/3VU6v92Ve//qpX2//// + ///////////////////t6f3/im3z/2dC7/9gOe//WS/u/1cu7v9WLO3/VCrt/1Mp7f9SK+L/Ty+//46D + s/9ISEe1AAAATgAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKx9Wwz0miv9TLtr/VSzs/1Mq + 4v9LKMj/RCew/0cqr/9LL7X/UjS7/2JGxf+Eb9X/iHHY/4Fo2f9nSdX/fWLe/8i98//29P3//////+Te + +/+5qPb/c1Dw/3ta8f+Ve/T/lHr0/4tu8/9uSvD/bEfw/2lF8P9oQ/D/Z0Hv/2A47v9YLu7/Uijt/1In + 7f9SKeb/Ty3J/3xtr/+GhoXWAAAAYAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKB1Pij8p + kf9RLNP/Uijq/1An5/9IJM7/QSK1/0Ejq/9EJrL/SSq3/04vvP9SM8P/VzjH/1s7zP9gQNL/2ND1//// + ////////////////////////kXbz/2xI8P9rRu//akTv/2lD7/9oQu//ZUDv/2Q+7v9iPO7/Yzzv/2M9 + 7/9jPO//Yjrv/1gu7v9RJ+n/UCzQ/2FNqf+qqansAAAAcQAAACEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAJx1LPUArjf9PLcn/USjm/1Am6/9KI9b/QR+7/zweqf8/IK7/QiOz/0Ynuf9JKr7/Ti7D/1Iy + yf9YNs7/o5Dn///////////////////////s5/z/eVnw/2ZA7/9kPu//Yzzv/2E77/9hOu//YTnu/2A4 + 7v9fOO7/Xzju/2A57v9gOO7/YDnu/2E67/9dNuz/Ui7W/0kvpf+9vLz4AAAAggAAACsAAAABAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAADspfv5NLrz/USre/1En7P9MJN3/Qx/C/zsdq/88Haz/Ph+x/0Eh + tf9EI7v/RybA/0opxf9PLcv/VTPR/25Q2/+PeOb/pZHt/4ht6/9gPOj/YDnr/1837/9dNe//XDTu/1w0 + 7v9cM+7/WzPu/1wz7v9cNO7/XDPu/1w07v9dNe7/Xjbu/1437v9fOO3/Xjvd/00yr/+fmbL+AAAAkQAA + ADcAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD0re+dJL6j/UCzP/1Eo5f9OJeT/RSDK/zwc + sP87HKn/PB2u/z8ftP9BILn/QyK+/0Ykwv9LKMj/TyvN/1Iv0/9VMtj/VzPc/1k04P9aM+X/WTDp/1kw + 7f9YL+3/Vy7t/1cv7f9YLu7/WC/u/1gv7v9ZL+7/WTDu/1ox7v9aMu7/WzPu/1wz7v9cNO3/XTne/1g9 + uv+NhKz/IyMjqAAAAEkAAAANAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADorcXFCLov/Sy+z/1As + 0P9QKd3/SCPO/z8etv86G6j/Oxys/z0dsf9AHrb/QR+7/0Qiwf9HI8b/SSXL/00o0P9PK9X/USza/1Is + 3v9TK+P/Uyvn/1Qq6/9TKu3/VCrt/1Uq7f9UKu3/VSvt/1Ys7f9WLe3/Vy3t/1cu7v9YL+7/WS/t/1kw + 7f9aMuj/Wjba/1Y6uv94bKP/aGdnzQAAAF4AAAAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAA7LHawQi6M/0ovrf9OLsL/SSi+/0Eirf85Hpz/Oh6g/zwfpf89IKn/QCGu/0Iis/9DJLj/Ria9/0kn + wf9LKcb/TSnK/04qz/9PKtP/TyrX/1Ar2/9RKt7/UCne/1Eq3v9RKt7/USve/1Ir3v9TLN7/Uy3e/1Qu + 3v9ULt//VTDe/1Yx3P9WMtb/VTXK/1I4s/9fUJj/l5aW7AAAAHEAAAAhAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAOCpuiT4sfftELpD/RCyY/z4njv83IoD/NiJ//zgig/85I4f/OySL/zwl + j/8/J5P/QCiW/0Ipmv9DK5//RSyi/0Ytpv9ILan/SS6s/0ousP9LL7P/Sy+z/0svs/9LL7P/Sy+z/0sv + s/9LL7P/TDCz/0wws/9NMbP/TTGz/04ysf9OM67/TjSq/0w0n/9GM4j/p6em9wAAAH8AAAApAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4KW1ZNyhtoDMlZsQtIFvFKx5Wxiwf + WcYuIFzGLyJfxjAiYcYyI2TGMyRmxjMlacY1J2zGNyhuxjcocMY4KXLGOSp1xjsrd8Y8K3rGPCx6xjws + esY8LHrGPCx6xjwsesY8LHrGPCx6xjwrecY8K3nGPCt5xj0secY+LXrGPy588T8uff8/Lnv/lZGf/QAA + AHkAAAAyAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADcq + bT05Km/wf3mS/wAAAFsAAAA6AAAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAcmuK94SDg4sAAAAsAAAADQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAh4SRiZqambMAAAAOAAAABQAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /////wAA///4f///AAD///B///8AAOAAAH///wAAgAAAf///AACAAAB///8AAAAAAD///wAAAAAAP/// + AAAAAAA///8AAAAAAD///wAAAAAAP///AAAAAAAf//8AAIAAAB///wAAgAAAAAH/AACAAAAAAH8AAIAA + AAAAPwAAgAAAAAA/AADAAAAAAB8AAMAAAAAAHwAAwAAAAAAfAADAAAAAAB8AAMAAAAAAHwAA4AAAAAAP + AADgAAAAAA8AAOAAAAAADwAA4AAAAAAPAADgAAAAAA8AAOAAAAAABwAA4AAAAAAHAADgAAAAAAcAAOAA + AAAABwAA4AAAAAAHAADgAAAAAAMAAPAAAAAAAwAA8AAAAAADAAD4AAAAAAMAAPgAAAAAAwAA+AAAAAAB + AAD8AAAAAAEAAPwAAAAAAQAA/AAAAAABAAD+AAAAAAEAAP8AAAAAAQAA/8AAAAAAAAD//////8AAAP// + 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 + 7f9TKe3/Uift/1Em7f9RJu3/USbs/1Ep4P9LLrX/wsDI9QAAAH0AAAAnAAAAAAAAAAAAAAAAAAAAAFZN + eMM9Joj/OBqY/zAVf/8uFHf/MRV8/zUXgf84GYb/PBuM/0Eekv9GIZj/Timl/41yzf/XzfH/2M7z/8S1 + 8P9yUPD/WTDu/1Ys7f9UKe3/Uijt/1In7f9RJu3/USfr/08ty//Audn9AAAAjgAAADQAAAADAAAAAAAA + AAAAAAAAUEdvck07jP86HJz/MhaH/y0Udv8xFnv/NRiA/zochv9BII7/RSST/0wpm/9UMKT///////// + /////////////8/D+v9fOO7/WzPu/1kv7v9WLO3/VCnt/1Io7f9RJu3/UCvY/6KV0P8AAACaAAAARgAA + AAsAAAAAAAAAAAAAAABLQ2kgVUaH/0crov82GI//LxV4/zIYe/84G4H/PyKJ/0gpkf9lSaX/X0Kl/1o5 + p/+6q97////////////29Pz/mX/w/2dB7/+BYvL/akXw/1w07v9YL+7/VCrt/1Io7f9SKuD/gW7F/4mJ + icsAAABYAAAAFAAAAAAAAAAAAAAAAAAAAABMP3z+WUGn/0Upnf8zGn//Nhx8/zwhg/9dRJr/6OXx//// + ////////18/p/21NuP9nQ8D/a0bN/21G0/+bge3/9vT+////////////xLX5/1017v9ZL+7/Vizt/1Qr + 5v9iSL3/vLu75QAAAGcAAAAcAAAAAAAAAAAAAAAAAAAAAEg7c/BVPqD/WT6s/043lP9AKIL/RCuH/21Y + pP//////////////////////qJbT/2hGvv9sRsv/b0nT/+Te+f/////////////////18/7/ZD7v/2A5 + 7/9cNO7/WTDq/1Ayvv+/vcXxAAAAeQAAACUAAAAAAAAAAAAAAAAAAAAAQjdqw1E9l/9aP6//mInE/8G6 + 1/+2rND/iXi1/4Bssf+tn87/zcTi//Xz+f//////493y/9vS8v/t6fn//////+Te/P/Iu/n/tqT3/4Zo + 8/+qlfb/z8P6/7qp+P97XPD/VjXM/66nx/sCAgKLAAAAMQAAAAIAAAAAAAAAAAAAAAA5Ll6LSzmL/3dh + vf//////////////////////gW2x/2BGn/9hRaL/blOt///////////////////////SxvL/bkvw/2xH + 8P9qRfD/taL3/////////////////9fN+/9YNdb/pZrK/wICApgAAABCAAAACQAAAAAAAAAAAAAAADoz + XD9EM33/Ujip/7Wp2f/18/n//////8zF3/9sVaP/jXu6/5yKxP/Ty+b/////////////////0sbw/4lq + 3P+Ia/P/kHTz/4Zo8v+FZ/L/4tv8///////i2vz/kHTz/1gy3v+GdcH/Z2dnwQAAAFQAAAASAAAAAAAA + AAAAAAAA////ATorbv5KMKD/UDOq/000lv9NN4r/UzyR/9XP5f/////////////////Tyub/fWG+/3dX + xf96WNr/xLX3/////////////////6iT9v9jPO//YTrv/1017v9ZMO7/VS3l/2hRu/+bm5veAAAAZQAA + ABsAAAAAAAAAAAAAAAAAAAAAMiRj8UUpof9YMeP/UzDQ/0wvsv9RNbf/q53f////////////9fT8/4py + 4v9zVOL/jnTs/3VV7f+7qvj////////////29P7/moH1/2M+7/9bMu7/Vi3u/1Qq7f9TKuj/TS+4/7q5 + ufEAAAB5AAAAJQAAAAAAAAAAAAAAAAAAAAAtIFvRSiu3/1Mq6/9NKNj/RCS0/0YpsP9OMLr/VTjC/1w+ + yf9iQ9H/tKTs////////////9vT+/5R68/9vS/D/bkrw/2xH7/9oQ+//ZkDw/2Q/7/9hOu//WTDu/1Io + 6/9OLcf/m5Wz+wAAAIsAAAAwAAAAAQAAAAAAAAAAAAAAACsfVqBLLrT/USjm/04l4v9BILz/PSCq/0Ij + s/9JKrz/Ty/E/1U0y/+3qOz////////////28/7/jHDy/2U/7/9jPO//Yjrv/2E57v9gN+7/Xzju/184 + 7v9gOe7/Xzfu/1Iv0f+Sh7b/AAAAlgAAAD0AAAAHAAAAAAAAAAAAAAAAJh1LWUUtmv9QK9n/UCbo/0Qg + xv87HKr/Ph6w/0Eht/9FI7//SinG/1Evz/9iQtn/hGnm/1w35P9cNer/WzPu/1ox7v9aMO7/WjLu/1sy + 7v9bMu7/WzPu/1w07v9eNe7/XTva/3tssP9BQUG1AAAATgAAAA8AAAAAAAAAAAAAAAAAAAAAPyyB8Esu + tf9QKtn/SCPN/zscrP87HKv/Ph6z/0Egu/9FI8L/SifK/04r0v9RLNn/Uyvg/1Mr5/9UK+v/VCns/1Qq + 7P9VK+z/Vizs/1Yt7f9XLu3/WTDs/1kx6v9ZN9b/bVuu/3h3d9UAAABhAAAAGQAAAAAAAAAAAAAAAAAA + AAA5Km4gPyyC9kguo/9HK67/PCKY/zkgkv87IZj/PSKf/0Elpf9DJ63/Rymz/0kruf9LLL//TSzF/08t + y/9PLMz/TyzM/08szP9PLcz/UC7M/1EvzP9SMMv/UjLH/1I1uv9MNpr/mpqZ4wAAAGsAAAAiAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAOSpxiTopd8M0JGzFLyBixjEhZ8YzI2vGNCRvxjYlc8Y5KHnGOyl9xjwq + gMY+K4XGQC2JxkEti8ZBLYvGQS2LxkEti8ZBLYvGQS2KxkEuisZCL4nGQC6D90Auf/+Pipv0AAAAWwAA + ACcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOCptcX95 + kfsAAAAzAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAkY6WwYeGhUYAAAAJ//x////4f/+AAH//AAA//wAAP/8AAD//AAA//wAAP/8AAAA/AAAADwAA + AAcAAAAHgAAAB4AAAAeAAAADgAAAA4AAAAPAAAADwAAAA8AAAAHAAAABwAAAAcAAAAHgAAAB4AAAAOAA + AADgAAAA8AAAAPAAAAD8AAAA////8P////goAAAAEAAAACAAAAABACAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAJM5Bv+bQhD/pk0a/7BYJv+7ZDL/xm49/853Rv/Ufkz/1H5M/wAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAHwqOP+TOQb/m0IQ/6ZNGv+wWCb/u2Qy/8ZuPf/Od0b/1H5M/9R+TP8AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAABeGpr/ijQh/5tCEP+mTRr/sFgm/7tkMv/Gbj3/zndG/9R+TP/Ufkz/AAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAWhip/0kP4f89C8D/Mgig/zMJn/9XIYf/QhOj/z0Ps/9CEr3/RhTH/0sX + 0f9PGdr/Uxvh/1Ud5t9VHeafVR3mEFoYqf9JD+H/PQvA/zIIoP8zCZ//NQqj/3dZxf/Ow+z/0MTu/4Be + 2f9LF9H/Txna/1Mb4f9VHeb/VR3m/1Ud5r9aGKn/SQ/h/z0LwP8yCKD/Mwmf/zUKo//Nwur///////// + ///RxPH/SxfR/08Z2v9TG+H/VR3m/1Ud5v9VHeb/SQ/hv0kP4f89C8D/mYTQ/8zB5/+zo9z/Xju6/56H + 2f+hid7/aUDS/7uo7v/Txfb/qY3w/1Ud5v9VHeb/VR3m/0kP4b9JD+H/SRrE/////////////////7Sk + 3/89D7P/QhK9/7mn6v////////////////9gK+j/VR3m/1Ud5v/Htfbn0cP3/8Ky6/9lRrj/mYTP/7Oj + 3P//////5+H1/+fh9///////u6ju/6eM7f9+VOn/yrj3/9TG+f+/qvb/9vT++///////////WTay/zMJ + n/9bOLT/5uH0////////////uafq/0sX0f9PGdr/c0bn////////////9PH9/0kP4b93S+n/VSrI/7Ki + 2////////////9rR7/96Wsv/Zj/J/4Be2f///////////76p9P9qOen/gFbs/1Ud5v9JD+G/SQ/h/z0L + wP+MdMr/zMHn/8zC6P93WcX/elrL/31c0v+AXtn/0sXz/9PF9v+ff+7/VR3m/1Ud5v9VHeb/SQ/hr0kP + 4f89C8D/Mgig/zMJn/81CqP/tKTf////////////uafq/0sX0f9PGdr/Uxvh/1Ud5v9VHeb/VR3m/0kP + 4UBJD+H/PQvA/zIIoP8zCZ//NQqj/0Ucr/+GadD/iWvW/1Ijy/9LF9H/Txna/1Mb4f9VHeb/VR3m/1Ud + 5v8AAAAASQ/hMD0LwJ8yCKC/MwmfvzUKo785Daq/PQ+zv0ISvb9GFMe/SxfRv08Z2r9TG+G/VR3mv1Ud + 5r9VHeb/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAVR3mcIA/st4APwz/AD8A/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAP/wAA + Ov8AAGf/gABW///+E/g= + + + \ No newline at end of file diff --git a/ModelPlugin.cs b/ModelPlugin.cs new file mode 100644 index 0000000..2f01819 --- /dev/null +++ b/ModelPlugin.cs @@ -0,0 +1,163 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Windows.Forms; + +using Tekla.Structures.Geometry3d; +using Tekla.Structures.Model; +using Tekla.Structures.Model.UI; +using Tekla.Structures.Plugins; + +namespace TeklaModelPlugin1 +{ + public class PluginData + { + #region Fields + // + // Define the fields specified on the Form. + // + /* Some examples: + [StructuresField("RebarName")] + public string RebarName; + + [StructuresField("RebarSize")] + public string RebarSize; + + [StructuresField("RebarGrade")] + public string RebarGrade; + + [StructuresField("RebarBendingRadius")] + public string RebarBendingRadius; + + [StructuresField("RebarClass")] + public int RebarClass; + + [StructuresField("RebarSpacing")] + public double RebarSpacing; + */ + #endregion + } + + [Plugin("TeklaModelPlugin1")] + [PluginUserInterface("TeklaModelPlugin1.MainForm")] + public class TeklaModelPlugin1 : PluginBase + { + #region Fields + private Model _Model; + private PluginData _Data; + // + // Define variables for the field values. + // + /* Some examples: + private string _RebarName = string.Empty; + private string _RebarSize = string.Empty; + private string _RebarGrade = string.Empty; + private ArrayList _RebarBendingRadius = new ArrayList(); + private int _RebarClass = new int(); + private double _RebarSpacing; + */ + #endregion + + #region Properties + private Model Model + { + get { return this._Model; } + set { this._Model = value; } + } + + private PluginData Data + { + get { return this._Data; } + set { this._Data = value; } + } + #endregion + + #region Constructor + public TeklaModelPlugin1(PluginData data) + { + Model = new Model(); + Data = data; + } + #endregion + + #region Overrides + public override List DefineInput() + { + // + // This is an example for selecting two points; change this to suit your needs. + // + List PointList = new List(); + Picker Picker = new Picker(); + ArrayList PickedPoints = Picker.PickPoints(Picker.PickPointEnum.PICK_TWO_POINTS); + + PointList.Add(new InputDefinition(PickedPoints)); + + return PointList; + } + + public override bool Run(List Input) + { + try + { + GetValuesFromDialog(); + + // + // This is an example for selecting two points; change this to suit your needs. + // + ArrayList Points = (ArrayList)Input[0].GetInput(); + Point StartPoint = Points[0] as Point; + Point EndPoint = Points[1] as Point; + + // + // Write your code here; better yet, create private methods and call them from here. + // + } + catch (Exception Exc) + { + MessageBox.Show(Exc.ToString()); + } + + return true; + } + #endregion + + #region Private methods + /// + /// Gets the values from the dialog and sets the default values if needed + /// + private void GetValuesFromDialog() + { + /* Some examples: + _RebarName = Data.RebarName; + _RebarSize = Data.RebarSize; + _RebarGrade = Data.RebarGrade; + + char[] Parameters = { ' ' }; + string[] Radiuses = Data.RebarBendingRadius.Split(Parameters, StringSplitOptions.RemoveEmptyEntries); + + foreach (string Item in Radiuses) + _RebarBendingRadius.Add(Convert.ToDouble(Item)); + + _RebarClass = Data.RebarClass; + _RebarSpacing = Data.RebarSpacing; + + if (IsDefaultValue(_RebarName)) + _RebarName = "REBAR"; + if (IsDefaultValue(_RebarSize)) + _RebarSize = "12"; + if (IsDefaultValue(_RebarGrade)) + _RebarGrade = "Undefined"; + if (_RebarBendingRadius.Count < 1) + _RebarBendingRadius.Add(30.00); + if (IsDefaultValue(_RebarClass) || _RebarClass <= 0) + _RebarClass = 99; + if (IsDefaultValue(_RebarSpacing) || _RebarSpacing <= 0) + _RebarSpacing = 200.0; + */ + } + + // Write your private methods here. + + #endregion + } +} diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..4a8ef50 --- /dev/null +++ b/Properties/AssemblyInfo.cs @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("TeklaModelPlugin1")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Tekla")] +[assembly: AssemblyProduct("Tekla Structures")] +[assembly: AssemblyCopyright("Copyright © Tekla 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("581baed8-6c93-4723-915b-715a6d9ce3fb")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/TeklaModelPlugin1.csproj b/TeklaModelPlugin1.csproj new file mode 100644 index 0000000..2238945 --- /dev/null +++ b/TeklaModelPlugin1.csproj @@ -0,0 +1,97 @@ + + + + 21.0 + Debug + AnyCPU + 8.0.50727 + 2.0 + {446EEA05-2797-4180-9AEE-AD34E311DC76} + Library + Properties + TeklaModelPlugin1 + TeklaModelPlugin1 + + + v4.0 + + + + + 2.0 + + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + ..\..\..\..\..\..\..\..\..\Program Files\Tekla Structures\$(TSVersionNumber)\nt\bin\plugins\Tekla.Structures.Plugins.dll + + + + + + Form + + + MainForm.cs + + + + + + Designer + MainForm.cs + + + + + + + \ No newline at end of file diff --git a/TeklaModelPlugin1.slnx b/TeklaModelPlugin1.slnx new file mode 100644 index 0000000..5b9df8c --- /dev/null +++ b/TeklaModelPlugin1.slnx @@ -0,0 +1,3 @@ + + +