diff --git a/Samples/Symbol Designer/README.md b/Samples/Symbol Designer/README.md
new file mode 100644
index 0000000..72fe3b6
--- /dev/null
+++ b/Samples/Symbol Designer/README.md
@@ -0,0 +1,16 @@
+# Symbol Designer sample
+
+This sample will help us to create new Symbols and can save them as a Symbol Palatte and used them in your application.
+
+__*Documentation*__: https://help.syncfusion.com/windowsforms/diagram/getting-started#symbol-designer
+
+## Project pre-requisites
+To run this application, you need to have the below two in your system
+
+* [Visual Studio 2019](https://www.visualstudio.com/wpf-vs)
+* [Syncfusion.Diagram.Windows](https://www.nuget.org/packages/Syncfusion.Diagram.Windows/) nuget package. To install the package using NuGet Package Manager, refer this [link](https://docs.microsoft.com/en-us/nuget/quickstart/install-and-use-a-package-in-visual-studio#nuget-package-manager).
+* [Syncfusion.Diagram.Utility.Windows](https://www.nuget.org/packages/Syncfusion.Diagram.Utility.Windows/) nuget package. To install the package using NuGet Package Manager, refer this [link](https://docs.microsoft.com/en-us/nuget/quickstart/install-and-use-a-package-in-visual-studio#nuget-package-manager).
+* [Syncfusion.Tools.Windows](https://www.nuget.org/packages/Syncfusion.Tools.Windows/) nuget package. To install the package using NuGet Package Manager, refer this [link](https://docs.microsoft.com/en-us/nuget/quickstart/install-and-use-a-package-in-visual-studio#nuget-package-manager).
+
+## Deploying and running the sample
+* To debug the sample and then run it, press F5 or select Debug > Start Debugging. To run the sample without debugging, press Ctrl+F5 or selectDebug > Start Without Debugging.
diff --git a/Samples/Symbol Designer/Symbol Designer/About.cs b/Samples/Symbol Designer/Symbol Designer/About.cs
new file mode 100644
index 0000000..8788ace
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/About.cs
@@ -0,0 +1,120 @@
+#region Copyright Syncfusion Inc. 2001 - 2009
+//
+// Copyright Syncfusion Inc. 2001 - 2009. All rights reserved.
+//
+// Use of this code is subject to the terms of our license.
+// A copy of the current license can be obtained at any time by e-mailing
+// licensing@syncfusion.com. Any infringement will be prosecuted under
+// applicable laws.
+//
+#endregion
+
+using System;
+using System.Drawing;
+using System.Collections;
+using System.ComponentModel;
+using System.Reflection;
+using System.Windows.Forms;
+
+namespace Syncfusion.Windows.Forms.Diagram.Samples.DiagramTool
+{
+ ///
+ /// Summary description for About.
+ ///
+ public class About : Office2007Form
+ {
+ private System.Windows.Forms.Label label1;
+ private ButtonAdv btnOk;
+ ///
+ /// Required designer variable.
+ ///
+ private System.ComponentModel.Container components = null;
+
+ public About()
+ {
+ //
+ // Required for Windows Form Designer support
+ //
+ InitializeComponent();
+ this.ColorScheme = Office2007Theme.Silver;
+
+ //
+ // TODO: Add any constructor code after InitializeComponent call
+ //
+ }
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ protected override void Dispose( bool disposing )
+ {
+ if( disposing )
+ {
+ if(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(About));
+ this.label1 = new System.Windows.Forms.Label();
+ this.btnOk = new Syncfusion.Windows.Forms.ButtonAdv();
+ this.SuspendLayout();
+ //
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.BackColor = System.Drawing.Color.Transparent;
+ this.label1.Location = new System.Drawing.Point(18, 93);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(268, 104);
+ this.label1.TabIndex = 0;
+ this.label1.Text = resources.GetString("label1.Text");
+ //
+ // btnOk
+ //
+ this.btnOk.Appearance = Syncfusion.Windows.Forms.ButtonAppearance.Office2007;
+ this.btnOk.Location = new System.Drawing.Point(228, 226);
+ this.btnOk.Name = "btnOk";
+ this.btnOk.Size = new System.Drawing.Size(75, 23);
+ this.btnOk.TabIndex = 1;
+ this.btnOk.Text = "OK";
+ this.btnOk.UseVisualStyle = true;
+ this.btnOk.Click += new System.EventHandler(this.btnOk_Click);
+ //
+ // About
+ //
+ this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+ this.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("$this.BackgroundImage")));
+ this.ClientSize = new System.Drawing.Size(314, 256);
+ this.Controls.Add(this.btnOk);
+ this.Controls.Add(this.label1);
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "About";
+ this.ShowInTaskbar = false;
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+ this.Text = "About";
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+ #endregion
+
+ private void btnOk_Click(object sender, System.EventArgs e)
+ {
+ this.Close();
+ }
+ }
+}
diff --git a/Samples/Symbol Designer/Symbol Designer/About.resx b/Samples/Symbol Designer/Symbol Designer/About.resx
new file mode 100644
index 0000000..eddf6ff
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/About.resx
@@ -0,0 +1,875 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ Essential Diagram ships with a Symbol Designer Utility,
+which facilitates the creation of custom symbols.
+These symbols can be organized in various categoies
+for ease of use. Furthermore, symbols can also imported
+in the form of Microsoft Visio stencils files(*.vss files),
+which can be converted into Essential Diagram symbol
+palettes. These symbol palette can also be edited and
+customized according to the needs of the user.
+
+
+
+
+ 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
+ rPwfjbSY/hXOPeMAAAAASUVORK5CYII=
+
+
+
+
+ AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAD///8A////AP///wD///8AeXl5/////wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wDPk2X/z5Nl/8+TZf/Pk2X/z5Nl/////wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8Az5Nl/8+TZf/Pk2X/z5Nl/8+TZf////8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AM+TZf/Pk2X/z5Nl/8+TZf/Pk2X/////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AHl5ef////8A////AP///wD///8A////AM+T
+ Zf/Pk2X/z5Nl/8+TZf/Pk2X/////AP///wD///8A////AP///wB5eXn/////AP///wD///8A////AP//
+ /wDPk2X/z5Nl/8+TZf/Pk2X/z5Nl/////wD///8A////AP///wD///8AeXl5/////wD///8A////AP//
+ /wD///8Az5Nl/8+TZf/Pk2X/z5Nl/8+TZf////8A////AP///wATY97/E2Pe/xNj3v8TY97/E2Pe////
+ /wD///8A////AP///wD///8AeXl5/////wD///8A////AP///wD///8AE2Pe/xNj3v8TY97/E2Pe/xNj
+ 3v95eXn/eXl5/3l5ef95eXn/eXl5/3l5ef////8A////AP///wD///8A////ABNj3v8TY97/E2Pe/xNj
+ 3v8TY97/////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AHl5
+ ef////8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wB5eXn/////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AM+T
+ Zf/Pk2X/z5Nl/8+TZf/Pk2X/////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wDPk2X/z5Nl/8+TZf/Pk2X/z5Nl/////wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8Az5Nl/8+TZf/Pk2X/z5Nl/8+TZf////8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP//
+ /wD///8A9/8AAMH/AADB/wAAwf8AAPfBAAD3wQAA98EAAMH3AADABwAAwf8AAPf/AAD3/wAAwf8AAMH/
+ AADB/wAA//8AAA==
+
+
+
\ No newline at end of file
diff --git a/Samples/Symbol Designer/Symbol Designer/App.ico b/Samples/Symbol Designer/Symbol Designer/App.ico
new file mode 100644
index 0000000..b8bb494
Binary files /dev/null and b/Samples/Symbol Designer/Symbol Designer/App.ico differ
diff --git a/Samples/Symbol Designer/Symbol Designer/AssemblyInfo.cs b/Samples/Symbol Designer/Symbol Designer/AssemblyInfo.cs
new file mode 100644
index 0000000..e3ee353
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/AssemblyInfo.cs
@@ -0,0 +1,85 @@
+#region Copyright Syncfusion Inc. 2001 - 2009
+//
+// Copyright Syncfusion Inc. 2001 - 2009. All rights reserved.
+//
+// Use of this code is subject to the terms of our license.
+// A copy of the current license can be obtained at any time by e-mailing
+// licensing@syncfusion.com. Re-distribution in any form is strictly
+// prohibited. Any infringement will be prosecuted under applicable laws.
+//
+#endregion
+
+using System.Reflection;
+using System.Runtime.CompilerServices;
+
+//
+// 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("Syncfusion.SymbolDesigner")]
+#if DEBUG
+[assembly: AssemblyDescription("Debug")]
+[assembly: AssemblyConfiguration("DEBUG")]
+#else
+[assembly: AssemblyDescription("RELEASE")]
+[assembly: AssemblyConfiguration("RELEASE")]
+#endif
+[assembly: AssemblyCompany("Syncfusion Inc.")]
+[assembly: AssemblyProduct("Syncfusion Essential Diagram")]
+[assembly: AssemblyCopyright("Copyright © Syncfusion Inc. 2001 - 2009")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+//
+// 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:
+
+#if SyncfusionFramework1_0
+[assembly: AssemblyVersion("5.0.0.0")]
+#elif SyncfusionFramework1_1
+[assembly: AssemblyVersion("5.1.0.0")]
+#elif SyncfusionFramework2_0
+[assembly: AssemblyVersion("5.2.0.0")]
+#else
+[assembly: AssemblyVersion("5.0.0.0")]
+#endif
+
+//
+// In order to sign your assembly you must specify a key to use. Refer to the
+// Microsoft .NET Framework documentation for more information on assembly signing.
+//
+// Use the attributes below to control which key is used for signing.
+//
+// Notes:
+// (*) If no key is specified, the assembly is not signed.
+// (*) KeyName refers to a key that has been installed in the Crypto Service
+// Provider (CSP) on your machine. KeyFile refers to a file which contains
+// a key.
+// (*) If the KeyFile and the KeyName values are both specified, the
+// following processing occurs:
+// (1) If the KeyName can be found in the CSP, that key is used.
+// (2) If the KeyName does not exist and the KeyFile does exist, the key
+// in the KeyFile is installed into the CSP and used.
+// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
+// When specifying the KeyFile, the location of the KeyFile should be
+// relative to the project output directory which is
+// %Project Directory%\obj\. For example, if your KeyFile is
+// located in the project directory, you would specify the AssemblyKeyFile
+// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
+// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
+// documentation for more information on this.
+//
+
+#if SyncfusionFramework1_0 || SyncfusionFramework1_1
+[assembly: AssemblyDelaySign(false)]
+[assembly: AssemblyKeyFile("")]
+[assembly: AssemblyKeyName("")]
+#endif
\ No newline at end of file
diff --git a/Samples/Symbol Designer/Symbol Designer/DiagramForm.cs b/Samples/Symbol Designer/Symbol Designer/DiagramForm.cs
new file mode 100644
index 0000000..86634f9
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/DiagramForm.cs
@@ -0,0 +1,2799 @@
+#region Copyright Syncfusion Inc. 2001 - 2009
+//
+// Copyright Syncfusion Inc. 2001 - 2009. All rights reserved.
+//
+// Use of this code is subject to the terms of our license.
+// A copy of the current license can be obtained at any time by e-mailing
+// licensing@syncfusion.com. Any infringement will be prosecuted under
+// applicable laws.
+//
+#endregion
+
+using System;
+using System.Drawing;
+using System.Collections;
+using System.ComponentModel;
+using System.Runtime.Serialization.Formatters;
+using System.Runtime.Serialization.Formatters.Binary;
+using System.Windows.Forms;
+using System.IO;
+using Syncfusion.Windows.Forms.Diagram.Controls;
+using Syncfusion.Windows.Forms.Diagram;
+using Syncfusion.Windows.Forms.Tools.XPMenus;
+using System.Drawing.Drawing2D;
+
+namespace Syncfusion.Windows.Forms.Diagram.Samples.DiagramTool
+{
+ ///
+ /// Summary description for DiagramForm.
+ ///
+ public class DiagramForm
+ : Office2007Form
+ {
+ #region Class constants
+ private const string DEF_MSG_PROMPT_SAVE = "You have made changes to the symbol. Would you like to save your changes?";
+ #endregion
+
+ #region Class members
+ ///
+ /// Store value indicates save changes.
+ ///
+ private bool m_saveChanges;
+ #endregion
+
+ #region Form controls
+ private Controls.Diagram diagramComponent;
+ private Model document;
+ public ChildFrameBarManager childFrameBarManager;
+ public ImageList smBarItemImages;
+ public BarItem barItemSelect;
+ public BarItem barItemPort;
+ public BarItem barItemLine;
+ public BarItem barItemRectangle;
+ public BarItem barItemEllipse;
+ public BarItem barItemText;
+ public BarItem barItemPolyline;
+ public BarItem barItemPolygon;
+ public BarItem barItemSpline;
+ public BarItem barItemCurve;
+ public BarItem barItemClosedCurve;
+ public BarItem barItemImage;
+ public BarItem barItemCircularArc;
+ public BarItem barItemSemiCircle;
+ public BarItem barItemGroup;
+ public BarItem barItemUngroup;
+ public BarItem barItemBringToFront;
+ public BarItem barItemSendToBack;
+ public BarItem barItemBringForward;
+ public BarItem barItemSendBackward;
+ public BarItem barItemNudgeUp;
+ public BarItem barItemNudgeDown;
+ public BarItem barItemNudgeLeft;
+ public BarItem barItemNudgeRight;
+ public BarItem barItemRotateLeft;
+ public BarItem barItemRotateRight;
+ public BarItem barItemFlipVertical;
+ public BarItem barItemFlipHorizontal;
+ public Bar barDrawing;
+ public Bar barNode;
+ public Bar barNudge;
+ public Bar barRotate;
+ public BarItem barItemPan;
+ public Bar bar1;
+ private IContainer components;
+ public BarItem barItemShowGrid;
+ public BarItem barItemSnapToGrid;
+ public BarItem barItemZoom;
+ public ComboBoxBarItem comboBoxBarItemMagnification;
+ public BarItem barItemOrthogonalLink;
+ public BarItem barItemOrgLineLink;
+ public BarItem barItemLink;
+ public Bar barLinks;
+ public BarItem barItemDirectedLink;
+ public BarItem barItemRichText;
+ public BarItem barItemRoundRect;
+ public BarItem barItemBoldText;
+ public BarItem barItemAlignTextLeft;
+ public BarItem barItemCenterText;
+ public BarItem barItemAlignTextRight;
+ public ComboBoxBarItem comboBoxBarItemFontFamily;
+ public ComboBoxBarItem comboBoxBarItemPointSize;
+ public Bar bar2;
+ public BarItem barItemItalicText;
+ public BarItem barItemUnderlineText;
+ public BarItem barItemTextColor;
+ public BarItem barItemSuperscript;
+ public BarItem barItemSubscript;
+ public BarItem barItemUpper;
+ public BarItem barItemLower;
+ public string fileName;
+ public BarItem barItemStrikeoutText;
+ public BarItem barItemBezier;
+ public BarItem barItemPenciltool;
+ public Bar barLayout;
+ public Bar barAlign;
+ public BarItem barItemSpaceAcross;
+ public BarItem barItemSpaceDown;
+ public BarItem barItemSameWidth;
+ public BarItem barItemSameHeight;
+ public BarItem barItemSameSize;
+ public BarItem barItemAlignLeft;
+ public BarItem barItemAlignCenter;
+ public BarItem barItemAlignRight;
+ public BarItem barItemAlignTop;
+ public BarItem barItemAlignMiddle;
+ public BarItem barItemAlignBottom;
+ public ContextMenu contextMenu1;
+ public MenuItem mnuAlgn;
+ public MenuItem mnuFlip;
+ public MenuItem mnuAlgnLeft;
+ public MenuItem mnuAlgnCenter;
+ public MenuItem mnuAlgnRight;
+ public MenuItem mnuAlgnTop;
+ public MenuItem mnuAlgnMiddle;
+ public MenuItem mnuAlgnBottom;
+ public MenuItem mnuGrouping;
+ public MenuItem mnuOrder;
+ public MenuItem mnuRotate;
+ public MenuItem mnuResize;
+ public MenuItem mnuFlipHoriz;
+ public MenuItem mnuFlipVert;
+ public MenuItem mnuFlipBoth;
+ public MenuItem mnuGGroup;
+ public MenuItem mnuOrdBTF;
+ public MenuItem mnuOrdBF;
+ public MenuItem mnuOrdSB;
+ public MenuItem mnuOrdSTB;
+ public MenuItem mnuLayout;
+ public MenuItem mnuRtClockwise;
+ public MenuItem mnuRtCClockwise;
+ public MenuItem mnuRsSameWidth;
+ public MenuItem mnuRsSameHeight;
+ public MenuItem mnuRsSameSize;
+ public MenuItem mnuRsSpaseAcross;
+ public MenuItem mnuRsSpaceDown;
+ public MenuItem mnuGUngroup;
+ public BarItem m_biSelectedAlignment = null;
+ #endregion
+
+ private BarItem CurrentAlignment
+ {
+ get
+ {
+ return m_biSelectedAlignment;
+ }
+ set
+ {
+ if( m_biSelectedAlignment != value )
+ {
+ // Uncheck current.
+ if( m_biSelectedAlignment != null )
+ m_biSelectedAlignment.Checked = false;
+
+ // Set new value
+ m_biSelectedAlignment = value;
+
+ // Check new.
+ if( m_biSelectedAlignment != null )
+ m_biSelectedAlignment.Checked = true;
+ }
+ }
+ }
+ public DiagramForm()
+ {
+ //
+ // Required for Windows Form Designer support
+ //
+ InitializeComponent();
+ this.ColorScheme = Office2007Theme.Silver;
+ this.diagramComponent.Model = this.document;
+ diagramComponent.Controller.Guides.LineStyle.LineColor = Color.FromArgb(255, 153, 51);
+ this.diagramComponent.View.Grid.GridStyle = GridStyle.Line;
+ this.diagramComponent.View.Grid.Color = System.Drawing.Color.LightGray;
+ this.diagramComponent.View.Grid.HorizontalSpacing = 20;
+ this.diagramComponent.View.Grid.VerticalSpacing = 20;
+
+ //
+ // Wire up event handlers to canvas
+ //
+ ( ( DiagramViewerEventSink )diagramComponent.EventSink ).ToolActivated += new ToolEventHandler(DiagramForm_ToolActivated);
+ // Setup the Diagram control for scripting capability
+ // Load up names of fonts that can be selected
+ this.LoadFontSelections();
+
+ // Feedback with TextFormatting toolbar
+ this.diagramComponent.Controller.TextEditor.FormatChanged += new EventHandler( FormatChanged );
+ Application.Idle += new EventHandler(Application_Idle);
+ }
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ protected override void Dispose( bool disposing )
+ {
+ if( disposing )
+ {
+ if(components != null)
+ {
+ components.Dispose();
+ }
+ }
+ base.Dispose( disposing );
+ }
+
+ public Controls.Diagram Diagram
+ {
+ get
+ {
+ return this.diagramComponent;
+ }
+ }
+
+ public void OpenFile(string strFileName)
+ {
+ FileStream iStream = new FileStream( strFileName, FileMode.Open );
+ if( iStream != null )
+ {
+ try
+ {
+ diagramComponent.LoadBinary( iStream );
+ // Load the DiagramScript object from the serialized stream
+ BinaryFormatter formatter = new BinaryFormatter();
+ formatter.Binder = Syncfusion.Runtime.Serialization.AppStateSerializer.CustomBinder;
+ AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(DiagramBaseAssembly.AssemblyResolver);
+ formatter.AssemblyFormat = FormatterAssemblyStyle.Simple;
+ }
+ catch(Exception ex)
+ {
+ MessageBox.Show( "Serialization error - " + ex.Message );
+ }
+ finally
+ {
+ iStream.Close();
+ }
+ this.FileName = strFileName;
+ }
+ }
+
+ public void SaveFile()
+ {
+ if (!this.HasFileName)
+ {
+ throw new InvalidOperationException();
+ }
+
+ this.SaveAsFile(this.fileName);
+ }
+
+ public void SaveAsFile(string strFileName)
+ {
+ FileStream oStream;
+
+ try
+ {
+ oStream = new FileStream( strFileName, FileMode.Create );
+ }
+ catch (Exception ex)
+ {
+ oStream = null; // just to be sure
+ MessageBox.Show( "Error opening " + strFileName + " - " + ex.Message );
+ }
+
+ if (oStream != null)
+ {
+ try
+ {
+ diagramComponent.SaveBinary( oStream );
+ // Save the DiagramScript object to the serialization stream along with the diagram document
+ BinaryFormatter formatter = new BinaryFormatter();
+ formatter.Binder = Syncfusion.Runtime.Serialization.AppStateSerializer.CustomBinder;
+ formatter.AssemblyFormat = FormatterAssemblyStyle.Simple;
+
+ this.FileName = strFileName;
+ }
+ catch (Exception ex)
+ {
+ MessageBox.Show("Serialization error - " + ex.Message);
+ }
+ finally
+ {
+ oStream.Close();
+ }
+ }
+ }
+
+ public string FileName
+ {
+ get
+ {
+ return this.fileName;
+ }
+ set
+ {
+ this.fileName = value;
+ this.Text = Path.GetFileNameWithoutExtension(this.fileName);
+ }
+ }
+
+ public bool HasFileName
+ {
+ get
+ {
+ return (this.fileName != null && this.fileName.Length > 0);
+ }
+ }
+
+ ///
+ /// Gets value indicates that need save changes to palette symbol palette belong to.
+ ///
+ public bool SaveChanges
+ {
+ get
+ {
+ return m_saveChanges;
+ }
+ }
+ protected PropertyEditor PropertyEditor
+ {
+ get
+ {
+ if (this.MdiParent != null)
+ {
+ MainForm mainForm = this.MdiParent as MainForm;
+ if (mainForm != null)
+ {
+ return mainForm.PropertyEditor;
+ }
+ }
+ return null;
+ }
+ }
+
+ #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()
+ {
+ this.components = new System.ComponentModel.Container();
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DiagramForm));
+ this.diagramComponent = new Syncfusion.Windows.Forms.Diagram.Controls.Diagram(this.components);
+ this.contextMenu1 = new System.Windows.Forms.ContextMenu();
+ this.mnuAlgn = new System.Windows.Forms.MenuItem();
+ this.mnuAlgnLeft = new System.Windows.Forms.MenuItem();
+ this.mnuAlgnCenter = new System.Windows.Forms.MenuItem();
+ this.mnuAlgnRight = new System.Windows.Forms.MenuItem();
+ this.mnuAlgnTop = new System.Windows.Forms.MenuItem();
+ this.mnuAlgnMiddle = new System.Windows.Forms.MenuItem();
+ this.mnuAlgnBottom = new System.Windows.Forms.MenuItem();
+ this.mnuFlip = new System.Windows.Forms.MenuItem();
+ this.mnuFlipHoriz = new System.Windows.Forms.MenuItem();
+ this.mnuFlipVert = new System.Windows.Forms.MenuItem();
+ this.mnuFlipBoth = new System.Windows.Forms.MenuItem();
+ this.mnuGrouping = new System.Windows.Forms.MenuItem();
+ this.mnuGGroup = new System.Windows.Forms.MenuItem();
+ this.mnuGUngroup = new System.Windows.Forms.MenuItem();
+ this.mnuOrder = new System.Windows.Forms.MenuItem();
+ this.mnuOrdBTF = new System.Windows.Forms.MenuItem();
+ this.mnuOrdBF = new System.Windows.Forms.MenuItem();
+ this.mnuOrdSB = new System.Windows.Forms.MenuItem();
+ this.mnuOrdSTB = new System.Windows.Forms.MenuItem();
+ this.mnuRotate = new System.Windows.Forms.MenuItem();
+ this.mnuRtClockwise = new System.Windows.Forms.MenuItem();
+ this.mnuRtCClockwise = new System.Windows.Forms.MenuItem();
+ this.mnuResize = new System.Windows.Forms.MenuItem();
+ this.mnuRsSameWidth = new System.Windows.Forms.MenuItem();
+ this.mnuRsSameHeight = new System.Windows.Forms.MenuItem();
+ this.mnuRsSameSize = new System.Windows.Forms.MenuItem();
+ this.mnuRsSpaseAcross = new System.Windows.Forms.MenuItem();
+ this.mnuRsSpaceDown = new System.Windows.Forms.MenuItem();
+ this.mnuLayout = new System.Windows.Forms.MenuItem();
+ this.document = new Syncfusion.Windows.Forms.Diagram.Model(this.components);
+ this.childFrameBarManager = new Syncfusion.Windows.Forms.Tools.XPMenus.ChildFrameBarManager(this);
+ this.barDrawing = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.childFrameBarManager, "Drawing");
+ this.barItemSelect = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.smBarItemImages = new System.Windows.Forms.ImageList(this.components);
+ this.barItemPort = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemLine = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemPolyline = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemRectangle = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemRoundRect = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemEllipse = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemPolygon = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemCurve = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemClosedCurve = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemSpline = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemBezier = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemPenciltool = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemText = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemRichText = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemImage = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemCircularArc = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemSemiCircle = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barNode = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.childFrameBarManager, "Node");
+ this.barItemGroup = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemUngroup = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemBringToFront = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemSendToBack = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemBringForward = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemSendBackward = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barNudge = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.childFrameBarManager, "Nudge");
+ this.barItemNudgeUp = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemNudgeDown = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemNudgeLeft = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemNudgeRight = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barLinks = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.childFrameBarManager, "Links");
+ this.barItemLink = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemOrthogonalLink = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemOrgLineLink = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemDirectedLink = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barRotate = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.childFrameBarManager, "Rotate");
+ this.barItemRotateLeft = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemRotateRight = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemFlipVertical = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemFlipHorizontal = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.bar1 = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.childFrameBarManager, "View");
+ this.barItemPan = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemShowGrid = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemSnapToGrid = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemZoom = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.comboBoxBarItemMagnification = new Syncfusion.Windows.Forms.Tools.XPMenus.ComboBoxBarItem();
+ this.bar2 = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.childFrameBarManager, "Text Formatting");
+ this.comboBoxBarItemFontFamily = new Syncfusion.Windows.Forms.Tools.XPMenus.ComboBoxBarItem();
+ this.comboBoxBarItemPointSize = new Syncfusion.Windows.Forms.Tools.XPMenus.ComboBoxBarItem();
+ this.barItemBoldText = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemItalicText = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemUnderlineText = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemStrikeoutText = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignTextLeft = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemCenterText = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignTextRight = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemTextColor = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemSubscript = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemSuperscript = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemLower = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemUpper = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barLayout = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.childFrameBarManager, "Layout");
+ this.barItemSpaceAcross = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemSpaceDown = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemSameWidth = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemSameHeight = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemSameSize = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barAlign = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.childFrameBarManager, "Align");
+ this.barItemAlignLeft = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignCenter = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignRight = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignTop = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignMiddle = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignBottom = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ ((System.ComponentModel.ISupportInitialize)(this.diagramComponent)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.document)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.childFrameBarManager)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.comboBoxBarItemMagnification)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.comboBoxBarItemFontFamily)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.comboBoxBarItemPointSize)).BeginInit();
+ this.SuspendLayout();
+ //
+ // diagramComponent
+ //
+ this.diagramComponent.ContextMenu = this.contextMenu1;
+ this.diagramComponent.Controller.PasteOffset = new System.Drawing.SizeF(10F, 10F);
+ this.diagramComponent.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.diagramComponent.GridOfficeScrollBars = Syncfusion.Windows.Forms.OfficeScrollBars.Office2007;
+ this.diagramComponent.LayoutManager = null;
+ this.diagramComponent.Location = new System.Drawing.Point(0, 0);
+ this.diagramComponent.Model = this.document;
+ this.diagramComponent.Name = "diagramComponent";
+ this.diagramComponent.Office2007ScrollBars = true;
+ this.diagramComponent.ScrollVirtualBounds = ((System.Drawing.RectangleF)(resources.GetObject("diagramComponent.ScrollVirtualBounds")));
+ this.diagramComponent.Size = new System.Drawing.Size(544, 414);
+ this.diagramComponent.SmartSizeBox = false;
+ this.diagramComponent.TabIndex = 4;
+ //
+ //
+ //
+ this.diagramComponent.View.ClientRectangle = new System.Drawing.Rectangle(0, 0, 0, 0);
+ this.diagramComponent.View.Controller = this.diagramComponent.Controller;
+ this.diagramComponent.View.Grid.MinPixelSpacing = 4F;
+ this.diagramComponent.View.PasteOffsetX = 0;
+ this.diagramComponent.View.PasteOffsetY = 0;
+ this.diagramComponent.View.ScrollVirtualBounds = ((System.Drawing.RectangleF)(resources.GetObject("resource.ScrollVirtualBounds")));
+ this.diagramComponent.View.ZoomType = Syncfusion.Windows.Forms.Diagram.ZoomType.Center;
+ //
+ // contextMenu1
+ //
+ this.contextMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.mnuAlgn,
+ this.mnuFlip,
+ this.mnuGrouping,
+ this.mnuOrder,
+ this.mnuRotate,
+ this.mnuResize,
+ this.mnuLayout});
+ //
+ // mnuAlgn
+ //
+ this.mnuAlgn.Index = 0;
+ this.mnuAlgn.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.mnuAlgnLeft,
+ this.mnuAlgnCenter,
+ this.mnuAlgnRight,
+ this.mnuAlgnTop,
+ this.mnuAlgnMiddle,
+ this.mnuAlgnBottom});
+ this.mnuAlgn.Text = "Align";
+ //
+ // mnuAlgnLeft
+ //
+ this.mnuAlgnLeft.Index = 0;
+ this.mnuAlgnLeft.Text = "Align Left";
+ this.mnuAlgnLeft.Click += new System.EventHandler(this.barItemAlignLeft_Click);
+ //
+ // mnuAlgnCenter
+ //
+ this.mnuAlgnCenter.Index = 1;
+ this.mnuAlgnCenter.Text = "Align Center";
+ this.mnuAlgnCenter.Click += new System.EventHandler(this.barItemAlignCenter_Click);
+ //
+ // mnuAlgnRight
+ //
+ this.mnuAlgnRight.Index = 2;
+ this.mnuAlgnRight.Text = "Align Right";
+ this.mnuAlgnRight.Click += new System.EventHandler(this.barItemAlignRight_Click);
+ //
+ // mnuAlgnTop
+ //
+ this.mnuAlgnTop.Index = 3;
+ this.mnuAlgnTop.Text = "Align Top";
+ this.mnuAlgnTop.Click += new System.EventHandler(this.barItemAlignTop_Click);
+ //
+ // mnuAlgnMiddle
+ //
+ this.mnuAlgnMiddle.Index = 4;
+ this.mnuAlgnMiddle.Text = "Align Middle";
+ this.mnuAlgnMiddle.Click += new System.EventHandler(this.barItemAlignMiddle_Click);
+ //
+ // mnuAlgnBottom
+ //
+ this.mnuAlgnBottom.Index = 5;
+ this.mnuAlgnBottom.Text = "Align Bottom";
+ this.mnuAlgnBottom.Click += new System.EventHandler(this.barItemAlignBottom_Click);
+ //
+ // mnuFlip
+ //
+ this.mnuFlip.Index = 1;
+ this.mnuFlip.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.mnuFlipHoriz,
+ this.mnuFlipVert,
+ this.mnuFlipBoth});
+ this.mnuFlip.Text = "Flip";
+ //
+ // mnuFlipHoriz
+ //
+ this.mnuFlipHoriz.Index = 0;
+ this.mnuFlipHoriz.Text = "Flip Horizontally";
+ this.mnuFlipHoriz.Click += new System.EventHandler(this.barItemFlipHorizontal_Click);
+ //
+ // mnuFlipVert
+ //
+ this.mnuFlipVert.Index = 1;
+ this.mnuFlipVert.Text = "Flip Vertically";
+ this.mnuFlipVert.Click += new System.EventHandler(this.barItemFlipVertical_Click);
+ //
+ // mnuFlipBoth
+ //
+ this.mnuFlipBoth.Index = 2;
+ this.mnuFlipBoth.Text = "Flip Both";
+ this.mnuFlipBoth.Click += new System.EventHandler(this.mnuFlipBoth_Click);
+ //
+ // mnuGrouping
+ //
+ this.mnuGrouping.Index = 2;
+ this.mnuGrouping.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.mnuGGroup,
+ this.mnuGUngroup});
+ this.mnuGrouping.Text = "Grouping";
+ //
+ // mnuGGroup
+ //
+ this.mnuGGroup.Index = 0;
+ this.mnuGGroup.Text = "Group";
+ this.mnuGGroup.Click += new System.EventHandler(this.barItemGroup_Click);
+ //
+ // mnuGUngroup
+ //
+ this.mnuGUngroup.Index = 1;
+ this.mnuGUngroup.Text = "Ungroup";
+ this.mnuGUngroup.Click += new System.EventHandler(this.barItemUngroup_Click);
+ //
+ // mnuOrder
+ //
+ this.mnuOrder.Index = 3;
+ this.mnuOrder.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.mnuOrdBTF,
+ this.mnuOrdBF,
+ this.mnuOrdSB,
+ this.mnuOrdSTB});
+ this.mnuOrder.Text = "Order";
+ //
+ // mnuOrdBTF
+ //
+ this.mnuOrdBTF.Index = 0;
+ this.mnuOrdBTF.Text = "Bring To Front";
+ this.mnuOrdBTF.Click += new System.EventHandler(this.barItemBringToFront_Click);
+ //
+ // mnuOrdBF
+ //
+ this.mnuOrdBF.Index = 1;
+ this.mnuOrdBF.Text = "Bring Forward";
+ this.mnuOrdBF.Click += new System.EventHandler(this.barItemBringForward_Click);
+ //
+ // mnuOrdSB
+ //
+ this.mnuOrdSB.Index = 2;
+ this.mnuOrdSB.Text = "Send Backward";
+ this.mnuOrdSB.Click += new System.EventHandler(this.barItemSendBackward_Click);
+ //
+ // mnuOrdSTB
+ //
+ this.mnuOrdSTB.Index = 3;
+ this.mnuOrdSTB.Text = "Send To Back";
+ this.mnuOrdSTB.Click += new System.EventHandler(this.barItemSendToBack_Click);
+ //
+ // mnuRotate
+ //
+ this.mnuRotate.Index = 4;
+ this.mnuRotate.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.mnuRtClockwise,
+ this.mnuRtCClockwise});
+ this.mnuRotate.Text = "Rotate";
+ //
+ // mnuRtClockwise
+ //
+ this.mnuRtClockwise.Index = 0;
+ this.mnuRtClockwise.Text = "Rotate 90 clockwise";
+ this.mnuRtClockwise.Click += new System.EventHandler(this.barItemRotateRight_Click);
+ //
+ // mnuRtCClockwise
+ //
+ this.mnuRtCClockwise.Index = 1;
+ this.mnuRtCClockwise.Text = "Rotate 90 counter-clockwise";
+ this.mnuRtCClockwise.Click += new System.EventHandler(this.barItemRotateLeft_Click);
+ //
+ // mnuResize
+ //
+ this.mnuResize.Index = 5;
+ this.mnuResize.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.mnuRsSameWidth,
+ this.mnuRsSameHeight,
+ this.mnuRsSameSize,
+ this.mnuRsSpaseAcross,
+ this.mnuRsSpaceDown});
+ this.mnuResize.Text = "Resize";
+ //
+ // mnuRsSameWidth
+ //
+ this.mnuRsSameWidth.Index = 0;
+ this.mnuRsSameWidth.Text = "Same Width";
+ this.mnuRsSameWidth.Click += new System.EventHandler(this.barItemSameWidth_Click);
+ //
+ // mnuRsSameHeight
+ //
+ this.mnuRsSameHeight.Index = 1;
+ this.mnuRsSameHeight.Text = "Same Height";
+ this.mnuRsSameHeight.Click += new System.EventHandler(this.barItemSameHeight_Click);
+ //
+ // mnuRsSameSize
+ //
+ this.mnuRsSameSize.Index = 2;
+ this.mnuRsSameSize.Text = "Same Size";
+ this.mnuRsSameSize.Click += new System.EventHandler(this.barItemSameSize_Click);
+ //
+ // mnuRsSpaseAcross
+ //
+ this.mnuRsSpaseAcross.Index = 3;
+ this.mnuRsSpaseAcross.Text = "Space Across";
+ this.mnuRsSpaseAcross.Click += new System.EventHandler(this.barItemSpaceAcross_Click);
+ //
+ // mnuRsSpaceDown
+ //
+ this.mnuRsSpaceDown.Index = 4;
+ this.mnuRsSpaceDown.Text = "Space Down";
+ this.mnuRsSpaceDown.Click += new System.EventHandler(this.barItemSpaceDown_Click);
+ //
+ // mnuLayout
+ //
+ this.mnuLayout.Index = 6;
+ this.mnuLayout.Text = "Layout nodes";
+ this.mnuLayout.Click += new System.EventHandler(this.mnuLayout_Click);
+ //
+ // document
+ //
+ this.document.BackgroundStyle.PathBrushStyle = Syncfusion.Windows.Forms.Diagram.PathGradientBrushStyle.RectangleCenter;
+ this.document.DocumentScale.DisplayName = "No Scale";
+ this.document.DocumentScale.Height = 1F;
+ this.document.DocumentScale.Width = 1F;
+ this.document.DocumentSize.Height = 1169F;
+ this.document.DocumentSize.Width = 827F;
+ this.document.LineStyle.DashPattern = null;
+ this.document.LineStyle.LineColor = System.Drawing.Color.Black;
+ this.document.LogicalSize = new System.Drawing.SizeF(827F, 1169F);
+ this.document.ShadowStyle.Color = System.Drawing.Color.DimGray;
+ this.document.ShadowStyle.ColorAlphaFactor = 255;
+ this.document.ShadowStyle.ForeColor = System.Drawing.Color.DimGray;
+ this.document.ShadowStyle.ForeColorAlphaFactor = 255;
+ //
+ // childFrameBarManager
+ //
+ this.childFrameBarManager.BarPositionInfo = ((System.IO.MemoryStream)(resources.GetObject("childFrameBarManager.BarPositionInfo")));
+ this.childFrameBarManager.Bars.Add(this.barDrawing);
+ this.childFrameBarManager.Bars.Add(this.barNode);
+ this.childFrameBarManager.Bars.Add(this.barNudge);
+ this.childFrameBarManager.Bars.Add(this.barLinks);
+ this.childFrameBarManager.Bars.Add(this.barRotate);
+ this.childFrameBarManager.Bars.Add(this.bar1);
+ this.childFrameBarManager.Bars.Add(this.bar2);
+ this.childFrameBarManager.Bars.Add(this.barLayout);
+ this.childFrameBarManager.Bars.Add(this.barAlign);
+ this.childFrameBarManager.Categories.Add("Drawing Tools");
+ this.childFrameBarManager.Categories.Add("Node Tools");
+ this.childFrameBarManager.Categories.Add("Connection Tools");
+ this.childFrameBarManager.Categories.Add("Nudge Tools");
+ this.childFrameBarManager.Categories.Add("Rotate Tools");
+ this.childFrameBarManager.Categories.Add("View Tools");
+ this.childFrameBarManager.Categories.Add("Text Formatting");
+ this.childFrameBarManager.Categories.Add("Align");
+ this.childFrameBarManager.Categories.Add("Layout");
+ this.childFrameBarManager.CurrentBaseFormType = "Syncfusion.Windows.Forms.Office2007Form";
+ this.childFrameBarManager.Form = this;
+ this.childFrameBarManager.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemSelect,
+ this.barItemPort,
+ this.barItemLine,
+ this.barItemRectangle,
+ this.barItemEllipse,
+ this.barItemText,
+ this.barItemPolyline,
+ this.barItemPolygon,
+ this.barItemSpline,
+ this.barItemBezier,
+ this.barItemPenciltool,
+ this.barItemCurve,
+ this.barItemGroup,
+ this.barItemClosedCurve,
+ this.barItemImage,
+ this.barItemCircularArc,
+ this.barItemSemiCircle,
+ this.barItemRichText,
+ this.barItemRoundRect,
+ this.barItemUngroup,
+ this.barItemBringToFront,
+ this.barItemSendToBack,
+ this.barItemBringForward,
+ this.barItemSendBackward,
+ this.barItemLink,
+ this.barItemNudgeUp,
+ this.barItemNudgeDown,
+ this.barItemNudgeLeft,
+ this.barItemNudgeRight,
+ this.barItemRotateLeft,
+ this.barItemRotateRight,
+ this.barItemFlipVertical,
+ this.barItemFlipHorizontal,
+ this.barItemPan,
+ this.barItemShowGrid,
+ this.barItemSnapToGrid,
+ this.barItemZoom,
+ this.comboBoxBarItemMagnification,
+ this.barItemOrthogonalLink,
+ this.barItemOrgLineLink,
+ this.barItemDirectedLink,
+ this.barItemBoldText,
+ this.barItemItalicText,
+ this.barItemUnderlineText,
+ this.barItemAlignTextLeft,
+ this.barItemCenterText,
+ this.barItemAlignTextRight,
+ this.comboBoxBarItemFontFamily,
+ this.comboBoxBarItemPointSize,
+ this.barItemTextColor,
+ this.barItemSuperscript,
+ this.barItemSubscript,
+ this.barItemUpper,
+ this.barItemLower,
+ this.barItemStrikeoutText,
+ this.barItemSpaceAcross,
+ this.barItemSpaceDown,
+ this.barItemSameWidth,
+ this.barItemSameHeight,
+ this.barItemSameSize,
+ this.barItemAlignLeft,
+ this.barItemAlignCenter,
+ this.barItemAlignRight,
+ this.barItemAlignTop,
+ this.barItemAlignMiddle,
+ this.barItemAlignBottom});
+ this.childFrameBarManager.MetroColor = System.Drawing.Color.FromArgb(((int)(((byte)(17)))), ((int)(((byte)(110)))), ((int)(((byte)(218)))));
+ this.childFrameBarManager.Style = Syncfusion.Windows.Forms.VisualStyle.Office2007Outlook;
+ //
+ // barDrawing
+ //
+ this.barDrawing.BarName = "Drawing";
+ this.barDrawing.Caption = "Drawing";
+ this.barDrawing.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemSelect,
+ this.barItemPort,
+ this.barItemLine,
+ this.barItemPolyline,
+ this.barItemRectangle,
+ this.barItemRoundRect,
+ this.barItemEllipse,
+ this.barItemPolygon,
+ this.barItemCurve,
+ this.barItemClosedCurve,
+ this.barItemSpline,
+ this.barItemBezier,
+ this.barItemPenciltool,
+ this.barItemText,
+ this.barItemRichText,
+ this.barItemImage,
+ this.barItemCircularArc,
+ this.barItemSemiCircle});
+ this.barDrawing.Manager = this.childFrameBarManager;
+ //
+ // barItemSelect
+ //
+ this.barItemSelect.BarName = "barItemSelect";
+ this.barItemSelect.CategoryIndex = 0;
+ this.barItemSelect.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSelect.ID = "Pointer";
+ this.barItemSelect.ImageIndex = 0;
+ this.barItemSelect.ImageList = this.smBarItemImages;
+ this.barItemSelect.ShowToolTipInPopUp = false;
+ this.barItemSelect.SizeToFit = true;
+ this.barItemSelect.Tag = "SelectTool";
+ this.barItemSelect.Text = "Select";
+ this.barItemSelect.Tooltip = "Select";
+ this.barItemSelect.Click += new System.EventHandler(this.SelectToolActivate);
+ //
+ // smBarItemImages
+ //
+ this.smBarItemImages.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("smBarItemImages.ImageStream")));
+ this.smBarItemImages.TransparentColor = System.Drawing.Color.Fuchsia;
+ this.smBarItemImages.Images.SetKeyName(0, "");
+ this.smBarItemImages.Images.SetKeyName(1, "");
+ this.smBarItemImages.Images.SetKeyName(2, "");
+ this.smBarItemImages.Images.SetKeyName(3, "");
+ this.smBarItemImages.Images.SetKeyName(4, "");
+ this.smBarItemImages.Images.SetKeyName(5, "");
+ this.smBarItemImages.Images.SetKeyName(6, "");
+ this.smBarItemImages.Images.SetKeyName(7, "");
+ this.smBarItemImages.Images.SetKeyName(8, "");
+ this.smBarItemImages.Images.SetKeyName(9, "");
+ this.smBarItemImages.Images.SetKeyName(10, "");
+ this.smBarItemImages.Images.SetKeyName(11, "");
+ this.smBarItemImages.Images.SetKeyName(12, "");
+ this.smBarItemImages.Images.SetKeyName(13, "");
+ this.smBarItemImages.Images.SetKeyName(14, "");
+ this.smBarItemImages.Images.SetKeyName(15, "");
+ this.smBarItemImages.Images.SetKeyName(16, "");
+ this.smBarItemImages.Images.SetKeyName(17, "");
+ this.smBarItemImages.Images.SetKeyName(18, "");
+ this.smBarItemImages.Images.SetKeyName(19, "");
+ this.smBarItemImages.Images.SetKeyName(20, "");
+ this.smBarItemImages.Images.SetKeyName(21, "");
+ this.smBarItemImages.Images.SetKeyName(22, "");
+ this.smBarItemImages.Images.SetKeyName(23, "");
+ this.smBarItemImages.Images.SetKeyName(24, "");
+ this.smBarItemImages.Images.SetKeyName(25, "");
+ this.smBarItemImages.Images.SetKeyName(26, "");
+ this.smBarItemImages.Images.SetKeyName(27, "");
+ this.smBarItemImages.Images.SetKeyName(28, "");
+ this.smBarItemImages.Images.SetKeyName(29, "");
+ this.smBarItemImages.Images.SetKeyName(30, "");
+ this.smBarItemImages.Images.SetKeyName(31, "");
+ this.smBarItemImages.Images.SetKeyName(32, "");
+ this.smBarItemImages.Images.SetKeyName(33, "");
+ this.smBarItemImages.Images.SetKeyName(34, "");
+ this.smBarItemImages.Images.SetKeyName(35, "");
+ this.smBarItemImages.Images.SetKeyName(36, "");
+ this.smBarItemImages.Images.SetKeyName(37, "");
+ this.smBarItemImages.Images.SetKeyName(38, "");
+ this.smBarItemImages.Images.SetKeyName(39, "");
+ this.smBarItemImages.Images.SetKeyName(40, "");
+ this.smBarItemImages.Images.SetKeyName(41, "");
+ this.smBarItemImages.Images.SetKeyName(42, "");
+ this.smBarItemImages.Images.SetKeyName(43, "");
+ this.smBarItemImages.Images.SetKeyName(44, "");
+ this.smBarItemImages.Images.SetKeyName(45, "");
+ this.smBarItemImages.Images.SetKeyName(46, "");
+ this.smBarItemImages.Images.SetKeyName(47, "");
+ this.smBarItemImages.Images.SetKeyName(48, "");
+ this.smBarItemImages.Images.SetKeyName(49, "");
+ this.smBarItemImages.Images.SetKeyName(50, "");
+ this.smBarItemImages.Images.SetKeyName(51, "");
+ this.smBarItemImages.Images.SetKeyName(52, "");
+ this.smBarItemImages.Images.SetKeyName(53, "");
+ this.smBarItemImages.Images.SetKeyName(54, "");
+ this.smBarItemImages.Images.SetKeyName(55, "");
+ this.smBarItemImages.Images.SetKeyName(56, "");
+ this.smBarItemImages.Images.SetKeyName(57, "");
+ this.smBarItemImages.Images.SetKeyName(58, "");
+ this.smBarItemImages.Images.SetKeyName(59, "");
+ this.smBarItemImages.Images.SetKeyName(60, "");
+ this.smBarItemImages.Images.SetKeyName(61, "");
+ this.smBarItemImages.Images.SetKeyName(62, "");
+ this.smBarItemImages.Images.SetKeyName(63, "");
+ this.smBarItemImages.Images.SetKeyName(64, "");
+ this.smBarItemImages.Images.SetKeyName(65, "");
+ this.smBarItemImages.Images.SetKeyName(66, "");
+ this.smBarItemImages.Images.SetKeyName(67, "");
+ this.smBarItemImages.Images.SetKeyName(68, "");
+ this.smBarItemImages.Images.SetKeyName(69, "");
+ this.smBarItemImages.Images.SetKeyName(70, "");
+ this.smBarItemImages.Images.SetKeyName(71, "");
+ this.smBarItemImages.Images.SetKeyName(72, "");
+ this.smBarItemImages.Images.SetKeyName(73, "");
+ this.smBarItemImages.Images.SetKeyName(74, "");
+ this.smBarItemImages.Images.SetKeyName(75, "");
+ this.smBarItemImages.Images.SetKeyName(76, "Pencil.png");
+ this.smBarItemImages.Images.SetKeyName(77, "16x16.png");
+ this.smBarItemImages.Images.SetKeyName(78, "OthogonalConnector.png");
+ //
+ // barItemPort
+ //
+ this.barItemPort.BarName = "barItemPort";
+ this.barItemPort.CategoryIndex = 0;
+ this.barItemPort.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemPort.ID = "ConnectionPointTool";
+ this.barItemPort.ImageIndex = 77;
+ this.barItemPort.ImageList = this.smBarItemImages;
+ this.barItemPort.ShowToolTipInPopUp = false;
+ this.barItemPort.SizeToFit = true;
+ this.barItemPort.Tag = "ConnectionPointTool";
+ this.barItemPort.Text = "ConnectionPointTool";
+ this.barItemPort.Tooltip = "Add or delete connection points on shapes. \n\n Hold CTRL key and click on a connec" +
+ "tion point will delete the connection point.";
+ this.barItemPort.Click += new System.EventHandler(this.ConnectionPointToolActivate);
+ //
+ // barItemLine
+ //
+ this.barItemLine.BarName = "barItemLine";
+ this.barItemLine.CategoryIndex = 0;
+ this.barItemLine.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemLine.ID = "Line";
+ this.barItemLine.ImageIndex = 1;
+ this.barItemLine.ImageList = this.smBarItemImages;
+ this.barItemLine.ShowToolTipInPopUp = false;
+ this.barItemLine.SizeToFit = true;
+ this.barItemLine.Tag = "LineTool";
+ this.barItemLine.Text = "Line";
+ this.barItemLine.Tooltip = "Line";
+ this.barItemLine.Click += new System.EventHandler(this.LineToolActivate);
+ //
+ // barItemPolyline
+ //
+ this.barItemPolyline.BarName = "barItemPolyline";
+ this.barItemPolyline.CategoryIndex = 0;
+ this.barItemPolyline.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemPolyline.ID = "Polyline";
+ this.barItemPolyline.ImageIndex = 2;
+ this.barItemPolyline.ImageList = this.smBarItemImages;
+ this.barItemPolyline.ShowToolTipInPopUp = false;
+ this.barItemPolyline.SizeToFit = true;
+ this.barItemPolyline.Tag = "PolyLineTool";
+ this.barItemPolyline.Text = "Polyline";
+ this.barItemPolyline.Tooltip = "Polyline";
+ this.barItemPolyline.Click += new System.EventHandler(this.PolylineToolActivate);
+ //
+ // barItemRectangle
+ //
+ this.barItemRectangle.BarName = "barItemRectangle";
+ this.barItemRectangle.CategoryIndex = 0;
+ this.barItemRectangle.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemRectangle.ID = "Rectangle";
+ this.barItemRectangle.ImageIndex = 4;
+ this.barItemRectangle.ImageList = this.smBarItemImages;
+ this.barItemRectangle.ShowToolTipInPopUp = false;
+ this.barItemRectangle.SizeToFit = true;
+ this.barItemRectangle.Tag = "RectangleTool";
+ this.barItemRectangle.Text = "Rectangle";
+ this.barItemRectangle.Tooltip = "Rectangle";
+ this.barItemRectangle.Click += new System.EventHandler(this.RectangleToolActivate);
+ //
+ // barItemRoundRect
+ //
+ this.barItemRoundRect.BarName = "barItemRoundRect";
+ this.barItemRoundRect.CategoryIndex = 0;
+ this.barItemRoundRect.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemRoundRect.ID = "Rounded Rectangle";
+ this.barItemRoundRect.ImageIndex = 5;
+ this.barItemRoundRect.ImageList = this.smBarItemImages;
+ this.barItemRoundRect.ShowToolTipInPopUp = false;
+ this.barItemRoundRect.SizeToFit = true;
+ this.barItemRoundRect.Tag = "RoundRectTool";
+ this.barItemRoundRect.Text = "Rounded Rectangle";
+ this.barItemRoundRect.Click += new System.EventHandler(this.RoundedRectangleToolActivate);
+ //
+ // barItemEllipse
+ //
+ this.barItemEllipse.BarName = "barItemEllipse";
+ this.barItemEllipse.CategoryIndex = 0;
+ this.barItemEllipse.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemEllipse.ID = "Ellipse";
+ this.barItemEllipse.ImageIndex = 7;
+ this.barItemEllipse.ImageList = this.smBarItemImages;
+ this.barItemEllipse.ShowToolTipInPopUp = false;
+ this.barItemEllipse.SizeToFit = true;
+ this.barItemEllipse.Tag = "EllipseTool";
+ this.barItemEllipse.Text = "Ellipse";
+ this.barItemEllipse.Tooltip = "Ellipse";
+ this.barItemEllipse.Click += new System.EventHandler(this.EllipseToolActivate);
+ //
+ // barItemPolygon
+ //
+ this.barItemPolygon.BarName = "barItemPolygon";
+ this.barItemPolygon.CategoryIndex = 0;
+ this.barItemPolygon.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemPolygon.ID = "Polygon";
+ this.barItemPolygon.ImageIndex = 6;
+ this.barItemPolygon.ImageList = this.smBarItemImages;
+ this.barItemPolygon.ShowToolTipInPopUp = false;
+ this.barItemPolygon.SizeToFit = true;
+ this.barItemPolygon.Tag = "PolygonTool";
+ this.barItemPolygon.Text = "Polygon";
+ this.barItemPolygon.Tooltip = "Polygon";
+ this.barItemPolygon.Click += new System.EventHandler(this.PolygonToolActivate);
+ //
+ // barItemCurve
+ //
+ this.barItemCurve.BarName = "barItemCurve";
+ this.barItemCurve.CategoryIndex = 0;
+ this.barItemCurve.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemCurve.ID = "Curve";
+ this.barItemCurve.ImageIndex = 9;
+ this.barItemCurve.ImageList = this.smBarItemImages;
+ this.barItemCurve.ShowToolTipInPopUp = false;
+ this.barItemCurve.SizeToFit = true;
+ this.barItemCurve.Tag = "CurveTool";
+ this.barItemCurve.Text = "Curve";
+ this.barItemCurve.Tooltip = "Curve";
+ this.barItemCurve.Click += new System.EventHandler(this.CurveToolActivate);
+ //
+ // barItemClosedCurve
+ //
+ this.barItemClosedCurve.BarName = "barItemClosedCurve";
+ this.barItemClosedCurve.CategoryIndex = 0;
+ this.barItemClosedCurve.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemClosedCurve.ID = "Closed Curve";
+ this.barItemClosedCurve.ImageIndex = 10;
+ this.barItemClosedCurve.ImageList = this.smBarItemImages;
+ this.barItemClosedCurve.ShowToolTipInPopUp = false;
+ this.barItemClosedCurve.SizeToFit = true;
+ this.barItemClosedCurve.Tag = "ClosedCurveTool";
+ this.barItemClosedCurve.Text = "Closed Curve";
+ this.barItemClosedCurve.Tooltip = "Closed Curve";
+ this.barItemClosedCurve.Click += new System.EventHandler(this.ClosedCurveToolActivate);
+ //
+ // barItemSpline
+ //
+ this.barItemSpline.BarName = "barItemSpline";
+ this.barItemSpline.CategoryIndex = 0;
+ this.barItemSpline.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSpline.ID = "Spline";
+ this.barItemSpline.ImageIndex = 8;
+ this.barItemSpline.ImageList = this.smBarItemImages;
+ this.barItemSpline.ShowToolTipInPopUp = false;
+ this.barItemSpline.SizeToFit = true;
+ this.barItemSpline.Tag = "SplineTool";
+ this.barItemSpline.Text = "Spline";
+ this.barItemSpline.Tooltip = "Spline";
+ this.barItemSpline.Click += new System.EventHandler(this.ArcToolActivate);
+ //
+ // barItemBezier
+ //
+ this.barItemBezier.BarName = "barItemBezier";
+ this.barItemBezier.CategoryIndex = 0;
+ this.barItemBezier.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemBezier.ID = "Bezier";
+ this.barItemBezier.ImageIndex = 64;
+ this.barItemBezier.ImageList = this.smBarItemImages;
+ this.barItemBezier.ShowToolTipInPopUp = false;
+ this.barItemBezier.SizeToFit = true;
+ this.barItemBezier.Tag = "BezierTool";
+ this.barItemBezier.Text = "Bezier";
+ this.barItemBezier.Tooltip = "BezierTool";
+ this.barItemBezier.Click += new System.EventHandler(this.BezierToolActivate);
+ //
+ // barItemPenciltool
+ //
+ this.barItemPenciltool.BarName = "barItemPenciltool";
+ this.barItemPenciltool.CategoryIndex = 0;
+ this.barItemPenciltool.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemPenciltool.ID = "PencilTool";
+ this.barItemPenciltool.ImageIndex = 76;
+ this.barItemPenciltool.ImageList = this.smBarItemImages;
+ this.barItemPenciltool.ShowToolTipInPopUp = false;
+ this.barItemPenciltool.SizeToFit = true;
+ this.barItemPenciltool.Tag = "PencilTool";
+ this.barItemPenciltool.Text = "PencilTool";
+ this.barItemPenciltool.Tooltip = "PencilTool";
+ this.barItemPenciltool.Click += new System.EventHandler(this.barItemPenciltool_Click);
+ //
+ // barItemText
+ //
+ this.barItemText.BarName = "barItemText";
+ this.barItemText.CategoryIndex = 0;
+ this.barItemText.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemText.ID = "Text";
+ this.barItemText.ImageIndex = 12;
+ this.barItemText.ImageList = this.smBarItemImages;
+ this.barItemText.ShowToolTipInPopUp = false;
+ this.barItemText.SizeToFit = true;
+ this.barItemText.Tag = "TextTool";
+ this.barItemText.Text = "Text";
+ this.barItemText.Tooltip = "Text";
+ this.barItemText.Click += new System.EventHandler(this.TextToolActivate);
+ //
+ // barItemRichText
+ //
+ this.barItemRichText.BarName = "barItemRichText";
+ this.barItemRichText.CategoryIndex = 0;
+ this.barItemRichText.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemRichText.ID = "Rich Text";
+ this.barItemRichText.ImageIndex = 47;
+ this.barItemRichText.ImageList = this.smBarItemImages;
+ this.barItemRichText.ShowToolTipInPopUp = false;
+ this.barItemRichText.SizeToFit = true;
+ this.barItemRichText.Tag = "RichTextTool";
+ this.barItemRichText.Text = "Rich Text";
+ this.barItemRichText.Tooltip = "Rich Text";
+ this.barItemRichText.Click += new System.EventHandler(this.RichTextToolActivate);
+ //
+ // barItemImage
+ //
+ this.barItemImage.BarName = "barItemImage";
+ this.barItemImage.CategoryIndex = 0;
+ this.barItemImage.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemImage.ID = "Image";
+ this.barItemImage.ImageIndex = 11;
+ this.barItemImage.ImageList = this.smBarItemImages;
+ this.barItemImage.ShowToolTipInPopUp = false;
+ this.barItemImage.SizeToFit = true;
+ this.barItemImage.Tag = "ImageTool";
+ this.barItemImage.Text = "Image";
+ this.barItemImage.Tooltip = "Image";
+ this.barItemImage.Click += new System.EventHandler(this.barItemImage_Click);
+ //
+ // barItemCircularArc
+ //
+ this.barItemCircularArc.BarName = "barItemCircularArc";
+ this.barItemCircularArc.CategoryIndex = 0;
+ this.barItemCircularArc.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemCircularArc.ID = "CircularArc";
+ this.barItemCircularArc.Image = ((Syncfusion.Windows.Forms.Tools.XPMenus.ImageExt)(resources.GetObject("barItemCircularArc.Image")));
+ this.barItemCircularArc.ShowToolTipInPopUp = false;
+ this.barItemCircularArc.SizeToFit = true;
+ this.barItemCircularArc.Tag = "CircularArcTool";
+ this.barItemCircularArc.Text = "CircularArc";
+ this.barItemCircularArc.Tooltip = "CircularArc";
+ this.barItemCircularArc.Click += new System.EventHandler(this.CircularArcToolActivate);
+ //
+ // barItemSemiCircle
+ //
+ this.barItemSemiCircle.BarName = "barItemSemiCircle";
+ this.barItemSemiCircle.CategoryIndex = 0;
+ this.barItemSemiCircle.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSemiCircle.ID = "SemiCircle";
+ this.barItemSemiCircle.Image = ((Syncfusion.Windows.Forms.Tools.XPMenus.ImageExt)(resources.GetObject("barItemSemiCircle.Image")));
+ this.barItemSemiCircle.ShowToolTipInPopUp = false;
+ this.barItemSemiCircle.SizeToFit = true;
+ this.barItemSemiCircle.Tag = "SemiCircle";
+ this.barItemSemiCircle.Text = "SemiCircle";
+ this.barItemSemiCircle.Tooltip = "SemiCircle";
+ this.barItemSemiCircle.Click += new System.EventHandler(this.SemiCircleToolActivate);
+ //
+ // barNode
+ //
+ this.barNode.BarName = "Node";
+ this.barNode.Caption = "Node";
+ this.barNode.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemGroup,
+ this.barItemUngroup,
+ this.barItemBringToFront,
+ this.barItemSendToBack,
+ this.barItemBringForward,
+ this.barItemSendBackward});
+ this.barNode.Manager = this.childFrameBarManager;
+ //
+ // barItemGroup
+ //
+ this.barItemGroup.BarName = "barItemGroup";
+ this.barItemGroup.CategoryIndex = 1;
+ this.barItemGroup.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemGroup.Enabled = false;
+ this.barItemGroup.ID = "Group";
+ this.barItemGroup.ImageIndex = 13;
+ this.barItemGroup.ImageList = this.smBarItemImages;
+ this.barItemGroup.ShowToolTipInPopUp = false;
+ this.barItemGroup.SizeToFit = true;
+ this.barItemGroup.Tag = "GroupTool";
+ this.barItemGroup.Text = "Group";
+ this.barItemGroup.Tooltip = "Group";
+ this.barItemGroup.Click += new System.EventHandler(this.barItemGroup_Click);
+ //
+ // barItemUngroup
+ //
+ this.barItemUngroup.BarName = "barItemUngroup";
+ this.barItemUngroup.CategoryIndex = 1;
+ this.barItemUngroup.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemUngroup.Enabled = false;
+ this.barItemUngroup.ID = "Ungroup";
+ this.barItemUngroup.ImageIndex = 14;
+ this.barItemUngroup.ImageList = this.smBarItemImages;
+ this.barItemUngroup.ShowToolTipInPopUp = false;
+ this.barItemUngroup.SizeToFit = true;
+ this.barItemUngroup.Tag = "UngroupTool";
+ this.barItemUngroup.Text = "Ungroup";
+ this.barItemUngroup.Tooltip = "Ungroup";
+ this.barItemUngroup.Click += new System.EventHandler(this.barItemUngroup_Click);
+ //
+ // barItemBringToFront
+ //
+ this.barItemBringToFront.BarName = "barItemBringToFront";
+ this.barItemBringToFront.CategoryIndex = 1;
+ this.barItemBringToFront.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemBringToFront.ID = "Bring To Front";
+ this.barItemBringToFront.ImageIndex = 40;
+ this.barItemBringToFront.ImageList = this.smBarItemImages;
+ this.barItemBringToFront.ShowToolTipInPopUp = false;
+ this.barItemBringToFront.SizeToFit = true;
+ this.barItemBringToFront.Text = "Bring To Front";
+ this.barItemBringToFront.Tooltip = "Bring To Front";
+ this.barItemBringToFront.Click += new System.EventHandler(this.barItemBringToFront_Click);
+ //
+ // barItemSendToBack
+ //
+ this.barItemSendToBack.BarName = "barItemSendToBack";
+ this.barItemSendToBack.CategoryIndex = 1;
+ this.barItemSendToBack.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSendToBack.ID = "Send To Back";
+ this.barItemSendToBack.ImageIndex = 42;
+ this.barItemSendToBack.ImageList = this.smBarItemImages;
+ this.barItemSendToBack.ShowToolTipInPopUp = false;
+ this.barItemSendToBack.SizeToFit = true;
+ this.barItemSendToBack.Text = "Send To Back";
+ this.barItemSendToBack.Click += new System.EventHandler(this.barItemSendToBack_Click);
+ //
+ // barItemBringForward
+ //
+ this.barItemBringForward.BarName = "barItemBringForward";
+ this.barItemBringForward.CategoryIndex = 1;
+ this.barItemBringForward.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemBringForward.ID = "Bring Forward";
+ this.barItemBringForward.ImageIndex = 39;
+ this.barItemBringForward.ImageList = this.smBarItemImages;
+ this.barItemBringForward.ShowToolTipInPopUp = false;
+ this.barItemBringForward.SizeToFit = true;
+ this.barItemBringForward.Text = "Bring Forward";
+ this.barItemBringForward.Click += new System.EventHandler(this.barItemBringForward_Click);
+ //
+ // barItemSendBackward
+ //
+ this.barItemSendBackward.BarName = "barItemSendBackward";
+ this.barItemSendBackward.CategoryIndex = 1;
+ this.barItemSendBackward.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSendBackward.ID = "Send Backward";
+ this.barItemSendBackward.ImageIndex = 41;
+ this.barItemSendBackward.ImageList = this.smBarItemImages;
+ this.barItemSendBackward.ShowToolTipInPopUp = false;
+ this.barItemSendBackward.SizeToFit = true;
+ this.barItemSendBackward.Text = "Send Backward";
+ this.barItemSendBackward.Click += new System.EventHandler(this.barItemSendBackward_Click);
+ //
+ // barNudge
+ //
+ this.barNudge.BarName = "Nudge";
+ this.barNudge.Caption = "Nudge";
+ this.barNudge.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemNudgeUp,
+ this.barItemNudgeDown,
+ this.barItemNudgeLeft,
+ this.barItemNudgeRight});
+ this.barNudge.Manager = this.childFrameBarManager;
+ //
+ // barItemNudgeUp
+ //
+ this.barItemNudgeUp.BarName = "barItemNudgeUp";
+ this.barItemNudgeUp.CategoryIndex = 3;
+ this.barItemNudgeUp.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemNudgeUp.ID = "Nudge Up";
+ this.barItemNudgeUp.ImageIndex = 21;
+ this.barItemNudgeUp.ImageList = this.smBarItemImages;
+ this.barItemNudgeUp.ShowToolTipInPopUp = false;
+ this.barItemNudgeUp.SizeToFit = true;
+ this.barItemNudgeUp.Text = "Nudge Up";
+ this.barItemNudgeUp.Tooltip = "Nudge Up";
+ this.barItemNudgeUp.Click += new System.EventHandler(this.barItemNudgeUp_Click);
+ //
+ // barItemNudgeDown
+ //
+ this.barItemNudgeDown.BarName = "barItemNudgeDown";
+ this.barItemNudgeDown.CategoryIndex = 3;
+ this.barItemNudgeDown.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemNudgeDown.ID = "Nudge Down";
+ this.barItemNudgeDown.ImageIndex = 22;
+ this.barItemNudgeDown.ImageList = this.smBarItemImages;
+ this.barItemNudgeDown.ShowToolTipInPopUp = false;
+ this.barItemNudgeDown.SizeToFit = true;
+ this.barItemNudgeDown.Text = "Nudge Down";
+ this.barItemNudgeDown.Tooltip = "Nudge Down";
+ this.barItemNudgeDown.Click += new System.EventHandler(this.barItemNudgeDown_Click);
+ //
+ // barItemNudgeLeft
+ //
+ this.barItemNudgeLeft.BarName = "barItemNudgeLeft";
+ this.barItemNudgeLeft.CategoryIndex = 3;
+ this.barItemNudgeLeft.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemNudgeLeft.ID = "Nudge Left";
+ this.barItemNudgeLeft.ImageIndex = 19;
+ this.barItemNudgeLeft.ImageList = this.smBarItemImages;
+ this.barItemNudgeLeft.ShowToolTipInPopUp = false;
+ this.barItemNudgeLeft.SizeToFit = true;
+ this.barItemNudgeLeft.Text = "Nudge Left";
+ this.barItemNudgeLeft.Tooltip = "Nudge Left";
+ this.barItemNudgeLeft.Click += new System.EventHandler(this.barItemNudgeLeft_Click);
+ //
+ // barItemNudgeRight
+ //
+ this.barItemNudgeRight.BarName = "barItemNudgeRight";
+ this.barItemNudgeRight.CategoryIndex = 3;
+ this.barItemNudgeRight.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemNudgeRight.ID = "Nudge Right";
+ this.barItemNudgeRight.ImageIndex = 20;
+ this.barItemNudgeRight.ImageList = this.smBarItemImages;
+ this.barItemNudgeRight.ShowToolTipInPopUp = false;
+ this.barItemNudgeRight.SizeToFit = true;
+ this.barItemNudgeRight.Text = "Nudge Right";
+ this.barItemNudgeRight.Tooltip = "Nudge Right";
+ this.barItemNudgeRight.Click += new System.EventHandler(this.barItemNudgeRight_Click);
+ //
+ // barLinks
+ //
+ this.barLinks.BarName = "Links";
+ this.barLinks.Caption = "Links";
+ this.barLinks.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemLink,
+ this.barItemOrthogonalLink,
+ this.barItemOrgLineLink,
+ this.barItemDirectedLink});
+ this.barLinks.Manager = this.childFrameBarManager;
+ //
+ // barItemLink
+ //
+ this.barItemLink.BarName = "barItemLink";
+ this.barItemLink.CategoryIndex = 2;
+ this.barItemLink.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemLink.ID = "Link";
+ this.barItemLink.ImageIndex = 43;
+ this.barItemLink.ImageList = this.smBarItemImages;
+ this.barItemLink.ShowToolTipInPopUp = false;
+ this.barItemLink.SizeToFit = true;
+ this.barItemLink.Text = "Link";
+ this.barItemLink.Tooltip = "Link";
+ this.barItemLink.Click += new System.EventHandler(this.barItemLinkSymbols_Click);
+ //
+ // barItemOrthogonalLink
+ //
+ this.barItemOrthogonalLink.BarName = "barItemOrthogonalLink";
+ this.barItemOrthogonalLink.CategoryIndex = 2;
+ this.barItemOrthogonalLink.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemOrthogonalLink.ID = "Orthogonal Link";
+ this.barItemOrthogonalLink.ImageIndex = 78;
+ this.barItemOrthogonalLink.ImageList = this.smBarItemImages;
+ this.barItemOrthogonalLink.ShowToolTipInPopUp = false;
+ this.barItemOrthogonalLink.SizeToFit = true;
+ this.barItemOrthogonalLink.Text = "Orthogonal Link";
+ this.barItemOrthogonalLink.Click += new System.EventHandler(this.barItemOrthogonalLink_Click);
+ //
+ // barItemOrgLineLink
+ //
+ this.barItemOrgLineLink.BarName = "barItemOrgLineLink";
+ this.barItemOrgLineLink.CategoryIndex = 2;
+ this.barItemOrgLineLink.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemOrgLineLink.ID = "OrgLine Link";
+ this.barItemOrgLineLink.ImageIndex = 44;
+ this.barItemOrgLineLink.ImageList = this.smBarItemImages;
+ this.barItemOrgLineLink.ShowToolTipInPopUp = false;
+ this.barItemOrgLineLink.SizeToFit = true;
+ this.barItemOrgLineLink.Text = "OrgLine Link";
+ this.barItemOrgLineLink.Click += new System.EventHandler(this.barItemOrgLineLink_Click);
+ //
+ // barItemDirectedLink
+ //
+ this.barItemDirectedLink.BarName = "barItemDirectedLink";
+ this.barItemDirectedLink.CategoryIndex = 2;
+ this.barItemDirectedLink.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemDirectedLink.ID = "Directed Link";
+ this.barItemDirectedLink.ImageIndex = 45;
+ this.barItemDirectedLink.ImageList = this.smBarItemImages;
+ this.barItemDirectedLink.ShowToolTipInPopUp = false;
+ this.barItemDirectedLink.SizeToFit = true;
+ this.barItemDirectedLink.Text = "Directed Link";
+ this.barItemDirectedLink.Tooltip = "Directed Link";
+ this.barItemDirectedLink.Click += new System.EventHandler(this.barItemDirectedLink_Click);
+ //
+ // barRotate
+ //
+ this.barRotate.BarName = "Rotate";
+ this.barRotate.Caption = "Rotate";
+ this.barRotate.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemRotateLeft,
+ this.barItemRotateRight,
+ this.barItemFlipVertical,
+ this.barItemFlipHorizontal});
+ this.barRotate.Manager = this.childFrameBarManager;
+ //
+ // barItemRotateLeft
+ //
+ this.barItemRotateLeft.BarName = "barItemRotateLeft";
+ this.barItemRotateLeft.CategoryIndex = 4;
+ this.barItemRotateLeft.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemRotateLeft.ID = "Rotate Left";
+ this.barItemRotateLeft.ImageIndex = 35;
+ this.barItemRotateLeft.ImageList = this.smBarItemImages;
+ this.barItemRotateLeft.ShowToolTipInPopUp = false;
+ this.barItemRotateLeft.SizeToFit = true;
+ this.barItemRotateLeft.Text = "Rotate Left";
+ this.barItemRotateLeft.Tooltip = "Rotate Left";
+ this.barItemRotateLeft.Click += new System.EventHandler(this.barItemRotateLeft_Click);
+ //
+ // barItemRotateRight
+ //
+ this.barItemRotateRight.BarName = "barItemRotateRight";
+ this.barItemRotateRight.CategoryIndex = 4;
+ this.barItemRotateRight.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemRotateRight.ID = "Rotate Right";
+ this.barItemRotateRight.ImageIndex = 36;
+ this.barItemRotateRight.ImageList = this.smBarItemImages;
+ this.barItemRotateRight.ShowToolTipInPopUp = false;
+ this.barItemRotateRight.SizeToFit = true;
+ this.barItemRotateRight.Text = "Rotate Right";
+ this.barItemRotateRight.Tooltip = "Rotate Right";
+ this.barItemRotateRight.Click += new System.EventHandler(this.barItemRotateRight_Click);
+ //
+ // barItemFlipVertical
+ //
+ this.barItemFlipVertical.BarName = "barItemFlipVertical";
+ this.barItemFlipVertical.CategoryIndex = 4;
+ this.barItemFlipVertical.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemFlipVertical.ID = "Flip Vertical";
+ this.barItemFlipVertical.ImageIndex = 38;
+ this.barItemFlipVertical.ImageList = this.smBarItemImages;
+ this.barItemFlipVertical.ShowToolTipInPopUp = false;
+ this.barItemFlipVertical.SizeToFit = true;
+ this.barItemFlipVertical.Text = "Flip Vertical";
+ this.barItemFlipVertical.Tooltip = "Flip Vertical";
+ this.barItemFlipVertical.Click += new System.EventHandler(this.barItemFlipVertical_Click);
+ //
+ // barItemFlipHorizontal
+ //
+ this.barItemFlipHorizontal.BarName = "barItemFlipHorizontal";
+ this.barItemFlipHorizontal.CategoryIndex = 4;
+ this.barItemFlipHorizontal.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemFlipHorizontal.ID = "Flip Horizontal";
+ this.barItemFlipHorizontal.ImageIndex = 37;
+ this.barItemFlipHorizontal.ImageList = this.smBarItemImages;
+ this.barItemFlipHorizontal.ShowToolTipInPopUp = false;
+ this.barItemFlipHorizontal.SizeToFit = true;
+ this.barItemFlipHorizontal.Text = "Flip Horizontal";
+ this.barItemFlipHorizontal.Tooltip = "Flip Horizontal";
+ this.barItemFlipHorizontal.Click += new System.EventHandler(this.barItemFlipHorizontal_Click);
+ //
+ // bar1
+ //
+ this.bar1.BarName = "View";
+ this.bar1.Caption = "View";
+ this.bar1.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemPan,
+ this.barItemShowGrid,
+ this.barItemSnapToGrid,
+ this.barItemZoom,
+ this.comboBoxBarItemMagnification});
+ this.bar1.Manager = this.childFrameBarManager;
+ //
+ // barItemPan
+ //
+ this.barItemPan.BarName = "barItemPan";
+ this.barItemPan.CategoryIndex = 5;
+ this.barItemPan.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemPan.ID = "Pan";
+ this.barItemPan.ImageIndex = 15;
+ this.barItemPan.ImageList = this.smBarItemImages;
+ this.barItemPan.ShowToolTipInPopUp = false;
+ this.barItemPan.SizeToFit = true;
+ this.barItemPan.Tag = "PanTool";
+ this.barItemPan.Text = "Pan";
+ this.barItemPan.Tooltip = "Pan";
+ this.barItemPan.Click += new System.EventHandler(this.barItemPan_Click);
+ //
+ // barItemShowGrid
+ //
+ this.barItemShowGrid.BarName = "barItemShowGrid";
+ this.barItemShowGrid.CategoryIndex = 5;
+ this.barItemShowGrid.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemShowGrid.ID = "Show Grid";
+ this.barItemShowGrid.ImageIndex = 17;
+ this.barItemShowGrid.ImageList = this.smBarItemImages;
+ this.barItemShowGrid.ShowToolTipInPopUp = false;
+ this.barItemShowGrid.SizeToFit = true;
+ this.barItemShowGrid.Text = "Show Grid";
+ this.barItemShowGrid.Tooltip = "Show Grid";
+ this.barItemShowGrid.Click += new System.EventHandler(this.barItemShowGrid_Click);
+ //
+ // barItemSnapToGrid
+ //
+ this.barItemSnapToGrid.BarName = "barItemSnapToGrid";
+ this.barItemSnapToGrid.CategoryIndex = 5;
+ this.barItemSnapToGrid.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSnapToGrid.ID = "Snap To Grid";
+ this.barItemSnapToGrid.ImageIndex = 18;
+ this.barItemSnapToGrid.ImageList = this.smBarItemImages;
+ this.barItemSnapToGrid.ShowToolTipInPopUp = false;
+ this.barItemSnapToGrid.SizeToFit = true;
+ this.barItemSnapToGrid.Text = "Snap To Grid";
+ this.barItemSnapToGrid.Click += new System.EventHandler(this.barItemSnapToGrid_Click);
+ //
+ // barItemZoom
+ //
+ this.barItemZoom.BarName = "barItemZoom";
+ this.barItemZoom.CategoryIndex = 5;
+ this.barItemZoom.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemZoom.ID = "Zoom";
+ this.barItemZoom.ImageIndex = 16;
+ this.barItemZoom.ImageList = this.smBarItemImages;
+ this.barItemZoom.ShowToolTipInPopUp = false;
+ this.barItemZoom.SizeToFit = true;
+ this.barItemZoom.Tag = "ZoomTool";
+ this.barItemZoom.Text = "Zoom";
+ this.barItemZoom.Tooltip = "Zoom";
+ this.barItemZoom.Click += new System.EventHandler(this.ZoomToolActivate);
+ //
+ // comboBoxBarItemMagnification
+ //
+ this.comboBoxBarItemMagnification.BarName = "comboBoxBarItemMagnification";
+ this.comboBoxBarItemMagnification.CategoryIndex = 5;
+ this.comboBoxBarItemMagnification.ChoiceList.AddRange(new string[] {
+ "25%",
+ "50%",
+ "75%",
+ "100%",
+ "125%",
+ "150%",
+ "175%",
+ "200%"});
+ this.comboBoxBarItemMagnification.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.comboBoxBarItemMagnification.Editable = false;
+ this.comboBoxBarItemMagnification.ID = "Magnification";
+ this.comboBoxBarItemMagnification.ShowToolTipInPopUp = false;
+ this.comboBoxBarItemMagnification.SizeToFit = true;
+ this.comboBoxBarItemMagnification.Text = "Magnification";
+ this.comboBoxBarItemMagnification.Tooltip = "Magnification";
+ this.comboBoxBarItemMagnification.Click += new System.EventHandler(this.comboBoxBarItemMagnification_Click);
+ //
+ // bar2
+ //
+ this.bar2.BarName = "Text Formatting";
+ this.bar2.Caption = "Text Formatting";
+ this.bar2.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.comboBoxBarItemFontFamily,
+ this.comboBoxBarItemPointSize,
+ this.barItemBoldText,
+ this.barItemItalicText,
+ this.barItemUnderlineText,
+ this.barItemStrikeoutText,
+ this.barItemAlignTextLeft,
+ this.barItemCenterText,
+ this.barItemAlignTextRight,
+ this.barItemTextColor,
+ this.barItemSubscript,
+ this.barItemSuperscript,
+ this.barItemLower,
+ this.barItemUpper});
+ this.bar2.Manager = this.childFrameBarManager;
+ //
+ // comboBoxBarItemFontFamily
+ //
+ this.comboBoxBarItemFontFamily.BarName = "comboBoxBarItemFontFamily";
+ this.comboBoxBarItemFontFamily.CategoryIndex = 6;
+ this.comboBoxBarItemFontFamily.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.comboBoxBarItemFontFamily.Editable = false;
+ this.comboBoxBarItemFontFamily.ID = "Font Family";
+ this.comboBoxBarItemFontFamily.MinWidth = 120;
+ this.comboBoxBarItemFontFamily.ShowToolTipInPopUp = false;
+ this.comboBoxBarItemFontFamily.SizeToFit = true;
+ this.comboBoxBarItemFontFamily.Text = "Font Family";
+ this.comboBoxBarItemFontFamily.Tooltip = "Font Family";
+ //
+ // comboBoxBarItemPointSize
+ //
+ this.comboBoxBarItemPointSize.BarName = "comboBoxBarItemPointSize";
+ this.comboBoxBarItemPointSize.CategoryIndex = 6;
+ this.comboBoxBarItemPointSize.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.comboBoxBarItemPointSize.ID = "Point Size";
+ this.comboBoxBarItemPointSize.ShowToolTipInPopUp = false;
+ this.comboBoxBarItemPointSize.SizeToFit = true;
+ this.comboBoxBarItemPointSize.Text = "Point Size";
+ //
+ // barItemBoldText
+ //
+ this.barItemBoldText.BarName = "barItemBoldText";
+ this.barItemBoldText.CategoryIndex = 6;
+ this.barItemBoldText.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemBoldText.ID = "Bold";
+ this.barItemBoldText.ImageIndex = 48;
+ this.barItemBoldText.ImageList = this.smBarItemImages;
+ this.barItemBoldText.Shortcut = System.Windows.Forms.Shortcut.CtrlB;
+ this.barItemBoldText.ShowToolTipInPopUp = false;
+ this.barItemBoldText.SizeToFit = true;
+ this.barItemBoldText.Text = "Bold";
+ this.barItemBoldText.Tooltip = "Bold";
+ this.barItemBoldText.Click += new System.EventHandler(this.barItemBoldText_Click);
+ //
+ // barItemItalicText
+ //
+ this.barItemItalicText.BarName = "barItemItalicText";
+ this.barItemItalicText.CategoryIndex = 6;
+ this.barItemItalicText.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemItalicText.ID = "Italic";
+ this.barItemItalicText.ImageIndex = 49;
+ this.barItemItalicText.ImageList = this.smBarItemImages;
+ this.barItemItalicText.Shortcut = System.Windows.Forms.Shortcut.CtrlI;
+ this.barItemItalicText.ShowToolTipInPopUp = false;
+ this.barItemItalicText.SizeToFit = true;
+ this.barItemItalicText.Text = "Italic";
+ this.barItemItalicText.Tooltip = "Italic";
+ this.barItemItalicText.Click += new System.EventHandler(this.barItemItalicText_Click);
+ //
+ // barItemUnderlineText
+ //
+ this.barItemUnderlineText.BarName = "barItemUnderlineText";
+ this.barItemUnderlineText.CategoryIndex = 6;
+ this.barItemUnderlineText.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemUnderlineText.ID = "Underline";
+ this.barItemUnderlineText.ImageIndex = 50;
+ this.barItemUnderlineText.ImageList = this.smBarItemImages;
+ this.barItemUnderlineText.Shortcut = System.Windows.Forms.Shortcut.CtrlU;
+ this.barItemUnderlineText.ShowToolTipInPopUp = false;
+ this.barItemUnderlineText.SizeToFit = true;
+ this.barItemUnderlineText.Text = "Underline";
+ this.barItemUnderlineText.Tooltip = "Underline";
+ this.barItemUnderlineText.Click += new System.EventHandler(this.barItemUnderlineText_Click);
+ //
+ // barItemStrikeoutText
+ //
+ this.barItemStrikeoutText.BarName = "barItemStrikeoutText";
+ this.barItemStrikeoutText.CategoryIndex = 6;
+ this.barItemStrikeoutText.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemStrikeoutText.ID = "Strikeout";
+ this.barItemStrikeoutText.ImageIndex = 63;
+ this.barItemStrikeoutText.ImageList = this.smBarItemImages;
+ this.barItemStrikeoutText.Shortcut = System.Windows.Forms.Shortcut.CtrlS;
+ this.barItemStrikeoutText.ShowToolTipInPopUp = false;
+ this.barItemStrikeoutText.SizeToFit = true;
+ this.barItemStrikeoutText.Text = "Strikeout";
+ this.barItemStrikeoutText.Tooltip = "Strikeout";
+ this.barItemStrikeoutText.Click += new System.EventHandler(this.barItemStrikeoutText_Click);
+ //
+ // barItemAlignTextLeft
+ //
+ this.barItemAlignTextLeft.BarName = "barItemAlignTextLeft";
+ this.barItemAlignTextLeft.CategoryIndex = 6;
+ this.barItemAlignTextLeft.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemAlignTextLeft.ID = "Align Text Left";
+ this.barItemAlignTextLeft.ImageIndex = 51;
+ this.barItemAlignTextLeft.ImageList = this.smBarItemImages;
+ this.barItemAlignTextLeft.Shortcut = System.Windows.Forms.Shortcut.CtrlL;
+ this.barItemAlignTextLeft.ShowToolTipInPopUp = false;
+ this.barItemAlignTextLeft.SizeToFit = true;
+ this.barItemAlignTextLeft.Text = "Align Text Left";
+ this.barItemAlignTextLeft.Tooltip = "Align Text Left";
+ this.barItemAlignTextLeft.Click += new System.EventHandler(this.barItemAlignTextLeft_Click);
+ //
+ // barItemCenterText
+ //
+ this.barItemCenterText.BarName = "barItemCenterText";
+ this.barItemCenterText.CategoryIndex = 6;
+ this.barItemCenterText.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemCenterText.ID = "Center Text";
+ this.barItemCenterText.ImageIndex = 52;
+ this.barItemCenterText.ImageList = this.smBarItemImages;
+ this.barItemCenterText.Shortcut = System.Windows.Forms.Shortcut.CtrlE;
+ this.barItemCenterText.ShowToolTipInPopUp = false;
+ this.barItemCenterText.SizeToFit = true;
+ this.barItemCenterText.Text = "Center Text";
+ this.barItemCenterText.Tooltip = "Center Text";
+ this.barItemCenterText.Click += new System.EventHandler(this.barItemCenterText_Click);
+ //
+ // barItemAlignTextRight
+ //
+ this.barItemAlignTextRight.BarName = "barItemAlignTextRight";
+ this.barItemAlignTextRight.CategoryIndex = 6;
+ this.barItemAlignTextRight.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemAlignTextRight.ID = "Align Text Right";
+ this.barItemAlignTextRight.ImageIndex = 53;
+ this.barItemAlignTextRight.ImageList = this.smBarItemImages;
+ this.barItemAlignTextRight.Shortcut = System.Windows.Forms.Shortcut.CtrlR;
+ this.barItemAlignTextRight.ShowToolTipInPopUp = false;
+ this.barItemAlignTextRight.SizeToFit = true;
+ this.barItemAlignTextRight.Text = "Align Text Right";
+ this.barItemAlignTextRight.Tooltip = "Align Text Right";
+ this.barItemAlignTextRight.Click += new System.EventHandler(this.barItemAlignTextRight_Click);
+ //
+ // barItemTextColor
+ //
+ this.barItemTextColor.BarName = "barItemTextColor";
+ this.barItemTextColor.CategoryIndex = 6;
+ this.barItemTextColor.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemTextColor.ID = "Text Color";
+ this.barItemTextColor.ImageIndex = 54;
+ this.barItemTextColor.ImageList = this.smBarItemImages;
+ this.barItemTextColor.ShowToolTipInPopUp = false;
+ this.barItemTextColor.SizeToFit = true;
+ this.barItemTextColor.Text = "Text Color";
+ this.barItemTextColor.Tooltip = "Text Color";
+ this.barItemTextColor.Click += new System.EventHandler(this.barItemTextColor_Click);
+ //
+ // barItemSubscript
+ //
+ this.barItemSubscript.BarName = "barItemSubscript";
+ this.barItemSubscript.CategoryIndex = 6;
+ this.barItemSubscript.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSubscript.ID = "Subscript";
+ this.barItemSubscript.ImageIndex = 60;
+ this.barItemSubscript.ImageList = this.smBarItemImages;
+ this.barItemSubscript.ShowToolTipInPopUp = false;
+ this.barItemSubscript.SizeToFit = true;
+ this.barItemSubscript.Text = "Subscript";
+ this.barItemSubscript.Tooltip = "Subscript";
+ this.barItemSubscript.Click += new System.EventHandler(this.barItemSubscript_Click);
+ //
+ // barItemSuperscript
+ //
+ this.barItemSuperscript.BarName = "barItemSuperscript";
+ this.barItemSuperscript.CategoryIndex = 6;
+ this.barItemSuperscript.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSuperscript.ID = "Superscript";
+ this.barItemSuperscript.ImageIndex = 59;
+ this.barItemSuperscript.ImageList = this.smBarItemImages;
+ this.barItemSuperscript.ShowToolTipInPopUp = false;
+ this.barItemSuperscript.SizeToFit = true;
+ this.barItemSuperscript.Text = "Superscript";
+ this.barItemSuperscript.Tooltip = "Superscript";
+ this.barItemSuperscript.Click += new System.EventHandler(this.barItemSuperscript_Click);
+ //
+ // barItemLower
+ //
+ this.barItemLower.BarName = "barItemLower";
+ this.barItemLower.CategoryIndex = 6;
+ this.barItemLower.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemLower.ID = "Lower";
+ this.barItemLower.ImageIndex = 62;
+ this.barItemLower.ImageList = this.smBarItemImages;
+ this.barItemLower.ShowToolTipInPopUp = false;
+ this.barItemLower.SizeToFit = true;
+ this.barItemLower.Text = "Lower";
+ this.barItemLower.Click += new System.EventHandler(this.barItemLower_Click);
+ //
+ // barItemUpper
+ //
+ this.barItemUpper.BarName = "barItemUpper";
+ this.barItemUpper.CategoryIndex = 6;
+ this.barItemUpper.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemUpper.ID = "Upper";
+ this.barItemUpper.ImageIndex = 61;
+ this.barItemUpper.ImageList = this.smBarItemImages;
+ this.barItemUpper.ShowToolTipInPopUp = false;
+ this.barItemUpper.SizeToFit = true;
+ this.barItemUpper.Text = "Upper";
+ this.barItemUpper.Click += new System.EventHandler(this.barItemUpper_Click);
+ //
+ // barLayout
+ //
+ this.barLayout.BarName = "Layout";
+ this.barLayout.Caption = "Layout";
+ this.barLayout.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemSpaceAcross,
+ this.barItemSpaceDown,
+ this.barItemSameWidth,
+ this.barItemSameHeight,
+ this.barItemSameSize});
+ this.barLayout.Manager = this.childFrameBarManager;
+ //
+ // barItemSpaceAcross
+ //
+ this.barItemSpaceAcross.BarName = "barItemSpaceAcross";
+ this.barItemSpaceAcross.CategoryIndex = 9;
+ this.barItemSpaceAcross.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSpaceAcross.ID = "Space Across";
+ this.barItemSpaceAcross.ImageIndex = 65;
+ this.barItemSpaceAcross.ImageList = this.smBarItemImages;
+ this.barItemSpaceAcross.ShowToolTipInPopUp = false;
+ this.barItemSpaceAcross.SizeToFit = true;
+ this.barItemSpaceAcross.Text = "Space Across";
+ this.barItemSpaceAcross.Click += new System.EventHandler(this.barItemSpaceAcross_Click);
+ //
+ // barItemSpaceDown
+ //
+ this.barItemSpaceDown.BarName = "barItemSpaceDown";
+ this.barItemSpaceDown.CategoryIndex = 9;
+ this.barItemSpaceDown.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSpaceDown.ID = "Space Down";
+ this.barItemSpaceDown.ImageIndex = 66;
+ this.barItemSpaceDown.ImageList = this.smBarItemImages;
+ this.barItemSpaceDown.ShowToolTipInPopUp = false;
+ this.barItemSpaceDown.SizeToFit = true;
+ this.barItemSpaceDown.Text = "Space Down";
+ this.barItemSpaceDown.Click += new System.EventHandler(this.barItemSpaceDown_Click);
+ //
+ // barItemSameWidth
+ //
+ this.barItemSameWidth.BarName = "barItemSameWidth";
+ this.barItemSameWidth.CategoryIndex = 9;
+ this.barItemSameWidth.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSameWidth.ID = "Same Width";
+ this.barItemSameWidth.ImageIndex = 67;
+ this.barItemSameWidth.ImageList = this.smBarItemImages;
+ this.barItemSameWidth.ShowToolTipInPopUp = false;
+ this.barItemSameWidth.SizeToFit = true;
+ this.barItemSameWidth.Text = "Same Width";
+ this.barItemSameWidth.Click += new System.EventHandler(this.barItemSameWidth_Click);
+ //
+ // barItemSameHeight
+ //
+ this.barItemSameHeight.BarName = "barItemSameHeight";
+ this.barItemSameHeight.CategoryIndex = 9;
+ this.barItemSameHeight.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSameHeight.ID = "Same Height";
+ this.barItemSameHeight.ImageIndex = 68;
+ this.barItemSameHeight.ImageList = this.smBarItemImages;
+ this.barItemSameHeight.ShowToolTipInPopUp = false;
+ this.barItemSameHeight.SizeToFit = true;
+ this.barItemSameHeight.Text = "Same Height";
+ this.barItemSameHeight.Click += new System.EventHandler(this.barItemSameHeight_Click);
+ //
+ // barItemSameSize
+ //
+ this.barItemSameSize.BarName = "barItemSameSize";
+ this.barItemSameSize.CategoryIndex = 9;
+ this.barItemSameSize.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemSameSize.ID = "Same Size";
+ this.barItemSameSize.ImageIndex = 69;
+ this.barItemSameSize.ImageList = this.smBarItemImages;
+ this.barItemSameSize.ShowToolTipInPopUp = false;
+ this.barItemSameSize.SizeToFit = true;
+ this.barItemSameSize.Text = "Same Size";
+ this.barItemSameSize.Click += new System.EventHandler(this.barItemSameSize_Click);
+ //
+ // barAlign
+ //
+ this.barAlign.BarName = "Align";
+ this.barAlign.Caption = "Align";
+ this.barAlign.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemAlignLeft,
+ this.barItemAlignCenter,
+ this.barItemAlignRight,
+ this.barItemAlignTop,
+ this.barItemAlignMiddle,
+ this.barItemAlignBottom});
+ this.barAlign.Manager = this.childFrameBarManager;
+ //
+ // barItemAlignLeft
+ //
+ this.barItemAlignLeft.BarName = "barItemAlignLeft";
+ this.barItemAlignLeft.CategoryIndex = 8;
+ this.barItemAlignLeft.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemAlignLeft.ID = "Align Left";
+ this.barItemAlignLeft.ImageIndex = 70;
+ this.barItemAlignLeft.ImageList = this.smBarItemImages;
+ this.barItemAlignLeft.ShowToolTipInPopUp = false;
+ this.barItemAlignLeft.SizeToFit = true;
+ this.barItemAlignLeft.Text = "Align Left";
+ this.barItemAlignLeft.Click += new System.EventHandler(this.barItemAlignLeft_Click);
+ //
+ // barItemAlignCenter
+ //
+ this.barItemAlignCenter.BarName = "barItemAlignCenter";
+ this.barItemAlignCenter.CategoryIndex = 8;
+ this.barItemAlignCenter.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemAlignCenter.ID = "Align Center";
+ this.barItemAlignCenter.ImageIndex = 71;
+ this.barItemAlignCenter.ImageList = this.smBarItemImages;
+ this.barItemAlignCenter.ShowToolTipInPopUp = false;
+ this.barItemAlignCenter.SizeToFit = true;
+ this.barItemAlignCenter.Text = "Align Center";
+ this.barItemAlignCenter.Click += new System.EventHandler(this.barItemAlignCenter_Click);
+ //
+ // barItemAlignRight
+ //
+ this.barItemAlignRight.BarName = "barItemAlignRight";
+ this.barItemAlignRight.CategoryIndex = 8;
+ this.barItemAlignRight.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemAlignRight.ID = "Align Right";
+ this.barItemAlignRight.ImageIndex = 72;
+ this.barItemAlignRight.ImageList = this.smBarItemImages;
+ this.barItemAlignRight.ShowToolTipInPopUp = false;
+ this.barItemAlignRight.SizeToFit = true;
+ this.barItemAlignRight.Text = "Align Right";
+ this.barItemAlignRight.Click += new System.EventHandler(this.barItemAlignRight_Click);
+ //
+ // barItemAlignTop
+ //
+ this.barItemAlignTop.BarName = "barItemAlignTop";
+ this.barItemAlignTop.CategoryIndex = 8;
+ this.barItemAlignTop.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemAlignTop.ID = "Align Top";
+ this.barItemAlignTop.ImageIndex = 73;
+ this.barItemAlignTop.ImageList = this.smBarItemImages;
+ this.barItemAlignTop.ShowToolTipInPopUp = false;
+ this.barItemAlignTop.SizeToFit = true;
+ this.barItemAlignTop.Text = "Align Top";
+ this.barItemAlignTop.Click += new System.EventHandler(this.barItemAlignTop_Click);
+ //
+ // barItemAlignMiddle
+ //
+ this.barItemAlignMiddle.BarName = "barItemAlignMiddle";
+ this.barItemAlignMiddle.CategoryIndex = 8;
+ this.barItemAlignMiddle.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemAlignMiddle.ID = "Align Middle";
+ this.barItemAlignMiddle.ImageIndex = 74;
+ this.barItemAlignMiddle.ImageList = this.smBarItemImages;
+ this.barItemAlignMiddle.ShowToolTipInPopUp = false;
+ this.barItemAlignMiddle.SizeToFit = true;
+ this.barItemAlignMiddle.Text = "Align Middle";
+ this.barItemAlignMiddle.Click += new System.EventHandler(this.barItemAlignMiddle_Click);
+ //
+ // barItemAlignBottom
+ //
+ this.barItemAlignBottom.BarName = "barItemAlignBottom";
+ this.barItemAlignBottom.CategoryIndex = 8;
+ this.barItemAlignBottom.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+ this.barItemAlignBottom.ID = "Align Bottom";
+ this.barItemAlignBottom.ImageIndex = 75;
+ this.barItemAlignBottom.ImageList = this.smBarItemImages;
+ this.barItemAlignBottom.ShowToolTipInPopUp = false;
+ this.barItemAlignBottom.SizeToFit = true;
+ this.barItemAlignBottom.Text = "Align Bottom";
+ this.barItemAlignBottom.Click += new System.EventHandler(this.barItemAlignBottom_Click);
+ //
+ // DiagramForm
+ //
+ this.AllowDrop = true;
+ this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+ this.ClientSize = new System.Drawing.Size(544, 414);
+ this.Controls.Add(this.diagramComponent);
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.Name = "DiagramForm";
+ this.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Show;
+ this.Text = "Diagram";
+ this.Load += new System.EventHandler(this.DiagramForm_Load);
+ this.Closing += new System.ComponentModel.CancelEventHandler(this.DiagramForm_Closing);
+ ((System.ComponentModel.ISupportInitialize)(this.diagramComponent)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.document)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.childFrameBarManager)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.comboBoxBarItemMagnification)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.comboBoxBarItemFontFamily)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.comboBoxBarItemPointSize)).EndInit();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ #region Class events
+
+ #region DiagramForm
+ ///
+ /// Handles the Load event of the DiagramForm control.
+ ///
+ /// The source of the event.
+ /// The instance containing the event data.
+ private void DiagramForm_Load(object sender, EventArgs e)
+ {
+ this.barItemShowGrid.Checked = this.diagramComponent.View.Grid.Visible;
+ this.barItemSnapToGrid.Checked = this.diagramComponent.View.Grid.SnapToGrid;
+ this.diagramComponent.Model.RenderingStyle.SmoothingMode = SmoothingMode.HighQuality;
+ UpdateMagnificationComboBox();
+
+ // Set Active SelectTool
+ this.ActiveToolBarItem = this.barItemSelect;
+
+ // Populate Tools Hashtable
+ this.Tools.Add( "SelectTool", this.barItemSelect );
+ this.Tools.Add( "ConnectionPointTool", this.barItemPort);
+ this.Tools.Add( "RectangleTool", this.barItemRectangle );
+ this.Tools.Add( "BezierTool", this.barItemBezier );
+ this.Tools.Add("PencilTool", this.barItemPenciltool);
+ this.Tools.Add( "SplineTool", this.barItemSpline );
+ this.Tools.Add( "BitmapTool", this.barItemImage );
+ this.Tools.Add("InsertNodeTool", this.barItemCircularArc);
+ this.Tools.Add("SemiCircleTool", this.barItemSemiCircle);
+ this.Tools.Add( "ClosedCurveTool", this.barItemClosedCurve );
+ this.Tools.Add( "CurveTool", this.barItemCurve );
+ this.Tools.Add( "EllipseTool", this.barItemEllipse );
+ this.Tools.Add( "RoundRectTool", this.barItemRoundRect );
+ this.Tools.Add( "LineTool", this.barItemLine );
+ this.Tools.Add( "RichTextTool", this.barItemRichText );
+ this.Tools.Add( "TextTool", this.barItemText );
+ this.Tools.Add( "ZoomTool", this.barItemZoom );
+ this.Tools.Add( "PanTool", this.barItemPan );
+ this.Tools.Add( "PolygonTool", this.barItemPolygon );
+ this.Tools.Add( "PolyLineTool", this.barItemPolyline );
+ this.Tools.Add( "LineLinkTool", this.barItemLink );
+ this.Tools.Add( "OrthogonalLinkTool", this.barItemOrthogonalLink );
+ this.Tools.Add( "OrgLineConnectorTool", this.barItemOrgLineLink);
+ this.Tools.Add( "DirectedLineLinkTool", this.barItemDirectedLink );
+
+ SetActiveTool( ( Tool ) null );
+
+ diagramComponent.EventSink.SelectionListChanged += new CollectionExEventHandler( OnSelectionChanged );
+ diagramComponent.EventSink.PropertyChanged += new PropertyChangedEventHandler( View_PropertyChanged );
+
+ // Set focus to the diagram control
+ diagramComponent.Focus();
+ diagramComponent.Model.HistoryManager.ClearHistory();
+ Console.WriteLine(diagramComponent.Model.HistoryManager.CanUndo.ToString());
+ diagramComponent.Model.HistoryManager.Start();
+ }
+
+ [ EventHandlerPriorityAttribute( true ) ]
+ private void DiagramForm_ToolActivated( ToolEventArgs evtArgs )
+ {
+ string strTool = evtArgs.Tool.Name;
+
+ if( strTool != null && this.Tools.Contains( strTool ) )
+ {
+ this.ActiveToolBarItem = this.Tools[ strTool ] as BarItem;
+ }
+ }
+ ///
+ /// Handles the Closing event of the DiagramForm control.
+ ///
+ /// The source of the event.
+ /// The instance containing the event data.
+ private void DiagramForm_Closing(object sender, CancelEventArgs e)
+ {
+ if( Diagram.Model != null && Diagram.Model.Modified )
+ {
+ DialogResult dlgResult = MessageBox.Show( DEF_MSG_PROMPT_SAVE, Application.ProductName, MessageBoxButtons.YesNoCancel );
+
+ if (dlgResult == DialogResult.Cancel)
+ {
+ e.Cancel = true;
+ }
+ else
+ {
+ PropertyEditor propEditor = this.PropertyEditor;
+ if (propEditor != null)
+ {
+ propEditor.Diagram = null;
+ propEditor.PropertyGrid.SelectedObject = null;
+ propEditor.PropertyGrid.Refresh();
+ }
+ m_saveChanges = dlgResult == DialogResult.Yes;
+ }
+ diagramComponent.Model.HistoryManager.Stop();
+ }
+ else
+ {
+ PropertyEditor propEditor = this.PropertyEditor;
+
+ if( propEditor != null )
+ {
+ propEditor.Diagram = null;
+ propEditor.PropertyGrid.SelectedObject = null;
+ propEditor.PropertyGrid.Refresh();
+ }
+ }
+ }
+
+ [EventHandlerPriorityAttribute(true)]
+ protected void OnSelectionChanged( CollectionExEventArgs evtArgs )
+ {
+ DiagramController controller = this.diagramComponent.Controller;
+
+ if( controller != null )
+ {
+ if( controller.SelectionList != null )
+ {
+ // Check for grouping and ungrouping tools available.
+ bool bGroupAvailable = false;
+ bool bGroupPresent = false;
+
+ if( controller.View.SelectionList.Count >= 2 )
+ bGroupAvailable = true;
+
+ foreach( Node curNode in controller.View.SelectionList )
+ {
+ // Check for groups.
+ if( curNode is Group )
+ {
+ bGroupPresent = true;
+ break;
+ }
+ }
+
+ // Update group and ungroup tools.
+ this.barItemGroup.Enabled = bGroupAvailable;
+ this.barItemUngroup.Enabled = bGroupPresent;
+
+ SelectionFormat fmtSelection = controller.TextEditor.GetSelectionFormat( false );
+
+ if( fmtSelection.Valid )
+ {
+ // 1 - FontStyles
+ // Bold
+ barItemBoldText.Checked =
+ ( ( fmtSelection.FontStyle & System.Drawing.FontStyle.Bold ) == System.Drawing.FontStyle.Bold ) ? true : false;
+ // Underline
+ barItemUnderlineText.Checked =
+ ( ( fmtSelection.FontStyle & System.Drawing.FontStyle.Underline ) == System.Drawing.FontStyle.Underline ) ? true : false;
+ // Italic
+ barItemItalicText.Checked =
+ ( ( fmtSelection.FontStyle & System.Drawing.FontStyle.Italic ) == System.Drawing.FontStyle.Italic ) ? true : false;
+ // Strikeout
+ barItemStrikeoutText.Checked =
+ ( ( fmtSelection.FontStyle & System.Drawing.FontStyle.Strikeout ) == System.Drawing.FontStyle.Strikeout ) ? true : false;
+
+ // 2 - Alignment
+ switch( fmtSelection.Alignment )
+ {
+ case StringAlignment.Near:
+ this.CurrentAlignment = this.barItemAlignTextLeft;
+ break;
+ case StringAlignment.Center:
+ this.CurrentAlignment = this.barItemCenterText;
+ break;
+ case StringAlignment.Far:
+ this.CurrentAlignment = this.barItemAlignTextRight;
+ break;
+ }
+
+ // 3 - FamilyName
+ this.comboBoxBarItemFontFamily.TextBoxValue = fmtSelection.FontFamily;
+
+ // 4 - FontHeight
+ if( fmtSelection.FontHeight == 0 )
+ this.comboBoxBarItemPointSize.TextBoxValue = string.Empty;
+ else
+ this.comboBoxBarItemPointSize.TextBoxValue = fmtSelection.FontHeight.ToString();
+ }
+ else
+ {
+ barItemBoldText.Checked = false;
+ barItemItalicText.Checked = false;
+ barItemUnderlineText.Checked = false;
+ barItemStrikeoutText.Checked = false;
+ }
+ }
+ }
+ }
+
+ ///
+ /// Updates the magnification combo box to view zoom factor.
+ ///
+ private void UpdateMagnificationComboBox()
+ {
+ this.comboBoxBarItemMagnification.TextBoxValue = this.diagramComponent.Magnification + "%";
+ }
+ ///
+ /// Updates the text formatting for selected node.
+ ///
+ private void UpdateUITextFormatting()
+ {
+ DiagramController controller = this.diagramComponent.Controller;
+
+ if( controller == null || controller.TextEditor == null )
+ return;
+
+ // Update FamilyName
+ this.comboBoxBarItemFontFamily.TextBoxValue = controller.TextEditor.FamilyName;
+
+ this.barItemBoldText.Checked = controller.TextEditor.Bold;
+ this.barItemItalicText.Checked = controller.TextEditor.Italic;
+ this.barItemUnderlineText.Checked = controller.TextEditor.Underline;
+
+ // Update point size bar item
+ float ptSize = controller.TextEditor.PointSize;
+
+ if( ptSize == 0 )
+ this.comboBoxBarItemPointSize.TextBoxValue = string.Empty;
+ else
+ this.comboBoxBarItemPointSize.TextBoxValue = ptSize.ToString();
+
+ // Update strikeout, superscript, subscript
+ this.barItemStrikeoutText.Checked = controller.TextEditor.Strikeout;
+ this.barItemSubscript.Checked = controller.TextEditor.Subscript;
+ this.barItemSuperscript.Checked = controller.TextEditor.Superscript;
+
+ // Update text alignment bar items
+ StringAlignment horzAlign = controller.TextEditor.HorizontalAlignment;
+
+ switch( horzAlign )
+ {
+ case StringAlignment.Near:
+ this.CurrentAlignment = this.barItemAlignTextLeft;
+ break;
+ case StringAlignment.Center:
+ this.CurrentAlignment = this.barItemCenterText;
+ break;
+ case StringAlignment.Far:
+ this.CurrentAlignment = this.barItemAlignTextRight;
+ break;
+ }
+ }
+
+ ///
+ /// Loads the font for selection nodes.
+ ///
+ private void LoadFontSelections()
+ {
+ // Create ListBox containing names of font families and attach it to the
+ // font family combo box bar item
+ this.comboBoxBarItemFontFamily.ListBox = new ListBox();
+ foreach (FontFamily curFontFamily in FontFamily.Families)
+ {
+ this.comboBoxBarItemFontFamily.ListBox.Items.Add(curFontFamily.Name);
+ }
+ this.comboBoxBarItemFontFamily.ListBox.SelectedIndexChanged += new EventHandler(this.FontFamily_SelectedIndexChanged);
+
+ // Create ListBox containing point sizes and attach to the point size combo
+ // box bar item
+ ListBox pointSizeListBox = new ListBox();
+ int[] ptSizes = new int[] { 8, 9, 10, 11, 12, 14, 16, 18, 20, 22, 24, 26, 28, 36, 48, 72 };
+ foreach (int ptSize in ptSizes)
+ {
+ pointSizeListBox.Items.Add(ptSize);
+ }
+ this.comboBoxBarItemPointSize.ListBox = pointSizeListBox;
+ this.comboBoxBarItemPointSize.ListBox.SelectedIndexChanged += new EventHandler(this.PointSize_SelectedIndexChanged);
+ }
+
+ ///
+ /// Get on current selecton list has textBoxNodes.
+ ///
+ /// true - one or more text nodes; false - none
+ private bool CheckTextSelecionNode()
+ {
+ bool bResult = false;
+
+ if( diagramComponent.Controller == null )
+ return bResult;
+
+ if( diagramComponent.Controller.TextEditor.IsEditing )
+ bResult = true;
+ else
+ {
+ NodeCollection selectionNodes = this.diagramComponent.Controller.SelectionList;
+
+ if( selectionNodes != null )
+ {
+ foreach( INode node in selectionNodes )
+ {
+ if( node is TextNode )
+ {
+ bResult = true;
+ break;
+ }
+ }
+ }
+ }
+
+ return bResult;
+ }
+ #endregion
+
+ private void barItemLinkSymbols_Click(object sender, EventArgs e)
+ {
+ SetActiveTool( "LineLinkTool");
+
+ BarItem barItemToSelect = sender as BarItem;
+
+ if( barItemToSelect != null )
+ this.ActiveToolBarItem = barItemToSelect;
+ }
+
+ private void barItemShowGrid_Click(object sender, EventArgs e)
+ {
+ this.barItemShowGrid.Checked = !this.barItemShowGrid.Checked;
+ this.diagramComponent.View.Grid.Visible = this.barItemShowGrid.Checked;
+ this.diagramComponent.Invalidate( true );
+ }
+
+ private void barItemSnapToGrid_Click(object sender, EventArgs e)
+ {
+ this.barItemSnapToGrid.Checked = !this.barItemSnapToGrid.Checked;
+ this.diagramComponent.View.Grid.SnapToGrid = this.barItemSnapToGrid.Checked;
+ }
+
+ private void comboBoxBarItemMagnification_Click(object sender, EventArgs e)
+ {
+ string strMagValue = this.comboBoxBarItemMagnification.TextBoxValue;
+ int idxPctSign = strMagValue.IndexOf('%');
+ if (idxPctSign >= 0)
+ {
+ strMagValue = strMagValue.Remove(idxPctSign, 1);
+ }
+ int magVal = Convert.ToInt32(strMagValue);
+ this.diagramComponent.View.Magnification = magVal;
+ }
+ private void barItemBringToFront_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.Controller.BringToFront();
+ }
+
+ private void barItemSendToBack_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.Controller.SendToBack();
+ }
+
+ private void barItemBringForward_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.Controller.BringForward();
+ }
+
+ private void barItemSendBackward_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.Controller.SendBackward();
+ }
+
+ private void barItemNudgeUp_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.NudgeUp();
+ }
+
+ private void barItemNudgeDown_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.NudgeDown();
+ }
+
+ private void barItemNudgeLeft_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.NudgeLeft();
+ }
+
+ private void barItemNudgeRight_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.NudgeRight();
+ }
+
+ private void barItemRotateLeft_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.Rotate(-90);
+ }
+
+ private void barItemRotateRight_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.Rotate(90);
+ }
+
+ private void barItemFlipVertical_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.FlipVertical();
+ }
+ private void barItemFlipHorizontal_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.FlipHorizontal();
+ }
+
+ private void barItemImage_Click(object sender, EventArgs e)
+ {
+ SetActiveTool( "BitmapTool");
+ }
+
+ private void barItemOrthogonalLink_Click(object sender, EventArgs e)
+ {
+ SetActiveTool( "OrthogonalLinkTool" );
+
+ BarItem barItemToSelect = sender as BarItem;
+
+ if( barItemToSelect != null )
+ this.ActiveToolBarItem = barItemToSelect;
+ }
+
+ private void barItemOrgLineLink_Click(object sender, EventArgs e)
+ {
+ SetActiveTool("OrgLineConnectorTool");
+
+ BarItem barItemToSelect = sender as BarItem;
+
+ if (barItemToSelect != null)
+ this.ActiveToolBarItem = barItemToSelect;
+ }
+
+ private void barItemDirectedLink_Click(object sender, EventArgs e)
+ {
+ SetActiveTool( "DirectedLineLinkTool" );
+
+ BarItem barItemToSelect = sender as BarItem;
+
+ if( barItemToSelect != null )
+ this.ActiveToolBarItem = barItemToSelect;
+ }
+
+ private void FontFamily_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ string strFamilyName = this.comboBoxBarItemFontFamily.ListBox.SelectedItem.ToString();
+
+ if( this.diagramComponent.Controller.TextEditor.FamilyName != strFamilyName )
+ this.diagramComponent.Controller.TextEditor.FamilyName = strFamilyName;
+ }
+ private void PointSize_SelectedIndexChanged(object sender, EventArgs e)
+ {
+ int selectedIdx = this.comboBoxBarItemPointSize.ListBox.SelectedIndex;
+ if (selectedIdx >= 0)
+ {
+ int ptSize = (int) this.comboBoxBarItemPointSize.ListBox.Items[selectedIdx];
+ this.diagramComponent.Controller.TextEditor.PointSize = ptSize;
+ }
+ }
+
+ private void barItemBoldText_Click(object sender, EventArgs e)
+ {
+ if( !CheckTextSelecionNode() )
+ return;
+
+ bool newValue = !(this.diagramComponent.Controller.TextEditor.Bold);
+ this.diagramComponent.Controller.TextEditor.Bold = newValue;
+ this.barItemBoldText.Checked = newValue;
+ }
+ private void barItemItalicText_Click(object sender, EventArgs e)
+ {
+ if( !CheckTextSelecionNode() )
+ return;
+
+ bool newValue = !(this.diagramComponent.Controller.TextEditor.Italic);
+ this.diagramComponent.Controller.TextEditor.Italic = newValue;
+ this.barItemItalicText.Checked = newValue;
+ }
+ private void barItemUnderlineText_Click(object sender, EventArgs e)
+ {
+ if( !CheckTextSelecionNode() )
+ return;
+
+ bool newValue = !(this.diagramComponent.Controller.TextEditor.Underline);
+ this.diagramComponent.Controller.TextEditor.Underline = newValue;
+ this.barItemUnderlineText.Checked = newValue;
+ }
+ private void barItemStrikeoutText_Click(object sender, EventArgs e)
+ {
+ if( !CheckTextSelecionNode() )
+ return;
+
+ bool newValue = !( this.diagramComponent.Controller.TextEditor.Strikeout );
+ this.diagramComponent.Controller.TextEditor.Strikeout = newValue;
+ this.barItemStrikeoutText.Checked = newValue;
+ }
+ private void barItemTextColor_Click(object sender, EventArgs e)
+ {
+ ColorDialog dlg = new ColorDialog();
+ dlg.Color = this.diagramComponent.Controller.TextEditor.TextColor;
+ if (dlg.ShowDialog(this) == DialogResult.OK)
+ {
+ this.diagramComponent.Controller.TextEditor.TextColor = dlg.Color;
+ }
+ }
+ private void barItemAlignTextLeft_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.Controller.TextEditor.HorizontalAlignment = StringAlignment.Near;
+ this.barItemAlignTextLeft.Checked = true;
+ this.barItemCenterText.Checked = false;
+ this.barItemAlignTextRight.Checked = false;
+ }
+ private void barItemCenterText_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.Controller.TextEditor.HorizontalAlignment = StringAlignment.Center;
+ this.barItemCenterText.Checked = true;
+ this.barItemAlignTextLeft.Checked = false;
+ this.barItemAlignTextRight.Checked = false;
+ }
+ private void barItemAlignTextRight_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.Controller.TextEditor.HorizontalAlignment = StringAlignment.Far;
+ this.barItemAlignTextRight.Checked = true;
+ this.barItemAlignTextLeft.Checked = false;
+ this.barItemCenterText.Checked = false;
+ }
+ private void barItemSubscript_Click(object sender, EventArgs e)
+ {
+ bool newValue = !(this.diagramComponent.Controller.TextEditor.Subscript);
+ this.diagramComponent.Controller.TextEditor.Subscript = newValue;
+ }
+ private void barItemSuperscript_Click(object sender, EventArgs e)
+ {
+ bool newValue = !(this.diagramComponent.Controller.TextEditor.Superscript);
+ this.diagramComponent.Controller.TextEditor.Superscript = newValue;
+ }
+ private void barItemLower_Click(object sender, EventArgs e)
+ {
+ int nCurrentOffset = this.diagramComponent.Controller.TextEditor.CharOffset;
+ nCurrentOffset--;
+ this.diagramComponent.Controller.TextEditor.CharOffset = nCurrentOffset;
+ }
+ private void barItemUpper_Click(object sender, EventArgs e)
+ {
+ int nCurrentOffset = this.diagramComponent.Controller.TextEditor.CharOffset;
+ nCurrentOffset++;
+ this.diagramComponent.Controller.TextEditor.CharOffset = nCurrentOffset;
+ }
+
+ private void barItemGroup_Click(object sender, EventArgs e)
+ {
+ diagramComponent.Controller.Group();
+ }
+
+ private void barItemUngroup_Click(object sender, EventArgs e)
+ {
+ diagramComponent.Controller.UnGroup();
+ }
+
+ private void barItemPan_Click(object sender, EventArgs e)
+ {
+ SetActiveTool( "PanTool");
+ }
+
+ private void BezierToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "BezierTool");
+ }
+
+ private void barItemPenciltool_Click(object sender, EventArgs e)
+ {
+ SetActiveTool("PencilTool");
+ }
+
+ private void LineToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "LineTool");
+ }
+
+ private void RectangleToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "RectangleTool");
+ }
+
+ private void SetActiveTool( Tool toolActive )
+ {
+ this.diagramComponent.Controller.ActiveTool = toolActive;
+ }
+
+ private void SetActiveTool(string toolName)
+ {
+ diagramComponent.Controller.ActivateTool(toolName);
+ }
+ private void EllipseToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "EllipseTool");
+ }
+
+ private void SelectToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "SelectTool");
+ }
+
+ private void ConnectionPointToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool("ConnectionPointTool");
+ }
+
+ private void PolygonToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "PolygonTool");
+ }
+
+ private void PolylineToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "PolyLineTool");
+ }
+
+ private void TextToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "TextTool");
+ }
+
+ private void ArcToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "SplineTool");
+ }
+
+ private void RoundedRectangleToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "RoundRectTool");
+ }
+
+ private void CurveToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "CurveTool");
+ }
+
+ private void ClosedCurveToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "ClosedCurveTool");
+ }
+
+ private void CircularArcToolActivate(object sender, EventArgs e)
+ {
+ CircularArc arc = new CircularArc(new RectangleF(0, 0, 50, 50));
+ diagramComponent.Controller.NodeToInsert = arc;
+ SetActiveTool("InsertNodeTool");
+ }
+
+ private void SemiCircleToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool("SemiCircleTool");
+ }
+
+ private void RichTextToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "RichTextTool");
+ }
+
+ private void ZoomToolActivate(object sender, EventArgs e)
+ {
+ SetActiveTool( "ZoomTool");
+ }
+
+ private void FormatChanged(object sender, EventArgs e)
+ {
+ UpdateUITextFormatting();
+ }
+
+ [ EventHandlerPriority( true ) ]
+ private void View_PropertyChanged( PropertyChangedEventArgs evtArgs )
+ {
+ if( evtArgs.PropertyName == DPN.Magnification )
+ {
+ this.comboBoxBarItemMagnification.TextBoxValue = this.Diagram.View.Magnification.ToString() + "%";
+ }
+ }
+
+ private void mnuLayout_Click( object sender, EventArgs e )
+ {
+ LayoutDialog dialog = new LayoutDialog( this.Diagram );
+ dialog.Show();
+ }
+ private void mnuFlipBoth_Click( object sender, EventArgs e )
+ {
+ this.Diagram.FlipHorizontal();
+ this.Diagram.FlipVertical();
+ }
+
+ private void Application_Idle(object sender, EventArgs e)
+ {
+ if (this.Diagram.Controller != null)
+ {
+ int count = this.Diagram.Controller.SelectionList.Count;
+ // update context menu
+ mnuAlgnLeft.Enabled = ( count >= 2 );
+ mnuAlgnCenter.Enabled = ( count >= 2 );
+ mnuAlgnRight.Enabled = ( count >= 2 );
+ mnuAlgnTop.Enabled = ( count >= 2 );
+ mnuAlgnMiddle.Enabled = ( count >= 2 );
+ mnuAlgnBottom.Enabled = ( count >= 2 );
+ mnuFlipHoriz.Enabled = ( count > 0 );
+ mnuFlipVert.Enabled = ( count > 0 );
+ mnuFlipBoth.Enabled = ( count > 0 );
+ mnuGGroup.Enabled = ( count > 1 );
+ mnuGUngroup.Enabled = true;
+ mnuOrdBTF.Enabled = ( count > 0 );
+ mnuOrdBF.Enabled = ( count > 0 );
+ mnuOrdSB.Enabled = ( count > 0 );
+ mnuOrdSTB.Enabled = ( count > 0 );
+ mnuRtClockwise.Enabled = ( count > 0 );
+ mnuRtCClockwise.Enabled = ( count > 0 );
+ mnuRsSameWidth.Enabled = ( count > 1 );
+ mnuRsSameHeight.Enabled = ( count > 1 );
+ mnuRsSameSize.Enabled = ( count > 1 );
+ mnuRsSpaseAcross.Enabled = ( count > 1 );
+ mnuRsSpaceDown.Enabled = ( count > 1 );
+ }
+ }
+
+
+ #region Layout bar
+ private void barItemSpaceAcross_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.SpaceAcross();
+ }
+ private void barItemSpaceDown_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.SpaceDown();
+ }
+ private void barItemSameWidth_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.SameWidth();
+ }
+ private void barItemSameHeight_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.SameHeight();
+ }
+ private void barItemSameSize_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.SameSize();
+ }
+ #endregion
+
+ #region Align bar
+ private void barItemAlignLeft_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.AlignLeft();
+ }
+ private void barItemAlignCenter_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.AlignCenter();
+ }
+ private void barItemAlignRight_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.AlignRight();
+ }
+ private void barItemAlignTop_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.AlignTop();
+ }
+ private void barItemAlignMiddle_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.AlignMiddle();
+ }
+ private void barItemAlignBottom_Click(object sender, EventArgs e)
+ {
+ this.diagramComponent.AlignBottom();
+ }
+ #endregion
+
+ #endregion
+
+ #region fields
+ private Hashtable m_hashControllerTools;
+ private BarItem m_BaritemActiveTool;
+ #endregion
+
+ #region properties
+ private Hashtable Tools
+ {
+ get
+ {
+ if( m_hashControllerTools == null )
+ m_hashControllerTools = new Hashtable();
+
+ return m_hashControllerTools;
+ }
+ }
+ private BarItem ActiveToolBarItem
+ {
+ get
+ {
+ return m_BaritemActiveTool;
+ }
+ set
+ {
+ if( m_BaritemActiveTool != value )
+ {
+ if( m_BaritemActiveTool != null )
+ // Uncheck
+ m_BaritemActiveTool.Checked = false;
+
+ // Update baritem
+ m_BaritemActiveTool = value;
+
+ diagramComponent.Focus();
+
+ if( m_BaritemActiveTool != null )
+ // Check new baritem
+ m_BaritemActiveTool.Checked = true;
+ }
+ }
+ }
+ #endregion
+ }
+}
diff --git a/Samples/Symbol Designer/Symbol Designer/DiagramForm.resx b/Samples/Symbol Designer/Symbol Designer/DiagramForm.resx
new file mode 100644
index 0000000..423cc92
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/DiagramForm.resx
@@ -0,0 +1,1014 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 427, 17
+
+
+ 17, 17
+
+
+
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj0yLjAuMC4wLCBDdWx0
+ dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABlTeXN0ZW0uRHJh
+ d2luZy5SZWN0YW5nbGVGBAAAAAF4AXkFd2lkdGgGaGVpZ2h0AAAAAAsLCwsCAAAAAAAAAAAAAAAAAAAA
+ AAAAAAs=
+
+
+
+
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj0yLjAuMC4wLCBDdWx0
+ dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAABlTeXN0ZW0uRHJh
+ d2luZy5SZWN0YW5nbGVGBAAAAAF4AXkFd2lkdGgGaGVpZ2h0AAAAAAsLCwsCAAAAAAAAAAAAAAAAAAAA
+ AAAAAAs=
+
+
+
+
+
+ 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
+ 6P/68eL/mHlo/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAqYd4///////9+fT//Pjy//z3
+ 7//79u3/+/To/5l7a/8AAAAAAAAAAJt8a/+dfm3/nH5t/5x9bf+bfGv/m3xr/6uJev///////fv3//36
+ 9f/8+PL//Pfv//v16v+afGv/AAAAAAAAAACbd2b///////r06f/68+j/+vLm//Lq5f+jiIj/8vf///39
+ /v/+/Pv//fr2//z58//89u3/m3xs/wAAAAAAAAAAon9v///////89u3/+vTs/9nf7f+krPD/XFi9/6bR
+ ///I0v//9/j+//37+P/8+fT/8Ojg/5+AcP8AAAAAAAAAAKmHeP///////fn0/+Xl8/+Vt/f/U5b8/1ap
+ 8v9Pof//YXf//8nT/v/9+/n/p4Jw/6eCcP+ngnD/AAAAAAAAAACriXr///////379//Gzvf/R2r7/1/g
+ /v8d5f//W+3//1+z//+hwf//9ff//6eCcP+xjn7/p4JwWAAAAAAAAAAAr4+A///////+/v7/vcf8/2Ok
+ /f9X7P//AM3//zvr/v8vcuz/X165/6ODfv+ngnD/p4JwWAAAAAAAAAAAAAAAALGQgP///////////9bk
+ /v9dffz/SZ3+/2L4/v9o2/f/EVj/yQAx/1EAAP8EAAAAAAAAAAAAAAAAAAAAAAAAAAC3l4f/////////
+ ///29/7/tsD7/0Zgy/9LgeL/M0vT/02a/38AMP8cAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuJiI////
+ //////////////f4//+UiY//h3ac/2Jfq3kAJP8TAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALiY
+ iP+4mIj/tJOD/7COff+siHf/p4Jw/6eCcFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAD//wAA/gEAAP4BAAD+AQAA/gEAAIABAACAAQAAgAEAAIABAACAAQAAgAMAAIAfAACAPwAAgH8AAID/
+ AAD//wAAKAAAABgAAAAwAAAAAQAIAAAAAACgAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAMr/AJx6
+ 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
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiGVU/5l3
+ Zv+WdGP/lnRj/5V0Yv+VdGL/lnNj/5NyYP+UcV//knJe/5FwX/+Sb17/k3Jf/39fTv8AAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmnpp//7y5P/5693/+evd//nr3P/569z/+erb//nr
+ 2//46tj/+OfV//fm0v/35s//++fO/5BvXf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAm3tr///98//89uv/+/br//z17P/89ez//PXr//z06P/68+j/+/Pm//nx4v/67+D/++3Z/45t
+ W/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnH1s///+9v/89+///Pfv//z2
+ 7v/89u7/+/bs//v16v/79On/+/To//vz5//68+b/+/Hh/5BvXv8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAn35t////+P/8+PH//Pjx//z38P/89/D//Pbu//v27P/79ev/+/Tq//v0
+ 6P/89Oj//fHk/5FwX/8AAAAAAAAAAIhlVP+Zd2b/lnRj/5Z0Y/+VdGL/lXRi/5ZzY/+pjoD/o4Bw////
+ /P/9+vX//fr1//359P/9+fT//Pjy//z38P/89u7//Pbt//v16//79ev//PLl/5NxX/8AAAAAAAAAAJp6
+ af/+8uT/+evd//nr3f/569z/+evc//nq2//67+L/o4Fx/////v/9+/f//fv3//369v/9+vb//fn0//z4
+ 8f/89/D//Pbu//v27f/79uz//PTm/5VyYf8AAAAAAAAAAJt7a////fP//Pbr//v26//89ez//PXs//Xv
+ 7P/n5Or/lnuD/+Pq///u9P3//Pz9//79+//+/fv//fv4//369f/9+fP//Pjy//z38P/89+///fTp/5Vz
+ Yf8AAAAAAAAAAJx9bP///vb//Pfv//z37//79e7/4+Pw/8PK8P+uufD/bGWm/6zY//+3xP//0dv///Lz
+ /f/+/f3//vz6//369v/9+fT//Pjy//z48f/8+PD//fbr/5d0Y/8AAAAAAAAAAJ9+bf////j//Pjx//z4
+ 8f/f4fL/ut33/3+M9v9Ncvn/KkDd/37M//9edv//ma3//8bS/v/z9f7//v37//379//++/b//vr2//36
+ 8//9+vL//fXs/5h1Y/8AAAAAAAAAAKOAcP////z//fr1//Lx9f++x/f/fJ36/33U/v88hf3/TJ3x/2Ta
+ //8wcv//Rmz//5uu///T2////fz8//r49f/7+vf/8+zn/+zk3//h1tD/ybWp/41oV+0AAAAAAAAAAKOB
+ cf////7//fv3/97i+P+hsPn/QGP9/0Ob/v9g6v//U+z+/0je//9jxP//Lmf//3Gc//+81f//8/T8/8q1
+ qv+cemn/qot4/6iEav+ielz/hmBP9pBnVkEAAAAAAAAAAKiFdP///////v79/9Ha/f+Gnf3/NWz+/2rO
+ //8s2///AMr//wTQ//9X6P//c9///1yV//+ruP7/6ez7/9XHvv/MtaP//OnF//DMkv+bdFz2lmlcOgAA
+ AAAAAAAAAAAAAKiGdf///////////9DY//+Dlf7/TZH//1TW//8o3f//AMr//wLP//9u7P//PY///0Ro
+ //+puv7/6Ov6/9nKw//Eo4T/7MiO/5dvWPWWbl0/AAAAAAAAAAAAAAAAAAAAAKyId////////////9nj
+ //+p1///Xp///0SW//909f//Ld/+/z7j//9Qxv//LWz//1d3/v+2xP3/8PD5/9rMxP+7k2n/nHRb9Ztt
+ XzgAAAAAAAAAAAAAAAAAAAAAAAAAAK2JeP///////////+/y//+5xf//Z4D//0SC/v9MoP7/TMT3/2PC
+ //9oyf//WJT//4yf///M1////f3//9G+tP+LY1H0nXNgPQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK6J
+ eP////////////7+///a4v//q7v//2mA/v9mqvX/L2Pk/y1c5v8xRNr/eZ3N/4F7of+gg4L/qId3/5Zy
+ Yeuaa1g2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK6Lev/////////////////7+/7/2uL+/7nD
+ /P+bxuj/dX3W/4+b5f+hn8X/k4uw+mtjj00AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAK+LeP/////////////////+/v7//f3+/+/w+v+7vs//o46Z/8awoP+GaGr2hWVwRQAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAK6Jef///////v7+//7+
+ /v/+/fz//v38//78+f/azMT/u5Np/5x0W/WbbV84AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAK+Mev/////////////////////////////////RvrT/i2NR9J1z
+ YD0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ52
+ Yf+xj3//r417/66LfP+riXn/q4l5/6iHd/+WcmHrmmtYNgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAA////AP+AAQD/gAEA/4ABAP+AAQD/gAEAgAABAIAAAQCAAAEAgAABAIAAAQCAAAEAgAADAIAA
+ BwCAAA8AgAAfAIAAPwCAAH8AgAf/AIAP/wCAH/8AgD//AIB//wD///8AKAAAACAAAABAAAAAAQAIAAAA
+ AACABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AK1b3ALCIZgBW8P8A9tOaAKux8wB0bLgAAMv/AFKj
+ /QB8W0oAoP3/AEZAswDFrZ8A5tzXAFtv/wB+zv4AkpLHAIBqdwDN1/0AfpX/ACjg/wAnN9MAvdXJAI26
+ 1gBlj94ANIf/AGVekQCOepgAy6FvAJhvWwCzl4kAXMb/APnhuwC4tMoA08K5AID+/wD/9eAA5+r/AL70
+ /wBRWsAAZ2XTADlH4wA7b/MAkOf8AJSp/wBLkeoAs8n8ABlT5QCp7u0AaIT/AGXb/wBJX/4AP+r/AH6J
+ vwBtxPIAFdX/AGb//wDY2esAlnptAE218gBoecsANEHHAKeJeABMj/4A+OTTAHuo+gBjrP8Afef/AItl
+ UwAdQuAAN2L/AMu3rQC7opUAMFbmAOjn7gDazMUAv+P/AKju/gCK3fAA2eH/APz38ADp1sgAipr1AESB
+ /AC8w/AAldj/APT2/wCsvP8Ao39nAD5V+wDAmGoARU+yAKJ5WgBZff8AcM3/AGTy/wC/0f0AUqjwAPTu
+ 6wCOcGQA8de+AEri/wAyYuwAZXLWALKNcgC16fkActr/AM7S7wArZv0AZb3/AHWN/ADz38kAuZ6BAECR
+ /wBmdP4A2u3/AMPW8wDFyvYAsLvwAArS/wCitP8Abnv6APnt2gChgHIAmuP/AEjw/wCJlv8AvqGLAODT
+ zADs7PYAvsf/ADds/QAwXP8Agl5OALeQagBNq/8Al3VlAFze/wCMdpAA+/ToAFWq/gBngPcAbMX/AJNs
+ VADS2vgAfWN0AODm/ACzvv8AKlPhAP37+ABBYP0Aiev7AOHn8gDGzv8Arrv4AJ1yXgDv8vwA8drDAPrx
+ 4QA5gv8Aq7T/AGlajQDFnm4AYev/AESW/QCZpf0APVr/APr7/wDzz5YAkXRoANXc/wB60/4A//3yAJNr
+ WgDVxb4At8X+AKWDbwDNurEAkGdVAPbm1wABz/8AhmFQAJNzYwDYysIAZYD9ALukmgC1wvwAkqX8APn1
+ 7QDl5OsAENT/ADNk/wA8jv4Aipv/ABnY/wD12b0A//76AOzv/wBxi/4AflxMAPbfuADp7fwAnPv+AF17
+ /gBD7P8Arrz8AMLO/ABxyvwAm3FcAP359AD6+PgA9/j/ADNb/gCRd2sA4+n/AB5C5ACVbFgA/v38AC5k
+ /wA+Vv8A+NacAENj/wDe5f8Az9j+APvz5ACujXIA9fDoAPXgzADz3McA8tjAAPz17ABnWpAAT6j/AMTQ
+ /wD09vwA+e/eAPTcxADy3ssA2uL8AFC08wCywf4AnnJdAP/+9wDw9P8AyJ9uAOft/wDj6PsAyLatAK6+
+ /wAN1P8AkXJmAPry5gBI7f8A9uTTAEnk/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAC2toaGhoaGhoaGhsjIyMjIyAoAAAAAAAAAAAAAAAAAALZB7u7u7u7u7uXlnp7mZWXE
+ CgAAAAAAAAAAAAAAAAAAtq2MjIyMjPz8/OGfn+x7e+0KAAAAAAAAAAAAAAAAAAC28+fn5+fn54yMjIz8
+ /J+fcAoAAAAAAAAAAAAAAAAAALbzUVFR5+fn5+eMjIz8/OHkyAAAAAAAAAAAAAAAAAAARcVRUVFRUVHn
+ 5+fnjIyMjP7IAAAAAAAAAAAAAAAAAABFxdLSUVFRUVHn5+fnjIyM/sgAALa2hoaGhoaGhoaGyLMB0tLS
+ 0tLSUVFRUefn5+f+hgAAtkHu7u7u7u7u5eWeswGWlpaWltLSUVFRUefn57SGAAC2rYyMjIyM/Pz84Z/Z
+ AQEB2tralpbS0lFRUVFRtIYAALbz5+fn5+fnjIyMjK4BAQEBAdqWlpbS0lFRUVG0tgAAtvNRUVHn5+fn
+ Y746kqt0JtQBAdqWltLSUVFRUbS2AABFxVFRUVFRUUtsVXfooSeD4PYB2paWltLSUVFRtLYAAEXF0tJR
+ UVGZdQZTjj5efX9Y6tfaxZbF85bSveNStgAAswHS0tLSgnZqQlpURm5DpzJ56srFDriBTK/4uonWAACz
+ AZaWltORm3rLCaViYHKgRzJY4KhJfD+xWQOQqgAAANkBAQHanc+8l205RGD9a1+F3MJhxkgNJSHdo6oA
+ AAAA2QEBAQHXsG+EjawVtbUEIDMLVi+TsoDJqVtkAAAAAADZAQEBAd/xudXBpLUICPpmiIUPzu+4aQX1
+ +wAAAAAAAB4BAQEB35RzQIp+eAgIwyTpwMzO7yOHHfsAAAAAAAAAHgEBAQH2TU4QjY/Nvzg1iBrAx7v3
+ sl23AAAAAAAAAAAeAQEBAVeapjQCmND/JCAk294t6vQftwAAAAAAAAAAANEBAQEBAVC7FErY8Dw3MC5P
+ DKKSrjsAAAAAAAAAAAAAnAEBAQEBVxP5aCosK2eVFhkYAAAAAAAAAAAAAAAAAADyAQEBAQEBnRMRBzEp
+ KFw9AAAAAAAAAAAAAAAAAAAAANEBAQEBAQHa6yKLFxwbNgAAAAAAAAAAAAAAAAAAAAAA8gEBAQEB2trF
+ I+JxEgAAAAAAAAAAAAAAAAAAAAAAAADRAQEBAdralsWyXbcAAAAAAAAAAAAAAAAAAAAAAAAAANEBAQEB
+ AQEBAR+3AAAAAAAAAAAAAAAAAAAAAAAAAAAA0ZzR0R4eHq6uOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///////4AAH/+AAB//gAAf/4AAH/+AAB//gAAf/4
+ AAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAOAAAAHgAAAD4AAAB+AAAA/gAAAf4AA
+ AP+AAAH/gAAf/4AAf/+AAP//gAP//4AH//+AD///gB////////8oAAAAIAAAAEAAAAABACAAAAAAAIAQ
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAhGFQ/4ZhUP+EYE//hGBP/4NgT/+DYE//g2BP/4JfTv+BXk3/gF5N/4Bd
+ Tv9/XUz/f11N/35cS/9+XEz/fVtL/35dTf97W0v/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACFYVD/+OTT//LezP/y3sz/8t7M//LezP/y38z/8t3L//Lc
+ yv/y3Mf/89vH//HaxP/x2cL/8tjA//DXvv/x1r3/9dm9/3xbS/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIZhUP///fL/+vPp//rz6f/68+n/+vPo//r0
+ 6P/68uf/+vHm//ry5f/68uT/+fHi//nw4P/5797/+Ozb//nt2f/03MT/e1pJ/wAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAh2NR///+9//89uz//Pbs//z2
+ 7P/79ez/+/Xs//v16v/79On/+/To//vz6P/78+f/+vLm//ry5v/68eL/+vDh//Pfyf98W0r/AAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACIYlH////3//z2
+ 7v/89u7//Pbu//z27f/89u3/+/Xs//v16v/79Or/+/Tp//vz6P/78+f/+vPm//ry5f/78+T/9eDM/31c
+ S/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIpk
+ U/////r//Pjx//z48f/8+PH//Pjw//z38P/89+///Pbt//v17P/79ev/+/Xq//v06f/79Oj/+/Pn//z1
+ 6P/249L/gF1L/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAi2VT////+//9+fL//fny//z48v/8+PL//Pjy//z38P/89+7//Pbt//z27f/79ez/+/Xr//v0
+ 6f/79Oj//PTp//Xk0/9/XE3/AAAAAAAAAACEYVD/hmFQ/4RgT/+EYE//g2BP/4NgT/+DYE//gl9O/4Fe
+ Tf+AXk3/gF1O/39dTP+PZlX///////369f/9+vX//fr1//369f/9+fX//fnz//z48f/89/D//Pfv//z2
+ 7v/89u3/+/Xr//v16v/89ev/9eTT/4JdTP8AAAAAAAAAAIVhUP/45NP/8t7M//LezP/y3sz/8t7M//Lf
+ zP/y3cv/8tzK//Lcx//z28f/8drE/5FoVf///////fv4//78+f/9+/j//fv4//379//9+vX//fnz//z4
+ 8v/8+PH//Pfw//z37//89u3/+/Xs//z37f/15db/g15N/wAAAAAAAAAAhmFQ///98v/68+n/+vPp//rz
+ 6f/68+j/+vTo//ry5//68eb/+vLl//ry5P/58eL/lGxX///////+/v3//v79//79/f/+/fz//v37//37
+ +f/9+vb//fr1//359P/8+PL//Pjx//z37//89u7//fjv//fm1v+EX07/AAAAAAAAAACHY1H///73//z2
+ 7P/89uz//Pbs//v17P/79ez/+/Xq//v06f/79Oj/+/Po//vz5/+Ualr//f3///7+/v///////v7+//7+
+ /v/+/f3//vz5//379//9+vb//fn0//358//8+PH//Pfw//z37//99+//9ubY/4VhTv8AAAAAAAAAAIhi
+ Uf////f//Pbu//z27v/89u7//Pbt//z27f/79ez/+/Xq//Tu6//l5Ov/2Nnr/31jdP/V3P//2u3//+fq
+ ///3+P///v7+//7+/v/+/Pr//fv4//369v/9+vX//fnz//z48v/8+PH//Pfv//338P/25tj/hWBQ/wAA
+ AAAAAAAAimRT////+v/8+PH//Pjx//z48f/8+PD//Pfw//v27//o5+7/ztLv/7zD8P+wu/D/Z1qQ/6u0
+ //++9P//vsf//8/Y///o7f///v7///79/P/9+/n//fv3//369v/9+fT//fnz//z48f/9+PH//fjx//fn
+ 2f+GYVD/AAAAAAAAAACLZVP////7//358v/9+fL//Pjy//z48v/8+PL/4efy/8PW8/+rsfP/ipr1/2eA
+ 9/80Qcf/WX3//5rj//+Jlv//q7v//8TQ///i6P///fz8///9+f/+/fn///35///99//++/f//fjz//n1
+ 7f/18Oj/6dbI/4diUPwAAAAAAAAAAI9mVf///////fr1//369f/9+vX//fr1/+zs9v/Fyvb/ten5/3uo
+ +v8+Vfv/RIH8/x1C4P9lvf//Y6z//z1a//9ng///orT//8TP///p7fz///37/+bc1//Zy8L/4NPM/9rM
+ xf/Vxb7/yLat/7ukmv+XdWX/hmJRtgAAAAAAAAAAkWhV///////9+/j//vz5//37+P/6+Pj/0tr4/667
+ +P9ue/r/nPv+/1Kj/f9Elv3/Uqjw/2Tx//9Akf//OYL//zdi//9ohP//rLz//8/X/f/6+///u6KV/6GA
+ cv+niXj/pYNv/6N/Z/+wiGb/k2xU/4pkU8SGX0sOAAAAAAAAAACUbFf///////7+/f/+/v3//v39/+/y
+ /P/Czvz/kqX8/0Fg/f8rZv3/Zv///33n//9k8/7/SO3//3La//9wzf//L1z//z5W//+Km///v9H9/+zv
+ ///Lt63/xa2f///14P/54bv/+Nac/8Webv+JY1PBjF1fDAAAAAAAAAAAAAAAAJVrWf///////v7+////
+ ///+/v7/4+n+/7fF/v91jfz/N2z9/1ar/v960/7/KOD//wDO//8Cz///VvD//1vF//9l2///oP3//5XY
+ //+zyfz/4Ob8/8y6sP++oYv/9t+4//PPlv/AmGr/iGJUz4tkTg4AAAAAAAAAAAAAAAAAAAAAlmxY////
+ ///////////////////d5P7/ssH+/2WA/f8zW/7/PI7+/2Hr//8Azv//AMv//wDK//8N1P//SuL//0yq
+ //8xXP//W2///667/P/a4fz/18nB/7KNcv/205r/yJ9u/4lkVcydbl4SAAAAAAAAAAAAAAAAAAAAAAAA
+ AACYblv//////////////////////9/l//+zvv//ZnT+/0yP/v9c3v//SPD//wrS//8Ay///AMr//xnY
+ //+B/f//T6j//zJj//9de/7/rr38/9ri/P/Twrn/t5Bq/8uhb/+LZFTNlWJSEQAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAJlwWv//////////////////////5u3//7/j//+o7v7/fs7+/1Sp/v9sxf//Q+z//xDU
+ //8V1f//P+r//02r//80h///NGT+/3GL/v+1wfv/4+j7/866sf+ieVr/j2lW1p1xWRkAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAmm9c///////////////////////z9f//xs7//5ml/f9JX/7/K1b3/4nr
+ +/9xyvz/SeT9/3////9dx///gP///y5k//9DY///lKn//8PQ///w9P//s5eJ/49nVdShbWIXAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACbcFv///////////////////////7+///Z4f//tML9/36V
+ //8wVub/HkLk/1C08/9NtfL/bcTy/xlT5f9Lker/it3w/0ZAs/9pWo3/fGN0/5JrWv+OZ1W5k25VFgAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJxyXf////////////////////////////T3
+ ///M1v3/rr7//2Vy1v85R+P/kOf8/ztv8/8yYuz/KlPh/x8w2O49f/qjbcf/gAAo/zUAKv8OAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnnJc////////////////////
+ /////////v7+/+7x+//O1/3/kpLH/3RsuP+p7u3/Z2XT/1FawP87RrTnCjPybQAm/0woa/8/ADn/FAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACcclz/////////
+ //////////////7+/v/+/v7//vz6//T2/P+4tMr/jHaQ/73Vyf+Oepj/W1KO2xk65VEANP85ADH/JwAr
+ /w0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJ1x
+ Xf///////v7+///////+/v7//v7+//79/f/+/Pr////7/9LBuf+ujXL/uZ6B/3ddbNMxR8cuAD7/GQAv
+ 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
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIVhUP+EYVH/g19P/4NfT/+DX0//gl9P/4JgT/+CXk7/gl5O/4Fe
+ Tv+BXk7/gF1N/4BdTf9/Xk3/f1xN/39cTP9+XEz/fl1M/35bTP99W0v/fVxL/3xaSv98W0r/e1tK/3tb
+ S/97W0v/e1tM/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBcS//u0bv/6s25/+rNuf/qzbr/6s26/+rN
+ uf/qzbn/6s25/+nOuP/pzbj/6s23/+rNt//qzLf/6sy2/+nMtv/py7X/6cu0/+nLtP/py7P/6Muz/+jK
+ s//oyrL/6Mqx/+fJsf/ry7L/dlZI/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBaSf/w3s//7NrM/+zb
+ zP/s28z/7NvM/+zazP/s2sz/7NrL/+vay//r2sr/69nJ/+vZyf/r2Mj/6tjI/+rYx//q18f/6tfG/+rX
+ xv/p1sX/6dbE/+nWxP/p1cP/6NbD/+bQvP/mybH/dldH/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIFc
+ Sv/05dj/8uje//Lo3v/y6N3/8ujd//Lo3v/y6N7/8uje//Lp3f/y59z/8ejb//Hm2//x5tr/8efa//Ll
+ 2f/w5dj/8ObY//Dk1//x5dX/7+PW/+/j1f/w5NT/7d7N/+fQvP/lyLH/eFZH/wAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAIJbSv/159r/9vHm//bx6P/38Oj/9/Do//bx6P/28ef/9u/n//bw5v/28Ob/9e/l//Xv
+ 5P/17eP/9e7j//bu4v/07OL/9O3h//Tr4P/07OD/9ezf//Pq3v/0697/7eDQ/+bQvf/lyrP/eVhH/wAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAINeS//059v/9/Hp//fx6f/38en/9/Hp//fx6f/38en/9/Hp//fw
+ 6P/38Of/9u/m//bv5f/27+X/9u7k//Xu5P/17eP/9e3i//Xt4f/07OH/9Ozg//Tr3//17N//7+HS/+bR
+ v//my7P/eldI/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIRdSv/26Nz/+PLq//jy6v/48uv/+PLr//jy
+ 6v/48ur/+PLq//fx6f/38en/9/Dn//bw5v/27+b/9u/l//bv5f/27uT/9e7j//Xt4v/17eL/9ezh//Ts
+ 4P/07OD/7uDR/+fSwP/myrT/ellI/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIdeS//36d//+fPt//n0
+ 7f/59O3/+fTt//nz7f/58+3/+PPs//jy6//48uv/9/Hp//fx6f/38Oj/9/Dn//bw5//27+b/9u/l//bu
+ 5P/17uT/9e3j//Xt4v/27eL/8OHT/+fTwf/oy7X/e1pI/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIZg
+ Tf/26uD/+fTu//n07v/59O7/+fTu//n07v/59O7/+fTu//jz7f/48+z/+PLq//fy6v/38en/9/Ho//fw
+ 6P/38Of/9u/m//bv5f/27uT/9e7k//Xt4//17uP/7+PV/+jTwv/ny7b/fFlI/wAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAIZgTf/26+H/+fXv//n18P/69fD/+vXw//n17//59e//+fXv//n07v/59O3/+PPs//jy
+ 6//48ur/9/Hp//fx6f/38Oj/9/Dn//bv5v/27+X/9u7l//Xu5P/17uT/7+LU/+jTwv/ny7j/fFlI/wAA
+ AAAAAAAAAAAAAAAAAACFYVD/hGFR/4NfT/+DX0//g19P/4JfT/+CYE//gl5O/4JeTv+BXk7/gV5O/4Bd
+ Tf+AXU3/f15N/39cTf9/XEz/v6+n/4dfTP/37OL/+vbx//r28f/69vH/+vbx//r28f/69vD/+vXw//n1
+ 7//59O7/+PPt//jz7P/48uv/+PLq//fx6v/38en/9/Do//fw5//27+b/9u/l//bu5P/17+X/7+TV/+jU
+ w//nzbf/fFlK/wAAAAAAAAAAAAAAAAAAAACAXEv/7tG7/+rNuf/qzbn/6s26/+rNuv/qzbn/6s25/+rN
+ uf/pzrj/6c24/+rNt//qzbf/6sy3/+rMtv/pzLb/8NrL/4hhTv/37OP/+vby//r38v/69/L/+vfy//r3
+ 8v/69vL/+vbx//r18P/59fD/+fTu//nz7f/48+z/+PPr//jy6//38ur/9/Hp//fw6P/38Of/9u/m//bv
+ 5f/37+X/8ePW/+jUxP/nzLn/fVtJ/wAAAAAAAAAAAAAAAAAAAACAWkn/8N7P/+zazP/s28z/7NvM/+zb
+ zP/s2sz/7NrM/+zay//r2sv/69rK/+vZyf/r2cn/69jI/+rYyP/q2Mf/8OPY/4thT//47uX/+/j0//v4
+ 9f/7+PX/+/j1//v49f/7+PT/+/j0//r38v/69vL/+fXw//n17//59O7/+fTt//jz7P/48+z/+PLr//fx
+ 6v/38en/9/Do//fw5//28Of/8OXX/+nVxf/ozbn/flpJ/wAAAAAAAAAAAAAAAAAAAACBXEr/9OXY//Lo
+ 3v/y6N7/8ujd//Lo3f/y6N7/8uje//Lo3v/y6d3/8ufc//Ho2//x5tv/8eba//Hn2v/y5dn/8OXY/4ti
+ UP/57+j//Pr3//z69//8+vf//Pr3//z69//8+ff//Pn2//v49f/7+PT/+vby//r28f/69fD/+fXv//n0
+ 7v/59O3/+PPs//jy6//48ur/9/Hp//fx6P/48ej/8uTa/+nVxv/oz7v/f1xK/wAAAAAAAAAAAAAAAAAA
+ AACCW0r/9efa//bx5v/28ej/9/Do//fw6P/28ej/9vHn//bv5//28Ob/9vDm//Xv5f/17+T/9e3j//Xu
+ 4//27uL/9Ozi/4xkT//58On//Pr4//z7+P/9+/n//fv5//z6+P/8+vj//Pr3//v59v/7+PX/+vfz//r2
+ 8v/69vH/+vXw//n17//59O7/+fTt//jz7P/48uv/+PLq//fx6f/38en/8eTZ/+nWx//ozrr/f1tK/wAA
+ AAAAAAAAAAAAAAAAAACDXkv/9Ofb//fx6f/38en/9/Hp//fx6f/38en/9/Hp//fx6f/38Oj/9/Dn//bv
+ 5v/27+X/9u/l//bu5P/17uT/9e3j/45jUf/58er//fv5//37+v/9/Pr//fz6//37+f/9+/n//Pv5//z6
+ 9//8+fb/+/j0//r38//69vL/+vbx//r18P/59e//+fTu//jz7f/48+z/+PLr//fx6v/38un/8ebb/+rW
+ x//ozrz/gFtK/wAAAAAAAAAAAAAAAAAAAACEXUr/9ujc//jy6v/48ur/+PLr//jy6//48ur/+PLq//jy
+ 6v/38en/9/Hp//fw5//28Ob/9u/m//Lr5f/q5ub/5eDm/4NiXv/l4u7/7O78//H1/P/6+f3//v39//79
+ /P/9/Pz//fz7//37+f/8+vj/+/n1//v49P/79/P/+vfy//r28f/69fD/+fXv//n07v/58+3/+PPs//jy
+ 6//38uv/8eXc/+rWyP/p0L3/gFxL/wAAAAAAAAAAAAAAAAAAAACHXkv/9+nf//nz7f/59O3/+fTt//n0
+ 7f/58+3/+fPt//jz7P/48uv/+PLr//fx6f/x7Or/4d/q/9PV6v/Kzuv/xMjr/3Jad//GyPH/yNP9/8vq
+ /v/Z4P7/5+v+//j5/f/+/f3//v38//37+v/9+/n//Pn2//v49f/7+PT/+/fz//r38v/69vH/+fXw//n0
+ 7//59O3/+PPs//jy6//58+v/8efb/+rXyf/pz7z/gVxL/wAAAAAAAAAAAAAAAAAAAACGYE3/9urg//n0
+ 7v/59O7/+fTu//n07v/59O7/+fTu//n07v/48+3/+PPs/+jm6//S1e3/xMnu/7jB7v+uue//qLPv/2FW
+ i/+nsfT/rNn//7DQ/v++yv//ytT//9jf/v/u8f7//v39//38+//9+/r//Pr3//v59v/7+PX/+/j0//r3
+ 8v/69vH/+vXw//n17//59O7/+fPt//jz7P/48+v/8ubd/+rXyf/pz7z/gVxL/wAAAAAAAAAAAAAAAAAA
+ AACGYE3/9uvh//n17//59fD/+vXw//r18P/59e//+fXv//n17//59O7/5Ofv/8vS8P+7wfD/q7fx/5mo
+ 8f+El/P/cYn0/z1Ht/9oe/j/nPL//4Wg//+esP//sMD//8DM///S2///6u/+//38/P/9/Pv//Pr3//z5
+ 9v/7+fX/+/j0//v38//69vL/+vbx//n18P/59O7/+fTt//jz7P/48+z/8ubc/+rXyf/pz77/gV5L/wAA
+ AAAAAAAAAAAAAAAAAACHX0z/9+zi//r28f/69vH/+vbx//r28f/69vH/+vbw//r18P/n5/D/zM/x/7fp
+ 9/+ftPT/gpT0/1l1+P9AZfr/NmP6/yBC2v85a/z/o////0Jg//9be///hp7//6e4//+8yf//0dr//+3v
+ /f/+/fz//Pv4//z69//8+fb/+/j1//v49P/69/P/+vbx//r18P/59e//+fTu//jz7f/49Oz/8ubc/+rX
+ yf/pz73/gl1N/wAAAAAAAAAAAAAAAAAAAACIYU7/9+zj//r28v/69/L/+vfy//r38v/69/L/+vby//Lv
+ 8f/S1vL/usP0/52v9f+k+/3/VIX7/zVd+/8xZPv/ZLb9/xtM4P9itP7/eOj//zJj//82Zf//R2z//3mU
+ //+mt///vsv//9be/v/39/3//fv5//z6+P/8+vf/+/n2//v49P/79/P/+vfy//r28f/59e//+vXv//j0
+ 7v/59O3/8ubc/+jVx//kybj/gl1M/wAAAAAAAAAAAAAAAAAAAACLYU//+O7l//v49P/7+PX/+/j1//v4
+ 9f/7+PX/+/j0/+Dj9f/DzPX/qrf2/36S9/9Sgvv/nv///1Sh/f8qZvz/lPb+/yN26v9i5P//YtP//ytr
+ //8/hf//NWr//0Vq//+Bmv//rb3//8bR/v/k6f3//fv5//z6+P/8+vf//Pn2//v49P/89/T/+/fz//r2
+ 8v/59O//9vHr//n17v/28On/8+zk/+nZzv/fxLT/hmJQ/wAAAAAAAAAAAAAAAAAAAACLYlD/+e/o//z6
+ 9//8+vf//Pr3//z69//8+vf/9vT3/9LY9/+2wvj/lqj4/1Jy+/80Xfz/Xq79/173//9hwv7/Yd///33p
+ +/814P//Zcz//2bG//9z0P//L2z//zVk//9Uc///mKn//7jF/v/U3P3/+Pf5//z6+P/9+/j///76////
+ /P///fr//fz3//n18v/18Or/8enk/+zl3v/o39n/5dzW/9zKv/+xj3//hGNV9AAAAAAAAAAAAAAAAAAA
+ AACMZE//+fDp//z6+P/8+/j//fv5//37+f/8+vj/7O34/8rS+f+su/n/e5T6/zxk/P8wZ/3/KWr9/2vW
+ /v8f2f//ae7//y3b//8Q0v//cvP//2bw//8igf//KnH//zd3//9VkP//ksz//7Da///J1v3/7u/5//z6
+ +P/9+/n/2s3F/8Cqn/++ppv/vKOY/7iglP+3npL/s5uQ/7KYj/+ojYD/lHNl/4diUf+IY1L8imxdTwAA
+ AAAAAAAAAAAAAAAAAACOY1H/+fHq//37+f/9+/r//fz6//38+v/9+/n/5ef6/8PN+v+ltfr/ZYL7/zVh
+ /f9bq/7/cNL+/2fT/v9l7///AMr//wDM//8AzP//C9H//4Ly//9c4P//avX//57///96zf//b5j//6a0
+ /v/Ezv3/5uj6//z6+P///vv/w66j/6SDc//Mu7L/yLOl/8atmv/FqI7/w6KD/8GceP/KonL/uI9l/4lk
+ VvuUc2JFAAAAAAAAAAAAAAAAAAAAAAAAAACPZlD/+vLs//79/P/+/fz//v39//79/f/+/fz/4eX8/8DM
+ /P+hsfv/WXn9/zRm/f8sbP3/UK7+/1jn//8Ez///AMz//wDM//8AzP//AMz//xzX//9b5P//W7z//y10
+ //81YP//Wnn//6Gz/v/Bzf3/4uX6//z6+P///Pr/zbmw/7ykmP////r/+/De//jmyf/13LP/8tOf//PM
+ i//TqW//h2VX+Y9zYzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQZVL/+/Lt//79/f/+/v3//v7+//7+
+ /v/+/v3/4ub9/8HN/f+hsfz/WXb9/zRf/f8ze/3/YMH+/1bk//8T0v//AMz//wDM//8AzP//AMv//z3j
+ //9n0///JIH//y1x//81aP//Wnv//6Gz/v/Bzf3/4eX6//z69//++/j/3dDI/6eGdf/98t7/9eLD//LY
+ r//uzpv/78iI/8uga/+HZVf5j3JnMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACRZ1H/+/Pv//7+
+ /v/+/v7////////////+/v7/5ur+/8PM/f+ksvz/cqL+/4Tc/v+Q////XvT//1zm//9b6///AMr//wDM
+ //8AzP//C9D//3Ds//9l3v//hOP//z+H//82Zf//Y4L//6W1/v/Czf3/5ef5//z69///+/n/3tLK/6aC
+ bv/76Mn/8teu/+7Nm//vyIb/xZpp/4dkV/mQc2U6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AACSZlL/+/Pu////////////////////////////7/L//8bd/v+v5f7/kM7+/1iV/v8/f/7/J3P9/1Cv
+ /v9G6f//Wur//yHX//8P0v//Vur//0nl//8zkv//KnD//zFr//87Zf//epP//629/f/J0/z/7e74//z5
+ 9//9/Pf/3tLK/6WAaf/23LH/7s6Y/+/Hhf/MoGr/hmZY95N2ajAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAACTZ1P//PTx////////////////////////////+fr//9Tb//+3wv7/lKb9/09u
+ /f80ZP3/LHD9/5n9//9Tsf7/V+j//2vp/f9U6v//ctL//2Lp//907f//LG7//zVn//9Qc///lKn+/7fE
+ /P/S2fv/9/b3//z59v/9+vj/3tLL/6R9ZP/00pv/8MaD/8aaaP+IZ1v1lXlqKAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACValT/+/Pw/////////////////////////////////+Po
+ ///Ez/7/qrn+/3qT/P9AZv3/RYT+/zJ4/v8ndv3/Y/b//1Gq8f901v7/VbH//yx6//+E7f//ftL//0Fe
+ //97lP7/qrn+/8PO+//h5fr//Pn2//v59f/9+vb/39PL/6N8Xv/zy4X/v5Rl/4dnWvaVfHQhAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACVaVT/+/Pw////////////////////
+ //////////////b3///T2/7/u8f+/6Gx+/9wi/z/QWf9/zRj/f9Chf3/kv///x9f5P82gPz/Xa3//zFn
+ //8zYv//hdn//4W8//+isP3/u8f+/9PZ+v/09fj/+/r2//v49f/++/f/283E/6d/W//MoGj/imhc9ZN4
+ cSgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACWa1T/+/Xv////
+ ///////////////////////////////////q7/7/ztf9/7jE+/+hsfv/fJX8/1Nw/f9bmP//hdv//x9A
+ 3P80Y/v/OGn+/zxl/v9Scv3/fI79/6jg/f+1zfv/zNP5/+nq9//6+PX/+/fz//n28v//+vb/w62g/5hv
+ Vv+LbV/yjHNrIQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AACXalb/+/Tv///////////////////////////////////////9/f7/5+z9/83V+v+7xvr/q7n7/4KL
+ 3P+CuuT/bZzq/zlEwP9eevf/aIL2/32Q9P+Vo/L/qbLx/7m97//K1u//5N/q//rv6P/67+f/+e3l//nt
+ 5f/77+X/m3Vl/41tYO+TfnIaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAACYbFX/+/Tv///////////////////////////////////////+/v7//v39/+rs
+ +f/T2vn/x9H8/46JvP+PwMz/j5jc/2Ralv9kWZb/ZlqS/2pbjf9wXYf/d2J//39kdf+MZ2T/lm1Y/5Rq
+ V/+Ta1j/kWhV/5FpVv+QaVf/i3Bj1X9yZRUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACYa1f/+/Tv////////////////////////////////////
+ ///+/v7//v39//37+f/08/j/5ej7/62jvP+escD/yNH8/8PH7f/BwuL/w8DV/8e+yf/Qwbv/ybWk/6aR
+ jfuPc2M6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACaa1b/+/Xv////////////////////
+ ///////////////////+/v3//v38//z7+f/8+vf//vv4/9jMyf+ehoD/6OLh/93Ryf/ayLf/2sGj/+LA
+ j//Hnm7/h2VX+Y9yZzEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACZbVb/+/Pw////
+ ///////////////////////////////////+/f3//fz8//z6+P/8+vf///v5/97Syv+mgm7/++jJ//LX
+ rv/uzZv/78iG/8Waaf+HZFf5kHNlOgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AACaa1b/+vTu//////////////////////////////////7+/v/9/fz//fz7//z6+P/8+ff//fz3/97S
+ yv+lgGn/9tyx/+7OmP/vx4X/zKBq/4ZmWPeTdmowAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAACYa1f/+vLt//7+/v///////////////////////v7+//7+/v/9/Pv//fz6//z6
+ 9//8+fb//fr4/97Sy/+kfWT/9NKb//DGg//Gmmj/iGdb9ZV5aigAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACZbFX/+vPs//7+/f/+/v7//v7+//7+/v/+/v7//v79//79
+ /f/9/Pr//fv5//z59v/7+fX//fr2/9/Ty/+jfF7/88uF/7+UZf+HZ1r2lXx0IQAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACXalX/+fHr///9/P/+/f7//v/9//7/
+ /f/+/f7///78//38/f/++/n//Pz4//v69v/7+PX//vv3/9vNxP+nf1v/zKBo/4poXPWTeHEoAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACWa1b/+vLr//37
+ +f/8+/n//Pv6//z7+v/8+/n//fr5//v6+P/8+fb/+vj1//v38//59vL///r2/8OtoP+Yb1b/i21f8oxz
+ ayEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AACYa1b//fHp//rw6f/68On/+vDq//rw6v/68en/+/Hq//vx6P/67+j/+u/n//nt5f/57eX/++/l/5t1
+ Zf+NbWDvk35yGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAACbcV3/m3Bc/5pvWv+Zblr/mW5a/5lvW/+Xblr/l2xY/5ZtWP+Ualf/k2tY/5Fo
+ Vf+RaVb/kGlX/4twY9V/cmUVAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD//+AAAAMAAP//4AAAAwAA///gAAAD
+ AAD//+AAAAMAAP//4AAAAwAA///gAAADAAD//+AAAAMAAP//4AAAAwAA///gAAADAAD//+AAAAMAAMAA
+ AAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAAD
+ AADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAMAAMAAAAAAAwAAwAAAAAADAADAAAAAAAcAAMAA
+ AAAADwAAwAAAAAAfAADAAAAAAD8AAMAAAAAAfwAAwAAAAAD/AADAAAAAAf8AAMAAAAAD/wAAwAAAAAf/
+ AADAAAAAD/8AAMAAAAAf/wAAwAAAAD//AADAAAA///8AAMAAAH///wAAwAAA////AADAAAH///8AAMAA
+ A////wAAwAAH////AADAAA////8AAMAAH////wAAwAA/////AADAAH////8AAP///////wAA
+
+
+
+ 118, 17
+
+
+
+ AAEAAAD/////AQAAAAAAAAAEAQAAABZTeXN0ZW0uSU8uTWVtb3J5U3RyZWFtCgAAAAdfYnVmZmVyB19v
+ cmlnaW4JX3Bvc2l0aW9uB19sZW5ndGgJX2NhcGFjaXR5C19leHBhbmRhYmxlCV93cml0YWJsZQpfZXhw
+ b3NhYmxlB19pc09wZW4dTWFyc2hhbEJ5UmVmT2JqZWN0K19faWRlbnRpdHkHAAAAAAAAAAACAggICAgB
+ AQEBCQIAAAAAAAAADwgAAA8IAAAAEAAAAQEBAQoPAgAAAAAQAAACAAEAAAD/////AQAAAAAAAAAMAgAA
+ AGBTeW5jZnVzaW9uLlRvb2xzLldpbmRvd3MsIFZlcnNpb249MTEuMzAzNS4wLjIyLCBDdWx0dXJlPW5l
+ dXRyYWwsIFB1YmxpY0tleVRva2VuPTNkNjdlZDFmODdkNDRjODkFAQAAADpTeW5jZnVzaW9uLldpbmRv
+ d3MuRm9ybXMuVG9vbHMuQ0JDdHJsclNlcmlhbGl6YXRpb25XcmFwcGVyAgAAAAhjYkJvcmRlcg1odENC
+ YXJXcmFwcGVyBAMzU3luY2Z1c2lvbi5XaW5kb3dzLkZvcm1zLlRvb2xzLkNvbW1hbmRCYXJEb2NrQm9y
+ ZGVyAgAAABxTeXN0ZW0uQ29sbGVjdGlvbnMuSGFzaHRhYmxlAgAAAAX9////M1N5bmNmdXNpb24uV2lu
+ ZG93cy5Gb3Jtcy5Ub29scy5Db21tYW5kQmFyRG9ja0JvcmRlcgEAAAAHdmFsdWVfXwAIAgAAAA8AAAAJ
+ BAAAAAQEAAAAHFN5c3RlbS5Db2xsZWN0aW9ucy5IYXNodGFibGUHAAAACkxvYWRGYWN0b3IHVmVyc2lv
+ bghDb21wYXJlchBIYXNoQ29kZVByb3ZpZGVyCEhhc2hTaXplBEtleXMGVmFsdWVzAAADAwAFBQsIHFN5
+ c3RlbS5Db2xsZWN0aW9ucy5JQ29tcGFyZXIkU3lzdGVtLkNvbGxlY3Rpb25zLklIYXNoQ29kZVByb3Zp
+ ZGVyCOxROD8KAAAACgoXAAAACQUAAAAJBgAAABAFAAAACQAAAAYHAAAAElRvb2xiYXJIb3N0X0xheW91
+ dAYIAAAAG1Rvb2xiYXJIb3N0X1RleHRfRm9ybWF0dGluZwYJAAAAElRvb2xiYXJIb3N0X1JvdGF0ZQYK
+ AAAAE1Rvb2xiYXJIb3N0X0RyYXdpbmcGCwAAABFUb29sYmFySG9zdF9BbGlnbgYMAAAAEFRvb2xiYXJI
+ b3N0X1ZpZXcGDQAAABFUb29sYmFySG9zdF9OdWRnZQYOAAAAEVRvb2xiYXJIb3N0X0xpbmtzBg8AAAAQ
+ VG9vbGJhckhvc3RfTm9kZRAGAAAACQAAAAkQAAAACREAAAAJEgAAAAkTAAAACRQAAAAJFQAAAAkWAAAA
+ CRcAAAAJGAAAAAwZAAAAUVN5c3RlbS5EcmF3aW5nLCBWZXJzaW9uPTIuMC4wLjAsIEN1bHR1cmU9bmV1
+ dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYQUQAAAAPlN5bmNmdXNpb24uV2luZG93
+ cy5Gb3Jtcy5Ub29scy5YUE1lbnVzLkNvbW1hbmRCYXJFeHRTZXJpYWxpemVyCAAAAAlNYXhMZW5ndGgJ
+ TWluTGVuZ3RoE0NvbW1hbmRCYXJEb2NrU3RhdGUMUm93T2Zmc2V0RGlyB1JDSW5kZXgLUkNDb3VudERy
+ YWcNRmxvYXRMb2NhdGlvbglGbG9hdFNpemUAAAQAAAAEBAgIMlN5bmNmdXNpb24uV2luZG93cy5Gb3Jt
+ cy5Ub29scy5Db21tYW5kQmFyRG9ja1N0YXRlAgAAAAgICBRTeXN0ZW0uRHJhd2luZy5Qb2ludBkAAAAT
+ U3lzdGVtLkRyYXdpbmcuU2l6ZRkAAAACAAAAjAAAADAAAAAF5v///zJTeW5jZnVzaW9uLldpbmRvd3Mu
+ Rm9ybXMuVG9vbHMuQ29tbWFuZEJhckRvY2tTdGF0ZQEAAAAHdmFsdWVfXwAIAgAAACAAAAD/////////
+ /wAAAAAF5f///xRTeXN0ZW0uRHJhd2luZy5Qb2ludAIAAAABeAF5AAAICBkAAAAPAAAADwAAAAXk////
+ E1N5c3RlbS5EcmF3aW5nLlNpemUCAAAABXdpZHRoBmhlaWdodAAACAgZAAAAewAAADEAAAABEQAAABAA
+ AADjAQAAlwAAAAHj////5v///yAAAAD//////////wAAAAAB4v///+X///8PAAAADwAAAAHh////5P//
+ /9IBAAA0AAAAARIAAAAQAAAAdQAAADAAAAAB4P///+b///8gAAAA//////////8AAAAAAd/////l////
+ DwAAAA8AAAAB3v///+T///9kAAAAMQAAAAETAAAAEAAAALcBAAAwAAAAAd3////m////IAAAAP//////
+ ////AAAAAAHc////5f///w8AAAAPAAAAAdv////k////pgEAADEAAAABFAAAABAAAACjAAAAMAAAAAHa
+ ////5v///yAAAAD//////////wAAAAAB2f///+X///8PAAAADwAAAAHY////5P///5IAAAAxAAAAARUA
+ AAAQAAAArQAAAFEAAAAB1////+b///8gAAAA//////////8AAAAAAdb////l////DwAAAA8AAAAB1f//
+ /+T///+cAAAANAAAAAEWAAAAEAAAAHUAAAAwAAAAAdT////m////IAAAAP//////////AAAAAAHT////
+ 5f///w8AAAAPAAAAAdL////k////ZAAAADEAAAABFwAAABAAAAB1AAAAMAAAAAHR////5v///yAAAAD/
+ /////////wAAAAAB0P///+X///8PAAAADwAAAAHP////5P///2QAAAAxAAAAARgAAAAQAAAAowAAADAA
+ AAABzv///+b///8gAAAA//////////8AAAAAAc3////l////DwAAAA8AAAABzP///+T///+SAAAAMQAA
+ AAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs=
+
+
+
+ 284, 17
+
+
+
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
+ LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
+ ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAB8
+ MAAAAk1TRnQBSQFMAgEBTwEAAYQBAAEsAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
+ AwABQAMAAUABAQIAAQEBAAEIBgABUBgAAYACAAGAAwACgAEAAYADAAGAAQABgAEAAoACAAPAAQABwAHc
+ AcABAAHwAcoBpgEAATMFAAEzAQABMwEAATMBAAIzAgADFgEAAxwBAAMiAQADKQEAA1UBAANNAQADQgEA
+ AzkBAAGAAXwB/wEAAlAB/wEAAZMBAAHWAQAB/wHsAcwBAAHGAdYB7wEAAdYC5wEAAZABqQGtAgAB/wEz
+ AwABZgMAAZkDAAHMAgABMwMAAjMCAAEzAWYCAAEzAZkCAAEzAcwCAAEzAf8CAAFmAwABZgEzAgACZgIA
+ AWYBmQIAAWYBzAIAAWYB/wIAAZkDAAGZATMCAAGZAWYCAAKZAgABmQHMAgABmQH/AgABzAMAAcwBMwIA
+ AcwBZgIAAcwBmQIAAswCAAHMAf8CAAH/AWYCAAH/AZkCAAH/AcwBAAEzAf8CAAH/AQABMwEAATMBAAFm
+ AQABMwEAAZkBAAEzAQABzAEAATMBAAH/AQAB/wEzAgADMwEAAjMBZgEAAjMBmQEAAjMBzAEAAjMB/wEA
+ ATMBZgIAATMBZgEzAQABMwJmAQABMwFmAZkBAAEzAWYBzAEAATMBZgH/AQABMwGZAgABMwGZATMBAAEz
+ AZkBZgEAATMCmQEAATMBmQHMAQABMwGZAf8BAAEzAcwCAAEzAcwBMwEAATMBzAFmAQABMwHMAZkBAAEz
+ AswBAAEzAcwB/wEAATMB/wEzAQABMwH/AWYBAAEzAf8BmQEAATMB/wHMAQABMwL/AQABZgMAAWYBAAEz
+ AQABZgEAAWYBAAFmAQABmQEAAWYBAAHMAQABZgEAAf8BAAFmATMCAAFmAjMBAAFmATMBZgEAAWYBMwGZ
+ AQABZgEzAcwBAAFmATMB/wEAAmYCAAJmATMBAANmAQACZgGZAQACZgHMAQABZgGZAgABZgGZATMBAAFm
+ AZkBZgEAAWYCmQEAAWYBmQHMAQABZgGZAf8BAAFmAcwCAAFmAcwBMwEAAWYBzAGZAQABZgLMAQABZgHM
+ Af8BAAFmAf8CAAFmAf8BMwEAAWYB/wGZAQABZgH/AcwBAAHMAQAB/wEAAf8BAAHMAQACmQIAAZkBMwGZ
+ AQABmQEAAZkBAAGZAQABzAEAAZkDAAGZAjMBAAGZAQABZgEAAZkBMwHMAQABmQEAAf8BAAGZAWYCAAGZ
+ AWYBMwEAAZkBMwFmAQABmQFmAZkBAAGZAWYBzAEAAZkBMwH/AQACmQEzAQACmQFmAQADmQEAApkBzAEA
+ ApkB/wEAAZkBzAIAAZkBzAEzAQABZgHMAWYBAAGZAcwBmQEAAZkCzAEAAZkBzAH/AQABmQH/AgABmQH/
+ ATMBAAGZAcwBZgEAAZkB/wGZAQABmQH/AcwBAAGZAv8BAAHMAwABmQEAATMBAAHMAQABZgEAAcwBAAGZ
+ AQABzAEAAcwBAAGZATMCAAHMAjMBAAHMATMBZgEAAcwBMwGZAQABzAEzAcwBAAHMATMB/wEAAcwBZgIA
+ AcwBZgEzAQABmQJmAQABzAFmAZkBAAHMAWYBzAEAAZkBZgH/AQABzAGZAgABzAGZATMBAAHMAZkBZgEA
+ AcwCmQEAAcwBmQHMAQABzAGZAf8BAALMAgACzAEzAQACzAFmAQACzAGZAQADzAEAAswB/wEAAcwB/wIA
+ AcwB/wEzAQABmQH/AWYBAAHMAf8BmQEAAcwB/wHMAQABzAL/AQABzAEAATMBAAH/AQABZgEAAf8BAAGZ
+ AQABzAEzAgAB/wIzAQAB/wEzAWYBAAH/ATMBmQEAAf8BMwHMAQAB/wEzAf8BAAH/AWYCAAH/AWYBMwEA
+ AcwCZgEAAf8BZgGZAQAB/wFmAcwBAAHMAWYB/wEAAf8BmQIAAf8BmQEzAQAB/wGZAWYBAAH/ApkBAAH/
+ AZkBzAEAAf8BmQH/AQAB/wHMAgAB/wHMATMBAAH/AcwBZgEAAf8BzAGZAQAB/wLMAQAB/wHMAf8BAAL/
+ ATMBAAHMAf8BZgEAAv8BmQEAAv8BzAEAAmYB/wEAAWYB/wFmAQABZgL/AQAB/wJmAQAB/wFmAf8BAAL/
+ AWYBAAEhAQABpQEAA18BAAN3AQADhgEAA5YBAAPLAQADsgEAA9cBAAPdAQAD4wEAA+oBAAPxAQAD+AEA
+ AfAB+wH/AQABpAKgAQADgAMAAf8CAAH/AwAC/wEAAf8DAAH/AQAB/wEAAv8CAAP/AQABpwjPBKcCoTEA
+ AaEB6gESCacDoRkAB/8SAAGGAewB7wGuAaELAAHsAQ4B6gcAAeoBDgHsBgADBAEAB/8SAAGhAZMBBwEc
+ AZMBpwsAAewBDgHqBQAB6gEOAewHAAEEAwAH/xMAAa4BHAHsAu8BzwsAAewBDgHqAwAB6gEOAewIAAEE
+ HQABoQGTAfcB7AH3Ae0BrgsAAewBDgHqAQAB6gEOAewJAAEEHgABzwHvAfcB7QHvAewBrgsAAewBDgEQ
+ AQ4B7AoAAQQfAAHPAZIC7wEHAe0BhgsAARQBDgEUCwABBCAAAa4B7AEHAe8BvAHsAYYJAAHqAQ4BEgEO
+ AeoKAAEEIQABrgHtAfEC7wHsAYYHAAHqAQ4B7AEAAewBDgHqCQABBCIAAYYB9wG8Ae8B9wHsAYYFAAES
+ AQ4B7AMAAewBDgESCAABBCMAAa4B7wEHAe8C7QGLAwAB7AEOAeoFAAHqAQ4B7CwAAa4C7wH0AfcBbgFn
+ AQAB7AEOAeoHAAHqAQ4B7AMAB/8iAAGuAbwB8gGTAkYRAAf/IwABhgFuAkYBghEAB/8kAAFnAUYBggGh
+ ewABBDYACwQKAAP/AwABBC0AAQQLAAP/AwABBAsAA/8RAAEEFAAC7AMAA/8DAAEEBgAC7AMAA/8GAALs
+ AwAD/wIAAwQTAALsAwAD/wMAAQQGAALsAwAD/wYAAuwDAAP/AwABBAQACv8GAALsAwAD/wMAAQQGAALs
+ AwAD/wYAAuwDAAP/AwABBAQACv8GAALsAwAD/wMAAQQGAALsAwAD/wYAAuwDAAP/AwABBAQACv8GAALs
+ AwAD/wMAAQQGAALsAwAD/wYAAuwDAAP/AwABBBQAAuwDAAP/AwABBAYAAuwDAAP/BgAC7AMAA/8DAAEE
+ FAAC7AMAA/8DAAEEBgAC7AMAA/8GAALsAwAD/wMAAQQUAALsAwAD/wIAAwQFAALsAwAD/wYAAuwDAAP/
+ AwABBAYACOwRAAEECwAD/wsAA/8DAAEEBgAI7CsAA/8DAAEE5QABBD4ACwQXAAH/ARsB/wEEAf8BGwH/
+ BgAB/wEbAf8BGwH/ARsBBAEbAf8BGwH/ARsB/wUAAQQgAAEbAf8DBAH/ARsGAAEbAf8BGwH/ARsDBAEb
+ Af8BGwH/ARsVAAr/BwAB/wUEAf8GAAH/ARsB/wEbBQQBGwH/ARsB/xUACv8HAAEbAf8BGwEEARsB/wEb
+ BgABGwH/AQQB/wEbAf8BBAH/ARsB/wEEAf8BGwUACv8GAAr/BwAB/wEbAf8BBAH/ARsB/wYAAf8CBAEb
+ Af8BGwEEARsB/wEbAgQB/wUACv8XAAEbAf8BGwEEARsB/wEbBgANBAUACv8XAAH/ARsB/wEEAf8BGwH/
+ BgAB/wIEARsB/wEbAQQBGwH/ARsCBAH/JgABGwH/ARsBBAEbAf8BGwYAARsB/wEEAf8BGwH/AQQB/wEb
+ Af8BBAH/ARsWAAjsCAAB/wUEAf8GAAH/ARsB/wEbBQQBGwH/ARsB/xYACOwIAAEbAf8DBAH/ARsGAAEb
+ Af8BGwH/ARsDBAEbAf8BGwH/ARsFAAjsGQAB/wEbAf8BBAH/ARsB/wYAAf8BGwH/ARsB/wEbAQQBGwH/
+ ARsB/wEbAf8FAAjsuAAB/wEbAf8BGwH/ARsB/wEbAf8BGzYAARsB/wEbAf8BGwH/ARsB/wEbAf9ZAAEH
+ CQABGwH/DAABGwH/CAABBBwAAQcKAAH/ARsMAAH/ARsHAAMEJgABGwH/AwABBAQAAQQDAAEbAf8GAAUE
+ BgAB/wEbAf8BGwH/ARsB/wEbAf8BGwH/ARsB/wEbEQAB/wEbAgACBAQAAgQCAAH/ARsIAAEECAABGwH/
+ AQQB/wEbAf8BGwH/ARsB/wEbAQQBGwH/BwABBwkAARsB/wEACgQBAAEbAf8IAAEECAAB/wIEARsB/wEb
+ Af8BGwH/ARsB/wIEARsRAAH/ARsCAAIEBAACBAIAAf8BGwgAAQQIAA4EEQABGwH/AwABBAQAAQQDAAEb
+ Af8IAAEECAAB/wIEARsB/wEbAf8BGwH/ARsB/wIEARsRAAH/ARsMAAH/ARsGAAUEBgABGwH/AQQB/wEb
+ Af8BGwH/ARsB/wEbAQQBGwH/BwABBwkAARsB/wwAARsB/wcAAwQHAAH/ARsB/wEbAf8BGwH/ARsB/wEb
+ Af8BGwH/ARsGAAEHCgAB/wEbDAAB/wEbCAABBHoAARsB/wEbAf8BGwH/ARsB/wEbAf82AAH/ARsB/wEb
+ Af8BGwH/ARsB/wEbEwAgCSAAIAkgABMJArsECQO7BAkEAAGFAQQBoQIAAQQBhRUADAkBtAKLAwkBtQKu
+ AbUCCQG1A20BkQMJBAABhQEKAYUDAAEEFQAM3QEJAc8BtQHdAwkBrgFtAbsCCQG7ARMBEAETAbUDCQUA
+ BQoWAAMZAbsBDwFDAbsBGQG7ARQBAAHtARkBCQGLAd0DCQG1AW0B9wK7AQkBFQFDAZEECQUAAaEBCgEE
+ AQABhQYAAe0FAAHtCQADGQHdAe0BEAEVAfcBEwEAARIBCQG0Ac8BtAEZA90BCQHrARMC6gETAREBFAEJ
+ BN0GAAEKAaEYAAQZAQkB7AERAgABEwEJCRkB9wGSAd0BGQEVAUMB7AUZBgABChkABRkBCQFtAQ8BQwHv
+ ChkBCQHrArsBQwEUAQkFGQcAAQoYAAQZAQkB7AESARQBDwESAQkKGQHsAfcBEgFDAesGGSAAAxkB3QHs
+ ARQB6wHvAesBDwHqAQkJGQEHAesBFAFDAQkGGQwAAYUBoQQAAe0BAAHtCwADGQEJAW0B6wG7ARkBvAHs
+ AREB9woZAesBFAHsBxkLAAGFAgoBoREAFhkB9wHqAd0BGQHdAbUCtAHPARkKAAGhAQoCAAEKAaEQABcZ
+ AbwDGQG1AosBtQEZCgABoQSFAaEQABwZAbUBCQIZIAAgGVAAEAkwABAJMAAQCREAB/8YABAJBgAB/AoA
+ Af8BEwH/ARMB/wETAf8MAAj8BAADCQGRAQ4B6gIJAZEBAAFDBQkGAAL8CQAH/wwACPwEAAPdAQkBbQEO
+ AesB7QEAAQ4BtQXdBgAD/AgAAf8BEwH/AfwB/wETAf8MAAj8BAAEGQEJAW0BDgIAAe0GGQYABPwHAAL/
+ A/wC/wwACPwEAAUZAe8BFAEAAeoHGQYABfwGAAH/BfwB/wwACPwEAAQZAbsBbQESAUMBAAGSBhkGAAT8
+ BwAB/wIAAfwC/wEAAfALAAj8BAADGQEJAesBEwHtAe8BFAEOAfcFGQYAA/wIAAH/AQAB8AEAAf8BAAHw
+ AQAB8AoACPwEAAMZAQcBbQHsAd0BGQG1ARMBFAEJAa0BiwEJARkGAAL8DAAB8AEAAfABAAHwAQAD8AEA
+ AvwEAAj8BAAMGQK0AhkGAAH8DgAB8AEAAfABAAXwAvwQAAwZAd0BtAEJARkWAAHwAQAG8AL8EAALGQEJ
+ Ac8BtAHdARkXAAbwAQAC/BAAEBkeAAL8EAAQGSEAD/wxAA/8MQAP/DEAD/wCAAlRNgABXgEACVElAASG
+ AwAGhgMAAf8BXgEACVElAAH3AYYFAAH3AoYB9wQAAV4B/wFeAQAJUSUAAoYEAAH3AoYFAAH/AV4B/wFe
+ LgAB9wGGBAAChgH3BQABXgH/AV4B/wFeAf8BXgH/AV4qAAeGBgAB/wFeAf8BXgH/AV4B/wFeAf8qAAH3
+ AYYCAAKGAfcGAAFeAf8BXjEAAoYBAAKGOwAB9wOGAfc8AAOGPQAB9wGGAfc+AAGG/wBxAAH3DgAB9wEA
+ AfcsAAH3QgAB9z0AAfdCAAH3PQAB90IAAff/AG0AB/8GAAf/CgAH/wsAA/kNAAf/BgAH/woAB/8KAAH5
+ AwAC+QsAB/8GAAf/CgAH/wsAAfkDAAH5OwAB+QQAAfkNAAEEDAABBBEAAQQNAAH5BAAB+Q0AAQQLAAME
+ EQABBA0AAvkCAAH5BgAIBAoAAQQBAAEEAQABBBEAAQQMAAH5AQAC+QcAAQQTAAEEFAABBAQAAvwBAAL8
+ AgAB+QoAAQQTAAEEFAABBAMAAfwCAAL8AQAB/AIAAfkJAAEEEwABBBQAAQQDAAH8AwAB/AQAAfkxAAEE
+ BQAC/AEAAfwEAAH5BgAH/w0AB/8FAAf/AwABBAUAAfwCAAL8AwAC+QYAB/8NAAf/BQAH/wEAAgQGAAH8
+ AwAB/AsAB/8NAAf/BQAH/woAA/zDAAf/CwAF7AkAB+wLAAXsCQAH/wsABewJAAfsCwAF7AkAB/8OAALs
+ CQAH7AsABewVAAj7AQAC7AIABvsBAAfsBQAF+wEABewKAAIECQAI+wEAAuwCAAb7AQAH7AUABfsBAAXs
+ CQACBAoACPsFAAb7AQAH7AUABfsOAAIECwAI+wUABvsBAAfsBQAI+woAAgQMAAj7BQAG+xAABfsJAAIE
+ CgAC7AEACPsFAAr7BgAF7AEABfsIAAIECwAC7AEACPsFAAr7BgAF7AEABfsVAALsDgAK+wYABewLAAf/
+ CQAF7AsACvsGAAXsCwAH/wkABewLAAr7BgAF7AsAB//kAAEBGwAH7AQABQcDAAQBCwADAQUABAcEAAQB
+ CgAH7AUABAcDAAMBCgAFAQYAAwcEAAMBDwAD7AcAAgcDAAMBCAAHAQYAAwcEAAMBBAAK+wEAA+wMAAIB
+ FwACBwQAAgEFAAr7AQAD7AwAAgEXAAIHBAACAQUACvsBAAPsDAABARkAAQcEAAEBBgAK+wEAA+wCAAEE
+ CQABARkAAQcEAAEBBgAK+wYAAQQDAAEEEAAHBxQACvsHAAEEAgACBBEABQcUAAr7CAAFBBIAAwcUAAr7
+ CgACBBUAAQcUAAr7CgABBCsACvuqAAHsBQAB7FgAAf8BGwH/AQQB/wEbAf8GAAH/ARsB/wEbAf8BGwEE
+ ARsB/wEbAf8BGwH/EwAEAQMABQcHAAEbAf8DBAH/ARsGAAEbAf8BGwH/ARsDBAEbAf8BGwH/ARsQAAHs
+ AwADAQMAAwcJAAH/BQQB/wYAAf8BGwH/ARsFBAEbAf8BGwH/CgACAgIAAewFAAMBAwACBwoAARsB/wEb
+ AQQBGwH/ARsGAAEbAf8BBAH/ARsB/wEEAf8BGwH/AQQB/wEbCQAEAggAAgEPAAH/ARsB/wEEAf8BGwH/
+ BgAB/wIEARsB/wEbAQQBGwH/ARsCBAH/CQAEAggAAgEPAAEbAf8BGwEEARsB/wEbBgANBAoAAgIKAAEB
+ DwAB/wEbAf8BBAH/ARsB/wYAAf8CBAEbAf8BGwEEARsB/wEbAgQB/wYAAewPAAEBCQABBAUAARsB/wEb
+ AQQBGwH/ARsGAAEbAf8BBAH/ARsB/wEEAf8BGwH/AQQB/wEbBAAB7BcAAQQDAAEEBQAB/wUEAf8GAAH/
+ ARsB/wEbBQQBGwH/ARsB/w8AAewLAAIEAgABBAYAARsB/wMEAf8BGwYAARsB/wEbAf8BGwMEARsB/wEb
+ Af8BGxoABQQHAAH/ARsB/wEEAf8BGwH/BgAB/wEbAf8BGwH/ARsBBAEbAf8BGwH/ARsB/wcAAewTAAIE
+ PwABBGgAAf8BGwH/ARsB/wEbAf8BGwH/ARs2AAEbAf8BGwH/ARsB/wEbAf8BGwH/XAAD/wQAARsB/wwA
+ ARsB/wgAAQQbAALsAwAD/wQAAf8BGwwAAf8BGwcAAwQaAALsAwAD/wQAARsB/wMAAQQEAAEEAwABGwH/
+ BgAFBAYAAf8BGwH/ARsB/wEbAf8BGwH/ARsB/wEbAf8BGwUAAuwDAAP/BAAB/wEbAgACBAQAAgQCAAH/
+ ARsIAAEECAABGwH/AQQB/wEbAf8BGwH/ARsB/wEbAQQBGwH/BQAC7AMAA/8EAAEbAf8BAAoEAQABGwH/
+ CAABBAgAAf8CBAEbAf8BGwH/ARsB/wEbAf8CBAEbBQAC7AMAA/8EAAH/ARsCAAIEBAACBAIAAf8BGwgA
+ AQQIAA4EBQAC7AMAA/8EAAEbAf8DAAEEBAABBAMAARsB/wgAAQQIAAH/AgQBGwH/ARsB/wEbAf8BGwH/
+ AgQBGwUAAuwDAAP/BAAB/wEbDAAB/wEbBgAFBAYAARsB/wEEAf8BGwH/ARsB/wEbAf8BGwEEARsB/wUA
+ AuwDAAP/BAABGwH/DAABGwH/BwADBAcAAf8BGwH/ARsB/wEbAf8BGwH/ARsB/wEbAf8BGwoAA/8EAAH/
+ ARsMAAH/ARsIAAEEegABGwH/ARsB/wEbAf8BGwH/ARsB/zYAAf8BGwH/ARsB/wEbAf8BGwH/ARteAAEE
+ NgALBAoAA/8DAAEELQABBAsAA/8DAAEEDwABBCQAAuwDAAP/AwABBAQAAuwDAAP/AgADBAQACv8VAALs
+ AwAD/wMAAQQEAALsAwAD/wMAAQQFAAr/BQAK/wYAAuwDAAP/AwABBAQAAuwDAAP/AwABBAUACv8FAAr/
+ BgAC7AMAA/8DAAEEBAAC7AMAA/8DAAEEFAAK/wYAAuwDAAP/AwABBAQAAuwDAAP/AwABBCQAAuwDAAP/
+ AwABBAQAAuwDAAP/AwABBCQAAuwDAAP/AwABBAQAAuwDAAP/AwABBAYACOwWAALsAwAD/wIAAwQDAALs
+ AwAD/wMAAQQGAAjsCAAI7BEAAQQJAAP/AwABBBYACOwbAAP/AwABBP8ABgABBCMAAQQMAAf/BwALBBoA
+ AQQMAAP/AQQD/wgAAQQRAAn/CQABBAwAAv8DBAL/GgAF/wEEA/8GAAP/AQQD/wkAAf8FBAH/GgAF/wIE
+ Av8GAAP/AQQD/wkAA/8BBAP/CAAK/wUAAgQBAAgEAf8GAAP/AQQD/wkAA/8BBAP/CAAK/wgABf8CBAL/
+ BgAD/wEEA/8JAAP/AQQD/wgACv8IAAX/AQQD/wYAA/8BBAP/CQAD/wEEA/8aAAn/BgAB/wUEAf8JAAP/
+ AQQD/ykAAv8DBAL/DAABBCwAA/8BBAP/DAABBAsACOwZAAf/DAABBAsACOzTAAHsAgACBAIAAgQCAAIE
+ AgACBAIAAvwCAAL8AgAC/AIAAvwiAAIEAgACBAIAAgQCAAIEAgAC/AIAAvwCAAL8AgAC/FQAAewEAAHs
+ KAAJ/woABAcJAAIEAgACBAIAAgQCAAIEAgAK+wIAAvwCAAP/AQQF/wgAAewCBwPsAQcB7AcAAgQCAAIE
+ AgACBAIAAgQCAAr7AgAC/AIAAv8CBAX/BgAB7AEAAgcB7AIHAuwBBwEAAewVAAr7BgAB/wgEAQACBAQA
+ BwcB7AIHFgAK+wYAAv8CBAX/BwAKBwYAAgQCAAIEAgACBAIAAgQCAAr7AgAC/AIAA/8BBAX/BwAKBwYA
+ AgQCAAIEAgACBAIAAgQCAAr7AgAC/AIACf8HAAEHAf8IBxYACvsVAAHsAQAC/wYHAQAB7BUACvsXAAHs
+ Av8EBwHsBwACBAIAAgQCAAIEAgACBAIACvsCAAL8FQAEBwkAAgQCAAIEAgACBAIAAgQOAAL8FAAB7AQA
+ AexuAAb/EgAB7AUACAQKAAYECQAH/w4AAewCAAHsBgABBB8ACP8EAAHsAQAB7BEAAQQIAAEEBgABBAgA
+ AQQFAAr/DAAB7AIAAewHAAEECAABBAYAAQQIAAEEBAAL/wQAAewOAAUECAABBAQAAwQIAAEEAwAM/wsA
+ AewCAAHsBAABBAMAAQQIAAEEBgABBAgAAQQCAAP/AQAJ/wUAAewBAAHsCwABBAMAAQQIAAEEAgABBAMA
+ AQQIAAEEAgAC/wIACf8KAAHsAgAB7AUAAQQDAAEECAABBAIAAQQDAAEECAABBAYAAf8BAAL/AQAC/wEA
+ Af8GAAHsAQAB7AoAAQQDAAEECAABBAIAAQQTAAH/AQAC/wEAAv8BAAH/CQAB7AIAAewGAAEEAwAKBAIA
+ AQQFAAYECAAB/wEAAv8BAAL/AQAB/wcAAewLAAEEBwABBAcAAQQHAAEECwAB/wEAAv8BAAL/AQAB/wsA
+ AewHAAEEBwABBAcAAQQHAAEECwAB/wEAAv8BAAL/AQAB/wgAAewSAAEEHQAC/wEAAv8MAAHsCgAHBAkA
+ BQQPAAL/AQAC/3QAEOwwAAHsDgAB7DAAAewBAAICAfoBAAH6AQIBAAECAfoBAAL6AQAB7DAAAewBAAL6
+ AQAB+gECAQAC+gEAAQIB+gIAAewkAAMHCQAB7AIAAfoBAgH6AQIC+gEAAQIB+gEAAf4BAAHsIwAEBwkA
+ AewBAAH+AQAC+gEAAQIBAAH6AQIBAAH+Af8BAAHsIwAFBwgAAewBAAH/Af4BAAL6AQAB/wIAAf4B/wH+
+ AQAB7CMABgcCAAMHAgAB7AEAAf4B/wH+AgAB/wH+Af8B/gH/Af4B/wEAAewkAAoHAgAB7AEAAf8B/gH/
+ Af4B/wH+Af8B/gH/Af4B/wH+AQAB7CQACgcCAAHsAQAB/gH/Af4B/wH+Af8B/gH/AgAB/gH/AQAB7CUA
+ CAcDAAHsAQAB/wH+Af8B/gH/Af4B/wEAAf8B+wEAAf4BAAHsJQAHBwQAAewBAAH+Af8B/gH/Af4B/wH+
+ AQAB+wH/AQAB/wEAAewnAAMHBgAB7AEAAf8B/gH/Af4B/wH+Af8B/gIAAf8B/gEAAewwAAHsAQAB/gH/
+ Af4B/wH+Af8B/gH/Af4B/wH+Af8BAAHsMAAB7A4AAewwABDsgQAOBwMADAcEAAwHEwAOBwIADgcDAAsH
+ FAAOBwIADgcDAAoHCQAGBwYADgcCAA4HAwAJBwgACgcEAA4HAgAOBwMACAcJAAoHBAAOBwIADgcDAAcH
+ CQAMBwMADgcCAA4HAwAGBwoADAcDAA4HAgAOBwMABQcLAAwHAwAOBwIADgcDAAQHDQAKBwQADgcCAA4H
+ AwADBw4ACgcEAA4HAgAOBwMAAgcRAAYHBgAOBwMADAcEAAEH/wAnAAL/PgAC/z0AAv8+AAL/OwAB/wEA
+ Av88AAT/PAAG/zoABf87AAT/PAAD/z0AAv8+AAH/ugABQgFNAT4HAAE+AwABKAMAAUADAAFAAQECAAEB
+ AQABAQYAAQoWAAP/AgABAQL/Af4EAAEBAv8B/gMAAYMB/wGPAeMB8AMAAYEB/wLHAfYDAAHAAf8B4wGP
+ AfYDAAHAAX8B8QEfAfcB/wIAAeABPwH4AT8B9wH/AgAB8AEfAfwBfwH3Af8CAAH4AQ8B+AE/AfcB/wIA
+ AfwBBwHxAR8B9wH/AgAB/gEDAeMBjwH3Af8CAAH/AQECxwEAAX8CAAH/AYABjwHjAQABfwIAAf8BwAL/
+ AQABfwIAAf8B4AL/AQABfwIAAf8B8AL/AQABfwIAAf8B/AT/AgAB/wHsAfwBHwL/AgABwAEEAfwBGwH/
+ AQcD/wHsAYQBGwHhAQcBhAEbAf8B/AGEARsB4QEHAYQBEQGAAQQBhAEbAeEBBwGEARsBgAEEAYQBGwHh
+ AQcBhAEbAYABBAGEARsBgAEBAYQBGwGAAQQBhAEbAYABAQGEARsBgAEEAYQBGwHhAQcBhAEbAf8B/AGE
+ ARsB4QEHAYQBGwHgAQQBhAERAeEBBwGEARsB4AEEAYQBGwHhAQcBhAEbAeABBAP/AQcB/AEbAeABBAIA
+ Av8B/AEfAf8B/AIACP8Bfwf/AW8B/wH+AX8B4AEPAQABAQFAAQcB/gF/AeABDwEAAQEBbwH/AcABAwHg
+ AQ8BAAEBAX8B/wHAAQMB4AEPAQABAQFAAQMBwAEDAeABDwEAAQEBQAEDAcABAwHgAQ8BAAEBAUABAwHA
+ AQMB4AEPAQABAQFAAQMB/gF/AeABDwEAAQEBQAEDAeABBwHgAQ8BAAEBAX8B/wHgAQcB4AEPAQABAQFA
+ AQ8B4AEHAeABDwEAAQEBQAEPAeABBwHgAQ8BAAEBAUABDwH+AX8B4AEPAQABAQFAAQ8B/gF/BP8Bfwf/
+ AcABAwb/AcABAwP/AQMBHwH4AcABAwL/AfwB/wEfAfgB/wF/Av8B+QH/AR8B+AH+AT8CAAH7Af8BGwHY
+ AfwBHwIAAfsB/wETAcgB/wF/AgAB+QH/AgAB/wF/AgAB/QH/ARMByAH/AX8CAAH+Af8BGwHYAf8BfwIA
+ Af4B/wEfAfgB/AEfAgAB/AH/AR8B+AH+AT8CAAH5Af8BHwH4Af8BfwIAAYMB/wEfAfgBwAEDBv8BwAED
+ Bv8BwAEDAv8EAAT/BAAE/wQAAfEBnwL/BAAB8QGfAv8EAAH4AT8BEAE5BAAB+AE/ATgB1gQAAfwBfwYA
+ AfwBfwGCATcEAAH+Af8C1gQAAv8B1AE4BAAB/wHzAccB/wQAAf8B4QHvAf8EAAH/AcAC/wQAAf8BwAL/
+ BAAE/wQACv8CAAb/AgAC/wEAAX8C/wIAAv8BAAF/Av8CAAH9Af8BAAF/AfABDwIAAfwB/wEAAX8B8AEP
+ AgAB/AF/AQABfwHwAQ8CAAH8AT8BAAF/AfABDwIAAfwBHwEAAX8B8AEPAgAB/AE/AQABPwHwAQ8CAAH8
+ AX8BAAEHAfABDwIAAfwB/wIAAfABDwIAAf0B/wHwAQAC/wIAAv8B+AEAAv8CAAL/AfwBAAL/AgAC/wH+
+ AQQC/wIABP8BgAEABv8BgAEABv8BgAIAAR8B4AEHAfgBAQGAAgABDwb/AQABBwGAAQEBgAEBAYcBAwEA
+ AQME/wHPAYcBAAEBAeABBwH4AQEB5wGPAgAE/wHnAY8BAAEfAYABAQGAAQEB8AEfAQABHwT/AfMBHwEA
+ AR8B4AEHAfgBAQH5AT8BjwHxBP8B+AE/Af8B+QGAAQEBgAEBAfwBfwH/AXUE/wH8AX8B/wGPBP8B/hf/
+ AfABBwj/AYABHwHgAR8B8AE/AfwBHwL/AfEBjwH8AX8B+AGPAYABAQHxAY8B/AF/AfkBzwL/AfEBjwH+
+ AT8B+QHPAYABHwHwAR8B/gE/AfkBzwL/AfEBjwH/AR8B+QHPAYABAQHxAY8B/wEfAfkBzwL/AfEBjwH/
+ AY8B+QHPAYABHwHgAR8B/wEHAfABhwj/AYABARD/Af4BAAHwAQcB+AEDAv8B/gEAAfABBwH4AQMB/wEf
+ Af4BAAHwAQcB+AEDAf4B5wH+AQAB8AEHAfgBAwH/AXcB/gEAAfABBwH4AQMB/wF7Af8B7wH/AX8B/wHf
+ Af8BewH/Ae8B/gE/Af8B7wH/AZsB8AEPAf0BXwH/AfcB/wGnAfcC/wF/Af8B+wHJAb8B9wL/AX8B/wH7
+ AbIB3wH3Av8BfwH/AfsBuwHfAQABfwHwAQcBAAF3AcsB3wEAAX8B8AEHAQABbwGzAZ8BAAF/AfABBwEA
+ AR8BuwH/AQABfwHwAQcBAAF/AccB/wEAAX8B8AEHAQABfwj/Af4BAAH/AYAB/gEAAf8BgAH+AQAB/wGA
+ Af4BAAH/AYAB/gEAAf8BgAH+AQAB/wGAAf4BAAHgAwAB4AEAAf4BAAHgAwAB4AEAAf8BnwHgAwAB4AEA
+ Af8BPwHgAwAB4AEAAf4BfwHgAQcCAAHgAQcB/AH/AQABBwMAAQcB+QH/AQABBwEAAQ8BAAEHAfMB/wEA
+ AQcBAAEPAQABBwEAAX8BAAEHAQABDwEAAQcBAAF/AQEB/wEAAQ8BAQH/AQABfwEBAf8BAAEPAQEB/wEA
+ AX8BAQH/AQABDwEBAf8BAAF/C/8B8wL/Af4CAAFAAf8BwwKBAf4BAAGAAUAB/wEDAoEB/gEAAeABQQH8
+ AQMBwQGDAgAB8AFBAfABAwHBAYMCAAH8AUMBwAEDAeEBhwIAAf8BQwL/AeEBhwIAAf8BxwL/AfEBjwIA
+ Ab8BxwHAAQMB8QGPAgABuwHPAfABAwH5AZ8BAAEPAdkBzwH8AQMB+QGfAQABDwHgAd8B/wEDAf0BvwEA
+ AQ8B+QHfAf8BwwH9Ab8BAAEPAfsC/wHzAv8BAAEPBv8BAAEPDP8B+AEPAv8B4AEPAQABAQHwAQcBAgEA
+ AeABDwEAAQEC4wECAQEB4AEPAQABAQHnAfEBggEHAeABDwEAAQEBzwExAYIBHwHgAQ8BAAEBAc4BGQHC
+ AT8B4AEPAQABAQHOARkBwgH/AeABDwEAAQEBzwE/AeMB/wHgAQ8BAAEBAccB+QHjAf0B4AEPAQABAQHG
+ Af8B8wHdAeABDwEAAQEB4gFzAfMBmwHgAQ8BAAEBAfABPwH7AQcB4AEPAQABAQH4AT8B+wGfAeABDwEA
+ AQEB/gF/Af8B3wT/Af4H/wHAAQMG/wHAAQMD/wEHAR8B+AHAAQMC/wHhAQcBHwH4Af8BfwL/AeEBBwEf
+ AfgB/gE/AgAB4QEHARsB2AH8AR8CAAHhAQcBEwHIAf8BfwIAAYABAQIAAf8BfwIAAYABAQETAcgB/wF/
+ AgAB4QEHARsB2AH/AX8CAAHhAQcBHwH4AfwBHwIAAeEBBwEfAfgB/gE/AgAB4QEHAR8B+AH/AX8CAAH/
+ AQcBHwH4AcABAwb/AcABAwb/AcABAwP/AfwC/wIAA/8B7AH8AR8CAAH+AX8BwAEEAfwBGwL/Af4BfwH/
+ AewBhAEbAYQBGwHAAQMB/wH8AYQBGwGEAREBwAEDAYABBAGEARsBhAEbAcABAwGAAQQBhAEbAYQBGwHA
+ AQMBgAEEAYQBGwGEARsBwAEDAYABBAGEARsBhAEbAf4BfwGAAQQBhAEbAYQBGwHgAQcB/wH8AYQBGwGE
+ ARsB4AEHAeABBAGEAREBhAEbAeABBwHgAQQBhAEbAYQBGwHgAQcB4AEEAv8B/AEbAf4BfwHgAQQCAAH8
+ AR8B/gF/Af8B/AIABv8B6gGvAv8BfwX/AeABDwFvA/8B7gHvAeABDwFAAQcBUAEBAf4B/wHgAQ8BbwH/
+ AfABAQHgAQ8B4AEPAX8B/wFwAQEB4AEPAeABDwFAAQMB8AEBAeABDwHgAQ8BQAEDAUABAQHgAQ8B4AEP
+ AUABAwHwAQEB4AEPAeABDwFAAQMBcAEBAeABDwHgAQ8BQAEDAfABAQHgAQ8B4AEPAX8B/wFQAQEB4AEP
+ AeABDwFAAQ8C/wHgAQ8B/gH/AUABDwL/AeABDwHuAe8BQAEPAv8B4AEPAv8BQAEPBP8B6gGvAX8K/wH5
+ BJkD/wHxBJkD/wHjBP8BAAEVAeABRwL/AQABDwEAAR8BwAEPApkBAAEJAQABHQGAAR8CmQEAAQkBAAEf
+ AQABDwL/AQABDwEAAQUBAAEPAv8BAAEPAQABHwEAAQ8CmQEAAQkBAAEdAQABDwKZAQABCQEAAR8BAAEP
+ Av8BAAEPAQABFQEAAQ8C/wEAAQ8C/wGAAR8CmQEAAQkC/wHAAT8CmQEAAQkC/wHgAX8I/wEfAfgB8QH4
+ AfwBAwEPAeABGAEAAfABAAH4AQMBnwHhARsB+AHxAfgB8AEDAY8B4wH7Af0B+wH9AeABAQHPAcMB+wH9
+ ARsB/QHAAQEBwAEHAYMB/QEDAf0BgAEBAecBhwG7Af0BGwH9AQABAQHjAY8BuwH9AbsB/QEAAQEB8wEP
+ AbsB/QG7Af0BkAEBAfEBHwG7Af0BsQH4AfABAQH4AR8BuAEBAbABAAHwAQEB+AE/Ar8BsQG4AfABAQH8
+ AT8EvwHwAQEB/AF/AR8BuAIfAfgBAwH+AX8BAAE4AQABHwH8AQcC/wEfAfgCHwH+AU8G/wIABv8CAAP/
+ AYcC/wIAA/8BewHxAf8CAAH/AecB/gH7AeAB/wIAAf8B+wH+Af8BwAH/AgAB/wH9Af4B/wHAAWMCAAH/
+ Af0B/gH/AcABAQIAAf8B/QH+Af8B4AEBAgAB/wH7Ad4B/wHgAQECAAH/AecB3gH/AfABAwIAAf8BnwHe
+ Af8B8AEHAgAB/AF/Ae0B/wH4AQ8CAAL/AfMB/wH+AT8CAAb/AgAG/wIACP8CAAHAAQMBgAEAAv8CAAGA
+ AQEBgAEBAv8EAAGAAQMB+AEfBAABgAEHAeABBwQAAYABDwHAAQMEAAGAAR8BwAEDBAABgAE/AYABAQQA
+ AYABfwGAAQEEAAGAAf8BgAEBBAABgQH/AcABAwQAAYMB/wHAAQMEAAGHAf8B4AEHAgABgAEBAY8B/wH4
+ AR8CAAHAAQMBnwf/Ab8G/wH+Bf8BnwH/Af0B/gL/Af0B/wEPAf8B+wH8Av8B/QH/AQ8B/wH3AfoC/wH9
+ AfYBHwH/Ae8B9gL/Af0B8gEfAf8B3wHuAv8B/QHwAT8B/wG/Ad4C/wH9AfABBwH/AX8BvgH9AYABAQHw
+ AQ8B/gH/Af4B+wG/Af8B8AEfAf0B/wH+AfcBvwH/AfABPwH7Af8B/gHvAb8B/wHwAX8B9wH/Af4B3wG/
+ Af8B8AH/Ae8B/wH+Ar8B/wHxAf8B3wH/Af4BfwG/Af8B8wH/Ab8B/wH+Af8BvwH/AfcB/wF/Bf8L
+
+
+
+
+ AAEAAAD/////AQAAAAAAAAAMAgAAAGBTeW5jZnVzaW9uLlRvb2xzLldpbmRvd3MsIFZlcnNpb249MTEu
+ MzAzNS4wLjIyLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPTNkNjdlZDFmODdkNDRjODkM
+ AwAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj0yLjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1Ymxp
+ Y0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAAC9TeW5jZnVzaW9uLldpbmRvd3MuRm9ybXMuVG9v
+ bHMuWFBNZW51cy5JbWFnZUV4dAMAAAAGbV9pY29uCG1fYml0bWFwF21faW1hZ2VUcmFuc3BhcmVudENv
+ bG9yBAQEE1N5c3RlbS5EcmF3aW5nLkljb24DAAAAFVN5c3RlbS5EcmF3aW5nLkJpdG1hcAMAAAAUU3lz
+ dGVtLkRyYXdpbmcuQ29sb3IDAAAAAgAAAAoJBAAAAAX7////FFN5c3RlbS5EcmF3aW5nLkNvbG9yBAAA
+ AARuYW1lBXZhbHVlCmtub3duQ29sb3IFc3RhdGUBAAAACQcHAwAAAAoAAAAAAAAAAAAAAAAFBAAAABVT
+ eXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJBgAAAA8GAAAA3AsAAAKJUE5HDQoaCgAA
+ AA1JSERSAAAAEgAAABIIBgAAAFbOjlcAAAAEZ0FNQQAAsY58+1GTAAAAIGNIUk0AAIcPAACMDwAA/VIA
+ AIFAAAB9eQAA6YsAADzlAAAZzHM8hXcAAAo5aUNDUFBob3Rvc2hvcCBJQ0MgcHJvZmlsZQAASMedlndU
+ VNcWh8+9d3qhzTACUobeu8AA0nuTXkVhmBlgKAMOMzSxIaICEUVEmiJIUMSA0VAkVkSxEBRUsAckCCgx
+ GEVULG9G1ouurLz38vL746xv7bP3ufvsvc9aFwCSpy+XlwZLAZDKE/CDPJzpEZFRdOwAgAEeYIApAExW
+ RrpfsHsIEMnLzYWeIXICXwQB8HpYvAJw09AzgE4H/5+kWel8geiYABGbszkZLBEXiDglS5Auts+KmBqX
+ LGYYJWa+KEERy4k5YZENPvsssqOY2ak8tojFOaezU9li7hXxtkwhR8SIr4gLM7mcLBHfErFGijCVK+I3
+ 4thUDjMDABRJbBdwWIkiNhExiR8S5CLi5QDgSAlfcdxXLOBkC8SXcklLz+FzExIFdB2WLt3U2ppB9+Rk
+ pXAEAsMAJiuZyWfTXdJS05m8HAAW7/xZMuLa0kVFtjS1trQ0NDMy/apQ/3Xzb0rc20V6Gfi5ZxCt/4vt
+ r/zSGgBgzIlqs/OLLa4KgM4tAMjd+2LTOACApKhvHde/ug9NPC+JAkG6jbFxVlaWEZfDMhIX9A/9T4e/
+ oa++ZyQ+7o/y0F058UxhioAurhsrLSVNyKdnpDNZHLrhn4f4Hwf+dR4GQZx4Dp/DE0WEiaaMy0sQtZvH
+ 5gq4aTw6l/efmvgPw/6kxbkWidL4EVBjjIDUdSpAfu0HKAoRINH7xV3/o2+++DAgfnnhKpOLc//vN/1n
+ waXiJYOb8DnOJSiEzhLyMxf3xM8SoAEBSAIqkAfKQB3oAENgBqyALXAEbsAb+IMQEAlWAxZIBKmAD7JA
+ HtgECkEx2An2gGpQBxpBM2gFx0EnOAXOg0vgGrgBboP7YBRMgGdgFrwGCxAEYSEyRIHkIRVIE9KHzCAG
+ ZA+5Qb5QEBQJxUIJEA8SQnnQZqgYKoOqoXqoGfoeOgmdh65Ag9BdaAyahn6H3sEITIKpsBKsBRvDDNgJ
+ 9oFD4FVwArwGzoUL4B1wJdwAH4U74PPwNfg2PAo/g+cQgBARGqKKGCIMxAXxR6KQeISPrEeKkAqkAWlF
+ upE+5CYyiswgb1EYFAVFRxmibFGeqFAUC7UGtR5VgqpGHUZ1oHpRN1FjqFnURzQZrYjWR9ugvdAR6AR0
+ FroQXYFuQrejL6JvoyfQrzEYDA2jjbHCeGIiMUmYtZgSzD5MG+YcZhAzjpnDYrHyWH2sHdYfy8QKsIXY
+ KuxR7FnsEHYC+wZHxKngzHDuuCgcD5ePq8AdwZ3BDeEmcQt4Kbwm3gbvj2fjc/Cl+EZ8N/46fgK/QJAm
+ aBPsCCGEJMImQiWhlXCR8IDwkkgkqhGtiYFELnEjsZJ4jHiZOEZ8S5Ih6ZFcSNEkIWkH6RDpHOku6SWZ
+ TNYiO5KjyALyDnIz+QL5EfmNBEXCSMJLgi2xQaJGokNiSOK5JF5SU9JJcrVkrmSF5AnJ65IzUngpLSkX
+ KabUeqkaqZNSI1Jz0hRpU2l/6VTpEukj0lekp2SwMloybjJsmQKZgzIXZMYpCEWd4kJhUTZTGikXKRNU
+ DFWb6kVNohZTv6MOUGdlZWSXyYbJZsvWyJ6WHaUhNC2aFy2FVko7ThumvVuitMRpCWfJ9iWtS4aWzMst
+ lXOU48gVybXJ3ZZ7J0+Xd5NPlt8l3yn/UAGloKcQqJClsF/hosLMUupS26WspUVLjy+9pwgr6ikGKa5V
+ PKjYrzinpKzkoZSuVKV0QWlGmabsqJykXK58RnlahaJir8JVKVc5q/KULkt3oqfQK+m99FlVRVVPVaFq
+ veqA6oKatlqoWr5am9pDdYI6Qz1evVy9R31WQ0XDTyNPo0XjniZek6GZqLlXs09zXktbK1xrq1an1pS2
+ nLaXdq52i/YDHbKOg84anQadW7oYXYZusu4+3Rt6sJ6FXqJejd51fVjfUp+rv09/0ABtYG3AM2gwGDEk
+ GToZZhq2GI4Z0Yx8jfKNOo2eG2sYRxnvMu4z/mhiYZJi0mhy31TG1Ns037Tb9HczPTOWWY3ZLXOyubv5
+ BvMu8xfL9Jdxlu1fdseCYuFnsdWix+KDpZUl37LVctpKwyrWqtZqhEFlBDBKGJet0dbO1husT1m/tbG0
+ Edgct/nN1tA22faI7dRy7eWc5Y3Lx+3U7Jh29Xaj9nT7WPsD9qMOqg5MhwaHx47qjmzHJsdJJ12nJKej
+ Ts+dTZz5zu3O8y42Lutczrkirh6uRa4DbjJuoW7Vbo/c1dwT3FvcZz0sPNZ6nPNEe/p47vIc8VLyYnk1
+ e816W3mv8+71IfkE+1T7PPbV8+X7dvvBft5+u/0erNBcwVvR6Q/8vfx3+z8M0A5YE/BjICYwILAm8EmQ
+ aVBeUF8wJTgm+Ejw6xDnkNKQ+6E6ocLQnjDJsOiw5rD5cNfwsvDRCOOIdRHXIhUiuZFdUdiosKimqLmV
+ biv3rJyItogujB5epb0qe9WV1QqrU1afjpGMYcaciEXHhsceiX3P9Gc2MOfivOJq42ZZLqy9rGdsR3Y5
+ e5pjxynjTMbbxZfFTyXYJexOmE50SKxInOG6cKu5L5I8k+qS5pP9kw8lf0oJT2lLxaXGpp7kyfCSeb1p
+ ymnZaYPp+umF6aNrbNbsWTPL9+E3ZUAZqzK6BFTRz1S/UEe4RTiWaZ9Zk/kmKyzrRLZ0Ni+7P0cvZ3vO
+ ZK577rdrUWtZa3vyVPM25Y2tc1pXvx5aH7e+Z4P6hoINExs9Nh7eRNiUvOmnfJP8svxXm8M3dxcoFWws
+ GN/isaWlUKKQXziy1XZr3TbUNu62ge3m26u2fyxiF10tNimuKH5fwiq5+o3pN5XffNoRv2Og1LJ0/07M
+ Tt7O4V0Ouw6XSZfllo3v9tvdUU4vLyp/tSdmz5WKZRV1ewl7hXtHK30ru6o0qnZWva9OrL5d41zTVqtY
+ u712fh9739B+x/2tdUp1xXXvDnAP3Kn3qO9o0GqoOIg5mHnwSWNYY9+3jG+bmxSaips+HOIdGj0cdLi3
+ 2aq5+YjikdIWuEXYMn00+uiN71y/62o1bK1vo7UVHwPHhMeefh/7/fBxn+M9JxgnWn/Q/KG2ndJe1AF1
+ 5HTMdiZ2jnZFdg2e9D7Z023b3f6j0Y+HTqmeqjkte7r0DOFMwZlPZ3PPzp1LPzdzPuH8eE9Mz/0LERdu
+ 9Qb2Dlz0uXj5kvulC31OfWcv210+dcXmysmrjKud1yyvdfRb9Lf/ZPFT+4DlQMd1q+tdN6xvdA8uHzwz
+ 5DB0/qbrzUu3vG5du73i9uBw6PCdkeiR0TvsO1N3U+6+uJd5b+H+xgfoB0UPpR5WPFJ81PCz7s9to5aj
+ p8dcx/ofBz++P84af/ZLxi/vJwqekJ9UTKpMNk+ZTZ2adp++8XTl04ln6c8WZgp/lf619rnO8x9+c/yt
+ fzZiduIF/8Wn30teyr889GrZq565gLlHr1NfL8wXvZF/c/gt423fu/B3kwtZ77HvKz/ofuj+6PPxwafU
+ T5/+BQOY8/y6xOjTAAAACXBIWXMAAAsRAAALEQF/ZF+RAAABDUlEQVQ4T62UP86CQBBH7aSkk5KSkspQ
+ UllTcgJDSUlJxRFoPYJH8QjfEb4jjPNW14ybJeKfX/ISs8w8cXbXjYj8hFh2yqj8KVRclKMSzZJoSpJE
+ 6rqWvu9lHEfpuk6yLKNyupU8Jyaay7KUYRicwMJaURRUzwpv/EgocpJQEMKbau1ZObgujRXt0zSNNsZo
+ 21b4+drn5mZFp6Zpok1LMDe+XHsnK4oWv4K55XmOgbltPxZ5qqrysu9EgAPRf2zL10IvDkRvD9tCLw5E
+ b21/yH339ojIqgMZQg+9fvt9Zq7BmnnZK2PPkY27tGwphy4UsMaz+8l2l3hJRFKlV/j7oMLCGs+ocXmI
+ /IfvkM0VuDtqhj+ong4AAAAASUVORK5CYIIL
+
+
+
+
+ AAEAAAD/////AQAAAAAAAAAMAgAAAGBTeW5jZnVzaW9uLlRvb2xzLldpbmRvd3MsIFZlcnNpb249MTEu
+ MzAzNS4wLjIyLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPTNkNjdlZDFmODdkNDRjODkM
+ AwAAAFFTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj0yLjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1Ymxp
+ Y0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAAC9TeW5jZnVzaW9uLldpbmRvd3MuRm9ybXMuVG9v
+ bHMuWFBNZW51cy5JbWFnZUV4dAMAAAAGbV9pY29uCG1fYml0bWFwF21faW1hZ2VUcmFuc3BhcmVudENv
+ bG9yBAQEE1N5c3RlbS5EcmF3aW5nLkljb24DAAAAFVN5c3RlbS5EcmF3aW5nLkJpdG1hcAMAAAAUU3lz
+ dGVtLkRyYXdpbmcuQ29sb3IDAAAAAgAAAAoJBAAAAAX7////FFN5c3RlbS5EcmF3aW5nLkNvbG9yBAAA
+ AARuYW1lBXZhbHVlCmtub3duQ29sb3IFc3RhdGUBAAAACQcHAwAAAAoAAAAAAAAAAAAAAAAFBAAAABVT
+ eXN0ZW0uRHJhd2luZy5CaXRtYXABAAAABERhdGEHAgMAAAAJBgAAAA8GAAAAggsAAAKJUE5HDQoaCgAA
+ AA1JSERSAAAAEgAAABIIBgAAAFbOjlcAAAAEZ0FNQQAAsY58+1GTAAAAIGNIUk0AAIcPAACMDwAA/VIA
+ AIFAAAB9eQAA6YsAADzlAAAZzHM8hXcAAAo5aUNDUFBob3Rvc2hvcCBJQ0MgcHJvZmlsZQAASMedlndU
+ VNcWh8+9d3qhzTACUobeu8AA0nuTXkVhmBlgKAMOMzSxIaICEUVEmiJIUMSA0VAkVkSxEBRUsAckCCgx
+ GEVULG9G1ouurLz38vL746xv7bP3ufvsvc9aFwCSpy+XlwZLAZDKE/CDPJzpEZFRdOwAgAEeYIApAExW
+ RrpfsHsIEMnLzYWeIXICXwQB8HpYvAJw09AzgE4H/5+kWel8geiYABGbszkZLBEXiDglS5Auts+KmBqX
+ LGYYJWa+KEERy4k5YZENPvsssqOY2ak8tojFOaezU9li7hXxtkwhR8SIr4gLM7mcLBHfErFGijCVK+I3
+ 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
+
+
+
\ No newline at end of file
diff --git a/Samples/Symbol Designer/Symbol Designer/MainForm.cs b/Samples/Symbol Designer/Symbol Designer/MainForm.cs
new file mode 100644
index 0000000..e7efa08
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/MainForm.cs
@@ -0,0 +1,3331 @@
+
+
+using System;
+using System.Collections;
+using System.ComponentModel;
+using System.Drawing;
+using System.Runtime.Serialization;
+using System.Runtime.Serialization.Formatters.Binary;
+using System.Windows.Forms;
+using System.Resources;
+using System.Drawing.Printing;
+using System.Text.RegularExpressions;
+using System.IO;
+using System.Runtime.Serialization.Formatters.Soap;
+using Syncfusion.Windows.Forms.Diagram.Controls;
+using Syncfusion.Windows.Forms.Tools;
+using Syncfusion.Windows.Forms.Tools.XPMenus;
+using System.Diagnostics;
+using Syncfusion.Licensing;
+
+namespace Syncfusion.Windows.Forms.Diagram.Samples.DiagramTool
+{
+ ///
+ /// MainForm for the Essential Diagram Builder.
+ ///
+ public class MainForm
+ : Office2007Form
+ {
+ #region Constants
+ private const string c_strMSG_PROMPT_SAVE =
+ "You have made changes to the symbol palette. Would you like to save your changes?";
+ private const string c_strCAPTION_PROMPT_SAVE = "Save Changes?";
+ private const string c_strFORM_TITLE = "Symbol Designer";
+ private const string c_strSYMBOL_DEFAULT_NAME = "New Symbol";
+ private const string c_strMSG_REMOVE_SYMBOL = "Are you sure you want to remove '{0}' symbol from current palette?";
+ private const string c_strUNDO = "&Undo";
+ private const string c_strREDO = "&Redo";
+ private const int WM_CLOSE = 16;
+ #endregion
+
+ #region Fields
+ ///
+ ///
+ ///
+ private bool m_bNeedSave;
+ private bool m_bSaving;
+ // Palette node to Diagram mapping
+ private Hashtable m_hashPalNodeToModelMapping;
+ #endregion
+
+ #region Form Controls
+ private Tools.DockingManager dockingManager;
+ private Tools.TabbedMDIManager tabbedMDIManager;
+ private OpenFileDialog openPaletteDialog;
+ private OpenFileDialog openDiagramDialog;
+ private SaveFileDialog saveDiagramDialog;
+ private SaveFileDialog savePaletteDialog;
+ private OpenFileDialog openImageDialog;
+ private PaletteGroupBar symbolPaletteGroupBar;
+ private Tools.XPMenus.MainFrameBarManager mainFrameBarManager;
+ private Tools.XPMenus.Bar mainMenuBar;
+ private Tools.XPMenus.BarItem biFileNew;
+ private Tools.XPMenus.BarItem biFileOpen;
+ private Tools.XPMenus.BarItem biFileAppend;
+ private Tools.XPMenus.BarItem biFileOpenDiagram;
+ private Tools.XPMenus.BarItem biFileSave;
+ private Tools.XPMenus.BarItem biFileSaveAs;
+ private Tools.XPMenus.BarItem biFileExit;
+ private Tools.XPMenus.BarItem barShowRulers;
+ private Tools.XPMenus.BarItem biTabbedMDI;
+ private Tools.XPMenus.BarItem barItemEditCut;
+ private Tools.XPMenus.BarItem barItemEditCopy;
+ private Tools.XPMenus.BarItem barItemEditPaste;
+ private Tools.XPMenus.BarItem barItemEditUndo;
+ private Tools.XPMenus.BarItem barItemEditRedo;
+ private Tools.XPMenus.BarItem barItemEditDelete;
+ private Tools.XPMenus.BarItem barItemAbout;
+ private PropertyEditor propertyEditor;
+ private Tools.XPMenus.Bar standardToolbar;
+ private Tools.XPMenus.BarItem biFilePrint;
+ private Tools.XPMenus.BarItem biPageSetup;
+ private Tools.XPMenus.BarItem barItemViewSymbolPalette;
+ private Tools.XPMenus.BarItem barItemViewProperties;
+ private Tools.XPMenus.BarItem barItemEditSelectAll;
+ private Tools.XPMenus.ParentBarItem parentBarItemEdit;
+ private Tools.XPMenus.ParentBarItem parentBarItemFile;
+ private Tools.XPMenus.ParentBarItem parentBarItemView;
+ private Tools.XPMenus.ParentBarItem parentBarItemWindow;
+ private Tools.XPMenus.ParentBarItem parentBarItemHelp;
+ private ImageList smallImageList;
+ private Tools.XPMenus.BarItem biPrintPreview;
+ private Tools.XPMenus.BarItem barItemPanZoom;
+ private OverviewControl overviewControl1;
+ private Tools.XPMenus.BarItem barItemPageBorders;
+ private Tools.XPMenus.ParentBarItem parentBarItemToolsGrouping;
+ private Tools.XPMenus.ParentBarItem parentBarItemToolsOrder;
+ private Tools.XPMenus.BarItem barItemAlignLeft;
+ private Tools.XPMenus.BarItem barItemAlignCenter;
+ private Tools.XPMenus.BarItem barItemAlignRight;
+ private Tools.XPMenus.BarItem barItemAlignTop;
+ private Tools.XPMenus.BarItem barItemAlignMiddle;
+ private Tools.XPMenus.BarItem barItemAlignBottom;
+ private Tools.XPMenus.BarItem barItemFlipHorizontally;
+ private Tools.XPMenus.BarItem barItemFlipVertically;
+ private Tools.XPMenus.BarItem barItemFlipBoth;
+ private Tools.XPMenus.BarItem barItemGroupingGroup;
+ private Tools.XPMenus.BarItem barItemGroupingUnGroup;
+ private Tools.XPMenus.BarItem barItemOrderFront;
+ private Tools.XPMenus.BarItem barItemOrderForward;
+ private Tools.XPMenus.BarItem barItemOrderBackward;
+ private Tools.XPMenus.BarItem barItemOrderBack;
+ private Tools.XPMenus.BarItem barItemRotateClock;
+ private Tools.XPMenus.BarItem barItemRotateConter;
+ private Tools.XPMenus.BarItem barItemResizeWidth;
+ private Tools.XPMenus.BarItem barItemResizeHeight;
+ private Tools.XPMenus.BarItem barItemResizeSize;
+ private Tools.XPMenus.BarItem barItemResizeAcross;
+ private Tools.XPMenus.BarItem barItemResizeDown;
+ private Tools.XPMenus.ParentBarItem parentBarItemActions;
+ private Tools.XPMenus.ParentBarItem parentBarItemAlign;
+ private Tools.XPMenus.ParentBarItem parentBarItemFlip;
+ private Tools.XPMenus.ParentBarItem parentBarItemRotate;
+ private Tools.XPMenus.ParentBarItem parentBarItemResize;
+ private Tools.XPMenus.ParentBarItem parentBarItemNode;
+ private Tools.XPMenus.ParentBarItem parentBarItemPopUp;
+ private Tools.XPMenus.BarItem barItemLayout;
+ private Tools.XPMenus.ParentBarItem parentBarItemFormat;
+ private Tools.XPMenus.BarItem barItemFillStyle;
+ private Tools.XPMenus.BarItem barItemShadowStyle;
+ private Tools.XPMenus.ParentBarItem parentBarItem1;
+ private Tools.XPMenus.BarItem barAddSymbol;
+ private Tools.XPMenus.BarItem barRemoveSymbol;
+ private DocumentExplorer documentExplorer1;
+ private BarItem biFileClosePalette;
+ private Bar symbolToolBar;
+ private BarItem barItemObjectModel;
+ private BarItem barItemHelp;
+ private SplashPanel splashPanel1;
+ private SplashControl splashControl1;
+ private IContainer components;
+ #endregion
+
+ #region Initialize/finalize methods
+ public MainForm(string fileLoc)
+ : this()
+ {
+ openDiagramDialog.FileName = String.Empty;
+ saveDiagramDialog.FileName = String.Empty;
+
+ // load palette
+ if (File.Exists(fileLoc))
+ {
+ SymbolPalette newPalette = OpenPaletteFile(fileLoc);
+
+ if (newPalette != null)
+ {
+ symbolPaletteGroupBar.AddPalette(newPalette);
+ foreach (Node node in newPalette.Nodes)
+ {
+ // create mappings
+ this.NodeToDiagramMap.Add(node, null);
+ }
+ }
+ }
+
+ UpdateMainFormTitle();
+ }
+
+ public MainForm()
+ {
+ InitializeComponent();
+ splashControl1.ShowDialogSplash(this);
+ this.ColorScheme = Office2007Theme.Silver;
+
+ //
+ // Initialize tabbed MDI manager
+ //
+ tabbedMDIManager = new Tools.TabbedMDIManager();
+ tabbedMDIManager.AttachToMdiContainer(this);
+ tabbedMDIManager.TabStyle = typeof(Syncfusion.Windows.Forms.Tools.TabRendererDockingWhidbey);
+
+ this.dockingManager.DockContextMenu += new DockContextMenuEventHandler(dockingManager_DockContextMenu);
+ this.dockingManager.DragAllow += new DragAllowEventHandler(dockingManager_DragAllow);
+
+ // Wire up OnIdle processing
+ Application.Idle += new EventHandler(this.OnIdle);
+
+ #region // PropertyEditor Color Settings
+ this.propertyEditor.PropertyGrid.BackColor = System.Drawing.Color.Silver;
+ this.propertyEditor.PropertyGrid.CommandsBackColor = System.Drawing.Color.Silver;
+ this.propertyEditor.PropertyGrid.CommandsForeColor = System.Drawing.Color.Silver;
+ this.propertyEditor.PropertyGrid.LineColor = System.Drawing.Color.Silver;
+ this.propertyEditor.PropertyGrid.PropertyValueChanged += new PropertyValueChangedEventHandler(PropertyGrid_PropertyValueChanged);
+ #endregion
+
+ }
+
+ void dockingManager_DragAllow(object sender, DragAllowEventArgs arg)
+ {
+ if (arg.Control.Name.Equals("symbolPaletteGroupBar") || arg.Control.Name.Equals("documentExplorer1"))
+ arg.Cancel = true;
+ }
+
+ Control dockControl;
+
+ void dockingManager_DockContextMenu(object sender, DockContextMenuEventArgs arg)
+ {
+ arg.ContextMenu.BeforePopup += new CancelMouseEventHandler(ContextMenu_BeforePopup);
+ dockControl = arg.Owner;
+ }
+
+ void ContextMenu_BeforePopup(object sender, CancelMouseEventArgs e)
+ {
+ if (dockControl.Name.Equals("symbolPaletteGroupBar") || dockControl.Name.Equals("documentExplorer1"))
+ e.Cancel = true;
+ else
+ e.Cancel = false;
+ }
+
+ void PropertyGrid_PropertyValueChanged(object s, PropertyValueChangedEventArgs e)
+ {
+ UpdateMDIChildText();
+ }
+
+ private void UpdateMDIChildText()
+ {
+ if (this.ActiveMdiChild != null)
+ {
+ if (this.ActiveMdiChild.GetType().Name.Equals("DiagramForm"))
+ {
+ if (!this.ActiveMdiChild.Text.EndsWith("*"))
+ this.ActiveMdiChild.Text += "*";
+ if (!this.symbolPaletteGroupBar.GroupBarItems[0].Text.EndsWith("*"))
+ this.symbolPaletteGroupBar.GroupBarItems[0].Text += "*";
+
+ this.symbolPaletteGroupBar.Refresh();
+ }
+ }
+ }
+
+ ///
+ /// Clean up any resources being used.
+ ///
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing)
+ {
+ if (components != null)
+ {
+ this.dockingManager.Dispose();
+ this.propertyEditor.Dispose();
+ this.symbolPaletteGroupBar.Dispose();
+ this.overviewControl1.Dispose();
+ this.documentExplorer1.Dispose();
+ this.openPaletteDialog.Dispose();
+ this.savePaletteDialog.Dispose();
+ this.openDiagramDialog.Dispose();
+ this.saveDiagramDialog.Dispose();
+ this.smallImageList.Dispose();
+ this.openImageDialog.Dispose();
+ this.mainMenuBar.Dispose();
+ this.parentBarItemFile.Dispose();
+ this.biFileNew.Dispose();
+ this.biFileOpen.Dispose();
+ this.biFileAppend.Dispose();
+ this.biFileClosePalette.Dispose();
+ this.biFileSave.Dispose();
+ this.biFileSaveAs.Dispose();
+ this.biPageSetup.Dispose();
+ this.biPrintPreview.Dispose();
+ this.biFilePrint.Dispose();
+ this.biFileExit.Dispose();
+ this.parentBarItemEdit.Dispose();
+ this.barItemEditUndo.Dispose();
+ this.barItemEditRedo.Dispose();
+ this.barItemEditSelectAll.Dispose();
+ this.barItemEditDelete.Dispose();
+ this.barItemEditCut.Dispose();
+ this.barItemEditCopy.Dispose();
+ this.barItemEditPaste.Dispose();
+ this.parentBarItemFormat.Dispose();
+ this.barItemFillStyle.Dispose();
+ this.barItemShadowStyle.Dispose();
+ this.parentBarItem1.Dispose();
+ this.barAddSymbol.Dispose();
+ this.barRemoveSymbol.Dispose();
+ this.parentBarItemView.Dispose();
+ this.barShowRulers.Dispose();
+ this.barItemViewSymbolPalette.Dispose();
+ this.barItemViewProperties.Dispose();
+ this.barItemObjectModel.Dispose();
+ this.barItemPanZoom.Dispose();
+ this.barItemPageBorders.Dispose();
+ this.parentBarItemActions.Dispose();
+ this.parentBarItemAlign.Dispose();
+ this.barItemAlignLeft.Dispose();
+ this.barItemAlignCenter.Dispose();
+ this.barItemAlignRight.Dispose();
+ this.barItemAlignTop.Dispose();
+ this.barItemAlignMiddle.Dispose();
+ this.barItemAlignBottom.Dispose();
+ this.parentBarItemFlip.Dispose();
+ this.barItemFlipHorizontally.Dispose();
+ this.barItemFlipVertically.Dispose();
+ this.barItemFlipBoth.Dispose();
+ this.parentBarItemToolsGrouping.Dispose();
+ this.barItemGroupingGroup.Dispose();
+ this.barItemGroupingUnGroup.Dispose();
+ this.parentBarItemToolsOrder.Dispose();
+ this.barItemOrderFront.Dispose();
+ this.barItemOrderForward.Dispose();
+ this.barItemOrderBackward.Dispose();
+ this.barItemOrderBack.Dispose();
+ this.parentBarItemRotate.Dispose();
+ this.barItemRotateClock.Dispose();
+ this.barItemRotateConter.Dispose();
+ this.parentBarItemResize.Dispose();
+ this.barItemResizeWidth.Dispose();
+ this.barItemResizeHeight.Dispose();
+ this.barItemResizeSize.Dispose();
+ this.barItemResizeAcross.Dispose();
+ this.barItemResizeDown.Dispose();
+ this.barItemLayout.Dispose();
+ this.parentBarItemWindow.Dispose();
+ this.biTabbedMDI.Dispose();
+ this.parentBarItemHelp.Dispose();
+ this.barItemAbout.Dispose();
+ this.barItemHelp.Dispose();
+ this.standardToolbar.Dispose();
+ this.symbolToolBar.Dispose();
+ this.biFileOpenDiagram.Dispose();
+ this.parentBarItemPopUp.Dispose();
+ this.parentBarItemNode.Dispose();
+ this.splashPanel1.Dispose();
+ this.splashControl1.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()
+ {
+ this.components = new System.ComponentModel.Container();
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
+ Syncfusion.Windows.Forms.Tools.CaptionButtonsCollection ccbpropertyEditor = new Syncfusion.Windows.Forms.Tools.CaptionButtonsCollection();
+ Syncfusion.Windows.Forms.Tools.CaptionButtonsCollection ccbsymbolPaletteGroupBar = new Syncfusion.Windows.Forms.Tools.CaptionButtonsCollection();
+ Syncfusion.Windows.Forms.Tools.CaptionButtonsCollection ccboverviewControl1 = new Syncfusion.Windows.Forms.Tools.CaptionButtonsCollection();
+ Syncfusion.Windows.Forms.Tools.CaptionButtonsCollection ccbdocumentExplorer1 = new Syncfusion.Windows.Forms.Tools.CaptionButtonsCollection();
+ this.dockingManager = new Syncfusion.Windows.Forms.Tools.DockingManager(this.components);
+ this.propertyEditor = new Syncfusion.Windows.Forms.Diagram.Controls.PropertyEditor(this.components);
+ this.symbolPaletteGroupBar = new Syncfusion.Windows.Forms.Diagram.Controls.PaletteGroupBar(this.components);
+ this.overviewControl1 = new Syncfusion.Windows.Forms.Diagram.Controls.OverviewControl(this.components);
+ this.documentExplorer1 = new Syncfusion.Windows.Forms.Diagram.Controls.DocumentExplorer();
+ this.openPaletteDialog = new System.Windows.Forms.OpenFileDialog();
+ this.savePaletteDialog = new System.Windows.Forms.SaveFileDialog();
+ this.openDiagramDialog = new System.Windows.Forms.OpenFileDialog();
+ this.saveDiagramDialog = new System.Windows.Forms.SaveFileDialog();
+ this.smallImageList = new System.Windows.Forms.ImageList(this.components);
+ this.openImageDialog = new System.Windows.Forms.OpenFileDialog();
+ this.mainFrameBarManager = new Syncfusion.Windows.Forms.Tools.XPMenus.MainFrameBarManager(this);
+ this.mainMenuBar = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.mainFrameBarManager, "MainMenu");
+ this.parentBarItemFile = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.biFileNew = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.biFileOpen = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.biFileAppend = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.biFileClosePalette = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.biFileSave = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.biFileSaveAs = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.biPageSetup = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.biPrintPreview = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.biFilePrint = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.biFileExit = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemEdit = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.barItemEditUndo = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemEditRedo = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemEditSelectAll = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemEditDelete = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemEditCut = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemEditCopy = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemEditPaste = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemFormat = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.barItemFillStyle = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemShadowStyle = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItem1 = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.barAddSymbol = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barRemoveSymbol = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemView = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.barShowRulers = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemViewSymbolPalette = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemViewProperties = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemObjectModel = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemPanZoom = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemPageBorders = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemActions = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.parentBarItemAlign = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.barItemAlignLeft = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignCenter = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignRight = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignTop = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignMiddle = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemAlignBottom = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemFlip = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.barItemFlipHorizontally = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemFlipVertically = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemFlipBoth = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemToolsGrouping = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.barItemGroupingGroup = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemGroupingUnGroup = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemToolsOrder = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.barItemOrderFront = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemOrderForward = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemOrderBackward = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemOrderBack = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemRotate = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.barItemRotateClock = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemRotateConter = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemResize = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.barItemResizeWidth = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemResizeHeight = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemResizeSize = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemResizeAcross = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemResizeDown = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemLayout = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemWindow = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.biTabbedMDI = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemHelp = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.barItemAbout = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.barItemHelp = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.standardToolbar = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.mainFrameBarManager, "Standard");
+ this.symbolToolBar = new Syncfusion.Windows.Forms.Tools.XPMenus.Bar(this.mainFrameBarManager, "Symbol");
+ this.biFileOpenDiagram = new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem();
+ this.parentBarItemPopUp = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.parentBarItemNode = new Syncfusion.Windows.Forms.Tools.XPMenus.ParentBarItem();
+ this.splashPanel1 = new Syncfusion.Windows.Forms.Tools.SplashPanel();
+ this.splashControl1 = new Syncfusion.Windows.Forms.Tools.SplashControl();
+ ((System.ComponentModel.ISupportInitialize)(this.dockingManager)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.symbolPaletteGroupBar)).BeginInit();
+ this.overviewControl1.SuspendLayout();
+ ((System.ComponentModel.ISupportInitialize)(this.mainFrameBarManager)).BeginInit();
+ this.SuspendLayout();
+ //
+ // dockingManager
+ //
+ this.dockingManager.ActiveCaptionFont = new System.Drawing.Font("Microsoft Sans Serif", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.World);
+ this.dockingManager.DockLayoutStream = ((System.IO.MemoryStream)(resources.GetObject("dockingManager.DockLayoutStream")));
+ this.dockingManager.HostControl = this;
+ this.dockingManager.InActiveCaptionFont = new System.Drawing.Font("Microsoft Sans Serif", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.World);
+ this.dockingManager.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.dockingManager.PersistState = true;
+ this.dockingManager.ThemesEnabled = true;
+ this.dockingManager.VisualStyle = Syncfusion.Windows.Forms.VisualStyle.Office2007Outlook;
+ this.dockingManager.DockVisibilityChanged += new Syncfusion.Windows.Forms.Tools.DockVisibilityChangedEventHandler(this.dockingManager_DockVisibilityChanged);
+ this.dockingManager.CaptionButtons.Add(new Syncfusion.Windows.Forms.Tools.CaptionButton(Syncfusion.Windows.Forms.Tools.CaptionButtonType.Close, "CloseButton", -1, System.Drawing.Color.Transparent, ""));
+ this.dockingManager.CaptionButtons.Add(new Syncfusion.Windows.Forms.Tools.CaptionButton(Syncfusion.Windows.Forms.Tools.CaptionButtonType.Pin, "PinButton", -1, System.Drawing.Color.Transparent, ""));
+ this.dockingManager.CaptionButtons.Add(new Syncfusion.Windows.Forms.Tools.CaptionButton(Syncfusion.Windows.Forms.Tools.CaptionButtonType.Menu, "MenuButton", -1, System.Drawing.Color.Transparent, ""));
+ this.dockingManager.CaptionButtons.Add(new Syncfusion.Windows.Forms.Tools.CaptionButton(Syncfusion.Windows.Forms.Tools.CaptionButtonType.Maximize, "MaximizeButton", -1, System.Drawing.Color.Transparent, ""));
+ this.dockingManager.SetDockLabel(this.propertyEditor, "Properties");
+ ccbpropertyEditor.MergeWith(this.dockingManager.CaptionButtons, false);
+ this.dockingManager.SetCustomCaptionButtons(this.propertyEditor, ccbpropertyEditor);
+ this.dockingManager.SetDockLabel(this.symbolPaletteGroupBar, "Symbol Palettes");
+ this.dockingManager.SetAllowFloating(this.symbolPaletteGroupBar, false);
+ this.dockingManager.SetFreezeResize(this.symbolPaletteGroupBar, true);
+ this.dockingManager.SetDockAbility(this.symbolPaletteGroupBar, "None");
+ this.dockingManager.SetOuterDockAbility(this.symbolPaletteGroupBar, "None");
+ ccbsymbolPaletteGroupBar.MergeWith(this.dockingManager.CaptionButtons, false);
+ this.dockingManager.SetCustomCaptionButtons(this.symbolPaletteGroupBar, ccbsymbolPaletteGroupBar);
+ this.dockingManager.SetDockLabel(this.overviewControl1, "Pan & Zoom");
+ this.dockingManager.SetHiddenOnLoad(this.overviewControl1, true);
+ ccboverviewControl1.MergeWith(this.dockingManager.CaptionButtons, false);
+ this.dockingManager.SetCustomCaptionButtons(this.overviewControl1, ccboverviewControl1);
+ this.dockingManager.SetDockLabel(this.documentExplorer1, "Object Model");
+ this.dockingManager.SetFreezeResize(this.documentExplorer1, true);
+ ccbdocumentExplorer1.MergeWith(this.dockingManager.CaptionButtons, false);
+ this.dockingManager.SetCustomCaptionButtons(this.documentExplorer1, ccbdocumentExplorer1);
+ //
+ // propertyEditor
+ //
+ this.propertyEditor.Diagram = null;
+ this.dockingManager.SetEnableDocking(this.propertyEditor, true);
+ this.propertyEditor.Location = new System.Drawing.Point(3, 23);
+ this.propertyEditor.Name = "propertyEditor";
+ this.propertyEditor.ShowCombo = true;
+ this.propertyEditor.Size = new System.Drawing.Size(197, 320);
+ this.propertyEditor.TabIndex = 11;
+ //
+ // symbolPaletteGroupBar
+ //
+ this.symbolPaletteGroupBar.AllowDrop = true;
+ this.symbolPaletteGroupBar.AnimatedSelection = false;
+ this.symbolPaletteGroupBar.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+ this.symbolPaletteGroupBar.EditMode = false;
+ this.dockingManager.SetEnableDocking(this.symbolPaletteGroupBar, true);
+ this.symbolPaletteGroupBar.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold);
+ this.symbolPaletteGroupBar.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(74)))), ((int)(((byte)(81)))), ((int)(((byte)(90)))));
+ this.symbolPaletteGroupBar.Location = new System.Drawing.Point(3, 23);
+ this.symbolPaletteGroupBar.Name = "symbolPaletteGroupBar";
+ this.symbolPaletteGroupBar.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.symbolPaletteGroupBar.PopupClientSize = new System.Drawing.Size(0, 0);
+ this.symbolPaletteGroupBar.Size = new System.Drawing.Size(174, 228);
+ this.symbolPaletteGroupBar.TabIndex = 9;
+ this.symbolPaletteGroupBar.Text = "paletteGroupBar1";
+ this.symbolPaletteGroupBar.TextAlign = Syncfusion.Windows.Forms.Tools.TextAlignment.Left;
+ this.symbolPaletteGroupBar.VisualStyle = Syncfusion.Windows.Forms.VisualStyle.Office2007;
+ this.symbolPaletteGroupBar.GroupBarItemAdded += new Syncfusion.Windows.Forms.Tools.GroupBarItemEventHandler(this.symbolPaletteGroupBar_GroupBarItemAdded);
+ this.symbolPaletteGroupBar.NodeSelected += new Syncfusion.Windows.Forms.Diagram.Controls.NodeEventHandler(this.symbolPaletteGroupBar_NodeSelected);
+ this.symbolPaletteGroupBar.GroupBarItemRemoved += new Syncfusion.Windows.Forms.Tools.GroupBarItemEventHandler(this.symbolPaletteGroupBar_GroupBarItemRemoved);
+ //
+ // overviewControl1
+ //
+ this.overviewControl1.BackColor = System.Drawing.SystemColors.AppWorkspace;
+ this.overviewControl1.Controls.Add(this.splashPanel1);
+ this.overviewControl1.Diagram = null;
+ this.dockingManager.SetEnableDocking(this.overviewControl1, true);
+ this.overviewControl1.ForeColor = System.Drawing.Color.Red;
+ this.overviewControl1.Location = new System.Drawing.Point(3, 23);
+ this.overviewControl1.Name = "overviewControl1";
+ this.overviewControl1.Size = new System.Drawing.Size(197, 140);
+ this.overviewControl1.TabIndex = 11;
+ //
+ // documentExplorer1
+ //
+ this.dockingManager.SetEnableDocking(this.documentExplorer1, true);
+ this.documentExplorer1.ImageIndex = 0;
+ this.documentExplorer1.Location = new System.Drawing.Point(3, 23);
+ this.documentExplorer1.Name = "documentExplorer1";
+ this.documentExplorer1.SelectedImageIndex = 0;
+ this.documentExplorer1.Size = new System.Drawing.Size(174, 232);
+ this.documentExplorer1.TabIndex = 13;
+ //
+ // openPaletteDialog
+ //
+ this.openPaletteDialog.DefaultExt = "edp";
+ this.openPaletteDialog.Filter = "Essential Diagram Palettes|*.edp|Visio Stencils|*.vss; *.vsx|Visio Drawings(Shape" +
+ "s only)|*.vsd; *.vdx|All files|*.*";
+ this.openPaletteDialog.Title = "Add SymbolPalette";
+ //
+ // savePaletteDialog
+ //
+ this.savePaletteDialog.DefaultExt = "edp";
+ this.savePaletteDialog.Filter = "Essential Diagram Palettes|*.edp|All files|*.*";
+ this.savePaletteDialog.Title = "Save SymbolPalette";
+ //
+ // openDiagramDialog
+ //
+ this.openDiagramDialog.Filter = "Diagram Files|*.edd|All files|*.*";
+ this.openDiagramDialog.Title = "Open Diagram";
+ //
+ // saveDiagramDialog
+ //
+ this.saveDiagramDialog.FileName = "doc1";
+ this.saveDiagramDialog.Filter = "Diagram files|*.edd|EMF file|*.emf|GIF file|*.gif|PNG file|*.png|BMP file|*.bmp|J" +
+ "PEG file|*.jpeg,*.jpg|TIFF file|*.tiff|SVG file|*.svg|All files|*.*";
+ //
+ // smallImageList
+ //
+ this.smallImageList.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("smallImageList.ImageStream")));
+ this.smallImageList.TransparentColor = System.Drawing.Color.Fuchsia;
+ this.smallImageList.Images.SetKeyName(0, "");
+ this.smallImageList.Images.SetKeyName(1, "");
+ this.smallImageList.Images.SetKeyName(2, "");
+ this.smallImageList.Images.SetKeyName(3, "");
+ this.smallImageList.Images.SetKeyName(4, "");
+ this.smallImageList.Images.SetKeyName(5, "");
+ this.smallImageList.Images.SetKeyName(6, "");
+ this.smallImageList.Images.SetKeyName(7, "");
+ this.smallImageList.Images.SetKeyName(8, "");
+ this.smallImageList.Images.SetKeyName(9, "");
+ this.smallImageList.Images.SetKeyName(10, "");
+ this.smallImageList.Images.SetKeyName(11, "");
+ this.smallImageList.Images.SetKeyName(12, "");
+ this.smallImageList.Images.SetKeyName(13, "");
+ this.smallImageList.Images.SetKeyName(14, "");
+ this.smallImageList.Images.SetKeyName(15, "");
+ this.smallImageList.Images.SetKeyName(16, "");
+ this.smallImageList.Images.SetKeyName(17, "");
+ this.smallImageList.Images.SetKeyName(18, "");
+ this.smallImageList.Images.SetKeyName(19, "");
+ this.smallImageList.Images.SetKeyName(20, "");
+ this.smallImageList.Images.SetKeyName(21, "");
+ this.smallImageList.Images.SetKeyName(22, "");
+ this.smallImageList.Images.SetKeyName(23, "");
+ this.smallImageList.Images.SetKeyName(24, "");
+ this.smallImageList.Images.SetKeyName(25, "");
+ this.smallImageList.Images.SetKeyName(26, "");
+ this.smallImageList.Images.SetKeyName(27, "");
+ this.smallImageList.Images.SetKeyName(28, "");
+ this.smallImageList.Images.SetKeyName(29, "");
+ this.smallImageList.Images.SetKeyName(30, "");
+ this.smallImageList.Images.SetKeyName(31, "");
+ this.smallImageList.Images.SetKeyName(32, "");
+ this.smallImageList.Images.SetKeyName(33, "");
+ this.smallImageList.Images.SetKeyName(34, "close_palette(2).png");
+ this.smallImageList.Images.SetKeyName(35, "add_symbol(6).png");
+ this.smallImageList.Images.SetKeyName(36, "add_symbol(7).png");
+ //
+ // openImageDialog
+ //
+ this.openImageDialog.Filter = "Windows Bitmaps|*.bmp|Enhanced Metafiles|*.emf|All files|*.*";
+ this.openImageDialog.Title = "Insert Image";
+ //
+ // mainFrameBarManager
+ //
+ this.mainFrameBarManager.BarPositionInfo = ((System.IO.MemoryStream)(resources.GetObject("mainFrameBarManager.BarPositionInfo")));
+ this.mainFrameBarManager.Bars.Add(this.mainMenuBar);
+ this.mainFrameBarManager.Bars.Add(this.standardToolbar);
+ this.mainFrameBarManager.Bars.Add(this.symbolToolBar);
+ this.mainFrameBarManager.Categories.Add("File");
+ this.mainFrameBarManager.Categories.Add("Popups");
+ this.mainFrameBarManager.Categories.Add("Window");
+ this.mainFrameBarManager.Categories.Add("Edit");
+ this.mainFrameBarManager.Categories.Add("Help");
+ this.mainFrameBarManager.Categories.Add("Symbol");
+ this.mainFrameBarManager.Categories.Add("View");
+ this.mainFrameBarManager.Categories.Add("Dialogs");
+ this.mainFrameBarManager.Categories.Add("Actions");
+ this.mainFrameBarManager.Categories.Add("Align");
+ this.mainFrameBarManager.Categories.Add("Flip");
+ this.mainFrameBarManager.Categories.Add("Grouping");
+ this.mainFrameBarManager.Categories.Add("Order");
+ this.mainFrameBarManager.Categories.Add("Rotate");
+ this.mainFrameBarManager.Categories.Add("Resize");
+ this.mainFrameBarManager.Categories.Add("Format");
+ this.mainFrameBarManager.CurrentBaseFormType = "Syncfusion.Windows.Forms.Office2007Form";
+ this.mainFrameBarManager.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.mainFrameBarManager.Form = this;
+ this.mainFrameBarManager.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemViewSymbolPalette,
+ this.biFileNew,
+ this.barItemViewProperties,
+ this.biFileOpen,
+ this.barItemObjectModel,
+ this.parentBarItemFile,
+ this.barItemPanZoom,
+ this.biFileAppend,
+ this.barShowRulers,
+ this.biFileOpenDiagram,
+ this.barItemPageBorders,
+ this.parentBarItemAlign,
+ this.biFileClosePalette,
+ this.biFileSave,
+ this.parentBarItemRotate,
+ this.biFileSaveAs,
+ this.biPageSetup,
+ this.parentBarItemFlip,
+ this.biPrintPreview,
+ this.biFilePrint,
+ this.parentBarItemResize,
+ this.biFileExit,
+ this.parentBarItemEdit,
+ this.parentBarItemPopUp,
+ this.parentBarItemView,
+ this.parentBarItemWindow,
+ this.parentBarItemHelp,
+ this.parentBarItemActions,
+ this.parentBarItemToolsGrouping,
+ this.parentBarItemToolsOrder,
+ this.biTabbedMDI,
+ this.barItemEditCut,
+ this.barItemEditCopy,
+ this.barItemEditPaste,
+ this.barItemEditUndo,
+ this.barItemEditRedo,
+ this.barItemAbout,
+ this.barItemEditSelectAll,
+ this.barItemAlignBottom,
+ this.barItemAlignCenter,
+ this.barItemAlignLeft,
+ this.barItemAlignMiddle,
+ this.barItemAlignRight,
+ this.barItemAlignTop,
+ this.barItemEditDelete,
+ this.barItemFlipBoth,
+ this.barItemFlipHorizontally,
+ this.barItemFlipVertically,
+ this.barItemGroupingGroup,
+ this.barItemGroupingUnGroup,
+ this.barItemOrderBack,
+ this.barItemOrderBackward,
+ this.barItemOrderForward,
+ this.barItemOrderFront,
+ this.barItemResizeAcross,
+ this.barItemResizeDown,
+ this.barItemResizeHeight,
+ this.barItemResizeSize,
+ this.barItemResizeWidth,
+ this.barItemRotateClock,
+ this.barItemRotateConter,
+ this.barItemLayout,
+ this.parentBarItemFormat,
+ this.barItemFillStyle,
+ this.barItemShadowStyle,
+ this.parentBarItem1,
+ this.barAddSymbol,
+ this.barRemoveSymbol,
+ this.barItemHelp});
+ this.mainFrameBarManager.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.mainFrameBarManager.ResetCustomization = false;
+ this.mainFrameBarManager.ShowDropShadow = false;
+ this.mainFrameBarManager.ShowShadow = false;
+ this.mainFrameBarManager.Style = Syncfusion.Windows.Forms.VisualStyle.Office2007Outlook;
+ //
+ // mainMenuBar
+ //
+ this.mainMenuBar.BarName = "MainMenu";
+ this.mainMenuBar.BarStyle = ((Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle)(((((Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.IsMainMenu | Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.MultiLine)
+ | Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.RotateWhenVertical)
+ | Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.Visible)
+ | Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.UseWholeRow)));
+ this.mainMenuBar.Caption = "MainMenu";
+ this.mainMenuBar.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.parentBarItemFile,
+ this.parentBarItemEdit,
+ this.parentBarItem1,
+ this.parentBarItemView,
+ this.parentBarItemActions,
+ this.parentBarItemWindow,
+ this.parentBarItemHelp});
+ this.mainMenuBar.Manager = this.mainFrameBarManager;
+ //
+ // parentBarItemFile
+ //
+ this.parentBarItemFile.CategoryIndex = 1;
+ this.parentBarItemFile.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemFile.ID = "File";
+ this.parentBarItemFile.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.biFileNew,
+ this.biFileOpen,
+ this.biFileAppend,
+ this.biFileClosePalette,
+ this.biFileSave,
+ this.biFileSaveAs,
+ this.biPageSetup,
+ this.biPrintPreview,
+ this.biFilePrint,
+ this.biFileExit});
+ this.parentBarItemFile.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemFile.SeparatorIndices.AddRange(new int[] {
+ 4,
+ 6,
+ 9});
+ this.parentBarItemFile.Text = "&File";
+ //
+ // biFileNew
+ //
+ this.biFileNew.CategoryIndex = 0;
+ this.biFileNew.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biFileNew.ID = "New";
+ this.biFileNew.ImageIndex = 0;
+ this.biFileNew.ImageList = this.smallImageList;
+ this.biFileNew.Shortcut = System.Windows.Forms.Shortcut.CtrlN;
+ this.biFileNew.Text = "&New";
+ this.biFileNew.Click += new System.EventHandler(this.biFileNew_Click);
+ //
+ // biFileOpen
+ //
+ this.biFileOpen.CategoryIndex = 0;
+ this.biFileOpen.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biFileOpen.ID = "OpenPal";
+ this.biFileOpen.ImageIndex = 1;
+ this.biFileOpen.ImageList = this.smallImageList;
+ this.biFileOpen.Shortcut = System.Windows.Forms.Shortcut.CtrlO;
+ this.biFileOpen.Text = "&Open Palette";
+ this.biFileOpen.Click += new System.EventHandler(this.biFileOpenPalette_Click);
+ //
+ // biFileAppend
+ //
+ this.biFileAppend.CategoryIndex = 0;
+ this.biFileAppend.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biFileAppend.ID = "Append";
+ this.biFileAppend.ImageIndex = 1;
+ this.biFileAppend.ImageList = this.smallImageList;
+ this.biFileAppend.Text = "&Append";
+ this.biFileAppend.Click += new System.EventHandler(this.biFileAppendPaletteNodes_Click);
+ //
+ // biFileClosePalette
+ //
+ this.biFileClosePalette.CategoryIndex = 0;
+ this.biFileClosePalette.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biFileClosePalette.ID = "ClosePalette";
+ this.biFileClosePalette.ImageIndex = 34;
+ this.biFileClosePalette.ImageList = this.smallImageList;
+ this.biFileClosePalette.Text = "&Close Palette";
+ this.biFileClosePalette.Click += new System.EventHandler(this.biFileClosePalette_Click);
+ //
+ // biFileSave
+ //
+ this.biFileSave.CategoryIndex = 0;
+ this.biFileSave.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biFileSave.ID = "Save";
+ this.biFileSave.ImageIndex = 2;
+ this.biFileSave.ImageList = this.smallImageList;
+ this.biFileSave.Shortcut = System.Windows.Forms.Shortcut.CtrlS;
+ this.biFileSave.Text = "&Save";
+ this.biFileSave.Click += new System.EventHandler(this.biFileSave_Click);
+ //
+ // biFileSaveAs
+ //
+ this.biFileSaveAs.CategoryIndex = 0;
+ this.biFileSaveAs.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biFileSaveAs.ID = "Save As...";
+ this.biFileSaveAs.Text = "Save As...";
+ this.biFileSaveAs.Click += new System.EventHandler(this.biFileSaveAs_Click);
+ //
+ // biPageSetup
+ //
+ this.biPageSetup.CategoryIndex = 0;
+ this.biPageSetup.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biPageSetup.ID = "Page Setup";
+ this.biPageSetup.ImageIndex = 5;
+ this.biPageSetup.ImageList = this.smallImageList;
+ this.biPageSetup.Text = "Page Setup";
+ this.biPageSetup.Click += new System.EventHandler(this.biPageSetup_Click);
+ //
+ // biPrintPreview
+ //
+ this.biPrintPreview.CategoryIndex = 0;
+ this.biPrintPreview.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biPrintPreview.ID = "Print Preview";
+ this.biPrintPreview.ImageIndex = 3;
+ this.biPrintPreview.ImageList = this.smallImageList;
+ this.biPrintPreview.Text = "Print Preview";
+ this.biPrintPreview.Tooltip = "Print Preview";
+ this.biPrintPreview.Click += new System.EventHandler(this.biPrintPreview_Click);
+ //
+ // biFilePrint
+ //
+ this.biFilePrint.CategoryIndex = 0;
+ this.biFilePrint.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biFilePrint.ID = "Print";
+ this.biFilePrint.ImageIndex = 6;
+ this.biFilePrint.ImageList = this.smallImageList;
+ this.biFilePrint.Text = "Print";
+ this.biFilePrint.Click += new System.EventHandler(this.biFilePrint_Click);
+ //
+ // biFileExit
+ //
+ this.biFileExit.CategoryIndex = 0;
+ this.biFileExit.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biFileExit.ID = "Exit";
+ this.biFileExit.Text = "Exit";
+ this.biFileExit.Click += new System.EventHandler(this.biFileExit_Click);
+ //
+ // parentBarItemEdit
+ //
+ this.parentBarItemEdit.CategoryIndex = 1;
+ this.parentBarItemEdit.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemEdit.ID = "Edit";
+ this.parentBarItemEdit.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemEditUndo,
+ this.barItemEditRedo,
+ this.barItemEditSelectAll,
+ this.barItemEditDelete,
+ this.barItemEditCut,
+ this.barItemEditCopy,
+ this.barItemEditPaste,
+ this.parentBarItemFormat});
+ this.parentBarItemEdit.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemEdit.SeparatorIndices.AddRange(new int[] {
+ 2,
+ 4});
+ this.parentBarItemEdit.Text = "&Edit";
+ //
+ // barItemEditUndo
+ //
+ this.barItemEditUndo.CategoryIndex = 3;
+ this.barItemEditUndo.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemEditUndo.ID = "Undo";
+ this.barItemEditUndo.ImageIndex = 10;
+ this.barItemEditUndo.ImageList = this.smallImageList;
+ this.barItemEditUndo.Shortcut = System.Windows.Forms.Shortcut.CtrlZ;
+ this.barItemEditUndo.Text = "&Undo";
+ this.barItemEditUndo.Click += new System.EventHandler(this.barItemEditUndo_Click);
+ //
+ // barItemEditRedo
+ //
+ this.barItemEditRedo.CategoryIndex = 3;
+ this.barItemEditRedo.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemEditRedo.ID = "EditRedo";
+ this.barItemEditRedo.ImageIndex = 11;
+ this.barItemEditRedo.ImageList = this.smallImageList;
+ this.barItemEditRedo.Shortcut = System.Windows.Forms.Shortcut.CtrlY;
+ this.barItemEditRedo.Text = "&Redo";
+ this.barItemEditRedo.Click += new System.EventHandler(this.barItemEditRedo_Click);
+ //
+ // barItemEditSelectAll
+ //
+ this.barItemEditSelectAll.CategoryIndex = 3;
+ this.barItemEditSelectAll.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemEditSelectAll.ID = "&Select All";
+ this.barItemEditSelectAll.Shortcut = System.Windows.Forms.Shortcut.CtrlA;
+ this.barItemEditSelectAll.Text = "Select &All";
+ this.barItemEditSelectAll.Click += new System.EventHandler(this.barItemEditSelectAll_Click);
+ //
+ // barItemEditDelete
+ //
+ this.barItemEditDelete.CategoryIndex = 3;
+ this.barItemEditDelete.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemEditDelete.ID = "Delete";
+ this.barItemEditDelete.ImageIndex = 12;
+ this.barItemEditDelete.ImageList = this.smallImageList;
+ this.barItemEditDelete.Text = "&Delete";
+ this.barItemEditDelete.Click += new System.EventHandler(this.barItemEditDelete_Click);
+ //
+ // barItemEditCut
+ //
+ this.barItemEditCut.CategoryIndex = 3;
+ this.barItemEditCut.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemEditCut.ID = "Cut";
+ this.barItemEditCut.ImageIndex = 8;
+ this.barItemEditCut.ImageList = this.smallImageList;
+ this.barItemEditCut.Shortcut = System.Windows.Forms.Shortcut.CtrlX;
+ this.barItemEditCut.Text = "C&ut";
+ this.barItemEditCut.Click += new System.EventHandler(this.barItemEditCut_Click);
+ //
+ // barItemEditCopy
+ //
+ this.barItemEditCopy.CategoryIndex = 3;
+ this.barItemEditCopy.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemEditCopy.ID = "Copy";
+ this.barItemEditCopy.ImageIndex = 7;
+ this.barItemEditCopy.ImageList = this.smallImageList;
+ this.barItemEditCopy.Shortcut = System.Windows.Forms.Shortcut.CtrlC;
+ this.barItemEditCopy.Text = "&Copy";
+ this.barItemEditCopy.Click += new System.EventHandler(this.barItemEditCopy_Click);
+ //
+ // barItemEditPaste
+ //
+ this.barItemEditPaste.CategoryIndex = 3;
+ this.barItemEditPaste.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemEditPaste.ID = "Paste";
+ this.barItemEditPaste.ImageIndex = 9;
+ this.barItemEditPaste.ImageList = this.smallImageList;
+ this.barItemEditPaste.Shortcut = System.Windows.Forms.Shortcut.CtrlV;
+ this.barItemEditPaste.Text = "&Paste";
+ this.barItemEditPaste.Click += new System.EventHandler(this.barItemEditPaste_Click);
+ //
+ // parentBarItemFormat
+ //
+ this.parentBarItemFormat.CategoryIndex = 1;
+ this.parentBarItemFormat.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemFormat.ID = "Format";
+ this.parentBarItemFormat.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemFillStyle,
+ this.barItemShadowStyle});
+ this.parentBarItemFormat.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemFormat.Style = Syncfusion.Windows.Forms.VisualStyle.Office2007Outlook;
+ this.parentBarItemFormat.Text = "&Format";
+ //
+ // barItemFillStyle
+ //
+ this.barItemFillStyle.CategoryIndex = 15;
+ this.barItemFillStyle.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemFillStyle.ID = "Fill";
+ this.barItemFillStyle.Text = "&Fill...";
+ this.barItemFillStyle.Click += new System.EventHandler(this.fillBarItem_Click);
+ //
+ // barItemShadowStyle
+ //
+ this.barItemShadowStyle.CategoryIndex = 15;
+ this.barItemShadowStyle.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemShadowStyle.ID = "Shadow";
+ this.barItemShadowStyle.Text = "&Shadow...";
+ this.barItemShadowStyle.Click += new System.EventHandler(this.shadowBarItem_Click);
+ //
+ // parentBarItem1
+ //
+ this.parentBarItem1.CategoryIndex = 1;
+ this.parentBarItem1.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItem1.ID = "Symbol";
+ this.parentBarItem1.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barAddSymbol,
+ this.barRemoveSymbol});
+ this.parentBarItem1.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItem1.Text = "Symbol";
+ //
+ // barAddSymbol
+ //
+ this.barAddSymbol.CategoryIndex = 5;
+ this.barAddSymbol.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barAddSymbol.Enabled = false;
+ this.barAddSymbol.ID = "Add";
+ this.barAddSymbol.ImageIndex = 35;
+ this.barAddSymbol.ImageList = this.smallImageList;
+ this.barAddSymbol.PaintStyle = Syncfusion.Windows.Forms.Tools.XPMenus.PaintStyle.ImageAndText;
+ this.barAddSymbol.Text = "Add Symbol";
+ this.barAddSymbol.Click += new System.EventHandler(this.barAddSymbol_Click);
+ //
+ // barRemoveSymbol
+ //
+ this.barRemoveSymbol.CategoryIndex = 5;
+ this.barRemoveSymbol.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barRemoveSymbol.Enabled = false;
+ this.barRemoveSymbol.ID = "Remove";
+ this.barRemoveSymbol.ImageIndex = 36;
+ this.barRemoveSymbol.ImageList = this.smallImageList;
+ this.barRemoveSymbol.PaintStyle = Syncfusion.Windows.Forms.Tools.XPMenus.PaintStyle.ImageAndText;
+ this.barRemoveSymbol.Text = "Remove Symbol";
+ this.barRemoveSymbol.Click += new System.EventHandler(this.barRemoveSymbol_Click);
+ //
+ // parentBarItemView
+ //
+ this.parentBarItemView.CategoryIndex = 1;
+ this.parentBarItemView.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemView.ID = "View";
+ this.parentBarItemView.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barShowRulers,
+ this.barItemViewSymbolPalette,
+ this.barItemViewProperties,
+ this.barItemObjectModel,
+ this.barItemPanZoom,
+ this.barItemPageBorders});
+ this.parentBarItemView.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemView.SeparatorIndices.AddRange(new int[] {
+ 4});
+ this.parentBarItemView.Text = "&View";
+ //
+ // barShowRulers
+ //
+ this.barShowRulers.CategoryIndex = 6;
+ this.barShowRulers.Checked = true;
+ this.barShowRulers.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barShowRulers.ID = "Rulers";
+ this.barShowRulers.Text = "Rulers";
+ this.barShowRulers.Click += new System.EventHandler(this.barShowRulers_Click);
+ //
+ // barItemViewSymbolPalette
+ //
+ this.barItemViewSymbolPalette.CategoryIndex = 6;
+ this.barItemViewSymbolPalette.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemViewSymbolPalette.ID = "Symbol SymbolPalette";
+ this.barItemViewSymbolPalette.Text = "SymbolPalette";
+ this.barItemViewSymbolPalette.Click += new System.EventHandler(this.barItemViewSymbolPalette_Click);
+ //
+ // barItemViewProperties
+ //
+ this.barItemViewProperties.CategoryIndex = 6;
+ this.barItemViewProperties.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemViewProperties.ID = "Properties";
+ this.barItemViewProperties.Text = "Properties";
+ this.barItemViewProperties.Click += new System.EventHandler(this.barItemViewProperties_Click);
+ //
+ // barItemObjectModel
+ //
+ this.barItemObjectModel.CategoryIndex = 6;
+ this.barItemObjectModel.Checked = true;
+ this.barItemObjectModel.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemObjectModel.ID = "Object Model";
+ this.barItemObjectModel.Text = "Object Model";
+ this.barItemObjectModel.Click += new System.EventHandler(this.barItemObjectModel_Click);
+ //
+ // barItemPanZoom
+ //
+ this.barItemPanZoom.CategoryIndex = 6;
+ this.barItemPanZoom.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemPanZoom.ID = "panZoomWindow";
+ this.barItemPanZoom.Text = "Pan && &Zoom Window";
+ this.barItemPanZoom.Tooltip = "Pan & Zoom Window";
+ this.barItemPanZoom.Click += new System.EventHandler(this.barItemPanZoom_Click);
+ //
+ // barItemPageBorders
+ //
+ this.barItemPageBorders.CategoryIndex = 6;
+ this.barItemPageBorders.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemPageBorders.ID = "Page Borders";
+ this.barItemPageBorders.Text = "Page Borders";
+ this.barItemPageBorders.Click += new System.EventHandler(this.barItemPageBorders_Click);
+ //
+ // parentBarItemActions
+ //
+ this.parentBarItemActions.CategoryIndex = 1;
+ this.parentBarItemActions.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemActions.ID = "Actions";
+ this.parentBarItemActions.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.parentBarItemAlign,
+ this.parentBarItemFlip,
+ this.parentBarItemToolsGrouping,
+ this.parentBarItemToolsOrder,
+ this.parentBarItemRotate,
+ this.parentBarItemResize,
+ this.barItemLayout});
+ this.parentBarItemActions.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemActions.Style = Syncfusion.Windows.Forms.VisualStyle.Office2007Outlook;
+ this.parentBarItemActions.Text = "&Actions";
+ //
+ // parentBarItemAlign
+ //
+ this.parentBarItemAlign.CategoryIndex = 1;
+ this.parentBarItemAlign.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemAlign.ID = "Align";
+ this.parentBarItemAlign.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemAlignLeft,
+ this.barItemAlignCenter,
+ this.barItemAlignRight,
+ this.barItemAlignTop,
+ this.barItemAlignMiddle,
+ this.barItemAlignBottom});
+ this.parentBarItemAlign.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemAlign.Style = Syncfusion.Windows.Forms.VisualStyle.Office2007Outlook;
+ this.parentBarItemAlign.Text = "&Align";
+ //
+ // barItemAlignLeft
+ //
+ this.barItemAlignLeft.CategoryIndex = 9;
+ this.barItemAlignLeft.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemAlignLeft.ID = "AlignLeft";
+ this.barItemAlignLeft.ImageIndex = 15;
+ this.barItemAlignLeft.ImageList = this.smallImageList;
+ this.barItemAlignLeft.Text = "Align Left";
+ this.barItemAlignLeft.Click += new System.EventHandler(this.barItemAlign_Click);
+ //
+ // barItemAlignCenter
+ //
+ this.barItemAlignCenter.CategoryIndex = 9;
+ this.barItemAlignCenter.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemAlignCenter.ID = "AlignCenter";
+ this.barItemAlignCenter.ImageIndex = 14;
+ this.barItemAlignCenter.ImageList = this.smallImageList;
+ this.barItemAlignCenter.Text = "Align Center";
+ this.barItemAlignCenter.Click += new System.EventHandler(this.barItemAlign_Click);
+ //
+ // barItemAlignRight
+ //
+ this.barItemAlignRight.CategoryIndex = 9;
+ this.barItemAlignRight.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemAlignRight.ID = "AlignRight";
+ this.barItemAlignRight.ImageIndex = 17;
+ this.barItemAlignRight.ImageList = this.smallImageList;
+ this.barItemAlignRight.Text = "Align Right";
+ this.barItemAlignRight.Click += new System.EventHandler(this.barItemAlign_Click);
+ //
+ // barItemAlignTop
+ //
+ this.barItemAlignTop.CategoryIndex = 9;
+ this.barItemAlignTop.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemAlignTop.ID = "AlignTop";
+ this.barItemAlignTop.ImageIndex = 18;
+ this.barItemAlignTop.ImageList = this.smallImageList;
+ this.barItemAlignTop.Text = "Align Top";
+ this.barItemAlignTop.Click += new System.EventHandler(this.barItemAlign_Click);
+ //
+ // barItemAlignMiddle
+ //
+ this.barItemAlignMiddle.CategoryIndex = 9;
+ this.barItemAlignMiddle.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemAlignMiddle.ID = "AlignMiddle";
+ this.barItemAlignMiddle.ImageIndex = 16;
+ this.barItemAlignMiddle.ImageList = this.smallImageList;
+ this.barItemAlignMiddle.Text = "Align Middle";
+ this.barItemAlignMiddle.Click += new System.EventHandler(this.barItemAlign_Click);
+ //
+ // barItemAlignBottom
+ //
+ this.barItemAlignBottom.CategoryIndex = 9;
+ this.barItemAlignBottom.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemAlignBottom.ID = "AlignBottom";
+ this.barItemAlignBottom.ImageIndex = 13;
+ this.barItemAlignBottom.ImageList = this.smallImageList;
+ this.barItemAlignBottom.Text = "Align Bottom";
+ this.barItemAlignBottom.Click += new System.EventHandler(this.barItemAlign_Click);
+ //
+ // parentBarItemFlip
+ //
+ this.parentBarItemFlip.CategoryIndex = 1;
+ this.parentBarItemFlip.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemFlip.ID = "Flip";
+ this.parentBarItemFlip.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemFlipHorizontally,
+ this.barItemFlipVertically,
+ this.barItemFlipBoth});
+ this.parentBarItemFlip.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemFlip.Style = Syncfusion.Windows.Forms.VisualStyle.OfficeXP;
+ this.parentBarItemFlip.Text = "&Flip";
+ //
+ // barItemFlipHorizontally
+ //
+ this.barItemFlipHorizontally.CategoryIndex = 10;
+ this.barItemFlipHorizontally.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemFlipHorizontally.ID = "FlipHorizontally";
+ this.barItemFlipHorizontally.ImageIndex = 20;
+ this.barItemFlipHorizontally.ImageList = this.smallImageList;
+ this.barItemFlipHorizontally.Text = "Flip Horizontally";
+ this.barItemFlipHorizontally.Click += new System.EventHandler(this.barItemFlip_Click);
+ //
+ // barItemFlipVertically
+ //
+ this.barItemFlipVertically.CategoryIndex = 10;
+ this.barItemFlipVertically.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemFlipVertically.ID = "FlipVertically";
+ this.barItemFlipVertically.ImageIndex = 19;
+ this.barItemFlipVertically.ImageList = this.smallImageList;
+ this.barItemFlipVertically.Text = "Flip Vertically";
+ this.barItemFlipVertically.Click += new System.EventHandler(this.barItemFlip_Click);
+ //
+ // barItemFlipBoth
+ //
+ this.barItemFlipBoth.CategoryIndex = 10;
+ this.barItemFlipBoth.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemFlipBoth.ID = "FlipBoth";
+ this.barItemFlipBoth.Text = "Flip Both";
+ this.barItemFlipBoth.Click += new System.EventHandler(this.barItemFlip_Click);
+ //
+ // parentBarItemToolsGrouping
+ //
+ this.parentBarItemToolsGrouping.CategoryIndex = 1;
+ this.parentBarItemToolsGrouping.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemToolsGrouping.ID = "Grouping";
+ this.parentBarItemToolsGrouping.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemGroupingGroup,
+ this.barItemGroupingUnGroup});
+ this.parentBarItemToolsGrouping.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemToolsGrouping.Style = Syncfusion.Windows.Forms.VisualStyle.OfficeXP;
+ this.parentBarItemToolsGrouping.Text = "&Grouping";
+ //
+ // barItemGroupingGroup
+ //
+ this.barItemGroupingGroup.CategoryIndex = 11;
+ this.barItemGroupingGroup.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemGroupingGroup.ID = "Group";
+ this.barItemGroupingGroup.ImageIndex = 21;
+ this.barItemGroupingGroup.ImageList = this.smallImageList;
+ this.barItemGroupingGroup.Text = "Group";
+ this.barItemGroupingGroup.Click += new System.EventHandler(this.barItemGroupingGroup_Click);
+ //
+ // barItemGroupingUnGroup
+ //
+ this.barItemGroupingUnGroup.CategoryIndex = 11;
+ this.barItemGroupingUnGroup.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemGroupingUnGroup.ID = "UnGroup";
+ this.barItemGroupingUnGroup.ImageIndex = 22;
+ this.barItemGroupingUnGroup.ImageList = this.smallImageList;
+ this.barItemGroupingUnGroup.Text = "UnGroup";
+ this.barItemGroupingUnGroup.Click += new System.EventHandler(this.barItemGroupingGroup_Click);
+ //
+ // parentBarItemToolsOrder
+ //
+ this.parentBarItemToolsOrder.CategoryIndex = 1;
+ this.parentBarItemToolsOrder.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemToolsOrder.ID = "Order";
+ this.parentBarItemToolsOrder.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemOrderFront,
+ this.barItemOrderForward,
+ this.barItemOrderBackward,
+ this.barItemOrderBack});
+ this.parentBarItemToolsOrder.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemToolsOrder.Style = Syncfusion.Windows.Forms.VisualStyle.OfficeXP;
+ this.parentBarItemToolsOrder.Text = "&Order";
+ //
+ // barItemOrderFront
+ //
+ this.barItemOrderFront.CategoryIndex = 12;
+ this.barItemOrderFront.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemOrderFront.ID = "Bring to Front";
+ this.barItemOrderFront.ImageIndex = 26;
+ this.barItemOrderFront.ImageList = this.smallImageList;
+ this.barItemOrderFront.Text = "Bring to Front";
+ this.barItemOrderFront.Click += new System.EventHandler(this.barItemOrder_Click);
+ //
+ // barItemOrderForward
+ //
+ this.barItemOrderForward.CategoryIndex = 12;
+ this.barItemOrderForward.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemOrderForward.ID = "Bring Forward";
+ this.barItemOrderForward.ImageIndex = 25;
+ this.barItemOrderForward.ImageList = this.smallImageList;
+ this.barItemOrderForward.Text = "Bring Forward";
+ this.barItemOrderForward.Click += new System.EventHandler(this.barItemOrder_Click);
+ //
+ // barItemOrderBackward
+ //
+ this.barItemOrderBackward.CategoryIndex = 12;
+ this.barItemOrderBackward.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemOrderBackward.ID = "Send Backward";
+ this.barItemOrderBackward.ImageIndex = 27;
+ this.barItemOrderBackward.ImageList = this.smallImageList;
+ this.barItemOrderBackward.Text = "Send Backward";
+ this.barItemOrderBackward.Click += new System.EventHandler(this.barItemOrder_Click);
+ //
+ // barItemOrderBack
+ //
+ this.barItemOrderBack.CategoryIndex = 12;
+ this.barItemOrderBack.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemOrderBack.ID = "Send to Back";
+ this.barItemOrderBack.ImageIndex = 28;
+ this.barItemOrderBack.ImageList = this.smallImageList;
+ this.barItemOrderBack.Text = "Send to Back";
+ this.barItemOrderBack.Click += new System.EventHandler(this.barItemOrder_Click);
+ //
+ // parentBarItemRotate
+ //
+ this.parentBarItemRotate.CategoryIndex = 1;
+ this.parentBarItemRotate.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemRotate.ID = "Rotate";
+ this.parentBarItemRotate.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemRotateClock,
+ this.barItemRotateConter});
+ this.parentBarItemRotate.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemRotate.Style = Syncfusion.Windows.Forms.VisualStyle.OfficeXP;
+ this.parentBarItemRotate.Text = "&Rotate";
+ //
+ // barItemRotateClock
+ //
+ this.barItemRotateClock.CategoryIndex = 13;
+ this.barItemRotateClock.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemRotateClock.ID = "RotateClock";
+ this.barItemRotateClock.ImageIndex = 24;
+ this.barItemRotateClock.ImageList = this.smallImageList;
+ this.barItemRotateClock.Text = "Rotate 90 clockwise";
+ this.barItemRotateClock.Click += new System.EventHandler(this.barItemRotate_Click);
+ //
+ // barItemRotateConter
+ //
+ this.barItemRotateConter.CategoryIndex = 13;
+ this.barItemRotateConter.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemRotateConter.ID = "RotateConter";
+ this.barItemRotateConter.ImageIndex = 23;
+ this.barItemRotateConter.ImageList = this.smallImageList;
+ this.barItemRotateConter.Text = "Rotate 90 conter-clockwise";
+ this.barItemRotateConter.Click += new System.EventHandler(this.barItemRotate_Click);
+ //
+ // parentBarItemResize
+ //
+ this.parentBarItemResize.CategoryIndex = 1;
+ this.parentBarItemResize.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemResize.ID = "Resize";
+ this.parentBarItemResize.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemResizeWidth,
+ this.barItemResizeHeight,
+ this.barItemResizeSize,
+ this.barItemResizeAcross,
+ this.barItemResizeDown});
+ this.parentBarItemResize.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemResize.SeparatorIndices.AddRange(new int[] {
+ 3});
+ this.parentBarItemResize.Style = Syncfusion.Windows.Forms.VisualStyle.OfficeXP;
+ this.parentBarItemResize.Text = "R&esize";
+ //
+ // barItemResizeWidth
+ //
+ this.barItemResizeWidth.CategoryIndex = 14;
+ this.barItemResizeWidth.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemResizeWidth.ID = "SameWidth";
+ this.barItemResizeWidth.ImageIndex = 31;
+ this.barItemResizeWidth.ImageList = this.smallImageList;
+ this.barItemResizeWidth.Text = "Same Width";
+ this.barItemResizeWidth.Click += new System.EventHandler(this.barItemResize_Click);
+ //
+ // barItemResizeHeight
+ //
+ this.barItemResizeHeight.CategoryIndex = 14;
+ this.barItemResizeHeight.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemResizeHeight.ID = "SameHeight";
+ this.barItemResizeHeight.ImageIndex = 29;
+ this.barItemResizeHeight.ImageList = this.smallImageList;
+ this.barItemResizeHeight.Text = "Same Height";
+ this.barItemResizeHeight.Click += new System.EventHandler(this.barItemResize_Click);
+ //
+ // barItemResizeSize
+ //
+ this.barItemResizeSize.CategoryIndex = 14;
+ this.barItemResizeSize.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemResizeSize.ID = "SameSize";
+ this.barItemResizeSize.ImageIndex = 30;
+ this.barItemResizeSize.ImageList = this.smallImageList;
+ this.barItemResizeSize.Text = "Same Size";
+ this.barItemResizeSize.Click += new System.EventHandler(this.barItemResize_Click);
+ //
+ // barItemResizeAcross
+ //
+ this.barItemResizeAcross.CategoryIndex = 14;
+ this.barItemResizeAcross.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemResizeAcross.ID = "SpaceAcross";
+ this.barItemResizeAcross.ImageIndex = 32;
+ this.barItemResizeAcross.ImageList = this.smallImageList;
+ this.barItemResizeAcross.Text = "Space Across";
+ this.barItemResizeAcross.Click += new System.EventHandler(this.barItemResize_Click);
+ //
+ // barItemResizeDown
+ //
+ this.barItemResizeDown.CategoryIndex = 14;
+ this.barItemResizeDown.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemResizeDown.ID = "SpaceDown";
+ this.barItemResizeDown.ImageIndex = 33;
+ this.barItemResizeDown.ImageList = this.smallImageList;
+ this.barItemResizeDown.Text = "Space Down";
+ this.barItemResizeDown.Click += new System.EventHandler(this.barItemResize_Click);
+ //
+ // barItemLayout
+ //
+ this.barItemLayout.CategoryIndex = 1;
+ this.barItemLayout.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemLayout.ID = "Layout nodes";
+ this.barItemLayout.Text = "Layout nodes";
+ this.barItemLayout.Click += new System.EventHandler(this.barItemLayout_Click);
+ //
+ // parentBarItemWindow
+ //
+ this.parentBarItemWindow.CategoryIndex = 1;
+ this.parentBarItemWindow.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemWindow.ID = "Window";
+ this.parentBarItemWindow.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.biTabbedMDI});
+ this.parentBarItemWindow.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemWindow.Text = "&Window";
+ //
+ // biTabbedMDI
+ //
+ this.biTabbedMDI.CategoryIndex = 2;
+ this.biTabbedMDI.Checked = true;
+ this.biTabbedMDI.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biTabbedMDI.ID = "Tabbed MDI";
+ this.biTabbedMDI.Text = "Tabbed MDI";
+ this.biTabbedMDI.Click += new System.EventHandler(this.biTabbedMDI_Click);
+ //
+ // parentBarItemHelp
+ //
+ this.parentBarItemHelp.CategoryIndex = 1;
+ this.parentBarItemHelp.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemHelp.ID = "Help";
+ this.parentBarItemHelp.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemAbout,
+ this.barItemHelp});
+ this.parentBarItemHelp.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemHelp.PaintStyle = Syncfusion.Windows.Forms.Tools.XPMenus.PaintStyle.TextOnly;
+ this.parentBarItemHelp.Text = "&Help";
+ //
+ // barItemAbout
+ //
+ this.barItemAbout.CategoryIndex = 4;
+ this.barItemAbout.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.barItemAbout.ID = "About";
+ this.barItemAbout.Text = "About...";
+ this.barItemAbout.Click += new System.EventHandler(this.barItemAbout_Click);
+ //
+ // barItemHelp
+ //
+ this.barItemHelp.CategoryIndex = 4;
+ this.barItemHelp.ID = "Contents Help";
+ this.barItemHelp.Text = "Contents Help";
+ this.barItemHelp.Click += new System.EventHandler(this.barItem1_Click);
+ //
+ // standardToolbar
+ //
+ this.standardToolbar.BarName = "Standard";
+ this.standardToolbar.BarStyle = ((Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle)(((Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.RotateWhenVertical | Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.Visible)
+ | Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.DrawDragBorder)));
+ this.standardToolbar.Caption = "Standard";
+ this.standardToolbar.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.biFileNew,
+ this.biFileOpen,
+ this.biFileClosePalette,
+ this.biFileSave,
+ this.biPrintPreview,
+ this.biFilePrint});
+ this.standardToolbar.Manager = this.mainFrameBarManager;
+ //
+ // symbolToolBar
+ //
+ this.symbolToolBar.BarName = "Symbol";
+ this.symbolToolBar.BarStyle = ((Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle)((((Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.AllowQuickCustomizing | Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.RotateWhenVertical)
+ | Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.Visible)
+ | Syncfusion.Windows.Forms.Tools.XPMenus.BarStyle.DrawDragBorder)));
+ this.symbolToolBar.Caption = "Symbol";
+ this.symbolToolBar.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barAddSymbol,
+ this.barRemoveSymbol});
+ this.symbolToolBar.Manager = this.mainFrameBarManager;
+ //
+ // biFileOpenDiagram
+ //
+ this.biFileOpenDiagram.CategoryIndex = 0;
+ this.biFileOpenDiagram.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.biFileOpenDiagram.ID = "Open";
+ this.biFileOpenDiagram.ImageIndex = 1;
+ this.biFileOpenDiagram.ImageList = this.smallImageList;
+ this.biFileOpenDiagram.Text = "&Open Diagram";
+ //
+ // parentBarItemPopUp
+ //
+ this.parentBarItemPopUp.CategoryIndex = 1;
+ this.parentBarItemPopUp.Customizable = false;
+ this.parentBarItemPopUp.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemPopUp.ID = "PopUpMenu";
+ this.parentBarItemPopUp.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemEditCut,
+ this.barItemEditCopy,
+ this.barItemEditPaste,
+ this.barItemEditDelete,
+ this.parentBarItemActions,
+ this.parentBarItemFormat});
+ this.parentBarItemPopUp.Office2007Theme = Syncfusion.Windows.Forms.Office2007Theme.Silver;
+ this.parentBarItemPopUp.SeparatorIndices.AddRange(new int[] {
+ 3,
+ 4});
+ this.parentBarItemPopUp.ShowTooltip = false;
+ this.parentBarItemPopUp.Text = "PopUpMenu";
+ this.parentBarItemPopUp.UsePartialMenus = false;
+ this.parentBarItemPopUp.Visible = false;
+ //
+ // parentBarItemNode
+ //
+ this.parentBarItemNode.CategoryIndex = 0;
+ this.parentBarItemNode.CustomTextFont = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(204)));
+ this.parentBarItemNode.ID = "NodeMenu";
+ this.parentBarItemNode.Items.AddRange(new Syncfusion.Windows.Forms.Tools.XPMenus.BarItem[] {
+ this.barItemEditCut,
+ this.barItemEditCopy,
+ this.barItemEditPaste,
+ this.parentBarItemActions});
+ this.parentBarItemNode.SeparatorIndices.AddRange(new int[] {
+ 3});
+ this.parentBarItemNode.Text = "NodeMenu";
+ this.parentBarItemNode.Visible = false;
+ //
+ // splashPanel1
+ //
+ this.splashPanel1.BackgroundColor = new Syncfusion.Drawing.BrushInfo(Syncfusion.Drawing.GradientStyle.Vertical, System.Drawing.SystemColors.Highlight, System.Drawing.SystemColors.HighlightText);
+ this.splashPanel1.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("splashPanel1.BackgroundImage")));
+ this.splashPanel1.BorderStyle = System.Windows.Forms.Border3DStyle.Flat;
+ this.splashPanel1.DiscreetLocation = new System.Drawing.Point(0, 0);
+ this.splashPanel1.Location = new System.Drawing.Point(169, 76);
+ this.splashPanel1.Name = "splashPanel1";
+ this.splashPanel1.ShowAnimation = false;
+ this.splashPanel1.Size = new System.Drawing.Size(430, 230);
+ this.splashPanel1.TabIndex = 17;
+ this.splashPanel1.TimerInterval = 3000;
+ //
+ // splashControl1
+ //
+ this.splashControl1.AutoMode = false;
+ this.splashControl1.CustomSplashPanel = this.splashPanel1;
+ this.splashControl1.HideHostForm = true;
+ this.splashControl1.HostForm = this;
+ this.splashControl1.UseCustomSplashPanel = true;
+ //
+ // MainForm
+ //
+ this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+ this.BackColor = System.Drawing.SystemColors.Control;
+ this.ClientSize = new System.Drawing.Size(792, 566);
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.IsMdiContainer = true;
+ this.Name = "MainForm";
+ this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+ this.Text = "Symbol Designer";
+ this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
+ this.MdiChildActivate += new System.EventHandler(this.MainForm_MdiChildActivate);
+ this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MainForm_FormClosing);
+ ((System.ComponentModel.ISupportInitialize)(this.dockingManager)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.symbolPaletteGroupBar)).EndInit();
+ this.overviewControl1.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this.mainFrameBarManager)).EndInit();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ #endregion
+
+ #region Properties
+ private Hashtable NodeToDiagramMap
+ {
+ get
+ {
+ if (m_hashPalNodeToModelMapping == null)
+ {
+ m_hashPalNodeToModelMapping = new Hashtable();
+ }
+
+ return m_hashPalNodeToModelMapping;
+ }
+ }
+ private Controls.Diagram ActiveDiagram
+ {
+ get
+ {
+ Controls.Diagram diagram = null;
+
+ if (this.ActiveMdiChild != null)
+ {
+ DiagramForm diagramForm = this.ActiveMdiChild as DiagramForm;
+ if (diagramForm != null)
+ {
+ diagram = diagramForm.Diagram;
+ }
+ }
+
+ return diagram;
+ }
+ }
+
+ public PropertyEditor PropertyEditor
+ {
+ get
+ {
+ return this.propertyEditor;
+ }
+ }
+
+ #endregion
+
+ #region File Menu Event Handlers
+ private void biFileNew_Click(object sender, EventArgs e)
+ {
+ if (NeedSavePalette() || m_bNeedSave)
+ ClosePalette();
+ NewPalette();
+ UpdateMainFormTitle();
+ openDiagramDialog.FileName = String.Empty;
+ saveDiagramDialog.FileName = String.Empty;
+ m_bSaving = false;
+ }
+ private void biFileAppendPaletteNodes_Click(object sender, EventArgs e)
+ {
+ // append palette node's to current
+ if (openPaletteDialog.ShowDialog(this) == DialogResult.OK)
+ {
+ string strFileName = openPaletteDialog.FileName;
+ SymbolPalette newPalette = OpenPaletteFile(strFileName);
+
+ if (newPalette != null)
+ {
+ SymbolPalette palette = symbolPaletteGroupBar.CurrentSymbolPalette;
+
+ if (palette != null)
+ {
+ int nNodesCount = palette.Nodes.Count;
+
+ foreach (Node node in newPalette.Nodes)
+ {
+ // create mappings
+ this.NodeToDiagramMap.Add(node, null);
+
+ // add to current palette
+ palette.AppendChild(node);
+
+ int nIdx = newPalette.Nodes.IndexOf(node);
+ palette.SetUserLargeImage(nIdx + nNodesCount, newPalette.LargeImageList.Images[nIdx]);
+ palette.SetUserSmallImage(nIdx + nNodesCount, newPalette.SmallImageList.Images[nIdx]);
+ }
+
+ symbolPaletteGroupBar.Refresh();
+ }
+ else
+ {
+ symbolPaletteGroupBar.AddPalette(newPalette);
+
+ foreach (Node node in newPalette.Nodes)
+ {
+ // create mappings
+ this.NodeToDiagramMap.Add(node, null);
+ }
+ }
+ }
+
+ UpdateMainFormTitle();
+ }
+ }
+ private void biFileOpenPalette_Click(object sender, EventArgs e)
+ {
+ if (NeedSavePalette() || m_bNeedSave)
+ ClosePalette();
+ openDiagramDialog.FileName = String.Empty;
+ saveDiagramDialog.FileName = String.Empty;
+
+
+ // load palette
+ if (openPaletteDialog.ShowDialog(this) == DialogResult.OK)
+ {
+ string strFileName = openPaletteDialog.FileName;
+
+ SymbolPalette newPalette = OpenPaletteFile(strFileName);
+
+ if (newPalette != null)
+ {
+ symbolPaletteGroupBar.AddPalette(newPalette);
+ UpdateSymbolMenu(true);
+ foreach (Node node in newPalette.Nodes)
+ {
+ // create mappings
+ this.NodeToDiagramMap.Add(node, null);
+ }
+ }
+
+ UpdateMainFormTitle();
+ }
+ }
+
+ private void biFileClosePalette_Click(object sender, EventArgs e)
+ {
+ ClosePalette();
+ }
+
+ private void biFileSave_Click(object sender, EventArgs e)
+ {
+ if (savePaletteDialog.FileName.Length > 0)
+ {
+ SymbolPalette palette = PreparePaletteToSave();
+
+ if (palette.Nodes.Count > 0)
+ {
+ SavePalette(palette, savePaletteDialog.FileName);
+ symbolPaletteGroupBar.Refresh();
+ }
+
+ }
+ else
+ {
+ SaveCurrentPaletteAs();
+ }
+
+ DiagramForm dfrm;
+
+ foreach (Form frm in this.MdiChildren)
+ {
+ dfrm = frm as DiagramForm;
+
+ if (dfrm != null)
+ {
+ if (dfrm.Diagram.Model != null && dfrm.Diagram.Model.Modified)
+ {
+ dfrm.Diagram.Model.EndInit();
+ }
+ }
+ }
+
+ m_bNeedSave = false;
+ }
+ private void biFileSaveAs_Click(object sender, EventArgs e)
+ {
+ SaveCurrentPaletteAs();
+
+ DiagramForm dfrm;
+
+ foreach (Form frm in this.MdiChildren)
+ {
+ dfrm = frm as DiagramForm;
+
+ if (dfrm != null)
+ {
+ if (dfrm.Diagram.Model != null && dfrm.Diagram.Model.Modified)
+ {
+ dfrm.Diagram.Model.EndInit();
+ }
+ }
+ }
+
+ m_bNeedSave = false;
+ }
+
+ private void biPrintPreview_Click(object sender, EventArgs e)
+ {
+ this.PrintPreview();
+ }
+
+ private void biFilePrint_Click(object sender, EventArgs e)
+ {
+ this.Print();
+ }
+
+ private void biPageSetup_Click(object sender, EventArgs e)
+ {
+ this.PageSetup();
+ }
+
+ private void biFileExit_Click(object sender, EventArgs e)
+ {
+ this.Close();
+ }
+
+ private void barItemPageBorders_Click(object sender, EventArgs e)
+ {
+ PageBordersSetup();
+ }
+ #endregion
+
+ #region Edit Menu Event Handlers
+
+ private void barItemEditCut_Click(object sender, EventArgs e)
+ {
+ if (this.ActiveMdiChild != null)
+ {
+ DiagramForm diagramForm = this.ActiveMdiChild as DiagramForm;
+ if (diagramForm != null)
+ {
+ diagramForm.Diagram.Controller.Cut();
+ }
+ }
+ }
+ private void barItemEditCopy_Click(object sender, EventArgs e)
+ {
+ if (this.ActiveMdiChild != null)
+ {
+ DiagramForm diagramForm = this.ActiveMdiChild as DiagramForm;
+ if (diagramForm != null)
+ {
+ diagramForm.Diagram.Controller.Copy();
+ }
+ }
+ }
+ private void barItemEditPaste_Click(object sender, EventArgs e)
+ {
+ if (this.ActiveMdiChild != null)
+ {
+ DiagramForm diagramForm = this.ActiveMdiChild as DiagramForm;
+ if (diagramForm != null)
+ {
+ diagramForm.Diagram.Controller.Paste();
+ }
+ }
+ }
+ private void barItemEditUndo_Click(object sender, EventArgs e)
+ {
+ if (this.ActiveMdiChild != null)
+ {
+ DiagramForm diagramForm = this.ActiveMdiChild as DiagramForm;
+ if (diagramForm != null)
+ {
+ diagramForm.Diagram.Model.HistoryManager.Undo();
+ propertyEditor.PropertyGrid.Refresh();
+ }
+ }
+ }
+ private void barItemEditRedo_Click(object sender, EventArgs e)
+ {
+ if (this.ActiveMdiChild != null)
+ {
+ DiagramForm diagramForm = this.ActiveMdiChild as DiagramForm;
+ if (diagramForm != null)
+ {
+ diagramForm.Diagram.Model.HistoryManager.Redo();
+ propertyEditor.PropertyGrid.Refresh();
+ }
+ }
+ }
+ private void barItemEditSelectAll_Click(object sender, EventArgs e)
+ {
+ if (this.ActiveMdiChild != null)
+ {
+ DiagramForm diagramForm = this.ActiveMdiChild as DiagramForm;
+ if (diagramForm != null)
+ {
+ diagramForm.Diagram.Controller.SelectAll();
+ }
+ }
+ }
+ #endregion
+
+ #region View Menu Event Handlers
+ public void barShowRulers_Click(object sender, EventArgs e)
+ {
+ if (ActiveDiagram != null)
+ {
+ barShowRulers.Checked = !barShowRulers.Checked;
+ this.ActiveDiagram.ShowRulers = barShowRulers.Checked;
+ }
+ }
+ private void barItemViewSymbolPalette_Click(object sender, EventArgs e)
+ {
+ if (this.barItemViewSymbolPalette.Checked)
+ {
+ this.dockingManager.SetDockVisibility(this.symbolPaletteGroupBar, false);
+ this.barItemViewSymbolPalette.Checked = false;
+ }
+ else
+ {
+ this.dockingManager.SetDockVisibility(this.symbolPaletteGroupBar, true);
+ this.barItemViewSymbolPalette.Checked = true;
+ }
+ }
+
+ private void barItemViewProperties_Click(object sender, EventArgs e)
+ {
+ if (this.barItemViewProperties.Checked)
+ {
+ this.dockingManager.SetDockVisibility(this.propertyEditor, false);
+ this.barItemViewProperties.Checked = false;
+ }
+ else
+ {
+ this.dockingManager.SetDockVisibility(this.propertyEditor, true);
+ this.barItemViewProperties.Checked = true;
+ }
+ }
+
+
+ void barItemObjectModel_Click(object sender, EventArgs e)
+ {
+ if (barItemObjectModel.Checked)
+ {
+ this.dockingManager.SetDockVisibility(this.documentExplorer1, false);
+ this.barItemObjectModel.Checked = false;
+ }
+ else
+ {
+ this.dockingManager.SetDockVisibility(this.documentExplorer1, true);
+ this.barItemObjectModel.Checked = true;
+ }
+ }
+
+ private void barItemPanZoom_Click(object sender, EventArgs e)
+ {
+ if (barItemPanZoom.Checked)
+ {
+ // Hide the overview control
+ dockingManager.SetDockVisibility(overviewControl1, false);
+ barItemPanZoom.Checked = false;
+ }
+ else
+ {
+ // Initialize the OverviewControl with the active diagram's Model & View and display the control
+ if ((this.ActiveDiagram != null) && !(dockingManager.GetDockVisibility(overviewControl1)))
+ {
+ dockingManager.SetDockVisibility(overviewControl1, true);
+ overviewControl1.Diagram = this.ActiveDiagram;
+ }
+
+ barItemPanZoom.Checked = true;
+ }
+ }
+ private void PageBordersSetup()
+ {
+ Controls.Diagram activeDiagram = this.ActiveDiagram;
+ if (activeDiagram != null && activeDiagram.Model != null)
+ {
+ PageBorderDialog borderDialog = new PageBorderDialog();
+ borderDialog.PageBorderStyle = activeDiagram.View.PageBorderStyle;
+ if (borderDialog.ShowDialog() == DialogResult.OK)
+ {
+ activeDiagram.View.PageBorderStyle = borderDialog.PageBorderStyle;
+ activeDiagram.View.RefreshPageSettings();
+ activeDiagram.UpdateView();
+ }
+ }
+ }
+
+
+ #endregion
+
+ #region Window Menu Event Handlers
+
+ private void biTabbedMDI_Click(object sender, EventArgs e)
+ {
+ // Toggle tabbed MDI mode
+ Tools.XPMenus.BarItem barItem = sender as Tools.XPMenus.BarItem;
+ if (barItem != null)
+ {
+ if (barItem.Checked)
+ {
+ tabbedMDIManager.DetachFromMdiContainer(this, true);
+ barItem.Checked = false;
+ }
+ else
+ {
+ tabbedMDIManager.AttachToMdiContainer(this);
+ barItem.Checked = true;
+ }
+ }
+ }
+
+ #endregion
+
+ #region Help Menu Event Handlers
+
+ private void barItemAbout_Click(object sender, EventArgs e)
+ {
+ About aboutDlg = new About();
+ aboutDlg.ShowDialog(this);
+ }
+
+ #endregion
+
+ #region Helper methods
+ private SymbolPalette OpenPaletteFile(string strFileName)
+ {
+ SymbolPalette paletteToReturn = null;
+
+ // Open symbol palette and add it to the symbol palette group bar
+ //if( openPaletteDialog.ShowDialog( this ) == DialogResult.OK )
+ //{
+ //string strFileName = openPaletteDialog.FileName;
+
+ RegexOptions options = RegexOptions.IgnoreCase | RegexOptions.RightToLeft;
+ Match match = Regex.Match(strFileName, ".vss|.vsx|.vsd|.vdx", options);
+
+ if (match.Success)
+ {
+ VisioStencilConverter converter = new VisioStencilConverter(strFileName, this);
+ converter.ShowProgressDialog = true;
+
+ paletteToReturn = converter.Convert();
+ savePaletteDialog.FileName = String.Empty;
+ //openPaletteDialog.FileName.Replace(openPaletteDialog.FileName.Substring(openPaletteDialog.FileName.LastIndexOf(".")+1, 3), savePaletteDialog.DefaultExt);
+ }
+ else
+ {
+ //using (FileStream fs = new FileStream(strFileName, FileMode.Open, FileAccess.Read))
+ //{
+ // IFormatter formatter = new BinaryFormatter();
+ // formatter.Binder = Syncfusion.Runtime.Serialization.AppStateSerializer.CustomBinder;
+
+ // try
+ // {
+ // AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(DiagramBaseAssembly.AssemblyResolver);
+ // paletteToReturn = (SymbolPalette)formatter.Deserialize(fs);
+ // paletteToReturn.UpdateIcons();
+ // }
+ // catch (SerializationException)
+ // {
+ // try
+ // {
+ // formatter = new SoapFormatter();
+ // fs.Position = 0;
+
+ // paletteToReturn = (SymbolPalette)formatter.Deserialize(fs);
+ // paletteToReturn.UpdateIcons();
+ // }
+ // catch (Exception se)
+ // {
+ // MessageBox.Show(this, se.Message);
+ // }
+ // }
+ //}
+ paletteToReturn = new SymbolPalette();
+ paletteToReturn = paletteToReturn.FromFile(strFileName);
+ savePaletteDialog.FileName = openPaletteDialog.FileName;
+ }
+ //}
+ return paletteToReturn;
+ }
+ private void SavePalette(SymbolPalette palette, string strSavePath)
+ {
+ if (palette == null) throw new ArgumentNullException("palette");
+
+ using (FileStream fStream = new FileStream(strSavePath, FileMode.OpenOrCreate, FileAccess.Write))
+ {
+ BinaryFormatter formatter = new BinaryFormatter();
+ formatter.Serialize(fStream, palette);
+ }
+
+ if (this.ActiveMdiChild != null)
+ {
+ if (this.ActiveMdiChild.GetType().Name.Equals("DiagramForm"))
+ {
+ if (this.ActiveMdiChild.Text.EndsWith("*"))
+ this.ActiveMdiChild.Text = this.ActiveMdiChild.Text.Remove(this.ActiveMdiChild.Text.IndexOf("*"));
+ if (symbolPaletteGroupBar.GroupBarItems[0].Text.EndsWith("*"))
+ symbolPaletteGroupBar.GroupBarItems[0].Text = symbolPaletteGroupBar.GroupBarItems[0].Text.Remove(symbolPaletteGroupBar.GroupBarItems[0].Text.IndexOf("*")); ;
+ }
+ }
+ }
+ private void SaveCurrentPaletteAs()
+ {
+ if (savePaletteDialog.ShowDialog() == DialogResult.OK)
+ {
+ SymbolPalette palette = PreparePaletteToSave();
+
+ if (palette.Nodes.Count > 0)
+ {
+ SavePalette(palette, savePaletteDialog.FileName);
+ symbolPaletteGroupBar.Refresh();
+ }
+ }
+ }
+ private SymbolPalette PreparePaletteToSave()
+ {
+ SymbolPalette palette = new SymbolPalette();
+ palette.Name = symbolPaletteGroupBar.CurrentSymbolPalette.Name;
+
+ Node nodeTmp = null;
+ Model modelTmp;
+ // iterate through palette nodes
+ NodeCollection nodesPalette = symbolPaletteGroupBar.CurrentSymbolPalette.Nodes;
+ nodesPalette.QuietMode = true;
+
+ for (int i = 0; i < nodesPalette.Count; i++)
+ {
+ Node node = nodesPalette[i];
+
+ if (!this.NodeToDiagramMap.ContainsKey(node)) continue;
+
+ DiagramForm frmDgm = this.NodeToDiagramMap[node] as DiagramForm;
+
+ if (frmDgm != null)
+ {
+ modelTmp = frmDgm.Diagram.Model;
+
+ if (modelTmp != null)
+ {
+ // get model nodes
+ NodeCollection nodes = (NodeCollection)modelTmp.Nodes.Clone();
+ // add nodes to group
+ if (nodes.Count > 1)
+ {
+ nodeTmp = new Group(nodes);
+ }
+ else if (nodes.Count > 0)
+ {
+ nodeTmp = nodes.First;
+ }
+ else
+ {
+ nodeTmp = null;
+ }
+
+ // add group to palette
+ }
+ }
+ else
+ {
+ nodeTmp = node.Clone() as Node;
+ }
+
+ if (nodeTmp != null)
+ {
+ nodeTmp.Name = nodesPalette[i].Name;
+ symbolPaletteGroupBar.CurrentSymbolPalette.UpdateNode(nodeTmp, i);
+ symbolPaletteGroupBar.CurrentSymbolPalette.UpdateImage(i);
+ this.NodeToDiagramMap[nodeTmp] = frmDgm;
+ UpdateMDIChildText();
+ }
+ }
+
+ return symbolPaletteGroupBar.CurrentSymbolPalette;
+ }
+ private bool NeedSavePalette()
+ {
+ // iterate through open DiagramForms and check Model.Modified flag
+ bool bSuccess = false;
+ DiagramForm dfrm;
+
+ foreach (Form frm in this.MdiChildren)
+ {
+ dfrm = frm as DiagramForm;
+
+ if (dfrm != null)
+ {
+ if (dfrm.Diagram.Model != null && dfrm.Diagram.Model.Modified)
+ {
+ bSuccess = true;
+ break;
+ }
+ }
+ }
+
+ return bSuccess;
+ }
+
+ bool cancelClosing = false;
+
+ private void ClosePalette()
+ {
+ if (SaveOnDemand())
+ {
+ cancelClosing = true;
+ return;
+ }
+ cancelClosing = false;
+ foreach (Form frm in this.MdiChildren)
+ {
+ DiagramForm dfrm = frm as DiagramForm;
+ if (dfrm != null && !dfrm.IsDisposed)
+ {
+ dfrm.Dispose();
+ }
+ }
+
+ this.NodeToDiagramMap.Clear();
+ if (symbolPaletteGroupBar.GroupBarItems.Count > 0)
+ symbolPaletteGroupBar.GroupBarItems.RemoveAt(symbolPaletteGroupBar.SelectedItem);
+ symbolPaletteGroupBar.Refresh();
+ UpdateSymbolMenu(false);
+ }
+
+ private void UpdateSymbolMenu(bool status)
+ {
+ this.barAddSymbol.Enabled = status;
+ this.barRemoveSymbol.Enabled = status;
+ }
+
+ private void NewPalette()
+ {
+ symbolPaletteGroupBar.AddPalette();
+ UpdateSymbolMenu(true);
+ this.savePaletteDialog.FileName = "";
+ this.saveDiagramDialog.FileName = "";
+ }
+ private void UpdateMainFormTitle()
+ {
+ SymbolPalette curSymbolPalette = symbolPaletteGroupBar.CurrentSymbolPalette;
+ string textVal = c_strFORM_TITLE;
+
+ if (curSymbolPalette != null)
+ {
+ textVal += " - " + curSymbolPalette.Name;
+ }
+
+ this.Text = textVal;
+ }
+ ///
+ /// Save currecnt palette on demand.
+ ///
+ /// TRUE if DialogResult equals cancel - don't close window, otherwise FALSE.
+ private bool SaveOnDemand()
+ {
+ bool cancel = false;
+
+ if (NeedSavePalette() || m_bNeedSave)
+ {
+ System.Windows.Forms.DialogResult dlgResult = MessageBox.Show(this, c_strMSG_PROMPT_SAVE, c_strCAPTION_PROMPT_SAVE
+ , MessageBoxButtons.YesNoCancel);
+
+ if (dlgResult == DialogResult.Cancel)
+ {
+ cancel = true;
+ }
+
+ if (dlgResult == DialogResult.Yes)
+ {
+ if (savePaletteDialog.FileName.Length > 0)
+ {
+ SymbolPalette palette = PreparePaletteToSave();
+
+ if (palette.Nodes.Count > 0)
+ {
+ SavePalette(palette, savePaletteDialog.FileName);
+ symbolPaletteGroupBar.Refresh();
+ }
+
+ }
+ else
+ {
+ SaveCurrentPaletteAs();
+ }
+
+ DiagramForm dfrm;
+
+ foreach (Form frm in this.MdiChildren)
+ {
+ dfrm = frm as DiagramForm;
+
+ if (dfrm != null)
+ {
+ if (dfrm.Diagram.Model != null && dfrm.Diagram.Model.Modified)
+ {
+ dfrm.Diagram.Model.EndInit();
+ }
+ }
+ }
+
+ m_bNeedSave = false;
+ }
+ if (dlgResult == DialogResult.No)
+ m_bNeedSave = false;
+ }
+
+ return cancel;
+ }
+ #endregion
+
+ #region Docking
+
+ private void dockingManager_DockVisibilityChanged(object sender, Tools.DockVisibilityChangedEventArgs e)
+ {
+ if (e.Control == this.propertyEditor)
+ {
+ this.barItemViewProperties.Checked = this.dockingManager.GetDockVisibility(propertyEditor);
+ }
+ else if (e.Control == this.symbolPaletteGroupBar)
+ {
+ this.barItemViewSymbolPalette.Checked = this.dockingManager.GetDockVisibility(symbolPaletteGroupBar);
+ }
+ else if (e.Control == this.overviewControl1)
+ {
+ this.barItemPanZoom.Checked = this.dockingManager.GetDockVisibility(overviewControl1);
+ }
+ if (e.Control == this.documentExplorer1)
+ {
+ this.barItemObjectModel.Checked = this.dockingManager.GetDockVisibility(documentExplorer1);
+ }
+ }
+
+ #endregion
+
+ #region UI Updating
+
+ private void OnIdle(object sender, EventArgs evtArgs)
+ {
+ Controls.Diagram activeDiagram = this.ActiveDiagram;
+
+ if (symbolPaletteGroupBar.SelectedItem != -1)
+ biFileOpenDiagram.Enabled = symbolPaletteGroupBar.SelectedNode != null;
+ else
+ biFileOpenDiagram.Enabled = false;
+
+ string editUndoText = c_strUNDO;
+ string editRedoText = c_strREDO;
+ this.barItemPanZoom.Checked = dockingManager.GetDockVisibility(overviewControl1);
+ this.barItemViewProperties.Checked = dockingManager.GetDockVisibility(propertyEditor);
+ this.barItemViewSymbolPalette.Checked = dockingManager.GetDockVisibility(symbolPaletteGroupBar);
+
+ if (activeDiagram != null && activeDiagram.Model != null)
+ {
+ this.biFileSave.Enabled = true;
+ this.biFileSaveAs.Enabled = true;
+ this.biFileClosePalette.Enabled = true;
+ this.barItemEditCopy.Enabled = activeDiagram.CanCopy;
+ this.barItemEditCut.Enabled = activeDiagram.CanCut;
+ if (this.WindowState != FormWindowState.Minimized)
+ this.barItemEditPaste.Enabled = activeDiagram.CanPaste;
+ this.barItemEditUndo.Enabled = activeDiagram.Model.HistoryManager.CanUndo;
+ this.barItemEditRedo.Enabled = activeDiagram.Model.HistoryManager.CanRedo;
+ this.barItemEditDelete.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 0);
+ this.barShowRulers.Enabled = true;
+ this.barShowRulers.Checked = this.ActiveDiagram.ShowRulers;
+ this.barItemEditSelectAll.Enabled = true;
+ this.biFilePrint.Enabled = true;
+ this.biPageSetup.Enabled = true;
+ barItemAlignLeft.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count >= 2);
+ barItemAlignCenter.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count >= 2);
+ barItemAlignRight.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count >= 2);
+ barItemAlignTop.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count >= 2);
+ barItemAlignMiddle.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count >= 2);
+ barItemAlignBottom.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count >= 2);
+ barItemFlipHorizontally.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 0);
+ barItemFlipVertically.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 0);
+ barItemFlipBoth.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 0);
+ barItemGroupingGroup.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 1);
+ barItemGroupingUnGroup.Enabled = true;
+ barItemOrderFront.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 0);
+ barItemOrderForward.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 0);
+ barItemOrderBackward.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 0);
+ barItemOrderBack.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 0);
+ barItemRotateClock.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 0);
+ barItemRotateConter.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 0);
+ barItemResizeWidth.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 1);
+ barItemResizeHeight.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 1);
+ barItemResizeSize.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 1);
+ barItemResizeAcross.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 1);
+ barItemResizeDown.Enabled = (this.ActiveDiagram.Controller.SelectionList.Count > 1);
+ if (this.ActiveDiagram.Controller.SelectionList.Count > 0)
+ {
+ Node node = this.ActiveDiagram.Controller.SelectionList[0];
+ barItemFillStyle.Enabled = (TypeDescriptor.GetProperties(node, false)["FillStyle"] != null);
+ barItemShadowStyle.Enabled = (TypeDescriptor.GetProperties(node, false)["ShadowStyle"] != null);
+ }
+
+ string[] strDescriptions;
+ int nDescWanted = 1;
+ int nDescReturned = activeDiagram.Model.HistoryManager.GetUndoDescriptions(nDescWanted, out strDescriptions);
+
+ if (nDescReturned == nDescWanted)
+ editUndoText = editUndoText + " " + strDescriptions[0];
+
+ // clear strDecsriptions.
+ nDescReturned = activeDiagram.Model.HistoryManager.GetRedoDescriptions(nDescWanted, out strDescriptions);
+ if (nDescReturned == nDescWanted)
+ editRedoText = editRedoText + " " + strDescriptions[0];
+ }
+ else
+ {
+ this.biFileSave.Enabled = false;
+ this.biFileSaveAs.Enabled = false;
+ this.biFileClosePalette.Enabled = false;
+ this.barItemEditCopy.Enabled = false;
+ this.barItemEditCut.Enabled = false;
+ this.barItemEditPaste.Enabled = false;
+ this.barItemEditUndo.Enabled = false;
+ this.barItemEditRedo.Enabled = false;
+ this.barItemEditSelectAll.Enabled = false;
+ this.biFilePrint.Enabled = false;
+ this.biPageSetup.Enabled = false;
+ this.barItemEditDelete.Enabled = false;
+ this.barShowRulers.Enabled = false;
+
+ barItemAlignLeft.Enabled = false;
+ barItemAlignCenter.Enabled = false;
+ barItemAlignRight.Enabled = false;
+ barItemAlignTop.Enabled = false;
+ barItemAlignMiddle.Enabled = false;
+ barItemAlignBottom.Enabled = false;
+ barItemFlipHorizontally.Enabled = false;
+ barItemFlipVertically.Enabled = false;
+ barItemFlipBoth.Enabled = false;
+ barItemGroupingGroup.Enabled = false;
+ barItemGroupingUnGroup.Enabled = false;
+ barItemOrderFront.Enabled = false;
+ barItemOrderForward.Enabled = false;
+ barItemOrderBackward.Enabled = false;
+ barItemOrderBack.Enabled = false;
+ barItemRotateClock.Enabled = false;
+ barItemRotateConter.Enabled = false;
+ barItemResizeWidth.Enabled = false;
+ barItemResizeHeight.Enabled = false;
+ barItemResizeSize.Enabled = false;
+ barItemResizeAcross.Enabled = false;
+ barItemResizeDown.Enabled = false;
+ barItemFillStyle.Enabled = false;
+ barItemShadowStyle.Enabled = false;
+ }
+
+ this.barItemEditUndo.Text = editUndoText;
+ this.barItemEditRedo.Text = editRedoText;
+ this.dockingManager.SetCloseButtonVisibility(symbolPaletteGroupBar, false);
+ this.dockingManager.SetMenuButtonVisibility(symbolPaletteGroupBar, false);
+ this.dockingManager.SetMenuButtonVisibility(documentExplorer1, false);
+ biFileClosePalette.Enabled = biFileSave.Enabled = biFileSaveAs.Enabled = this.symbolPaletteGroupBar.CurrentSymbolPalette != null;
+ }
+
+ #endregion
+
+ #region Printing
+
+ private void PageSetup()
+ {
+ Controls.Diagram activeDiagram = this.ActiveDiagram;
+
+ if (activeDiagram != null && activeDiagram.Model != null)
+ {
+ PrintSetupDialog dlgPrintSetup = new PrintSetupDialog();
+
+ // Made to make values more user friendly
+ dlgPrintSetup.PageSettings = activeDiagram.View.PageSettings;
+ dlgPrintSetup.PrintZoom = activeDiagram.View.PrintZoom;
+
+ if (dlgPrintSetup.ShowDialog() == DialogResult.OK)
+ {
+ activeDiagram.View.PageSettings = dlgPrintSetup.PageSettings;
+ activeDiagram.View.PrintZoom = dlgPrintSetup.PrintZoom;
+ activeDiagram.View.RefreshPageSettings();
+ activeDiagram.UpdateView();
+ }
+ }
+ }
+
+ private void Print()
+ {
+ Controls.Diagram activeDiagram = this.ActiveDiagram;
+ if (activeDiagram != null)
+ {
+ PrintDocument printDoc = activeDiagram.CreatePrintDocument();
+ PrintDialog printDlg = new PrintDialog();
+ printDlg.Document = printDoc;
+
+ printDlg.AllowSomePages = true;
+
+ if (printDlg.ShowDialog(this) == DialogResult.OK)
+ {
+ printDoc.PrinterSettings = printDlg.PrinterSettings;
+ printDoc.Print();
+ }
+ }
+ }
+
+ private void PrintPreview()
+ {
+ Controls.Diagram activeDiagram = this.ActiveDiagram;
+
+ if (activeDiagram != null)
+ {
+ PrintDocument printDoc = activeDiagram.CreatePrintDocument();
+ PrintPreviewDialog printPreviewDlg = new PrintPreviewDialog();
+ printPreviewDlg.StartPosition = FormStartPosition.CenterScreen;
+
+ printDoc.PrinterSettings.FromPage = 0;
+ printDoc.PrinterSettings.ToPage = 0;
+ printDoc.PrinterSettings.PrintRange = PrintRange.AllPages;
+
+ printPreviewDlg.Document = printDoc;
+ printPreviewDlg.ShowDialog(this);
+ }
+ }
+
+ #endregion
+
+ #region Event handlers
+ private void MainForm_MdiChildActivate(object sender, EventArgs e)
+ {
+ DiagramForm frmDgm = this.ActiveMdiChild as DiagramForm;
+
+ if (frmDgm != null)
+ {
+ this.propertyEditor.Diagram = frmDgm.Diagram;
+
+ Bar mergeBar = frmDgm.childFrameBarManager.MainFrameBarManager.GetMergedEquivalent(frmDgm.bar1, frmDgm.bar1);
+ this.mainFrameBarManager.GetBarControl(mergeBar).RowIndex = 2;
+ this.mainFrameBarManager.GetBarControl(mergeBar).RowOffset = 0;
+
+ mergeBar = frmDgm.childFrameBarManager.MainFrameBarManager.GetMergedEquivalent(frmDgm.barDrawing, frmDgm.barDrawing);
+ this.mainFrameBarManager.GetBarControl(mergeBar).RowIndex = 2;
+ this.mainFrameBarManager.GetBarControl(mergeBar).RowOffset = 0;
+
+ mergeBar = frmDgm.childFrameBarManager.MainFrameBarManager.GetMergedEquivalent(frmDgm.barNode, frmDgm.barNode);
+ this.mainFrameBarManager.GetBarControl(mergeBar).RowIndex = 2;
+ this.mainFrameBarManager.GetBarControl(mergeBar).RowOffset = 0;
+
+ mergeBar = frmDgm.childFrameBarManager.MainFrameBarManager.GetMergedEquivalent(frmDgm.barNudge, frmDgm.barNudge);
+ this.mainFrameBarManager.GetBarControl(mergeBar).RowIndex = 2;
+ this.mainFrameBarManager.GetBarControl(mergeBar).RowOffset = 0;
+
+ // If the OverviewControl is visible then change the OverviewControl.Model and OverviewControl.View
+ // properties to reference the new diagram's Model and View
+ if (this.dockingManager.GetDockVisibility(overviewControl1))
+ {
+ this.overviewControl1.Diagram = frmDgm.Diagram;
+ }
+
+ // update palette selection
+ Node nodeMapped = GetMappedNode(frmDgm);
+ int index = symbolPaletteGroupBar.CurrentSymbolPalette.Nodes.IndexOf(nodeMapped);
+
+ if (nodeMapped != null)
+ symbolPaletteGroupBar.SelectNode(nodeMapped);
+
+ GroupView gvPalette = symbolPaletteGroupBar.GroupBarItems[0].Client as GroupView;
+ gvPalette.BringItemIntoView(index);
+
+ if (dockingManager.GetDockVisibility(this.documentExplorer1))
+ {
+ this.documentExplorer1.Nodes.Clear();
+ this.documentExplorer1.AttachModel(frmDgm.Diagram.Model);
+ }
+
+ this.documentExplorer1.AfterSelect += new TreeViewEventHandler(documentExplorer1_AfterSelect);
+ }
+ }
+
+ void documentExplorer1_AfterSelect(object sender, TreeViewEventArgs e)
+ {
+ // Update diagram's selection list depending on TreeNode Tag
+ if (e.Node.Tag is Model)
+ {
+ foreach (Form frm in this.MdiChildren)
+ {
+ DiagramForm frmDgm = frm as DiagramForm;
+
+ if (frmDgm != null)
+ {
+ if (frmDgm.Diagram != null && frmDgm.Diagram.Model != null
+ && frmDgm.Diagram.Model.Equals(e.Node.Tag))
+ {
+ frmDgm.BringToFront();
+ break;
+ }
+ }
+ }
+ }
+ else if (e.Node.Tag is Node)
+ {
+ Node nodeTemp = e.Node.Tag as Node;
+
+ if (nodeTemp != null)
+ {
+ if (nodeTemp.Visible && nodeTemp.Root.Equals(this.ActiveDiagram.Model))
+ {
+ ActiveDiagram.View.SelectionList.Clear();
+ ActiveDiagram.View.SelectionList.Add(e.Node.Tag as Node);
+ }
+ else
+ {
+ propertyEditor.PropertyGrid.SelectedObject = nodeTemp;
+ }
+ }
+ }
+ }
+
+ private void symbolPaletteGroupBar_GroupBarItemRemoved(object sender, GroupBarItemEventArgs args)
+ {
+ if (args.Item != null && args.Item.GroupBar != null)
+ {
+ PaletteGroupView paletteView = args.Item.Client as PaletteGroupView;
+
+ if (paletteView != null)
+ {
+ paletteView.Click -= new EventHandler(groupBar_NodeClick);
+ paletteView.GroupViewItems.CollectionChanged -= new CollectionChangeEventHandler(GroupViewItems_CollectionChanged);
+ }
+ }
+ }
+
+ private void symbolPaletteGroupBar_GroupBarItemAdded(object sender, GroupBarItemEventArgs args)
+ {
+ if (args.Item != null && args.Item.GroupBar != null)
+ {
+ PaletteGroupView paletteView = args.Item.Client as PaletteGroupView;
+
+ if (paletteView != null)
+ {
+ paletteView.ButtonView = false;
+ paletteView.BackColor = SystemColors.Control;
+ paletteView.Click += new EventHandler(groupBar_NodeClick);
+ paletteView.GroupViewItems.CollectionChanged += new CollectionChangeEventHandler(GroupViewItems_CollectionChanged);
+ }
+ }
+ }
+
+ void GroupViewItems_CollectionChanged(object sender, CollectionChangeEventArgs e)
+ {
+ if (e.Action == CollectionChangeAction.Add || e.Action == CollectionChangeAction.Remove)
+ {
+ m_bNeedSave = true;
+ if (symbolPaletteGroupBar.SelectedItem != -1)
+ {
+
+ if (symbolPaletteGroupBar.GroupBarItems[symbolPaletteGroupBar.SelectedItem] != null)
+ if (!symbolPaletteGroupBar.GroupBarItems[symbolPaletteGroupBar.SelectedItem].Text.EndsWith("*"))
+ symbolPaletteGroupBar.GroupBarItems[symbolPaletteGroupBar.SelectedItem].Text += "*";
+ }
+ }
+ }
+
+ private void symbolPaletteGroupBar_NodeSelected(object sender, NodeEventArgs evtArgs)
+ {
+ if (evtArgs.Node != null)
+ {
+ // activate mapped DiagramForm
+ if (this.NodeToDiagramMap.ContainsKey(evtArgs.Node) && this.NodeToDiagramMap[evtArgs.Node] != null)
+ {
+ ((Form)this.NodeToDiagramMap[evtArgs.Node]).BringToFront();
+ }
+
+ PaletteGroupView view = symbolPaletteGroupBar.GroupBarItems[symbolPaletteGroupBar.SelectedItem].Client as PaletteGroupView;
+ if (view != null && view.SelectedItem >= 0)
+ {
+ propertyEditor.PropertyGrid.SelectedObject = view.GroupViewItems[view.SelectedItem] as PaletteGroupView.GroupViewPaletteItem;
+ }
+ }
+ }
+ private void groupBar_NodeClick(object sender, EventArgs evtArgs)
+ {
+ //if (this.symbolPaletteGroupBar.SelectedNode != null)
+ //{
+ // DiagramForm frmDgm = this.ActiveMdiChild as DiagramForm;
+
+ // if (frmDgm != null)
+ // {
+ // this.propertyEditor.Diagram = frmDgm.Diagram;
+
+ // // update palette selection
+ // Node nodeMapped = GetMappedNode(frmDgm);
+
+ // if (nodeMapped != null)
+ // symbolPaletteGroupBar.SelectNode(nodeMapped);
+
+ // PaletteGroupView view = symbolPaletteGroupBar.GroupBarItems[symbolPaletteGroupBar.SelectedItem].Client as PaletteGroupView;
+
+ // if (view != null && view.SelectedItem >= 0)
+ // {
+ // propertyEditor.PropertyGrid.SelectedObject = view.GroupViewItems[view.SelectedItem] as PaletteGroupView.GroupViewPaletteItem;
+ // }
+ // }
+ //}
+
+
+ if (symbolPaletteGroupBar.SelectedNode == null) return;
+
+ Node node = symbolPaletteGroupBar.SelectedNode;
+
+ // open symbol editor if it is closed
+ if ((this.NodeToDiagramMap.ContainsKey(node)) && (this.NodeToDiagramMap[node] == null ||
+ (this.NodeToDiagramMap[node] != null && (this.NodeToDiagramMap[node] as Form).Parent == null)))
+ {
+ DiagramForm frmDgm = CreateDiagramForm();
+ frmDgm.Text = node.Name;
+
+ Model mdlTmp = frmDgm.Diagram.Model;
+ mdlTmp.BeginInit();
+
+ if (mdlTmp != null)
+ {
+ Group group = node as Group;
+ mdlTmp.AppendChild(node);
+
+ mdlTmp.SizeToContent = true;
+ RectangleF bounds = RenderingHelper.GetBoundingRectangle(mdlTmp.Nodes, MeasureUnits.Pixel);
+
+ mdlTmp.SizeToContent = true;
+ mdlTmp.SizeToContent = false;
+ mdlTmp.LogicalSize = new SizeF(
+ mdlTmp.LogicalSize.Width + bounds.Size.Width / 2,
+ mdlTmp.LogicalSize.Height + bounds.Size.Height / 2
+ );
+
+ foreach (Node n in mdlTmp.Nodes)
+ {
+ // handling AllowMove styles
+ bool allowmovex = n.EditStyle.AllowMoveX;
+ bool allowmovey = n.EditStyle.AllowMoveY;
+ n.EditStyle.AllowMoveX = false;
+ n.EditStyle.AllowMoveY = false;
+
+ float fx = MeasureUnitsConverter.Convert((mdlTmp.LogicalSize.Width - bounds.Size.Width) / 2, MeasureUnits.Pixel, n.MeasurementUnit);
+ float fy = MeasureUnitsConverter.Convert((mdlTmp.LogicalSize.Height - bounds.Size.Height) / 2, MeasureUnits.Pixel, n.MeasurementUnit);
+
+ n.Translate(fx, fy);
+
+ n.EditStyle.AllowMoveX = allowmovex;
+ n.EditStyle.AllowMoveY = allowmovey;
+ }
+
+ // set model name
+ mdlTmp.Name = node.Name;
+ }
+
+ // update mapping
+ this.NodeToDiagramMap[node] = frmDgm;
+ frmDgm.Closing += new CancelEventHandler(DiagramForm_Closing);
+ frmDgm.Show();
+ mdlTmp.EndInit();
+ mdlTmp.HistoryManager.ClearHistory();
+ }
+ }
+
+ private void barItem1_Click(object sender, EventArgs e)
+ {
+ Process.Start("http://help.syncfusion.com/ug_93/User%20Interface/Windows%20Forms/Diagram/Documents/3212symboldesigner.htm");
+ }
+
+ private void shadowBarItem_Click(object sender, EventArgs e)
+ {
+ ShadowStyleDialog ssd = new ShadowStyleDialog();
+ ShadowStyle fs = null;
+ foreach (Node n in this.ActiveDiagram.Controller.SelectionList)
+ {
+ fs = (ShadowStyle)TypeDescriptor.GetProperties(n, false)["ShadowStyle"].GetValue(n);
+ if (fs != null)
+ {
+ break;
+ }
+ }
+ if (fs != null)
+ {
+ ssd.ShadowStyle.Color = fs.Color;
+ ssd.ShadowStyle.ForeColor = fs.ForeColor;
+ ssd.ShadowStyle.ColorAlphaFactor = fs.ColorAlphaFactor;
+ ssd.ShadowStyle.ForeColorAlphaFactor = fs.ForeColorAlphaFactor;
+ ssd.ShadowStyle.PathBrushStyle = fs.PathBrushStyle;
+ ssd.ShadowStyle.OffsetX = fs.OffsetX;
+ ssd.ShadowStyle.OffsetY = fs.OffsetY;
+ ssd.ShadowStyle.Visible = fs.Visible;
+ if (DialogResult.OK == ssd.ShowDialog())
+ {
+ foreach (Node n in this.ActiveDiagram.Controller.SelectionList)
+ {
+ fs = (ShadowStyle)TypeDescriptor.GetProperties(n, false)["ShadowStyle"].GetValue(n);
+ if (fs != null)
+ {
+ fs.Color = ssd.ShadowStyle.Color;
+ fs.ForeColor = ssd.ShadowStyle.ForeColor;
+ fs.ColorAlphaFactor = ssd.ShadowStyle.ColorAlphaFactor;
+ fs.ForeColorAlphaFactor = ssd.ShadowStyle.ForeColorAlphaFactor;
+ fs.PathBrushStyle = ssd.ShadowStyle.PathBrushStyle;
+ fs.OffsetX = ssd.ShadowStyle.OffsetX;
+ fs.OffsetY = ssd.ShadowStyle.OffsetY;
+ fs.Visible = ssd.ShadowStyle.Visible;
+ }
+ }
+ }
+ }
+ }
+ private void fillBarItem_Click(object sender, EventArgs e)
+ {
+ FillStyleDialog fsd = new FillStyleDialog();
+ FillStyle fs = null;
+ foreach (Node n in this.ActiveDiagram.Controller.SelectionList)
+ {
+ fs = (FillStyle)TypeDescriptor.GetProperties(n, false)["FillStyle"].GetValue(n);
+ if (fs != null)
+ {
+ break;
+ }
+ }
+
+ if (fs != null)
+ {
+ fsd.FillStyle.Color = fs.Color;
+ fsd.FillStyle.ForeColor = fs.ForeColor;
+ fsd.FillStyle.ColorAlphaFactor = fs.ColorAlphaFactor;
+ fsd.FillStyle.ForeColorAlphaFactor = fs.ForeColorAlphaFactor;
+ fsd.FillStyle.Type = fs.Type;
+ fsd.FillStyle.GradientAngle = fs.GradientAngle;
+ fsd.FillStyle.GradientCenter = fs.GradientCenter;
+ fsd.FillStyle.PathBrushStyle = fs.PathBrushStyle;
+ fsd.FillStyle.HatchBrushStyle = fs.HatchBrushStyle;
+ fsd.FillStyle.Texture = fs.Texture;
+ fsd.FillStyle.TextureWrapMode = fs.TextureWrapMode;
+ if (DialogResult.OK == fsd.ShowDialog())
+ {
+ foreach (Node n in this.ActiveDiagram.Controller.SelectionList)
+ {
+ fs = (FillStyle)TypeDescriptor.GetProperties(n, false)["FillStyle"].GetValue(n);
+ if (fs != null)
+ {
+ fs.Color = fsd.FillStyle.Color;
+ fs.ForeColor = fsd.FillStyle.ForeColor;
+ fs.ColorAlphaFactor = fsd.FillStyle.ColorAlphaFactor;
+ fs.ForeColorAlphaFactor = fsd.FillStyle.ForeColorAlphaFactor;
+ fs.Type = fsd.FillStyle.Type;
+ fs.GradientAngle = fsd.FillStyle.GradientAngle;
+ fs.GradientCenter = fsd.FillStyle.GradientCenter;
+ fs.PathBrushStyle = fsd.FillStyle.PathBrushStyle;
+ fs.HatchBrushStyle = fsd.FillStyle.HatchBrushStyle;
+ fs.Texture = fsd.FillStyle.Texture;
+ fs.TextureWrapMode = fsd.FillStyle.TextureWrapMode;
+ }
+ }
+ }
+ }
+ }
+
+ static int nodeIndex = 0;
+ private void barAddSymbol_Click(object sender, EventArgs e)
+ {
+ Cursor prevCursor = Cursor.Current;
+ Cursor.Current = Cursors.WaitCursor;
+ SymbolPalette palette = symbolPaletteGroupBar.CurrentSymbolPalette;
+
+ if (palette != null)
+ {
+ // add new node with default name
+ Node node = new Group();
+ if (nodeIndex > 0)
+ nodeIndex = GetChildFormIndex();
+ node.Name = c_strSYMBOL_DEFAULT_NAME + ++nodeIndex;
+ palette.AppendChild(node);
+
+ GroupView grpView = this.symbolPaletteGroupBar.GroupBarItems[symbolPaletteGroupBar.GroupBarItems.Count - 1].Client as GroupView;
+ grpView.BringItemIntoView(grpView.GroupViewItems.Count - 1);
+
+ // create document for new symbol customization
+ DiagramForm frmDgrm = CreateDiagramForm();
+
+ // create mapping -- Palette node to Diagram
+ if (!this.NodeToDiagramMap.ContainsKey(node))
+ this.NodeToDiagramMap.Add(node, frmDgrm);
+
+ frmDgrm.Show();
+ }
+
+ Cursor.Current = prevCursor;
+ }
+
+ int childFormIndex = 0;
+ private DiagramForm CreateDiagramForm()
+ {
+ DiagramForm frmDgrm = new DiagramForm();
+ frmDgrm.MdiParent = this;
+ propertyEditor.Diagram = frmDgrm.Diagram;
+ if (childFormIndex > 0)
+ childFormIndex = GetChildFormIndex();
+ frmDgrm.Diagram.Model.Name = c_strSYMBOL_DEFAULT_NAME + ++childFormIndex;
+ frmDgrm.Text = c_strSYMBOL_DEFAULT_NAME + childFormIndex;
+
+ //Hook up the diagram events
+ frmDgrm.Diagram.Model.EventSink.PropertyChanged += new PropertyChangedEventHandler(OnDiagramPropertyChanged);
+ frmDgrm.Diagram.Model.EventSink.LabelsChanged += new CollectionExEventHandler(OnDiagramLabelsChanged);
+ frmDgrm.Diagram.Model.EventSink.NodeCollectionChanged += new CollectionExEventHandler(OnDiagramNodeCollectionChanged);
+ frmDgrm.Diagram.Model.EventSink.LayersChanged += new CollectionExEventHandler(OnDiagramLayersChanged);
+ frmDgrm.Diagram.Model.EventSink.PinOffsetChanged += new PinOffsetChangedEventHandler(OnDiagramPinOffsetChanged);
+ frmDgrm.Diagram.Model.EventSink.PinPointChanged += new PinPointChangedEventHandler(OnDiagramPinPointChanged);
+ frmDgrm.Diagram.Model.EventSink.PortsChanged += new CollectionExEventHandler(OnDiagramPortsChanged);
+ frmDgrm.Diagram.Model.EventSink.RotationChanged += new RotationChangedEventHandler(OnDiagramRotationChanged);
+ frmDgrm.Diagram.Model.EventSink.SizeChanged += new SizeChangedEventHandler(OnDiagramSizeChanged);
+ frmDgrm.Diagram.Model.EventSink.VertexChanged += new VertexChangedEventHandler(OnDiagramVertexChanged);
+ frmDgrm.Diagram.Model.EventSink.ZOrderChanged += new ZOrderChangedEventHandler(OnDiagramZOrderChanged);
+ frmDgrm.Closed += new EventHandler(frmDgrm_Closed);
+ frmDgrm.Diagram.Click += new EventHandler(Diagram_Click);
+
+ return frmDgrm;
+ }
+
+ private int GetChildFormIndex()
+ {
+ int index = 0;
+ int prevIndex = 0;
+ ArrayList mdiChildList = new ArrayList();
+ foreach (Form f in this.MdiChildren)
+ if (f is DiagramForm)
+ mdiChildList.Add(f.Text);
+ mdiChildList.Sort();
+ foreach (object name in mdiChildList)
+ {
+ if (name.ToString().StartsWith("New Symbol"))
+ {
+ string strIndex = name.ToString().Substring(10).TrimEnd(new char[] { '*' });
+ if (!strIndex.Equals(""))
+ {
+ int temp = int.Parse(strIndex);
+ if (temp == prevIndex) continue;
+
+ if (temp == (prevIndex + 1))
+ {
+ if (index < temp)
+ index = temp;
+ prevIndex = temp;
+ }
+ else
+ {
+ index = prevIndex;
+ break;
+ }
+ }
+ }
+ }
+ return index;
+ }
+
+ void Diagram_Click(object sender, EventArgs e)
+ {
+ if (this.ActiveDiagram.View.Model.Modified)
+ UpdateMDIChildText();
+ }
+
+ private void barRemoveSymbol_Click(object sender, EventArgs e)
+ {
+ SymbolPalette paletteCur = symbolPaletteGroupBar.CurrentSymbolPalette;
+ if (symbolPaletteGroupBar.SelectedNode == null)
+ if (this.ActiveMdiChild != null)
+ symbolPaletteGroupBar.SelectNode(GetMappedNode(this.ActiveMdiChild as DiagramForm));
+
+ // get selected palette node
+ Node nodeSel = symbolPaletteGroupBar.SelectedNode;
+
+ if (nodeSel == null)
+ {
+ MessageBox.Show("Please select a node to delete");
+ return;
+ }
+
+ if (MessageBox.Show(string.Format(c_strMSG_REMOVE_SYMBOL, nodeSel.Name), Application.ProductName,
+ MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
+ {
+ if (paletteCur != null && nodeSel != null)
+ {
+ // Close MDI child window if open
+ if (this.NodeToDiagramMap.ContainsKey(nodeSel))
+ {
+ DiagramForm frm = this.NodeToDiagramMap[nodeSel] as DiagramForm;
+
+ if (frm != null)
+ {
+ frm.Diagram.Model.EndInit();
+ this.documentExplorer1.DetachModel(frm.Diagram.Model);
+ // unsubscribe from closed event first
+ frm.Closed -= new EventHandler(frmDgrm_Closed);
+ // close palette node editing diagram form
+ frm.Close();
+ }
+
+ this.NodeToDiagramMap.Remove(nodeSel);
+ }
+
+ // Remove symbol from the palette
+ paletteCur.RemoveChild(nodeSel);
+ }
+ }
+ }
+
+ private void frmDgrm_Closed(object sender, EventArgs e)
+ {
+ if (m_bSaving) return;
+
+ DiagramForm frmDgm = sender as DiagramForm;
+
+ if (frmDgm != null)
+ {
+ Group nodeToUpdate;
+ // unsubscribe from Form.Closed event
+ frmDgm.Closed -= new EventHandler(frmDgrm_Closed);
+
+ //Unhook diagram events
+ if (frmDgm.Diagram.Model != null)
+ {
+ frmDgm.Diagram.Model.EventSink.PropertyChanged -=
+ new PropertyChangedEventHandler(OnDiagramPropertyChanged);
+ frmDgm.Diagram.Model.EventSink.LabelsChanged -= new CollectionExEventHandler(OnDiagramLabelsChanged);
+ frmDgm.Diagram.Model.EventSink.NodeCollectionChanged -= new CollectionExEventHandler(OnDiagramNodeCollectionChanged);
+ frmDgm.Diagram.Model.EventSink.LayersChanged -= new CollectionExEventHandler(OnDiagramLayersChanged);
+ frmDgm.Diagram.Model.EventSink.PinOffsetChanged -= new PinOffsetChangedEventHandler(OnDiagramPinOffsetChanged);
+ frmDgm.Diagram.Model.EventSink.PinPointChanged -= new PinPointChangedEventHandler(OnDiagramPinPointChanged);
+ frmDgm.Diagram.Model.EventSink.PortsChanged -= new CollectionExEventHandler(OnDiagramPortsChanged);
+ frmDgm.Diagram.Model.EventSink.RotationChanged -= new RotationChangedEventHandler(OnDiagramRotationChanged);
+ frmDgm.Diagram.Model.EventSink.SizeChanged -= new SizeChangedEventHandler(OnDiagramSizeChanged);
+ frmDgm.Diagram.Model.EventSink.VertexChanged -= new VertexChangedEventHandler(OnDiagramVertexChanged);
+ frmDgm.Diagram.Model.EventSink.ZOrderChanged -= new ZOrderChangedEventHandler(OnDiagramZOrderChanged);
+ }
+
+ // update node mapped to this diagram form
+ // ---------------------------------------
+ // get DiagramForm mapping
+ nodeToUpdate = GetMappedNode(frmDgm) as Group;
+
+ // update node with
+ if (nodeToUpdate != null)
+ {
+ // get diagram nodes
+ NodeCollection nodes = (NodeCollection)frmDgm.Diagram.Model.Nodes.Clone();
+ // append nodes to palette node
+ nodeToUpdate = new Group(nodes);
+ // update node mapping
+ this.NodeToDiagramMap[nodeToUpdate] = null;
+ }
+
+ this.overviewControl1.DetachDiagram();
+ this.documentExplorer1.DetachModel(frmDgm.Diagram.Model);
+ }
+ }
+ private Node GetMappedNode(DiagramForm frmDgm)
+ {
+ Node nodeToUpdate = null;
+
+ if (frmDgm != null)
+ {
+ foreach (DictionaryEntry entry in this.NodeToDiagramMap)
+ {
+ if (frmDgm.Equals(entry.Value))
+ {
+ nodeToUpdate = entry.Key as Node;
+ break;
+ }
+ }
+ }
+
+ return nodeToUpdate;
+ }
+
+ #region Track DiagramChanges
+
+ void OnDiagramZOrderChanged(ZOrderChangedEventArgs evtArgs)
+ {
+ UpdateMDIChildText();
+ }
+
+ void OnDiagramVertexChanged(VertexChangedEventArgs evtArgs)
+ {
+ UpdateMDIChildText();
+ }
+
+ void OnDiagramSizeChanged(SizeChangedEventArgs evtArgs)
+ {
+ UpdateMDIChildText();
+ }
+
+ void OnDiagramRotationChanged(RotationChangedEventArgs evtArgs)
+ {
+ UpdateMDIChildText();
+ }
+
+ void OnDiagramPortsChanged(CollectionExEventArgs evtArgs)
+ {
+ UpdateMDIChildText();
+ }
+
+ void OnDiagramPinPointChanged(PinPointChangedEventArgs evtArgs)
+ {
+ UpdateMDIChildText();
+ }
+
+ void OnDiagramPinOffsetChanged(PinOffsetChangedEventArgs evtArgs)
+ {
+ UpdateMDIChildText();
+ }
+
+ void OnDiagramLayersChanged(CollectionExEventArgs evtArgs)
+ {
+ UpdateMDIChildText();
+ }
+
+ void OnDiagramNodeCollectionChanged(CollectionExEventArgs evtArgs)
+ {
+ UpdateMDIChildText();
+ }
+
+ void OnDiagramLabelsChanged(CollectionExEventArgs evtArgs)
+ {
+ UpdateMDIChildText();
+ }
+
+ private void OnDiagramPropertyChanged(PropertyChangedEventArgs evtArgs)
+ {
+ Console.WriteLine("OnDiagramPropertyChanged");
+ if (evtArgs.PropertyName == "Name" && evtArgs.NodeAffected is Model)
+ {
+ DiagramForm frmDgm;
+ Model mdlTmp;
+
+ // get mapped node
+ foreach (DictionaryEntry entry in this.NodeToDiagramMap)
+ {
+ // search for mapped node
+ frmDgm = entry.Value as DiagramForm;
+
+ if (frmDgm != null)
+ {
+ mdlTmp = frmDgm.Diagram.Model;
+
+ if (mdlTmp.Equals(evtArgs.NodeAffected))
+ {
+ // update mapped node name
+ ((Node)entry.Key).Name = mdlTmp.Name;
+ // update group view item name
+ PaletteGroupView pgv = symbolPaletteGroupBar.GroupBarItems[symbolPaletteGroupBar.SelectedItem].Client as PaletteGroupView;
+ foreach (GroupViewItem item in pgv.GroupViewItems)
+ {
+ Syncfusion.Windows.Forms.Diagram.Controls.PaletteGroupView.GroupViewPaletteItem groupItem = item as Syncfusion.Windows.Forms.Diagram.Controls.PaletteGroupView.GroupViewPaletteItem;
+ if (groupItem.Name == mdlTmp.Name)
+ item.Text = mdlTmp.Name;
+ }
+ //pgv.GroupViewItems[ pgv.SelectedItem ].Text = mdlTmp.Name;
+
+ // upate diagram form text
+ frmDgm.Text = mdlTmp.Name;
+ }
+ }
+ }
+ }
+
+ UpdateMDIChildText();
+ }
+ #endregion
+
+ #endregion
+
+ #region Actions
+ private void barItemEditDelete_Click(object sender, EventArgs e)
+ {
+ if (this.ActiveMdiChild != null)
+ {
+ DiagramForm diagramForm = this.ActiveMdiChild as DiagramForm;
+ if (diagramForm != null)
+ {
+ diagramForm.Diagram.Controller.Delete();
+ }
+ }
+ }
+
+ private void barItemAlign_Click(object sender, EventArgs e)
+ {
+ switch (((Tools.XPMenus.BarItem)sender).ID)
+ {
+ case "AlignLeft":
+ this.ActiveDiagram.AlignLeft();
+ break;
+ case "AlignCenter":
+ this.ActiveDiagram.AlignCenter();
+ break;
+ case "AlignBottom":
+ this.ActiveDiagram.AlignBottom();
+ break;
+ case "AlignMiddle":
+ this.ActiveDiagram.AlignMiddle();
+ break;
+ case "AlignTop":
+ this.ActiveDiagram.AlignTop();
+ break;
+ case "AlignRight":
+ this.ActiveDiagram.AlignRight();
+ break;
+ default:
+ break;
+ }
+
+ }
+
+ private void barItemFlip_Click(object sender, EventArgs e)
+ {
+ switch (((Tools.XPMenus.BarItem)sender).ID.ToLower())
+ {
+ case "fliphorizontally":
+ this.ActiveDiagram.FlipHorizontal();
+ break;
+ case "flipvertically":
+ this.ActiveDiagram.FlipVertical();
+ break;
+ case "flipboth":
+ this.ActiveDiagram.FlipHorizontal();
+ this.ActiveDiagram.FlipVertical();
+ break;
+ default:
+ break;
+ }
+
+ }
+
+ private void barItemGroupingGroup_Click(object sender, EventArgs e)
+ {
+ switch (((Tools.XPMenus.BarItem)sender).ID.ToLower())
+ {
+ case "group":
+ this.ActiveDiagram.Controller.Group();
+ break;
+ case "ungroup":
+ this.ActiveDiagram.Controller.UnGroup();
+ break;
+ default:
+ break;
+ }
+ }
+
+ private void barItemOrder_Click(object sender, EventArgs e)
+ {
+ switch (((Tools.XPMenus.BarItem)sender).ID.ToLower())
+ {
+ case "bringtofront":
+ this.ActiveDiagram.Controller.BringToFront();
+ break;
+ case "bringforward":
+ this.ActiveDiagram.Controller.BringForward();
+ break;
+ case "sendbackward":
+ this.ActiveDiagram.Controller.SendBackward();
+ break;
+ case "sendtoback":
+ this.ActiveDiagram.Controller.SendToBack();
+ break;
+ default:
+ break;
+ }
+
+ }
+
+ private void barItemRotate_Click(object sender, EventArgs e)
+ {
+ switch (((Tools.XPMenus.BarItem)sender).ID.ToLower())
+ {
+ case "rotateclock":
+ this.ActiveDiagram.Rotate(90);
+ break;
+ case "rotateconter":
+ this.ActiveDiagram.Rotate(-90);
+ break;
+ default:
+ break;
+ }
+
+ }
+
+ private void barItemResize_Click(object sender, EventArgs e)
+ {
+ switch (((Tools.XPMenus.BarItem)sender).ID.ToLower())
+ {
+ case "spaceacross":
+ this.ActiveDiagram.SpaceAcross();
+ break;
+ case "spacedown":
+ this.ActiveDiagram.SpaceDown();
+ break;
+ case "samesize":
+ this.ActiveDiagram.SameSize();
+ break;
+ case "sameheight":
+ this.ActiveDiagram.SameHeight();
+ break;
+ case "samewidth":
+ this.ActiveDiagram.SameWidth();
+ break;
+ default:
+ break;
+ }
+ }
+
+ private void barItemLayout_Click(object sender, EventArgs e)
+ {
+ LayoutDialog dialog = new LayoutDialog(this.ActiveDiagram);
+ dialog.Show();
+ }
+ #endregion
+
+ private void DiagramForm_Closing(object sender, CancelEventArgs e)
+ {
+ DiagramForm docForm = sender as DiagramForm;
+ if (docForm != null && docForm.Diagram.Model != null)
+ {
+ if (!e.Cancel)
+ {
+ if (docForm.SaveChanges)
+ {
+ if (savePaletteDialog.FileName.Length > 0)
+ {
+ SymbolPalette palette = PreparePaletteToSave();
+
+ if (palette.Nodes.Count > 0)
+ {
+ SavePalette(palette, savePaletteDialog.FileName);
+ symbolPaletteGroupBar.Refresh();
+ }
+ }
+ else
+ {
+ SaveCurrentPaletteAs();
+ }
+ }
+ this.overviewControl1.DetachDiagram();
+ this.documentExplorer1.DetachModel(docForm.Diagram.Model);
+ }
+ }
+ }
+
+ void MainForm_FormClosing(object sender, FormClosingEventArgs e)
+ {
+ ClosePalette();
+ if (cancelClosing)
+ e.Cancel = true;
+ }
+
+ ///
+ /// The main entry point for the application.
+ ///
+ [STAThread]
+ static void Main(string[] args)
+ {
+ SyncfusionLicenseProvider.ValidateLicense(Platform.Utility);
+ // Application.ThreadException += new System.Threading.ThreadExceptionEventHandler( DefaultExceptionHandler.Singleton.OnThreadException );
+ if (args.Length > 0)
+ {
+ Application.Run(new MainForm(args[0]));
+ }
+ else
+ Application.Run(new MainForm());
+ // Application.ThreadException -= new System.Threading.ThreadExceptionEventHandler( DefaultExceptionHandler.Singleton.OnThreadException );
+
+ }
+
+ }
+}
diff --git a/Samples/Symbol Designer/Symbol Designer/MainForm.resx b/Samples/Symbol Designer/Symbol Designer/MainForm.resx
new file mode 100644
index 0000000..404d662
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/MainForm.resx
@@ -0,0 +1,1124 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ 17, 17
+
+
+
+ AAEAAAD/////AQAAAAAAAAAEAQAAABZTeXN0ZW0uSU8uTWVtb3J5U3RyZWFtCgAAAAdfYnVmZmVyB19v
+ cmlnaW4JX3Bvc2l0aW9uB19sZW5ndGgJX2NhcGFjaXR5C19leHBhbmRhYmxlCV93cml0YWJsZQpfZXhw
+ b3NhYmxlB19pc09wZW4dTWFyc2hhbEJ5UmVmT2JqZWN0K19faWRlbnRpdHkHAAAAAAAAAAACAggICAgB
+ AQEBCQIAAAAAAAAAkR4AAJEeAAAAIAAAAQEBAQoPAgAAAAAgAAACAAEAAAD/////AQAAAAAAAAAMAgAA
+ AF5TeW5jZnVzaW9uLlRvb2xzLldpbmRvd3MsIFZlcnNpb249Ny4yMDMuMC4yNiwgQ3VsdHVyZT1uZXV0
+ cmFsLCBQdWJsaWNLZXlUb2tlbj0zZDY3ZWQxZjg3ZDQ0Yzg5BQEAAABAU3luY2Z1c2lvbi5XaW5kb3dz
+ LkZvcm1zLlRvb2xzLkRvY2tpbmdNZ3JTZXJpYWxpemF0aW9uV3JhcHBlckFkdgUAAAAWSFREb2NraW5n
+ TWdyU2VyaWFsaXplcgdXcmFwcGVyDEZsb2F0V3JhcHBlcglNZGlaT3JkZXIIQWhPbkxvYWQDBAMDAxxT
+ eXN0ZW0uQ29sbGVjdGlvbnMuSGFzaHRhYmxlOFN5bmNmdXNpb24uV2luZG93cy5Gb3Jtcy5Ub29scy5N
+ YWluRm9ybUNvbnRyb2xsZXJXcmFwcGVyAgAAABxTeXN0ZW0uQ29sbGVjdGlvbnMuQXJyYXlMaXN0HFN5
+ c3RlbS5Db2xsZWN0aW9ucy5BcnJheUxpc3QcU3lzdGVtLkNvbGxlY3Rpb25zLkFycmF5TGlzdAIAAAAJ
+ AwAAAAkEAAAACQUAAAAJBgAAAAkHAAAABAMAAAAcU3lzdGVtLkNvbGxlY3Rpb25zLkhhc2h0YWJsZQcA
+ AAAKTG9hZEZhY3RvcgdWZXJzaW9uCENvbXBhcmVyEEhhc2hDb2RlUHJvdmlkZXIISGFzaFNpemUES2V5
+ cwZWYWx1ZXMAAAMDAAUFCwgcU3lzdGVtLkNvbGxlY3Rpb25zLklDb21wYXJlciRTeXN0ZW0uQ29sbGVj
+ dGlvbnMuSUhhc2hDb2RlUHJvdmlkZXII7FE4PwQAAAAKCgsAAAAJCAAAAAkJAAAABQQAAAA4U3luY2Z1
+ c2lvbi5XaW5kb3dzLkZvcm1zLlRvb2xzLk1haW5Gb3JtQ29udHJvbGxlcldyYXBwZXIBAAAACENoaWxk
+ cmVuAxxTeXN0ZW0uQ29sbGVjdGlvbnMuQXJyYXlMaXN0AgAAAAkKAAAABAUAAAAcU3lzdGVtLkNvbGxl
+ Y3Rpb25zLkFycmF5TGlzdAMAAAAGX2l0ZW1zBV9zaXplCF92ZXJzaW9uBQAACAgJCwAAAAEAAAABAAAA
+ AQYAAAAFAAAACQwAAAAAAAAAAAAAAAEHAAAABQAAAAkNAAAAAAAAAAAAAAAQCAAAAAQAAAAGDgAAABBv
+ dmVydmlld0NvbnRyb2wxBg8AAAAOcHJvcGVydHlFZGl0b3IGEAAAABVzeW1ib2xQYWxldHRlR3JvdXBC
+ YXIGEQAAABFkb2N1bWVudEV4cGxvcmVyMRAJAAAABAAAAAkSAAAACRMAAAAJFAAAAAkVAAAAAQoAAAAF
+ AAAACRYAAAACAAAAAgAAABALAAAABAAAAAkXAAAADQMQDAAAAAAAAAAQDQAAAAAAAAAMGAAAAFFTeXN0
+ ZW0uRHJhd2luZywgVmVyc2lvbj0yLjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2Vu
+ PWIwM2Y1ZjdmMTFkNTBhM2EMGQAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
+ LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFEgAAADZTeW5j
+ ZnVzaW9uLldpbmRvd3MuRm9ybXMuVG9vbHMuREhDU2VyaWFsaXphdGlvbldyYXBwZXIeAAAAB0RIQ05h
+ bWUIREhDTGFiZWwKUHJldmlvdXNESQlDdXJyZW50REkLRG9ja0RDUkxpc3QMRmxvYXREQ1JMaXN0DkRv
+ Y2tWaXNpYmlsaXR5DEF1dG9IaWRlTW9kZQlGbG9hdE9ubHkHTURJTW9kZQtDb250cm9sU2l6ZQ9Db250
+ cm9sTG9jYXRpb24KTGF5b3V0U2l6ZQ1BdXRvSGlkZUluZGV4DklzU2VsZWN0ZWRQYWdlClVuaXF1ZU5h
+ bWUIRG9ja0VkZ2UNUHJldmlvdXNGbG9hdAlNYXhpbWl6ZWQKSW1hZ2VJbmRleAtEb2NrQWJpbGl0eRBP
+ dXRlckRvY2tBYmlsaXR5C1ByZXZBSFN0eWxlDEZyZWV6ZVJlc2l6ZQtUYWJTaWJsaW5ncw1BbGxvd0Zs
+ b2F0aW5nElRyYW5zaWVudFJlY3RhbmdsZQ9Gb3JtV2luZG93U3RhdGUPU3RvcmVkRG9ja1NpemVzEFN0
+ b3JlZEZsb2F0U2l6ZXMBAQQEAwMAAAAABAQEAAABBAAAAAAABAADAAQEAwMnU3luY2Z1c2lvbi5XaW5k
+ b3dzLkZvcm1zLlRvb2xzLkRvY2tJbmZvAgAAACdTeW5jZnVzaW9uLldpbmRvd3MuRm9ybXMuVG9vbHMu
+ RG9ja0luZm8CAAAAHFN5c3RlbS5Db2xsZWN0aW9ucy5BcnJheUxpc3QcU3lzdGVtLkNvbGxlY3Rpb25z
+ LkFycmF5TGlzdAEBAQETU3lzdGVtLkRyYXdpbmcuU2l6ZRgAAAAUU3lzdGVtLkRyYXdpbmcuUG9pbnQY
+ AAAAE1N5c3RlbS5EcmF3aW5nLlNpemUYAAAACAErU3luY2Z1c2lvbi5XaW5kb3dzLkZvcm1zLlRvb2xz
+ LkRvY2tpbmdTdHlsZQIAAAABAQgICCtTeW5jZnVzaW9uLldpbmRvd3MuRm9ybXMuVG9vbHMuRG9ja2lu
+ Z1N0eWxlAgAAAAEcU3lzdGVtLkNvbGxlY3Rpb25zLkFycmF5TGlzdAEYU3lzdGVtLkRyYXdpbmcuUmVj
+ dGFuZ2xlGAAAACRTeXN0ZW0uV2luZG93cy5Gb3Jtcy5Gb3JtV2luZG93U3RhdGUZAAAAHFN5c3RlbS5D
+ b2xsZWN0aW9ucy5BcnJheUxpc3QcU3lzdGVtLkNvbGxlY3Rpb25zLkFycmF5TGlzdAIAAAAJDgAAAAYb
+ AAAAClBhbiAmIFpvb20JHAAAAAkdAAAACR4AAAAJHwAAAAEAAAAF4P///xNTeXN0ZW0uRHJhd2luZy5T
+ aXplAgAAAAV3aWR0aAZoZWlnaHQAAAgIGAAAAMUAAACMAAAABd////8UU3lzdGVtLkRyYXdpbmcuUG9p
+ bnQCAAAAAXgBeQAACAgYAAAAAAAAAAAAAAAB3v///+D////LAAAApgAAAP////8ABiMAAAAQb3ZlcnZp
+ ZXdDb250cm9sMQXc////K1N5bmNmdXNpb24uV2luZG93cy5Gb3Jtcy5Ub29scy5Eb2NraW5nU3R5bGUB
+ AAAAB3ZhbHVlX18ACAIAAAADAAAAAAD/////HwAAAB8AAAAB2////9z///8GAAAAAAkmAAAAAQXZ////
+ GFN5c3RlbS5EcmF3aW5nLlJlY3RhbmdsZQQAAAABeAF5BXdpZHRoBmhlaWdodAAAAAAICAgIGAAAAEkC
+ AAA3AQAAywAAAKYAAAAF2P///yRTeXN0ZW0uV2luZG93cy5Gb3Jtcy5Gb3JtV2luZG93U3RhdGUBAAAA
+ B3ZhbHVlX18ACBkAAAAAAAAACSkAAAAJKgAAAAETAAAAEgAAAAkPAAAABiwAAAAKUHJvcGVydGllcwkt
+ AAAACS4AAAAJLwAAAAkwAAAAAQAAAAHP////4P///8UAAABAAQAAAc7////f////AAAAAAAAAAABzf//
+ /+D////LAAAAWgEAAP////8ABjQAAAAOcHJvcGVydHlFZGl0b3IBy////9z///8FAAAAAAD/////HwAA
+ AB8AAAAByv///9z///8GAAAAAAk3AAAAAQHI////2f///0kCAAAzAAAAywAAAFkBAAABx////9j///8A
+ AAAACToAAAAJOwAAAAEUAAAAEgAAAAkQAAAABj0AAAAPU3ltYm9sIFBhbGV0dGVzCT4AAAAJPwAAAAlA
+ AAAACUEAAAABAAAAAb7////g////rgAAAOQAAAABvf///9////8AAAAAAAAAAAG8////4P///7QAAAD+
+ AAAA/////wAGRQAAABVzeW1ib2xQYWxldHRlR3JvdXBCYXIBuv///9z///8CAAAAAAD/////AAAAAAAA
+ AAABuf///9z///8GAAAAAQlIAAAAAAG3////2f///wAAAAAzAAAAtAAAAP4AAAABtv///9j///8AAAAA
+ CUsAAAAJTAAAAAEVAAAAEgAAAAkRAAAABk4AAAAMT2JqZWN0IE1vZGVsCU8AAAAJUAAAAAlRAAAACVIA
+ AAABAAAAAa3////g////rgAAAOgAAAABrP///9////8AAAAAAAAAAAGr////4P///7QAAAACAQAA////
+ /wAGVgAAACxkb2N1bWVudEV4cGxvcmVyMV8yMDA4XzJfMjhfMjJfNTVfMTRfNDUxXzk5NQGp////3P//
+ /wUAAAAAAP////8fAAAAHwAAAAGo////3P///wYAAAABCVkAAAABAab////Z////AAAAADcBAAC0AAAA
+ AQEAAAGl////2P///wAAAAAJXAAAAAldAAAAEBYAAAAEAAAACV4AAAAJXwAAAA0CBRcAAAA8U3luY2Z1
+ c2lvbi5XaW5kb3dzLkZvcm1zLlRvb2xzLkZsb2F0aW5nRm9ybUNvbnRyb2xsZXJXcmFwcGVyAgAAAAhD
+ aGlsZHJlbgZMYXlvdXQDBBxTeXN0ZW0uQ29sbGVjdGlvbnMuQXJyYXlMaXN0GFN5c3RlbS5EcmF3aW5n
+ LlJlY3RhbmdsZRgAAAACAAAACWAAAAABn////9n///+fAAAA2QAAALgAAAD+AAAABRwAAAAnU3luY2Z1
+ c2lvbi5XaW5kb3dzLkZvcm1zLlRvb2xzLkRvY2tJbmZvBgAAAApDb250cm9sbGVyCURvY2tTdHlsZQhQ
+ cmlvcml0eQlEb2NrSW5kZXgORG9ja1ByZWZlcmVuY2UIRG9ja0FyZWEBBAAABAQrU3luY2Z1c2lvbi5X
+ aW5kb3dzLkZvcm1zLlRvb2xzLkRvY2tpbmdTdHlsZQIAAAAICC1TeW5jZnVzaW9uLldpbmRvd3MuRm9y
+ bXMuVG9vbHMuRG9ja1ByZWZlcmVuY2UCAAAAGFN5c3RlbS5EcmF3aW5nLlJlY3RhbmdsZRgAAAACAAAA
+ BmIAAAAAAZ3////c////BQAAAAAAAAAAAAAABZz///8tU3luY2Z1c2lvbi5XaW5kb3dzLkZvcm1zLlRv
+ b2xzLkRvY2tQcmVmZXJlbmNlAQAAAAd2YWx1ZV9fAAgCAAAAAAAAAAGb////2f///wAAAAAAAAAAAAAA
+ AAAAAAABHQAAABwAAAAJYgAAAAGa////3P///wUAAAAAAAAAAAAAAAGZ////nP///wAAAAABmP///9n/
+ //8AAAAAAAAAAAAAAAAAAAAAAR4AAAAFAAAACQ0AAAAAAAAAAQAAAAEfAAAABQAAAAkNAAAAAAAAAAEA
+ AAABJgAAAAUAAAAJDQAAAAAAAAAAAAAAASkAAAAFAAAACWoAAAAAAAAAAAAAAAEqAAAABQAAAAlrAAAA
+ AAAAAAAAAAABLQAAABwAAAAJYgAAAAGT////3P///wUAAAAAAAAAAAAAAAGS////nP///wAAAAABkf//
+ /9n///8AAAAAAAAAAAAAAAAAAAAAAS4AAAAcAAAACWIAAAABkP///9z///8FAAAAAAAAAAAAAAABj///
+ /5z///8AAAAAAY7////Z////AAAAAAAAAAAAAAAAAAAAAAEvAAAABQAAAAkNAAAAAAAAAAEAAAABMAAA
+ AAUAAAAJDQAAAAAAAAABAAAAATcAAAAFAAAACQ0AAAAAAAAAAAAAAAE6AAAABQAAAAl0AAAAAAAAAAAA
+ AAABOwAAAAUAAAAJdQAAAAAAAAAAAAAAAT4AAAAcAAAACWIAAAABif///9z///8FAAAAAAAAAAAAAAAB
+ iP///5z///8AAAAAAYf////Z////AAAAAAAAAAAAAAAAAAAAAAE/AAAAHAAAAAliAAAAAYb////c////
+ BQAAAAAAAAAAAAAAAYX///+c////AAAAAAGE////2f///wAAAAAAAAAAAAAAAAAAAAABQAAAAAUAAAAJ
+ fQAAAAEAAAACAAAAAUEAAAAFAAAACQ0AAAAAAAAAAQAAAAFIAAAABQAAAAkNAAAAAAAAAAAAAAABSwAA
+ AAUAAAAJfwAAAAAAAAAAAAAAAUwAAAAFAAAACYAAAAAAAAAAAAAAAAFPAAAAHAAAAAliAAAAAX7////c
+ ////BQAAAAAAAAAAAAAAAX3///+c////AAAAAAF8////2f///wAAAAAAAAAAAAAAAAAAAAABUAAAABwA
+ AAAJYgAAAAF7////3P///wUAAAAAAAAAAAAAAAF6////nP///wAAAAABef///9n///8AAAAAAAAAAAAA
+ AAAAAAAAAVEAAAAFAAAACYgAAAABAAAAAgAAAAFSAAAABQAAAAkNAAAAAAAAAAEAAAABWQAAAAUAAAAJ
+ DQAAAAAAAAAAAAAAAVwAAAAFAAAACYoAAAAAAAAAAAAAAAFdAAAABQAAAAmLAAAAAAAAAAAAAAAFXgAA
+ ADZTeW5jZnVzaW9uLldpbmRvd3MuRm9ybXMuVG9vbHMuU2l6aW5nQ29udHJvbGxlcldyYXBwZXIGAAAA
+ CENoaWxkcmVuBkxheW91dAtPcmllbnRhdGlvbgVTdHlsZQhQcmlvcml0eQ1UcmFuc2llbnRSZWN0AwQE
+ BAAEHFN5c3RlbS5Db2xsZWN0aW9ucy5BcnJheUxpc3QYU3lzdGVtLkRyYXdpbmcuUmVjdGFuZ2xlGAAA
+ AC1TeW5jZnVzaW9uLldpbmRvd3MuRm9ybXMuVG9vbHMuRG9ja1ByZWZlcmVuY2UCAAAAK1N5bmNmdXNp
+ b24uV2luZG93cy5Gb3Jtcy5Ub29scy5Eb2NraW5nU3R5bGUCAAAACBhTeXN0ZW0uRHJhd2luZy5SZWN0
+ YW5nbGUYAAAAAgAAAAmMAAAAAXP////Z////SQIAADIAAADPAAAABAIAAAFy////nP///wEAAAABcf//
+ /9z///8BAAAAAgAAAAFw////2f///wAAAAAAAAAAAAAAAAAAAAABXwAAAF4AAAAJkQAAAAFu////2f//
+ /wAAAAAyAAAAuAAAAAQCAAABbf///5z///8BAAAAAWz////c////AAAAAAEAAAABa////9n///8AAAAA
+ AAAAAAAAAAAAAAAAAWAAAAAFAAAACZYAAAABAAAAAQAAABBqAAAAAAAAABBrAAAAAAAAABB0AAAAAAAA
+ ABB1AAAAAAAAABB9AAAABAAAAAmXAAAADQMQfwAAAAAAAAAQgAAAAAAAAAAQiAAAAAQAAAAJmAAAAA0D
+ EIoAAAAAAAAAEIsAAAAAAAAAAYwAAAAFAAAACZkAAAACAAAAAgAAAAGRAAAABQAAAAmaAAAAAgAAAAIA
+ AAAQlgAAAAQAAAAJmwAAAA0DBZcAAAAtU3luY2Z1c2lvbi5XaW5kb3dzLkZvcm1zLlRvb2xzLkRDUmVs
+ YXRpb25zaGlwBAAAAAluUmVsYXRpb24GYkNoaWxkAkRQBm5JbmRleAAABAAIAS1TeW5jZnVzaW9uLldp
+ bmRvd3MuRm9ybXMuVG9vbHMuRG9ja1ByZWZlcmVuY2UCAAAACAIAAAAgXxECAQFk////nP///wIAAAAA
+ AAAAAZgAAACXAAAAIF8RAgEBY////5z///8CAAAAAQAAABCZAAAABAAAAAmeAAAACZ8AAAANAhCaAAAA
+ BAAAAAmgAAAACaEAAAANAgWbAAAAL1N5bmNmdXNpb24uV2luZG93cy5Gb3Jtcy5Ub29scy5Eb2NrU3Rh
+ dGVXcmFwcGVyBQAAAAhDaGlsZHJlbgZMYXlvdXQPSW50ZXJuYWxDb250cm9sCVJlbGF0aW9ucxBTdG9y
+ ZWRMYXlvdXRTaXplAwQDAwQcU3lzdGVtLkNvbGxlY3Rpb25zLkFycmF5TGlzdBhTeXN0ZW0uRHJhd2lu
+ Zy5SZWN0YW5nbGUYAAAAHFN5c3RlbS5Db2xsZWN0aW9ucy5BcnJheUxpc3QcU3lzdGVtLkNvbGxlY3Rp
+ b25zLkhhc2h0YWJsZRNTeXN0ZW0uRHJhd2luZy5TaXplGAAAAAIAAAAJogAAAAFd////2f///wAAAAAA
+ AAAAAAAAAAAAAAAJpAAAAAmlAAAAAVr////g////sgAAAOQAAAABngAAAF4AAAAJpwAAAAFY////2f//
+ /00CAAAyAAAAywAAAAQCAAABV////5z///8CAAAAAVb////c////AQAAAAAAAAABVf///9n///9NAgAA
+ MwAAAMsAAAADAgAABZ8AAAA8U3luY2Z1c2lvbi5XaW5kb3dzLkZvcm1zLlRvb2xzLkRyYWdTcGxpdHRl
+ ckNvbnRyb2xsZXJXcmFwcGVyAgAAAAhDaGlsZHJlbgZMYXlvdXQDBBxTeXN0ZW0uQ29sbGVjdGlvbnMu
+ QXJyYXlMaXN0GFN5c3RlbS5EcmF3aW5nLlJlY3RhbmdsZRgAAAACAAAACawAAAABU////9n///9JAgAA
+ MgAAAAQAAAAEAgAAAaAAAABeAAAACa4AAAABUf///9n///8AAAAAMgAAALgAAAAEAgAAAVD///+c////
+ AgAAAAFP////3P///wAAAAAAAAAAAU7////Z////AAAAADMAAAC4AAAAAwIAAAGhAAAAnwAAAAmzAAAA
+ AUz////Z////uAAAADIAAAAEAAAABAIAAAGiAAAABQAAAAkNAAAAAAAAAAAAAAABpAAAAAUAAAAJtgAA
+ AAEAAAABAAAAAaUAAAADAAAA7FE4PwAAAAAKCgsAAAAJtwAAAAm4AAAAAacAAAAFAAAACbkAAAADAAAA
+ AwAAAAGsAAAABQAAAAkNAAAAAAAAAAAAAAABrgAAAAUAAAAJuwAAAAIAAAACAAAAAbMAAAAFAAAACQ0A
+ AAAAAAAAAAAAABC2AAAABAAAAAlFAAAADQMQtwAAAAAAAAAQuAAAAAAAAAAQuQAAAAQAAAAJvgAAAAm/
+ AAAACcAAAAAKELsAAAAEAAAACcEAAAAJwgAAAA0CBb4AAAA4U3luY2Z1c2lvbi5XaW5kb3dzLkZvcm1z
+ LlRvb2xzLkRvY2tIb3N0Q29udHJvbGxlcldyYXBwZXIFAAAACENoaWxkcmVuBkxheW91dAtDb250cm9s
+ TmFtZQpVbmlxdWVOYW1lBVN0eWxlAwQBAQQcU3lzdGVtLkNvbGxlY3Rpb25zLkFycmF5TGlzdBhTeXN0
+ ZW0uRHJhd2luZy5SZWN0YW5nbGUYAAAAK1N5bmNmdXNpb24uV2luZG93cy5Gb3Jtcy5Ub29scy5Eb2Nr
+ aW5nU3R5bGUCAAAAAgAAAAnDAAAAATz////Z////TQIAADIAAADLAAAAWgEAAAkPAAAACTQAAAABOf//
+ /9z///8FAAAAAb8AAACfAAAACcgAAAABN////9n///9NAgAAjAEAAMsAAAAEAAAAAcAAAAC+AAAACcoA
+ AAABNf///9n///9NAgAAkAEAAMsAAACmAAAACQ4AAAAJIwAAAAEy////3P///wMAAAABwQAAAJsAAAAJ
+ zwAAAAEw////2f///wAAAAAAAAAAAAAAAAAAAAAJ0QAAAAnSAAAAAS3////g////uAAAAP4AAAABwgAA
+ AF4AAAAJ1AAAAAEr////2f///wAAAAAyAAAAuAAAAAQCAAABKv///5z///8CAAAAASn////c////AAAA
+ AAAAAAABKP///9n///8AAAAAMwAAALQAAAADAgAAAcMAAAAFAAAACQ0AAAAAAAAAAAAAAAHIAAAABQAA
+ AAkNAAAAAAAAAAAAAAABygAAAAUAAAAJDQAAAAAAAAAAAAAAAc8AAAAFAAAACQ0AAAAAAAAAAAAAAAHR
+ AAAABQAAAAnaAAAAAQAAAAEAAAAB0gAAAAMAAADsUTg/AAAAAAoKCwAAAAnbAAAACdwAAAAB1AAAAAUA
+ AAAJ3QAAAAMAAAADAAAAENoAAAAEAAAACUUAAAANAxDbAAAAAAAAABDcAAAAAAAAABDdAAAABAAAAAnf
+ AAAACeAAAAAJ4QAAAAoB3wAAAL4AAAAJ4gAAAAEd////2f///wAAAAAyAAAAtAAAAP4AAAAJEAAAAAlF
+ AAAAARr////c////AgAAAAHgAAAAnwAAAAnnAAAAARj////Z////AAAAADABAAC4AAAABAAAAAHhAAAA
+ vgAAAAnpAAAAARb////Z////AAAAADQBAAC0AAAAAgEAAAkRAAAACVYAAAABE////9z///8FAAAAAeIA
+ AAAFAAAACQ0AAAAAAAAAAAAAAAHnAAAABQAAAAkNAAAAAAAAAAAAAAAB6QAAAAUAAAAJDQAAAAAAAAAA
+ AAAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAL
+
+
+
+ 102
+
+
+
+
+ AAABAAIAICAAAAEAIACoEAAAJgAAABAQAAABACAAaAQAAM4QAAAoAAAAIAAAAEAAAAABACAAAAAAAIAQ
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAezUpgHg2J+98Nyr/fDcq/3sz
+ Kt97NSmAfy8vEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAejUnYHszKt98Nyr/fDcq/3w3
+ Kv96NCqvejUqMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHg2KZ96Nin/kl9V/6qI
+ gv+qiIL/jFVK/3o2Kf93NifveTYpUAAAAAAAAAAAAAAAAAAAAAAAAAAAfy8vEHo0J696Nin/hko//6qI
+ gv+qiIL/nnRr/4BANP93NifvdzcnIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3NSeAeDUo/7CT
+ jv/c3Nz/3Nzc/9zc3P/c3Nz/w7Kv/4tUSv94NSj/dzUnYAAAAAAAAAAAAAAAAAAAAAB4NSi/eDUo/6qJ
+ g//c3Nz/3Nzc/9zc3P/c3Nz/yr27/3g1KP93NSePAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHU0
+ J++QX1X/3t7e/97e3v/e3t7/3t7e/97e3v/e3t7/2NTT/4lUSv92NCj/dTMngAAAAAAAAAAAdDQmcHY0
+ KP+qiYP/3t7e/97e3v/e3t7/3t7e/97e3v/e3t7/kF5V/3U0KL8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAdDMn/6qKhP/h4eH/4eHh/+Hh4f/h4eH/4eHh/+Hh4f/h4eH/2tbV/5ZqYf90Myf/czMj33Mz
+ J4BzMyfvj19W/+Hh4f/h4eH/4eHh/+Hh4f/h4eH/4eHh/+Hh4f+PXlX/dDElvwAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAABxMib/qouF/+Tk5P/k5OT/5OTk/+Tk5P/k5OT/5OTk/+Tk5P/k5OT/5OTk/7mh
+ nf+ASD7/cTIm/4BIPv/OwsD/5OTk/+Tk5P/k5OT/5OTk/+Tk5P/k5OT/5OTk/45eVf9xMSW/AAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAGsxJe+UaWH/5ubm/+bm5v/m5ub/5ubm/+bm5v/m5ub/5ubm/+bm
+ 5v/m5ub/5ubm/+bm5v/m5ub/5ubm/+bm5v/m5ub/5ubm/+bm5v/m5ub/5ubm/+bm5v/m5ub/jV5V/20x
+ Jb8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbTAjn20wJf/RxsP/6enp/+np6f/p6en/6enp/+np
+ 6f/p6en/6enp/+np6f/p6en/6enp/+np6f/p6en/6enp/+np6f/p6en/6enp/+np6f/p6en/6enp/+np
+ 6f9tMCX/bTAkrwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABnLycgZysk74JSSf/r6+v/6+vr/+vr
+ 6//r6+v/6+vr/+vr6//r6+v/6+vr/+vr6//r6+v/6+vr/+vr6//r6+v/6+vr/+vr6//r6+v/6+vr/+vr
+ 6//r6+v/6+vr/2svJP9rLyOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABqLSJgaC4j/5p2
+ b//u7u7/7u7u/+7u7v/u7u7/7u7u/+7u7v/u7u7/7u7u/+7u7v/u7u7/7u7u/+7u7v/u7u7/7u7u/+7u
+ 7v/u7u7/7u7u/+7u7v/Mvrv/aC4j/2gtInAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AABmKyGfZi0i/5l2b//w8PD/8PDw//Dw8P/w8PD/8PDw//Dw8P/w8PD/8PDw//Dw8P/w8PD/8PDw//Dw
+ 8P/w8PD/8PDw//Dw8P/w8PD/8PDw/86/vf9mLSL/ZS0hgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAABjKyGfZCwi/5l2cP/z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz
+ 8//z8/P/8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/39RSf9kLCL/Yyshn18vHyAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABiKh9gYish/4ZdVv/19fX/9fX1//X19f/19fX/9fX1//X1
+ 9f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/9fX1//X19f/19fX/7Ojo/6KEfv9iKyH/Yish/2Aq
+ IY9fLx8QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABfKh9gXyog/5h3cf/4+Pj/+Pj4//j4
+ +P/4+Pj/+Pj4//j4+P/4+Pj/+Pj4//j4+P/4+Pj/+Pj4//j4+P/4+Pj/+Pj4//j4+P/4+Pj/+Pj4/+Xe
+ 3f+Pa2T/Xyog/1snIO9cKR9QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABdKB9wXSkf/7Wf
+ mv/6+vr/+vr6//r6+v/6+vr/+vr6//r6+v/6+vr/+vr6//r6+v/6+vr/+vr6//r6+v/6+vr/+vr6//r6
+ +v/6+vr/+vr6//r6+v/TxsT/cUM7/10pH/9cKR6PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXy8fEFsn
+ Hc9bKB//y7q4//39/f/9/f3//f39//39/f/9/f3//f39//39/f/9/f3//f39//39/f/9/f3//f39//39
+ /f/9/f3//f39//39/f/9/f3//f39//39/f/z8O//mHhy/1soH/9bJx2AAAAAAAAAAAAAAAAAAAAAAAAA
+ AABZJR2/WSce/8Guq///////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////gl1W/1cnGu8AAAAAAAAAAAAA
+ AAAAAAAAVSUdYFcmHf+rk47/////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////+rk47/VyYd/wAA
+ AAAAAAAAAAAAAAAAAABSIhzPakA5////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////6uTj/3RO
+ R/9VJRjvAAAAAAAAAAAAAAAAAAAAAFIkHP+ehH//////////////////////////////////////////
+ ////////////////////////////////////////////////////////1MjG/9TIxv/Ju7j/qJKN/31b
+ VP9SJBz/UiQY71IjHFAAAAAAAAAAAAAAAAAAAAAAUCMX75J2cP//////////////////////////////
+ ////////////////////////////////////////////////////////3tbU/2Y/N/9QIxv/UCMb/1Aj
+ G/9QIxv/UCMb31AjG59PJxcgAAAAAAAAAAAAAAAAAAAAAAAAAABOIRqPTiIa/5B1cP/TyMb/////////
+ //////////////////////////////////////////////////////////////////9kPjf/SiIX700i
+ GmBPIxtATyMbQE8fHxAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE8fHxBMIRePTCEZ/0wh
+ Gf9MIRn/TCEZ/0whGf9MIRn/TCEZ/0whGf+agn7/////////////////////////////////vKyp/0wh
+ Gf9NHxdgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AABHHxcgSh8XYEkhGYBJIRmASSEZgEkhGYBJIRmASiAXr0kgGf+NdG////////////////////////Tx
+ 8f9gPDX/SSAZ3wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARh4Yn0cfGP+unZr/////////
+ ////////jHNu/0cfGP9GHxlQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARR0Vv0Ue
+ F/9/ZGD/oo+L/3NWUf9FHhf/Qx4WnwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAQxwVj0MdFv9DHRb/QxkW70MdFYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//////////wH+A/4A+AH8AHgB/AAwAfwAA
+ AH8AAAB/AAAAfwAAAH8AAAB/gAAAf8AAAH/gAAAf8AAAB/gAAAP8AAAB+AAAAPgAAADwAAAA8AAAAPAA
+ AADwAAAB8AAAD/AAAP/8AAH///wB///+A////wf/////////////////KAAAABAAAAAgAAAAAQAgAAAA
+ AABABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHo1J2CHSkHvk2BW/4FCNN93MydAAAAAAAAA
+ AAB5NilQh0pB76V+d/+HSkHvejUqMAAAAAAAAAAAAAAAAAAAAACESUDv3t7e/97e3v/Y09P/nnRs/3Q1
+ J2B0NSUwkV9V/9jT0//e3t7/2NPT/3Y0J68AAAAAAAAAAAAAAAAAAAAAnHRt/+Pj4//j4+P/4+Pj/+Pj
+ 4/+kgHr/j19W/9XNzP/j4+P/4+Pj/+Pj4/9xMSW/AAAAAAAAAAAAAAAAAAAAAHtHPO/o6Oj/6Ojo/+jo
+ 6P/o6Oj/6Ojo/+jo6P/o6Oj/6Ojo/+jo6P/g3dz/bTAjnwAAAAAAAAAAAAAAAAAAAABqLyVgmnVu/+7u
+ 7v/u7u7/7u7u/+7u7v/u7u7/7u7u/+7u7v/u7u7/zL67/2ktI4AAAAAAAAAAAAAAAAAAAAAAAAAAAGMr
+ IZ+Zdm//8/Pz//Pz8//z8/P/8/Pz//Pz8//z8/P/8/Pz/+Ha2f9sOjHfYiofYAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAYCkgn6uRjP/4+Pj/+Pj4//j4+P/4+Pj/+Pj4//j4+P/4+Pj/7+vr/62Sjf9dKSC/Xy8fEAAA
+ AAAAAAAAAAAAAFkpHFCOa2T//f39//39/f/9/f3//f39//39/f/9/f3//f39//39/f/9/f3/39bU/2c3
+ Lc8AAAAAAAAAAAAAAABqQznv9fHx////////////////////////////////////////////////////
+ //+LamP/AAAAAAAAAABTIxtAqJKN////////////////////////////////////////////vq2q/6iR
+ jf+HaGL/USMbnwAAAAAAAAAAAAAAAFcwJ++lkIz/0sjG/9LIxv/d1dT/////////////////j3Vw/00i
+ GXBPIxtATx8XIAAAAAAAAAAAAAAAAAAAAABPHx8QSR8ZUEkfGYBJHxmARyAXr7qrqP//////3NXU/0kg
+ GL8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEHRW/clZR/1Es
+ Jd9HHxcgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wAA//8AAIMHAACABwAAgAcAAIAHAACABwAAwAMAAOAA
+ AADgAAAA4AAAAMAAAADgAQAA4A8AAP8PAAD//wAA
+
+
+
+ Properties
+
+
+ Symbol Palettes
+
+
+ None
+
+
+ None
+
+
+ True
+
+
+ False
+
+
+ Pan & Zoom
+
+
+ True
+
+
+
+ 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
+
+
+
+ True
+
+
+ Object Model
+
+
+ 152, 17
+
+
+ 296, 17
+
+
+ 439, 17
+
+
+ 590, 17
+
+
+ 740, 17
+
+
+
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
+ LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
+ ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAa
+ HgAAAk1TRnQBSQFMAgEBJQEAASwBAAEEAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
+ AwABQAMAAaADAAEBAQABCAYAASgYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
+ AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
+ AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
+ AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
+ AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
+ AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
+ ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
+ AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
+ AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
+ AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
+ AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
+ AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
+ AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
+ AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
+ AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
+ ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
+ Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
+ AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
+ AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
+ AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
+ ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
+ Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
+ AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
+ AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
+ AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
+ AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
+ AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
+ AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wwAAR49AAIeAUwCHjoA
+ AR4B/wNMAf8BHjkAAR4BTAH/AUwB/wFMAR4zAAEiBAABHgNMAf8DTAEeMgACIgQAAR4BTAH/AUwB/wFM
+ AR4zAAEiAQMBIgMAAR4B/wNMAf8BHjQAASIBAwQiAh4BTAIeNQABIgUDASIBAAEeNwABIgUDASI4AAEi
+ BwMBIjYAASIJAwEiNAAGIgIDBSI4AAEiAQMBIj0AASIBAwEiPgABIkwAAf8BGwH/ARsB/wEbAf8BGwH/
+ ARseAAEoFwABGwH/ARsB/wEbAf8BGwH/ARsB/wMADm0LAAIoAS4CKCIAAW0MmQFtCgABKAIuAf8CLgEo
+ AQABGwH/DAABGwH/CAABBAcAAW0MmQFtCgABKAIuAf8CLgEoAQAB/wEbDAAB/wEbBwADBAYAAW0MGgFt
+ BAABIgQAASgBLgX/AS4BKAEbAf8DAAEEBAABBAMAARsB/wYABQQFAAFtDKABbQQAAiIEAAEoAi4B/wIu
+ ASgBAAH/ARsCAAIEBAACBAIAAf8BGwgAAQQHAAFtDKABbQQAASIBAwEiAwABKAIuAf8CLgEoAQABGwH/
+ AQAKBAEAARsB/wgAAQQHAAFtDMMBbQUAASIBAwQiAigBLgIoAgAB/wEbAgACBAQAAgQCAAH/ARsIAAEE
+ BwABbQzDAW0FAAEiBQMBIgEAASgEAAEbAf8DAAEEBAABBAMAARsB/wgAAQQHAAFtDMMBbQUAASIFAwEi
+ BgAB/wEbDAAB/wEbBgAFBAUADm0EAAEiBwMBIgUAARsB/wwAARsB/wcAAwQGAAFtBsMBbQcAAREBAAEi
+ CQMBIgQAAf8BGwwAAf8BGwgAAQQIAAFtBMMBbQQAAREDAAERBiICAwUiJQAEbQQABREGAAEiAQMBIhsA
+ ARsB/wEbAf8BGwH/ARsB/wEbAf8OAAERCQABIgEDASIbAAH/ARsB/wEbAf8BGwH/ARsB/wEbGQABIpMA
+ Bew7AAXsBQAB/wEbAf8BBAH/ARsB/wYAAf8BGwH/ARsB/wEbAQQBGwH/ARsB/wEbAf8cAAXsBQABGwH/
+ AwQB/wEbBgABGwH/ARsB/wEbAwQBGwH/ARsB/wEbFgAF+wEABewFAAH/BQQB/wYAAf8BGwH/ARsFBAEb
+ Af8BGwH/AwAB/wEbAf8BGwH/ARsB/wEbAf8BGwH/ARsB/wEbBQAF+wEABewFAAEbAf8BGwEEARsB/wEb
+ BgABGwH/AQQB/wEbAf8BBAH/ARsB/wEEAf8BGwMAARsB/wEEAf8BGwH/ARsB/wEbAf8BGwEEARsB/wUA
+ BfsLAAH/ARsB/wEEAf8BGwH/BgAB/wIEARsB/wEbAQQBGwH/ARsCBAH/AwAB/wIEARsB/wEbAf8BGwH/
+ ARsB/wIEARsFAAj7CAABGwH/ARsBBAEbAf8BGwYADQQDAA4ECAAF+wgAAf8BGwH/AQQB/wEbAf8GAAH/
+ AgQBGwH/ARsBBAEbAf8BGwIEAf8DAAH/AgQBGwH/ARsB/wEbAf8BGwH/AgQBGwIABewBAAX7CAABGwH/
+ ARsBBAEbAf8BGwYAARsB/wEEAf8BGwH/AQQB/wEbAf8BBAH/ARsDAAEbAf8BBAH/ARsB/wEbAf8BGwH/
+ ARsBBAEbAf8CAAXsAQAF+wgAAf8FBAH/BgAB/wEbAf8BGwUEARsB/wEbAf8DAAH/ARsB/wEbAf8BGwH/
+ ARsB/wEbAf8BGwH/ARsCAAXsDgABGwH/AwQB/wEbBgABGwH/ARsB/wEbAwQBGwH/ARsB/wEbEwAF7A4A
+ Af8BGwH/AQQB/wEbAf8GAAH/ARsB/wEbAf8BGwEEARsB/wEbAf8BGwH/EwAF7P8AEwAH7AsABewJAAfs
+ BAAFBwMABAEJAAfsCwAF7AkAB+wFAAQHAwADAQ4AA+wOAALsCQAH7AcAAgcDAAMBAwAK+wEAA+wFAAj7
+ AQAC7AIABvsBAAfsDAACAQQACvsBAAPsBQAI+wEAAuwCAAb7AQAH7AwAAgEEAAr7AQAD7AUACPsFAAb7
+ AQAH7AwAAQEFAAr7AQAD7AUACPsFAAb7AQAH7AIAAQQJAAEBBQAK+wkACPsFAAb7CgABBAMAAQQLAAr7
+ BgAC7AEACPsFAAr7BwABBAIAAgQKAAr7BgAC7AEACPsFAAr7CAAFBAkACvsGAALsDgAK+woAAgQKAAr7
+ BgAF7AsACvsKAAEECwAK+wYABewLAAr7mgAIBAoABgQoAAEELAAEBwQABAEHAAEECAABBAYAAQQIAAEE
+ AgAEAQMABQcGAAMHBAADAQgAAQQIAAEEBgABBAgAAQQDAAMBAwADBwgAAwcEAAMBBAAFBAgAAQQEAAME
+ CAABBAMAAwEDAAIHCgACBwQAAgEFAAEEAwABBAgAAQQGAAEECAABBAQAAgEPAAIHBAACAQUAAQQDAAEE
+ CAABBAIAAQQDAAEECAABBAQAAgEQAAEHBAABAQYAAQQDAAEECAABBAIAAQQDAAEECAABBAUAAQEQAAEH
+ BAABAQYAAQQDAAEECAABBAIAAQQSAAEBCQABBBIAAQQDAAoEAgABBAUABgQNAAEEAwABBBIAAQQHAAEE
+ BwABBAcAAQQPAAIEAgABBBMAAQQHAAEEBwABBAcAAQQOAAUEHAABBB8AAgQYAAcECQAFBBIAAQSgAAEE
+ NgALBAoAA/8DAAEEDgABAQwAA/8PAAEECwAD/wMAAQQMAAMBBwAC7AMAA/8WAALsAwAD/wMAAQQKAAUB
+ BwAC7AMAA/8WAALsAwAD/wMAAQQIAAcBBwAC7AMAA/8GAAr/BgAC7AMAA/8DAAEEFgAC7AMAA/8GAAr/
+ BgAC7AMAA/8DAAEEFgAC7AMAA/8GAAr/BgAC7AMAA/8DAAEEFgAC7AMAA/8WAALsAwAD/wMAAQQWAALs
+ AwAD/xYAAuwDAAP/AwABBAgABwcHAALsAwAD/xYAAuwDAAP/AgADBAkABQcMAAP/CAAI7BEAAQQMAAMH
+ FwAI7CAAAQfQAAETAf8kAAEEDwABEwH/LQALBAUAAxMB/wYAARMB/w8AAQQVAAEEDgADEwH/BQABEwH/
+ BQAC7AMAA/8CAAMEBAAK/xYAAxMB/wMAAhMB/wUAAuwDAAP/AwABBAUACv8XAAMTAf8BAAITAf8GAALs
+ AwAD/wMAAQQFAAr/BgAK/wgABRMB/wcAAuwDAAP/AwABBBUACv8JAAMTAf8IAALsAwAD/wMAAQQVAAr/
+ CAAFEwH/BwAC7AMAA/8DAAEEJgADEwH/AQABEwH/BwAC7AMAA/8DAAEEBgAI7BYABBMB/wMAAhMB/wUA
+ AuwDAAP/AwABBAYACOwVAAQTAf8FAAITAf8JAAP/AwABBBUACOwGAAITAf8IAAITAf8IAAP/AwABBBUA
+ COzJAAIEEAAJBCQAAQQCAAEEAgACBAsAAQQH/wEEJAABBAIAAQQBAAEEAgABBAUAAQMBHAEDARwBAwEE
+ Af8FBAH/AQQkAAEEAgABBAEAAQQCAAEEBQABHAEDARwBAwEcAQQH/wEEJQADBAEAAQQCAAEEBQABAwEc
+ AQMBHAEDAQQB/wMEAf8DBAwAAfcBhgYAAYYB9xEAAQQBAAMEBgABHAEDARwBAwEcAQQF/wEEAf8BBAMA
+ BYYFAAGGAfcEAAH3AYYFAAWGCAABBAEAAQQIAAEDARwBAwEcAQMBBAX/AgQEAASGBwABhgQAAYYHAASG
+ EwABHAEDARwBAwEcBwQFAAOGCAABhgQAAYYIAAOGEwABAwEcAQMBHAEDARwBAwEcAQMBHAEDARwFAAKG
+ AQABhgcAAYYEAAGGBwABhgEAAoYTAAEcAQMIAAEcAQMFAAGGAwAChgQAAYYB9wQAAfcBhgQAAoYDAAGG
+ EwABAwEcAQAGGwEAAQMBHAsABIYB9wYAAfcEhhkAARwBAwEcAQAB+wIAAfsBAAEDARwBAzkAAvuoAAwT
+ AgACEzAAARMK/wETAQADEwgAAfwJAAsTEwABEwf/BBMB9wITCQAB/AgAARMJ8AETAfABEwkACQQBEwb/
+ ARMB9wLwAfcBEwH3EgANEwHwARMIAAEEB/8BBAETBf8BEwH3AvAB3wL3ARMDAAX/AgAB/AIABP8BAAET
+ BvADXgLwAxMIAAEEAf8FAAH/AQQBEwX/ARME8AH3AfABEwMABf8CAAH8AgAE/wEAARMG8AP3AvABEwHw
+ ARMIAAEEB/8BBAETBf8BEwHwAd8C8AH3AfABEwMABf8FAAT/AQANEwLwARMCAAX/AQQB/wUAAf8BBAET
+ Bf8BEwH3At8B8AL3ARMDAAX/AgAB/AIABP8BAAETCvABEwHwARMB8AETAgAB/wQAAQQH/wEEARMG/wET
+ AfcC8AH3ARMEAAX/AgAB/AIABP8CAAoTAfABEwHwAhMCAAX/AQQB/wIAAf8EBAETB/8EEwUAAv8IAAH/
+ BgABEwj/ARMB8AETAfABEwIAAf8EAAEEBP8BBAH/AQQBAAETCv8BEwUAAv8BAAL/AgAB/AIAAf8BAAL/
+ BAABEwH/BRMB/wQTAwAF/wEEBP8CBAIAARMH/wQTBQAC/wEAAf8DAAH8AgAB/wEAAf8FAAETCP8BEwUA
+ Af8CAAH/AQAGBAMAARMH/wETAfABExkAARMB/wUTAf8BEwUABP8BAAH/CAABEwf/AhMOAAH8CwABEwj/
+ ARMEAAT/CgAJEw8AAfwMAAnsggAMEwIAAhMwAAETCv8BEwEAAxMiAAIDBgACGwEAAQMCAAETB/8EEwH3
+ AhMEAAn/BwAJAwYAAgMGAAIbAQABAwIAARMG/wETAfcC8AH3ARMB9wUACf8GAAH/AQAJAwUAAgMGAAIb
+ AQABAwIAARMF/wETAfcC8AHfAvcBEwUACf8GAAH7Af8BAAkDBAACAwkAAQMCAAETBf8BEwTwAfcB8AET
+ BQAJ/wYAAf8B+wH/AQAJAwMADAMCAAETBf8BEwHwAd8C8AH3AfABEwUACf8GAAH7Af8B+wH/DAACAwgA
+ AgMCAAETBf8BEwH3At8B8AL3ARMFAAn/BgAB/wH7Af8B+wH/AfsB/wH7Af8HAAEDAQAIGwEAAQMCAAET
+ Bv8BEwH3AvAB9wETBgAJ/wYAAfsB/wH7Af8B+wH/AfsB/wH7BwABAwEACBsBAAEDAgABEwf/BBMHAAn/
+ BgAB/wH7Af8NAAEDAQAIGwEAAQMCAAETCv8BEwcABv8ZAAEDAQAIGwEAAQMCAAETB/8EEwcABv8BAAH/
+ FwABAwEACBsEAAETB/8BEwHwARMIAAb/GQABAwEACBsBAAEbAgABEwf/AhM2AAkTRwABQgFNAT4HAAE+
+ AwABKAMAAUADAAGgAwABAQEAAQEGAAEFFgAD/wEAAf8B7wYAAf8BgwYAAf8BAQYAAf8BAQYAAd4HAAHP
+ AQEGAAHHAQEGAAHgAQMGAAHgAS8GAAHgAT8GAAHAAR8GAAGAAQ8HAAEHBgAB+AH/BgAB+AH/BgAB/QH/
+ BgAC/wHAAQMD/wHvAv8BwAEDAQABAwH/AYMBHwH4AcABAwEAAQMB/wEBAR8B+AH/AX8BAAEDAf8BAQEf
+ AfgB/gE/AQABAwHeAQABGwHYAfwBHwEAAQMBzwEBARMByAH/AX8BAAEDAccBAQIAAf8BfwEAAQMB4AED
+ ARMByAH/AX8BAAEDAeABLwEbAdgB/wF/AQABAwHgAT8BHwH4AfwBHwEAAQMBwAIfAfgB/gE/AQAB/gGA
+ AQ8BHwH4Af8BfwGBAe4BAAEHAR8B+AHAAQMBwwHBAfgD/wHAAQMB/wHvAfgD/wHAAQMC/wH9Cv8BgAf/
+ AYAB4AEPAQABAQP/AYAB4AEPAQABAQL/AeABAAHgAQ8BAAEBAgAB4AEAAeABDwEAAQECAAHgAQAB4AEP
+ AQABAQIAAeABAAHgAQ8BAAEBAgAB4AEHAeABDwEAAQEDAAEHAeABDwEAAQEDAAEHAeABDwEAAQEDAAEH
+ AeABDwEAAQEDAAEHAeABDwEAAQECAAEBAf8B4AEPAQABAQL/AQEB/wHgAQ8BAAEBAv8BARH/Af4BAAH/
+ AYAB/gIAAUAB/gEAAf8BgAH+AQABgAFAAf4BAAH/AYAB/gEAAeABQQIAAeADAAHwAUECAAHgAwAB/AFD
+ AgAB4AMAAf8BQwIAAeADAAH/AccCAAHgAQcCAAG/AccDAAEHAgABuwHPAQABDwEAAQcBAAEPAdkBzwEA
+ AQ8BAAEHAQABDwHgAd8BAAEPAQABBwEAAQ8B+QHfAQABDwEBAf8BAAEPAfsB/wEAAQ8BAQH/AQABDwL/
+ AQABDwEBAf8BAAEPAv8BHwH4AfEB+AT/ARgBAAHwAQAC/wKBARsB+AHxAfgBAgEAAoEB+wH9AfsB/QEC
+ AQEBwQGDAfsB/QEbAf0BggEHAcECgwH9AQMB/QGCAR8B4QGHAbsB/QEbAf0BwgE/AeEBhwG7Af0BuwH9
+ AcIB/wHxAY8BuwH9AbsB/QHjAf8B8QGPAbsB/QGxAfgB4wH9AfkBnwG4AQEBsAEAAfMB3QH5AZ8CvwGx
+ AbgB8wGbAf0FvwH7AQcB/QG/AR8BuAIfAfsBnwL/AQABOAEAAR8B/wHfAv8BHwH4Ah8F/wH8B/8B7AH8
+ AR8B/wHzAf8BBwHAAQQB/AEbAf8BwwHhAQcB/wHsAYQBGwH/AQMB4QEHAf8B/AGEARsB/AEDAeEBBwGA
+ AQQBhAEbAfABAwHhAQcBgAEEAYQBGwHAAQMBgAEBAYABBAGEARsC/wGAAQEBgAEEAYQBGwL/AeEBBwGA
+ AQQBhAEbAcABAwHhAQcB/wH8AYQBGwHwAQMB4QEHAeABBAGEAREB/AEDAeEBBwHgAQQBhAEbAf8BAwH/
+ AQcB4AEEA/8BwwL/AeABBAIAAf8B8wP/AfwCAAT/AgAC/wF/Av8B+QIAAf4BfwFvAf8B5wP/Af4BfwFA
+ AQcBwwHzAYQBGwHAAQMBbwH/AcMB5wGEAREBwAEDAX8B/wHhAccBhAEbAcABAwFAAQMB8AGPAYQBGwHA
+ AQMBQAEDAfgBHwGEARsBwAEDAUABAwH8AT8BhAEbAf4BfwFAAQMB+AEfAYQBGwHgAQcBQAEDAfABnwGE
+ ARsB4AEHAX8B/wHBAccBhAEbAeABBwFAAQ8BgwHjAYQBGwHgAQcBQAEPAY8B8QH8ARsB/gF/AUABDwL/
+ AfwBHwH+AX8BQAEPBv8Bfwn/AfMB/wH8AQEE/wHtAZ8BgAEBBP8B7QFvAQABAQT/Ae0BbwEAAQEE/wHx
+ AW8BAAEBAf8C5wH/Af0BHwEAAQEBwQHzAc8BgwH8AX8BAAEDAcMB+wHfAcMB/gH/AQABAwHHAfsB3wHj
+ AfwBfwEAAQMBywH7Ad8B0wH9AX8BAAEDAdwB8wHPATsB+QE/AQABAwH/AQcB4AH/AfsBvwEAAQME/wH7
+ Ab8BgAEHBP8B+wG/AfgBfwz/AQABDAb/AQABCAH/AX8BwAEHAv8BAAEBAf8BfwGAAQMB/gIAAQMBAQHA
+ AQABAQH+AgABAwEBAUABAAEBAf4CAAEDAQEBQAEAAQEBgAIAAQMBAQHAAgABgAIAAQMBAQFAAgABgAIA
+ AQcBAQFAAYABAAGAAgABDwEBAsABAAGAAQEBAAEPAQEBQAHgAQEBgAEDAQABDwEDAUEB4AEHAYABBwEA
+ AR8BBwHDAfABBwGAAX8BAAE/Af8BfwHwAQMBgAH/AQABfwH/AX8B+AEDAYEP/wEAAQwE/wHAAQEBAAEI
+ AcABBwGAAQ8BgAEBAQABAQHAAQcBgAEHAYABAQEAAQMBwAEHAYABAwGAAQEBAAEDAcABBwGAAQEBgAEB
+ AQABAwHAAQcBgAEAAYABAQEAAQMBwAEHAYABAAGAAQEBAAEDAcABBwGAAQ8BgAEBAQABBwHAAQcBgAEP
+ AYABAQEAAQ8BwAEHAYABDwGAAQEBAAEPAcABBwHHAfgBgAEBAQABDwHAAQ8B/wH8AYABAQEAAR8BwAEf
+ Af8BugGAAQEBAAE/AcABPwH/AccBgAEBAQABfwj/Cw==
+
+
+
+ 17, 54
+
+
+ 157, 54
+
+
+
+ AAEAAAD/////AQAAAAAAAAAEAQAAABZTeXN0ZW0uSU8uTWVtb3J5U3RyZWFtCgAAAAdfYnVmZmVyB19v
+ cmlnaW4JX3Bvc2l0aW9uB19sZW5ndGgJX2NhcGFjaXR5C19leHBhbmRhYmxlCV93cml0YWJsZQpfZXhw
+ b3NhYmxlB19pc09wZW4dTWFyc2hhbEJ5UmVmT2JqZWN0K19faWRlbnRpdHkHAAAAAAAAAAACAggICAgB
+ AQEBCQIAAAAAAAAAmAUAAJgFAAAACAAAAQEBAQoPAgAAAAAIAAACAAEAAAD/////AQAAAAAAAAAMAgAA
+ AF5TeW5jZnVzaW9uLlRvb2xzLldpbmRvd3MsIFZlcnNpb249Ny4yMDIuMC4yMCwgQ3VsdHVyZT1uZXV0
+ cmFsLCBQdWJsaWNLZXlUb2tlbj0zZDY3ZWQxZjg3ZDQ0Yzg5BQEAAAA6U3luY2Z1c2lvbi5XaW5kb3dz
+ LkZvcm1zLlRvb2xzLkNCQ3RybHJTZXJpYWxpemF0aW9uV3JhcHBlcgIAAAAIY2JCb3JkZXINaHRDQmFy
+ V3JhcHBlcgQDM1N5bmNmdXNpb24uV2luZG93cy5Gb3Jtcy5Ub29scy5Db21tYW5kQmFyRG9ja0JvcmRl
+ cgIAAAAcU3lzdGVtLkNvbGxlY3Rpb25zLkhhc2h0YWJsZQIAAAAF/f///zNTeW5jZnVzaW9uLldpbmRv
+ d3MuRm9ybXMuVG9vbHMuQ29tbWFuZEJhckRvY2tCb3JkZXIBAAAAB3ZhbHVlX18ACAIAAAAPAAAACQQA
+ AAAEBAAAABxTeXN0ZW0uQ29sbGVjdGlvbnMuSGFzaHRhYmxlBwAAAApMb2FkRmFjdG9yB1ZlcnNpb24I
+ Q29tcGFyZXIQSGFzaENvZGVQcm92aWRlcghIYXNoU2l6ZQRLZXlzBlZhbHVlcwAAAwMABQULCBxTeXN0
+ ZW0uQ29sbGVjdGlvbnMuSUNvbXBhcmVyJFN5c3RlbS5Db2xsZWN0aW9ucy5JSGFzaENvZGVQcm92aWRl
+ cgjsUTg/AwAAAAoKCwAAAAkFAAAACQYAAAAQBQAAAAMAAAAGBwAAABJUb29sYmFySG9zdF9TeW1ib2wG
+ CAAAABRUb29sYmFySG9zdF9TdGFuZGFyZAYJAAAAFFRvb2xiYXJIb3N0X01haW5NZW51EAYAAAADAAAA
+ CQoAAAAJCwAAAAkMAAAADA0AAABRU3lzdGVtLkRyYXdpbmcsIFZlcnNpb249Mi4wLjAuMCwgQ3VsdHVy
+ ZT1uZXV0cmFsLCBQdWJsaWNLZXlUb2tlbj1iMDNmNWY3ZjExZDUwYTNhBQoAAAA+U3luY2Z1c2lvbi5X
+ aW5kb3dzLkZvcm1zLlRvb2xzLlhQTWVudXMuQ29tbWFuZEJhckV4dFNlcmlhbGl6ZXIIAAAACU1heExl
+ bmd0aAlNaW5MZW5ndGgTQ29tbWFuZEJhckRvY2tTdGF0ZQxSb3dPZmZzZXREaXIHUkNJbmRleAtSQ0Nv
+ dW50RHJhZw1GbG9hdExvY2F0aW9uCUZsb2F0U2l6ZQAABAAAAAQECAgyU3luY2Z1c2lvbi5XaW5kb3dz
+ LkZvcm1zLlRvb2xzLkNvbW1hbmRCYXJEb2NrU3RhdGUCAAAACAgIFFN5c3RlbS5EcmF3aW5nLlBvaW50
+ DQAAABNTeXN0ZW0uRHJhd2luZy5TaXplDQAAAAIAAADcAAAAcAAAAAXy////MlN5bmNmdXNpb24uV2lu
+ ZG93cy5Gb3Jtcy5Ub29scy5Db21tYW5kQmFyRG9ja1N0YXRlAQAAAAd2YWx1ZV9fAAgCAAAAAQAAAJoA
+ AAABAAAAAgAAAAXx////FFN5c3RlbS5EcmF3aW5nLlBvaW50AgAAAAF4AXkAAAgIDQAAAAAAAAAAAAAA
+ BfD///8TU3lzdGVtLkRyYXdpbmcuU2l6ZQIAAAAFd2lkdGgGaGVpZ2h0AAAICA0AAAAAAAAAAAAAAAEL
+ AAAACgAAAJgAAAAlAAAAAe/////y////AQAAAAAAAAABAAAAAgAAAAHu////8f///wAAAAAAAAAAAe3/
+ ///w////AAAAAAAAAAABDAAAAAoAAAA4AQAAPgAAAAHs////8v///wEAAAAAAAAAAAAAAAAAAAAB6///
+ //H///8AAAAAAAAAAAHq////8P///wAAAAAAAAAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL
+
+
+
+ 336, 55
+
+
\ No newline at end of file
diff --git a/Samples/Symbol Designer/Symbol Designer/Properties/Resources.Designer.cs b/Samples/Symbol Designer/Symbol Designer/Properties/Resources.Designer.cs
new file mode 100644
index 0000000..dc8ebbf
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/Properties/Resources.Designer.cs
@@ -0,0 +1,63 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+// Runtime Version:2.0.50727.3053
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+//------------------------------------------------------------------------------
+
+namespace Syncfusion.SymbolDesigner.Properties {
+ using System;
+
+
+ ///
+ /// A strongly-typed resource class, for looking up localized strings, etc.
+ ///
+ // This class was auto-generated by the StronglyTypedResourceBuilder
+ // class via a tool like ResGen or Visual Studio.
+ // To add or remove a member, edit your .ResX file then rerun ResGen
+ // with the /str option, or rebuild your VS project.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "2.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Resources {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources() {
+ }
+
+ ///
+ /// Returns the cached ResourceManager instance used by this class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager {
+ get {
+ if (object.ReferenceEquals(resourceMan, null)) {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Syncfusion.SymbolDesigner.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Overrides the current thread's CurrentUICulture property for all
+ /// resource lookups using this strongly typed resource class.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+ }
+}
diff --git a/Samples/Symbol Designer/Symbol Designer/Properties/Resources.resx b/Samples/Symbol Designer/Symbol Designer/Properties/Resources.resx
new file mode 100644
index 0000000..7080a7d
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/Properties/Resources.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/Samples/Symbol Designer/Symbol Designer/Symbol Designer_2010.csproj b/Samples/Symbol Designer/Symbol Designer/Symbol Designer_2010.csproj
new file mode 100644
index 0000000..15c9506
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/Symbol Designer_2010.csproj
@@ -0,0 +1,184 @@
+
+
+ Local
+ 8.0.50727
+ 2.0
+ {29A69352-A91B-4141-B059-626BA91C0870}
+ Debug
+ AnyCPU
+ App.ico
+
+
+ Syncfusion.SymbolDesigner
+
+
+ JScript
+ Grid
+ IE50
+ false
+ WinExe
+ Syncfusion.SymbolDesigner
+
+
+
+
+ 2.0\
+ false
+ 285212672
+ false
+
+
+ SyncfusionFramework2_0;DEBUG;TRACE
+
+
+ true
+ 4096
+ false
+ false
+ false
+ false
+ 4
+ full
+ prompt
+
+
+ 2.0\
+ false
+ 285212672
+ false
+
+
+ SyncfusionFramework2_0;TRACE
+
+
+ false
+ 4096
+ true
+ false
+ false
+ false
+ 4
+ none
+ prompt
+
+
+ true
+ bin\Debug-XML\
+ SyncfusionFramework2_0;DEBUG;TRACE
+ 285212672
+ full
+ AnyCPU
+ prompt
+ false
+ bin\Debug-XML\Syncfusion.SymbolDesigner.XML
+
+
+ bin\Release-XML\
+ SyncfusionFramework2_0;TRACE
+ 285212672
+ true
+
+
+ AnyCPU
+ prompt
+ bin\Release-XML\Syncfusion.SymbolDesigner.XML
+
+
+
+
+ packages\Syncfusion.Diagram.Base.24.1.47\lib\net40\Syncfusion.Diagram.Base.dll
+
+
+ packages\Syncfusion.Diagram.Utility.Windows.24.1.47\lib\net40\Syncfusion.Diagram.Utility.Windows.dll
+
+
+ packages\Syncfusion.Diagram.Windows.24.1.47\lib\net40\Syncfusion.Diagram.Windows.dll
+
+
+ packages\Syncfusion.Grid.Base.24.1.47\lib\net40\Syncfusion.Grid.Base.dll
+
+
+ packages\Syncfusion.Grid.Windows.24.1.47\lib\net40\Syncfusion.Grid.Windows.dll
+
+
+ packages\Syncfusion.Licensing.24.1.47\lib\net40\Syncfusion.Licensing.dll
+
+
+ packages\Syncfusion.Shared.Base.24.1.47\lib\net40\Syncfusion.Shared.Base.dll
+
+
+ packages\Syncfusion.Shared.Windows.100.1.1\lib\net40\Syncfusion.Shared.Windows.dll
+
+
+ packages\Syncfusion.SpellChecker.Base.100.1.1\lib\net40\Syncfusion.SpellChecker.Base.dll
+
+
+ packages\Syncfusion.Tools.Base.24.1.47\lib\net40\Syncfusion.Tools.Base.dll
+
+
+ packages\Syncfusion.Tools.Windows.24.1.47\lib\net40\Syncfusion.Tools.Windows.dll
+
+
+ System
+
+
+
+ System.Drawing
+
+
+ System.Drawing.Design
+
+
+ System.Runtime.Serialization.Formatters.Soap
+
+
+ System.Windows.Forms
+
+
+ System.XML
+
+
+
+
+ Form
+
+
+ Code
+
+
+ Form
+
+
+ Form
+
+
+ About.cs
+
+
+ DiagramForm.cs
+ Designer
+
+
+ MainForm.cs
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Samples/Symbol Designer/Symbol Designer/Symbol Designer_2010.sln b/Samples/Symbol Designer/Symbol Designer/Symbol Designer_2010.sln
new file mode 100644
index 0000000..8173bd6
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/Symbol Designer_2010.sln
@@ -0,0 +1,25 @@
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Symbol Designer_2010", "Symbol Designer_2010.csproj", "{29A69352-A91B-4141-B059-626BA91C0870}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Debug-XML|Any CPU = Debug-XML|Any CPU
+ Release|Any CPU = Release|Any CPU
+ Release-XML|Any CPU = Release-XML|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {29A69352-A91B-4141-B059-626BA91C0870}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {29A69352-A91B-4141-B059-626BA91C0870}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {29A69352-A91B-4141-B059-626BA91C0870}.Debug-XML|Any CPU.ActiveCfg = Debug-XML|Any CPU
+ {29A69352-A91B-4141-B059-626BA91C0870}.Debug-XML|Any CPU.Build.0 = Debug-XML|Any CPU
+ {29A69352-A91B-4141-B059-626BA91C0870}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {29A69352-A91B-4141-B059-626BA91C0870}.Release|Any CPU.Build.0 = Release|Any CPU
+ {29A69352-A91B-4141-B059-626BA91C0870}.Release-XML|Any CPU.ActiveCfg = Release-XML|Any CPU
+ {29A69352-A91B-4141-B059-626BA91C0870}.Release-XML|Any CPU.Build.0 = Release-XML|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/Samples/Symbol Designer/Symbol Designer/app.config b/Samples/Symbol Designer/Symbol Designer/app.config
new file mode 100644
index 0000000..e6cffee
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/app.config
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Samples/Symbol Designer/Symbol Designer/app2010.config b/Samples/Symbol Designer/Symbol Designer/app2010.config
new file mode 100644
index 0000000..b97ae07
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/app2010.config
@@ -0,0 +1,3 @@
+
+
+
diff --git a/Samples/Symbol Designer/Symbol Designer/documents_new.ico b/Samples/Symbol Designer/Symbol Designer/documents_new.ico
new file mode 100644
index 0000000..fa79178
Binary files /dev/null and b/Samples/Symbol Designer/Symbol Designer/documents_new.ico differ
diff --git a/Samples/Symbol Designer/Symbol Designer/packages.config b/Samples/Symbol Designer/Symbol Designer/packages.config
new file mode 100644
index 0000000..282ddd4
--- /dev/null
+++ b/Samples/Symbol Designer/Symbol Designer/packages.config
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file