--- /dev/null
+Microsoft Visual Studio Solution File, Format Version 10.00
+# Visual Studio 2008
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IE_WPF", "WPF\IE_WPF.csproj", "{D12A8897-5BF8-4345-BBB0-8ADE4B9FB9A7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IE_WinForms", "WinForms\IE_WinForms.csproj", "{B9914BB3-B886-4B41-B48D-350EBEBEFD1F}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OCCTProxy", "OCCTProxy\OCCTProxy.vcproj", "{969912D9-78E7-4AB8-B4FF-6B52B4F03991}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Debug|x64 = Debug|x64
+ Release|Win32 = Release|Win32
+ Release|x64 = Release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {D12A8897-5BF8-4345-BBB0-8ADE4B9FB9A7}.Debug|Win32.ActiveCfg = Debug|x86
+ {D12A8897-5BF8-4345-BBB0-8ADE4B9FB9A7}.Debug|Win32.Build.0 = Debug|x86
+ {D12A8897-5BF8-4345-BBB0-8ADE4B9FB9A7}.Debug|x64.ActiveCfg = Debug|x64
+ {D12A8897-5BF8-4345-BBB0-8ADE4B9FB9A7}.Debug|x64.Build.0 = Debug|x64
+ {D12A8897-5BF8-4345-BBB0-8ADE4B9FB9A7}.Release|Win32.ActiveCfg = Release|x86
+ {D12A8897-5BF8-4345-BBB0-8ADE4B9FB9A7}.Release|Win32.Build.0 = Release|x86
+ {D12A8897-5BF8-4345-BBB0-8ADE4B9FB9A7}.Release|x64.ActiveCfg = Release|x64
+ {D12A8897-5BF8-4345-BBB0-8ADE4B9FB9A7}.Release|x64.Build.0 = Release|x64
+ {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Debug|Win32.ActiveCfg = Debug|x86
+ {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Debug|Win32.Build.0 = Debug|x86
+ {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Debug|x64.ActiveCfg = Debug|x64
+ {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Debug|x64.Build.0 = Debug|x64
+ {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Release|Win32.ActiveCfg = Release|x86
+ {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Release|Win32.Build.0 = Release|x86
+ {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Release|x64.ActiveCfg = Release|x64
+ {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Release|x64.Build.0 = Release|x64
+ {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Debug|Win32.ActiveCfg = Debug|Win32
+ {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Debug|Win32.Build.0 = Debug|Win32
+ {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Debug|x64.ActiveCfg = Debug|x64
+ {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Debug|x64.Build.0 = Debug|x64
+ {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Release|Win32.ActiveCfg = Release|Win32
+ {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Release|Win32.Build.0 = Release|Win32
+ {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Release|x64.ActiveCfg = Release|x64
+ {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Release|x64.Build.0 = Release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
+++ /dev/null
-using System;
-using System.Drawing;
-using System.Collections;
-using System.ComponentModel;
-using System.Windows.Forms;
-
-namespace IE
-{
- /// <summary>
- /// Summary description for AboutDialog.
- /// </summary>
- public class AboutDialog : System.Windows.Forms.Form
- {
- private System.Windows.Forms.PictureBox pictureBox1;
- private System.Windows.Forms.Button button1;
- private System.Windows.Forms.Label label1;
- private System.Windows.Forms.Label label3;
- private System.Windows.Forms.Label label4;
- private System.Windows.Forms.Label myVersion;
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.Container components = null;
-
- public AboutDialog()
- {
- //
- // Required for Windows Form Designer support
- //
- InitializeComponent();
- //
- // TODO: Add any constructor code after InitializeComponent call
- //
- shell t = new shell();
- t.InitOCCViewer();
- float version = t.GetOCCVersion();
- this.myVersion.Text=this.myVersion.Text+version;
- }
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- protected override void Dispose( bool disposing )
- {
- if( disposing )
- {
- if(components != null)
- {
- components.Dispose();
- }
- }
- base.Dispose( disposing );
- }
-
- #region Windows Form Designer generated code
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AboutDialog));
- this.pictureBox1 = new System.Windows.Forms.PictureBox();
- this.button1 = new System.Windows.Forms.Button();
- this.label1 = new System.Windows.Forms.Label();
- this.myVersion = new System.Windows.Forms.Label();
- this.label3 = new System.Windows.Forms.Label();
- this.label4 = new System.Windows.Forms.Label();
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
- this.SuspendLayout();
- //
- // pictureBox1
- //
- this.pictureBox1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));
- this.pictureBox1.Location = new System.Drawing.Point(59, 64);
- this.pictureBox1.Name = "pictureBox1";
- this.pictureBox1.Size = new System.Drawing.Size(196, 102);
- this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
- this.pictureBox1.TabIndex = 0;
- this.pictureBox1.TabStop = false;
- //
- // button1
- //
- this.button1.Location = new System.Drawing.Point(96, 248);
- this.button1.Name = "button1";
- this.button1.Size = new System.Drawing.Size(128, 24);
- this.button1.TabIndex = 1;
- this.button1.Text = "OK";
- this.button1.Click += new System.EventHandler(this.button1_Click);
- //
- // label1
- //
- this.label1.Location = new System.Drawing.Point(16, 9);
- this.label1.Name = "label1";
- this.label1.Size = new System.Drawing.Size(288, 24);
- this.label1.TabIndex = 2;
- this.label1.Text = "Import/Export Sample,";
- this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // myVersion
- //
- this.myVersion.Location = new System.Drawing.Point(16, 32);
- this.myVersion.Name = "myVersion";
- this.myVersion.Size = new System.Drawing.Size(288, 16);
- this.myVersion.TabIndex = 3;
- this.myVersion.Text = "Open CASCADE Technology ";
- this.myVersion.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // label3
- //
- this.label3.Location = new System.Drawing.Point(24, 168);
- this.label3.Name = "label3";
- this.label3.Size = new System.Drawing.Size(280, 23);
- this.label3.TabIndex = 4;
- this.label3.Text = "Copyright (C) 2004-2012, Open CASCADE S.A.S";
- this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // label4
- //
- this.label4.Location = new System.Drawing.Point(8, 200);
- this.label4.Name = "label4";
- this.label4.Size = new System.Drawing.Size(296, 24);
- this.label4.TabIndex = 5;
- this.label4.Text = "http://www.opencascade.com";
- this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
- //
- // AboutDialog
- //
- this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
- this.ClientSize = new System.Drawing.Size(312, 285);
- this.ControlBox = false;
- this.Controls.Add(this.label4);
- this.Controls.Add(this.label3);
- this.Controls.Add(this.myVersion);
- this.Controls.Add(this.label1);
- this.Controls.Add(this.button1);
- this.Controls.Add(this.pictureBox1);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "AboutDialog";
- this.Text = "About Import/Export Sample";
- ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
- this.ResumeLayout(false);
- this.PerformLayout();
-
- }
- #endregion
-
- private void button1_Click(object sender, System.EventArgs e)
- {
- this.Close();
- }
- }
-}
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 1.3
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">1.3</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1">this is my long string</data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- [base64 mime encoded serialized .NET Framework object]
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- [base64 mime encoded string representing a byte array form of the .NET Framework object]
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used forserialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>1.3</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <data name="pictureBox1.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="pictureBox1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="pictureBox1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="pictureBox1.Image" type="System.Drawing.Bitmap, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- Qk1W5AAAAAAAADYAAAAoAAAAwgAAAGQAAAABABgAAAAAAAAAAAAgLgAAIC4AAAAAAAAAAAAA////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////AAD/////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////8AAP//////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////wAA////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////AAD/////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////8AAP//////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////wAA////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- AAD/////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////////////8AAP//////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////wAA////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////AAD/////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////////////////////////////8AAP//
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////////////////////wAA////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////AAD/////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////8AAP//////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////////////////////////////////////wAA////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////AAD/////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////8AAP//////////////////////////////////////////////////
- /////////////////9Px9szm7P/8/PT19fr7+/////////7///7/////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////wAA////////////////////////////////////////////////////////////////////qerz
- NZam19ve5ebn5ufp+Pn5/////////////v//////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////AAD/////////////
- ///////////////////////////////////////////////////////k/v9FpbGAoKnh3d/R1dfp6ev+
- /f7////////9////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////8AAP//////////////////////////////////
- //////////////////////////////////z//37U3zx8is7M0c7O0Nvc3vf3+P7///7/////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////wAA////////////////////////////////////////////////////////
- ///////////+////v/P7KIqYjaar0M7Rzc/U6err////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- AAD///////////////////////////////////////////////////////////////////////7j//9L
- tcNMeoTJy83FyMva2t35+fn////+////////////////////////////////////////////////////
- //////////////////////////////////////////////////////////////////////////7/////
- /v////7///////////////////////////////////////////////////7////+/v//////////////
- /////////////////////v/+//7//v////////////////////////////////7/////////////////
- //7////////////////+//7+///////+///////////////////+//79///+/////v//////////////
- /////////////////////v/////////////////////////////////////////////////////+//7+
- //7///7////////////////////////////////+///+///+///+/v7+/v7/////////////////////
- /////////////////////v/9/v/+/////////////v7//v7////////////////+//7+/v7/////////
- //////////////////////////////////////////////////////////8AAP//////////////////
- ///////////////////////////////////////////////////+/vn+/5bm8Cd4h52pssjHysnNz+zs
- 7f7///7/////////////////////////////////////////////////////////////////////////
- /////////////////////////////////9ve36uvsa+ytenr7P///////////////+vr7bO1t7CytbCz
- t6+ytbCztrCztrCzt7Cztq2ws7y/w/j6+/////7//v////39/c3O0pmcoISHjIyPla+yturs7f////7+
- /v7+/////87R06uusLW3uvT19f///////////////87R1Kyvsba5u/Dy8////9zg4qyvsLW4ue7u8P//
- //////7//////8nMza2usLG0ue7w8v////3+//////////T19r7CxZSXnIOGjIyPlK6xtebn6f//////
- /v///////////8THyq2wtK+zt7G0t6+zt7CytrCztrCzt6yws8/R0v////3+/////////9/h4qmssIqN
- koWHjZaan8THyfn5+f////////////7+/v7+/v////////Hy8r2/wZOXmoOIjIyQlamtsd3e4P//////
- //7////+///+/v///////////8zQ0KqusLW3u/X09v//////////////////////////////////////
- /////////////////////////////////////wAA////////////////////////////////////////
- //////////////////////////////////7/1P3/PaOzU3uEwsXIv8TI29zf+/r6////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////o6erKjAzMjc7x8nL////////////////x8rOOj9DMzg8MzY6LjI3LzM4LjM3LjM3LzQ4
- KCwwTlFV8PPz////////7O3tfoSHPUFFLzQ3LTE1LjM2NDg7WFphvcDD////////////f4OHKC0xQ0ZM
- 4OHj////////////////gISIKS4xQ0dM293f////p6quLDA0QERI0NLV///////+////3uDiRkxQMDQ4
- NzxC1tnb///////+////z9DSZ2lvOD5BLzM4LjI2LjM2Mzk6U1dcr7G1/////////////v7+Z2twLzQ3
- NDk9MDQ4LzQ3LzQ4LzM3MDU4JiwvfoKG/////////Pz9n6KlSk9TMjY6LjM2LTI1LjM3OT5BcHd73t/g
- ///////////////+////v8LEXGNmNjxALzM3LjE2LTQ2Mzk8SU1RgoaK2Nrc///////+/////v7+////
- ////f4OFJy0xQERJ4uPk///////+////////////////////////////////////////////////////
- ////////////////AAD/////////////////////////////////////////////////////////////
- ///////+//////7v//951uMoa3mnsbS9wcTMztHt7+/+////////////////////////////////////
- //////////////////////////////////////////////////////////////////////+pq64zODw7
- P0PKzc7////////+/v7////KzM9CRko6P0JLT1NbX2NYXGFXXF9ZXWFZXWFSVltydXrz9fX////w8fJr
- bnMxNjo2PD5PVVhpbnJbYGU6PkMzODxBREnJy83///////+Gio4wNTlKTlPg4+X////+/v7///////+E
- iI0xNjlLUFXe3+D///+srbIzODtHTE/U1dj////////8/P16foE0OTw7P0NARUrY2tv////////MztBI
- TFAyNzo3O0BTV1pscHReY2c9QUc0ODw2Oz6ipqf////////+//9ucXc2Oj1CR0lXXF9aXWBYXWFYXGFY
- XWBQVVqYnJ/////7/PyQk5Y0OD00OT1AREhhZWdrbnNPVVc2Oz4zNztVWV3g4uP///////////+0uLk+
- QkcxNjk8P0JaX2Jpb3JbYGQ+QkY0OTwyNzpNUVbS1Nb///////////////////+EiIowNThITlDj5eX/
- ///+/v7///////////////////////////////////////////////////////////////////8AAP//
- //////////////////////////////////////////////////////////////////3//v/+//7//7j0
- /iuOnmqIj8XEyMLFyODi4/39/P//////////////////////////////////////////////////////
- /////////////////////////////////////////////////6mqrzM3PDo/RMrMzv////7///7+/v//
- /8rMz0BFSTY6Ppean/Hy8+3u8O3v8O3v8e3u8O3t7/Dx8v3+/v///5OWmjE0Ozc8P36DiOHi5P////Hx
- 86Smqj9DRjA1N2Fma/P09P///4SIjDE0OUtPU+Dj5f/////+/v///////4OIjjI2OUtQVd7f4P///6uu
- sTM5PEhNUNPV2P///////7q9wDg+QTxAQzw/Q0BESdra3P////L09GFlajM4Ojg8P46RleXl6P////T0
- 97C0uEVLTjQ4PENHTNbY2v///////29yeTE1OlxgZt/i5u/w8uzu8O3u8e7v8ezu7/X19v///8HDxTk9
- QTU6PVFWWb7Cxvb2+f///+Hi5IGFiTg8PzA1OXl7f/z7/P///+Hh5EhPUjQ6PkZJTq2wtPDw8v////Dx
- 88LEx2RpbDk8Pjo+Qra6vf////7+/v///////////4SIijI1OUlNUeTl5///////////////////////
- /////////////////////////////////////////////////////wAA////////////////////////
- /////////////////////////////////////////v///v/+/v7/////6P3/Zs/bJWtzprK0wsLI0dPX
- 8vT0/////////v//////////////////////////////////////////////////////////////////
- ////////////////////////////p6uuMzc7Oz9EysvO//////////7+////yszRQUVLNTk9oKSm////
- ////////////////////////////6OnrVFdcMjc6WV5k9vb2/////v//////////f4KGKzE1UVZb3N3f
- ////hYmNMTU6S05S4ePl////////////////hIiNMTY4Sk9U3t/h////q66xNDg8SExQ1NXY////8PLz
- Wl9kNjs+Oz9CPD9EQEVJ2drb////v8PENjs+Njo/eXyA/f7+////////////////q6yvNjxAMTc7kJOY
- ////////bnJ2MTU4X2Rn8fL0////////////////////////////dXh+Mzg8PUFGv8HE/////////v//
- ////+fr6ZGhsMzg8QUdM1tnb////lpmdMjc7OT5BpKir////////////////////tbe6Njs/PEFGvL7B
- /////v7+/v//////////hIiLMTU6SU1S4+Pn///////+////////////////////////////////////
- ////////////////////////////////AAD/////////////////////////////////////////////
- /////////////////////////v79///////5//+t9PsiiZVui5LEw8bCxMff4uP8/f3+///9///+///+
- ////////////////////////////////////////////////////////////////////////////////
- //////+nq64zODs6P0PKzM7////////////////LzNFBRko1Oj2ipqj////////////////////////+
- ///////O0NE6P0MzOTyQk5n////////////+/v7////X2dqtr7Lg4eL7/P3///+EiYwwNTlMUFTo6+z/
- //////////////+IjJExNjhMT1Td3uH///+qrbI1OTxGS1DU1tn///+WmZw0OD0+Q0VgZGk+QkVARUnZ
- 29z///+QlJc0ODs7P0PDxcf////////////////////u7u9OU1c0OTxkaW33+Pn///9ucnYwNThdYmfu
- 7vH//////////////////v/////y8vNRVFkzNztgZWn09fb////+/v7///////////+qrbEzOTszNzyw
- s7X+//9oa28wNDhSVlrp7O3////////U1tmfo6inqq99gIU5PUE7QUa7vcL///////////////////+H
- i44wNjlJT1Ln6ev/////////////////////////////////////////////////////////////////
- //////////8AAP//////////////////////////////////////////////////////////////////
- ///+//7//////////97+/1jF0zFse7O4ub/AwsvP0+/v8f//////////////////////////////////
- /////////////////////////////////////////////////////////////////6errjM4Ozo/Q8rM
- zv///////////////8vM0UFGSjg9QG90d6Snq56jp56ipp6ipqChpp+jp+vs7f///7W5vDQ5PTQ4PKyv
- sf////////7+/v/////+/v///////////////////4WJjDI4O0RITJGVmaGlqZ+ipp+jpqGlqWNnazU6
- PUtPVN7f4f///6qtszQ4PEdMUNvd39vc3kNISzE2OXR3fa+0tzY5PUBFSdrb3P///3t+gjE3OklOUtja
- 3P////////////////////f3+GptcjM4O1JWW/Dx8f///25ydjA1OV1hZ+7u8f//////////////////
- /////9ze4ERITDE1OX2AhP///////////v///////////83O0Ds/RDM4OpqdoO3v8VVaXjE1OGdscf//
- /////////5yeoigsMTI3OzM6PDY7PzY9Qbe6vv////////7+/v////n5+mpvcjQ4Oz9ESMfKzP//////
- /////////////////////////////////////////////////////////////////////wAA////////
- /////////////////////////////////////////////////////////v///v///////f/////+9v7/
- ofD6IImZboWRwcLHwcLF3uDi/Pz9////////////////////////////////////////////////////
- ////////////////////////////////////////////p6uuMzk7Oj9DyszO////////////////y8zR
- QUZKPEBDNDk8KS0xKS8zKy8yKi8xKS4wKi8z0dPU////sLK2NDg8Mzc7trm7/////////////v7+/v7+
- /f/+/v///v7+////////hYqONjo+PEBDLTE0Ky8zKi4yKi8yKS4zNjo+OT1BSlBU3t/g////qq2xMzk7
- SU5S2dvgenyAMTY5QEVJ1tfaur3ANDg8QEVJ2drb////eHt/MDY5TVJW3d/h//////7/////////////
- +fr7cXZ6Mjc7TlNX7/Dw////bnJ2MTY5XWFo7u7x/////////////////v/+////1tjbQkdLMDU4hYiM
- ///////////+////////////1NXXQERJMzY6lZmd5ujqUVZaMjQ4b3R5////////////tLe7WV5jYWZq
- Y2ZrY2ZsYmdrxsrN///////+////////q66xODtAOj9CNDk9aW1w8/T1////////////////////////
- ////////////////////////////////////////////////AAD/////////////////////////////
- ///////////////////////////////////////////////+///9//7////f+/9ez9wlaXSgrLK+wMLO
- z9Hu7vD////////+/v7/////////////////////////////////////////////////////////////
- //////////////////////+nq64zOTs7P0PKzc/////////////////LzNFCRko6P0NUWV5vcnZrb3Jr
- b3NqcHRrb3Nrb3Te4eL////CxMY2Oz8zNzunqa3////////+///+//////////////////////////+F
- iY00OD1AREllam5scHRrb3Nrb3RucnVPU1Y3Oz9LUFTe3+H///+qrrIzODxQVFiPkphBRUkyNjqMj5P/
- //+xs7Y0ODxARUnZ2tv///+ChYkyNzpFSk7U1tj////+/v7////////////29vdjaGwzODtWW2Dy8/P/
- //9ucncwNTlcYWbu7vH////////////////9/v7////l5ulHS08xNjl4e3////////////7/////////
- ///Hycw4PEEyNzqfoqX09fdYXGAwNThnam/////////////9/f38/f38/f3////////+///+//7///3/
- ///////k5eZNU1Y3PEBESU0/REg1Oj2jpqj/////////////////////////////////////////////
- //////////////////////////8AAP//////////////////////////////////////////////////
- //////////////////7+//3///////7//v///vj+/qv1/SeWo19/hcLCxMDCxt3e3/r6+v7/////////
- ////////////////////////////////////////////////////////////////////////////////
- /6errjM4Ozo/Q8rNzv///////////////8vM0UFGSjU6Ppyfo/v8/fj5+vj5+/f5+/j5+fn5+f3+/v//
- /9rb3UJHSzI4OoGEif///////////v///////9vc3tXW2vT19f39/v///4WJjDA2OktPU9/g4/n6+/j5
- +vj5+vr7+4WIjjE2OUpOVN3f4v///6qssjY7P0BFSUJGSTY7PlNWW+nq7P///6+xtTM5O0BESdja3P//
- /6GlqTM4Ozg7P7W3uf////////7+/v7+/v///+Pk5UdLUDQ5PG90ePv7/P///25ydzA1OF1hZu7u8f//
- //////////7///7+/v////n5+VxfZTI3O1ZbX+3u7/////7//////////////5mdoDM4OzY6P7u/wf//
- /25zdzA2OUxQVOLk5v///////////////////+zs7eTn6Pj4+f79/v3////////+/3+ChjM4Oz5CRbi8
- wHB1ejA2OkpNUtze3///////////////////////////////////////////////////////////////
- /////wAA////////////////////////////////////////////////////////////////////////
- ////////////////////6f3/adbkH216lqerwMHEyszO7Ozt/v///////v7+////////////////////
- /////////////////////////////////////////v//////////////////rrG1Mzg7Oj9C0tTW////
- ////////////yszQQUVKMzk9o6ep////////////////////////////////9fb3aGtvMDY4SE1R3N3f
- ////////////9PX2ZGZrODxBY2hv4+Tm////homMMDU5S09U5ubo////////////////hYmPMjU4S1BU
- 3t/h////q66yNzxBPUFEOz9COD1AsbS3////////rrG0Mzg7QERJ2dvc////2NrbPkNHNDo+XmNm7e7w
- /////////////v//io6RNTo+Mzg9pqqs////////bXJ4MTU5XWJm7e7w/////v7+/v//////////////
- ////kJOWMTU6NztAoaSn////////////////5eboUVZaMTY5TlNY5ujp////q6+xMzc8NzxAiI2Q/f7/
- ////////////+Pj5bXBzP0RJZ2tw4ePk////////v8HDOT1DMzc6eHt+////xsrNO0FFMjc5eX2A/Pz8
- /////////////v///v//////////////////////////////////////////////AAD/////////////
- ///////////+/v7////////////////////////////////////////////////////////+/v7///7+
- /v+39v83o7NHdH69vsLAwsbY2dz3+Pj////+///////+/v7/////////////////////////////////
- ///////////////////////W2dy7vsG+wcXAw8iGio82Oz87QESeoKXCxMe+wMO/wcT5+fnNztNBRUs1
- OkB/g4fCxcm+wMO+wcS+wcS+wMS7vcHS1Nj///////++wMM6P0Q1OTxWWmCwsrbc3eDFyMtzdnw3PUEv
- NDdtcXb3+Pj///+Hio0xNjpKT1Ph4uT///////////////+Eh40xNTlKT1Te3+L///+rrrE3PD89QkU0
- Oj1zdXz6+vv///////+vsrQ1ODxARUnY2tv////8/f2Hio8xNjo2Oz1kZ224ur3c3eDIyc6BhIo8QUUy
- NzpeYGTs7O////////9tcnYwNTddYWbu7vH//////////////v/////+/v7////e4OBOUlY0ODxARUmL
- j5LMz9La292xsrZaX2E3Oz8zNzydoqL////////y8/NkaG0zNzs6PkJ8gIPCxcna3N/Exsl1eHw5PkEx
- NThjZWj19/f////w8PFcX2MzNztGSk/V19r///////99gIQ0OTw3PEG4ubz/////////////////////
- //////////////////////////////////////////8AAP//////////////////////////////////
- //////7///7///////////////////////////////////////////7//v///ur+/4Dl8Bp0goKZnr/C
- xMfIzOPl5vv8/P//////////////////////////////////////////////////////////////////
- /3x/hiowMzI3OjI4OzU5PTg9Pzc9QDU5PDM4OzI2OjM6Pt/g4NDR1TxBRDU6PjY6PjQ4OzI3OzM4OzI4
- OzI4OikuMnJ1ev///////////5+jpjg9QS8zNzM4PT1BRTk9PzI2OTI2OlBUWNvd3v///////4KFiSsw
- M0RJTeDh5P/////+/v///////4CEiSswNEVKTtze4P///6irrzI2OjY5PkFGSdXW2f///////v///6yw
- sS0yNjo/RNfZ2v///////+zu72tvczE2OjE1OzQ5PT5DRTc9QDA1ODA1OFJVWtPU1/////////7//2ds
- cSovMldbX+3t7/////////7+/v/+/v///////////////7/Bw0NITDE1OTA1ODo+QT1CRjQ5PTA1OTQ5
- PYaKjfn5+v////3//////93f4FpeYjA0Ny80Nzc8Pz5ERzg8PzE2OTE2OUtQU9DT1v////z8/Y6SlC0y
- Ni80OJGUlv////3//////9vc3kNITC0xNFFWWubo6f///////v//////////////////////////////
- /////////////////////wAA/////////////////////////////v///////////////////v79+vz8
- +/39/v///////////////////////////v///v///v/+xfr/R7vML2l0prG2wcDDy87R6+3u///+////
- ////////////////////////////////////////////////////////////kZWZS1BVUldbU1hbU1dc
- U1dbU1dcU1dcU1hcUldaVVpe5OTm1dfaVlpeUVVaU1hcU1dbU1dcU1dbU1dbU1ZbS09UiIyP/////v/+
- ////////u7/Ca25zSk9TQkZKQ0hNTlNYgoSI3+Hi////////////k5aaSExPX2Rn5eXn////////////
- ////k5aaR0xQX2Jn4eLl////s7a7TVJWTVFVnaGk/////v//////////ubu8SU5SVFld3N7f///////+
- ////8fLzmpygWl9iRktQQUZLRUlNVFddiIuQ4ePk////////////////jJCUXWBjfoKH8fLz/////v//
- //7+/////////////////v7+////09bXd3t/TVJXQkhMQUZJSU1RZWdsr7K1+/v7///////+/v///v7/
- ////6evsjpKWVVpeRUpPQUZLREhNUFVafICC2Nnb////////2tzeV1tgTVFVZWht7Ozt//////////7+
- ////mJygTFBUSU5UnKCj//7///////7/////////////////////////////////////////////////
- AAD////////////////////////+//////7/////+vvy8PPm5+rk4+Tl4ePr5ebs6ens7u7z9/b9/f3/
- ///////////+///9/v7///70/f+Z8/0olqZLcny2ur/AwsLV2Nr19PT/////////////////////////
- ///////////////////////////////+///+///z9fXq6+7q7O7r7O7r7O7q7O7r7O/r7O/r7e/q7O7r
- 7O78/Pz5+vvr7O7q7O7q7O7r7O/r7O/r7O/r7O/r7O7p6uzw8vP///7+/v7+/v/////////+///d3+HK
- zM/Oz9Pm5+r////////+///+//7////x8/Xq6+vr7e/7/P3///7+/v7+/v7+/v7y8/Xo6evt7vD7/P3/
- /v729/jp6+3p6+78/f7////////9/v7+/v739/fq6uzr7O37+/v+/v79//7////////////y9PXV1tnJ
- y8/R0tXt7fD////////////+///+/v7///78/v/9/v38/v7////+/v/+/v7////+/v7////////////+
- /v7////////////k5ujO0NLKzM7Z2937/P3////////9//7+//7//v7+///+/v7////////w8PLR09fJ
- zM/P0NPo6ez////////////////y8/Tm6Onq6+309fb////+//7//v7+/v7////8/f7q6+zp6uzq6+z9
- /f3///7///7///////////////////////////////////////////////8AAP////7///3///7///7/
- //7//////+j3+6fn8XTW42DK1lu8yFu1wGKttoettq67wNHN0NzY3OHi4+/v7/n7+v/////////+/v7/
- /////+P5/3fi8Bt4hXCHkbu+v8HExd7g4fz7+/////////////7/////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////7/////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////wAA///////+/f///f7+///////+1fb9duP1MNXqE8/i
- E9PpKdToK8/jLcPVKKy6NJWhYZeilaewv8HG0dHT3dve6Orr9/n5/v///v//////+/7+vPf/T8fZI2Zz
- lKKnuL3BxMnN5+jq/v/+/////v//////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////AAD///////7//////v/+//7T+Pxw5fUuxdQytcNjucd/y9mH2OWB4e9r4/Jf3vJL
- 1OcruMkhlqNFh5CKoKS/wMTMz9DZ3N3s7e/8/Pv////////n+v2b8P0qo7E9a3Wwtbm/vcHJ0NLt7u7/
- ///+////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////////////////////////////8AAP//
- //////3//////vT8/5Hq+S2ou06Xoae4vsjDx9fT1Ovh5e3s79zu88Pt86Ht9Xjm9VXa7i61xySHlFmG
- kZmmrcfGyNHR1ODi5PX3+P///////9n5/3rn8x6GlVt5gba2vLzBxdfZ2/f39/////7+/v//////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////////////////////wAA/////////v/+//7/0Pj/TL7O
- QnqEvbzAyMbH1dbW7O/w/vz9//////7///7+/Pv94PX5su74iOn7V9jqKau8JHiFbYqSuLu/ysfN2djb
- 7vDw/f79/P//yPj+Y9jmHHF/co2UvLzBvsTI3+Dj+/v6////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////AAD////+/v7////1/f+N6fUihJORn6TJxcjHzM/o6Or///7/
- /////////////////////////v3j+Pqw7/l25/lJyNkegpBKd32mq6/Cw8fL0NTk5ub8+vrw+/609P9B
- wNAlZ3GWn6W8u8DEx8vj6Of9/f7///////7//////////v7//v/////+///////+///////////+////
- ///+/////v/////////9///////////+///////+///////////////////////////////////////+
- /v7//////////////////////////////////v7+///////+///+/v7////////////////////+////
- ///////+////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////8AAP///////v///+D9/2bN2y90gbC4u7+/w9DT1fPz9P//////////////////////////
- //////////v9/sv0+pTt+lrb7CGbqi1weIybosS/xMjKzOPj5Pn39uL4/ZPu/C2mtDVnc6mtsr28wM/P
- 0uzt7v3+/v////7+/v3///3+//7+//7+/v7///7///3///7///////7///////////z///3///7///7/
- //7///////7///7///7///3////+/v/////+/v7+/v7/////////////////////////////////////
- //////////3///7////+/v////3//v7////+/v7+/v////////7///z+/v////7+/v////7///7/////
- //////7///7/////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////////////////////////////////////wAA/////v//
- ////3v3/X8DPOnJ/tbq+vb/D1NbY+Pj4/////////////////////////////////v7/////////5/v9
- s+/7duf3LLDBI2p2g5KXvr7Bx8fL3t7f8fHz2Pf7guv5I5WmQ253qrO3vL7D0NPV7fDw/////////f/+
- /f7+/f///////////////////////v////7+/////v///v///v///v///////v/+/v/+/////v//////
- /////////////////////v///////////////////////////////////////////////v7//v///f7+
- /f7+/v///v///v7+/////////////////////////////////////////////v///v////7+////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////AAD//////v////7j//9fw9E3b32ytry8
- v8PT1dj4+Pj////////////////////////////+///9//7+///+///////4/P7C8/1+7Po1usodanaA
- kJa7vsHAxsva3d/t8PDO+P5y5PQjh5ROcXuwtby/wMTU1tjy9Pb9//////7////////////6+fj49/f5
- +Pn8/f3+///////////+/////////////////////v7//f38+/v6+/r3+/v29/j29/f2+Pjz9fX4+Pj9
- /f3////////////+/v7////////////////////////////+///////////////+////////////////
- ///////9///5+vv29/f39/f59vjz9fb29/f9/f3/////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////8AAP////7//////+n//2TJ2DRve661uby+wdHT1fX29v//////////
- //////////////////7///7///7///7///7//////vr9/sz2/Irt+z3B0SBxf3OKkL24v8LGx9nZ2+bs
- 77r1/13a5x14iWWFi7e5u73CxNTZ2/bz8/z9/Nv0+qzc4bTO1MvP1NXS1NrY2d/i4ebs7Pb29v78/P/9
- /P/7+v/39/Dx8uTm6NLc38/X2dnV19bW1tXS1dbS1tXV19fY29jZ29rZ2t/g4fHz8/3+/v//////////
- ///////////////////////9/f35+PPw7+/q7O7u7/X49/7+/v////////38/Pj19Ozp6d/f397Y2tbR
- 1dLP09DLz8/Pz9HV1d7j5Pb3+P//////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////wAA//////7+////8///fNnnKnF8oa+xvr7Bzs/R8PHx/////////////////////////////v//
- /v///////v/////////+////////2Pf+nfD9RMfVGm97bIiQvLq9v8LE1djX5+3xrPX/T9DiHXF+bYmP
- ubq/wcXI3tvezu/1aeDxIMPULKa4Pp+tU5ujhZ+ptLO5zcTH1c/Q3Nja2t7itt/mgdbiYMzaUMbVQbzN
- Qq67U6Grcp+llaKoqa+ypre9o7e/prO5tba8vbu+wsHD09PV5OPl7e/v+vv9/////f7++vr8+Pf49vX1
- 7u7xuuHojMTMn7O4uLe8xMTG2Nna4+fn5+fo5t/i4NjbvdTbjMvUf77Jc7vEbLK8eqOskaGor7S4uL3A
- zNLU9vb3////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////AAD////+///////4
- //+d7fcifImFmZ/AwcPFyMzn5uf+/v/////////////////////////////////////////////+/v7/
- ///////+/v/g9/yU7/s8xtYZb35siJC7t727w8ja2dzd7fGo9P9KyNcabnt0jJG9urvFyszK9fqD6PU8
- 2+o30+Yty90tusoqnKpBjpx7q7hwwMxdx9VV0uI52+4n1ewp1uok2ewq1usz0eMnxNUlrLw3o7FEu8o6
- ytgxv9A3q7lGnqpan6pvnqWRoKatrrO+vcHKy87U1dfa3N7f4ePl5ufu7OzX7fJy4vMswtMsnalChpN6
- lJ2xrrfHvcHGx8mz0dmH2edT3Owu1ukuy94szeEvyd0puMgphJBgeoKrrK+2vb/Z2d37+vz/////////
- ///+/v7/////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////8AAP////7//////vz//8H6/ziaqld6gru+wL3B
- xd3d3/r7+/////////////////////////////////////////////////39/v7//////v///tr4/ZDv
- /jvB0h9odn+Ql726wb7Dxdnb29jv9J7x/UjI1iF1gmiEiLq5u7/W3Zjp9mvi9Fnf8kbg8jLd8DDW5zHG
- 1yjI2yLU5yjX6y7U5jDL3TDJ20DK2UnM21HT5HTi8Hrp+FPf8DXT5TDY6zXb7TTW6SrX6TXR4i/E1Cev
- vy2WoUeMlX6SmqCjp7O0t7+9wcjKzdDV193e4Nfz+Ibo9jLZ7DTS5iu5yCiVo0GRnm+rs3zN217g70zf
- 8jnX6yvP4irQ4jDV6jLZ7THi8yK6yh9ibY+aoLu/wtXW2Pb19v////////7+/v7//v//////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////wAA/////////v/+/v//4vz/YMXULGl0rbS4vL/B0dLV8vLy////////////
- /////////////////////////////////f///f7//f7+/v///////f/+3Pj9k+v6NLrJJGh0hpacv7rA
- w8bH3d7e1+/zovL/S8zbHHWCZIGIt7W4s73DqM3XlNvoct3rT9vrXN7vb+L0XuDzSd7vPtvtMLrJTZKc
- dZmfiZuppKqvsbq+v8vQyOTqlun5N9/uMtrrOtnqNcDQRbfGXtjnZuf4UuL0QNPkL7zLJZqtOoKRb4yR
- n6WqtbG3v77Cw8fJ2u/0kOv3M9XoM9fqPN/xTdjrOMbYLsraO9rxQNToK7nLM6q4Ya+7gbbAkb/HlMbM
- l9DXhcvWhK+4tb3Bz8/R5ebn+vn5////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- AAD////+///9/v7///74/v+a6vQde4p9lp3CwsTEx8nk5uf9/v7/////////////////////////////
- ///////////+///////////8///+///////+///b9/6N7/0vq7opZG+Uo6e3vMDJyMvk4eHc8/if7/5F
- y9sdbnxyhou3tbjCubzFyMrR1tzP2+LQ4eXL6O6l6PN35fRW3vExwNMzdoJxen+hnZ+nqK3CwMfU09Tf
- 6u2C5vM31OZk4fRQ3u8qrL5Ib3aDkJeIu8aE0t6I5/Vt5/ZJ2+wzvdAkmKc5iJFkjJOVn6Wyq6/N192n
- 9P48zuE2p7hiu8pw4Otl5/gr3e8dxdYtp7dgn6igsLW9u77OxsnSzNHa1Nfe1tjh2tvd3N3d3uDl5un2
- 9/f+/v7/////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////////////8AAP///////v/+/f7//vz/
- /8/8/0KzwUBwere6vri/wtPV2fX19v////////7//////////////////////////////////v7/////
- //////////7//////v7//tD4/nbn9ySaqD9rcaats7m6wdHS0+rp6trz95ju/D7F1h94hV6CirKzt7vA
- v8rN0eXe4fDt7Pn19vT2+dLz+qHq+WXj9Cy1wiBocXuNkq2us7u7v9PX2Nn2+1jN2Vujs7Dj7ZPx/kHK
- 3B5tdGp4faOfpayutb3I0LHd6JDl9HPm9k/c7jXF2COgrjSGkHGWoK7Ax63w+0PO3Sd0gHV/hJ2mrJPM
- 1nXS4n/EzbXIzd3Y3efj5Ofq6+/x8vb4+Pj3+Pf19vT19vHx9fT29vv9/f//////////////////////
- //////////////////////////////////////////////////////////////////////////79/v38
- /f////////////////////////////////////////////////////////////////////7/////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////wAA/////v/+/f///v//////7/7/hub0InWEf5WXv8DD
- wMfJ5OXn/v7+/////v///////////////////////////////////////////////////v///P/+///+
- 9v3/vfL9aePwG4GPVXV9s7a6v7/D1tfY7O3v1/P7me/7TtLiGYeUTHN+p6itv8HEys/P4OPl9fX1///+
- ////6fn7u/D6eev4Kqu7MGRvlJyjr7O3ytDV3Pz/VL7QPmVoj3ZxttTZgvT+JaCtNVxignFtn5SRyMLE
- 6Ofq5e3xze3yoez1duz8UeP2OcfWJ7bJQNDfbOLzQNblJHSBXXN5o6Kmvbu92dfc9/Hx//3++vv8+fn4
- +/v5/Pr6+/j4/v//////////////////////+PX15NXSz7OsyKecyqWczayh2Ly2697d/Pr6////////
- //7+/f7//v///////v/+/////v/+////////+vb15dTQ0LKpyaOXvpKJu5GGw5yPzKuj487K9/Hv////
- //////////7++ff3+vj4+/n5/////////v/+/v/9///+/v///f///////v7+/////////v//+PLx9vLx
- 9/Py+fb0/v38/////////v//+PTz+PPz+PP0+PX1+fX19/Py9/T0/Pv7/v///////////////v7+///+
- /f7////+/v7+/v////////z9+fLy+fPy+PTy+fTz+PTz+fTz+PPy+PTy+PP0+fP0+PX09vPx+/b2////
- ////////////////AAD//////////v/+///////8/v7F+f9FscE2bnS0ur69wMTT1df09PT/////////
- ///////////////////////////////////////////////+/v/+///+//////71/P658/9Q0uEbcX5w
- h420t7u/xMXY3N359fTl9/uh7/te3e8hnKw0bnqJmZ+/vsDMyczW29/t8PH9+/v////6/PzG8/xq5vgd
- kp9GanGnrbShm5vG1NR52ucjXmZcOSuJamW48/hV1eYhaHdLQDlpQTSEY1i3oZzz7ev++fq7lY6bn5qH
- 1d546/pg5vhE3O493PA30+Yic4Bke4C2tbvO0NHw8PD////x6Oa4jHyteWqxfGuyfW2sd2fSta3/////
- ///////y7OvTtaqyf3CmZ1ajZE6jZU2lZE6hY0ugZU6mbVmzgXPUu7T49PL////+//7+/v79///+//78
- ///////8+fnWvLSxemykaFGiYk6hYEygYUykZFChY06fYEylZlGvdmXHoJTs4Nz++/zMqJ+ud2aveWqu
- fG7Vvbb+/fz//v/+//7+///+///+/v/9/v/9///////y7uy9loyweWqyfG+xfGyqeWfJqZ7////49PLF
- opSwemuwe22vfW6yfW21fW2zfm20gHK5h3vCnJHXv7bp4d7////////9///9/v7+/v7+/v7////p4t63
- in6xemuzfW2zfm+yfm+xfW+zfnCzfm6yf26yfm+xfm+xfnCwfG6yemzgzsf///////////////8AAP//
- //7///////7///7+/////+/9/43o8x19i3qQl8TBxcTFyeLj5f39/f//////////////////////////
- /////////////////////////////v/+//3+/v3//////+/7/6Px/T/C0h5kcIOXnri7vsfHzOPm5vz5
- +e74+6zw+Wvl9C62xSN/jlqFkaOqr8XExs/R1ODg5O7v8Pn4+e71+Lr2/0/T4SJqeWlsbGg8Nquhn5z1
- /SF/jlZIRGk4K6+vr5b0/h+Il0ZLTGxANXZJOYRINLyXjv7//7J+bZ1aQJ9rWZeRi5bN1Hbk9DXe8B25
- yTN3hKOtscnKz+Dj5fz7+////8GZjpxcQ6doUqNnUKRpUp5eSLuShf////jz8tCxqql0YqBgSqNnUKVt
- V6VtWKhuWKpvWqlsWqdsW6drVqRnUaBfS7J9b+LTz/////3//v/////+/v7///j087qTg6FfSqZnUadu
- WahtWKdsV6ZuWalvWqhuWadsWKZsV6prVpxfRqRsWvDm5b+Uh59hR6RqVKllUZ9jUOvh3/////7+/v//
- //3//v7//vz+/v7+/////8emnZ1aRKZqVKZpVKVpVKBgSLaLe////8yroZtbQ6JoUaZnVKZoU6RnUaVm
- UaNoU6VoUqVkT6JiS59iTKRqWL2UhunX1f////////3///////7+/r+XjJtdRKRpU6RnUqRnU6VnU6Vm
- UaRnUqZnU6VnUqRnUaRmUqNmUqNmUp9eRtK4rv///////////////wAA/////v//////////////////
- ////0fv/UcLRLGd0qbC1xMDDzM/S7e/w/////f//////////////////////////////////////////
- /////f/+/f7+/v///f7//v7////+4Pj+i+78KKi3OmVwo6euubm+ys/R6e3t////9/z+yvH7hOz6S9Pl
- JJ2tN4CNdJObrLK2x8XI1dHU39ze4uLj4/L2iun5JYiYQUJBYzcqkXRwuvj+OLXFMFVXZTkpimlirfD4
- LY+fSElFb0I2dk9EiFE8x6qk////1LWuomJKoWlSpmBKnmVQqKmmrPT8kc7Zt8nR4N7j5ujp9/r5////
- 8OvqqHJgqGlUq25ZqG1Zqm5boWNO3MrD+PTzs4d3nF9HpWVRqW1aqW1ap21ZqGxXpGZQo2VOpmhRp2xY
- qGxYp21Yqm1aoWROo2dT4M7K//////7+/v///Pr6vpSIm15HqWxaqGxbpWxXp2xYqG1YpmhSpGZQpWhR
- p2tXqG5Yp3BbpmlTsHpq+PT13MjBo2NPp21Yq25ao2JMyKWb/////////////f7///7+////////+PXz
- sHlppmlTpm1WqG1ZqW1ao2JN0rSt////vZSFo2NNqG5aqG1Zp21YqGxYqWxZqG9aqW5Yqm5cqG1ap21Y
- p2pUn2FLpWxW0rWs//7+/v/+/////fv8vY6Do2dSqm9bqW1ZqW1Yqm1Zp2xXpm5YpmxWqW1Zp2xYqG1Y
- p2xXp2pUpGxW6uDe////////////////AAD////////////////+//7///////3z/v+h8/0nkKFYe4W6
- wMK/wsXX29z4+Pn+///+/////////////////////////////////////////////v/9//7///////7/
- //7////+/v7M9f1y4/Qdh5JYd362trq9vcHY2Nv19/j//////v/g9/ye7/ll5PU2xtgknqs8k55jmaKR
- qbC1ur/DwsTR2+GV8PwmlKM/SUtmQTR3SjzEy8qK7vwdjJhHV1eEg4KJ5vEleYVQPTZwQTR9TTmUZVPx
- 6+n////s396naVelbVeobFmkaVKmZVPhysL////////+///////////+///IpJqkZE6oblqnbVmnbFmn
- aVSpc1/49PHl1dOgXkirblmlbFiob1qoa1ajZE6obly0hHi5kYWzg3OlaFWpalapblqoaleqbVqiZk6m
- dGL16+v+///////exsGcX0iocFqqbVmma1apb1qkZ1GlblqygHC2hnavemmma1agYEqlZlCfXUXSt67/
- ///y7OyrdGKnaVSobVqlbFekalTXwrv+///////////////////////PsaigZE6nblmobVmobVmoa1ap
- bVju4uD9///AloukZE6oblmoblmobVmncFumbVegYUudY0yiZk6naFSob1qoblqoblimalSeXkvTtrD/
- ///////9/P29j4KjZU+nbVmnbFmnbVeqblmhZVGkZlKkZ1OlaFOlaFSmaFSnaFSgYEy/m47+/v7/////
- //////////8AAP/////////////////////////+/////+b9/3Db6hpwfoybo8TBxcPIy+Xn6f7+/f7/
- /////////////////////////////////////////////////////////////////v////L9/bz0/1DP
- 3xxqeXuSmLe3vcXDyODj5Pr8+/////////L7/cHw+orq+WPi8jrM3iq1xiqms0Sqt1fDz3fi8F3e7yN9
- jU1GQ3BIO3tIN6B6bbnv9Fza7Ce80ULZ6SuuvT9xfZaGhIpsYYdbScuzrf////////v6+riLfaVjTqdu
- WqZvWqZmVKFmU8OeleDNyujc1+vd2+TU0MKflaJnUqltWadtWKdtV6huWaJjTb2Wh/7///v5+LqQgqJh
- S6VuWKNlTqZuWcakme7i3/78/f7///v5+d3IxKZwXKdpVKdsWKpqVqVuWZ9gSdOzq/////38+7eHeKVm
- T6lvW6dsWKZsV6ZmULaIeOfa2Pr5+P36+fr39OTY1Mmmna95Z7OJfPj08/////7//7+WiaRkTqluWqdu
- WaZqVaZmVMOYjd7Mx+rb2Ond2ObW08inoaZnVKRqVahrWapvWqltWaVmULmIeP7+/v7//8KYjKJkTalt
- WahtV6drV6lsWKhyYMikms6vp8KajKhwYaFkTahuWKhsWKptWaZpUqNrWOzi3v////79/ryQhKJkT6ds
- WahtWahqV6ZvW9CzruLKxuLMyOLLyOLMyeHMyODLyOPS0Pz49////////////////////wAA////////
- ///////////////////+///+/f7/vvj/PLjEMGl0rra6vsHEz9PX8PDz/v/+////////////////////
- //////////////////////////////////////////7//v7////+6/z9n+37Mq/BMmVwmqeut7m9yM3O
- 7e3u/////v/////+///+7fn9ue73geb1WuP0QtrrKtTlHNToJM/jJqe2QF1fbkc+f1FBjVtHkVdBvra1
- qvX/PODwHLfJRZCbrbe91dXa3t/h5+Ph/Pz8/v////7/////0bavn2BMqm5aqWtYpnBapmtVpGVOo2hT
- p21Xp21ZpGhWpGRPpm1YqG1XpmxYp25YqGxXo2NP28K8////////8+3tsYNynWBKuYd76NzZ////////
- /////f///v//////zKyioWJMpm1ZqG1Zpm5ZoGNOu5CC////7+Phpm1WpmhUqWxYpmxYpmlVpnBg8Orm
- /////v///f//////////////9vDx9vT0/////f7+////3crDomNOp21XqW1Xp25Zp3BboWFMoWVRpmxY
- p25ap2pVoGRPpmxXqG5bqG5aqG1YqW5aoWJN1bew//////7/wJeJo2RLqG1ZqG1Ypm1YnmNN0LGn////
- ////////8ennwJiKo2VQqG1Zp25apG1XoGBJzKad/////f7/vpGEo2VQp2xZp21YpmlVqHJh8erp////
- /////////////////////////////v/+////////////////AAD////////////////////////+///9
- ///////x/f+W8PslkJ1Xe4PCwsTAxMbW29/49vf/////////////////////////////////////////
- ///////////////////+//79///9/////v7Y+P576/gnjJlOdXuwtbq7vMHY2dz4+fn////+////////
- //////7t+PvF8fef6PRd3+48zeBXusVncnF5TDuFU0KPXUmaY02eX0vexsL0//+97PS53eHc4eLq6Ort
- 7+/6/P7////////8/v79/v/////y6OWobVipalembVumcFqnaleobFigYUyiXkmgX0ikZlCma1iob1qo
- a1iobFmlblmoalOscmHy6+n///////7////08O/k09D8+Pj////+///+/v/+///9//7+///////dxb2f
- ZEynbVmpbluoblmjZVC5hnf//f7gysWjZ1KmblmobFaqbVmiZk65joH////+///9/v/////+///9/v39
- /v/////////+///+//7////38O6rcWCmaFSla1arblmnb1uqbVilY02hX0qeYEijY0yqblqobFmpbVmm
- bVimbVipbVemalbp3dv////+///CmIykZU6pbluobFenbVqlY07axLv////+///////////59vaygXOk
- ZFKncFqpalqmZlKxfW78+vr9//++kYSmZ1GoblqnbVelalSrcF7x5OP/////////////////////////
- ///+/v7+//////////////////8AAP////////////////////////7+//7+/////////+D5/3Pg7B12
- hIKUnMTExcHIyN/i4/z8/P////////7+/v//////////////////////////////////////////////
- //7///7+//////r+/8L4/lnU4h1reYGVmrS4u8PHyebm5//+//7//v3+/f/+/////////v///v39/e71
- 9+bw9ejm5ZtpXI5XQ5diTp5lUaRnUqNrV+bb2f///////////////v39/f////7///////7+//z+////
- /v////3+/r2Pf6RkT6dwWqZvWqZrWKdxXb2Qg8GUiMGWirOGdaVqVadtWKdtWahtWadrWKZjTcCXiv//
- //7///v//v///////////////////v7+//7+//7//v7//////////8SimKRkTKtsWKdvWahsWaNlT7mM
- fv3//9S4sqRjTqhsWKdtWKluW6FkTcOZjP////3+//7//v7+//7//v3///////7///7+//3+/////v/+
- //7+/sehlqFiTKlvWqhsWKZrV6hwXLuQgsGWisCUibmKfKduWqZsV6dsWKdtWaZtV6NnUbmKfPz7+///
- /////8SZjaJkTqhtWadtWaduWqJjS9nAuf////3//////v7//////9O4sKJhTKptWahtWaZpVKhxX/Pt
- 6////72PhKVlT6htWKdsWKZoU6pwXvHl4/////7///7///7///////////7////+/v7/////////////
- /////wAA/////////////////////////v///v/////+/f///f//zvv/T8XUJmp4nqqxwMPEx83P6+rt
- //7+/////////////////////////////////////////////////////f///f7+/v7//v7/////8v3+
- nvL+Lqi2Omdypq6zt7m+0dPW9fT1/v////7//v7+/v7+/v///v//////////////+vTzpnJimmVOpGpX
- pGpXpmpUpG5Z6uDf/////f/+/f7+/////v///v7//v7////+/v7//f7+//7+/v7/////2MG7oGNNqW5Y
- p21ZoWVOwJmL////////////697bpmtYpmpWqHFcp2xXqW5ZnWJN2sO9/////f7+/v/+/f///f3+/v7+
- /v///v///v7+/v/+////////////6NrXp29cpWtVp2pXqHBZqm5ZoGFLxJ2N////0bOtomJOp21XqG5Y
- qG9bo2ROxJqO/////v///f7+/v///v7//f/////+/v/+/v7//v7+//7////+////383IoGRPqmpXqG9Z
- pWVPt41//v/+////////8ejnqXJgpmlTp21Yp25ZqW1Zn2FL0LSt/////////v//xJqNomRNp21ZqG1Y
- qW5YomNO2L+4/////v/////+/v7+////5NHLnmVOpmpXqG5ZpmpVpGhW6+Dd////u46DpGVPqW1YqGxY
- pmlSq3Jf8ufm//////////////////////////7//v//////////////////////AAD/////////////
- ///////////////////////+///////6/v+w9v84q7o8cHq3ub7CwsbR09jy8vL+///9////////////
- ///////////+/v7////////////////////////////////////////////X+P5t5PAee4hpgoq3uLu/
- wsbd4OT7/Pz////+/v7////////////////////////69fWweWqjaFOnbFinbVmma1Wob1vt4uD/////
- ///+///////////////////////////////////////////w6OirdGCmalSobVmkaFG0g3T7+vr9////
- ///Zv7eiYkypb1qob1mpbVika1WpcmDv6Ob//////v/9///+//7+///+/v/+///+///////////////4
- 8/PYw7uocGCoaFOnbluna1iqb1qmbFigYEzYu7L////TtK2hZE+obViobVeobVqiZE3GnpP/////////
- //7////////////////////////////+/v////7////39fSxe2unaFOmbFmkZlOtdWP07Oj////////f
- y8OkZFCobFenbVmmbVqobFekalfv4eH////////////BmY2jY06obVmobFmoblijZk/Xu7P/////////
- ///////////o2NShZVGna1eobFmnbFinalbu4N3///+8kIOkZE6pblqobFimaVOocFzt4uD/////////
- //////////////////7///////////////////////8AAP//////////////////////////////////
- //////////////P+/5Lx/CCPoVd5gr3Cw8HEyNna3fb19//////+////////////////////////////
- //////////////////////////////////////P8/rX0/zu+yyllbpuorLu4vMbMzvDu7v////7/////
- //////////////////////r19LF7aqVpVKltWaltWqZqVatwXO7i4P//////////////////////////
- //////////////////////7//////8GYiqFkTqhuWqdsVqdpVuXV0v/////+/ruMfKFjTKluW6dsWKpu
- WqJjTr6ViP39/v/////////////+//z///3///////////Dn59nEvcqnm7J9baNiTaRmUaluV6ltV6ht
- WqhuWqJlUKx2ZfXz8f///9G0rKBkT6htWKltWahuWqJjTMeelP///////////v//////////////////
- //////7///7//////v7//////8ulmqJiTKduXKhtWKJjTt/Kxf///////8KfkqNiTKluWaltWKluWqRl
- TrmKfP78/f///////////8GZjKNjTqhtWahtWqhuWaRlUNa6tP///////////////////+jW1KJlUalt
- WKZuWaZsWKhrVu7h3f///7yQg6JjTaltWqhtWKltWKdqVreHfMiilcWckMSck8SflMennO7g3f//////
- /////////////////////wAA////////////////////////////////////////////////////2/r/
- euLvHnuJcYyVx8TGxcjK3d/i+vn6////////////////////////////////////////////////////
- //////////////7+///+6fr/h+z4IoyYVnh/sba6ur7B2drc+fr7////////////////////////////
- +vb1sXtqo2hSqW1ZqW1apWlUrG9b7uLg////////////////////////////////////////////////
- /v//////3MjBomNNqW1aqW1ZoWFMz6+n////8ejmqHBbp2tVp2xYqGxYqW1ZpGRQ17+6/////v//////
- /v///v/+////////6+Lew56Tq3JfomJOoWBMpWhQqG5apm1Yp21YqG1ZqW5cpmdRomZR4M3I////////
- 0rOtomRPqG1YqGxYqG1aomNMx56U///////////+/////////////////////////v///f7+/v7//v//
- ////59bRo2RQp2xZqm9ao2FMw5mO////9/PxrnhnpmhTqG1ZqG1Zp25Yo2NL1bev/////////////v//
- wZmMo2NOqG1ZqW1apm1YpGVQ1rq1////////////////////6NfUo2VRqG1Ypm5ZpWtXp2pW7uHe////
- vZGDomNMqGxZqG5Zp21ZqG1Zo2ZPomNOoGNNoGFMoWJKn2BGrXps9vPy////////////////////////
- AAD//////////////////////////////////////////////v///v3//v7T+v9c1OMcc4CQnKPHyMrF
- yczh4uT7+/v//////////////////////////////////////////////////////////////v/////8
- //7H9/5Ty90fZ3SHmZ+0t7zFx8zr7Oz+//7////////////////////////69vWxe2ukaVKobViobFmm
- alWrblvu4uD////////////////////////////////////////////+///9///////18e+sc2Kna1Sn
- b1umZlG3g3X////bwLqiYk6pbVmoblenbVmmaFOsc2D27e3////+/////////v7////////XurSla1ei
- YEulalSmbVeobVmocFqlblinbVmnbVimZ1KgYUmmcl7ey8T//////v/////StKyhZE6pbVipbVmoblqi
- Y0zGn5T///////////7////////////////////////////+///9/v/+//7////59vewgHKkZ1CnbFmm
- alWweGf8+/rk1c+jZlCrblqpbVmpbVmma1WmbFns4N3////////////+///AmIykY06nbFiobVmmbFej
- ZE/VurT////////////////////o1tOjZVGobVimblmnbFeobFjt4N3///+9kIOjZE6pblqpblinbVqq
- bVqoa1WmaVSna1WlaVaoZ1SlZk6iZ1Ly6uj///////////////////////8AAP//////////////////
- /////////////////////////////////v/+/vz+/735/1LH1yZuepGhqMTEyMjMzeXl5/z8/P//////
- //////////////////////////////////////////////////////7//////+b7/4vt/COXpURuda6x
- trS6vtXY2fb4+P////////////////////////r19a95aaVqU6htWKhsWaZpVKptWu3h3///////////
- //////////////////////////////////7///7//////////8Gek6NjS6ZvWqdsV6RoVPLp58eilp9i
- TKdtWqhtWahuWaNiS8CWiv///////v7//////////v///9bAt6BfSadqVKhuWqhuWaduWKhuW6dsWKdr
- U6JhTKVkUa95Z8mmne/o5v////3///3//////9S0raFkT6hsWKhsWKhuWqJkTceflP///////////v//
- //////////////////////////7+//3+//////7//////8qroqBjTaltWaZtWKNoU+fb2M2toqJjTaht
- WadsWKhtWaNlT7aJev39/f////////////7+/8GYjKRkT6htWahtWqdsWKNlT9e7s///////////////
- /////+jX1KJlUaZsV6lvW6ZqV6ZrVu3g3f///72Qg6VlT6ltWaltWqltWKttV6ZoVaZuWKZvXKZuXKds
- WKdzYdK4sP///////////////////////////wAA////////////////////////////////////////
- /////v///v////7////+9/3/sPT/QL/MJGx2o6euxcbJy8/Q5+nq/P39///////+/v/+////////////
- /v7+/////////////////////////f7+/f///////f7/v/j/Ss/eHGx1i5adtrS6w8bJ6Onr///////+
- ///+/v7+////////+vT0rnlopWpUqG5aqW5ap2lVqm5a7eHe/////v//////////////////////////
- ////////////////////////////3szHoWNOqGxWqm1Zo2lUuo1/rnpnpWxUqG1aqW5aqW1ZoGFM2sbA
- /////f7+/v//////////8ujnp25foWhRqGpXqm5YqG1Zq25ZpGVQoGBLrXdnyqKZ4M3H9O/v////////
- /v///f/+////////0rStoWVQqGtYp21ZqG5ao2NNx5+V/////v///v7+////////////////////////
- /////v///////////v//////6dnXp2lWqGtWp2xZpWlTt4p7sH1rpWtXp21XqW1Xp21YoGFL0bOr////
- /v///////////v//wZmNo2ROp21YqG1Yp25apGZQ17yz/////v////7////+////6NfUomVRpmxXp25Z
- p2tXpmpX7eDd////vZGFpGZQqG5ZqG1YpmpVqHBd2cXC7ODf697d7ODd6uDd8ezs////////////////
- ////////////////AAD////////////////////////////////////////////+///+//7/////////
- ///z/P+r9f8/tsQtcHmmsbXKyMrQ0dTp6uz+/v3////9/v7////////////+/v7/////////////////
- ///////////9/v7+///////s/P+O7fsmm6tBanOqr7K2ub3W2dv7+vv////////////////////59fSu
- eWimalOoblmnbVelalWobVnt4d//////////////////////////////////////////////////////
- /v7+///38/Kve2ukZlKnbFmpblqkZVGkaFWqbluobVmqblmmaFOscmDz6+r////+///////////////Q
- s6uiYEunb1mobVqnbVenb1ijZVCxfGzXv7f28O7////////////+///+/////v/+/v7////////RtKyh
- ZE6na1ioblioblmjY0zHn5b////////9///+//7/////////////////////////////////////////
- ///9+/y3hXelZU+pbVmobVilZ1OlalWpbVqobFaobleobFema1fv5OH//////v7////////+///BmY2j
- ZE6obliobVmnbVikZVDYvLP////////9///+///////n09CkZVGqblqnb1mma1amalfs4Nz+//+9kIam
- ZVCoblqobVikZ1Kwemr49fb///////////////////////////////////////////////////8AAP//
- //////////////////////////////////////////7///7///3///7+///+/v///u37/qTx/TWtvDlv
- eKmxtsfIy8zS1urq6/z9/f3///////////////////////////////////////////7///7+//7/////
- //z+/sX1/k3S4R5odICUmra1ucXIyuvr7f////////////////////r3+LF8bqVoUqhuWahuWalpVKds
- V+fc2v////////////////////////////////////////////////7//v7+//7+/v///8efk6JkTqdt
- WqhtV6ltWahsWKhrWadsWKZtWaJkTcSXiv/+///////+/v////////78+7iMfqJpUahuWqZqV6duWKho
- VLOCc/Pp6f/////////////+//3+/v7///7+//////7//////v///9S2rqRmT6dsV6ltWKhtWaJkTMSe
- kf////7///7+/v/+/////////////////////////////////////////////////8+xqqBiS6htWaht
- WapuWqdsWKhsV6dsVqlsWKNmULiGePz6+/////3//////////////8KajaRjTaluWahuWahtV6VnUdi8
- s////////v7+/v7+/v///93Fv6BmTahrWKhvWaZpVqttXPPr6f7//72RhqdlUKdtWaZsV6RnUbB7aPjy
- 8v///////////////////////////////////////////////////wAA////////////////////////
- /////////////////////v///v///////v/////////////+8Pv+nvT+Nqy6M3B8q7C3yMnJytDR6evt
- //7+/////////////////////////////////////////////v///////v//////6fr+g+r5H4+bU3V+
- rbG0tbu93dzf/Pz8/////////////////Pz8tIZ4pWdRqG5ZqW5aqGtWpWdS3s7I////////////////
- /////////////////////////////////v/////+//7/////5tPNpGZQqXBaqG1Zp25ZqG1Ypm1Zp21Y
- qW1Zo2VQ2cG6/////v//////////////+/b1s4BwpGZSqnBapmxZqW1YpWVP2sTA//////39/v7/////
- /v/+/v///f///f////7+/v/////+////2L+6pGVQqG1Xp21YqG5YpWVNvpGC/////////v/+/v7//v//
- /////////////////////////////////////v//////7N7cpGlUpmtVp25aqGxYqG1Zp2xWqG5Zp2xY
- oWFM07as/////v///v/+////////////wpqNo2NNp21YqG1YqGxXpGRP2L61/////v/+/v7+/v//////
- wZyOoGNNpmpWqG5Zp2pUr3dp/Pn5//7/vZCEpGVQqG5Zp2tXpGhRsHtp+PLy////////////////////
- ////////////////////////////////AAD/////////////////////////////////////////////
- ///9///+//////7////+///////////t+/6b8vwyrbsycHqqr7XMy8zO0dTn6er7/Pz/////////////
- ///////////////////////+///+///+///+/v/////3/v+69P88uckvaHGYpaqztrnPz9Tz9PX/////
- ///////////+///DoJOjZE2obViobFimblmgYUzXt6z////+////////////////////////////////
- /////////////v/+/v7+///////39fSwe2umalSpbFinblmobFmpb1uobFimaVSrc2D17+7////+/v7+
- /v7////////69vW0f3CnZFGpb1qoblqnbFehZlHeysX////+/v/9///9////////////////////////
- ///+/v/////l2NeiZlSpbFinbFiobVmlaVOxemr69/b////+/v////////7/////////////////////
- ///////////////////////8+/u5iXykZVCmb1qpbViobFiobFipb1qmalWqbVvr393////////+/v//
- ///////////Cmo2kZE6obVmobFima1alYk3cxbz////+///////////n2NSmbFqmaVana1eobVmiZU29
- mIz+///+/P69kYOlZU+pblqobVikZ1Kwe2r48/L/////////////////////////////////////////
- //////////8AAP////////////////////////////////////////////////7///7///7+///+//7/
- /v7//v///////uv6/5rw/DGwvytxf6SrsM3Mzs/R0uXm5vn5+v////////7//v////7///7/////////
- ///////+//3///7+//////7//tr8/2zb7BxygHmLlLW1usDFyurr7f////////////7//////9i/tqBg
- TKhsWahuWahvWqNnUbF9bfXw8P////////////////////j29uLV1Pbx8P/////////////+//7+/v7/
- /v///////82nnp5jTKltWKdtWKdtWaluWalrWp9pULyShP/////////+/v////////////37+rWGe6Jl
- T6hwW6psV6ZvWKRkUMGXivn6+f////////////////n4+Ord3vz6+v////////7+//////r3+K55aaRo
- UqdsWKlsWKhuWaNkUNa7tf///////////////////////+zg3+nf4P////////////////3///////7/
- /////9G0rZ9hTKdsWKdtWqhtWahsV6hvWqVmUbaGeP/7/P////////7///7//////////8KajaJkTqhu
- WqhsWadsV6NjT8+zrP////////v4+NvIwah2ZKZnU6hyXKhtVqVsVqFfS+LKxf////v7/LuRhaZlUKdu
- WadsWqVnUq97avv4+P///////////////////////////////////////////////////wAA////////
- /////////////////////////////////////////////////////////v///v///v///f7+///+6vr/
- nvL+RbzMKXeDi5+kzcrMys/P3+Dj9/b4//3+/////////f7+/f39/v7+/////////////v7+//////7+
- ////6/3/juz6Jo2bWXmBsrS3ub/C4uTl/////////////v//////7+bmqG5do2hUqW1ZpW1YqG5ZpGlT
- sYZ34MzI7+Tg7+Pi5NbTyKqhtH5woGJNwJiK/f7///////7/////////////////////5tbTpmlWqWtX
- qW1ap21YqG1ZqGtZoWNM3MbA////////////////////////////yKujnmBJpW9aqGtYqGxYqG1Xo2dS
- u4uA2Lq14MrD2cG7yqmgtINyomRPzq2l////////////////////yKeboGFKqm1bpGpWp21Zp2tWqW1b
- y66m7N7c8Obi7ODc1728vJOIrHFdpW5e69/d/////v///v7//v/+/v////7/////8OXlpWxbqWxWqG5X
- qG1aqG5ZqW1an2JL0bGn/////////v/////+/v///v///f//w5uOo2RPqG1ZqGxZqWxXqG1XqHJfvJGD
- vJOGs4NwpWhTqGlUp25apmxZqXBcoV9KuY6C/fn6/v///Pz7vZGEomNOqW1Yp21Zp2pWqHFc2MC5693Y
- 6NrT6NjV6NjV6NnV6NjU7uXg////////////////////////AAD/////////////////////////////
- ///////////////////////////////////+///+//79/////v////7////1/f+w9v9Jydoieol7kJnH
- yMrO0M/c3eHi8Pa26e/R4eX79fTw7fDv7/P5+vn+///////////////+/v7////3/f+s8/8zpbJAbHOo
- sLO6vcHe3+H+/f3////////+/v7+//7////MraaeYUmqbVmobFmobVmqclqkZ1CiZVKnbVqmbFmiZlKh
- Yk2lalKnaVSiZFHn2dX////+/v7////////////////////8+/uzgnGkZVCpblmpbFmnbFenZVGqc1/y
- 6uj////////////////////////////r4d+jaVaoZ1KobVmobFinbViobFmhZk+iY02hZFCgY02eYUyl
- Z1KhY0m4joH+///////+/v7////////u5+Wma1uraVOlb1qla1eobleoa1WhY02ma1enb1ymbFWlY1Ck
- ZU+ka1WiYUrCnJD+/v/+///+/v/////+///8/v////////66jHyjZE6obVmobVupbFiobFelaFTt39v/
- /////v/+///+//79/////////v/Em46kZE2obVipbVmpbFinbFila1WhZk+fYk2laFKpa1aoalilbVio
- blmiX0muemrv6uj////////9+/28kIOiZU+pbFipbVmmbVmqbFijZU+kZVKjZlGjZ1KkZ1KkaFKiZ1Gj
- alXo2NT///////////////////8AAP//////////////////////////////////////////////////
- //////////////7///7//////v7///3//////////vb9/bz2/mbV5iCHlWeLlcTBxNLO0s7i5Ynp8jar
- tn+jrdDQ09/c3t/h5PDx8vz9/v////////7//////////r73/jmvvDdlcKStsry9wd7g4f3+/v//////
- //7+/v/+//////n29baJfJ9fSKZsV6hrWqZuWaVvWahsWKdqVqdrVqxtWatwXKZuWadtW6NhTLyUh///
- /////////////////////////////8ytpaFiTKpvWadsWKhuWaNlTb2Xiv7+/v////7/////////////
- ///////////+/8+yq59eSahsVqhuWqhtWahsWqduWqhuV6tsWqlsWaltWattWaNjTbyPf///////////
- /////////////9nCvZ5jT6hnUaptWqZsWahuWalvWaZsValrVqpsWKdtWahsV6huWKdrVaNoVOrc2v7/
- //7//v7+//7//v7//v7+/////9u/uqFiTqltWahuWKhuWaNmULeGd/v4+P////////////7///3//f//
- //3+/8SYjKRjTqduWadtWaltWqdtWKdtWKlsWqpvWqhvWahwW6ZuWKVnUaJhTLWKfPDl4v////3+////
- //38/ruOgaVmT6luWqluWKhuV6htWqRuV6pvWqZsWKdtWKltWaltWahvWZ5gScaimP//////////////
- /////wAA/////////////////////////////////////////////////////////////////////f7/
- /v///v/+/v///////f/+///+/v7+1Pf/e+TzLKa0PoWPlaarz8rLzd3khuTyLbLCQpSgprW41M3Q4drb
- 5+jo8/T1/Pv8//7+//7++fz8uPX/NqKwQGt1rrS4xMPG5eXn/////////v///v7//v7+/v7/////8+3s
- w5eNn2NLpGROqWhTqGtYpWxXpmxXp21XqG5ZqG9aqGpUomVOnWFJxKSZ/v///v/+////////////////
- ////////7+HfoWNOn2JMo2dTpmtVnWBK2MC8/////v7+/v/+/////////////////v/+////////z7Gm
- nmZQoGBKp2hSpmtVq2xZqG1ap21YqW1YpWdSomVPmlpCyqmh/////////v7+////////////////2cS7
- p3BdoGFKoWdRp2pYqGxXp25ZqWxXp2xXpGxXqGxWo2lSn2BJrHZn7eLe/////f/+/f7//v////7+/v7+
- ////8ennpW5bnWBJpmhQp2pVn1xIz7Oq/////////v///v////////7+/f///v//x6SZmVlBpWVOo2ZQ
- pGZRo2RPo2hRomNNoWVPo2NNoWFLpGhRtIV21722+/v6/////////f7+/v/+//7/yaadm1pCpmVRpWZS
- pWdUpWZRpGVQo2ZRpGZRo2ZRo2VPpGZQomVQoGFLrnpq/Pr7////////////////AAD/////////////
- ///////////////////////////////////////////////////////+/////v/+///////+/v///v//
- //////////7k+f6e8fxLxtgnjJxplp25uLvLztKn3+tQ0+EwscNborCjuLvX0tLl3t/s5+jz7O3y6+zU
- 8fh16fYlf4xviI+9wMHPz9Hy8fL////+///+/////v////7+/v7+///////9/f3hyMK8j4CpcF6jZVCj
- ZU+iZE+hZU+iY02kZVGrdWS+mIzn1dD9/Pv////+///////////////////////////9/v3Vvbe6j4G1
- f3ClbFqsfm317+7////9//7+///////////////////+///+/v7////////q2dTCnJCud2ejaFKiZU6j
- ZU+hZlGgZVCkZlSve2rKsKb49vX////////////////////+//7+//7////w5+PHpZmvfWqiaFWiZVCh
- ZE+hZVCjZVCiZFGpbFi1hnfStK327uz////9///+/////v7+///+//7+/v////7+///dxsG7kISwf26m
- blqreGft5eL////+/v/+/v7+/////////v/+//7////07OjFnJC2h3u3iXu4iXm4hnm5h3i5iHm5joLE
- m5HUtq7p2dX59/f////////+/v///v////7+/v/////48/HEo5exf22zgm60gnCzgm+1gW+0gXC0gXC1
- gW+0gXC0gW+zgG2wfGrGopf9/fz///////////////8AAP//////////////////////////////////
- //////////////////////////////////////////////////////////////////////////b9/771
- /mzg8SywwjeapoCkrLWzusTR1ZHf607R4iy4yl+7yoDDy6DJ0qDQ253f6Hzo+CyvwThwe7CzusvMzeHk
- 5vz+/f////////////////////////////////////////7//+/l5N/KxNrAuda4stK3sNq/uOLMyPLt
- 7P////////////////////////////////////////7///7///////////z4+Ozh4fTv7v////7+/v//
- //////////////////////////////////////////////bx8OXSzd3EvdrAudi/udvDvOLPzfj19f//
- //////////////////////////////7+/v////////////j19uPS0N3Dvda6s9Gzrte6tt3FwOra2f79
- /P////////////////////////////////////////////////////r49+7i4fLr6f//////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////37+vv4+Pz4+Pz4+Pv39/z39/v29vz49/z39/v39vv29vv39v//
- //7//////////////////wAA////////////////////////////////////////////////////////
- //////////////////////////////////////////////////////////795fr/p/D8X9rqJr/PMJup
- cY6Wvb2/xtbcoOHqbN7sRNPmMdHkPNfrIdbnKLbFTJagrbi91tTY4OLl9/j4////////////////////
- /////////////////v///v7//v///////////////////////////////////v///f///v//////////
- /////////////////v///f7+//7+/v///////////////////v7//////////v//////////////////
- /////////////////////v/////////////////////////////////////+/v//////////////////
- /////////////////v7+/////////////////////////////////////////v///v//////////////
- /////////////////////////////////////////////v/+////////////////////////////////
- /////////////////////////////v///////////////////////////////////////////v//////
- /v///v///v///////////////////////////////////////////////v///v//////////////////
- AAD/////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////v////7////f+f6Q7vw60eEWdoSVq7Di3d/v5uXu8/XZ
- 8/i87/aa5/Nyz92VxMrZ29zp5ebr7e77+/v////////+/v7////////////////////////////+//7+
- /v7+/v///v/+///+//7////////+///+/////v/+//7////////////////////////////////////+
- /////v7////+///9///////+///+///////9/v7+//7/////////////////////////////////////
- ///+///////+/////v/////////+///////////+///////////////////////////+/v7+/v7/////
- ///+/v/+/v/+//7////////+///////////+///+///////////////////////////////////////+
- /v7////+/v///v/9//7+/v/+/f//////////////////////////////////////////////////////
- ///////+///+///////////////+/v7////////////////////////////////+///+///////////+
- /v7////////////////////////////////9///9/v7///////////////8AAP//////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ///////////+//7+/////////v////z8/d73+8Lj6ODn6vf09v79/v///f/////////9/P/6+v/7+vv6
- +vr8/P////////7+/v////////////////////////////////////7///7///7+///+/v7//v3+//z+
- //7//v7///3///7///////////7+/v3///7+/v////////////////////////7///z+/v7///7+/v7/
- //////7+/v/+/v7+/v////////////////////////////////////////7///7///7+//////7+/v3/
- //7//v7+//7///7////////////////////////////////////////////////+///+//7//v////7+
- /v7+/v7//v///v/////////+//////////////////////////////////////////3//v7///7+//3+
- /v////////////////////////7+/v////////////////////////////////////7///7/////////
- ///////////////////////////////+//////7///3///7///7///7/////////////////////////
- ///////////+//////7//////////////////wAA////////////////////////////////////////
- //////////////////////////////////////////////////////////////////////7//f7+/v/+
- /v7//v/+///+/////////////v/+/v/////+/v/////+//7//////////////v///f/////+////////
- /////////////////////////////////////v///v///////////v///v7+/v///v////7/////////
- /////v///////////////////////////////v///f///v7//v///v7+/////v7+/v///////v/+/v//
- /////////////////////////////////////////////v7+/////////v///////v7+/////////v//
- /////////////////////v///v7+/////////////////v7+/v7+/v///v///////v7+////////////
- /////////////////////////////////////////////f///P/+//7+/v///v//////////////////
- /////////////////////////////////////////////////////////////v//////////////////
- /////////v///////////////v///v///////////////////////////////////////v///v//////
- ////////////////AAD/////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////////////////////////////8AAP//
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////////////////////wAA////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////AAD/////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////8AAP//////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////////////////////////////////////wAA////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////AAD/////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////8AAP//////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////wAA////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////AAD/////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////8AAP//////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////wAA////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- AAD/////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- //////////////////////////////////////////////////////////8AAP//////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- /////////////////////////////////////wAA////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- ////////////////AAA=
-</value>
- </data>
- <data name="button1.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="button1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="button1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="label1.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="label1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="label1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="myVersion.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="myVersion.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="myVersion.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="label3.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="label3.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="label3.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="label4.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="label4.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="label4.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>(Default)</value>
- </data>
- <data name="$this.Name">
- <value>AboutDialog</value>
- </data>
- <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>8, 8</value>
- </data>
- <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </data>
- <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>80</value>
- </data>
- <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </data>
- <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAEAMDAAAAAAAACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAgAoAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAMDcwADwyqYABAQEAAgICAAMDAwAERERABYW
- FgAcHBwAIiIiACkpKQBVVVUATU1NAEJCQgA5OTkAgHz/AFBQ/wCTANYA/+zMAMbW7wDW5+cAkKmtAAAA
- MwAAAGYAAACZAAAAzAAAMwAAADMzAAAzZgAAM5kAADPMAAAz/wAAZgAAAGYzAABmZgAAZpkAAGbMAABm
- /wAAmQAAAJkzAACZZgAAmZkAAJnMAACZ/wAAzAAAAMwzAADMZgAAzJkAAMzMAADM/wAA/2YAAP+ZAAD/
- zAAzAAAAMwAzADMAZgAzAJkAMwDMADMA/wAzMwAAMzMzADMzZgAzM5kAMzPMADMz/wAzZgAAM2YzADNm
- ZgAzZpkAM2bMADNm/wAzmQAAM5kzADOZZgAzmZkAM5nMADOZ/wAzzAAAM8wzADPMZgAzzJkAM8zMADPM
- /wAz/zMAM/9mADP/mQAz/8wAM///AGYAAABmADMAZgBmAGYAmQBmAMwAZgD/AGYzAABmMzMAZjNmAGYz
- mQBmM8wAZjP/AGZmAABmZjMAZmZmAGZmmQBmZswAZpkAAGaZMwBmmWYAZpmZAGaZzABmmf8AZswAAGbM
- MwBmzJkAZszMAGbM/wBm/wAAZv8zAGb/mQBm/8wAzAD/AP8AzACZmQAAmTOZAJkAmQCZAMwAmQAAAJkz
- MwCZAGYAmTPMAJkA/wCZZgAAmWYzAJkzZgCZZpkAmWbMAJkz/wCZmTMAmZlmAJmZmQCZmcwAmZn/AJnM
- AACZzDMAZsxmAJnMmQCZzMwAmcz/AJn/AACZ/zMAmcxmAJn/mQCZ/8wAmf//AMwAAACZADMAzABmAMwA
- mQDMAMwAmTMAAMwzMwDMM2YAzDOZAMwzzADMM/8AzGYAAMxmMwCZZmYAzGaZAMxmzACZZv8AzJkAAMyZ
- MwDMmWYAzJmZAMyZzADMmf8AzMwAAMzMMwDMzGYAzMyZAMzMzADMzP8AzP8AAMz/MwCZ/2YAzP+ZAMz/
- zADM//8AzAAzAP8AZgD/AJkAzDMAAP8zMwD/M2YA/zOZAP8zzAD/M/8A/2YAAP9mMwDMZmYA/2aZAP9m
- zADMZv8A/5kAAP+ZMwD/mWYA/5mZAP+ZzAD/mf8A/8wAAP/MMwD/zGYA/8yZAP/MzAD/zP8A//8zAMz/
- ZgD//5kA///MAGZm/wBm/2YAZv//AP9mZgD/Zv8A//9mACEApQBfX18Ad3d3AIaGhgCWlpYAy8vLALKy
- sgDX19cA3d3dAOPj4wDq6uoA8fHxAPj4+ADw+/8ApKCgAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
- AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMT
- ExMTExMTEyIiQiI8HTyCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwDODg4Nzc4MQMdAAAA
- AADDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOw4ODgyOCQAAAAdAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODIyMSIAHewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAA7DI3MSIdCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAADEyMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs4JAALAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwxJAAhAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4IgC8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAJAxJB0LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- ALwLCx0dIh0dCwATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACx0dAB0dIiIiIiId
- CxMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvAsdAB0dIiQkAyQkIiIiHSIAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAIgMxMVhZmZqZAyQiHR0AAAAAkAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAvAsdISIDMThZWVmgvaCZWVIkIh0AAB0dIh0hCwALCwALtgAAAAAAAAAAAAAAAOwAAB0iMTEx
- ODhYWZrDw8Ofn1hSJCIAHQAdACIAHSIkAwsdOAAAAADeExMTCwsLIiIkMTEyODg3MllZmprDw8PDwllS
- MSQdHQAAAB0AIiQkAAAAvDi8AAAxAzExMTExMTI4Nzg4ODc4ODhZXpnDw8PDml1YNwMkIh0AAB0hIiQA
- AAAAACIAAAA4ODc4Nzg4ODg4ODg4ODg4ODhZWV6avb2gmllZODcxJCIAAAAdIgMLAAAAACIAAACGE0+G
- T4bs7Oy8vLy8vAAxODg4ODg4NzIyMSQdHQAAvADsCwAiJDExAAAAwjjsAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAALMSQAAAAAAAAAAAAAAAAAEyI4MQsiOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALMSQAAAAA
- AAAAAAAAAAAAAAC8CwsAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8AAsAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP///////wAA////////
- AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
- /////wAA//8AAH//AAD//wAAf/8AAP//4AP//wAA///4B///AAD///gP//8AAP///B///wAA///8H///
- AAD///wf//8AAP///h///wAA///8H///AAD//+AD//8AAP//wAD//wAA//4AAD//AAD//AAAB/8AAP/w
- AAAAAwAA/8AAAAABAADAAAAAADgAAMAAAAAAPAAAwAAAAAA8AADAAAAAIDgAAP///j/+AQAA///+P/+D
- AAD///4///8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
- /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA
-</value>
- </data>
-</root>
\ No newline at end of file
+++ /dev/null
-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("")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("")]
-[assembly: AssemblyCopyright("")]
-[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:
-
-[assembly: AssemblyVersion("1.0.*")]
-
-//
-// 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\<configuration>. 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.
-//
-[assembly: AssemblyDelaySign(false)]
-[assembly: AssemblyKeyFile("")]
-[assembly: AssemblyKeyName("")]
+++ /dev/null
-using System;
-using System.Drawing;
-using System.Collections;
-using System.ComponentModel;
-using System.Windows.Forms;
-using System.Data;
-
-namespace IE
-{
- /// <summary>
- /// Summary description for Form1.
- /// </summary>
- public class Form1 : System.Windows.Forms.Form
- {
- private System.Windows.Forms.MainMenu mainMenu1;
- private System.Windows.Forms.MenuItem FileNew;
- private System.Windows.Forms.MenuItem FileClose;
- private System.Windows.Forms.MenuItem FileExport;
- private System.Windows.Forms.MenuItem FileImport;
- private System.Windows.Forms.MenuItem ImportBRep;
- private System.Windows.Forms.MenuItem ExportImage;
- private System.Windows.Forms.MenuItem File;
- private System.Windows.Forms.MenuItem Window;
- private System.Windows.Forms.ToolBarButton New;
- private System.Windows.Forms.ImageList imageList1;
- private System.Windows.Forms.ToolBarButton About;
- private System.Windows.Forms.StatusBar myStatusBar;
- private System.Windows.Forms.MenuItem ImportIges;
- private System.Windows.Forms.MenuItem ImportStep;
- private System.Windows.Forms.MenuItem ExportBRep;
- private System.Windows.Forms.MenuItem ExportIges;
- private System.Windows.Forms.MenuItem ExportStep;
- private System.Windows.Forms.MenuItem ExportStl;
- private System.Windows.Forms.MenuItem ExportVrml;
- private System.ComponentModel.IContainer components;
- private System.Windows.Forms.MenuItem menuItem1;
- private System.Windows.Forms.MenuItem menuItem2;
- private System.Windows.Forms.MenuItem menuItem3;
- private System.Windows.Forms.MenuItem View;
- private System.Windows.Forms.MenuItem Help;
- private System.Windows.Forms.MenuItem HelpAbout;
- private System.Windows.Forms.MenuItem ViewToolbar;
- private System.Windows.Forms.MenuItem ViewStatusBar;
- private System.Windows.Forms.MenuItem menuItem4;
- private System.Windows.Forms.MenuItem WindowCascade;
- private System.Windows.Forms.MenuItem WindowTile;
-
- protected IE.ModelFormat myModelFormat;
- private System.Windows.Forms.ToolBarButton wireframe;
- private System.Windows.Forms.ToolBarButton shading;
- private System.Windows.Forms.ToolBarButton toolBarButton1;
- private System.Windows.Forms.ToolBarButton color;
- private System.Windows.Forms.ToolBarButton transparency;
- private System.Windows.Forms.ToolBarButton delete;
- private System.Windows.Forms.ToolBarButton material;
- private System.Windows.Forms.ToolBarButton ZoomAll;
- private System.Windows.Forms.ToolBarButton ZoomWin;
- private System.Windows.Forms.ToolBarButton ZoomProg;
- private System.Windows.Forms.ToolBarButton Pan;
- private System.Windows.Forms.ToolBarButton PanGlo;
- private System.Windows.Forms.ToolBarButton Front;
- private System.Windows.Forms.ToolBarButton Back;
- private System.Windows.Forms.ToolBarButton TOP;
- private System.Windows.Forms.ToolBarButton BOTTOM;
- private System.Windows.Forms.ToolBarButton RIGHT;
- private System.Windows.Forms.ToolBarButton LEFT;
- private System.Windows.Forms.ToolBarButton Axo;
- private System.Windows.Forms.ToolBarButton Rot;
- private System.Windows.Forms.ToolBarButton Reset;
- private System.Windows.Forms.ToolBarButton HlrOn;
- private System.Windows.Forms.ToolBarButton HlrOff;
- private System.Windows.Forms.ToolBar toolBarTool;
- private System.Windows.Forms.ToolBar toolBarView;
- protected static int myNbOfChildren;
-
- public Form1()
- {
- //
- // Required for Windows Form Designer support
- //
- InitializeComponent();
-
- //
- // TODO: Add any constructor code after InitializeComponent call
- //
- IE.Form1.myNbOfChildren=0;
- }
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- protected override void Dispose( bool disposing )
- {
- if( disposing )
- {
- if (components != null)
- {
- components.Dispose();
- }
- }
- base.Dispose( disposing );
- }
-
- #region Windows Form Designer generated code
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- System.Configuration.AppSettingsReader configurationAppSettings = new System.Configuration.AppSettingsReader();
- System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(Form1));
- this.mainMenu1 = new System.Windows.Forms.MainMenu();
- this.File = new System.Windows.Forms.MenuItem();
- this.FileNew = new System.Windows.Forms.MenuItem();
- this.FileExport = new System.Windows.Forms.MenuItem();
- this.ImportBRep = new System.Windows.Forms.MenuItem();
- this.ImportIges = new System.Windows.Forms.MenuItem();
- this.ImportStep = new System.Windows.Forms.MenuItem();
- this.FileImport = new System.Windows.Forms.MenuItem();
- this.ExportBRep = new System.Windows.Forms.MenuItem();
- this.ExportIges = new System.Windows.Forms.MenuItem();
- this.ExportStep = new System.Windows.Forms.MenuItem();
- this.ExportStl = new System.Windows.Forms.MenuItem();
- this.ExportVrml = new System.Windows.Forms.MenuItem();
- this.menuItem3 = new System.Windows.Forms.MenuItem();
- this.ExportImage = new System.Windows.Forms.MenuItem();
- this.FileClose = new System.Windows.Forms.MenuItem();
- this.menuItem2 = new System.Windows.Forms.MenuItem();
- this.menuItem1 = new System.Windows.Forms.MenuItem();
- this.View = new System.Windows.Forms.MenuItem();
- this.ViewToolbar = new System.Windows.Forms.MenuItem();
- this.ViewStatusBar = new System.Windows.Forms.MenuItem();
- this.Window = new System.Windows.Forms.MenuItem();
- this.menuItem4 = new System.Windows.Forms.MenuItem();
- this.WindowCascade = new System.Windows.Forms.MenuItem();
- this.WindowTile = new System.Windows.Forms.MenuItem();
- this.Help = new System.Windows.Forms.MenuItem();
- this.HelpAbout = new System.Windows.Forms.MenuItem();
- this.toolBarTool = new System.Windows.Forms.ToolBar();
- this.New = new System.Windows.Forms.ToolBarButton();
- this.About = new System.Windows.Forms.ToolBarButton();
- this.toolBarButton1 = new System.Windows.Forms.ToolBarButton();
- this.wireframe = new System.Windows.Forms.ToolBarButton();
- this.shading = new System.Windows.Forms.ToolBarButton();
- this.color = new System.Windows.Forms.ToolBarButton();
- this.material = new System.Windows.Forms.ToolBarButton();
- this.transparency = new System.Windows.Forms.ToolBarButton();
- this.delete = new System.Windows.Forms.ToolBarButton();
- this.imageList1 = new System.Windows.Forms.ImageList(this.components);
- this.myStatusBar = new System.Windows.Forms.StatusBar();
- this.toolBarView = new System.Windows.Forms.ToolBar();
- this.ZoomAll = new System.Windows.Forms.ToolBarButton();
- this.ZoomWin = new System.Windows.Forms.ToolBarButton();
- this.ZoomProg = new System.Windows.Forms.ToolBarButton();
- this.Pan = new System.Windows.Forms.ToolBarButton();
- this.PanGlo = new System.Windows.Forms.ToolBarButton();
- this.Front = new System.Windows.Forms.ToolBarButton();
- this.Back = new System.Windows.Forms.ToolBarButton();
- this.TOP = new System.Windows.Forms.ToolBarButton();
- this.BOTTOM = new System.Windows.Forms.ToolBarButton();
- this.LEFT = new System.Windows.Forms.ToolBarButton();
- this.RIGHT = new System.Windows.Forms.ToolBarButton();
- this.Axo = new System.Windows.Forms.ToolBarButton();
- this.Rot = new System.Windows.Forms.ToolBarButton();
- this.Reset = new System.Windows.Forms.ToolBarButton();
- this.HlrOn = new System.Windows.Forms.ToolBarButton();
- this.HlrOff = new System.Windows.Forms.ToolBarButton();
- this.SuspendLayout();
- //
- // mainMenu1
- //
- this.mainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
- this.File,
- this.View,
- this.Window,
- this.Help});
- //
- // File
- //
- this.File.Index = 0;
- this.File.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
- this.FileNew,
- this.FileExport,
- this.FileImport,
- this.FileClose,
- this.menuItem2,
- this.menuItem1});
- this.File.Text = "&File";
- this.File.Popup += new System.EventHandler(this.File_Popup);
- //
- // FileNew
- //
- this.FileNew.Index = 0;
- this.FileNew.Text = "&New";
- this.FileNew.Click += new System.EventHandler(this.menuItem2_Click);
- //
- // FileExport
- //
- this.FileExport.Index = 1;
- this.FileExport.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
- this.ImportBRep,
- this.ImportIges,
- this.ImportStep});
- this.FileExport.Text = "&Import";
- this.FileExport.Visible = false;
- //
- // ImportBRep
- //
- this.ImportBRep.Index = 0;
- this.ImportBRep.Text = "&BRep ...";
- this.ImportBRep.Click += new System.EventHandler(this.ImportBRep_Click);
- //
- // ImportIges
- //
- this.ImportIges.Index = 1;
- this.ImportIges.Text = "&Iges ...";
- this.ImportIges.Click += new System.EventHandler(this.ImportIges_Click);
- //
- // ImportStep
- //
- this.ImportStep.Index = 2;
- this.ImportStep.Text = "&Step ...";
- this.ImportStep.Click += new System.EventHandler(this.ImportStep_Click);
- //
- // FileImport
- //
- this.FileImport.Index = 2;
- this.FileImport.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
- this.ExportBRep,
- this.ExportIges,
- this.ExportStep,
- this.ExportStl,
- this.ExportVrml,
- this.menuItem3,
- this.ExportImage});
- this.FileImport.Text = "&Export";
- this.FileImport.Visible = false;
- this.FileImport.Popup += new System.EventHandler(this.FileImport_Popup);
- //
- // ExportBRep
- //
- this.ExportBRep.Enabled = false;
- this.ExportBRep.Index = 0;
- this.ExportBRep.Text = "&BRep ...";
- this.ExportBRep.Click += new System.EventHandler(this.ExportBRep_Click);
- //
- // ExportIges
- //
- this.ExportIges.Enabled = false;
- this.ExportIges.Index = 1;
- this.ExportIges.Text = "&Iges ...";
- this.ExportIges.Click += new System.EventHandler(this.ExportIges_Click);
- //
- // ExportStep
- //
- this.ExportStep.Enabled = false;
- this.ExportStep.Index = 2;
- this.ExportStep.Text = "&Step ...";
- this.ExportStep.Click += new System.EventHandler(this.ExportStep_Click);
- //
- // ExportStl
- //
- this.ExportStl.Enabled = false;
- this.ExportStl.Index = 3;
- this.ExportStl.Text = "&Stl ...";
- this.ExportStl.Click += new System.EventHandler(this.ExportStl_Click);
- //
- // ExportVrml
- //
- this.ExportVrml.Enabled = false;
- this.ExportVrml.Index = 4;
- this.ExportVrml.Text = "&Vrml ...";
- this.ExportVrml.Click += new System.EventHandler(this.ExportVrml_Click);
- //
- // menuItem3
- //
- this.menuItem3.Index = 5;
- this.menuItem3.Text = "-";
- //
- // ExportImage
- //
- this.ExportImage.Index = 6;
- this.ExportImage.Text = "Image ...";
- this.ExportImage.Click += new System.EventHandler(this.ExportImage_Click);
- //
- // FileClose
- //
- this.FileClose.Enabled = false;
- this.FileClose.Index = 3;
- this.FileClose.Text = "&Close";
- this.FileClose.Click += new System.EventHandler(this.menuItem3_Click);
- //
- // menuItem2
- //
- this.menuItem2.Index = 4;
- this.menuItem2.Text = "-";
- //
- // menuItem1
- //
- this.menuItem1.Index = 5;
- this.menuItem1.Text = "&Quit";
- this.menuItem1.Click += new System.EventHandler(this.menuItem1_Click);
- //
- // View
- //
- this.View.Index = 1;
- this.View.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
- this.ViewToolbar,
- this.ViewStatusBar});
- this.View.Text = "&View";
- //
- // ViewToolbar
- //
- this.ViewToolbar.Checked = true;
- this.ViewToolbar.Index = 0;
- this.ViewToolbar.Text = "&Toolbar";
- this.ViewToolbar.Click += new System.EventHandler(this.ViewToolbar_Click);
- //
- // ViewStatusBar
- //
- this.ViewStatusBar.Checked = true;
- this.ViewStatusBar.Index = 1;
- this.ViewStatusBar.Text = "&Statusbar";
- this.ViewStatusBar.Click += new System.EventHandler(this.ViewStatusBar_Click);
- //
- // Window
- //
- this.Window.Index = 2;
- this.Window.MdiList = true;
- this.Window.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
- this.menuItem4,
- this.WindowCascade,
- this.WindowTile});
- this.Window.Text = "&Window";
- this.Window.Visible = false;
- //
- // menuItem4
- //
- this.menuItem4.Index = 0;
- this.menuItem4.Text = "&New 3d View";
- this.menuItem4.Click += new System.EventHandler(this.menuItem4_Click);
- //
- // WindowCascade
- //
- this.WindowCascade.Index = 1;
- this.WindowCascade.Text = "&Cascade";
- this.WindowCascade.Click += new System.EventHandler(this.WindowCascade_Click);
- //
- // WindowTile
- //
- this.WindowTile.Index = 2;
- this.WindowTile.Text = "&Tile";
- this.WindowTile.Click += new System.EventHandler(this.WindowTile_Click);
- //
- // Help
- //
- this.Help.Index = 3;
- this.Help.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
- this.HelpAbout});
- this.Help.Text = "&Help";
- //
- // HelpAbout
- //
- this.HelpAbout.Index = 0;
- this.HelpAbout.Shortcut = System.Windows.Forms.Shortcut.F1;
- this.HelpAbout.Text = "&About";
- this.HelpAbout.Click += new System.EventHandler(this.HelpAbout_Click);
- //
- // toolBarTool
- //
- this.toolBarTool.AccessibleRole = System.Windows.Forms.AccessibleRole.ToolBar;
- this.toolBarTool.Buttons.AddRange(new System.Windows.Forms.ToolBarButton[] {
- this.New,
- this.About,
- this.toolBarButton1,
- this.wireframe,
- this.shading,
- this.color,
- this.material,
- this.transparency,
- this.delete});
- this.toolBarTool.DropDownArrows = true;
- this.toolBarTool.ImageList = this.imageList1;
- this.toolBarTool.Location = new System.Drawing.Point(0, 0);
- this.toolBarTool.Name = "toolBarTool";
- this.toolBarTool.ShowToolTips = true;
- this.toolBarTool.Size = new System.Drawing.Size(560, 28);
- this.toolBarTool.TabIndex = 1;
- this.toolBarTool.Enter += new System.EventHandler(this.menuItem3_Click);
- this.toolBarTool.ButtonClick += new System.Windows.Forms.ToolBarButtonClickEventHandler(this.toolBar1_ButtonClick);
- this.toolBarTool.MouseHover += new System.EventHandler(this.toolBar1_MouseHover);
- this.toolBarTool.MouseLeave += new System.EventHandler(this.toolBar1_MouseLeave);
- //
- // New
- //
- this.New.ImageIndex = 0;
- this.New.ToolTipText = "New";
- this.New.Visible = ((bool)(configurationAppSettings.GetValue("New.Visible", typeof(bool))));
- //
- // About
- //
- this.About.ImageIndex = 1;
- this.About.ToolTipText = "About(F1)";
- this.About.Visible = ((bool)(configurationAppSettings.GetValue("About.Visible", typeof(bool))));
- //
- // toolBarButton1
- //
- this.toolBarButton1.Style = System.Windows.Forms.ToolBarButtonStyle.Separator;
- //
- // wireframe
- //
- this.wireframe.Enabled = ((bool)(configurationAppSettings.GetValue("wireframe.Enabled", typeof(bool))));
- this.wireframe.ImageIndex = 2;
- this.wireframe.Pushed = ((bool)(configurationAppSettings.GetValue("wireframe.Pushed", typeof(bool))));
- this.wireframe.ToolTipText = "Wireframe";
- this.wireframe.Visible = ((bool)(configurationAppSettings.GetValue("wireframe.Visible", typeof(bool))));
- //
- // shading
- //
- this.shading.Enabled = ((bool)(configurationAppSettings.GetValue("shading.Enabled", typeof(bool))));
- this.shading.ImageIndex = 3;
- this.shading.Pushed = ((bool)(configurationAppSettings.GetValue("shading.Pushed", typeof(bool))));
- this.shading.ToolTipText = "Shading";
- this.shading.Visible = ((bool)(configurationAppSettings.GetValue("shading.Visible", typeof(bool))));
- //
- // color
- //
- this.color.Enabled = ((bool)(configurationAppSettings.GetValue("color.Enabled", typeof(bool))));
- this.color.ImageIndex = 4;
- this.color.ToolTipText = "Color";
- this.color.Visible = ((bool)(configurationAppSettings.GetValue("color.Visible", typeof(bool))));
- //
- // material
- //
- this.material.Enabled = ((bool)(configurationAppSettings.GetValue("material.Enabled", typeof(bool))));
- this.material.ImageIndex = 5;
- this.material.ToolTipText = "Material";
- this.material.Visible = ((bool)(configurationAppSettings.GetValue("material.Visible", typeof(bool))));
- //
- // transparency
- //
- this.transparency.Enabled = ((bool)(configurationAppSettings.GetValue("transparency.Enabled", typeof(bool))));
- this.transparency.ImageIndex = 6;
- this.transparency.ToolTipText = "Transparency";
- this.transparency.Visible = ((bool)(configurationAppSettings.GetValue("transparency.Visible", typeof(bool))));
- //
- // delete
- //
- this.delete.Enabled = ((bool)(configurationAppSettings.GetValue("delete.Enabled", typeof(bool))));
- this.delete.ImageIndex = 7;
- this.delete.ToolTipText = "Delete";
- this.delete.Visible = ((bool)(configurationAppSettings.GetValue("delete.Visible", typeof(bool))));
- //
- // imageList1
- //
- this.imageList1.ImageSize = new System.Drawing.Size(16, 16);
- this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
- this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
- //
- // myStatusBar
- //
- this.myStatusBar.AccessibleRole = System.Windows.Forms.AccessibleRole.StatusBar;
- this.myStatusBar.Location = new System.Drawing.Point(0, 363);
- this.myStatusBar.Name = "myStatusBar";
- this.myStatusBar.Size = new System.Drawing.Size(560, 22);
- this.myStatusBar.TabIndex = 3;
- //
- // toolBarView
- //
- this.toolBarView.AccessibleRole = System.Windows.Forms.AccessibleRole.ToolBar;
- this.toolBarView.Buttons.AddRange(new System.Windows.Forms.ToolBarButton[] {
- this.ZoomAll,
- this.ZoomWin,
- this.ZoomProg,
- this.Pan,
- this.PanGlo,
- this.Front,
- this.Back,
- this.TOP,
- this.BOTTOM,
- this.LEFT,
- this.RIGHT,
- this.Axo,
- this.Rot,
- this.Reset,
- this.HlrOn,
- this.HlrOff});
- this.toolBarView.DropDownArrows = true;
- this.toolBarView.ImageList = this.imageList1;
- this.toolBarView.Location = new System.Drawing.Point(0, 28);
- this.toolBarView.Name = "toolBarView";
- this.toolBarView.ShowToolTips = true;
- this.toolBarView.Size = new System.Drawing.Size(560, 28);
- this.toolBarView.TabIndex = 5;
- this.toolBarView.Visible = false;
- this.toolBarView.Wrappable = false;
- this.toolBarView.ButtonClick += new System.Windows.Forms.ToolBarButtonClickEventHandler(this.toolBarView_ButtonClick);
- this.toolBarView.MouseHover += new System.EventHandler(this.toolBarView_MouseHover);
- this.toolBarView.MouseLeave += new System.EventHandler(this.toolBarView_MouseLeave);
- //
- // ZoomAll
- //
- this.ZoomAll.ImageIndex = 8;
- this.ZoomAll.ToolTipText = "FitAll";
- //
- // ZoomWin
- //
- this.ZoomWin.ImageIndex = 9;
- this.ZoomWin.ToolTipText = "Zoom Window";
- //
- // ZoomProg
- //
- this.ZoomProg.ImageIndex = 10;
- this.ZoomProg.ToolTipText = "Dynamic Zooming";
- //
- // Pan
- //
- this.Pan.ImageIndex = 11;
- this.Pan.ToolTipText = "Dynamic Panning";
- //
- // PanGlo
- //
- this.PanGlo.ImageIndex = 12;
- this.PanGlo.ToolTipText = "GlobalPanning";
- //
- // Front
- //
- this.Front.ImageIndex = 13;
- this.Front.ToolTipText = "Front";
- //
- // Back
- //
- this.Back.ImageIndex = 14;
- this.Back.ToolTipText = "Back";
- //
- // TOP
- //
- this.TOP.ImageIndex = 15;
- this.TOP.ToolTipText = "Top";
- //
- // BOTTOM
- //
- this.BOTTOM.ImageIndex = 16;
- this.BOTTOM.ToolTipText = "Bottom";
- //
- // LEFT
- //
- this.LEFT.ImageIndex = 17;
- this.LEFT.ToolTipText = "Left";
- //
- // RIGHT
- //
- this.RIGHT.ImageIndex = 18;
- this.RIGHT.ToolTipText = "Right";
- //
- // Axo
- //
- this.Axo.ImageIndex = 19;
- this.Axo.ToolTipText = "Axo";
- //
- // Rot
- //
- this.Rot.ImageIndex = 20;
- this.Rot.ToolTipText = "Dynamic Rotation";
- //
- // Reset
- //
- this.Reset.ImageIndex = 21;
- this.Reset.ToolTipText = "Reset";
- //
- // HlrOn
- //
- this.HlrOn.ImageIndex = 22;
- this.HlrOn.Pushed = true;
- this.HlrOn.ToolTipText = "Hidden On";
- //
- // HlrOff
- //
- this.HlrOff.ImageIndex = 23;
- this.HlrOff.ToolTipText = "Hidden Off";
- //
- // Form1
- //
- this.AccessibleRole = System.Windows.Forms.AccessibleRole.Application;
- this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
- this.ClientSize = new System.Drawing.Size(560, 385);
- this.Controls.Add(this.toolBarView);
- this.Controls.Add(this.myStatusBar);
- this.Controls.Add(this.toolBarTool);
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.IsMdiContainer = true;
- this.Menu = this.mainMenu1;
- this.Name = "Form1";
- this.Text = "Sample Import / Export";
- this.Activated += new System.EventHandler(this.Form1_Activated);
- this.ResumeLayout(false);
-
- }
- #endregion
-
- /// <summary>
- /// The main entry point for the application.
- /// </summary>
- [STAThread]
- static void Main()
- {
- Application.Run(new Form1());
- }
-
- private void menuItem2_Click(object sender, System.EventArgs e)
- {
-
- this.Cursor=System.Windows.Forms.Cursors.WaitCursor;
- this.OnNewFile();
- }
-
- private void menuItem3_Click(object sender, System.EventArgs e)
- {
- if ( this.MdiChildren.Length > 0 )
- this.ActiveMdiChild.Close();
-
- }
-
- private void ImportBRep_Click(object sender, System.EventArgs e)
- {
-
- Form2 curForm = (Form2) this.ActiveMdiChild;
- if (curForm == null)
- return;
- this.myModelFormat=ModelFormat.BREP;
- curForm.ImportModel(this.myModelFormat);
-
- }
-
- private void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
- {
-
- Form2 curForm = (Form2) this.ActiveMdiChild;
- switch(toolBarTool.Buttons.IndexOf(e.Button))
- {
- case 0:
- this.Cursor=System.Windows.Forms.Cursors.WaitCursor;
- this.OnNewFile();
- break;
- case 1:
- AboutDialog myDlg = new AboutDialog();
- myDlg.ShowDialog(this);
- break;
-
- case 2: //just separator
- break;
- case 3:
- if (curForm == null)
- return;
- curForm.SetDisplayMode(0); //wireframe
- this.wireframe.Enabled=false;
- this.shading.Enabled=true;
- this.transparency.Enabled=false;
- break;
- case 4:
- if (curForm == null)
- return;
- curForm.SetDisplayMode(1); //shading
- this.shading.Enabled=false;
- this.wireframe.Enabled=true;
- this.transparency.Enabled=true;
- break;
- case 5:
- if (curForm == null)
- return;
- curForm.ChangeColor(true);
- break;
- case 6:
- if (curForm == null)
- return;
- MaterialDialog m = new MaterialDialog();
- m.View=curForm.View;
- m.ShowDialog(curForm);
- break;
- case 7:
- if (curForm == null)
- return;
- IE.TransparencyDialog t = new TransparencyDialog();
- t.View=curForm.View;
- t.ShowDialog(curForm);
- break;
- case 8:
- if (curForm == null)
- return;
- curForm.DeleteObjects();
- break;
- default:
- break;
- }
- }
-
- private void toolBar1_MouseHover(object sender, System.EventArgs e)
- {
- this.myStatusBar.Text="Document toolbar";
- }
-
- private void toolBar1_MouseLeave(object sender, System.EventArgs e)
- {
- this.myStatusBar.Text="";
- }
-
- private void ImportCsfdb_Click(object sender, System.EventArgs e)
- {
- Form2 curForm = (Form2) this.ActiveMdiChild;
- if (curForm == null)
- return;
- this.myModelFormat=IE.ModelFormat.CSFDB;
- curForm.ImportModel(this.myModelFormat);
- }
-
- private void ImportIges_Click(object sender, System.EventArgs e)
- {
- Form2 curForm = (Form2) this.ActiveMdiChild;
- if (curForm == null)
- return;
- this.myModelFormat=IE.ModelFormat.IGES;
- curForm.ImportModel(this.myModelFormat);
- }
-
- private void ImportStep_Click(object sender, System.EventArgs e)
- {
- Form2 curForm = (Form2) this.ActiveMdiChild;
- if (curForm == null)
- return;
- this.myModelFormat=IE.ModelFormat.STEP;
- curForm.ImportModel(this.myModelFormat);
- }
-
- private void ExportBRep_Click(object sender, System.EventArgs e)
- {
- Form2 curForm = (Form2) this.ActiveMdiChild;
- if (curForm == null)
- return;
- this.myModelFormat=IE.ModelFormat.BREP;
- curForm.ExportModel(this.myModelFormat);
- }
-
- private void ExportCsfdb_Click(object sender, System.EventArgs e)
- {
- Form2 curForm = (Form2) this.ActiveMdiChild;
- if (curForm == null)
- return;
- this.myModelFormat=IE.ModelFormat.CSFDB;
- curForm.ExportModel(this.myModelFormat);
- }
-
- private void ExportIges_Click(object sender, System.EventArgs e)
- {
- Form2 curForm = (Form2) this.ActiveMdiChild;
- if (curForm == null)
- return;
- this.myModelFormat=IE.ModelFormat.IGES;
- curForm.ExportModel(this.myModelFormat);
- }
-
- private void ExportStep_Click(object sender, System.EventArgs e)
- {
- Form2 curForm = (Form2) this.ActiveMdiChild;
- if (curForm == null)
- return;
- this.myModelFormat=IE.ModelFormat.STEP;
- curForm.ExportModel(this.myModelFormat);
- }
-
- private void ExportStl_Click(object sender, System.EventArgs e)
- {
- Form2 curForm = (Form2) this.ActiveMdiChild;
- if (curForm == null)
- return;
- this.myModelFormat=IE.ModelFormat.STL;
- curForm.ExportModel(this.myModelFormat);
- }
-
- private void ExportVrml_Click(object sender, System.EventArgs e)
- {
- Form2 curForm = (Form2) this.ActiveMdiChild;
- if (curForm == null)
- return;
- this.myModelFormat=IE.ModelFormat.VRML;
- curForm.ExportModel(this.myModelFormat);
- }
-
- private void ExportImage_Click(object sender, System.EventArgs e)
- {
- Form2 curForm = (Form2) this.ActiveMdiChild;
- if (curForm == null)
- return;
- this.myModelFormat=IE.ModelFormat.IMAGE;
- curForm.ExportModel(this.myModelFormat);
- }
-
- private void HelpAbout_Click(object sender, System.EventArgs e)
- {
- AboutDialog myDlg = new AboutDialog();
- myDlg.ShowDialog(this);
- }
-
- private void ViewToolbar_Click(object sender, System.EventArgs e)
- {
-
- if (this.ViewToolbar.Checked)
- {
- if (this.MdiChildren.Length > 0)
- {
- this.New.Visible=false;
- this.About.Visible=false;
- }
- else
- this.toolBarTool.Hide();
- this.ViewToolbar.Checked=false;
- }
- else
- {
- if (this.MdiChildren.Length > 0)
- {
- this.New.Visible=true;
- this.About.Visible=true;
- }
- else
- this.toolBarTool.Show();
- this.ViewToolbar.Checked=true;
- }
-
- }
-
- private void ViewStatusBar_Click(object sender, System.EventArgs e)
- {
- if (this.ViewStatusBar.Checked)
- {
- this.myStatusBar.Hide();
- this.ViewStatusBar.Checked=false;
- }
- else
- {
- this.myStatusBar.Show();
- this.ViewStatusBar.Checked=true;
- }
- }
-
- public void OnNewFile()
- {
- Form2 newForm = new Form2();
- newForm.MdiParent=this;
- IE.Form1.myNbOfChildren=IE.Form1.myNbOfChildren+1;
- string str = System.String.Format(newForm.Text+" {0}:{1}", IE.Form1.myNbOfChildren, 1);
- newForm.Text=str;;
- newForm.Show();
- newForm.InitView();
- newForm.InitV3D();
- this.FileExport.Visible=true;
- this.FileImport.Visible=true;
- this.Window.Visible=true;
- this.wireframe.Visible=true;
- this.shading.Visible=true;
- this.color.Visible=true;
- this.material.Visible=true;
- this.transparency.Visible=true;
- this.delete.Visible=true;
- this.Cursor=System.Windows.Forms.Cursors.Default;
- this.toolBarView.Visible=true;
- }
-
- private void FileImport_Popup(object sender, System.EventArgs e)
- {
- IE.Form2 curForm = (IE.Form2) this.ActiveMdiChild;
- if (curForm==null)
- return;
- if ( curForm.View.IsObjectSelected())
- {
- this.ExportBRep.Enabled=true;
- this.ExportIges.Enabled=true;
- this.ExportStep.Enabled=true;
- this.ExportVrml.Enabled=true;
- this.ExportStl.Enabled=true;
- }
-
- }
-
- private void menuItem1_Click(object sender, System.EventArgs e)
- {
- this.Close();
- }
-
- private void File_Popup(object sender, System.EventArgs e)
- {
- if (this.MdiChildren.Length > 0 )
- this.FileClose.Enabled=true;
- else
- {
- this.FileClose.Enabled=false;
- this.FileExport.Visible=false;
- this.FileImport.Visible=false;
- }
- }
-
- private void menuItem4_Click(object sender, System.EventArgs e)
- {
- IE.Form2 curForm = (IE.Form2) this.ActiveMdiChild;
- IE.Form2 newView = new Form2();
- newView.MdiParent=this;
- newView.Show();
- newView.InitView();
- newView.SetContext(curForm.View);
- newView.View.CreateNewView(newView.Handle);
- string title = curForm.Text;
- System.Text.StringBuilder bld= new System.Text.StringBuilder(title);
- char c = bld[title.Length-1];
- string s=c.ToString();
- int NbOfView = newView.View.CharToInt(s);
- NbOfView++;
- bld.Remove(title.Length-1, 1);
- bld.Append(NbOfView);
- newView.Text=bld.ToString();
- }
-
- private void WindowCascade_Click(object sender, System.EventArgs e)
- {
- this.LayoutMdi(System.Windows.Forms.MdiLayout.Cascade);
- }
-
- private void WindowTile_Click(object sender, System.EventArgs e)
- {
- this.LayoutMdi(System.Windows.Forms.MdiLayout.TileVertical);
- }
-
- public void SelectionChanged()
- {
- if (this.MdiChildren.Length == 0 )
- return;
- IE.Form2 curForm = (IE.Form2) this.ActiveMdiChild;
- if ( curForm == null )
- return;
- switch (curForm.View.DisplayMode())
- {
- case -1:
- this.shading.Enabled=false;
- this.wireframe.Enabled=false;
- break;
- case 0:
- this.wireframe.Enabled=false;
- this.shading.Enabled=true;
- this.transparency.Enabled=false;
- break;
- case 1:
- this.wireframe.Enabled=true;
- this.shading.Enabled=false;
- this.transparency.Enabled=true;
- break;
- case 10:
- this.wireframe.Enabled=true;
- this.shading.Enabled=true;
- this.transparency.Enabled=true;
- break;
- default:
- break;
- }
- bool IsSelected = curForm.View.IsObjectSelected();
- if (IsSelected)
- {
- this.color.Enabled=true;
- this.material.Enabled=true;
- this.delete.Enabled=true;
- }
- else
- {
- this.color.Enabled=false;
- this.material.Enabled=false;
- this.transparency.Enabled=false;
- this.delete.Enabled=false;
- }
- if (curForm.DegenerateMode)
- {
- this.HlrOff.Pushed=false;
- this.HlrOn.Pushed=true;
- }
- else
- {
- this.HlrOff.Pushed=true;
- this.HlrOn.Pushed=false;
- }
- if (curForm.Mode == IE.CurrentAction3d.CurAction3d_WindowZooming)
- this.ZoomWin.Pushed=false;
-
- }
-
- public StatusBar StatusBar
- {
- get
- {
- return this.myStatusBar;
- }
- }
-
- public void OnFileClose()
- {
- if ( this.MdiChildren.Length <= 1)
- {
- this.FileClose.Enabled=false;
- this.Window.Visible=false;
- this.wireframe.Visible=false;
- this.shading.Visible=false;
- this.color.Visible=false;
- this.material.Visible=false;
- this.transparency.Visible=false;
- this.delete.Visible=false;
- this.toolBarView.Visible=false;
- }
- }
-
- private void toolBarView_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
- {
- IE.Form2 curForm = (IE.Form2) this.ActiveMdiChild;
- if ( curForm == null )
- return;
- switch(toolBarView.Buttons.IndexOf(e.Button))
- {
- case 0:
- curForm.View.ZoomAllView();
- break;
- case 1:
- curForm.Mode=CurrentAction3d.CurAction3d_WindowZooming;
- this.ZoomWin.Pushed=true;
- break;
- case 2:
- curForm.Mode=CurrentAction3d.CurAction3d_DynamicZooming;
- break;
- case 3:
- curForm.Mode=CurrentAction3d.CurAction3d_DynamicPanning;
- break;
- case 4:
- curForm.Zoom=curForm.View.Scale();
- curForm.Mode=CurrentAction3d.CurAction3d_GlobalPanning;
- break;
- case 5:
- curForm.View.FrontView();
- break;
- case 6:
- curForm.View.TopView();
- break;
- case 7:
- curForm.View.LeftView();
- break;
- case 8:
- curForm.View.BackView();
- break;
- case 9:
- curForm.View.RightView();
- break;
- case 10:
- curForm.View.BottomView();
- break;
- case 11:
- curForm.View.AxoView();
- break;
- case 12:
- curForm.Mode=CurrentAction3d.CurAction3d_DynamicRotation;
- break;
- case 13:
- curForm.View.Reset();
- break;
- case 14:
- curForm.View.SetDegenerateModeOn();
- curForm.DegenerateMode=true;
- this.HlrOff.Pushed=false;
- this.HlrOn.Pushed=true;
- break;
- case 15:
- curForm.View.SetDegenerateModeOff();
- curForm.DegenerateMode=false;
- this.HlrOn.Pushed=false;
- this.HlrOff.Pushed=true;
- break;
- default:
- break;
- }
- }
-
- private void Form1_Activated(object sender, System.EventArgs e)
- {
- if (this.toolBarView.Visible)
- this.SelectionChanged();
- }
-
- private void toolBarView_MouseHover(object sender, System.EventArgs e)
- {
- this.myStatusBar.Text="View toolbar";
- }
-
- private void toolBarView_MouseLeave(object sender, System.EventArgs e)
- {
- this.myStatusBar.Text="";
- }
-
- }
-
-}
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 1.3
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">1.3</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1">this is my long string</data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- [base64 mime encoded serialized .NET Framework object]
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- [base64 mime encoded string representing a byte array form of the .NET Framework object]
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used forserialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>1.3</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <data name="mainMenu1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="mainMenu1.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 17</value>
- </data>
- <data name="mainMenu1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="File.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="File.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="FileNew.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="FileNew.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="FileExport.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="FileExport.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ImportBRep.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ImportBRep.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ImportIges.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ImportIges.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ImportStep.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ImportStep.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="FileImport.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="FileImport.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportBRep.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportBRep.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportIges.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportIges.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportStep.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportStep.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportStl.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportStl.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportVrml.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportVrml.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="menuItem3.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="menuItem3.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportImage.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ExportImage.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="FileClose.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="FileClose.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="menuItem2.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="menuItem2.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="menuItem1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="menuItem1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="View.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="View.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ViewToolbar.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ViewToolbar.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ViewStatusBar.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ViewStatusBar.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Window.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Window.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="menuItem4.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="menuItem4.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="WindowCascade.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="WindowCascade.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="WindowTile.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="WindowTile.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Help.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Help.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="HelpAbout.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="HelpAbout.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="toolBarTool.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="toolBarTool.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="toolBarTool.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="New.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="New.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="About.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="About.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="wireframe.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="wireframe.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="shading.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="shading.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="color.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="color.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="material.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="material.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="transparency.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="transparency.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="delete.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="delete.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="imageList1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="imageList1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="imageList1.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>141, 18</value>
- </data>
- <data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>
- AAEAAAD/////AQAAAAAAAAAMAgAAAFpTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0xLjAuNTAw
- MC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZT
- eXN0ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMA
- AAB6GAAAAk1TRnQBSQFMAgEBGAEAAR0BAAEEAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQC
- AAEoAwABQAMAAYADAAEBAQABCAYAASAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB
- 3AHAAQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IB
- AAM5AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8B
- MwMAAWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYC
- AAFmAZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMC
- AAHMAWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQAB
- ZgEAATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8B
- AAEzAWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQAB
- MwGZAWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQAB
- MwLMAQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQAB
- MwEAAWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMB
- mQEAAWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQAB
- ZgGZAWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYB
- zAH/AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMB
- mQEAAZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgAB
- mQFmATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwB
- AAKZAf8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB
- /wEzAQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQAB
- mQEAAcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYC
- AAHMAWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYB
- AAHMApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8C
- AAHMAf8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQAB
- mQEAAcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMB
- AAHMAmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB
- /wGZAcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC
- /wEzAQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC
- /wFmAQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gB
- AAHwAfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD//8A/wD/AP8A/wD/
- AP8A/wAPAAH7PgAD+wHsPQAB+wIAAewIAAP7NAAC7AYAAvsBAAL7DQAB7CMABOwGAAL7AQAC+w4AAewb
- AAL7AwAC7AIAAewBAAHsBQAC+wEAAvsPAAXsAQAC7BUAA/sB7AQAAuwFAAL7AQAC+w8AAeweAAHsAvsD
- AAPsBQAD+xAAAeweAAHsAwAB+wEAAewBAAHsGAAB7B4AAewEAAHsAgAB7BgAAewfAAHsAwAB7AMAA/sw
- AAP7AgAC7AEAAewBAALsAwAB+xUAAewdAAPsAgAC7BsAAewcAAHsAQAD7DwAAuw/AAHsQgAB+ywAA/sQ
- AAH7CwABAQnsAwAJ7AEBCwAC+w4AAfsBAAH7AQAB+wkAAgEHAALsAgAB7AH+BwACAQgABPsKAAoBCAAB
- AQEAAQEGAAHsAQAB7AEAAewBAAH+BgABAQEAAQEFAAL7DgAB7AEBAwAD+wEAAgEHAAEBAgABAQX+AewC
- /gLsAgAG/gEAAv4BAQQAAfsPAAHsAQABAQMAAfsCAAHsAQABAQUAAfsBAQIAAQEFAAHsAgAC7AIAAf4F
- AAEBAgABAQQAAfsCAAH+DAAB7AIACgEFAAEBAfsBAAEBBQAB7AIAAuwCAAH+BQABAQIAAfsDAAP7AQAB
- +wH+CwAB7AIAAf4FAAHsAgAB7AIAA/sBAQL7AQEFAAHsAgAC7AIAAf4FAAEBAQAB+wEBBAAB+wIAAvsF
- /gEAAv4DAAHsAgAB/gUAAewCAAHsBQABAQH7AQABAQUAAewCAALsAgAB/gUAAQEG+wYAAf4KAAHsAgAB
- /gUAAewCAAHsBAAB+wEBAgABAQUAAewCAALsAgAB/gUAAQEBAAH7AQEJAAH+CgAB7AIAAf4FAAHsAgAB
- 7AUAAQEC7AEBBuwCAArsAQECAAH7CQAB/goAAewCAAH+BQAB7AIAAewGAAEBAQABAQYAAewBAAHsAQAB
- 7AEAAf4GAAEBAQABAQkAAf4KAArsAgAB7AcAAgEHAALsAgAB7AH+BwACARUAAewBAAH+BgAB7AEAAewI
- AAEBCewDAAnsAQEJAAH+DAAB7AH+BwAC7CgAAf4NAArsOQAB+xkACuwGAArsCwAD+wgAAfsJAQYAAewB
- /gcAAuwFAAHsAf4HAALsCQAB+wEAAfsBAAH7BwABAQH7BwABAQHsBQAB7AEAAf4GAAHsAQAB7AQAAewB
- AAH+BgAB7AEAAewKAAH7CQABAQEAAfsGAAEBAQAB7AQAAewCAAoBAwAB7AIABv4B7AL+AewHAALsAfsB
- AAPsBQABAQIAAfsBAAH7A/4BAQL+AewDAAHsAgABAQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB7AQAAfsB
- AAHsAgAB+wMAAewB+wQAAQEDAAL7AwABAQIAAewDAAHsAgABAQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB
- 7AMAAfsCAAHsBgAB7AEAAfsDAAEBAgAD+wMAAQECAAHsAwAB7AIAAQEFAAHsAgABAQMAAewCAAH+BQAB
- 7AIAAewCAAb7BAAF+wIAAQECAAH+BQABAQIAAewDAAHsAgABAQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB
- 7AMAAfsCAAHsBgAB7AEAAfsDAAEBAgAB/gUAAQECAAHsAwAB7AIAAQEBAAT7AewCAAEBAwAB7AIAAf4F
- AAHsAgAB7AQAAfsBAAHsAgAB+wMAAewB+wQAAQECAAH+BQABAQIAAewDAAPsAQEB7AL7A+wCAAEBAwAK
- AQIAAewGAAPsAfsBAAPsBQAKAQIAAewEAAHsAQABAQEAAfsBAAH7AgAB7AEAAQEEAAEBAQAB/gYAAQEB
- AAHsCQAB+woAAewBAAH+BgAB7AEAAewFAAHsAQEBAAH7AgAB+wIAAewBAQUAAQEB/gIAAfsEAAEBAewH
- AAH7AQAB+wEAAfsJAAHsAf4HAALsBgAKAQYAAgED+wUBCAAD+wsACuwNAAH7CQAB+wEAAfsBAAH7DQAB
- +yQAAfsKAAH7NQAB+wkAAfsIAAP7CgAD+w4AAfshAAL7DAAC+wIAAewDAAfsA/sB7BYAAfsIAAH7AewB
- AwoAAfsBAAH7DgAB+xcAA/sJAAEDCQAB+xEAAewWAAH7AQAB+wEAAfskAAHsDwAB+wgAAfsPAAXsBQAB
- 7AYABOwCAAHsBwAF7AIAA/sHAAH7DQAB7AYAAewEAAHsBAAB7AUAAewBAAHsBQAB7AYAAewCAAH7AwAB
- +wkAAfsIAAHsBwAB7AMAAewEAAHsBgAC7AUAAewHAAHsBAAB+wsAAfsGAALsBwAC7AIAAewDAALsBgAC
- 7AQAAuwHAAEDAewCAAX7BQAF+wUAAewJAAHsAgAB7AMAAewIAAHsBAAB7AQAA/sCAAHsAwAB+wsAAfsG
- AAHsCQAB7AIAAewDAAHsCAAB7AQAAewCAAL7BQAB7AQAAfsEAAH7BAAB+wcAAuwHAALsAgAB7AMAAuwG
- AALsBQAB7AcAAuwJAAH7CwAB+wEAAewHAAHsAwAB7AQAAewGAALsBQAB7AcAAewKAAH7CAAB+wEAAfsD
- AAHsBQAB7AH7AQAB+wEAAfsFAAHsBAAB7AEAAewBAAP7AgAB7AUAAewJAAH7AQAB+wEAAfsGAAL7BQAF
- 7AIABfsE7AEABuwIAAXsCwAD+wcAA/sKAAP7AQAB+yUAAfsfAAb4CAAG+A0AAgcC7AUADQoIAAH4BvsB
- +AYAAfgGoAH4CAACCwLvAQcD7AYAAx4BAANrAQACNwFtCAABrgFYBvsBWAGuBAABrgGZBqABmQGuBQAC
- CwKSAU8CBwHvAuwGAAMBAQADBgEAAvsB7AgAAVgBcwb7AXMBWAQAAewBHAagARwB7AUAAW0B7QEHAU8B
- AgJPAQcC7AFtAQsEAAMBAQADBgEAAvsB7AcAAT8B+wFYBnMBRgH7BAAB7AGZBhwBmQHsBQAB7AEHAU8B
- 7QECAe0BAgEHA+wFAAMLAQADDQEAAikBQwcAAfkBLAH7BkYB+QH7BAAB7AGgBpkBoAHsBAABbwHvAQcB
- AgEHAXIBBwFyAQcD7AUAAwIBAAMEAQADBgMABGIC+QEsATIG+QH7BAAB7AigAewEAAHsAQcBcgECAXIB
- BwJyAQcD7AUAA/oBAAP8AQAD/gMAB/kB+wb5AfsEAAHsCKAB7AQAAewBBwFyAQIBcgEHAgIBBwPsARQB
- AQMAA/oBAAP8AQAD/gMABGIC+QEsATIG+QH7BAAB7AigAewEAAHsAgcDcgE1AXIBeQGSA+wEAAMtAQAD
- hQEAA4EHAAH5ASwB+wZGAfkB+wQAAewBoAaZAaAB7AMAAUYBkgMHAk8BWAEHAVgBBwGSAuwEAAMeAQAD
- KQEAA2EHAAE/AfsBWAZzAUYB+wQAAewBmQYcAZkB7AMAAewCBwLvAeoC7AQHAewB7QQAA/kBAAP7AQAD
- /QgAAVgBcwb7AXMBWAQAAewBHAagARwB7AMAAewCBwLsAQAB7AHtAgcCmQHsAe8BCwMAA/kBAAP7AQAD
- /QgAAa4BWAb7AVgBrgQAAa4BmQagAZkBrgMAAewB7wEHAuwBAAHsAgcBmQJYAm4EAAMgAQADNwEAA6UJ
- AAH4BvsB+AYAAfgGoAH4BAACbgIHAewBDgMHAfsCbhsABvgIAAb4BwAC7AEHBew6AATsLQAG+woABuwp
- AAFYBqcBWAgAAewG+wHsGwAC+woAAVgBhgYAAYYBWAYAAa4BWAb7AVgBrgcACf8KAAL7CgAB+wFYBgAB
- WAH7BgAB7Aj7AewHAAn/FgAB+wGuBlEBrgH7BgAB7Aj7AewHAAn/CgAB+wsAAfsBAAauAQAB+wYAAewI
- +wHsBwAJ/woAAfsLAAH7CAAB+wYAAewI+wHsBwAJ/woAAfsLAAH7CAAB+wYAAewI+wHsBwAJ/woAAvsK
- AAH7CAAB+wYAAewI+wHsBwAJ/wsAAvsJAAH7AQAGrgEAAfsGAAHsAfsGWAH7AewHAAn/BwAB+wQAAvsI
- AAH7Aa4GUQGuAfsGAAHsAVgGcwFYAewHAAb/CgAB+wUAAfsIAAH7AVgGAAFYAfsGAAHsAXMG+wFzAewH
- AAb/AQAB/wgAAvsDAAL7CAABWAGGBgABhgFYBgABrgFYBvsBWAGuBwAG/wsABfsKAAFYBqcBWAgAAewG
- +wHsKQAG+woABuxFAAFCAU0BPgcAAT4DAAEoAwABQAMAAYADAAEBAQABAQYAAQQWAAP//wACAAH9B/8B
- +AF/Bv8B/QG/AccB/wHAAR8BwAEfAf8BnwGTAf8CzwHfAc8B/gEfAZMB/wLXAd8B1wE5AY8BkwH/AdgB
- AwHfAdsBwwHPAZMB/wLbAd8B2wHxAscB+wLbAd8B2wH3AVcB/wHBAtsB3wHbAfcBtwH/AZsC2wHfAdsB
- +wGoAf8BrwHAARsBwAEbARkBTgH/AbUC6wHvAesBwgE/Af8BuQLzAfcB8wHBAv8BEQH4AQMB+AEDAecC
- /wG/BP8B9wf/Af4F/wHxAf8B/gH/AeABBwEAAT8B+QH/AfoBvwHnAfMBPwGfAeEB/wGAAR8B6wH1AV8B
- rwGfAf8BnAFPAewBAAFgAQcBoAEPAa4B1wHNAfYBbwG3AacB5wGwAQMB5QH2AW8BtwEDAesBtwHbAQEB
- 9gFvAacBoAEBAbcB2wHlAfYBbwGAAu0BtwHbAc0B9gFvAacC7QG3AdsB4AEGAQABNwLtAbcB2wH1AfoB
- rwHXAu0BgAEbAfkB/AHPAecB4AENAdcB6wH8AQAB4AEHAvUB5wHzBP8C+QHwAQME/wH8AQEB/gP/AYAB
- HwGAAR8B/AF/AYABHwGfAc8BnwHPAfoBvwGfAc8BrwHXAa8B1wH+Af8BrwHXAbABAwGwAQMB8AGPAbQB
- AwG3AdsBtwHbAdYB5wG5AdsBtwHbAbcB2wG3AesBsQHbAbcB2wG3AdsBAwHBAbcB2wG3AdsBtwHbAbcB
- 6wG3AdsBtAEbAbcB2wHWAecBtwHbAYABGwGAARsB8AGPAYABGwHVAWsB1wHrAf4B/wHXAesB5QGzAeYB
- 8wH6Ab8B5wHzAfABAwHwAQMB/AF/AfABAwH/Ae8B+gG/Af4E/wH3Af4G/wH7Af4B/wEfAfgB/wH9BP8B
- PwH8AdwBAAF/Af8B/gH/AR8B+gHPAf0BPwH/AfwBfwHPAfcB5wH9AZ8B/wH6Ab8B5wH/AfMB/QHPAf0B
- /gH/AfIBDwG5AQ0B5AEYAf4B/wH5AfcBvAH1AfMB7QHfAfcC+wG9AfkC9wG/AfsB8wH5AbkB+QHnAfMB
- BwHBAfcB/QG7Af0B7wEbAb8B+wH3Af0BuwH9AewB+wHeAfcB8wH5AbkB+QH3AfMB/gH/AesB+wG9AfkC
- 9wH+Af8BXQHyAb4B9QEbAe8B+gG/AT4BDAIBAfwBHwH8AX8BHwH4Ab8D/wH+A/8B/gEHAfgBHwH8AQcB
- gAEDAfwBAwHwAQ8B8AEHAYABAwH4AQEB4AEHAcABBwGAAQMB+AEBAeABBwHAAQMBgAEDAfABAQHgAQcB
- wAEDAYABAwHwAQEB4AEHAYABAwGAAQMBAAEBAeABBwGAAQMBgAEDAQABAQHgAQcBgAEBAYABAwEAAQEB
- 4AEHAYABAQGAAQMB8AEBAeABBwEAAQEBgAEDAfABAQHgAQcBAAEBAYABAwH4AQEB4AEHAQABAQGAAQMB
- +AEBAeABBwEAAQMBgAEDAfwBAwHwAQ8BAAEPAYABAwH+AQcB+AEfAcABPwb/AfAF/wH4AR8B+AEfAv8B
- /gE/AfABDwHwAQ8B4AEDAfwBHwLnAeABBwHgAQMB/AEfAucB4AEHAeABAwH+AX8B4AEHAeABBwHgAQMB
- /AE/AegBFwHgAQcB4AEDAfwBPwHvAfcB4AEHAeABAwH8AT8B7wH3AeABBwHgAQMB/AEfAe8B9wHgAQcB
- 4AEDAfIBDwHoARcB4AEHAeABAwHhAQcB4AEHAeABBwHgAQMB4QGHAucB4AEHAeABBwHgAQcC5wHgAQcB
- 4AEPAfABDwHwAQ8B8AEPAeABHwH4AR8B+AEfAfgBHwj/Cw==
-</value>
- </data>
- <data name="myStatusBar.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="myStatusBar.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="myStatusBar.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="toolBarView.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="toolBarView.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="toolBarView.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ZoomAll.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ZoomAll.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ZoomWin.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ZoomWin.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ZoomProg.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ZoomProg.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Pan.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Pan.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="PanGlo.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="PanGlo.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Front.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Front.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Back.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Back.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="TOP.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="TOP.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BOTTOM.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BOTTOM.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="LEFT.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="LEFT.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="RIGHT.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="RIGHT.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Axo.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Axo.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Rot.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Rot.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Reset.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="Reset.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="HlrOn.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="HlrOn.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="HlrOff.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="HlrOff.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="toolBarButton1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="toolBarButton1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>(Default)</value>
- </data>
- <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>8, 8</value>
- </data>
- <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </data>
- <data name="$this.Name">
- <value>Form1</value>
- </data>
- <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>80</value>
- </data>
- <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </data>
- <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAEAMDAAAAAAAACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAgAoAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAMDcwADwyqYABAQEAAgICAAMDAwAERERABYW
- FgAcHBwAIiIiACkpKQBVVVUATU1NAEJCQgA5OTkAgHz/AFBQ/wCTANYA/+zMAMbW7wDW5+cAkKmtAAAA
- MwAAAGYAAACZAAAAzAAAMwAAADMzAAAzZgAAM5kAADPMAAAz/wAAZgAAAGYzAABmZgAAZpkAAGbMAABm
- /wAAmQAAAJkzAACZZgAAmZkAAJnMAACZ/wAAzAAAAMwzAADMZgAAzJkAAMzMAADM/wAA/2YAAP+ZAAD/
- zAAzAAAAMwAzADMAZgAzAJkAMwDMADMA/wAzMwAAMzMzADMzZgAzM5kAMzPMADMz/wAzZgAAM2YzADNm
- ZgAzZpkAM2bMADNm/wAzmQAAM5kzADOZZgAzmZkAM5nMADOZ/wAzzAAAM8wzADPMZgAzzJkAM8zMADPM
- /wAz/zMAM/9mADP/mQAz/8wAM///AGYAAABmADMAZgBmAGYAmQBmAMwAZgD/AGYzAABmMzMAZjNmAGYz
- mQBmM8wAZjP/AGZmAABmZjMAZmZmAGZmmQBmZswAZpkAAGaZMwBmmWYAZpmZAGaZzABmmf8AZswAAGbM
- MwBmzJkAZszMAGbM/wBm/wAAZv8zAGb/mQBm/8wAzAD/AP8AzACZmQAAmTOZAJkAmQCZAMwAmQAAAJkz
- MwCZAGYAmTPMAJkA/wCZZgAAmWYzAJkzZgCZZpkAmWbMAJkz/wCZmTMAmZlmAJmZmQCZmcwAmZn/AJnM
- AACZzDMAZsxmAJnMmQCZzMwAmcz/AJn/AACZ/zMAmcxmAJn/mQCZ/8wAmf//AMwAAACZADMAzABmAMwA
- mQDMAMwAmTMAAMwzMwDMM2YAzDOZAMwzzADMM/8AzGYAAMxmMwCZZmYAzGaZAMxmzACZZv8AzJkAAMyZ
- MwDMmWYAzJmZAMyZzADMmf8AzMwAAMzMMwDMzGYAzMyZAMzMzADMzP8AzP8AAMz/MwCZ/2YAzP+ZAMz/
- zADM//8AzAAzAP8AZgD/AJkAzDMAAP8zMwD/M2YA/zOZAP8zzAD/M/8A/2YAAP9mMwDMZmYA/2aZAP9m
- zADMZv8A/5kAAP+ZMwD/mWYA/5mZAP+ZzAD/mf8A/8wAAP/MMwD/zGYA/8yZAP/MzAD/zP8A//8zAMz/
- ZgD//5kA///MAGZm/wBm/2YAZv//AP9mZgD/Zv8A//9mACEApQBfX18Ad3d3AIaGhgCWlpYAy8vLALKy
- sgDX19cA3d3dAOPj4wDq6uoA8fHxAPj4+ADw+/8ApKCgAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
- AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMT
- ExMTExMTEyIiQiI8HTyCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwDODg4Nzc4MQMdAAAA
- AADDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOw4ODgyOCQAAAAdAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODIyMSIAHewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAA7DI3MSIdCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAADEyMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs4JAALAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwxJAAhAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4IgC8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAJAxJB0LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- ALwLCx0dIh0dCwATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACx0dAB0dIiIiIiId
- CxMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvAsdAB0dIiQkAyQkIiIiHSIAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAIgMxMVhZmZqZAyQiHR0AAAAAkAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAvAsdISIDMThZWVmgvaCZWVIkIh0AAB0dIh0hCwALCwALtgAAAAAAAAAAAAAAAOwAAB0iMTEx
- ODhYWZrDw8Ofn1hSJCIAHQAdACIAHSIkAwsdOAAAAADeExMTCwsLIiIkMTEyODg3MllZmprDw8PDwllS
- MSQdHQAAAB0AIiQkAAAAvDi8AAAxAzExMTExMTI4Nzg4ODc4ODhZXpnDw8PDml1YNwMkIh0AAB0hIiQA
- AAAAACIAAAA4ODc4Nzg4ODg4ODg4ODg4ODhZWV6avb2gmllZODcxJCIAAAAdIgMLAAAAACIAAACGE0+G
- T4bs7Oy8vLy8vAAxODg4ODg4NzIyMSQdHQAAvADsCwAiJDExAAAAwjjsAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAALMSQAAAAAAAAAAAAAAAAAEyI4MQsiOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALMSQAAAAA
- AAAAAAAAAAAAAAC8CwsAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8AAsAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP///////wAA////////
- AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
- /////wAA//8AAH//AAD//wAAf/8AAP//4AP//wAA///4B///AAD///gP//8AAP///B///wAA///8H///
- AAD///wf//8AAP///h///wAA///8H///AAD//+AD//8AAP//wAD//wAA//4AAD//AAD//AAAB/8AAP/w
- AAAAAwAA/8AAAAABAADAAAAAADgAAMAAAAAAPAAAwAAAAAA8AADAAAAAIDgAAP///j/+AQAA///+P/+D
- AAD///4///8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
- /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA
-</value>
- </data>
-</root>
\ No newline at end of file
+++ /dev/null
-using System;
-using System.Drawing;
-using System.Collections;
-using System.ComponentModel;
-using System.Windows.Forms;
-
-
-namespace IE
-{
- public enum CurrentAction3d
- {
- CurAction3d_Nothing,
- CurAction3d_DynamicZooming,
- CurAction3d_WindowZooming,
- CurAction3d_DynamicPanning,
- CurAction3d_GlobalPanning,
- CurAction3d_DynamicRotation
- }
- public enum CurrentPressedKey
- {
- CurPressedKey_Nothing,
- CurPressedKey_Ctrl,
- CurPressedKey_Shift
- }
- public enum ModelFormat
- {
- BREP,
- CSFDB,
- STEP,
- IGES,
- VRML,
- STL,
- IMAGE
- }
- /// <summary>
- /// Summary description for Form2.
- /// </summary>
- public class Form2 : System.Windows.Forms.Form
- {
- private System.ComponentModel.IContainer components;
-
- public Form2()
- {
- //
- // Required for Windows Form Designer support
- //
- InitializeComponent();
-
- //
- // TODO: Add any constructor code after InitializeComponent call
- //
- myView = new shell();
- myCurrentMode=CurrentAction3d.CurAction3d_Nothing;
- myCurrentPressedKey=CurrentPressedKey.CurPressedKey_Nothing;
- myDegenerateModeIsOn=true;
- IsRectVisible=false;
- }
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- protected override void Dispose( bool disposing )
- {
- if( disposing )
- {
- if(components != null)
- {
- components.Dispose();
- }
- }
- base.Dispose( disposing );
- }
-
- #region Windows Form Designer generated code
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- this.components = new System.ComponentModel.Container();
- System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(Form2));
- this.imageList1 = new System.Windows.Forms.ImageList(this.components);
- this.myPopup = new System.Windows.Forms.ContextMenu();
- this.menuItem1 = new System.Windows.Forms.MenuItem();
- this.myPopupObject = new System.Windows.Forms.ContextMenu();
- this.ContextWireframe = new System.Windows.Forms.MenuItem();
- this.ContextShading = new System.Windows.Forms.MenuItem();
- this.ContextColor = new System.Windows.Forms.MenuItem();
- this.ContextMaterial = new System.Windows.Forms.MenuItem();
- this.ContMatBrass = new System.Windows.Forms.MenuItem();
- this.ContMenBronze = new System.Windows.Forms.MenuItem();
- this.ContMenCopper = new System.Windows.Forms.MenuItem();
- this.ContMenGold = new System.Windows.Forms.MenuItem();
- this.ContMenPewt = new System.Windows.Forms.MenuItem();
- this.ContMenPlaster = new System.Windows.Forms.MenuItem();
- this.ContMenPlastic = new System.Windows.Forms.MenuItem();
- this.ContMenSilver = new System.Windows.Forms.MenuItem();
- this.ContMenTranc = new System.Windows.Forms.MenuItem();
- this.ContMenDelete = new System.Windows.Forms.MenuItem();
- //
- // imageList1
- //
- this.imageList1.ImageSize = new System.Drawing.Size(16, 16);
- this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
- this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
- //
- // myPopup
- //
- this.myPopup.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
- this.menuItem1});
- //
- // menuItem1
- //
- this.menuItem1.Index = 0;
- this.menuItem1.Text = "Change &Background";
- this.menuItem1.Click += new System.EventHandler(this.menuItem1_Click);
- //
- // myPopupObject
- //
- this.myPopupObject.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
- this.ContextWireframe,
- this.ContextShading,
- this.ContextColor,
- this.ContextMaterial,
- this.ContMenTranc,
- this.ContMenDelete});
- this.myPopupObject.Popup += new System.EventHandler(this.myPopupObject_Popup);
- //
- // ContextWireframe
- //
- this.ContextWireframe.Index = 0;
- this.ContextWireframe.Text = "Wireframe";
- this.ContextWireframe.Click += new System.EventHandler(this.ContextWireframe_Click);
- //
- // ContextShading
- //
- this.ContextShading.Index = 1;
- this.ContextShading.Text = "Shading";
- this.ContextShading.Click += new System.EventHandler(this.ContextShading_Click);
- //
- // ContextColor
- //
- this.ContextColor.Index = 2;
- this.ContextColor.Text = "Color";
- this.ContextColor.Click += new System.EventHandler(this.ContextColor_Click);
- //
- // ContextMaterial
- //
- this.ContextMaterial.Index = 3;
- this.ContextMaterial.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
- this.ContMatBrass,
- this.ContMenBronze,
- this.ContMenCopper,
- this.ContMenGold,
- this.ContMenPewt,
- this.ContMenPlaster,
- this.ContMenPlastic,
- this.ContMenSilver});
- this.ContextMaterial.Text = "Material";
- //
- // ContMatBrass
- //
- this.ContMatBrass.Index = 0;
- this.ContMatBrass.Text = "&Brass";
- this.ContMatBrass.Click += new System.EventHandler(this.ContMatBrass_Click);
- //
- // ContMenBronze
- //
- this.ContMenBronze.Index = 1;
- this.ContMenBronze.Text = "&Bronze";
- this.ContMenBronze.Click += new System.EventHandler(this.ContMenBronze_Click);
- //
- // ContMenCopper
- //
- this.ContMenCopper.Index = 2;
- this.ContMenCopper.Text = "&Copper";
- this.ContMenCopper.Click += new System.EventHandler(this.ContMenCopper_Click);
- //
- // ContMenGold
- //
- this.ContMenGold.Index = 3;
- this.ContMenGold.Text = "&Gold";
- this.ContMenGold.Click += new System.EventHandler(this.ContMenGold_Click);
- //
- // ContMenPewt
- //
- this.ContMenPewt.Index = 4;
- this.ContMenPewt.Text = "&Pewter";
- this.ContMenPewt.Click += new System.EventHandler(this.ContMenPewt_Click);
- //
- // ContMenPlaster
- //
- this.ContMenPlaster.Index = 5;
- this.ContMenPlaster.Text = "&Plaster";
- this.ContMenPlaster.Click += new System.EventHandler(this.ContMenPlaster_Click);
- //
- // ContMenPlastic
- //
- this.ContMenPlastic.Index = 6;
- this.ContMenPlastic.Text = "&Plastic";
- this.ContMenPlastic.Click += new System.EventHandler(this.ContMenPlastic_Click);
- //
- // ContMenSilver
- //
- this.ContMenSilver.Index = 7;
- this.ContMenSilver.Text = "&Silver";
- this.ContMenSilver.Click += new System.EventHandler(this.ContMenSilver_Click);
- //
- // ContMenTranc
- //
- this.ContMenTranc.Index = 4;
- this.ContMenTranc.Text = "&Trancparency";
- this.ContMenTranc.Click += new System.EventHandler(this.ContMenTranc_Click);
- //
- // ContMenDelete
- //
- this.ContMenDelete.Index = 5;
- this.ContMenDelete.Text = "&Delete";
- this.ContMenDelete.Click += new System.EventHandler(this.ContMenDelete_Click);
- //
- // Form2
- //
- this.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
- this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
- this.ClientSize = new System.Drawing.Size(320, 261);
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.ImeMode = System.Windows.Forms.ImeMode.NoControl;
- this.Name = "Form2";
- this.Text = "Document";
- this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
- this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Form2_KeyDown);
- this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Form2_MouseDown);
- this.SizeChanged += new System.EventHandler(this.Form2_SizeChanged);
- this.MouseUp += new System.Windows.Forms.MouseEventHandler(this.Form2_MouseUp);
- this.KeyUp += new System.Windows.Forms.KeyEventHandler(this.Form2_KeyUp);
- this.Closed += new System.EventHandler(this.Form2_Closed);
- this.Paint += new System.Windows.Forms.PaintEventHandler(this.Form2_Paint);
- this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Form2_MouseMove);
-
- }
- #endregion
-
- private System.Windows.Forms.ImageList imageList1;
- private System.Windows.Forms.ContextMenu myPopup;
- private System.Windows.Forms.ContextMenu myPopupObject;
- private System.Windows.Forms.MenuItem ContextWireframe;
- private System.Windows.Forms.MenuItem ContextShading;
- private System.Windows.Forms.MenuItem ContextColor;
- private System.Windows.Forms.MenuItem ContextMaterial;
- private System.Windows.Forms.MenuItem ContMatBrass;
- private System.Windows.Forms.MenuItem ContMenBronze;
- private System.Windows.Forms.MenuItem ContMenCopper;
- private System.Windows.Forms.MenuItem ContMenGold;
- private System.Windows.Forms.MenuItem ContMenPewt;
- private System.Windows.Forms.MenuItem ContMenPlaster;
- private System.Windows.Forms.MenuItem ContMenPlastic;
- private System.Windows.Forms.MenuItem ContMenSilver;
- private System.Windows.Forms.MenuItem ContMenTranc;
- private System.Windows.Forms.MenuItem ContMenDelete;
- private System.Windows.Forms.MenuItem menuItem1;
-
- private shell myView;
-
- public void InitV3D()
- {
-
- if( !myView.InitViewer(this.Handle) )
- MessageBox.Show("Fatal Error during the graphic initialisation", "Error!",
- MessageBoxButtons.OK, MessageBoxIcon.Error);
- }
-
- public bool ImportBRep(System.String filename)
- {
- return myView.ImportBrep(filename);
- }
-
- private void Form2_SizeChanged(object sender, System.EventArgs e)
- {
- myView.UpdateView();
- }
-
- private void Form2_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
- {
- myView.RedrawView();
- myView.UpdateView();
- }
-
- protected CurrentAction3d myCurrentMode;
- protected CurrentPressedKey myCurrentPressedKey;
- protected float myCurZoom;// ~ Quantity_Factor
- protected bool myDegenerateModeIsOn;
- protected int myXmin;
- protected int myYmin;
- protected int myXmax;
- protected int myYmax;
- protected int theButtonDownX;
- protected int theButtonDownY;
- // for erasing of rectangle
- protected int theRectDownX;
- protected int theRectDownY;
- protected bool IsRectVisible;
-
- private void Form2_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
- {
- switch (e.Button)
- {
- case MouseButtons.Left:
- myXmin=e.X; myYmin=e.Y;
- myXmax=e.X; myYmax=e.Y;
- if (myCurrentPressedKey==CurrentPressedKey.CurPressedKey_Ctrl)
- // start the dinamic zooming....
- myCurrentMode=CurrentAction3d.CurAction3d_DynamicZooming;
- else
- {
- switch(myCurrentMode)
- {
- case CurrentAction3d.CurAction3d_Nothing:
- if (myCurrentPressedKey==CurrentPressedKey.CurPressedKey_Shift)
- MultiDragEvent(myXmax, myYmax, -1);
- else
- DragEvent(myXmax, myYmax, -1);
- break;
- case CurrentAction3d.CurAction3d_DynamicRotation:
- if (!myDegenerateModeIsOn)
- myView.SetDegenerateModeOn();
- //start the rotation
- myView.StartRotation(e.X, e.Y);
- break;
- case IE.CurrentAction3d.CurAction3d_WindowZooming:
- this.Cursor=System.Windows.Forms.Cursors.Hand;
- break;
- default:
- break;
- }
- }
- break;
- case MouseButtons.Right:
- //MessageBox.Show("right mouse button is down");
- if (myCurrentPressedKey==CurrentPressedKey.CurPressedKey_Ctrl)
- {
- if (!myDegenerateModeIsOn)
- myView.SetDegenerateModeOn();
- myView.StartRotation(e.X, e.Y);
- }
- else
- Popup(e.X, e.Y);
- break;
- default:
- break;
- }
-
- }
-
- private void Form2_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
- {
- if (e.Shift)
- myCurrentPressedKey=CurrentPressedKey.CurPressedKey_Shift;
- else if (e.Control)
- myCurrentPressedKey=CurrentPressedKey.CurPressedKey_Ctrl;
- }
-
- private void Form2_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)
- {
- myCurrentPressedKey=CurrentPressedKey.CurPressedKey_Nothing;
- }
-
- protected void MultiDragEvent(int x, int y, int theState)
- {
- if ( theState==-1)
- {
- theButtonDownX=x;
- theButtonDownY=y;
- }
- else if (theState==1)
- myView.ShiftSelect(Math.Min(theButtonDownX,x), Math.Min(theButtonDownY,y),
- Math.Max(theButtonDownX, x), Math.Max(theButtonDownY, y));
- }
-
- protected void DragEvent(int x, int y, int theState)
- {
- if (theState==-1) //mouse is down
- {
- theButtonDownX=x;
- theButtonDownY=y;
- }
- else if (theState==1) //mouse is up
- {
- myView.Select(Math.Min(theButtonDownX, x), Math.Min(theButtonDownY,y),
- Math.Max(theButtonDownX, x), Math.Max(theButtonDownY,y));
- }
- }
-
- protected void Popup(int x, int y)
- {
- System.Drawing.Point p = new Point(x,y);
- if (this.myView.IsObjectSelected())
- this.myPopupObject.Show(this, p);
- else
- this.myPopup.Show(this, p);
- }
-
- private void Form2_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
- {
- switch(e.Button)
- {
- case MouseButtons.Left:
- if (myCurrentPressedKey==CurrentPressedKey.CurPressedKey_Ctrl)
- return;
- switch(myCurrentMode)
- {
- case CurrentAction3d.CurAction3d_Nothing:
- if( e.X==myXmin && e.Y==myYmin)
- {
- myXmax=e.X; myYmax=e.Y;
- if (myCurrentPressedKey==CurrentPressedKey.CurPressedKey_Shift)
- MultiInputEvent(myXmax, myYmax);
- else
- InputEvent(myXmax, myYmax);
- }
- else
- {
- myXmax=e.X; myYmax=e.Y;
- DrawRectangle(false);
- if (myCurrentPressedKey==CurrentPressedKey.CurPressedKey_Shift)
- MultiDragEvent(myXmax, myYmax, 1);
- else
- DragEvent(myXmax, myYmax, 1);
- }
- break;
- case CurrentAction3d.CurAction3d_DynamicZooming:
- myCurrentMode=CurrentAction3d.CurAction3d_Nothing;
- break;
- case CurrentAction3d.CurAction3d_WindowZooming:
- myXmax=e.X; myYmax=e.Y;
- DrawRectangle(false);
- int ValZWMin = 1;
- if (Math.Abs(myXmax-myXmin)>ValZWMin && Math.Abs(myXmax-myYmax)>ValZWMin)
- myView.WindowFitAll(myXmin, myYmin, myXmax, myYmax);
- this.Cursor=System.Windows.Forms.Cursors.Default;
- IE.Form1 f = (IE.Form1)this.ParentForm;
- f.SelectionChanged();
- myCurrentMode=CurrentAction3d.CurAction3d_Nothing;
- break;
- case CurrentAction3d.CurAction3d_DynamicPanning:
- myCurrentMode=CurrentAction3d.CurAction3d_Nothing;
- break;
- case CurrentAction3d.CurAction3d_GlobalPanning:
- myView.Place(e.X, e.Y, myCurZoom);
- myCurrentMode=CurrentAction3d.CurAction3d_Nothing;
- break;
- case CurrentAction3d.CurAction3d_DynamicRotation:
- myCurrentMode=CurrentAction3d.CurAction3d_Nothing;
- if (!myDegenerateModeIsOn)
- {
- myView.SetDegenerateModeOff();
- myDegenerateModeIsOn=false;
- }
- else
- {
- myView.SetDegenerateModeOn();
- myDegenerateModeIsOn=true;
- }
- break;
- default:
- break;
-
- }
- break;
- case MouseButtons.Right:
- if (!myDegenerateModeIsOn)
- {
- myView.SetDegenerateModeOff();
- myDegenerateModeIsOn=false;
- }
- else
- {
- myView.SetDegenerateModeOn();
- myDegenerateModeIsOn=true;
- }
- break;
- default:
- break;
- }
-
- IE.Form1 parent = (IE.Form1)this.ParentForm;
- parent.SelectionChanged();
- }
-
- protected void MultiInputEvent(int x, int y)
- {
- myView.ShiftSelect();
- }
-
- protected void InputEvent(int x, int y)
- {
- myView.Select();
- }
-
- private void DrawRectangle(bool draw)
- {
- Graphics gr = Graphics.FromHwnd(this.Handle);
- System.Drawing.Pen p = null;
- if (this.IsRectVisible ||(!draw))//erase the rect
- {
- int r=myView.GetBGColR();
- int g=myView.GetBGColG();
- int b=myView.GetBGColB();
- p = new Pen(System.Drawing.Color.FromArgb( r,g, b));
- this.IsRectVisible=false;
- this.myView.UpdateView();
- }
- else if (draw)
- {
- p = new Pen(System.Drawing.Color.White);
- this.IsRectVisible=true;
- }
- if ( p == null )
- return;
- int x=Math.Min(this.myXmin, this.myXmax);
- int y=Math.Min(this.myYmin, this.myYmax);
- gr.DrawRectangle(p, x, y, Math.Abs(myXmax-myXmin), Math.Abs(myYmax - myYmin));
- this.theRectDownX=Math.Max(this.myXmin, this.myXmax);
- this.theRectDownY=Math.Max(this.myYmin, this.myYmax);
- }
-
- private void Form2_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
- {
- if (e.Button == MouseButtons.Left) //left button is pressed
- {
- if (myCurrentPressedKey==CurrentPressedKey.CurPressedKey_Ctrl)
- {
- myView.Zoom(myXmax, myYmax, e.X, e.Y);
- myXmax=e.X; myYmax=e.Y;
- }
- else
- {
- switch (myCurrentMode)
- {
- case CurrentAction3d.CurAction3d_Nothing:
- DrawRectangle(false);
- myXmax=e.X; myYmax=e.Y;
- DrawRectangle(true);
- break;
- case CurrentAction3d.CurAction3d_DynamicZooming:
- myView.Zoom(myXmax, myYmax, e.X, e.Y);
- myXmax=e.X; myYmax=e.Y;
- break;
- case CurrentAction3d.CurAction3d_WindowZooming:
- DrawRectangle(false);
- myXmax=e.X; myYmax=e.Y;
- DrawRectangle(true);//add brush here
- break;
- case CurrentAction3d.CurAction3d_DynamicPanning:
- myView.Pan(e.X-myXmax, myYmax - e.Y);
- myXmax=e.X; myYmax=e.Y;
- break;
- case CurrentAction3d.CurAction3d_GlobalPanning:
- break;
- case CurrentAction3d.CurAction3d_DynamicRotation:
- myView.Rotation(e.X, e.Y);
- myView.RedrawView();
- break;
- default:
- break;
- }
- }
- } // e.Button == MouseButtons.Left
- else if (e.Button==MouseButtons.Middle)
- {
- if (myCurrentPressedKey==CurrentPressedKey.CurPressedKey_Ctrl)
- {
- myView.Pan(e.X-myXmax, myYmax - e.Y);
- myXmax=e.X; myYmax=e.Y;
- }
- }//e.Button=MouseButtons.Middle
- else if (e.Button==MouseButtons.Right) //right button is pressed
- {
- if (myCurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl)
- myView.Rotation(e.X, e.Y);
- }
- else // no buttons are pressed
- {
- myXmax=e.X; myYmax=e.Y;
- if (myCurrentPressedKey==CurrentPressedKey.CurPressedKey_Shift)
- MultiMoveEvent(e.X, e.Y);
- else
- MoveEvent(e.X, e.Y);
- }
-
-
- }
-
- protected void MultiMoveEvent(int x, int y)
- {
- myView.MoveTo(x, y);
- }
-
- protected void MoveEvent(int x, int y)
- {
- myView.MoveTo(x, y);
- }
-
- public void SetDisplayMode(int aMode)
- {
- myView.SetDisplayMode(aMode);
- }
-
- public void ChangeColor(bool IsObjectColor)
- {
- int r, g, b;
- if (IsObjectColor)
- {
- r=myView.GetObjColR();
- g=myView.GetObjColG();
- b=myView.GetObjColB();
- }
- else
- {
- r=myView.GetBGColR();
- g=myView.GetBGColG();
- b=myView.GetBGColB();
- }
- System.Windows.Forms.ColorDialog ColDlg = new ColorDialog();
- ColDlg.Color=System.Drawing.Color.FromArgb(r, g, b);
- if (ColDlg.ShowDialog() == DialogResult.OK)
- {
- Color c = ColDlg.Color;
- r=c.R;
- g=c.G;
- b=c.B;
- if (IsObjectColor)
- myView.SetColor(r, g, b);
- else
- myView.SetBackgroundColor(r, g, b);
- }
- this.myView.UpdateCurrentViewer();
-
- }
-
- public void DeleteObjects()
- {
- myView.EraseObjects();
- }
- public void ImportModel(IE.ModelFormat format)
- {
- int theformat=10;
- System.Windows.Forms.OpenFileDialog openDialog = new OpenFileDialog();
-
- string DataDir=((Environment.GetEnvironmentVariable("CASROOT")) + "\\..\\data");
-
- string filter="";
-
- switch (format)
- {
- case ModelFormat.BREP:
- openDialog.InitialDirectory = (DataDir + "\\occ");
- theformat=0;
- filter= "BREP Files (*.brep *.rle)|*.brep; *.rle";
- break;
- case ModelFormat.CSFDB:
- theformat=1;
- filter= "CSFDB Files (*.csfdb)|*.csfdb";
- break;
- case IE.ModelFormat.STEP:
- openDialog.InitialDirectory = (DataDir + "\\step");
- theformat=2;
- filter="STEP Files (*.stp *.step)|*.stp; *.step";
- break;
- case IE.ModelFormat.IGES:
- openDialog.InitialDirectory = (DataDir + "\\iges");
- theformat=3;
- filter="IGES Files (*.igs *.iges)|*.igs; *.iges";
- break;
- default:
- break;
- }
- openDialog.Filter = filter+"|All files (*.*)|*.*" ;
- if(openDialog.ShowDialog() == DialogResult.OK)
- {
- string filename = openDialog.FileName;
- if ( filename=="")
- return;
- this.Cursor=System.Windows.Forms.Cursors.WaitCursor;
- if (!myView.TranslateModel(filename, theformat, true))
- MessageBox.Show("Cann't read this file", "Error!",
- MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.Cursor=System.Windows.Forms.Cursors.Default;
- }
- this.myView.ZoomAllView();
- }
-
- public void ExportModel(ModelFormat format)
- {
- int theformat=10;
- System.Windows.Forms.SaveFileDialog saveDialog = new SaveFileDialog();
- string DataDir=((Environment.GetEnvironmentVariable("CASROOT")) + "\\..\\data");
- string filter="";
- switch (format)
- {
- case IE.ModelFormat.BREP:
- saveDialog.InitialDirectory = (DataDir + "\\occ");
- theformat=0;
- filter= "BREP Files (*.brep *.rle)|*.brep; *.rle";
- break;
- case IE.ModelFormat.CSFDB:
- theformat=1;
- filter= "CSFDB Files (*.csfdb)|*.csfdb";
- break;
- case IE.ModelFormat.STEP:
- saveDialog.InitialDirectory = (DataDir + "\\step");
- theformat=2;
- filter="STEP Files (*.stp *.step)|*.step; *.stp";
- break;
- case IE.ModelFormat.IGES:
- saveDialog.InitialDirectory = (DataDir + "\\iges");
- theformat=3;
- filter="IGES Files (*.igs *.iges)| *.iges; *.igs";
- break;
- case IE.ModelFormat.VRML:
- saveDialog.InitialDirectory = (DataDir + "\\vrml");
- theformat=4;
- filter="VRML Files (*.vrml)|*.vrml";
- break;
- case IE.ModelFormat.STL:
- saveDialog.InitialDirectory = (DataDir + "\\stl");
- theformat=5;
- filter="STL Files (*.stl)|*.stl";
- break;
- case IE.ModelFormat.IMAGE:
- saveDialog.InitialDirectory = (DataDir + "\\images");
- theformat=6;
- filter="Images Files (*.bmp *.gif *.xwd)| *.bmp; *.gif; *.xwd";
- break;
- default:
- break;
- }
- saveDialog.Filter = filter;
- if(saveDialog.ShowDialog() == DialogResult.OK)
- {
- string filename = saveDialog.FileName;
- if ( filename=="")
- return;
- this.Cursor=System.Windows.Forms.Cursors.WaitCursor;
- if (!myView.TranslateModel(filename, theformat, false))
- MessageBox.Show("Cann't write this file", "Error!",
- MessageBoxButtons.OK, MessageBoxIcon.Warning);
- this.Cursor=System.Windows.Forms.Cursors.Default;
- }
- }
-
- private void ContextColor_Click(object sender, System.EventArgs e)
- {
- this.ChangeColor(true);
- }
-
- private void menuItem1_Click(object sender, System.EventArgs e)
- {
- this.myView.UpdateCurrentViewer();
- this.ChangeColor(false);
- }
-
- private void ContextWireframe_Click(object sender, System.EventArgs e)
- {
- this.SetDisplayMode(0);
- this.myView.UpdateCurrentViewer();
- IE.Form1 parent=(IE.Form1)this.ParentForm;
- parent.SelectionChanged();
- }
-
- private void ContextShading_Click(object sender, System.EventArgs e)
- {
- this.SetDisplayMode(1);
- this.myView.UpdateCurrentViewer();
- IE.Form1 parent=(IE.Form1)this.ParentForm;
- parent.SelectionChanged();
- }
-
- private void ContMenTranc_Click(object sender, System.EventArgs e)
- {
- IE.TransparencyDialog dlg = new TransparencyDialog();
- dlg.View=this.myView;
- dlg.ShowDialog(this);
- }
-
- private void ContMenDelete_Click(object sender, System.EventArgs e)
- {
- this.DeleteObjects();
- }
-
- private void ContMatBrass_Click(object sender, System.EventArgs e)
- {
- this.myView.UpdateCurrentViewer();
- this.myView.SetMaterial(0);
- }
-
- private void ContMenBronze_Click(object sender, System.EventArgs e)
- {
- this.myView.UpdateCurrentViewer();
- this.myView.SetMaterial(1);
- }
-
- private void ContMenCopper_Click(object sender, System.EventArgs e)
- {
- this.myView.UpdateCurrentViewer();
- this.myView.SetMaterial(2);
- }
-
- private void ContMenGold_Click(object sender, System.EventArgs e)
- {
- this.myView.UpdateCurrentViewer();
- this.myView.SetMaterial(3);
- }
-
- private void ContMenPewt_Click(object sender, System.EventArgs e)
- {
- this.myView.UpdateCurrentViewer();
- this.myView.SetMaterial(4);
- }
-
- private void ContMenPlaster_Click(object sender, System.EventArgs e)
- {
- this.myView.UpdateCurrentViewer();
- this.myView.SetMaterial(5);
- }
-
- private void ContMenPlastic_Click(object sender, System.EventArgs e)
- {
- this.myView.UpdateCurrentViewer();
- this.myView.SetMaterial(6);
- }
-
- private void ContMenSilver_Click(object sender, System.EventArgs e)
- {
- this.myView.UpdateCurrentViewer();
- this.myView.SetMaterial(7);
- }
-
- private void toolBar1_MouseHover(object sender, System.EventArgs e)
- {
- IE.Form1 parent=(IE.Form1)this.ParentForm;
- parent.StatusBar.Text="View toolbar";
-
- }
-
- private void toolBar1_MouseLeave(object sender, System.EventArgs e)
- {
- IE.Form1 parent=(IE.Form1)this.ParentForm;
- parent.StatusBar.Text="";
- }
-
- private void myPopupObject_Popup(object sender, System.EventArgs e)
- {
- int mode=this.myView.DisplayMode();
- switch (mode)
- {
- case -1:
- break;
- case 0:
- this.ContextWireframe.Enabled=false;
- this.ContextShading.Enabled=true;
- this.ContMenTranc.Enabled=false;
- break;
- case 1:
- this.ContextShading.Enabled=false;
- this.ContextWireframe.Enabled=true;
- this.ContMenTranc.Enabled=true;
- break;
- case 10:
- this.ContextShading.Enabled=true;;
- this.ContextWireframe.Enabled=true;
- this.ContMenTranc.Enabled=true;
- break;
- default:
- break;
-
- }
- }
-
- public shell View
- {
- get
- {
- return this.myView;
- }
- set
- {
- this.myView=value;
- }
- }
-
- public void InitView()
- {
- this.myView.InitOCCViewer();
- }
-
- public void SetContext(shell View)
- {
- this.myView.SetAISContext(View);
- }
-
- private void Form2_Closed(object sender, System.EventArgs e)
- {
- IE.Form1 parent = (IE.Form1) this.ParentForm;
- parent.OnFileClose();
- }
-
- public CurrentAction3d Mode
- {
- get
- {
- return this.myCurrentMode;
- }
- set
- {
- this.myCurrentMode=value;
- }
- }
-
- public float Zoom
- {
- set
- {
- this.myCurZoom=value;
- }
- }
-
- public bool DegenerateMode
- {
- get
- {
- return this.myDegenerateModeIsOn;
- }
- set
- {
- this.myDegenerateModeIsOn=value;
- }
- }
-
- }
-
-}
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 1.3
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">1.3</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1">this is my long string</data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- [base64 mime encoded serialized .NET Framework object]
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- [base64 mime encoded string representing a byte array form of the .NET Framework object]
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used forserialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>1.3</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <data name="imageList1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="imageList1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="imageList1.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>17, 17</value>
- </data>
- <data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
- <value>
- AAEAAAD/////AQAAAAAAAAAMAgAAAFpTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0xLjAuNTAw
- MC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZT
- eXN0ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMA
- AADoEgAAAk1TRnQBSQFMAgEBEAEAARMBAAEEAQABEAEAARABAAT/AQkBEAj/AUIBTQE2AQQGAAE2AQQC
- AAEoAwABQAMAAVADAAEBAQABCAYAARQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB
- 3AHAAQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IB
- AAM5AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8B
- MwMAAWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYC
- AAFmAZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMC
- AAHMAWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQAB
- ZgEAATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8B
- AAEzAWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQAB
- MwGZAWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQAB
- MwLMAQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQAB
- MwEAAWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMB
- mQEAAWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQAB
- ZgGZAWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYB
- zAH/AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMB
- mQEAAZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgAB
- mQFmATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwB
- AAKZAf8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB
- /wEzAQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQAB
- mQEAAcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYC
- AAHMAWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYB
- AAHMApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8C
- AAHMAf8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQAB
- mQEAAcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMB
- AAHMAmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB
- /wGZAcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC
- /wEzAQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC
- /wFmAQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gB
- AAHwAfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD//8A/wD/AP8ACwAB
- +z4AA/sB7D0AAfsCAAHsCAAD+zQAAuwGAAL7AQAC+w0AAewjAATsBgAC+wEAAvsOAAHsGwAC+wMAAuwC
- AAHsAQAB7AUAAvsBAAL7DwAF7AEAAuwVAAP7AewEAALsBQAC+wEAAvsPAAHsHgAB7AL7AwAD7AUAA/sQ
- AAHsHgAB7AMAAfsBAAHsAQAB7BgAAeweAAHsBAAB7AIAAewYAAHsHwAB7AMAAewDAAP7MAAD+wIAAuwB
- AAHsAQAC7AMAAfsVAAHsHQAD7AIAAuwbAAHsHAAB7AEAA+w8AALsPwAB7EIAAfs/AAH7CwABAQnsAwAJ
- 7AEBCgAC7AGGDgAB+wEAAfsBAAH7CQACAQcAAuwCAAHsAf4HAAIBCQABhgH7AewCAAEKAQQGAAoBCAAB
- AQEAAQEGAAHsAQAB7AEAAewBAAH+BgABAQEAAQEGAAHsA/sB7AEKAQABhQEAAYUFAAHsAQEDAAP7AQAC
- AQcAAQECAAEBBf4B7AL+AuwCAAb+AQAC/gEBBAABhgFYAa4BhQEEAQoBhQEAAYUCXwGFBAAB7AEAAQED
- AAH7AgAB7AEAAQEFAAH7AQECAAEBBQAB7AIAAuwCAAH+BQABAQIAAQEEAAGGAewBrgEAAYoDAAGFAV8B
- AAEGAQQDAAHsAgAKAQUAAQEB+wEAAQEFAAHsAgAC7AIAAf4FAAEBAgAB+wQAAYYB7AIAAX0BrAIAAYUB
- awHZAccBCgMAAewCAAH+BQAB7AIAAewCAAP7AQEC+wEBBQAB7AIAAuwCAAH+BQABAQEAAfsBAQQAAvsB
- hgEAAfsBngHHAQABuAFfAgABCgMAAewCAAH+BQAB7AIAAewFAAEBAfsBAAEBBQAB7AIAAuwCAAH+BQAB
- AQb7AQABhgGuBAABsgG4AQoBXwGhAQABCgMAAewCAAH+BQAB7AIAAewEAAH7AQECAAEBBQAB7AIAAuwC
- AAH+BQABAQEAAfsBAQgAAaECXwEGAQABhQFfAQABCgMAAewCAAH+BQAB7AIAAewFAAEBAuwBAQbsAgAK
- 7AEBAgAB+wgAAQoBhQGhAf4CAAGFAgoDAAHsAgAB/gUAAewCAAHsBgABAQEAAQEGAAHsAQAB7AEAAewB
- AAH+BgABAQEAAQEIAAEKAgAB/gQAAQoDAArsAgAB7AcAAgEHAALsAgAB7AH+BwACAQgAAYUBXwGhAf4B
- hQFfAQoGAAHsAQAB/gYAAewBAAHsCAABAQnsAwAJ7AEBCQABhQFfAQYBXwGFCAAB7AH+BwAC7CkAAoUL
- AArsOQAB+xkACuwGAArsCwAD+wgAAfsJAQYAAewB/gcAAuwFAAHsAf4HAALsCQAB+wEAAfsBAAH7BwAB
- AQH7BwABAQHsBQAB7AEAAf4GAAHsAQAB7AQAAewBAAH+BgAB7AEAAewKAAH7CQABAQEAAfsGAAEBAQAB
- 7AQAAewCAAoBAwAB7AIABv4B7AL+AewHAALsAfsBAAPsBQABAQIAAfsBAAH7A/4BAQL+AewDAAHsAgAB
- AQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB7AQAAfsBAAHsAgAB+wMAAewB+wQAAQEDAAL7AwABAQIAAewD
- AAHsAgABAQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB7AMAAfsCAAHsBgAB7AEAAfsDAAEBAgAD+wMAAQEC
- AAHsAwAB7AIAAQEFAAHsAgABAQMAAewCAAH+BQAB7AIAAewCAAb7BAAF+wIAAQECAAH+BQABAQIAAewD
- AAHsAgABAQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB7AMAAfsCAAHsBgAB7AEAAfsDAAEBAgAB/gUAAQEC
- AAHsAwAB7AIAAQEBAAT7AewCAAEBAwAB7AIAAf4FAAHsAgAB7AQAAfsBAAHsAgAB+wMAAewB+wQAAQEC
- AAH+BQABAQIAAewDAAPsAQEB7AL7A+wCAAEBAwAKAQIAAewGAAPsAfsBAAPsBQAKAQIAAewEAAHsAQAB
- AQEAAfsBAAH7AgAB7AEAAQEEAAEBAQAB/gYAAQEBAAHsCQAB+woAAewBAAH+BgAB7AEAAewFAAHsAQEB
- AAH7AgAB+wIAAewBAQUAAQEB/gIAAfsEAAEBAewHAAH7AQAB+wEAAfsJAAHsAf4HAALsBgAKAQYAAgED
- +wUBCAAD+wsACuwNAAH7CQAB+wEAAfsBAAH7DQAB+yQAAfsKAAH7NQAB+wkAAfsIAAP7CgAD+w4AAfsh
- AAL7DAAC+wIAAewDAAfsA/sB7BYAAfsIAAH7AewBAwoAAfsBAAH7DgAB+xcAA/sJAAEDCQAB+xEAAewW
- AAH7AQAB+wEAAfskAAHsDwAB+wgAAfsPAAXsBQAB7AYABOwCAAHsBwAF7AIAA/sHAAH7DQAB7AYAAewE
- AAHsBAAB7AUAAewBAAHsBQAB7AYAAewCAAH7AwAB+wkAAfsIAAHsBwAB7AMAAewEAAHsBgAC7AUAAewH
- AAHsBAAB+wsAAfsGAALsBwAC7AIAAewDAALsBgAC7AQAAuwHAAEDAewCAAX7BQAF+wUAAewJAAHsAgAB
- 7AMAAewIAAHsBAAB7AQAA/sCAAHsAwAB+wsAAfsGAAHsCQAB7AIAAewDAAHsCAAB7AQAAewCAAL7BQAB
- 7AQAAfsEAAH7BAAB+wcAAuwHAALsAgAB7AMAAuwGAALsBQAB7AcAAuwJAAH7CwAB+wEAAewHAAHsAwAB
- 7AQAAewGAALsBQAB7AcAAewKAAH7CAAB+wEAAfsDAAHsBQAB7AH7AQAB+wEAAfsFAAHsBAAB7AEAAewB
- AAP7AgAB7AUAAewJAAH7AQAB+wEAAfsGAAL7BQAF7AIABfsE7AEABuwIAAXsCwAD+wcAA/sKAAP7AQAB
- +yUAAfsIAAFCAU0BPgcAAT4DAAEoAwABQAMAAVADAAEBAQABAQUAAYABAhYAA/+BAAH9B/8B+AF/Bv8B
- /QG/AccB/wHAAR8BwAEfAf8BnwGTAf8CzwHfAc8B/gEfAZMB/wLXAd8B1wE5AY8BkwH/AdgBAwHfAdsB
- wwHPAZMB/wLbAd8B2wHxAscB+wLbAd8B2wH3AVcB/wHBAtsB3wHbAfcBtwH/AZsC2wHfAdsB+wGoAf8B
- rwHAARsBwAEbARkBTgH/AbUC6wHvAesBwgE/Af8BuQLzAfcB8wHBAv8BEQH4AQMB+AEDAecC/wG/BP8B
- 9wf/Af4H/wH+Af8B4AEHAQABPwHxAf8B+gG/AecB8wE/AZ8B8QGfAYABHwHrAfUBXwGvAcABDwGcAU8B
- 7AEAAWABBwGAAYcBrgHXAc0B9gFvAbcBgwGTAbABAwHlAfYBbwG3AZEBgwG3AdsBAQH2AW8BpwGAAZsB
- twHbAeUB9gFvAYABlgELAbcB2wHNAfYBbwGnAfABSwG3AdsB4AEGAQABNwHwAWMBtwHbAfUB+gGvAdcB
- +wFzAYABGwH5AfwBzwHnAfgBDwHXAesB/AEAAeABBwH8AR8B5wHzBP8B/gF/AfABAwb/Af4D/wGAAR8B
- gAEfAfwBfwGAAR8BnwHPAZ8BzwH6Ab8BnwHPAa8B1wGvAdcB/gH/Aa8B1wGwAQMBsAEDAfABjwG0AQMB
- twHbAbcB2wHWAecBuQHbAbcB2wG3AdsBtwHrAbEB2wG3AdsBtwHbAQMBwQG3AdsBtwHbAbcB2wG3AesB
- twHbAbQBGwG3AdsB1gHnAbcB2wGAARsBgAEbAfABjwGAARsB1QFrAdcB6wH+Af8B1wHrAeUBswHmAfMB
- +gG/AecB8wHwAQMB8AEDAfwBfwHwAQMB/wHvAfoBvwH+BP8B9wH+Bv8B+wH+Af8BHwH4Af8B/QT/AT8B
- /AHcAQABfwH/Af4B/wEfAfoBzwH9AT8B/wH8AX8BzwH3AecB/QGfAf8B+gG/AecB/wHzAf0BzwH9Af4B
- /wHyAQ8BuQENAeQBGAH+Af8B+QH3AbwB9QHzAe0B3wH3AvsBvQH5AvcBvwH7AfMB+QG5AfkB5wHzAQcB
- wQH3Af0BuwH9Ae8BGwG/AfsB9wH9AbsB/QHsAfsB3gH3AfMB+QG5AfkB9wHzAf4B/wHrAfsBvQH5AvcB
- /gH/AV0B8gG+AfUBGwHvAfoBvwE+AQwCAQH8AR8B/AF/AR8B+AG/A/8B/gH/FgAL
-</value>
- </data>
- <data name="myPopup.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="myPopup.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>122, 17</value>
- </data>
- <data name="myPopup.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="menuItem1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="menuItem1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="myPopupObject.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="myPopupObject.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>220, 17</value>
- </data>
- <data name="myPopupObject.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContextWireframe.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContextWireframe.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContextShading.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContextShading.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContextColor.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContextColor.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContextMaterial.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContextMaterial.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMatBrass.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMatBrass.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenBronze.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenBronze.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenCopper.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenCopper.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenGold.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenGold.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenPewt.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenPewt.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenPlaster.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenPlaster.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenPlastic.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenPlastic.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenSilver.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenSilver.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenTranc.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenTranc.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenDelete.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="ContMenDelete.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>(Default)</value>
- </data>
- <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.Name">
- <value>Form2</value>
- </data>
- <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>8, 8</value>
- </data>
- <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </data>
- <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>80</value>
- </data>
- <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </data>
- <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAIAICAQAAAAAADoAgAAJgAAABAQEAAAAAAAKAEAAA4DAAAoAAAAIAAAAEAAAAABAAQAAAAAAIAC
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/
- AAAA//8A/wAAAP8A/wD//wAA////AAiIiIAAiIgAAAAAAAAAAAAAAACIgAAIiAAAAAAAAAAAD///AA//
- 8AiIAAAAAAAAAA////////8ACIgAAAAAAAAP//////////AIgAAAAAAAD///////////AIgAAAAAAA//
- //////////AIAAAAAAAP////////////CIAAAAAAD///+IiIiIiIiACIiIiAAA/////////////wAAAA
- iAAP////////////////8AiAD/////////////////8AgA//////////////////8IAP////////////
- //////CID//////////////////wCA////iIiIiIiIiIiIiIiAgP//////////////////8ID///////
- ////////////CA///////////////////wgP//////////////////8ID///////////////////CA//
- /////////////////wgP///4iIiIiIiIiIiIiIgID///////////////////CA////mZ//mf+Zn/mZ//
- /wgP///5/5+f+fn///n///8ID///+f+fn/n5///5////CA////n/n5/5+f//+f///wgP///5mf/5n/mZ
- /5n///8ID///////////////////CA///////////////////wgAAAAAAAAAAAAAAAAAAAAAgcP//wAA
- //8AAD//AAAP/wAAB/8AAAP/AAAD/wAAAf8AAAAHAAAAAwAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAEoAAAAEAAAACAAAAABAAQAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAA
- AACAAIAAgIAAAMDAwACAgIAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AAd3B3AAAAAAAAdwAHcA
- AAAP8A//AHAAAA//////AAZgD/d3d3cHd2AP/////wAHcA////////AAD/d3d3d3dwcP////////Bw//
- //////8HD5n/+f/5nwcPn5+fn5//Bw+fn5+fn/8HD5n/+f/5nwcP////////BwAAAAAAAAAAif8AAAA/
- AAAAHwAAABkAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAA==
-</value>
- </data>
-</root>
\ No newline at end of file
+++ /dev/null
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
- <PropertyGroup>
- <ProjectType>Local</ProjectType>
- <ProductVersion>8.0.50727</ProductVersion>
- <SchemaVersion>2.0</SchemaVersion>
- <ProjectGuid>{B9914BB3-B886-4B41-B48D-350EBEBEFD1F}</ProjectGuid>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
- <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
- <ApplicationIcon>App.ico</ApplicationIcon>
- <AssemblyKeyContainerName>
- </AssemblyKeyContainerName>
- <AssemblyName>IE</AssemblyName>
- <AssemblyOriginatorKeyFile>
- </AssemblyOriginatorKeyFile>
- <DefaultClientScript>JScript</DefaultClientScript>
- <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
- <DefaultTargetSchema>IE50</DefaultTargetSchema>
- <DelaySign>false</DelaySign>
- <OutputType>WinExe</OutputType>
- <RootNamespace>IE</RootNamespace>
- <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
- <StartupObject>
- </StartupObject>
- <FileUpgradeFlags>
- </FileUpgradeFlags>
- <UpgradeBackupLocation>
- </UpgradeBackupLocation>
- <OldToolsVersion>2.0</OldToolsVersion>
- <ApplicationRevision>0</ApplicationRevision>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
- <OutputPath>bin\Debug\</OutputPath>
- <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
- <BaseAddress>285212672</BaseAddress>
- <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
- <ConfigurationOverrideFile>
- </ConfigurationOverrideFile>
- <DefineConstants>DEBUG;TRACE</DefineConstants>
- <DocumentationFile>
- </DocumentationFile>
- <DebugSymbols>true</DebugSymbols>
- <FileAlignment>4096</FileAlignment>
- <NoStdLib>false</NoStdLib>
- <NoWarn>
- </NoWarn>
- <Optimize>false</Optimize>
- <RegisterForComInterop>false</RegisterForComInterop>
- <RemoveIntegerChecks>false</RemoveIntegerChecks>
- <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
- <WarningLevel>4</WarningLevel>
- <DebugType>full</DebugType>
- <ErrorReport>prompt</ErrorReport>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
- <OutputPath>bin\Release\</OutputPath>
- <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
- <BaseAddress>285212672</BaseAddress>
- <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
- <ConfigurationOverrideFile>
- </ConfigurationOverrideFile>
- <DefineConstants>TRACE</DefineConstants>
- <DocumentationFile>
- </DocumentationFile>
- <DebugSymbols>false</DebugSymbols>
- <FileAlignment>4096</FileAlignment>
- <NoStdLib>false</NoStdLib>
- <NoWarn>
- </NoWarn>
- <Optimize>true</Optimize>
- <RegisterForComInterop>false</RegisterForComInterop>
- <RemoveIntegerChecks>false</RemoveIntegerChecks>
- <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
- <WarningLevel>4</WarningLevel>
- <DebugType>none</DebugType>
- <ErrorReport>prompt</ErrorReport>
- <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
- <PlatformTarget>x86</PlatformTarget>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
- <DebugSymbols>true</DebugSymbols>
- <OutputPath>bin\x86\Debug\</OutputPath>
- <DefineConstants>DEBUG;TRACE</DefineConstants>
- <BaseAddress>285212672</BaseAddress>
- <DebugType>full</DebugType>
- <PlatformTarget>x86</PlatformTarget>
- <ErrorReport>prompt</ErrorReport>
- <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
- <OutputPath>bin\x86\Release\</OutputPath>
- <DefineConstants>TRACE</DefineConstants>
- <BaseAddress>285212672</BaseAddress>
- <Optimize>true</Optimize>
- <DebugType>
- </DebugType>
- <PlatformTarget>x86</PlatformTarget>
- <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
- <ErrorReport>prompt</ErrorReport>
- </PropertyGroup>
- <ItemGroup>
- <Reference Include="System">
- <Name>System</Name>
- </Reference>
- <Reference Include="System.Data">
- <Name>System.Data</Name>
- </Reference>
- <Reference Include="System.Drawing">
- <Name>System.Drawing</Name>
- </Reference>
- <Reference Include="System.Windows.Forms">
- <Name>System.Windows.Forms</Name>
- </Reference>
- <Reference Include="System.Xml">
- <Name>System.XML</Name>
- </Reference>
- <ProjectReference Include="..\OCC\OCC.vcproj">
- <Name>OCC</Name>
- <Project>{DCB139CF-2190-412E-B72F-8B080CC01422}</Project>
- <Package>{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}</Package>
- </ProjectReference>
- <ProjectReference Include="..\shell\shell.vcproj">
- <Name>shell</Name>
- <Project>{969912D9-78E7-4AB8-B4FF-6B52B4F03991}</Project>
- <Package>{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}</Package>
- </ProjectReference>
- </ItemGroup>
- <ItemGroup>
- <Compile Include="AboutDialog.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="AssemblyInfo.cs">
- <SubType>Code</SubType>
- </Compile>
- <Compile Include="Form1.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="Form2.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="MaterialDialog.cs">
- <SubType>Form</SubType>
- </Compile>
- <Compile Include="TransparencyDialog.cs">
- <SubType>Form</SubType>
- </Compile>
- <EmbeddedResource Include="AboutDialog.resx">
- <DependentUpon>AboutDialog.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="Form1.resx">
- <DependentUpon>Form1.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="Form2.resx">
- <DependentUpon>Form2.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="MaterialDialog.resx">
- <DependentUpon>MaterialDialog.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <EmbeddedResource Include="TransparencyDialog.resx">
- <DependentUpon>TransparencyDialog.cs</DependentUpon>
- <SubType>Designer</SubType>
- </EmbeddedResource>
- <None Include="app.config" />
- <Content Include="App.ico" />
- </ItemGroup>
- <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
- <PropertyGroup>
- <PreBuildEvent>
- </PreBuildEvent>
- <PostBuildEvent>
- </PostBuildEvent>
- </PropertyGroup>
-</Project>
\ No newline at end of file
+++ /dev/null
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IE", "IE.csproj", "{B9914BB3-B886-4B41-B48D-350EBEBEFD1F}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OCC", "..\OCC\OCC.vcproj", "{DCB139CF-2190-412E-B72F-8B080CC01422}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shell", "..\shell\shell.vcproj", "{969912D9-78E7-4AB8-B4FF-6B52B4F03991}"
- ProjectSection(ProjectDependencies) = postProject
- {DCB139CF-2190-412E-B72F-8B080CC01422} = {DCB139CF-2190-412E-B72F-8B080CC01422}
- EndProjectSection
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|Any CPU = Debug|Any CPU
- Debug|Mixed Platforms = Debug|Mixed Platforms
- Debug|Win32 = Debug|Win32
- Release|Any CPU = Release|Any CPU
- Release|Mixed Platforms = Release|Mixed Platforms
- Release|Win32 = Release|Win32
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
- {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Debug|Any CPU.Build.0 = Debug|Any CPU
- {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
- {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
- {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Debug|Win32.ActiveCfg = Debug|Any CPU
- {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Release|Any CPU.ActiveCfg = Release|Any CPU
- {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Release|Any CPU.Build.0 = Release|Any CPU
- {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
- {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Release|Mixed Platforms.Build.0 = Release|Any CPU
- {B9914BB3-B886-4B41-B48D-350EBEBEFD1F}.Release|Win32.ActiveCfg = Release|Any CPU
- {DCB139CF-2190-412E-B72F-8B080CC01422}.Debug|Any CPU.ActiveCfg = Debug|Win32
- {DCB139CF-2190-412E-B72F-8B080CC01422}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
- {DCB139CF-2190-412E-B72F-8B080CC01422}.Debug|Mixed Platforms.Build.0 = Debug|Win32
- {DCB139CF-2190-412E-B72F-8B080CC01422}.Debug|Win32.ActiveCfg = Debug|Win32
- {DCB139CF-2190-412E-B72F-8B080CC01422}.Debug|Win32.Build.0 = Debug|Win32
- {DCB139CF-2190-412E-B72F-8B080CC01422}.Release|Any CPU.ActiveCfg = Release|Win32
- {DCB139CF-2190-412E-B72F-8B080CC01422}.Release|Mixed Platforms.ActiveCfg = Release|Win32
- {DCB139CF-2190-412E-B72F-8B080CC01422}.Release|Mixed Platforms.Build.0 = Release|Win32
- {DCB139CF-2190-412E-B72F-8B080CC01422}.Release|Win32.ActiveCfg = Release|Win32
- {DCB139CF-2190-412E-B72F-8B080CC01422}.Release|Win32.Build.0 = Release|Win32
- {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Debug|Any CPU.ActiveCfg = Debug|Win32
- {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32
- {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Debug|Mixed Platforms.Build.0 = Debug|Win32
- {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Debug|Win32.ActiveCfg = Debug|Win32
- {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Debug|Win32.Build.0 = Debug|Win32
- {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Release|Any CPU.ActiveCfg = Release|Win32
- {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Release|Mixed Platforms.ActiveCfg = Release|Win32
- {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Release|Mixed Platforms.Build.0 = Release|Win32
- {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Release|Win32.ActiveCfg = Release|Win32
- {969912D9-78E7-4AB8-B4FF-6B52B4F03991}.Release|Win32.Build.0 = Release|Win32
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
+++ /dev/null
-using System;
-using System.Drawing;
-using System.Collections;
-using System.ComponentModel;
-using System.Windows.Forms;
-
-namespace IE
-{
- /// <summary>
- /// Summary description for MaterialDialog.
- /// </summary>
- public class MaterialDialog : System.Windows.Forms.Form
- {
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.Container components = null;
-
- public MaterialDialog()
- {
- //
- // Required for Windows Form Designer support
- //
- InitializeComponent();
-
- //
- // TODO: Add any constructor code after InitializeComponent call
- //
- this.myView=null;
- }
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- protected override void Dispose( bool disposing )
- {
- if( disposing )
- {
- if(components != null)
- {
- components.Dispose();
- }
- }
- base.Dispose( disposing );
- }
-
- #region Windows Form Designer generated code
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(MaterialDialog));
- this.BTN_PLASTER = new System.Windows.Forms.Button();
- this.BTN_BRASS = new System.Windows.Forms.Button();
- this.BTN_BRONZE = new System.Windows.Forms.Button();
- this.BTN_COPPER = new System.Windows.Forms.Button();
- this.BTN_GOLD = new System.Windows.Forms.Button();
- this.BTN_PEWTER = new System.Windows.Forms.Button();
- this.BTN_PLASTIC = new System.Windows.Forms.Button();
- this.BTN_SILVER = new System.Windows.Forms.Button();
- this.SuspendLayout();
- //
- // BTN_PLASTER
- //
- this.BTN_PLASTER.Location = new System.Drawing.Point(16, 8);
- this.BTN_PLASTER.Name = "BTN_PLASTER";
- this.BTN_PLASTER.Size = new System.Drawing.Size(80, 24);
- this.BTN_PLASTER.TabIndex = 0;
- this.BTN_PLASTER.Text = "Plaster";
- this.BTN_PLASTER.Click += new System.EventHandler(this.button1_Click);
- //
- // BTN_BRASS
- //
- this.BTN_BRASS.Location = new System.Drawing.Point(16, 40);
- this.BTN_BRASS.Name = "BTN_BRASS";
- this.BTN_BRASS.Size = new System.Drawing.Size(80, 24);
- this.BTN_BRASS.TabIndex = 1;
- this.BTN_BRASS.Text = "Brass";
- this.BTN_BRASS.Click += new System.EventHandler(this.BTN_BRASS_Click);
- //
- // BTN_BRONZE
- //
- this.BTN_BRONZE.Location = new System.Drawing.Point(16, 72);
- this.BTN_BRONZE.Name = "BTN_BRONZE";
- this.BTN_BRONZE.Size = new System.Drawing.Size(80, 24);
- this.BTN_BRONZE.TabIndex = 2;
- this.BTN_BRONZE.Text = "Bronze";
- this.BTN_BRONZE.Click += new System.EventHandler(this.BTN_BRONZE_Click);
- //
- // BTN_COPPER
- //
- this.BTN_COPPER.Location = new System.Drawing.Point(16, 104);
- this.BTN_COPPER.Name = "BTN_COPPER";
- this.BTN_COPPER.Size = new System.Drawing.Size(80, 24);
- this.BTN_COPPER.TabIndex = 3;
- this.BTN_COPPER.Text = "Copper";
- this.BTN_COPPER.Click += new System.EventHandler(this.BTN_COPPER_Click);
- //
- // BTN_GOLD
- //
- this.BTN_GOLD.Location = new System.Drawing.Point(16, 136);
- this.BTN_GOLD.Name = "BTN_GOLD";
- this.BTN_GOLD.Size = new System.Drawing.Size(80, 24);
- this.BTN_GOLD.TabIndex = 4;
- this.BTN_GOLD.Text = "Gold";
- this.BTN_GOLD.Click += new System.EventHandler(this.BTN_GOLD_Click);
- //
- // BTN_PEWTER
- //
- this.BTN_PEWTER.Location = new System.Drawing.Point(16, 168);
- this.BTN_PEWTER.Name = "BTN_PEWTER";
- this.BTN_PEWTER.Size = new System.Drawing.Size(80, 24);
- this.BTN_PEWTER.TabIndex = 5;
- this.BTN_PEWTER.Text = "Pewter";
- this.BTN_PEWTER.Click += new System.EventHandler(this.BTN_PEWTER_Click);
- //
- // BTN_PLASTIC
- //
- this.BTN_PLASTIC.Location = new System.Drawing.Point(16, 200);
- this.BTN_PLASTIC.Name = "BTN_PLASTIC";
- this.BTN_PLASTIC.Size = new System.Drawing.Size(80, 24);
- this.BTN_PLASTIC.TabIndex = 6;
- this.BTN_PLASTIC.Text = "Plastic";
- this.BTN_PLASTIC.Click += new System.EventHandler(this.BTN_PLASTIC_Click);
- //
- // BTN_SILVER
- //
- this.BTN_SILVER.Location = new System.Drawing.Point(16, 232);
- this.BTN_SILVER.Name = "BTN_SILVER";
- this.BTN_SILVER.Size = new System.Drawing.Size(80, 24);
- this.BTN_SILVER.TabIndex = 7;
- this.BTN_SILVER.Text = "Silver";
- this.BTN_SILVER.Click += new System.EventHandler(this.BTN_SILVER_Click);
- //
- // MaterialDialog
- //
- this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
- this.ClientSize = new System.Drawing.Size(112, 273);
- this.Controls.Add(this.BTN_SILVER);
- this.Controls.Add(this.BTN_PLASTIC);
- this.Controls.Add(this.BTN_PEWTER);
- this.Controls.Add(this.BTN_GOLD);
- this.Controls.Add(this.BTN_COPPER);
- this.Controls.Add(this.BTN_BRONZE);
- this.Controls.Add(this.BTN_BRASS);
- this.Controls.Add(this.BTN_PLASTER);
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "MaterialDialog";
- this.Text = "MaterialDialog";
- this.ResumeLayout(false);
-
- }
- #endregion
-
- private System.Windows.Forms.Button BTN_PLASTER;
- private System.Windows.Forms.Button BTN_BRASS;
- private System.Windows.Forms.Button BTN_BRONZE;
- private System.Windows.Forms.Button BTN_COPPER;
- private System.Windows.Forms.Button BTN_GOLD;
- private System.Windows.Forms.Button BTN_PEWTER;
- private System.Windows.Forms.Button BTN_PLASTIC;
- private System.Windows.Forms.Button BTN_SILVER;
-
- private int myMaterial;
- private shell myView;
-
- private void button1_Click(object sender, System.EventArgs e)
- {
- this.myMaterial=5;
- ChangeMaterial();
- }
-
- private void BTN_BRASS_Click(object sender, System.EventArgs e)
- {
- this.myMaterial=0;
- ChangeMaterial();
- }
-
- private void BTN_BRONZE_Click(object sender, System.EventArgs e)
- {
- this.myMaterial=1;
- ChangeMaterial();
- }
-
- private void BTN_COPPER_Click(object sender, System.EventArgs e)
- {
- this.myMaterial=2;
- ChangeMaterial();
- }
-
- private void BTN_GOLD_Click(object sender, System.EventArgs e)
- {
- this.myMaterial=3;
- ChangeMaterial();
- }
-
- private void BTN_PEWTER_Click(object sender, System.EventArgs e)
- {
- this.myMaterial=4;
- ChangeMaterial();
- }
-
- private void BTN_PLASTIC_Click(object sender, System.EventArgs e)
- {
- this.myMaterial=6;
- ChangeMaterial();
- }
-
- private void BTN_SILVER_Click(object sender, System.EventArgs e)
- {
- this.myMaterial=7;
- ChangeMaterial();
- }
-
- public int Material
- {
- get
- {
- return this.myMaterial;
- }
- set
- {
- this.myMaterial=value;
- }
- }
-
- public void ChangeMaterial()
- {
- if (myView==null)
- return;
- myView.SetMaterial(this.myMaterial);
-
- }
-
- public shell View
- {
- set
- {
- this.myView=value;
- }
- }
-
- }
-}
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 1.3
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">1.3</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1">this is my long string</data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- [base64 mime encoded serialized .NET Framework object]
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- [base64 mime encoded string representing a byte array form of the .NET Framework object]
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used forserialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>1.3</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <data name="BTN_PLASTER.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="BTN_PLASTER.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_PLASTER.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_BRASS.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="BTN_BRASS.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_BRASS.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_BRONZE.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="BTN_BRONZE.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_BRONZE.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_COPPER.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="BTN_COPPER.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_COPPER.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_GOLD.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="BTN_GOLD.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_GOLD.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_PEWTER.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="BTN_PEWTER.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_PEWTER.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_PLASTIC.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="BTN_PLASTIC.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_PLASTIC.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_SILVER.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="BTN_SILVER.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="BTN_SILVER.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>(Default)</value>
- </data>
- <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>8, 8</value>
- </data>
- <data name="$this.Name">
- <value>MaterialDialog</value>
- </data>
- <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </data>
- <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>80</value>
- </data>
- <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </data>
- <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAEAMDAAAAAAAACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAgAoAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAMDcwADwyqYABAQEAAgICAAMDAwAERERABYW
- FgAcHBwAIiIiACkpKQBVVVUATU1NAEJCQgA5OTkAgHz/AFBQ/wCTANYA/+zMAMbW7wDW5+cAkKmtAAAA
- MwAAAGYAAACZAAAAzAAAMwAAADMzAAAzZgAAM5kAADPMAAAz/wAAZgAAAGYzAABmZgAAZpkAAGbMAABm
- /wAAmQAAAJkzAACZZgAAmZkAAJnMAACZ/wAAzAAAAMwzAADMZgAAzJkAAMzMAADM/wAA/2YAAP+ZAAD/
- zAAzAAAAMwAzADMAZgAzAJkAMwDMADMA/wAzMwAAMzMzADMzZgAzM5kAMzPMADMz/wAzZgAAM2YzADNm
- ZgAzZpkAM2bMADNm/wAzmQAAM5kzADOZZgAzmZkAM5nMADOZ/wAzzAAAM8wzADPMZgAzzJkAM8zMADPM
- /wAz/zMAM/9mADP/mQAz/8wAM///AGYAAABmADMAZgBmAGYAmQBmAMwAZgD/AGYzAABmMzMAZjNmAGYz
- mQBmM8wAZjP/AGZmAABmZjMAZmZmAGZmmQBmZswAZpkAAGaZMwBmmWYAZpmZAGaZzABmmf8AZswAAGbM
- MwBmzJkAZszMAGbM/wBm/wAAZv8zAGb/mQBm/8wAzAD/AP8AzACZmQAAmTOZAJkAmQCZAMwAmQAAAJkz
- MwCZAGYAmTPMAJkA/wCZZgAAmWYzAJkzZgCZZpkAmWbMAJkz/wCZmTMAmZlmAJmZmQCZmcwAmZn/AJnM
- AACZzDMAZsxmAJnMmQCZzMwAmcz/AJn/AACZ/zMAmcxmAJn/mQCZ/8wAmf//AMwAAACZADMAzABmAMwA
- mQDMAMwAmTMAAMwzMwDMM2YAzDOZAMwzzADMM/8AzGYAAMxmMwCZZmYAzGaZAMxmzACZZv8AzJkAAMyZ
- MwDMmWYAzJmZAMyZzADMmf8AzMwAAMzMMwDMzGYAzMyZAMzMzADMzP8AzP8AAMz/MwCZ/2YAzP+ZAMz/
- zADM//8AzAAzAP8AZgD/AJkAzDMAAP8zMwD/M2YA/zOZAP8zzAD/M/8A/2YAAP9mMwDMZmYA/2aZAP9m
- zADMZv8A/5kAAP+ZMwD/mWYA/5mZAP+ZzAD/mf8A/8wAAP/MMwD/zGYA/8yZAP/MzAD/zP8A//8zAMz/
- ZgD//5kA///MAGZm/wBm/2YAZv//AP9mZgD/Zv8A//9mACEApQBfX18Ad3d3AIaGhgCWlpYAy8vLALKy
- sgDX19cA3d3dAOPj4wDq6uoA8fHxAPj4+ADw+/8ApKCgAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
- AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMT
- ExMTExMTEyIiQiI8HTyCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwDODg4Nzc4MQMdAAAA
- AADDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOw4ODgyOCQAAAAdAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODIyMSIAHewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAA7DI3MSIdCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAADEyMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs4JAALAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwxJAAhAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4IgC8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAJAxJB0LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- ALwLCx0dIh0dCwATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACx0dAB0dIiIiIiId
- CxMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvAsdAB0dIiQkAyQkIiIiHSIAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAIgMxMVhZmZqZAyQiHR0AAAAAkAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAvAsdISIDMThZWVmgvaCZWVIkIh0AAB0dIh0hCwALCwALtgAAAAAAAAAAAAAAAOwAAB0iMTEx
- ODhYWZrDw8Ofn1hSJCIAHQAdACIAHSIkAwsdOAAAAADeExMTCwsLIiIkMTEyODg3MllZmprDw8PDwllS
- MSQdHQAAAB0AIiQkAAAAvDi8AAAxAzExMTExMTI4Nzg4ODc4ODhZXpnDw8PDml1YNwMkIh0AAB0hIiQA
- AAAAACIAAAA4ODc4Nzg4ODg4ODg4ODg4ODhZWV6avb2gmllZODcxJCIAAAAdIgMLAAAAACIAAACGE0+G
- T4bs7Oy8vLy8vAAxODg4ODg4NzIyMSQdHQAAvADsCwAiJDExAAAAwjjsAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAALMSQAAAAAAAAAAAAAAAAAEyI4MQsiOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALMSQAAAAA
- AAAAAAAAAAAAAAC8CwsAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8AAsAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP///////wAA////////
- AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
- /////wAA//8AAH//AAD//wAAf/8AAP//4AP//wAA///4B///AAD///gP//8AAP///B///wAA///8H///
- AAD///wf//8AAP///h///wAA///8H///AAD//+AD//8AAP//wAD//wAA//4AAD//AAD//AAAB/8AAP/w
- AAAAAwAA/8AAAAABAADAAAAAADgAAMAAAAAAPAAAwAAAAAA8AADAAAAAIDgAAP///j/+AQAA///+P/+D
- AAD///4///8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
- /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA
-</value>
- </data>
-</root>
\ No newline at end of file
+++ /dev/null
-using System;
-using System.Drawing;
-using System.Collections;
-using System.ComponentModel;
-using System.Windows.Forms;
-
-namespace IE
-{
- /// <summary>
- /// Summary description for TransparencyDialog.
- /// </summary>
- public class TransparencyDialog : System.Windows.Forms.Form
- {
- private System.Windows.Forms.NumericUpDown MyTransparency;
- /// <summary>
- /// Required designer variable.
- /// </summary>
- private System.ComponentModel.Container components = null;
- private shell myView;
-
- public TransparencyDialog()
- {
- //
- // Required for Windows Form Designer support
- //
- InitializeComponent();
-
- //
- // TODO: Add any constructor code after InitializeComponent call
- //
- myView=null;
- }
-
- /// <summary>
- /// Clean up any resources being used.
- /// </summary>
- protected override void Dispose( bool disposing )
- {
- if( disposing )
- {
- if(components != null)
- {
- components.Dispose();
- }
- }
- base.Dispose( disposing );
- }
-
- #region Windows Form Designer generated code
- /// <summary>
- /// Required method for Designer support - do not modify
- /// the contents of this method with the code editor.
- /// </summary>
- private void InitializeComponent()
- {
- System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(TransparencyDialog));
- this.MyTransparency = new System.Windows.Forms.NumericUpDown();
- ((System.ComponentModel.ISupportInitialize)(this.MyTransparency)).BeginInit();
- this.SuspendLayout();
- //
- // MyTransparency
- //
- this.MyTransparency.Location = new System.Drawing.Point(16, 16);
- this.MyTransparency.Maximum = new System.Decimal(new int[] {
- 10,
- 0,
- 0,
- 0});
- this.MyTransparency.Name = "MyTransparency";
- this.MyTransparency.Size = new System.Drawing.Size(96, 20);
- this.MyTransparency.TabIndex = 0;
- this.MyTransparency.ValueChanged += new System.EventHandler(this.MyTransparency_ValueChanged);
- //
- // TransparencyDialog
- //
- this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
- this.ClientSize = new System.Drawing.Size(128, 53);
- this.Controls.Add(this.MyTransparency);
- this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.MaximizeBox = false;
- this.MinimizeBox = false;
- this.Name = "TransparencyDialog";
- this.Text = "TransparencyDialog";
- ((System.ComponentModel.ISupportInitialize)(this.MyTransparency)).EndInit();
- this.ResumeLayout(false);
-
- }
- #endregion
-
- private void MyTransparency_ValueChanged(object sender, System.EventArgs e)
- {
- if (this.myView==null)
- return;
- int transp = (int)this.MyTransparency.Value;
- this.myView.SetTransparency(transp);
- }
-
- public shell View
- {
- set
- {
- this.myView=value;
- }
- }
-
- }
-}
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<root>
- <!--
- Microsoft ResX Schema
-
- Version 1.3
-
- The primary goals of this format is to allow a simple XML format
- that is mostly human readable. The generation and parsing of the
- various data types are done through the TypeConverter classes
- associated with the data types.
-
- Example:
-
- ... ado.net/XML headers & schema ...
- <resheader name="resmimetype">text/microsoft-resx</resheader>
- <resheader name="version">1.3</resheader>
- <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
- <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
- <data name="Name1">this is my long string</data>
- <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
- <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
- [base64 mime encoded serialized .NET Framework object]
- </data>
- <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
- [base64 mime encoded string representing a byte array form of the .NET Framework object]
- </data>
-
- There are any number of "resheader" rows that contain simple
- name/value pairs.
-
- Each data row contains a name, and value. The row also contains a
- type or mimetype. Type corresponds to a .NET class that support
- text/value conversion through the TypeConverter architecture.
- Classes that don't support this are serialized and stored with the
- mimetype set.
-
- The mimetype is used forserialized objects, and tells the
- ResXResourceReader how to depersist the object. This is currently not
- extensible. For a given mimetype the value must be set accordingly:
-
- Note - application/x-microsoft.net.object.binary.base64 is the format
- that the ResXResourceWriter will generate, however the reader can
- read any of the formats listed below.
-
- mimetype: application/x-microsoft.net.object.binary.base64
- value : The object must be serialized with
- : System.Serialization.Formatters.Binary.BinaryFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.soap.base64
- value : The object must be serialized with
- : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
- : and then encoded with base64 encoding.
-
- mimetype: application/x-microsoft.net.object.bytearray.base64
- value : The object must be serialized into a byte array
- : using a System.ComponentModel.TypeConverter
- : and then encoded with base64 encoding.
- -->
- <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
- <xsd:element name="root" msdata:IsDataSet="true">
- <xsd:complexType>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element name="data">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
- <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
- <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
- </xsd:complexType>
- </xsd:element>
- <xsd:element name="resheader">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:string" use="required" />
- </xsd:complexType>
- </xsd:element>
- </xsd:choice>
- </xsd:complexType>
- </xsd:element>
- </xsd:schema>
- <resheader name="resmimetype">
- <value>text/microsoft-resx</value>
- </resheader>
- <resheader name="version">
- <value>1.3</value>
- </resheader>
- <resheader name="reader">
- <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <resheader name="writer">
- <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
- </resheader>
- <data name="MyTransparency.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="MyTransparency.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="MyTransparency.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>(Default)</value>
- </data>
- <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>False</value>
- </data>
- <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>8, 8</value>
- </data>
- <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </data>
- <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>80</value>
- </data>
- <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </data>
- <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>Private</value>
- </data>
- <data name="$this.Name">
- <value>TransparencyDialog</value>
- </data>
- <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
- <value>
- AAABAAEAMDAAAAAAAACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAgAoAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAMDcwADwyqYABAQEAAgICAAMDAwAERERABYW
- FgAcHBwAIiIiACkpKQBVVVUATU1NAEJCQgA5OTkAgHz/AFBQ/wCTANYA/+zMAMbW7wDW5+cAkKmtAAAA
- MwAAAGYAAACZAAAAzAAAMwAAADMzAAAzZgAAM5kAADPMAAAz/wAAZgAAAGYzAABmZgAAZpkAAGbMAABm
- /wAAmQAAAJkzAACZZgAAmZkAAJnMAACZ/wAAzAAAAMwzAADMZgAAzJkAAMzMAADM/wAA/2YAAP+ZAAD/
- zAAzAAAAMwAzADMAZgAzAJkAMwDMADMA/wAzMwAAMzMzADMzZgAzM5kAMzPMADMz/wAzZgAAM2YzADNm
- ZgAzZpkAM2bMADNm/wAzmQAAM5kzADOZZgAzmZkAM5nMADOZ/wAzzAAAM8wzADPMZgAzzJkAM8zMADPM
- /wAz/zMAM/9mADP/mQAz/8wAM///AGYAAABmADMAZgBmAGYAmQBmAMwAZgD/AGYzAABmMzMAZjNmAGYz
- mQBmM8wAZjP/AGZmAABmZjMAZmZmAGZmmQBmZswAZpkAAGaZMwBmmWYAZpmZAGaZzABmmf8AZswAAGbM
- MwBmzJkAZszMAGbM/wBm/wAAZv8zAGb/mQBm/8wAzAD/AP8AzACZmQAAmTOZAJkAmQCZAMwAmQAAAJkz
- MwCZAGYAmTPMAJkA/wCZZgAAmWYzAJkzZgCZZpkAmWbMAJkz/wCZmTMAmZlmAJmZmQCZmcwAmZn/AJnM
- AACZzDMAZsxmAJnMmQCZzMwAmcz/AJn/AACZ/zMAmcxmAJn/mQCZ/8wAmf//AMwAAACZADMAzABmAMwA
- mQDMAMwAmTMAAMwzMwDMM2YAzDOZAMwzzADMM/8AzGYAAMxmMwCZZmYAzGaZAMxmzACZZv8AzJkAAMyZ
- MwDMmWYAzJmZAMyZzADMmf8AzMwAAMzMMwDMzGYAzMyZAMzMzADMzP8AzP8AAMz/MwCZ/2YAzP+ZAMz/
- zADM//8AzAAzAP8AZgD/AJkAzDMAAP8zMwD/M2YA/zOZAP8zzAD/M/8A/2YAAP9mMwDMZmYA/2aZAP9m
- zADMZv8A/5kAAP+ZMwD/mWYA/5mZAP+ZzAD/mf8A/8wAAP/MMwD/zGYA/8yZAP/MzAD/zP8A//8zAMz/
- ZgD//5kA///MAGZm/wBm/2YAZv//AP9mZgD/Zv8A//9mACEApQBfX18Ad3d3AIaGhgCWlpYAy8vLALKy
- sgDX19cA3d3dAOPj4wDq6uoA8fHxAPj4+ADw+/8ApKCgAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
- AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMT
- ExMTExMTEyIiQiI8HTyCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwDODg4Nzc4MQMdAAAA
- AADDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOw4ODgyOCQAAAAdAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODIyMSIAHewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAA7DI3MSIdCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAADEyMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs4JAALAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwxJAAhAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4IgC8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAJAxJB0LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- ALwLCx0dIh0dCwATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACx0dAB0dIiIiIiId
- CxMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvAsdAB0dIiQkAyQkIiIiHSIAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAIgMxMVhZmZqZAyQiHR0AAAAAkAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAvAsdISIDMThZWVmgvaCZWVIkIh0AAB0dIh0hCwALCwALtgAAAAAAAAAAAAAAAOwAAB0iMTEx
- ODhYWZrDw8Ofn1hSJCIAHQAdACIAHSIkAwsdOAAAAADeExMTCwsLIiIkMTEyODg3MllZmprDw8PDwllS
- MSQdHQAAAB0AIiQkAAAAvDi8AAAxAzExMTExMTI4Nzg4ODc4ODhZXpnDw8PDml1YNwMkIh0AAB0hIiQA
- AAAAACIAAAA4ODc4Nzg4ODg4ODg4ODg4ODhZWV6avb2gmllZODcxJCIAAAAdIgMLAAAAACIAAACGE0+G
- T4bs7Oy8vLy8vAAxODg4ODg4NzIyMSQdHQAAvADsCwAiJDExAAAAwjjsAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAALMSQAAAAAAAAAAAAAAAAAEyI4MQsiOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALMSQAAAAA
- AAAAAAAAAAAAAAC8CwsAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8AAsAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
- AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP///////wAA////////
- AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
- /////wAA//8AAH//AAD//wAAf/8AAP//4AP//wAA///4B///AAD///gP//8AAP///B///wAA///8H///
- AAD///wf//8AAP///h///wAA///8H///AAD//+AD//8AAP//wAD//wAA//4AAD//AAD//AAAB/8AAP/w
- AAAAAwAA/8AAAAABAADAAAAAADgAAMAAAAAAPAAAwAAAAAA8AADAAAAAIDgAAP///j/+AQAA///+P/+D
- AAD///4///8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
- /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA
-</value>
- </data>
-</root>
\ No newline at end of file
+++ /dev/null
-<?xml version="1.0" encoding="utf-8"?>
-<configuration>
- <appSettings>
- <!-- User application and configured property settings go here.-->
- <!-- Example: <add key="settingName" value="settingValue"/> -->
- <add key="New.Visible" value="True" />
- <add key="About.Visible" value="True" />
- <add key="delete.Enabled" value="False" />
- <add key="delete.Visible" value="False" />
- <add key="transparency.Enabled" value="False" />
- <add key="transparency.Visible" value="False" />
- <add key="marerial.Enabled" value="False" />
- <add key="marerial.Visible" value="True" />
- <add key="color.Enabled" value="False" />
- <add key="color.Visible" value="False" />
- <add key="shading.Enabled" value="False" />
- <add key="shading.Pushed" value="False" />
- <add key="shading.Visible" value="False" />
- <add key="wireframe.Enabled" value="False" />
- <add key="wireframe.Pushed" value="False" />
- <add key="wireframe.Visible" value="False" />
- <add key="material.Enabled" value="False" />
- <add key="material.Visible" value="False" />
- </appSettings>
-</configuration>
\ No newline at end of file
+++ /dev/null
-// OCC.cpp : Defines the entry point for the DLL application.
-//
-//__declspec(dllexport)
-
-#include "stdafx.h"
-#include "OCCViewer.h"
-#pragma unmanaged
-BOOL APIENTRY DllMain( HANDLE hModule,
- DWORD ul_reason_for_call,
- LPVOID lpReserved
- )
-{
- return TRUE;
-}
-
+++ /dev/null
-<?xml version="1.0" encoding="windows-1251"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="OCC"
- ProjectGUID="{DCB139CF-2190-412E-B72F-8B080CC01422}"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="2"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- ManagedExtensions="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="$(CSF_OPT_INC)"
- PreprocessorDefinitions="WNT"
- MinimalRebuild="false"
- BasicRuntimeChecks="0"
- RuntimeLibrary="3"
- UsePrecompiledHeader="2"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="TKV3d.lib TKHLR.lib TKService.lib TKBool.lib TKPShape.lib TKMath.lib TKBO.lib TKernel.lib TKPrim.lib TKTopAlgo.lib TKBRep.lib TKGeomAlgo.lib TKG2d.lib TKG3d.lib PTKernel.lib TKShapeSchema.lib TKXSBase.lib TKIGES.lib TKSTEP.lib TKSTEP209.lib TKSTEPAttr.lib TKSTEPBase.lib TKShHealing.lib TKSTL.lib TKVRML.lib"
- OutputFile="$(OutDir)/OCC.dll"
- LinkIncremental="2"
- AdditionalLibraryDirectories="$(CSF_OPT_LIB32D)"
- GenerateDebugInformation="true"
- AssemblyDebug="1"
- ProgramDatabaseFile="$(OutDir)/OCC.pdb"
- SubSystem="2"
- ResourceOnlyDLL="false"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- ImportLibrary="$(OutDir)/OCC.lib"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="2"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- ManagedExtensions="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="$(CSF_OPT_INC)"
- PreprocessorDefinitions="WNT"
- RuntimeLibrary="2"
- UsePrecompiledHeader="2"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="TKV3d.lib TKHLR.lib TKService.lib TKBool.lib TKPShape.lib TKMath.lib TKBO.lib TKernel.lib TKPrim.lib TKTopAlgo.lib TKBRep.lib TKGeomAlgo.lib TKG2d.lib TKG3d.lib PTKernel.lib TKShapeSchema.lib TKXSBase.lib TKIGES.lib TKSTEP.lib TKSTEP209.lib TKSTEPAttr.lib TKSTEPBase.lib TKShHealing.lib TKSTL.lib TKVRML.lib"
- OutputFile="$(OutDir)/OCC.dll"
- LinkIncremental="1"
- AdditionalLibraryDirectories="$(CSF_OPT_LIB32)"
- GenerateDebugInformation="true"
- SubSystem="2"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- ImportLibrary="$(OutDir)/OCC.lib"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
- >
- <File
- RelativePath=".\OCC.cpp"
- >
- </File>
- <File
- RelativePath=".\OCCViewer.cpp"
- >
- </File>
- <File
- RelativePath=".\stdafx.cpp"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="1"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="1"
- />
- </FileConfiguration>
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
- >
- <File
- RelativePath=".\OCCViewer.h"
- >
- </File>
- <File
- RelativePath=".\stdafx.h"
- >
- </File>
- </Filter>
- <Filter
- Name="Resource Files"
- Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
- UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
- >
- </Filter>
- <File
- RelativePath=".\ReadMe.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
+++ /dev/null
-#include "StdAfx.h"
-#include ".\occviewer.h"
-
-#pragma warning( disable : 4800 )
-OCCViewer::OCCViewer(void)
-{
- myGraphicDriver=NULL;
- myViewer=NULL;
- myView=NULL;
- myAISContext=NULL;
-}
-
-OCCViewer::~OCCViewer(void)
-{
- myView->Remove();
-}
-
-bool OCCViewer::InitViewer(void* wnd)
-{
- try
- {
- Handle(Aspect_DisplayConnection) aDisplayConnection;
- myGraphicDriver = Graphic3d::InitGraphicDriver (aDisplayConnection);
- }
- catch (Standard_Failure)
- {
- return false;
- }
-
- TCollection_ExtendedString a3DName("Visu3D");
- myViewer = new V3d_Viewer (myGraphicDriver, a3DName.ToExtString(),"", 1000.0,
- V3d_XposYnegZpos, Quantity_NOC_GRAY30,
- V3d_ZBUFFER,V3d_GOURAUD,V3d_WAIT,
- Standard_True, Standard_False);
-
- myViewer->Init();
- myViewer->SetDefaultLights();
- myViewer->SetLightOn();
- myView = myViewer->CreateView();
- Handle(WNT_Window) aWNTWindow = new WNT_Window (reinterpret_cast<HWND> (wnd));
- myView->SetWindow(aWNTWindow);
- if (!aWNTWindow->IsMapped())
- aWNTWindow->Map();
- myAISContext = new AIS_InteractiveContext(myViewer);
- myAISContext->UpdateCurrentViewer();
- myView->Redraw();
- myView->MustBeResized();
- return true;
-
-}
-
-bool OCCViewer::ImportBRep(char* filename)
-{
- Standard_CString aFileName = (Standard_CString) filename;
- TopoDS_Shape aShape;
- BRep_Builder aBuilder;
- Standard_Boolean result = BRepTools::Read(aShape,aFileName,aBuilder);
- if (!result)
- return false;
- if(myAISContext->HasOpenedContext())
- myAISContext->CloseLocalContext();
- myAISContext->Display(new AIS_Shape(aShape));
- return true;
-}
-
-void OCCViewer::UpdateView(void)
-{
- if (!myView.IsNull())
- myView->MustBeResized();
-}
-
-void OCCViewer::RedrawView(void)
-{
- if (!myView.IsNull())
- myView->Redraw();
-}
-
-void OCCViewer::SetDegenerateModeOn(void)
-{
- if (!myView.IsNull())
- myView->SetComputedMode (Standard_False);
-}
-
-void OCCViewer::SetDegenerateModeOff(void)
-{
- if (!myView.IsNull())
- myView->SetComputedMode (Standard_True);
-}
-
-void OCCViewer::WindowFitAll(int Xmin, int Ymin, int Xmax, int Ymax)
-{
- if (!myView.IsNull())
- myView->WindowFitAll(Xmin, Ymin, Xmax, Ymax);
-}
-
-void OCCViewer::Place(int x, int y, float zoomFactor)
-{
- Quantity_Factor aZoomFactor = zoomFactor;
- if (!myView.IsNull())
- myView->Place(x, y, aZoomFactor);
-}
-
-void OCCViewer::Zoom(int x1, int y1, int x2, int y2)
-{
- if (!myView.IsNull())
- myView->Zoom(x1, y1, x2, y2);
-}
-
-void OCCViewer::Pan(int x, int y)
-{
- if (!myView.IsNull())
- myView->Pan(x, y);
-}
-
-void OCCViewer::Rotation(int x, int y)
-{
- if (!myView.IsNull())
- myView->Rotation(x, y);
-}
-
-void OCCViewer::StartRotation(int x, int y)
-{
- if (!myView.IsNull())
- myView->StartRotation(x, y);
-}
-
-void OCCViewer::Select(int x1, int y1, int x2, int y2)
-{
- if (!myAISContext.IsNull())
- myAISContext->Select(x1, y1, x2, y2, myView);
-}
-
-void OCCViewer::Select(void)
-{
- if (!myAISContext.IsNull())
- myAISContext->Select();
-}
-
-void OCCViewer::MoveTo(int x, int y)
-{
- if ((!myAISContext.IsNull()) && (!myView.IsNull()))
- myAISContext->MoveTo(x, y, myView);
-}
-
-void OCCViewer::ShiftSelect(int x1, int y1, int x2, int y2)
-{
- if ((!myAISContext.IsNull()) && (!myView.IsNull()))
- myAISContext->ShiftSelect(x1, y1, x2, y2, myView);
-}
-
-void OCCViewer::ShiftSelect(void)
-{
- if (!myAISContext.IsNull())
- myAISContext->ShiftSelect();
-}
-
-void OCCViewer::BackgroundColor(int& r, int& g, int& b)
-{
- Standard_Real R1;
- Standard_Real G1;
- Standard_Real B1;
- if (!myView.IsNull())
- myView->BackgroundColor(Quantity_TOC_RGB,R1,G1,B1);
- r = (int)R1*255;
- g = (int)G1*255;
- b = (int)B1*255;
-}
-
-
-
-void OCCViewer::UpdateCurrentViewer(void)
-{
- if (!myAISContext.IsNull())
- myAISContext->UpdateCurrentViewer();
-}
-
-void OCCViewer::FrontView(void)
-{
- if (!myView.IsNull())
- myView->SetProj(V3d_Xpos);
-}
-
-void OCCViewer::TopView(void)
-{
- if (!myView.IsNull())
- myView->SetProj(V3d_Zpos);
-}
-
-void OCCViewer::LeftView(void)
-{
- if (!myView.IsNull())
- myView->SetProj(V3d_Ypos);
-}
-
-void OCCViewer::BackView(void)
-{
- if (!myView.IsNull())
- myView->SetProj(V3d_Xneg);
-}
-
-void OCCViewer::RightView(void)
-{
- if (!myView.IsNull())
- myView->SetProj(V3d_Yneg);
-}
-
-void OCCViewer::BottomView(void)
-{
- if (!myView.IsNull())
- myView->SetProj(V3d_Zneg);
-}
-
-void OCCViewer::AxoView(void)
-{
- if (!myView.IsNull())
- myView->SetProj(V3d_XposYnegZpos);
-}
-
-void OCCViewer::ZoomAllView(void)
-{
- if (!myView.IsNull())
- {
- myView->FitAll();
- myView->ZFitAll();
- }
-}
-
-float OCCViewer::Scale(void)
-{
- if (myView.IsNull())
- return -1;
- else
- return (float)myView->Scale();
-}
-
-void OCCViewer::ResetView(void)
-{
- if (!myView.IsNull())
- myView->Reset();
-}
-
-void OCCViewer::SetDisplayMode(int aMode)
-{
- if (myAISContext.IsNull())
- return;
- AIS_DisplayMode CurrentMode;
- if (aMode == 0)
- CurrentMode=AIS_WireFrame;
- else
- CurrentMode=AIS_Shaded;
- if(myAISContext->NbCurrents()==0 || myAISContext->NbSelected()==0)
- myAISContext->SetDisplayMode(CurrentMode);
- else
- {
- for(myAISContext->InitCurrent();myAISContext->MoreCurrent();myAISContext->NextCurrent())
- myAISContext->SetDisplayMode(myAISContext->Current(),aMode,Standard_False);
-
- }
- myAISContext->UpdateCurrentViewer();
-}
-
-void OCCViewer::SetColor(int r, int g, int b)
-{
- if (myAISContext.IsNull())
- return;
- Quantity_Color col = Quantity_Color(r/255.,g/255.,b/255.,Quantity_TOC_RGB);
- for (;myAISContext->MoreCurrent ();myAISContext->NextCurrent ())
- myAISContext->SetColor (myAISContext->Current(),col.Name());
-}
-
-void OCCViewer::ObjectColor(int& r, int& g, int& b)
-{
- if (myAISContext.IsNull())
- return;
- r=255;
- g=255;
- b=255;
- Handle_AIS_InteractiveObject Current ;
- Quantity_Color ObjCol;
- myAISContext->InitCurrent();
- if (!myAISContext->MoreCurrent())
- return;
- Current = myAISContext->Current();
- if ( Current->HasColor () ) {
- ObjCol = myAISContext->Color(myAISContext->Current());
- Quantity_Parameter r1, r2, r3;
- ObjCol.Values(r1, r2, r3, Quantity_TOC_RGB);
- r=(int)r1*255;
- g=(int)r2*255;
- b=(int)r3*255;
- }
-}
-
-void OCCViewer::SetBackgroundColor(int r, int g, int b)
-{
- if (!myView.IsNull())
- myView->SetBackgroundColor(Quantity_TOC_RGB,r/255.,g/255.,b/255.);
-}
-
-void OCCViewer::EraseObjects(void)
-{
- if (myAISContext.IsNull())
- return;
- for(myAISContext->InitCurrent();myAISContext->MoreCurrent();myAISContext->NextCurrent())
- myAISContext->Erase(myAISContext->Current(),Standard_True);
- myAISContext->ClearCurrents();
-}
-
-float OCCViewer::GetVersion(void)
-{
- return (float)OCC_VERSION;
-}
-
-void OCCViewer::SetMaterial(int theMaterial)
-{
- if (myAISContext.IsNull())
- return;
- for ( myAISContext->InitCurrent(); myAISContext->MoreCurrent (); myAISContext->NextCurrent () )
- myAISContext->SetMaterial( myAISContext->Current(), (Graphic3d_NameOfMaterial)theMaterial );
- myAISContext->UpdateCurrentViewer();
-}
-
-void OCCViewer::SetTransparency(int theTrans)
-{
- if (myAISContext.IsNull())
- return;
- for( myAISContext->InitCurrent(); myAISContext->MoreCurrent(); myAISContext->NextSelected() )
- myAISContext->SetTransparency( myAISContext->Current(), ((Standard_Real)theTrans) / 10.0 );
-}
-
-bool OCCViewer::ImportCsfdb(char* filename)
-{
- Standard_CString aFileName = (Standard_CString) filename;
- if ( FSD_File::IsGoodFileType(aFileName) != Storage_VSOk )
- return false;
-
- static FSD_File fileDriver;
- TCollection_AsciiString aName( aFileName );
- if ( fileDriver.Open( aName, Storage_VSRead ) != Storage_VSOk )
- return false;
-
- Handle(ShapeSchema) schema = new ShapeSchema();
- Handle(Storage_Data) data = schema->Read( fileDriver );
- if ( data->ErrorStatus() != Storage_VSOk )
- return false;
- fileDriver.Close();
-
- Handle(Storage_HSeqOfRoot) roots = data->Roots();
- for ( int i = 1; i <= roots->Length() ; i++ )
- {
- Handle(Storage_Root) r = roots->Value( i );
- Handle(Standard_Persistent) p = r->Object();
- Handle(PTopoDS_HShape) aPShape = Handle(PTopoDS_HShape)::DownCast(p);
- if ( !aPShape.IsNull() )
- {
- PTColStd_PersistentTransientMap aMap;
- TopoDS_Shape aTShape;
- MgtBRep::Translate( aPShape, aMap, aTShape, MgtBRep_WithTriangle );
- myAISContext->Display(new AIS_Shape(aTShape));
- }
- }
-
- return true;
-}
-
-bool OCCViewer::ImportIges(char* filename)
-{
- Standard_CString aFileName = (Standard_CString) filename;
- IGESControl_Reader Reader;
- int status = Reader.ReadFile( aFileName );
-
- if ( status == IFSelect_RetDone )
- {
- Reader.TransferRoots();
- TopoDS_Shape aShape = Reader.OneShape();
- myAISContext->Display(new AIS_Shape(aShape));
- } else
- return false;
- myAISContext->UpdateCurrentViewer();
- return true;
-}
-
-bool OCCViewer::ImportStep(char* filename)
-{
- Standard_CString aFileName = (Standard_CString) filename;
- STEPControl_Reader aReader;
- IFSelect_ReturnStatus status = aReader.ReadFile(aFileName);
- if ( status == IFSelect_RetDone )
- {
- bool failsonly = false;
- aReader.PrintCheckLoad( failsonly, IFSelect_ItemsByEntity );
-
- int nbr = aReader.NbRootsForTransfer();
- aReader.PrintCheckTransfer( failsonly, IFSelect_ItemsByEntity );
- for ( Standard_Integer n = 1; n <= nbr; n++ )
- {
- Standard_Boolean ok = aReader.TransferRoot( n );
- int nbs = aReader.NbShapes();
- if ( nbs > 0 )
- {
- for ( int i = 1; i <= nbs; i++ )
- {
- TopoDS_Shape shape = aReader.Shape( i );
- myAISContext->Display(new AIS_Shape(shape));
- }
- }
- }
- } else
- return false;
- return true;
-}
-
-bool OCCViewer::ExportBRep(char* filename)
-{
- myAISContext->InitCurrent();
- if (!myAISContext->MoreCurrent())
- return false;
- Handle_AIS_InteractiveObject anIO = myAISContext->Current();
- Handle_AIS_Shape anIS=Handle_AIS_Shape::DownCast(anIO);
- return (bool)BRepTools::Write( anIS->Shape(), (Standard_CString)filename ); ;
-}
-
-
-bool OCCViewer::ExportIges(char* filename)
-{
- IGESControl_Controller::Init();
- IGESControl_Writer writer( Interface_Static::CVal( "XSTEP.iges.unit" ),
- Interface_Static::IVal( "XSTEP.iges.writebrep.mode" ) );
-
-
- for ( myAISContext->InitCurrent(); myAISContext->MoreCurrent(); myAISContext->NextCurrent() )
- {
- Handle_AIS_InteractiveObject anIO = myAISContext->Current();
- Handle_AIS_Shape anIS=Handle_AIS_Shape::DownCast(anIO);
- TopoDS_Shape shape = anIS->Shape();
- writer.AddShape ( shape );
- }
- writer.ComputeModel();
- return (bool)writer.Write( (Standard_CString)filename );
-}
-
-bool OCCViewer::ExpotStep(char* filename)
-{
- STEPControl_StepModelType type = STEPControl_AsIs;
- IFSelect_ReturnStatus status;
- STEPControl_Writer writer;
- for ( myAISContext->InitCurrent(); myAISContext->MoreCurrent(); myAISContext->NextCurrent() )
- {
- Handle_AIS_InteractiveObject anIO = myAISContext->Current();
- Handle_AIS_Shape anIS=Handle_AIS_Shape::DownCast(anIO);
- TopoDS_Shape shape = anIS->Shape();
- status = writer.Transfer( shape , type );
- if ( status != IFSelect_RetDone )
- return false;
- }
-
- status = writer.Write( (Standard_CString)filename );
- if ( status != IFSelect_RetDone )
- return false;
- return true;
-}
-
-bool OCCViewer::ExportStl(char* filename)
-{
- TopoDS_Compound comp;
- BRep_Builder builder;
- builder.MakeCompound( comp );
-
- for ( myAISContext->InitCurrent(); myAISContext->MoreCurrent(); myAISContext->NextCurrent() )
- {
- Handle_AIS_InteractiveObject anIO = myAISContext->Current();
- Handle_AIS_Shape anIS=Handle_AIS_Shape::DownCast(anIO);
- TopoDS_Shape shape = anIS->Shape();
- if ( shape.IsNull() )
- return false;
- builder.Add( comp, shape );
- }
-
- StlAPI_Writer writer;
- writer.Write( comp, (Standard_CString)filename );
- return true;
-}
-
-bool OCCViewer::ExportVrml(char* filename)
-{
- TopoDS_Compound res;
- BRep_Builder builder;
- builder.MakeCompound( res );
-
- for ( myAISContext->InitCurrent(); myAISContext->MoreCurrent(); myAISContext->NextCurrent() )
- {
- Handle_AIS_InteractiveObject anIO = myAISContext->Current();
- Handle_AIS_Shape anIS=Handle_AIS_Shape::DownCast(anIO);
- TopoDS_Shape shape = anIS->Shape();
- if ( shape.IsNull() )
- return false;
-
- builder.Add( res, shape );
- }
-
- VrmlAPI_Writer writer;
- writer.Write( res, (Standard_CString)filename );
-
- return true;
-}
-
-bool OCCViewer::Dump(char *filename)
-{
- if (myView.IsNull())
- return false;
- myView->Redraw();
- return (bool)myView->Dump(filename);
-}
-
-bool OCCViewer::IsObjectSelected(void)
-{
- if (myAISContext.IsNull())
- return false;
- myAISContext->InitCurrent();
- return (bool)myAISContext->MoreCurrent();
-}
-
-int OCCViewer::DisplayMode(void)
-{
- if (myAISContext.IsNull())
- return -1;
- int mode = -1;
- bool OneOrMoreInShading=false;
- bool OneOrMoreInWireframe=false;
- for (myAISContext->InitCurrent(); myAISContext->MoreCurrent(); myAISContext->NextCurrent())
- {
- if ( myAISContext->IsDisplayed( myAISContext->Current(), 1 ) )
- OneOrMoreInShading = true;
- if ( myAISContext->IsDisplayed( myAISContext->Current(), 0 ) )
- OneOrMoreInWireframe = true;
- }
- if (OneOrMoreInShading&&OneOrMoreInWireframe)
- mode=10;
- else if(OneOrMoreInShading)
- mode=1;
- else if (OneOrMoreInWireframe)
- mode=0;
- return mode;
-}
-
-void OCCViewer::CreateNewView(void* wnd)
-{
- if (myAISContext.IsNull())
- return;
- myView = myAISContext->CurrentViewer()->CreateView();
- if (myGraphicDriver.IsNull())
- {
- Handle(Aspect_DisplayConnection) aDisplayConnection;
- myGraphicDriver = Graphic3d::InitGraphicDriver (aDisplayConnection);
- }
- Handle(WNT_Window) aWNTWindow = new WNT_Window (reinterpret_cast<HWND> (wnd));
- myView->SetWindow(aWNTWindow);
- Standard_Integer w=100, h=100;
- aWNTWindow->Size(w,h);
- if (!aWNTWindow->IsMapped())
- aWNTWindow->Map();
-}
-
-bool OCCViewer::SetAISContext(OCCViewer* Viewer)
-{
- this->myAISContext=Viewer->GetAISContext();
- if (myAISContext.IsNull())
- return false;
- return true;
-}
-
-Handle_AIS_InteractiveContext OCCViewer::GetAISContext(void)
-{
- return myAISContext;
-}
-
-int OCCViewer::CharToInt(char symbol)
-{
- TCollection_AsciiString msg = symbol;
- return msg.IntegerValue();
-}
+++ /dev/null
-#pragma once
-#include "stdafx.h"
-
-
-class OCCViewer
-{
-public:
- __declspec(dllexport) OCCViewer(void);
- __declspec(dllexport) ~OCCViewer(void);
-private:
- Handle_V3d_Viewer myViewer;
- Handle_V3d_View myView;
- Handle_AIS_InteractiveContext myAISContext;
- Handle_Graphic3d_GraphicDriver myGraphicDriver;
-public:
- __declspec(dllexport) bool InitViewer(void* wnd);
- __declspec(dllexport) bool ImportBRep(char* filename);
- __declspec(dllexport) void UpdateView(void);
- __declspec(dllexport) void RedrawView(void);
- __declspec(dllexport) void SetDegenerateModeOn(void);
- __declspec(dllexport) void SetDegenerateModeOff(void);
- __declspec(dllexport) void WindowFitAll(int Xmin, int Ymin, int Xmax, int Ymax);
- __declspec(dllexport) void Place(int x, int y, float zoomFactor);
- __declspec(dllexport) void Zoom(int x1, int y1, int x2, int y2);
- __declspec(dllexport) void Pan(int x, int y);
- __declspec(dllexport) void Rotation(int x, int y);
- __declspec(dllexport) void StartRotation(int x, int y);
- __declspec(dllexport) void Select(int x1, int y1, int x2, int y2);
- __declspec(dllexport) void Select(void);
- __declspec(dllexport) void MoveTo(int x, int y);
- __declspec(dllexport) void ShiftSelect(int x1, int y1, int x2, int y2);
- __declspec(dllexport) void ShiftSelect(void);
- __declspec(dllexport) void BackgroundColor(int& r, int& g, int& b);
- __declspec(dllexport) void UpdateCurrentViewer(void);
- __declspec(dllexport) void FrontView(void);
- __declspec(dllexport) void TopView(void);
- __declspec(dllexport) void LeftView(void);
- __declspec(dllexport) void BackView(void);
- __declspec(dllexport) void RightView(void);
- __declspec(dllexport) void BottomView(void);
- __declspec(dllexport) void AxoView(void);
- __declspec(dllexport) void ZoomAllView(void);
- __declspec(dllexport) float Scale(void);
- __declspec(dllexport) void PanGloView(void);
- __declspec(dllexport) void ResetView(void);
- __declspec(dllexport) void SetDisplayMode(int aMode);
- __declspec(dllexport) void SetColor(int r, int g, int b);
- __declspec(dllexport) void ObjectColor(int& r, int& g, int& b);
- __declspec(dllexport) void SetBackgroundColor(int r, int g, int b);
- __declspec(dllexport) void EraseObjects(void);
- __declspec(dllexport) float GetVersion(void);
- __declspec(dllexport) void SetMaterial(int theMaterial);
- __declspec(dllexport) void SetTransparency(int theTrans);
- __declspec(dllexport) bool ImportCsfdb(char* filename);
- __declspec(dllexport) bool ImportIges(char* filename);
- __declspec(dllexport) bool ImportStep(char* filename);
- __declspec(dllexport) bool ExportBRep(char* filename);
- __declspec(dllexport) bool ExportIges(char* filename);
- __declspec(dllexport) bool ExpotStep(char* filename);
- __declspec(dllexport) bool ExportStl(char* filename);
- __declspec(dllexport) bool ExportVrml(char* filename);
- __declspec(dllexport) bool Dump(char* filename);
- __declspec(dllexport) bool IsObjectSelected(void);
- __declspec(dllexport) int DisplayMode(void);
- __declspec(dllexport) void CreateNewView(void* wnd);
- __declspec(dllexport) bool SetAISContext(OCCViewer* Viewer);
- Handle_AIS_InteractiveContext GetAISContext(void);
- __declspec(dllexport) int CharToInt(char symbol);
-};
+++ /dev/null
-========================================================================
- DYNAMIC LINK LIBRARY : OCC Project Overview
-========================================================================
-
-AppWizard has created this OCC DLL for you.
-This file contains a summary of what you will find in each of the files that
-make up your OCC application.
-
-
-OCC.vcproj
- This is the main project file for VC++ projects generated using an Application Wizard.
- It contains information about the version of Visual C++ that generated the file, and
- information about the platforms, configurations, and project features selected with the
- Application Wizard.
-
-OCC.cpp
- This is the main DLL source file.
-
- When created, this DLL does not export any symbols. As a result, it
- will not produce a .lib file when it is built. If you wish this project
- to be a project dependency of some other project, you will either need to
- add code to export some symbols from the DLL so that an export library
- will be produced, or you can set the Ignore Input Library property to Yes
- on the General propert page of the Linker folder in the project's Property
- Pages dialog box.
-
-/////////////////////////////////////////////////////////////////////////////
-Other standard files:
-
-StdAfx.h, StdAfx.cpp
- These files are used to build a precompiled header (PCH) file
- named OCC.pch and a precompiled types file named StdAfx.obj.
-
-/////////////////////////////////////////////////////////////////////////////
-Other notes:
-
-AppWizard uses "TODO:" comments to indicate parts of the source code you
-should add to or customize.
-
-/////////////////////////////////////////////////////////////////////////////
+++ /dev/null
-// stdafx.cpp : source file that includes just the standard includes
-// OCC.pch will be the pre-compiled header
-// stdafx.obj will contain the pre-compiled type information
-
-#include "stdafx.h"
-
-// TODO: reference any additional headers you need in STDAFX.H
-// and not in this file
+++ /dev/null
-// stdafx.h : include file for standard system include files,
-// or project specific include files that are used frequently, but
-// are changed infrequently
-//
-
-#pragma once
-
-
-#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
-// Windows Header Files:
-#include <windows.h>
-//standard OCC types
-#pragma warning( disable : 4311 )
-#pragma warning( disable : 4312 )
-#pragma warning( disable : 4267 )
-#include <Standard_Boolean.hxx>
-#include <Standard_CString.hxx>
-#include <Standard_Version.hxx>
-#include <Standard_Persistent.hxx>
-//collections
-#include <TCollection_ExtendedString.hxx>
-#include <TCollection_AsciiString.hxx>
-#include <PTColStd_PersistentTransientMap.hxx>
-#include <TCollection_AsciiString.hxx>
-//for OCC graphic
-#include <Aspect_DisplayConnection.hxx>
-#include <WNT_Window.hxx>
-#include <Quantity_NameOfColor.hxx>
-#include <Graphic3d.hxx>
-#include <Graphic3d_GraphicDriver.hxx>
-#include <Graphic3d_NameOfMaterial.hxx>
-//for object display
-#include <V3d_Viewer.hxx>
-#include <V3d_View.hxx>
-#include <AIS_InteractiveContext.hxx>
-#include <AIS_Shape.hxx>
-#include <AIS_Trihedron.hxx>
-#include <AIS_DisplayMode.hxx>
-#include <V3d_TypeOfOrientation.hxx>
-#include <V3d_TypeOfVisualization.hxx>
-#include <V3d_TypeOfShadingModel.hxx>
-#include <V3d_TypeOfUpdate.hxx>
-//topology
-#include <TopoDS_Shape.hxx>
-#include <TopoDS_Compound.hxx>
-//brep tools
-#include <BRep_Builder.hxx>
-#include <BRepTools.hxx>
-#include <MgtBRep.hxx>
-//geometry
-#include <gp_Ax2.hxx>
-#include <Geom_Axis2Placement.hxx>
-//csfdb I/E
-#include <Message_ProgressIndicator.hxx>
-#include <FSD_File.hxx>
-#include <ShapeSchema.hxx>
-#include <Storage_Data.hxx>
-#include <Storage_Error.hxx>
-#include <Storage_HSeqOfRoot.hxx>
-#include <Storage_Root.hxx>
-#include <PTopoDS_HShape.hxx>
-#include <PTColStd_TransientPersistentMap.hxx>
-// iges I/E
-#include <IGESControl_Reader.hxx>
-#include <IGESControl_Controller.hxx>
-#include <IGESControl_Writer.hxx>
-#include <IFSelect_ReturnStatus.hxx>
-#include <Interface_Static.hxx>
-//step I/E
-#include <STEPControl_Reader.hxx>
-#include <STEPControl_Writer.hxx>
-//for stl export
-#include <StlAPI_Writer.hxx>
-//for vrml export
-#include <VrmlAPI_Writer.hxx>
--- /dev/null
+// include required OCCT headers
+#include <Standard_Version.hxx>
+#include <Message_ProgressIndicator.hxx>
+//for OCC graphic
+#include <Aspect_DisplayConnection.hxx>
+#include <WNT_Window.hxx>
+#include <Graphic3d.hxx>
+#include <Graphic3d_GraphicDRiver.hxx>
+//for object display
+#include <V3d_Viewer.hxx>
+#include <V3d_View.hxx>
+#include <AIS_InteractiveContext.hxx>
+#include <AIS_Shape.hxx>
+//topology
+#include <TopoDS_Shape.hxx>
+#include <TopoDS_Compound.hxx>
+//brep tools
+#include <BRep_Builder.hxx>
+#include <BRepTools.hxx>
+#include <MgtBRep.hxx>
+#include <PTColStd_PersistentTransientMap.hxx>
+//csfdb I/E
+#include <FSD_File.hxx>
+#include <ShapeSchema.hxx>
+#include <Storage_Data.hxx>
+#include <Storage_HSeqOfRoot.hxx>
+#include <Storage_Root.hxx>
+// iges I/E
+#include <IGESControl_Reader.hxx>
+#include <IGESControl_Controller.hxx>
+#include <IGESControl_Writer.hxx>
+#include <IFSelect_ReturnStatus.hxx>
+#include <Interface_Static.hxx>
+//step I/E
+#include <STEPControl_Reader.hxx>
+#include <STEPControl_Writer.hxx>
+//for stl export
+#include <StlAPI_Writer.hxx>
+//for vrml export
+#include <VrmlAPI_Writer.hxx>
+//wrapper of pure C++ classes to ref classes
+#include <NCollection_Haft.h>
+
+// list of required OCCT libraries
+#pragma comment(lib, "TKernel.lib")
+#pragma comment(lib, "TKMath.lib")
+#pragma comment(lib, "TKBRep.lib")
+#pragma comment(lib, "PTKernel.lib")
+#pragma comment(lib, "TKPShape.lib")
+#pragma comment(lib, "TKShapeSchema.lib")
+#pragma comment(lib, "TKXSBase.lib")
+#pragma comment(lib, "TKService.lib")
+#pragma comment(lib, "TKV3d.lib")
+#pragma comment(lib, "TKIGES.lib")
+#pragma comment(lib, "TKSTEP.lib")
+#pragma comment(lib, "TKStl.lib")
+#pragma comment(lib, "TKVrml.lib")
+
+/// <summary>
+/// Proxy class encapsulating calls to OCCT C++ classes within
+/// C++/CLI class visible from .Net (CSharp)
+/// </summary>
+public ref class OCCTProxy
+{
+public:
+ // ============================================
+ // Viewer functionality
+ // ============================================
+
+ /// <summary>
+ ///Initialize a viewer
+ /// </summary>
+ /// <param name="theWnd">System.IntPtr that contains the window handle (HWND) of the control</param>
+ bool InitViewer(System::IntPtr theWnd)
+ {
+ try
+ {
+ Handle(Aspect_DisplayConnection) aDisplayConnection;
+ myGraphicDriver() = Graphic3d::InitGraphicDriver (aDisplayConnection);
+ }
+ catch (Standard_Failure)
+ {
+ return false;
+ }
+
+ TCollection_ExtendedString a3DName("Visu3D");
+ myViewer() = new V3d_Viewer (myGraphicDriver(), a3DName.ToExtString(),"", 1000.0,
+ V3d_XposYnegZpos, Quantity_NOC_GRAY30,
+ V3d_ZBUFFER,V3d_GOURAUD,V3d_WAIT,
+ Standard_True, Standard_False);
+
+ myViewer()->Init();
+ myViewer()->SetDefaultLights();
+ myViewer()->SetLightOn();
+ myView() = myViewer()->CreateView();
+ Handle(WNT_Window) aWNTWindow = new WNT_Window (reinterpret_cast<HWND> (theWnd.ToPointer()));
+ myView()->SetWindow(aWNTWindow);
+ if (!aWNTWindow->IsMapped())
+ {
+ aWNTWindow->Map();
+ }
+ myAISContext() = new AIS_InteractiveContext( myViewer() );
+ myAISContext()->UpdateCurrentViewer();
+ myView()->Redraw();
+ myView()->MustBeResized();
+ return true;
+ }
+
+ /// <summary>
+ /// Make dump of current view to file
+ /// </summary>
+ /// <param name="theFileName">Name of dump file</param>
+ bool Dump(char *theFileName)
+ {
+ if (myView().IsNull())
+ {
+ return false;
+ }
+ myView()->Redraw();
+ return myView()->Dump(theFileName) != Standard_False;
+ }
+
+ /// <summary>
+ ///Redraw view
+ /// </summary>
+ void RedrawView(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->Redraw();
+ }
+ }
+
+ /// <summary>
+ ///Update view
+ /// </summary>
+ void UpdateView(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->MustBeResized();
+ }
+ }
+
+ /// <summary>
+ ///Set computed mode in false
+ /// </summary>
+ void SetDegenerateModeOn(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->SetComputedMode (Standard_False);
+ }
+ }
+
+ /// <summary>
+ ///Set computed mode in true
+ /// </summary>
+ void SetDegenerateModeOff(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->SetComputedMode (Standard_True);
+ }
+ }
+
+ /// <summary>
+ ///Fit all
+ /// </summary>
+ void WindowFitAll(int theXmin, int theYmin, int theXmax, int theYmax)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->WindowFitAll(theXmin, theYmin, theXmax, theYmax);
+ }
+ }
+
+ /// <summary>
+ ///Current place of window
+ /// </summary>
+ /// <param name="theZoomFactor">Current zoom</param>
+ void Place(int theX, int theY, float theZoomFactor)
+ {
+ Quantity_Factor aZoomFactor = theZoomFactor;
+ if (!myView().IsNull())
+ {
+ myView()->Place(theX, theY, aZoomFactor);
+ }
+ }
+
+ /// <summary>
+ ///Set Zoom
+ /// </summary>
+ void Zoom(int theX1, int theY1, int theX2, int theY2)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->Zoom(theX1, theY1, theX2, theY2);
+ }
+ }
+
+ /// <summary>
+ ///Set Pan
+ /// </summary>
+ void Pan(int theX, int theY)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->Pan(theX, theY);
+ }
+ }
+
+ /// <summary>
+ ///Rotation
+ /// </summary>
+ void Rotation(int theX, int theY)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->Rotation(theX, theY);
+ }
+ }
+
+ /// <summary>
+ ///Start rotation
+ /// </summary>
+ void StartRotation(int theX, int theY)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->StartRotation(theX, theY);
+ }
+ }
+
+ /// <summary>
+ ///Select by rectangle
+ /// </summary>
+ void Select(int theX1, int theY1, int theX2, int theY2)
+ {
+ if (!myAISContext().IsNull())
+ {
+ myAISContext()->Select(theX1, theY1, theX2, theY2, myView());
+ }
+ }
+
+ /// <summary>
+ ///Select by click
+ /// </summary>
+ void Select(void)
+ {
+ if (!myAISContext().IsNull())
+ {
+ myAISContext()->Select();
+ }
+ }
+
+ /// <summary>
+ ///Move view
+ /// </summary>
+ void MoveTo(int theX, int theY)
+ {
+ if ((!myAISContext().IsNull()) && (!myView().IsNull()))
+ {
+ myAISContext()->MoveTo(theX, theY, myView());
+ }
+ }
+
+ /// <summary>
+ ///Select by rectangle with pressed "Shift" key
+ /// </summary>
+ void ShiftSelect(int theX1, int theY1, int theX2, int theY2)
+ {
+ if ((!myAISContext().IsNull()) && (!myView().IsNull()))
+ {
+ myAISContext()->ShiftSelect(theX1, theY1, theX2, theY2, myView());
+ }
+ }
+
+ /// <summary>
+ ///Select by "Shift" key
+ /// </summary>
+ void ShiftSelect(void)
+ {
+ if (!myAISContext().IsNull())
+ {
+ myAISContext()->ShiftSelect();
+ }
+ }
+
+ /// <summary>
+ ///Set background color
+ /// </summary>
+ void BackgroundColor(int& theRed, int& theGreen, int& theBlue)
+ {
+ Standard_Real R1;
+ Standard_Real G1;
+ Standard_Real B1;
+ if (!myView().IsNull())
+ {
+ myView()->BackgroundColor(Quantity_TOC_RGB,R1,G1,B1);
+ }
+ theRed = (int)R1*255;
+ theGreen = (int)G1*255;
+ theBlue = (int)B1*255;
+ }
+
+ /// <summary>
+ ///Get background color Red
+ /// </summary>
+ int GetBGColR(void)
+ {
+ int aRed, aGreen, aBlue;
+ BackgroundColor(aRed, aGreen, aBlue);
+ return aRed;
+ }
+
+ /// <summary>
+ ///Get background color Green
+ /// </summary>
+ int GetBGColG(void)
+ {
+ int aRed, aGreen, aBlue;
+ BackgroundColor(aRed, aGreen, aBlue);
+ return aGreen;
+ }
+
+ /// <summary>
+ ///Get background color Blue
+ /// </summary>
+ int GetBGColB(void)
+ {
+ int aRed, aGreen, aBlue;
+ BackgroundColor(aRed, aGreen, aBlue);
+ return aBlue;
+ }
+
+ /// <summary>
+ ///Update current viewer
+ /// </summary>
+ void UpdateCurrentViewer(void)
+ {
+ if (!myAISContext().IsNull())
+ {
+ myAISContext()->UpdateCurrentViewer();
+ }
+ }
+
+ /// <summary>
+ ///Front side
+ /// </summary>
+ void FrontView(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->SetProj(V3d_Xpos);
+ }
+ }
+
+ /// <summary>
+ ///Top side
+ /// </summary>
+ void TopView(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->SetProj(V3d_Zpos);
+ }
+ }
+
+ /// <summary>
+ ///Left side
+ /// </summary>
+ void LeftView(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->SetProj(V3d_Ypos);
+ }
+ }
+
+ /// <summary>
+ ///Back side
+ /// </summary>
+ void BackView(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->SetProj(V3d_Xneg);
+ }
+ }
+
+ /// <summary>
+ ///Right side
+ /// </summary>
+ void RightView(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->SetProj(V3d_Yneg);
+ }
+ }
+
+ /// <summary>
+ ///Bottom side
+ /// </summary>
+ void BottomView(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->SetProj(V3d_Zneg);
+ }
+ }
+
+ /// <summary>
+ ///Axo side
+ /// </summary>
+ void AxoView(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->SetProj(V3d_XposYnegZpos);
+ }
+ }
+
+ /// <summary>
+ ///Scale
+ /// </summary>
+ float Scale(void)
+ {
+ if (myView().IsNull())
+ {
+ return -1;
+ }
+ else
+ {
+ return (float)myView()->Scale();
+ }
+ }
+
+ /// <summary>
+ ///Zoom in all view
+ /// </summary>
+ void ZoomAllView(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->FitAll();
+ myView()->ZFitAll();
+ }
+ }
+
+ /// <summary>
+ ///Reset view
+ /// </summary>
+ void Reset(void)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->Reset();
+ }
+ }
+
+ /// <summary>
+ ///Set display mode of objects
+ /// </summary>
+ /// <param name="theMode">Set current mode</param>
+ void SetDisplayMode(int theMode)
+ {
+ if (myAISContext().IsNull())
+ {
+ return;
+ }
+ AIS_DisplayMode aCurrentMode;
+ if (theMode == 0)
+ {
+ aCurrentMode=AIS_WireFrame;
+ }
+ else
+ {
+ aCurrentMode=AIS_Shaded;
+ }
+
+ if(myAISContext()->NbCurrents()==0 || myAISContext()->NbSelected()==0)
+ {
+ myAISContext()->SetDisplayMode(aCurrentMode);
+ }
+ else
+ {
+ for(myAISContext()->InitCurrent(); myAISContext()->MoreCurrent(); myAISContext()->NextCurrent())
+ {
+ myAISContext()->SetDisplayMode(myAISContext()->Current(), theMode, Standard_False);
+ }
+ }
+ myAISContext()->UpdateCurrentViewer();
+ }
+
+ /// <summary>
+ ///Set color
+ /// </summary>
+ void SetColor(int theR, int theG, int theB)
+ {
+ if (myAISContext().IsNull())
+ {
+ return;
+ }
+ Quantity_Color aCol = Quantity_Color(theR/255.,theG/255.,theB/255.,Quantity_TOC_RGB);
+ for (;myAISContext()->MoreCurrent ();myAISContext()->NextCurrent ())
+ {
+ myAISContext()->SetColor (myAISContext()->Current(),aCol.Name());
+ }
+ }
+
+ /// <summary>
+ ///Get object color red
+ /// </summary>
+ int GetObjColR(void)
+ {
+ int aRed, aGreen, aBlue;
+ ObjectColor(aRed, aGreen, aBlue);
+ return aRed;
+ }
+
+ /// <summary>
+ ///Get object color green
+ /// </summary>
+ int GetObjColG(void)
+ {
+ int aRed, aGreen, aBlue;
+ ObjectColor(aRed, aGreen, aBlue);
+ return aGreen;
+ }
+
+ /// <summary>
+ ///Get object color R/G/B
+ /// </summary>
+ void ObjectColor(int& theRed, int& theGreen, int& theBlue)
+ {
+ if (myAISContext().IsNull())
+ {
+ return;
+ }
+ theRed=255;
+ theGreen=255;
+ theBlue=255;
+ Handle_AIS_InteractiveObject aCurrent ;
+ Quantity_Color anObjCol;
+ myAISContext()->InitCurrent();
+ if (!myAISContext()->MoreCurrent())
+ {
+ return;
+ }
+ aCurrent = myAISContext()->Current();
+ if ( aCurrent->HasColor () )
+ {
+ anObjCol = myAISContext()->Color(myAISContext()->Current());
+ Quantity_Parameter r1, r2, r3;
+ anObjCol.Values(r1, r2, r3, Quantity_TOC_RGB);
+ theRed=(int)r1*255;
+ theGreen=(int)r2*255;
+ theBlue=(int)r3*255;
+ }
+ }
+
+ /// <summary>
+ ///Get object color blue
+ /// </summary>
+ int GetObjColB(void)
+ {
+ int aRed, aGreen, aBlue;
+ ObjectColor(aRed, aGreen, aBlue);
+ return aBlue;
+ }
+
+ /// <summary>
+ ///Set background color R/G/B
+ /// </summary>
+ void SetBackgroundColor(int theRed, int theGreen, int theBlue)
+ {
+ if (!myView().IsNull())
+ {
+ myView()->SetBackgroundColor(Quantity_TOC_RGB, theRed/255.,theGreen/255.,theBlue/255.);
+ }
+ }
+
+ /// <summary>
+ ///Erase objects
+ /// </summary>
+ void EraseObjects(void)
+ {
+ if (myAISContext().IsNull())
+ {
+ return;
+ }
+ for(myAISContext()->InitCurrent();myAISContext()->MoreCurrent();myAISContext()->NextCurrent())
+ {
+ myAISContext()->Erase(myAISContext()->Current(),Standard_True);
+ }
+ myAISContext()->ClearCurrents();
+ }
+
+ /// <summary>
+ ///Get version
+ /// </summary>
+ float GetOCCVersion(void)
+ {
+ return (float)OCC_VERSION;
+ }
+
+ /// <summary>
+ ///set material
+ /// </summary>
+ void SetMaterial(int theMaterial)
+ {
+ if (myAISContext().IsNull())
+ {
+ return;
+ }
+ for ( myAISContext()->InitCurrent(); myAISContext()->MoreCurrent (); myAISContext()->NextCurrent () )
+ {
+ myAISContext()->SetMaterial( myAISContext()->Current(), (Graphic3d_NameOfMaterial)theMaterial );
+ }
+ myAISContext()->UpdateCurrentViewer();
+ }
+
+ /// <summary>
+ ///set transparency
+ /// </summary>
+ void SetTransparency(int theTrans)
+ {
+ if (myAISContext().IsNull())
+ {
+ return;
+ }
+ for( myAISContext()->InitCurrent(); myAISContext()->MoreCurrent(); myAISContext()->NextSelected() )
+ {
+ myAISContext()->SetTransparency( myAISContext()->Current(), ((Standard_Real)theTrans) / 10.0 );
+ }
+ }
+
+ /// <summary>
+ ///Return true if object is selected
+ /// </summary>
+ bool IsObjectSelected(void)
+ {
+ if (myAISContext().IsNull())
+ {
+ return false;
+ }
+ myAISContext()->InitCurrent();
+ return myAISContext()->MoreCurrent() != Standard_False;
+ }
+
+ /// <summary>
+ ///Return display mode
+ /// </summary>
+ int DisplayMode(void)
+ {
+ if (myAISContext().IsNull())
+ {
+ return -1;
+ }
+ int aMode = -1;
+ bool OneOrMoreInShading = false;
+ bool OneOrMoreInWireframe = false;
+ for (myAISContext()->InitCurrent(); myAISContext()->MoreCurrent(); myAISContext()->NextCurrent())
+ {
+ if ( myAISContext()->IsDisplayed( myAISContext()->Current(), 1 ) )
+ {
+ OneOrMoreInShading = true;
+ }
+ if ( myAISContext()->IsDisplayed( myAISContext()->Current(), 0 ) )
+ {
+ OneOrMoreInWireframe = true;
+ }
+ }
+ if (OneOrMoreInShading && OneOrMoreInWireframe)
+ {
+ aMode=10;
+ }
+ else if(OneOrMoreInShading)
+ {
+ aMode=1;
+ }
+ else if (OneOrMoreInWireframe)
+ {
+ aMode=0;
+ }
+
+ return aMode;
+ }
+
+ /// <summary>
+ ///Create new view
+ /// </summary>
+ /// <param name="theWnd">System.IntPtr that contains the window handle (HWND) of the control</param>
+ void CreateNewView(System::IntPtr theWnd)
+ {
+ if (myAISContext().IsNull())
+ {
+ return;
+ }
+ myView() = myAISContext()->CurrentViewer()->CreateView();
+ if (myGraphicDriver().IsNull())
+ {
+ Handle(Aspect_DisplayConnection) aDisplayConnection;
+ myGraphicDriver() = Graphic3d::InitGraphicDriver (aDisplayConnection);
+ }
+ Handle(WNT_Window) aWNTWindow = new WNT_Window (reinterpret_cast<HWND> (theWnd.ToPointer()));
+ myView()->SetWindow(aWNTWindow);
+ Standard_Integer w=100, h=100;
+ aWNTWindow->Size(w,h);
+ if (!aWNTWindow->IsMapped())
+ {
+ aWNTWindow->Map();
+ }
+ }
+
+ /// <summary>
+ ///Set AISContext
+ /// </summary>
+ bool SetAISContext(OCCTProxy^ theViewer)
+ {
+ this->myAISContext() = theViewer->GetContext();
+ if (myAISContext().IsNull())
+ {
+ return false;
+ }
+ return true;
+ }
+
+ /// <summary>
+ ///Get AISContext
+ /// </summary>
+ Handle_AIS_InteractiveContext GetContext(void)
+ {
+ return myAISContext();
+ }
+
+public:
+ // ============================================
+ // Import / export functionality
+ // ============================================
+
+ /// <summary>
+ ///Import BRep file
+ /// </summary>
+ /// <param name="theFileName">Name of import file</param>
+ bool ImportBrep(System::String^ theFileName)
+ {
+ bool isResult = false;
+ int aLength = theFileName->Length;
+ char* aFilename = new char[aLength+1];
+ for(int i = 0; i<aLength; i++)
+ {
+ aFilename[i] = (char)theFileName->ToCharArray()[i];
+ }
+ aFilename[aLength] = '\0';
+ isResult = ImportBrep(aFilename);
+ return isResult;
+ }
+
+ /// <summary>
+ ///Import BRep file
+ /// </summary>
+ /// <param name="theFileName">Name of import file</param>
+ bool ImportBrep(char* theFileName)
+ {
+ Standard_CString aFileName = (Standard_CString) theFileName;
+ TopoDS_Shape aShape;
+ BRep_Builder aBuilder;
+ Standard_Boolean isResult = BRepTools::Read(aShape,aFileName,aBuilder);
+ if (!isResult)
+ {
+ return false;
+ }
+ if(myAISContext()->HasOpenedContext())
+ {
+ myAISContext()->CloseLocalContext();
+ }
+ myAISContext()->Display(new AIS_Shape(aShape));
+ return true;
+ }
+
+ /// <summary>
+ ///Import Csfdb file
+ /// </summary>
+ /// <param name="theFileName">Name of import file</param>
+ bool ImportCsfdb(char* theFileName)
+ {
+ Standard_CString aFileName = (Standard_CString) theFileName;
+ if ( FSD_File::IsGoodFileType(aFileName) != Storage_VSOk )
+ {
+ return false;
+ }
+
+ FSD_File aFileDriver;
+ TCollection_AsciiString aName( aFileName );
+ if ( aFileDriver.Open( aName, Storage_VSRead ) != Storage_VSOk )
+ {
+ return false;
+ }
+
+ Handle(ShapeSchema) aSchema = new ShapeSchema();
+ Handle(Storage_Data) data = aSchema->Read( aFileDriver );
+ if ( data->ErrorStatus() != Storage_VSOk )
+ {
+ return false;
+ }
+ aFileDriver.Close();
+
+ Handle(Storage_HSeqOfRoot) aRoots = data->Roots();
+ for ( int i = 1; i <= aRoots->Length() ; i++ )
+ {
+ Handle(Storage_Root) aStorRoot = aRoots->Value( i );
+ Handle(Standard_Persistent) aStandPersistent = aStorRoot->Object();
+ Handle(PTopoDS_HShape) aPShape = Handle(PTopoDS_HShape)::DownCast(aStandPersistent);
+ if ( !aPShape.IsNull() )
+ {
+ PTColStd_PersistentTransientMap aMap;
+ TopoDS_Shape aTShape;
+ MgtBRep::Translate( aPShape, aMap, aTShape, MgtBRep_WithTriangle );
+ myAISContext()->Display(new AIS_Shape(aTShape));
+ }
+ }
+
+ return true;
+ }
+
+ /// <summary>
+ ///Import Step file
+ /// </summary>
+ /// <param name="theFileName">Name of import file</param>
+ bool ImportStep(char* theFileName)
+ {
+ Standard_CString aFileName = (Standard_CString) theFileName;
+ STEPControl_Reader aReader;
+ IFSelect_ReturnStatus aStatus = aReader.ReadFile(aFileName);
+ if ( aStatus == IFSelect_RetDone )
+ {
+ bool isFailsonly = false;
+ aReader.PrintCheckLoad( isFailsonly, IFSelect_ItemsByEntity );
+
+ int aNbRoot = aReader.NbRootsForTransfer();
+ aReader.PrintCheckTransfer( isFailsonly, IFSelect_ItemsByEntity );
+ for ( Standard_Integer n = 1; n <= aNbRoot; n++ )
+ {
+ Standard_Boolean ok = aReader.TransferRoot( n );
+ int aNbShap = aReader.NbShapes();
+ if ( aNbShap > 0 )
+ {
+ for ( int i = 1; i <= aNbShap; i++ )
+ {
+ TopoDS_Shape aShape = aReader.Shape( i );
+ myAISContext()->Display(new AIS_Shape(aShape));
+ }
+ }
+ }
+ }
+ else
+ {
+ return false;
+ }
+
+ return true;
+ }
+
+ /// <summary>
+ ///Import Iges file
+ /// </summary>
+ /// <param name="theFileName">Name of import file</param>
+ bool ImportIges(char* theFileName)
+ {
+ Standard_CString aFileName = (Standard_CString) theFileName;
+ IGESControl_Reader aReader;
+ int aStatus = aReader.ReadFile( aFileName );
+
+ if ( aStatus == IFSelect_RetDone )
+ {
+ aReader.TransferRoots();
+ TopoDS_Shape aShape = aReader.OneShape();
+ myAISContext()->Display(new AIS_Shape(aShape));
+ }
+ else
+ {
+ return false;
+ }
+
+ myAISContext()->UpdateCurrentViewer();
+ return true;
+ }
+
+ /// <summary>
+ ///Export BRep file
+ /// </summary>
+ /// <param name="theFileName">Name of export file</param>
+ bool ExportBRep(char* theFileName)
+ {
+ myAISContext()->InitCurrent();
+ if (!myAISContext()->MoreCurrent())
+ {
+ return false;
+ }
+
+ Handle_AIS_InteractiveObject anIO = myAISContext()->Current();
+ Handle_AIS_Shape anIS = Handle_AIS_Shape::DownCast(anIO);
+ return BRepTools::Write (anIS->Shape(), (Standard_CString)theFileName) != Standard_False;
+ }
+
+ /// <summary>
+ ///Export Step file
+ /// </summary>
+ /// <param name="theFileName">Name of export file</param>
+ bool ExportStep(char* theFileName)
+ {
+ STEPControl_StepModelType aType = STEPControl_AsIs;
+ IFSelect_ReturnStatus aStatus;
+ STEPControl_Writer aWriter;
+ for ( myAISContext()->InitCurrent(); myAISContext()->MoreCurrent(); myAISContext()->NextCurrent() )
+ {
+ Handle_AIS_InteractiveObject anIO = myAISContext()->Current();
+ Handle_AIS_Shape anIS=Handle_AIS_Shape::DownCast(anIO);
+ TopoDS_Shape aShape = anIS->Shape();
+ aStatus = aWriter.Transfer( aShape , aType );
+ if ( aStatus != IFSelect_RetDone )
+ {
+ return false;
+ }
+ }
+
+ aStatus = aWriter.Write( (Standard_CString)theFileName );
+ if ( aStatus != IFSelect_RetDone )
+ {
+ return false;
+ }
+
+ return true;
+ }
+
+ /// <summary>
+ ///Export Iges file
+ /// </summary>
+ /// <param name="theFileName">Name of export file</param>
+ bool ExportIges(char* theFileName)
+ {
+ IGESControl_Controller::Init();
+ IGESControl_Writer aWriter( Interface_Static::CVal( "XSTEP.iges.unit" ),
+ Interface_Static::IVal( "XSTEP.iges.writebrep.mode" ) );
+
+ for ( myAISContext()->InitCurrent(); myAISContext()->MoreCurrent(); myAISContext()->NextCurrent() )
+ {
+ Handle_AIS_InteractiveObject anIO = myAISContext()->Current();
+ Handle_AIS_Shape anIS=Handle_AIS_Shape::DownCast(anIO);
+ TopoDS_Shape aShape = anIS->Shape();
+ aWriter.AddShape ( aShape );
+ }
+
+ aWriter.ComputeModel();
+ return aWriter.Write( (Standard_CString)theFileName) != Standard_False;
+ }
+
+ /// <summary>
+ ///Export Vrml file
+ /// </summary>
+ /// <param name="theFileName">Name of export file</param>
+ bool ExportVrml(char* theFileName)
+ {
+ TopoDS_Compound aRes;
+ BRep_Builder aBuilder;
+ aBuilder.MakeCompound( aRes );
+
+ for ( myAISContext()->InitCurrent(); myAISContext()->MoreCurrent(); myAISContext()->NextCurrent() )
+ {
+ Handle_AIS_InteractiveObject anIO = myAISContext()->Current();
+ Handle_AIS_Shape anIS=Handle_AIS_Shape::DownCast(anIO);
+ TopoDS_Shape aShape = anIS->Shape();
+ if ( aShape.IsNull() )
+ {
+ return false;
+ }
+
+ aBuilder.Add( aRes, aShape );
+ }
+
+ VrmlAPI_Writer aWriter;
+ aWriter.Write( aRes, (Standard_CString)theFileName );
+
+ return true;
+ }
+
+ /// <summary>
+ ///Export Stl file
+ /// </summary>
+ /// <param name="theFileName">Name of export file</param>
+ bool ExportStl(char* theFileName)
+ {
+ TopoDS_Compound aComp;
+ BRep_Builder aBuilder;
+ aBuilder.MakeCompound( aComp );
+
+ for ( myAISContext()->InitCurrent(); myAISContext()->MoreCurrent(); myAISContext()->NextCurrent() )
+ {
+ Handle_AIS_InteractiveObject anIO = myAISContext()->Current();
+ Handle_AIS_Shape anIS=Handle_AIS_Shape::DownCast(anIO);
+ TopoDS_Shape aShape = anIS->Shape();
+ if ( aShape.IsNull() )
+ {
+ return false;
+ }
+ aBuilder.Add( aComp, aShape );
+ }
+
+ StlAPI_Writer aWriter;
+ aWriter.Write( aComp, (Standard_CString)theFileName );
+ return true;
+ }
+
+ /// <summary>
+ ///Define which Import/Export function must be called
+ /// </summary>
+ /// <param name="theFileName">Name of Import/Export file</param>
+ /// <param name="theFormat">Determines format of Import/Export file</param>
+ /// <param name="theIsImport">Determines is Import or not</param>
+ bool TranslateModel(System::String^ theFileName, int theFormat, bool theIsImport)
+ {
+ bool isResult;
+ int aLength = theFileName->Length;
+ char* aFilename = new char[aLength+1];
+ for(int i = 0; i<aLength; i++)
+ {
+ aFilename[i] = (char)theFileName->ToCharArray()[i];
+ }
+ aFilename[aLength] = '\0';
+
+ if (theIsImport)
+ {
+ switch(theFormat)
+ {
+ case 0:
+ isResult = ImportBrep(aFilename);
+ break;
+ case 1:
+ isResult = ImportCsfdb(aFilename);
+ break;
+ case 2:
+ isResult = ImportStep(aFilename);
+ break;
+ case 3:
+ isResult = ImportIges(aFilename);
+ break;
+ default:
+ isResult = false;
+ }
+ }
+ else
+ {
+ switch(theFormat)
+ {
+ case 0:
+ isResult = ExportBRep(aFilename);
+ break;
+ case 2:
+ isResult = ExportStep(aFilename);
+ break;
+ case 3:
+ isResult = ExportIges(aFilename);
+ break;
+ case 4:
+ isResult = ExportVrml(aFilename);
+ break;
+ case 5:
+ isResult = ExportStl(aFilename);
+ break;
+ case 6:
+ isResult = Dump(aFilename);
+ break;
+ default:
+ isResult = false;
+ }
+ }
+ return isResult;
+ }
+
+ /// <summary>
+ ///Initialize OCCTProxy
+ /// </summary>
+ void InitOCCTProxy(void)
+ {
+ myGraphicDriver()=NULL;
+ myViewer()=NULL;
+ myView()=NULL;
+ myAISContext()=NULL;
+ }
+
+private:
+ // fields
+ NCollection_Haft<Handle_V3d_Viewer> myViewer;
+ NCollection_Haft<Handle_V3d_View> myView;
+ NCollection_Haft<Handle_AIS_InteractiveContext> myAISContext;
+ NCollection_Haft<Handle_Graphic3d_GraphicDriver> myGraphicDriver;
+};
--- /dev/null
+<?xml version="1.0" encoding="windows-1251"?>
+<VisualStudioProject
+ ProjectType="Visual C++"
+ Version="9,00"
+ Name="OCCTProxy"
+ ProjectGUID="{969912D9-78E7-4AB8-B4FF-6B52B4F03991}"
+ RootNamespace="OCCTProxy"
+ Keyword="Win32Proj"
+ TargetFrameworkVersion="131072"
+ >
+ <Platforms>
+ <Platform
+ Name="Win32"
+ />
+ <Platform
+ Name="x64"
+ />
+ </Platforms>
+ <ToolFiles>
+ </ToolFiles>
+ <Configurations>
+ <Configuration
+ Name="Debug|Win32"
+ OutputDirectory="..\win32\bind"
+ IntermediateDirectory="obj\$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="2"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ ManagedExtensions="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\OCC\;$(CSF_OPT_INC)"
+ PreprocessorDefinitions="WNT"
+ MinimalRebuild="false"
+ BasicRuntimeChecks="0"
+ RuntimeLibrary="3"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/OCCTProxy.dll"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="$(CSF_OPT_LIB32D)"
+ GenerateDebugInformation="true"
+ AssemblyDebug="1"
+ ProgramDatabaseFile="$(OutDir)/OCCTProxy.pdb"
+ SubSystem="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ ImportLibrary="$(OutDir)/OCCTProxy.lib"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Debug|x64"
+ OutputDirectory="..\win64\bind"
+ IntermediateDirectory="obj\$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="2"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ ManagedExtensions="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ TargetEnvironment="3"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ Optimization="0"
+ AdditionalIncludeDirectories="..\OCC\;$(CSF_OPT_INC)"
+ PreprocessorDefinitions="WNT"
+ MinimalRebuild="false"
+ BasicRuntimeChecks="0"
+ RuntimeLibrary="3"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/OCCTProxy.dll"
+ LinkIncremental="2"
+ AdditionalLibraryDirectories="$(CSF_OPT_LIB64D)"
+ GenerateDebugInformation="true"
+ AssemblyDebug="1"
+ ProgramDatabaseFile="$(OutDir)/OCCTProxy.pdb"
+ SubSystem="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ ImportLibrary="$(OutDir)/OCCTProxy.lib"
+ TargetMachine="17"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|Win32"
+ OutputDirectory="..\win32\bin"
+ IntermediateDirectory="obj\$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="2"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ ManagedExtensions="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\OCC\;$(CSF_OPT_INC)"
+ PreprocessorDefinitions="WNT"
+ RuntimeLibrary="2"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/OCCTProxy.dll"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="$(CSF_OPT_LIB32)"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ ImportLibrary="$(OutDir)/OCCTProxy.lib"
+ TargetMachine="1"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ <Configuration
+ Name="Release|x64"
+ OutputDirectory="..\win64\bin"
+ IntermediateDirectory="obj\$(PlatformName)\$(ConfigurationName)"
+ ConfigurationType="2"
+ InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
+ CharacterSet="2"
+ ManagedExtensions="1"
+ >
+ <Tool
+ Name="VCPreBuildEventTool"
+ />
+ <Tool
+ Name="VCCustomBuildTool"
+ />
+ <Tool
+ Name="VCXMLDataGeneratorTool"
+ />
+ <Tool
+ Name="VCWebServiceProxyGeneratorTool"
+ />
+ <Tool
+ Name="VCMIDLTool"
+ TargetEnvironment="3"
+ />
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="..\OCC\;$(CSF_OPT_INC)"
+ PreprocessorDefinitions="WNT"
+ RuntimeLibrary="2"
+ UsePrecompiledHeader="0"
+ WarningLevel="3"
+ DebugInformationFormat="3"
+ />
+ <Tool
+ Name="VCManagedResourceCompilerTool"
+ />
+ <Tool
+ Name="VCResourceCompilerTool"
+ />
+ <Tool
+ Name="VCPreLinkEventTool"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ OutputFile="$(OutDir)/OCCTProxy.dll"
+ LinkIncremental="1"
+ AdditionalLibraryDirectories="$(CSF_OPT_LIB64)"
+ GenerateDebugInformation="true"
+ SubSystem="2"
+ OptimizeReferences="2"
+ EnableCOMDATFolding="2"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
+ ImportLibrary="$(OutDir)/OCCTProxy.lib"
+ TargetMachine="17"
+ />
+ <Tool
+ Name="VCALinkTool"
+ />
+ <Tool
+ Name="VCManifestTool"
+ />
+ <Tool
+ Name="VCXDCMakeTool"
+ />
+ <Tool
+ Name="VCBscMakeTool"
+ />
+ <Tool
+ Name="VCFxCopTool"
+ />
+ <Tool
+ Name="VCAppVerifierTool"
+ />
+ <Tool
+ Name="VCPostBuildEventTool"
+ />
+ </Configuration>
+ </Configurations>
+ <References>
+ </References>
+ <Files>
+ <Filter
+ Name="Source Files"
+ Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ >
+ <File
+ RelativePath=".\OCCTProxy.cpp"
+ >
+ </File>
+ </Filter>
+ <Filter
+ Name="Header Files"
+ Filter="h;hpp;hxx;hm;inl;inc;xsd"
+ UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
+ >
+ </Filter>
+ <Filter
+ Name="Resource Files"
+ Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
+ UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
+ >
+ </Filter>
+ </Files>
+ <Globals>
+ </Globals>
+</VisualStudioProject>
--- /dev/null
+#### OCCT CSharp sample
+
+This sample demonstrates simple way of using OCCT libraries in .Net application
+whitten using CSharp and Windows Forms or Windows Presentation Foundation (WPF).
+
+The connection between .Net and OCCT (C++) level is provided by proxy library,
+OCCProxy, written in C++/CLI. The proxy library contains single ref class
+encapsulating OCCT viewer and providing functionality to manipulate this viewer
+and to import / export OCCT shapes from / to several supported formats of CAD
+files (IGES, STEP, BREP).
+
+The sample implements two approaches for organizing user interface with C#.
+Both applications provide the same functionality as the standard OCCT
+Import/Export sample.
+First project is called "IE_WinForms" and uses Windows Forms for GUI.
+Second application is called "IE_WPF" and uses Windows Presentation Foundation.
+
+Note a few important details:
+
+- to encapsulate C++ class into a field of ref class, template class
+ NCollection_Haft provided by OCCT is used
+
+- in order to work consistently on 64-bit systems with OCCT libraries built in
+ 32-bit mode, C# assemblies need to have platform target explicitly set to "x86"
+ (in project Properties / Build)
+
+- this sample demonstrates indirect method of wrapping C++ to C# using manually
+ created proxy library. Alternative method is available, wrapping individual
+ OCCT classes to C# equivalents so that their full API is available to C# user
+ and the code can be programmed on C# level similarly to C++ one. See desciption
+ of OCCT C# Wrapper in Advanced Samples and Tools on OCCT web site at
+ http://www.opencascade.org/support/products/advsamples
+
+- in WPF sample, WinForms control is used to encapsulate OCC viewer since WPF
+ does not provide necessary interface to embed OpenGl view. Other possible
+ solution could be to render OpenGl scene in off-screen buffer and map it
+ to WPF control as image. That approach would allow using all WPF features in
+ control embedding OCCT viewer.
+
+Run msvc.bat to start MS Visual Studio for building the sample.
+Note that project files are provided only for VS 2008, you can open them in
+newer versions of Visual Studio using automatic converter.
+
+Run run_winforms.bat or run_wpf.bat to launch the corresponding sample.
+
+Note that all batch scripts use configuration defined in OCCT custom.bat file
+as default; you can provide arguments specifying VS version, bitness, and mode
+to override these settings, e.g.:
+
+> msvc.bat vc9 win64 Debug
--- /dev/null
+<Window
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ x:Class="IE_WPF.AboutDialog"
+ x:Name="Window"
+ xmlns:local="clr-namespace:IE_WPF"
+ Title="About Import/Export Sample"
+ Width="312" Height="285">
+
+ <StackPanel Orientation="Vertical">
+ <Label Content="Import/Export Sample," HorizontalAlignment="Center"/>
+ <Label Content="Open CASCADE Technology " HorizontalAlignment="Center"/>
+ <Image Source="occ_logo.bmp" Width="194" Height="100" />
+ <Label Content="Copyright (C) 2004-2013, Open CASCADE S.A.S" HorizontalAlignment="Center"/>
+ <Label Content="http://www.opencascade.com" HorizontalAlignment="Center"/>
+ <Button Content="OK" HorizontalAlignment="Center" Width="75" Command="local:IECommands.AboutOk"/>
+ </StackPanel>
+</Window>
\ No newline at end of file
--- /dev/null
+using System;
+using System.Collections.Generic;
+using System.Text;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+using System.Windows.Shapes;
+
+namespace IE_WPF
+{
+ /// <summary>
+ /// Interaction logic for About.xaml
+ /// </summary>
+ public partial class AboutDialog : Window
+ {
+ public AboutDialog()
+ {
+ this.InitializeComponent();
+
+ CommandBinding aBind_Ok = new CommandBinding( IECommands.AboutOk );
+ aBind_Ok.Executed += OkCommand_Executed;
+ aBind_Ok.CanExecute += OkCommand_CanExecute;
+ CommandBindings.Add( aBind_Ok );
+ }
+
+ private void OkCommand_Executed( object sender, ExecutedRoutedEventArgs e )
+ {
+ this.Close();
+ }
+
+ private void OkCommand_CanExecute( object sender, CanExecuteRoutedEventArgs e )
+ {
+ e.CanExecute = true;
+ }
+ }
+}
\ No newline at end of file
--- /dev/null
+<Application x:Class="IE_WPF.App"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ StartupUri="MainWindow.xaml">
+ <Application.Resources>
+
+ <ResourceDictionary>
+ <ResourceDictionary.MergedDictionaries>
+ <ResourceDictionary Source="Simple Styles.xaml"/>
+ </ResourceDictionary.MergedDictionaries>
+ </ResourceDictionary>
+
+ </Application.Resources>
+</Application>
--- /dev/null
+using System;
+using System.Collections.Generic;
+using System.Configuration;
+using System.Data;
+using System.Linq;
+using System.Windows;
+
+namespace IE_WPF
+{
+ /// <summary>
+ /// Interaction logic for App.xaml
+ /// </summary>
+ public partial class App : Application
+ {
+ }
+}
--- /dev/null
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Windows.Input;
+
+namespace IE_WPF
+{
+ public class IECommands
+ {
+ public static RoutedUICommand New { get; private set; }
+ public static RoutedUICommand Close { get; private set; }
+ public static RoutedUICommand Quit { get; private set; }
+ public static RoutedUICommand About { get; private set; }
+ public static RoutedUICommand AboutOk { get; private set; }
+
+ static IECommands()
+ {
+ #region menu
+
+ InputGestureCollection inputsNew = new InputGestureCollection();
+ inputsNew.Add( new KeyGesture( Key.N, ModifierKeys.Control, "Ctrl + N" ) );
+ New = new RoutedUICommand( "New", "New", typeof(IECommands), inputsNew );
+
+ Close = new RoutedUICommand( "Close", "Close", typeof(IECommands) );
+
+ InputGestureCollection inputsQuit = new InputGestureCollection();
+ inputsQuit.Add( new KeyGesture( Key.F4, ModifierKeys.Alt, "Alt + F4" ) );
+ Quit = new RoutedUICommand( "Quit", "Quit", typeof(IECommands), inputsQuit );
+
+ InputGestureCollection inputsAbout = new InputGestureCollection();
+ inputsAbout.Add( new KeyGesture( Key.F1 ) );
+ About = new RoutedUICommand( "About", "About", typeof(IECommands), inputsAbout );
+
+ #endregion
+
+ #region aboutDlg
+ InputGestureCollection inputsAboutOk = new InputGestureCollection();
+ inputsAboutOk.Add( new KeyGesture( Key.Enter ) );
+ AboutOk = new RoutedUICommand( "AboutOk", "AboutOk", typeof(IECommands), inputsAboutOk );
+ #endregion
+ }
+ }
+}
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+ <PropertyGroup>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ProductVersion>9.0.30729</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{D12A8897-5BF8-4345-BBB0-8ADE4B9FB9A7}</ProjectGuid>
+ <OutputType>WinExe</OutputType>
+ <AppDesignerFolder>Properties</AppDesignerFolder>
+ <RootNamespace>IE_WPF</RootNamespace>
+ <AssemblyName>IE_WPF</AssemblyName>
+ <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+ <FileAlignment>512</FileAlignment>
+ <ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+ <WarningLevel>4</WarningLevel>
+ <ExpressionBlendVersion>3.0.1927.0</ExpressionBlendVersion>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <DebugSymbols>true</DebugSymbols>
+ <DebugType>full</DebugType>
+ <Optimize>false</Optimize>
+ <OutputPath>bin\Debug\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <DebugType>pdbonly</DebugType>
+ <Optimize>true</Optimize>
+ <OutputPath>bin\Release\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <ErrorReport>prompt</ErrorReport>
+ <WarningLevel>4</WarningLevel>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
+ <DebugSymbols>true</DebugSymbols>
+ <OutputPath>..\win32\bind\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <DebugType>full</DebugType>
+ <PlatformTarget>x86</PlatformTarget>
+ <ErrorReport>prompt</ErrorReport>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
+ <OutputPath>..\win32\bin\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <Optimize>true</Optimize>
+ <DebugType>pdbonly</DebugType>
+ <PlatformTarget>x86</PlatformTarget>
+ <ErrorReport>prompt</ErrorReport>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
+ <DebugSymbols>true</DebugSymbols>
+ <OutputPath>..\win64\bind\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <DebugType>full</DebugType>
+ <PlatformTarget>x64</PlatformTarget>
+ <ErrorReport>prompt</ErrorReport>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
+ <OutputPath>..\win64\bin\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <Optimize>true</Optimize>
+ <DebugType>pdbonly</DebugType>
+ <PlatformTarget>x64</PlatformTarget>
+ <ErrorReport>prompt</ErrorReport>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System" />
+ <Reference Include="System.Core">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Drawing" />
+ <Reference Include="System.Windows.Forms" />
+ <Reference Include="System.Xml.Linq">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data.DataSetExtensions">
+ <RequiredTargetFramework>3.5</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="System.Data" />
+ <Reference Include="System.Xml" />
+ <Reference Include="UIAutomationProvider">
+ <RequiredTargetFramework>3.0</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="WindowsBase">
+ <RequiredTargetFramework>3.0</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="PresentationCore">
+ <RequiredTargetFramework>3.0</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="PresentationFramework">
+ <RequiredTargetFramework>3.0</RequiredTargetFramework>
+ </Reference>
+ <Reference Include="WindowsFormsIntegration">
+ <RequiredTargetFramework>3.0</RequiredTargetFramework>
+ </Reference>
+ </ItemGroup>
+ <ItemGroup>
+ <ApplicationDefinition Include="App.xaml">
+ <Generator>MSBuild:Compile</Generator>
+ <SubType>Designer</SubType>
+ </ApplicationDefinition>
+ <Page Include="About.xaml">
+ <Generator>MSBuild:Compile</Generator>
+ <SubType>Designer</SubType>
+ </Page>
+ <Page Include="MaterialDlg.xaml">
+ <Generator>MSBuild:Compile</Generator>
+ <SubType>Designer</SubType>
+ </Page>
+ <Page Include="Simple Styles.xaml">
+ <Generator>MSBuild:Compile</Generator>
+ <SubType>Designer</SubType>
+ </Page>
+ <Page Include="MainWindow.xaml">
+ <Generator>MSBuild:Compile</Generator>
+ <SubType>Designer</SubType>
+ </Page>
+ <Compile Include="App.xaml.cs">
+ <DependentUpon>App.xaml</DependentUpon>
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="MainWindow.xaml.cs">
+ <DependentUpon>MainWindow.xaml</DependentUpon>
+ <SubType>Code</SubType>
+ </Compile>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="About.xaml.cs">
+ <DependentUpon>About.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="IECommands.cs" />
+ <Compile Include="MaterialDlg.xaml.cs">
+ <DependentUpon>MaterialDlg.xaml</DependentUpon>
+ </Compile>
+ <Compile Include="Properties\AssemblyInfo.cs">
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="Properties\Resources.Designer.cs">
+ <AutoGen>True</AutoGen>
+ <DesignTime>True</DesignTime>
+ <DependentUpon>Resources.resx</DependentUpon>
+ </Compile>
+ <Compile Include="Properties\Settings.Designer.cs">
+ <AutoGen>True</AutoGen>
+ <DependentUpon>Settings.settings</DependentUpon>
+ <DesignTimeSharedInput>True</DesignTimeSharedInput>
+ </Compile>
+ <Compile Include="OCCViewer.cs">
+ <SubType>Form</SubType>
+ </Compile>
+ <Compile Include="TransparencyDialog.cs">
+ <SubType>Form</SubType>
+ </Compile>
+ <EmbeddedResource Include="Properties\Resources.resx">
+ <Generator>ResXFileCodeGenerator</Generator>
+ <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+ </EmbeddedResource>
+ <EmbeddedResource Include="TransparencyDialog.resx">
+ <DependentUpon>TransparencyDialog.cs</DependentUpon>
+ </EmbeddedResource>
+ <None Include="Properties\Settings.settings">
+ <Generator>SettingsSingleFileGenerator</Generator>
+ <LastGenOutput>Settings.Designer.cs</LastGenOutput>
+ </None>
+ <AppDesigner Include="Properties\" />
+ </ItemGroup>
+ <ItemGroup>
+ <Resource Include="res\help.png" />
+ <Resource Include="res\lamp.png" />
+ <Resource Include="res\MainFrame.ico" />
+ <Resource Include="res\new.png" />
+ <Resource Include="res\tool_color.png" />
+ <Resource Include="res\tool_delete.png" />
+ <Resource Include="res\tool_material.png" />
+ <Resource Include="res\tool_shading.png" />
+ <Resource Include="res\tool_transparency.png" />
+ <Resource Include="res\tool_wireframe.png" />
+ <Resource Include="res\view_axo.png" />
+ <Resource Include="res\view_back.png" />
+ <Resource Include="res\view_bottom.png" />
+ <Resource Include="res\view_comp_off.png" />
+ <Resource Include="res\view_comp_on.png" />
+ <Resource Include="res\view_fitall.png" />
+ <Resource Include="res\view_fitarea.png" />
+ <Resource Include="res\view_front.png" />
+ <Resource Include="res\view_glpan.png" />
+ <Resource Include="res\view_left.png" />
+ <Resource Include="res\view_pan.png" />
+ <Resource Include="res\view_reset.png" />
+ <Resource Include="res\view_right.png" />
+ <Resource Include="res\view_rotate.png" />
+ <Resource Include="res\view_top.png" />
+ <Resource Include="res\view_zoom.png" />
+ </ItemGroup>
+ <ItemGroup>
+ <Resource Include="res\occ_logo.bmp" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\OCCTProxy\OCCTProxy.vcproj">
+ <Project>{969912D9-78E7-4AB8-B4FF-6B52B4F03991}</Project>
+ <Name>OCCTProxy</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+ <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
+ Other similar extension points exist, see Microsoft.Common.targets.
+ <Target Name="BeforeBuild">
+ </Target>
+ <Target Name="AfterBuild">
+ </Target>
+ -->
+</Project>
\ No newline at end of file
--- /dev/null
+<Window
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ x:Class="IE_WPF.MainWindow"
+ xmlns:local="clr-namespace:IE_WPF"
+ Title="Sample Import/Export" Height="600" Width="900" Icon="res/MainFrame.ico">
+
+ <Window.Background>
+ <SolidColorBrush Color="{DynamicResource {x:Static SystemColors.ControlDarkColorKey}}"/>
+ </Window.Background>
+
+ <Window.Resources>
+ <BooleanToVisibilityConverter x:Key="boolToVisibilityConverter"/>
+ </Window.Resources>
+
+ <Grid>
+ <Grid.RowDefinitions>
+ <RowDefinition Height="auto"/>
+ <RowDefinition Height="auto"/>
+ <RowDefinition />
+ <RowDefinition Height="auto"/>
+ </Grid.RowDefinitions>
+
+ <Menu Height="25" Grid.Row="0">
+ <MenuItem Header="File">
+ <MenuItem Command="local:IECommands.New"/>
+ <MenuItem Command="local:IECommands.Close"/>
+ <MenuItem Header="Import" IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsDocumentOpen}">
+ <MenuItem Name="ImportBrep" Header="BRep..." Click="ImportBRep_Click"/>
+ <MenuItem Name="ImportIges" Header="Iges..." Click="ImportIges_Click"/>
+ <MenuItem Name="ImportStep" Header="Step..." Click="ImportStep_Click"/>
+ </MenuItem>
+ <MenuItem Header="Export" IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsDocumentOpen}">
+ <MenuItem Name="ExportBrep" Header="BRep..." Click="ExportBRep_Click"/>
+ <MenuItem Name="ExportIges" Header="Iges..." Click="ExportIges_Click"/>
+ <MenuItem Name="ExportStep" Header="Step..." Click="ExportStep_Click"/>
+ <MenuItem Name="ExportStl" Header="Stl..." Click="ExportStl_Click"/>
+ <MenuItem Name="ExportVrml" Header="Vrml..." Click="ExportVrml_Click"/>
+ <Separator/>
+ <MenuItem Name="ExportImage" Header="Image..." Click="ExportImage_Click"/>
+ </MenuItem>
+ <Separator/>
+ <MenuItem Command="local:IECommands.Quit"/>
+ </MenuItem>
+ <MenuItem Header="View">
+ <MenuItem Name="ActivateToolbar" IsCheckable="True" IsChecked="True" Header="Toolbar"/>
+ <MenuItem Name="ActivateStatusbar" IsCheckable="True" IsChecked="True" Header="Statusbar"/>
+ </MenuItem>
+ <MenuItem Header="Help">
+ <MenuItem Header="About" Command="local:IECommands.About"/>
+ </MenuItem>
+ </Menu>
+
+ <ToolBarTray Background="White" Grid.Row="1">
+ <ToolBar Name="ToolBar" Band="1" BandIndex="1"
+ Visibility="{Binding ElementName=ActivateToolbar, Path=IsChecked, Converter={StaticResource boolToVisibilityConverter}}"
+ MouseEnter="ToolBar_MouseEnter" MouseLeave="ToolBar_MouseLeave">
+ <Button ToolTip="New" Command="local:IECommands.New">
+ <Image Source="res/new.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="About" Command="local:IECommands.About">
+ <Image Source="res/help.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ </ToolBar>
+ <ToolBar Name="DocumentToolBar" Band="1" BandIndex="2"
+ Visibility="{Binding ElementName=ActivateToolbar, Path=IsChecked, Converter={StaticResource boolToVisibilityConverter}}"
+ IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsDocumentOpen}"
+ MouseEnter="DocumentToolBar_MouseEnter" MouseLeave="ToolBar_MouseLeave">
+ <Button ToolTip="Wireframe" Click="Wireframe_Click"
+ IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsWireframeEnabled}">
+ <Image Source="res/tool_wireframe.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Shading" Click="Shading_Click"
+ IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsShadingEnabled}">
+ <Image Source="res/tool_shading.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Color" Click="Color_Click"
+ IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsColorEnabled}">
+ <Image Source="res/tool_color.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Material" Click="Material_Click"
+ IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsMaterialEnabled}">
+ <Image Source="res/tool_material.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Transparency" Click="Transparency_Click"
+ IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsTransparencyEnabled}">
+ <Image Source="res/tool_transparency.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Delete" Click="Delete_Click"
+ IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsDeleteEnabled}">
+ <Image Source="res/tool_delete.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ </ToolBar>
+ <ToolBar Name="ViewToolBar" Band="1" BandIndex="1"
+ Visibility="{Binding ElementName=ActivateToolbar, Path=IsChecked, Converter={StaticResource boolToVisibilityConverter}}"
+ IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsDocumentOpen}"
+ MouseEnter="ViewToolBar_MouseEnter" MouseLeave="ToolBar_MouseLeave">
+ <Button ToolTip="FitAll" Name="FitAllBtn" Click="FitAllBtn_Click">
+ <Image Source="res/view_fitall.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Zoom Window" Name="ZoomWindowBtn" Click="ZoomWindowBtn_Click"
+ IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsZoomWinEnabled}">
+ <Image Source="res/view_fitarea.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Dynamic Zooming" Name="DynamicZoomingBtn" Click="DynamicZoomingBtn_Click">
+ <Image Source="res/view_zoom.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Dynamic Panning" Name="DynamicPanningBtn" Click="DynamicPanningBtn_Click">
+ <Image Source="res/view_pan.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Global Panning" Name="GlobalPanningBtn" Click="GlobalPanningBtn_Click">
+ <Image Source="res/view_glpan.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Front" Name="FrontBtn" Click="FrontBtn_Click">
+ <Image Source="res/view_front.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Back" Name="BackBtn" Click="BackBtn_Click">
+ <Image Source="res/view_back.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Top" Name="TopBtn" Click="TopBtn_Click">
+ <Image Source="res/view_top.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Bottom" Name="BottomBtn" Click="BottomBtn_Click">
+ <Image Source="res/view_bottom.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Left" Name="LeftBtn" Click="LeftBtn_Click">
+ <Image Source="res/view_left.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Right" Name="RightBtn" Click="RightBtn_Click">
+ <Image Source="res/view_right.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Axo" Name="AxoBtn" Click="AxoBtn_Click">
+ <Image Source="res/view_axo.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Dynamic Rotation" Name="DynamicRotationBtn" Click="DynamicRotationBtn_Click">
+ <Image Source="res/view_rotate.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Reset" Name="ResetBtn" Click="ResetBtn_Click">
+ <Image Source="res/view_reset.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Hidden Off" Name="HiddenOffBtn" Click="HiddenOffBtn_Click"
+ IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsHlrOnPushed}">
+ <Image Source="vres/iew_comp_on.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ <Button ToolTip="Hidden On" Name="HiddenOnBtn" Click="HiddenOnBtn_Click"
+ IsEnabled="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsHlrOffPushed}">
+ <Image Source="res/view_comp_off.png" Style="{StaticResource toolbarImageStyle}"/>
+ </Button>
+ </ToolBar>
+ </ToolBarTray>
+
+ <TabControl Name="ViewPanel" Grid.Row="2"
+ SelectionChanged="OnViewerChanged"
+ Visibility="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=IsDocumentOpen, Converter={StaticResource boolToVisibilityConverter}}">
+
+ <TabControl.ContextMenu>
+ <ContextMenu>
+ <MenuItem Command="local:IECommands.New" Style="{StaticResource popupItem}"/>
+ <MenuItem Command="local:IECommands.Close" Style="{StaticResource popupItem}"/>
+ </ContextMenu>
+ </TabControl.ContextMenu>
+
+ </TabControl>
+
+ <StatusBar Background="White" Grid.Row="3" Visibility="{Binding ElementName=ActivateStatusbar, Path=IsChecked, Converter={StaticResource boolToVisibilityConverter}}">
+ <TextBlock Text="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}, Path=StatusBarText}"/>
+ </StatusBar>
+ </Grid>
+</Window>
--- /dev/null
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+using System.Windows.Navigation;
+using System.Windows.Shapes;
+using System.ComponentModel;
+using System.Windows.Forms.Integration;
+
+namespace IE_WPF
+{
+ /// <summary>
+ /// Interaction logic for MainWindow.xaml
+ /// </summary>
+ public partial class MainWindow : Window, INotifyPropertyChanged
+ {
+ public event PropertyChangedEventHandler PropertyChanged;
+ protected void RaisePropertyChanged( string thePropertyName )
+ {
+ if ( PropertyChanged != null )
+ {
+ PropertyChanged( this, new PropertyChangedEventArgs( thePropertyName ) );
+ }
+ }
+
+ public MainWindow()
+ {
+ InitializeComponent();
+
+ StatusBarText = String.Empty;
+ IsHlrOffPushed = false;
+ IsHlrOnPushed = true;
+ IsZoomWinEnabled = true;
+
+ #region menu operations
+
+ CommandBinding aBind_New = new CommandBinding( IECommands.New );
+ aBind_New.Executed += NewCommand_Executed;
+ CommandBindings.Add( aBind_New );
+
+ CommandBinding aBind_Close = new CommandBinding( IECommands.Close );
+ aBind_Close.Executed += CloseCommand_Executed;
+ aBind_Close.CanExecute += CloseCommand_CanExecute;
+ CommandBindings.Add( aBind_Close );
+
+ CommandBinding aBind_Quit = new CommandBinding( IECommands.Quit );
+ aBind_Quit.Executed += QuitCommand_Executed;
+ CommandBindings.Add( aBind_Quit );
+
+ CommandBinding aBind_About = new CommandBinding( IECommands.About );
+ aBind_About.Executed += AboutCommand_Executed;
+ CommandBindings.Add( aBind_About );
+
+ # endregion
+
+ PreviewKeyDown += new KeyEventHandler( OnPreviewKeyDown );
+ PreviewKeyUp += new KeyEventHandler( OnPreviewKeyUp );
+ }
+
+ private String myStatusBarText;
+ public String StatusBarText
+ {
+ get
+ {
+ return myStatusBarText;
+ }
+ private set
+ {
+ myStatusBarText = value;
+ RaisePropertyChanged( "StatusBarText" );
+ }
+ }
+
+ private bool isHlrOffPushed;
+ public Boolean IsHlrOffPushed
+ {
+ get
+ {
+ return isHlrOffPushed;
+ }
+ set
+ {
+ isHlrOffPushed = value;
+ RaisePropertyChanged("isHlrOffPushed");
+ }
+ }
+
+ private bool isHlrOnPushed;
+ public Boolean IsHlrOnPushed
+ {
+ get
+ {
+ return isHlrOnPushed;
+ }
+ set
+ {
+ isHlrOnPushed = value;
+ RaisePropertyChanged("IsHlrOnPushed");
+ }
+ }
+
+ private bool isZoomWinEnabled;
+ public Boolean IsZoomWinEnabled
+ {
+ get
+ {
+ return isZoomWinEnabled;
+ }
+ set
+ {
+ isZoomWinEnabled = value;
+ RaisePropertyChanged("IsZoomWinEnabled");
+ }
+ }
+
+ private OCCViewer ActiveViewer
+ {
+ get
+ {
+ if ( !IsDocumentOpen )
+ {
+ return null;
+ }
+
+ WindowsFormsHost aHost = ( ViewPanel.SelectedContent ) as WindowsFormsHost;
+ if( aHost == null )
+ {
+ return null;
+ }
+
+ return aHost.Child as OCCViewer;
+ }
+ }
+
+ public Boolean IsDocumentOpen
+ {
+ get
+ {
+ return ViewPanel.Items.Count > 0;
+ }
+ }
+
+ private int myDocumentCounter = 1;
+
+ private void NewCommand_Executed( object sender, ExecutedRoutedEventArgs e )
+ {
+ WindowsFormsHost aHost = new WindowsFormsHost();
+ OCCViewer aForm = new OCCViewer();
+ aForm.Show();
+ aHost.Child = aForm;
+
+ TabItem aNewTab = new TabItem();
+ aNewTab.Content = aHost;
+ aNewTab.IsSelected = true;
+ aNewTab.Header = "Document " + myDocumentCounter.ToString();
+ myDocumentCounter++;
+
+ ViewPanel.Items.Add( aNewTab );
+
+ // update XAML property
+ RaisePropertyChanged("IsDocumentOpen");
+ }
+
+ private void CloseCommand_Executed(object sender, ExecutedRoutedEventArgs e)
+ {
+ if ( ViewPanel.Items.Count > 0 )
+ {
+ ViewPanel.Items.Remove( ViewPanel.SelectedItem );
+ }
+
+ // update XAML property
+ RaisePropertyChanged( "IsDocumentOpen" );
+ }
+
+ private void CloseCommand_CanExecute(object sender, CanExecuteRoutedEventArgs e)
+ {
+ e.CanExecute = IsDocumentOpen;
+ }
+
+ private void QuitCommand_Executed( object sender, ExecutedRoutedEventArgs e )
+ {
+ this.Close();
+ }
+
+ private void ImportBRep_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.ImportModel( ModelFormat.BREP );
+ }
+ }
+
+ private void ImportIges_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.ImportModel( ModelFormat.IGES );
+ }
+ }
+
+ private void ImportStep_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.ImportModel( ModelFormat.STEP );
+ }
+ }
+
+ private void ExportBRep_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.ExportModel( ModelFormat.BREP );
+ }
+ }
+
+ private void ExportStep_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.ExportModel( ModelFormat.STEP );
+ }
+ }
+
+ private void ExportIges_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.ExportModel( ModelFormat.IGES );
+ }
+ }
+
+ private void ExportStl_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.ExportModel( ModelFormat.STL );
+ }
+ }
+
+ private void ExportVrml_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.ExportModel( ModelFormat.VRML );
+ }
+ }
+
+ private void ExportImage_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.ExportModel( ModelFormat.IMAGE );
+ }
+ }
+
+ private void FitAllBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.FitAll();
+ }
+ }
+
+ private void ZoomWindowBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ IsZoomWinEnabled = false;
+ ActiveViewer.ZoomWindow();
+ }
+ }
+
+ private void DynamicZoomingBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.DynamicZooming();
+ }
+ }
+
+ private void DynamicPanningBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.DynamicPanning();
+ }
+ }
+
+ private void GlobalPanningBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.GlobalPanning();
+ }
+ }
+
+ private void FrontBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.FrontView();
+ }
+ }
+
+ private void BackBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.BackView();
+ }
+ }
+
+ private void TopBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.TopView();
+ }
+ }
+
+ private void BottomBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.BottomView();
+ }
+ }
+
+ private void LeftBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.LeftView();
+ }
+ }
+
+ private void RightBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.RightView();
+ }
+ }
+
+ private void AxoBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.AxoView();
+ }
+ }
+
+ private void ResetBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.Reset();
+ }
+ }
+
+ private void DynamicRotationBtn_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.DynamicRotation();
+ }
+ }
+
+ private void HiddenOffBtn_Click( object sender, RoutedEventArgs e )
+ {
+ IsHlrOffPushed = true;
+ IsHlrOnPushed = false;
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.HiddenOff();
+ }
+ }
+
+ private void HiddenOnBtn_Click( object sender, RoutedEventArgs e )
+ {
+ IsHlrOffPushed = false;
+ IsHlrOnPushed = true;
+ if (ActiveViewer != null)
+ {
+ ActiveViewer.HiddenOn();
+ }
+ }
+
+ private void AboutCommand_Executed( object sender, ExecutedRoutedEventArgs e )
+ {
+ AboutDialog aDlg = new AboutDialog();
+ aDlg.ShowDialog();
+ }
+
+ private void ToolBar_MouseEnter( object sender, MouseEventArgs e )
+ {
+ StatusBarText = "Toolbar";
+ }
+
+ private void DocumentToolBar_MouseEnter(object sender, MouseEventArgs e)
+ {
+ StatusBarText = "Document toolbar";
+ }
+
+ private void ViewToolBar_MouseEnter(object sender, MouseEventArgs e)
+ {
+ StatusBarText = "View toolbar";
+ }
+
+ private void ToolBar_MouseLeave( object sender, MouseEventArgs e )
+ {
+ StatusBarText = "";
+ }
+
+ public void OnZoomingFinished( object sender, EventArgs e )
+ {
+ IsZoomWinEnabled = true;
+ }
+
+ public bool IsWireframeEnabled
+ {
+ get
+ {
+ if ( ActiveViewer != null )
+ {
+ return ActiveViewer.IsWireframeEnabled;
+ }
+ return false;
+ }
+ }
+
+ private void Wireframe_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.Wireframe();
+ }
+ }
+
+ private void Shading_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.Shading();
+ }
+ }
+
+ public bool IsShadingEnabled
+ {
+ get
+ {
+ if ( ActiveViewer != null )
+ {
+ return ActiveViewer.IsShadingEnabled;
+ }
+ return false;
+ }
+ }
+
+ private void Color_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.Color();
+ }
+ }
+
+ public bool IsColorEnabled
+ {
+ get
+ {
+ if ( ActiveViewer != null )
+ {
+ return ActiveViewer.IsColorEnabled;
+ }
+ return false;
+ }
+ }
+
+ private void Material_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.Material();
+ }
+ }
+
+ public bool IsMaterialEnabled
+ {
+ get
+ {
+ if ( ActiveViewer != null )
+ {
+ return ActiveViewer.IsMaterialEnabled;
+ }
+ return false;
+ }
+ }
+
+ private void Transparency_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.Transparency();
+ }
+ }
+
+ public bool IsTransparencyEnabled
+ {
+ get
+ {
+ if ( ActiveViewer != null )
+ {
+ return ActiveViewer.IsTransparencyEnabled;
+ }
+ return false;
+ }
+ }
+
+ private void Delete_Click( object sender, RoutedEventArgs e )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.Delete();
+ }
+ }
+
+ public bool IsDeleteEnabled
+ {
+ get
+ {
+ if ( ActiveViewer != null )
+ {
+ return ActiveViewer.IsDeleteEnabled;
+ }
+ return false;
+ }
+ }
+
+ private void AvaliabiltyOfOperationToolbarChanged()
+ {
+ RaisePropertyChanged( "IsWireframeEnabled" );
+ RaisePropertyChanged( "IsShadingEnabled" );
+ RaisePropertyChanged( "IsTransparencyEnabled" );
+ RaisePropertyChanged( "IsColorEnabled" );
+ RaisePropertyChanged( "IsMaterialEnabled" );
+ RaisePropertyChanged( "IsDeleteEnabled" );
+ }
+
+ public void OnAvaliabiltyOfOperationsChanged( object sender, EventArgs e )
+ {
+ AvaliabiltyOfOperationToolbarChanged();
+ }
+
+ private void OnViewerChanged( object sender, SelectionChangedEventArgs e )
+ {
+ if ( e.RemovedItems.Count > 0 )
+ {
+ WindowsFormsHost aHost = ( ( e.RemovedItems[0] as TabItem).Content ) as WindowsFormsHost;
+ if( aHost == null )
+ {
+ return;
+ }
+ OCCViewer aViewer = aHost.Child as OCCViewer;
+ if( aViewer != null )
+ {
+ aViewer.ZoomingFinished -= new EventHandler( OnZoomingFinished );
+ aViewer.AvaliabiltyOfOperationsChanged -= new EventHandler( OnAvaliabiltyOfOperationsChanged );
+ }
+ }
+
+ if ( e.AddedItems.Count > 0 )
+ {
+ WindowsFormsHost aHost = ( (e.AddedItems[0] as TabItem).Content ) as WindowsFormsHost;
+ if ( aHost == null )
+ {
+ return;
+ }
+ OCCViewer aViewer = aHost.Child as OCCViewer;
+ if ( aViewer != null )
+ {
+ aViewer.ZoomingFinished += new EventHandler( OnZoomingFinished );
+ aViewer.AvaliabiltyOfOperationsChanged += new EventHandler( OnAvaliabiltyOfOperationsChanged );
+ }
+ }
+
+ AvaliabiltyOfOperationToolbarChanged();
+ }
+
+ private void OnPreviewKeyDown( object sender, KeyEventArgs args )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.OnKeyDown( args.Key );
+ }
+ }
+
+ private void OnPreviewKeyUp( object sender, KeyEventArgs args )
+ {
+ if ( ActiveViewer != null )
+ {
+ ActiveViewer.OnKeyUp();
+ }
+ }
+ }
+}
--- /dev/null
+<Window
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ x:Class="IE_WPF.MaterialDlg"
+ x:Name="Window"
+ Title="Material"
+ Width="133" Height="181" mc:Ignorable="d">
+
+ <StackPanel Orientation="Vertical" d:LayoutOverrides="Height" HorizontalAlignment="Center" VerticalAlignment="Center">
+ <RadioButton Name="PlasterBtn" Content="Plaster" Checked="PlasterBtn_Checked"/>
+ <RadioButton Name="BrassBtn" Content="Brass" Checked="BrassBtn_Checked"/>
+ <RadioButton Name="BronzeBtn" Content="Bronze" Checked="BronzeBtn_Checked"/>
+ <RadioButton Name="CopperBtn" Content="Copper" Checked="CopperBtn_Checked"/>
+ <RadioButton Name="GoldBtn" Content="Gold" Checked="GoldBtn_Checked"/>
+ <RadioButton Name="PewterBtn" Content="Pewter" Checked="PewterBtn_Checked"/>
+ <RadioButton Name="PlasticBtn" Content="Plastic" Checked="PlasticBtn_Checked"/>
+ <RadioButton Name="SilverBtn" Content="Silver" Checked="SilverBtn_Checked"/>
+ </StackPanel>
+</Window>
\ No newline at end of file
--- /dev/null
+using System;
+using System.Collections.Generic;
+using System.Text;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+using System.Windows.Shapes;
+
+namespace IE_WPF
+{
+ public enum Material
+ {
+ Brass,
+ Bronze,
+ Copper,
+ Gold,
+ Pewter,
+ Plaster,
+ Plastic,
+ Silver
+ }
+
+ /// <summary>
+ /// Interaction logic for MaterialDlg.xaml
+ /// </summary>
+ public partial class MaterialDlg : Window
+ {
+ public MaterialDlg( OCCTProxy theView )
+ {
+ this.InitializeComponent();
+
+ if ( theView == null )
+ {
+ MessageBox.Show( "Fatal Error during the graphic initialisation", "Error!" );
+ }
+
+ View = theView;
+
+ SetInitialState();
+ }
+
+ public OCCTProxy View { get; private set; }
+
+ private void PlasterBtn_Checked( object sender, RoutedEventArgs e )
+ {
+ View.SetMaterial( (int)Material.Plaster );
+ View.UpdateCurrentViewer();
+ }
+
+ private void BrassBtn_Checked( object sender, RoutedEventArgs e )
+ {
+ View.SetMaterial( (int)Material.Brass );
+ View.UpdateCurrentViewer();
+ }
+
+ private void BronzeBtn_Checked( object sender, RoutedEventArgs e )
+ {
+ View.SetMaterial( (int)Material.Bronze );
+ View.UpdateCurrentViewer();
+ }
+
+ private void CopperBtn_Checked( object sender, RoutedEventArgs e )
+ {
+ View.SetMaterial( (int)Material.Copper );
+ View.UpdateCurrentViewer();
+ }
+
+ private void GoldBtn_Checked( object sender, RoutedEventArgs e )
+ {
+ View.SetMaterial( (int)Material.Gold );
+ View.UpdateCurrentViewer();
+ }
+
+ private void PewterBtn_Checked( object sender, RoutedEventArgs e )
+ {
+ View.SetMaterial( (int)Material.Pewter );
+ View.UpdateCurrentViewer();
+ }
+
+ private void PlasticBtn_Checked( object sender, RoutedEventArgs e )
+ {
+ View.SetMaterial( (int)Material.Plastic );
+ View.UpdateCurrentViewer();
+ }
+
+ private void SilverBtn_Checked( object sender, RoutedEventArgs e )
+ {
+ View.SetMaterial( (int)Material.Silver );
+ View.UpdateCurrentViewer();
+ }
+
+ private void SetInitialState()
+ {
+ // TODO
+ }
+ }
+}
\ No newline at end of file
--- /dev/null
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+
+namespace IE_WPF
+{
+ public enum CurrentAction3d
+ {
+ CurAction3d_Nothing,
+ CurAction3d_DynamicZooming,
+ CurAction3d_WindowZooming,
+ CurAction3d_DynamicPanning,
+ CurAction3d_GlobalPanning,
+ CurAction3d_DynamicRotation
+ }
+ public enum CurrentPressedKey
+ {
+ CurPressedKey_Nothing,
+ CurPressedKey_Ctrl,
+ CurPressedKey_Shift
+ }
+ public enum ModelFormat
+ {
+ BREP,
+ CSFDB,
+ STEP,
+ IGES,
+ VRML,
+ STL,
+ IMAGE
+ }
+
+ public enum DisplayMode
+ {
+ Wireframe,
+ Shading
+ }
+
+ public class OCCViewer : System.Windows.Forms.Form
+ {
+ public event EventHandler ZoomingFinished;
+ protected void RaiseZoomingFinished()
+ {
+ if ( ZoomingFinished != null )
+ {
+ ZoomingFinished( this, EventArgs.Empty );
+ }
+ }
+
+ public event EventHandler AvaliabiltyOfOperationsChanged;
+ protected void RaiseAvaliabiltyOfOperationsChanged()
+ {
+ if ( AvaliabiltyOfOperationsChanged != null )
+ {
+ AvaliabiltyOfOperationsChanged( this, EventArgs.Empty );
+ }
+ }
+
+ public OCCTProxy View { get; private set; }
+ public CurrentAction3d CurrentMode { get; private set; }
+ private CurrentPressedKey CurrentPressedKey { get; set; }
+ private bool IsRectVisible { get; set; }
+ public bool DegenerateMode { get; private set; }
+
+ public bool IsWireframeEnabled { get; private set; }
+ public bool IsShadingEnabled { get; private set; }
+ public bool IsTransparencyEnabled { get; private set; }
+ public bool IsColorEnabled { get; private set; }
+ public bool IsMaterialEnabled { get; private set; }
+ public bool IsDeleteEnabled { get; private set; }
+
+ private float myCurZoom;// ~ Quantity_Factor
+ private int myXmin;
+ private int myYmin;
+ private int myXmax;
+ private int myYmax;
+ private int myRectDownX;
+ private int myRectDownY;
+ private int myButtonDownX;
+ private int myButtonDownY;
+
+ private ContextMenu Popup { get; set; }
+ private MenuItem ContextWireframe;
+ private MenuItem ContextShading;
+ private MenuItem ContextColor;
+ private MenuItem ContextMaterial;
+ private MenuItem ContextDelete;
+ private MenuItem ContextBackground;
+ private MenuItem ContextTransparency;
+
+
+ public OCCViewer()
+ {
+ InitializeComponent();
+
+ View = new OCCTProxy();
+ View.InitOCCTProxy();
+ if ( !View.InitViewer( this.Handle ) )
+ {
+ MessageBox.Show( "Fatal Error during the graphic initialisation", "Error!" );
+ }
+
+ CurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ CurrentPressedKey = CurrentPressedKey.CurPressedKey_Nothing;
+ IsRectVisible = false;
+ DegenerateMode = true;
+ }
+
+ private void InitializeComponent()
+ {
+ ControlBox = false;
+ TopLevel = false;
+
+ this.ImeMode = System.Windows.Forms.ImeMode.NoControl;
+
+ SizeChanged += new System.EventHandler( OnSizeChanged );
+ Paint += new System.Windows.Forms.PaintEventHandler( OnPaint );
+
+ MouseDown += new System.Windows.Forms.MouseEventHandler( OnMouseDown );
+ MouseUp += new System.Windows.Forms.MouseEventHandler( OnMouseUp );
+ MouseMove += new System.Windows.Forms.MouseEventHandler( OnMouseMove );
+
+ Popup = new ContextMenu();
+ ContextWireframe = new MenuItem();
+ ContextShading = new MenuItem();
+ ContextColor = new MenuItem();
+ ContextMaterial = new MenuItem();
+ ContextTransparency = new MenuItem();
+ ContextDelete = new MenuItem();
+ ContextBackground = new MenuItem();
+
+ ContextWireframe.Text = "Wireframe";
+ ContextShading.Text = "Shading";
+ ContextColor.Text = "Color";
+ ContextMaterial.Text = "Material";
+ ContextTransparency.Text = "Transparency";
+ ContextDelete.Text = "Delete";
+ ContextBackground.Text = "Background";
+
+ ContextWireframe.Click += new System.EventHandler( ContextWireframe_Click );
+ ContextShading.Click += new System.EventHandler( ContextShading_Click );
+ ContextColor.Click += new System.EventHandler( ContextColor_Click );
+ ContextMaterial.Click += new System.EventHandler( ContextMaterial_Click );
+ ContextTransparency.Click += new System.EventHandler( ContextTransparency_Click );
+ ContextDelete.Click += new System.EventHandler( ContextDelete_Click );
+ ContextBackground.Click += new System.EventHandler( ContextBackground_Click );
+
+ Popup.MenuItems.AddRange( new MenuItem[] { ContextWireframe,
+ ContextShading,
+ ContextColor,
+ ContextMaterial,
+ ContextTransparency,
+ ContextDelete,
+ ContextBackground } );
+ Popup.Popup += new System.EventHandler( OnPopup );
+ }
+
+ private void OnPaint(object sender, System.Windows.Forms.PaintEventArgs e)
+ {
+ View.RedrawView();
+ View.UpdateView();
+ }
+
+ private void OnSizeChanged(object sender, System.EventArgs e)
+ {
+ View.UpdateView();
+ }
+
+ public void ImportModel( ModelFormat theFormat )
+ {
+ int aFormat = 10;
+ OpenFileDialog anOpenDialog = new OpenFileDialog();
+ string aDataDir = ( (Environment.GetEnvironmentVariable("CASROOT")) + "\\..\\data" );
+ string aFilter = "";
+
+ switch ( theFormat )
+ {
+ case ModelFormat.BREP:
+ anOpenDialog.InitialDirectory = (aDataDir + "\\occ");
+ aFormat = 0;
+ aFilter = "BREP Files (*.brep *.rle)|*.brep; *.rle";
+ break;
+ case ModelFormat.CSFDB:
+ aFormat = 1;
+ aFilter = "CSFDB Files (*.csfdb)|*.csfdb";
+ break;
+ case ModelFormat.STEP:
+ anOpenDialog.InitialDirectory = (aDataDir + "\\step");
+ aFormat = 2;
+ aFilter = "STEP Files (*.stp *.step)|*.stp; *.step";
+ break;
+ case ModelFormat.IGES:
+ anOpenDialog.InitialDirectory = (aDataDir + "\\iges");
+ aFormat = 3;
+ aFilter = "IGES Files (*.igs *.iges)|*.igs; *.iges";
+ break;
+ default:
+ break;
+ }
+
+ anOpenDialog.Filter = aFilter + "|All files (*.*)|*.*";
+ if (anOpenDialog.ShowDialog() == DialogResult.OK)
+ {
+ string aFileName = anOpenDialog.FileName;
+ if (aFileName == "")
+ {
+ return;
+ }
+
+ Cursor = System.Windows.Forms.Cursors.WaitCursor;
+ if ( !View.TranslateModel( aFileName, aFormat, true ) )
+ {
+ MessageBox.Show( "Cann't read this file", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Warning );
+ }
+ Cursor = System.Windows.Forms.Cursors.Default;
+ }
+ View.ZoomAllView();
+ }
+
+ public void ExportModel( ModelFormat theFormat )
+ {
+ int aFormat = 10;
+ SaveFileDialog saveDialog = new SaveFileDialog();
+ string aDataDir = ( (Environment.GetEnvironmentVariable("CASROOT") ) + "\\..\\data" );
+ string aFilter = "";
+
+ switch ( theFormat )
+ {
+ case ModelFormat.BREP:
+ saveDialog.InitialDirectory = ( aDataDir + "\\occ" );
+ aFormat = 0;
+ aFilter = "BREP Files (*.brep *.rle)|*.brep; *.rle";
+ break;
+ case ModelFormat.CSFDB:
+ aFormat = 1;
+ aFilter = "CSFDB Files (*.csfdb)|*.csfdb";
+ break;
+ case ModelFormat.STEP:
+ saveDialog.InitialDirectory = ( aDataDir + "\\step" );
+ aFormat = 2;
+ aFilter = "STEP Files (*.stp *.step)|*.step; *.stp";
+ break;
+ case ModelFormat.IGES:
+ saveDialog.InitialDirectory = ( aDataDir + "\\iges" );
+ aFormat = 3;
+ aFilter = "IGES Files (*.igs *.iges)| *.iges; *.igs";
+ break;
+ case ModelFormat.VRML:
+ saveDialog.InitialDirectory = ( aDataDir + "\\vrml" );
+ aFormat = 4;
+ aFilter = "VRML Files (*.vrml)|*.vrml";
+ break;
+ case ModelFormat.STL:
+ saveDialog.InitialDirectory = ( aDataDir + "\\stl" );
+ aFormat = 5;
+ aFilter = "STL Files (*.stl)|*.stl";
+ break;
+ case ModelFormat.IMAGE:
+ saveDialog.InitialDirectory = ( aDataDir + "\\images" );
+ aFormat = 6;
+ aFilter = "Images Files (*.bmp)|*.bmp";
+ break;
+ default:
+ break;
+ }
+
+ saveDialog.Filter = aFilter;
+ if ( saveDialog.ShowDialog() == DialogResult.OK )
+ {
+ string aFileName = saveDialog.FileName;
+ if ( aFileName == "" )
+ {
+ return;
+ }
+
+ Cursor = System.Windows.Forms.Cursors.WaitCursor;
+ if ( !View.TranslateModel( aFileName, aFormat, false ) )
+ {
+ MessageBox.Show( "Can not write this file", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Warning );
+ }
+ Cursor = System.Windows.Forms.Cursors.Default;
+ }
+ }
+
+ public void FitAll()
+ {
+ View.ZoomAllView();
+ }
+
+ public void ZoomWindow()
+ {
+ CurrentMode = CurrentAction3d.CurAction3d_WindowZooming;
+ }
+
+ public void DynamicZooming()
+ {
+ CurrentMode = CurrentAction3d.CurAction3d_DynamicZooming;
+ }
+
+ public void DynamicPanning()
+ {
+ CurrentMode = CurrentAction3d.CurAction3d_DynamicPanning;
+ }
+
+ public void GlobalPanning()
+ {
+ myCurZoom = View.Scale();
+ CurrentMode = CurrentAction3d.CurAction3d_GlobalPanning;
+ }
+
+ public void AxoView()
+ {
+ View.AxoView();
+ }
+
+ public void FrontView()
+ {
+ View.FrontView();
+ }
+
+ public void TopView()
+ {
+ View.TopView();
+ }
+
+ public void LeftView()
+ {
+ View.LeftView();
+ }
+
+ public void BackView()
+ {
+ View.BackView();
+ }
+
+ public void RightView()
+ {
+ View.RightView();
+ }
+
+ public void Reset()
+ {
+ View.Reset();
+ }
+
+ public void BottomView()
+ {
+ View.BottomView();
+ }
+
+ public void HiddenOff()
+ {
+ View.SetDegenerateModeOff();
+ DegenerateMode = false;
+ }
+
+ public void HiddenOn()
+ {
+ View.SetDegenerateModeOn();
+ DegenerateMode = true;
+ }
+
+ public void DynamicRotation()
+ {
+ CurrentMode = CurrentAction3d.CurAction3d_DynamicRotation;
+ }
+
+ public void SelectionChanged()
+ {
+ switch ( View.DisplayMode() )
+ {
+ case -1:
+ IsShadingEnabled = false;
+ IsWireframeEnabled = false;
+ break;
+ case 0:
+ IsWireframeEnabled = false;
+ IsShadingEnabled = true;
+ IsTransparencyEnabled = false;
+ break;
+ case 1:
+ IsWireframeEnabled = true;
+ IsShadingEnabled = false;
+ IsTransparencyEnabled = true;
+ break;
+ case 10:
+ IsWireframeEnabled = true;
+ IsShadingEnabled = true;
+ IsTransparencyEnabled = true;
+ break;
+ default:
+ break;
+ }
+
+ if ( View.IsObjectSelected() )
+ {
+ IsColorEnabled = true;
+ IsMaterialEnabled = true;
+ IsDeleteEnabled = true;
+ }
+ else
+ {
+ IsColorEnabled = false;
+ IsMaterialEnabled = false;
+ IsTransparencyEnabled = false;
+ IsDeleteEnabled = false;
+ }
+
+ RaiseAvaliabiltyOfOperationsChanged();
+ }
+
+ public void ChangeColor( bool IsObjectColor )
+ {
+ int r, g, b;
+ if ( IsObjectColor )
+ {
+ r = View.GetObjColR();
+ g = View.GetObjColG();
+ b = View.GetObjColB();
+ }
+ else
+ {
+ r = View.GetBGColR();
+ g = View.GetBGColG();
+ b = View.GetBGColB();
+ }
+ System.Windows.Forms.ColorDialog ColDlg = new System.Windows.Forms.ColorDialog();
+ ColDlg.Color = System.Drawing.Color.FromArgb( r, g, b );
+ if ( ColDlg.ShowDialog() == System.Windows.Forms.DialogResult.OK )
+ {
+ System.Drawing.Color c = ColDlg.Color;
+ r = c.R;
+ g = c.G;
+ b = c.B;
+ if ( IsObjectColor )
+ {
+ View.SetColor( r, g, b );
+ }
+ else
+ {
+ View.SetBackgroundColor( r, g, b );
+ }
+ }
+ View.UpdateCurrentViewer();
+ }
+
+ public void Wireframe()
+ {
+ View.SetDisplayMode( (int)DisplayMode.Wireframe );
+ View.UpdateCurrentViewer();
+
+ SelectionChanged();
+ RaiseZoomingFinished();
+ }
+
+ public void Shading()
+ {
+ View.SetDisplayMode( (int)DisplayMode.Shading );
+ View.UpdateCurrentViewer();
+
+ SelectionChanged();
+ RaiseZoomingFinished();
+ }
+
+ public void Color()
+ {
+ ChangeColor( true );
+ }
+
+ public void Background()
+ {
+ ChangeColor( false );
+ }
+
+ public void Material()
+ {
+ MaterialDlg aDlg = new MaterialDlg( View );
+ aDlg.ShowDialog();
+ }
+
+ public void Transparency()
+ {
+ TransparencyDialog dlg = new TransparencyDialog();
+ dlg.View = View;
+ dlg.ShowDialog( this );
+ }
+
+ public void Delete()
+ {
+ View.EraseObjects();
+ }
+
+ public void OnKeyDown( System.Windows.Input.Key theKey )
+ {
+ if ( theKey == System.Windows.Input.Key.LeftShift ||
+ theKey == System.Windows.Input.Key.RightShift )
+ {
+ CurrentPressedKey = CurrentPressedKey.CurPressedKey_Shift;
+ }
+ else if (theKey == System.Windows.Input.Key.LeftCtrl ||
+ theKey == System.Windows.Input.Key.RightCtrl )
+ {
+ CurrentPressedKey = CurrentPressedKey.CurPressedKey_Ctrl;
+ }
+ }
+
+ public void OnKeyUp()
+ {
+ CurrentPressedKey = CurrentPressedKey.CurPressedKey_Nothing;
+ }
+
+ protected void MultiDragEvent( int x, int y, int theState )
+ {
+ if ( theState == -1 ) //mouse is down
+ {
+ myButtonDownX = x;
+ myButtonDownY = y;
+ }
+ else if ( theState == 1) //mouse is up
+ {
+ View.ShiftSelect( Math.Min( myButtonDownX, x ), Math.Min( myButtonDownY, y ),
+ Math.Max( myButtonDownX, x ), Math.Max( myButtonDownY, y ) );
+ }
+ }
+
+ protected void DragEvent( int x, int y, int theState )
+ {
+ if ( theState == -1 ) //mouse is down
+ {
+ myButtonDownX = x;
+ myButtonDownY = y;
+ }
+ else if ( theState == 1 ) //mouse is up
+ {
+ View.Select( Math.Min( myButtonDownX, x ), Math.Min( myButtonDownY, y ),
+ Math.Max( myButtonDownX, x ), Math.Max( myButtonDownY, y ) );
+ }
+ }
+
+ private void DrawRectangle( bool draw )
+ {
+ System.Drawing.Graphics gr = System.Drawing.Graphics.FromHwnd(Handle);
+ System.Drawing.Pen p = null;
+ if ( IsRectVisible || !draw )//erase the rect
+ {
+ int r = View.GetBGColR();
+ int g = View.GetBGColG();
+ int b = View.GetBGColB();
+ p = new System.Drawing.Pen( System.Drawing.Color.FromArgb(r, g, b) );
+ IsRectVisible = false;
+ View.UpdateView();
+ }
+ else if ( draw )
+ {
+ p = new System.Drawing.Pen( System.Drawing.Color.White );
+ IsRectVisible = true;
+ }
+ if ( p == null )
+ {
+ return;
+ }
+ int x = Math.Min( myXmin, myXmax );
+ int y = Math.Min( myYmin, myYmax );
+ gr.DrawRectangle( p, x, y, Math.Abs(myXmax - myXmin), Math.Abs(myYmax - myYmin) );
+ myRectDownX = Math.Max( myXmin, myXmax );
+ myRectDownY = Math.Max( myYmin, myYmax );
+ }
+
+ private void OnMouseDown( object sender, System.Windows.Forms.MouseEventArgs e )
+ {
+ if ( e.Button == MouseButtons.Left )
+ {
+ myXmin = e.X;
+ myXmax = e.X;
+ myYmin = e.Y;
+ myYmax = e.Y;
+ if ( CurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl )
+ {
+ // start the dinamic zooming....
+ CurrentMode = CurrentAction3d.CurAction3d_DynamicZooming;
+ }
+ else
+ {
+ switch ( CurrentMode )
+ {
+ case CurrentAction3d.CurAction3d_Nothing:
+ if ( CurrentPressedKey == CurrentPressedKey.CurPressedKey_Shift )
+ {
+ MultiDragEvent( myXmax, myYmax, -1 );
+ }
+ else
+ {
+ DragEvent( myXmax, myYmax, -1 );
+ }
+ break;
+ case CurrentAction3d.CurAction3d_DynamicRotation:
+ if ( !DegenerateMode )
+ {
+ View.SetDegenerateModeOn();
+ }
+ View.StartRotation( e.X, e.Y );
+ break;
+ case CurrentAction3d.CurAction3d_WindowZooming:
+ Cursor = Cursors.Hand;
+ break;
+ default:
+ break;
+ }
+ }
+ }
+ else if ( e.Button == MouseButtons.Right )
+ {
+ if ( CurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl )
+ {
+ if ( !DegenerateMode )
+ {
+ View.SetDegenerateModeOn();
+ }
+ View.StartRotation( e.X, e.Y );
+ }
+ else
+ {
+ Popup.Show( this, new System.Drawing.Point( e.X, e.Y ) );
+ }
+ }
+ }
+
+ private void OnMouseUp( object sender, System.Windows.Forms.MouseEventArgs e )
+ {
+ if ( e.Button == MouseButtons.Left )
+ {
+ if ( CurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl )
+ {
+ return;
+ }
+ switch ( CurrentMode )
+ {
+ case CurrentAction3d.CurAction3d_Nothing:
+ if ( e.X == myXmin && e.Y == myYmin )
+ {
+ myXmax = e.X;
+ myYmax = e.Y;
+ if ( CurrentPressedKey == CurrentPressedKey.CurPressedKey_Shift )
+ {
+ View.ShiftSelect();
+ }
+ else
+ {
+ View.Select();
+ }
+ }
+ else
+ {
+ myXmax = e.X;
+ myYmax = e.Y;
+ DrawRectangle( false );
+ if ( CurrentPressedKey == CurrentPressedKey.CurPressedKey_Shift )
+ {
+ MultiDragEvent( myXmax, myYmax, 1 );
+ }
+ else
+ {
+ DragEvent( myXmax, myYmax, 1 );
+ }
+ }
+ break;
+ case CurrentAction3d.CurAction3d_DynamicZooming:
+ CurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ break;
+ case CurrentAction3d.CurAction3d_WindowZooming:
+ myXmax = e.X;
+ myYmax = e.Y;
+ DrawRectangle( false );
+ int ValZWMin = 1;
+ if ( Math.Abs(myXmax - myXmin) > ValZWMin &&
+ Math.Abs(myXmax - myYmax) > ValZWMin )
+ {
+ View.WindowFitAll( myXmin, myYmin, myXmax, myYmax );
+ }
+ Cursor = Cursors.Arrow;
+ RaiseZoomingFinished();
+ CurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ break;
+ case CurrentAction3d.CurAction3d_DynamicPanning:
+ CurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ break;
+ case CurrentAction3d.CurAction3d_GlobalPanning:
+ View.Place( e.X, e.Y, myCurZoom );
+ CurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ break;
+ case CurrentAction3d.CurAction3d_DynamicRotation:
+ CurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ if ( !DegenerateMode )
+ {
+ View.SetDegenerateModeOff();
+ }
+ else
+ {
+ View.SetDegenerateModeOn();
+ }
+ break;
+ default:
+ break;
+ }
+ }
+ else if ( e.Button == MouseButtons.Right )
+ {
+ if ( !DegenerateMode )
+ {
+ View.SetDegenerateModeOff();
+ }
+ else
+ {
+ View.SetDegenerateModeOn();
+ }
+ }
+
+ SelectionChanged();
+ }
+
+ private void OnMouseMove( object sender, System.Windows.Forms.MouseEventArgs e )
+ {
+ if ( e.Button == MouseButtons.Left ) //left button is pressed
+ {
+ if ( CurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl )
+ {
+ View.Zoom(myXmax, myYmax, e.X, e.Y);
+ myXmax = e.X;
+ myYmax = e.Y;
+ }
+ else
+ {
+ switch ( CurrentMode )
+ {
+ case CurrentAction3d.CurAction3d_Nothing:
+ DrawRectangle( false );
+ myXmax = e.X;
+ myYmax = e.Y;
+ DrawRectangle( true );
+ break;
+ case CurrentAction3d.CurAction3d_DynamicZooming:
+ View.Zoom( myXmax, myYmax, e.X, e.Y );
+ myXmax = e.X;
+ myYmax = e.Y;
+ break;
+ case CurrentAction3d.CurAction3d_WindowZooming:
+ DrawRectangle( false );
+ myXmax = e.X;
+ myYmax = e.Y;
+ DrawRectangle( true );//add brush here
+ break;
+ case CurrentAction3d.CurAction3d_DynamicPanning:
+ View.Pan( e.X - myXmax, myYmax - e.Y );
+ myXmax = e.X;
+ myYmax = e.Y;
+ break;
+ case CurrentAction3d.CurAction3d_GlobalPanning:
+ break;
+ case CurrentAction3d.CurAction3d_DynamicRotation:
+ View.Rotation( e.X, e.Y );
+ View.RedrawView();
+ break;
+ default:
+ break;
+ }
+ }
+ }
+ else if ( e.Button == MouseButtons.Middle ) //middle button is pressed
+ {
+ if ( CurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl )
+ {
+ View.Pan( e.X - myXmax, myYmax - e.Y );
+ myXmax = e.X;
+ myYmax = e.Y;
+ }
+ }
+ else if ( e.Button == MouseButtons.Right ) //right button is pressed
+ {
+ if ( CurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl)
+ {
+ View.Rotation( e.X, e.Y );
+ }
+ }
+ else // no buttons are pressed
+ {
+ myXmax = e.X;
+ myYmax = e.Y;
+ View.MoveTo( e.X, e.Y );
+ }
+ }
+
+ private void OnPopup( object sender, System.EventArgs e )
+ {
+ ContextWireframe.Enabled = IsWireframeEnabled;
+ ContextShading.Enabled = IsShadingEnabled;
+ ContextColor.Enabled = IsColorEnabled;
+ ContextMaterial.Enabled = IsMaterialEnabled;
+ ContextDelete.Enabled = IsDeleteEnabled;
+ ContextTransparency.Enabled = IsTransparencyEnabled;
+ ContextBackground.Enabled = true;
+ }
+
+ private void ContextWireframe_Click( object sender, System.EventArgs e )
+ {
+ Wireframe();
+ }
+
+ private void ContextShading_Click( object sender, System.EventArgs e )
+ {
+ Shading();
+ }
+
+ private void ContextColor_Click( object sender, System.EventArgs e )
+ {
+ Color();
+ }
+
+ private void ContextMaterial_Click( object sender, System.EventArgs e )
+ {
+ Material();
+ }
+
+ private void ContextTransparency_Click( object sender, System.EventArgs e )
+ {
+ Transparency();
+ }
+
+ private void ContextDelete_Click( object sender, System.EventArgs e )
+ {
+ Delete();
+ }
+
+ private void ContextBackground_Click( object sender, System.EventArgs e )
+ {
+ Background();
+ }
+ }
+}
--- /dev/null
+using System.Reflection;
+using System.Resources;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using System.Windows;
+
+// 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("IE")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("IE")]
+[assembly: AssemblyCopyright("Copyright © 2013")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+//In order to begin building localizable applications, set
+//<UICulture>CultureYouAreCodingWith</UICulture> in your .csproj file
+//inside a <PropertyGroup>. For example, if you are using US english
+//in your source files, set the <UICulture> to en-US. Then uncomment
+//the NeutralResourceLanguage attribute below. Update the "en-US" in
+//the line below to match the UICulture setting in the project file.
+
+//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
+
+
+[assembly: ThemeInfo(
+ ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
+ //(used if a resource is not found in the page,
+ // or application resource dictionaries)
+ ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
+ //(used if a resource is not found in the page,
+ // app, or any theme specific resource dictionaries)
+)]
+
+
+// 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 Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
--- /dev/null
+//------------------------------------------------------------------------------
+// <auto-generated>
+// This code was generated by a tool.
+// Runtime Version:2.0.50727.5472
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace IE_WPF.Properties {
+ using System;
+
+
+ /// <summary>
+ /// A strongly-typed resource class, for looking up localized strings, etc.
+ /// </summary>
+ // 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() {
+ }
+
+ /// <summary>
+ /// Returns the cached ResourceManager instance used by this class.
+ /// </summary>
+ [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("IE_WPF.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ /// <summary>
+ /// Overrides the current thread's CurrentUICulture property for all
+ /// resource lookups using this strongly typed resource class.
+ /// </summary>
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture {
+ get {
+ return resourceCulture;
+ }
+ set {
+ resourceCulture = value;
+ }
+ }
+ }
+}
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 2.0
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">2.0</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>[base64 mime encoded serialized .NET Framework object]</value>
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+ <comment>This is a comment</comment>
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used for serialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="metadata">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" />
+ <xsd:attribute name="type" type="xsd:string" />
+ <xsd:attribute name="mimetype" type="xsd:string" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="assembly">
+ <xsd:complexType>
+ <xsd:attribute name="alias" type="xsd:string" />
+ <xsd:attribute name="name" type="xsd:string" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>2.0</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+</root>
\ No newline at end of file
--- /dev/null
+//------------------------------------------------------------------------------
+// <auto-generated>
+// This code was generated by a tool.
+// Runtime Version:2.0.50727.5472
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace IE_WPF.Properties {
+
+
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "9.0.0.0")]
+ internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
+
+ private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
+
+ public static Settings Default {
+ get {
+ return defaultInstance;
+ }
+ }
+ }
+}
--- /dev/null
+<?xml version='1.0' encoding='utf-8'?>
+<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)">
+ <Profiles>
+ <Profile Name="(Default)" />
+ </Profiles>
+ <Settings />
+</SettingsFile>
\ No newline at end of file
--- /dev/null
+<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/interactivedesigner/2006" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d">
+
+ <!-- SimpleStyles.XAML defines a set of control styles which are simplified starting points for creating your own controls -->
+
+ <!-- Brushes : These are used to define the color for background, foreground, selection, enabled etc of all controls
+ If you want to change the color of a control you can just chnage the brush; if you want to add a new shape or change arrangement then also edit the template -->
+
+ <!-- NormalBrush is used as the Background for SimpleButton, SimpleRepeatButton -->
+ <LinearGradientBrush x:Key="NormalBrush" EndPoint="0,1" StartPoint="0,0">
+ <GradientStop Color="#EEE" Offset="0.0"/>
+ <GradientStop Color="#CCC" Offset="1.0"/>
+ </LinearGradientBrush>
+ <LinearGradientBrush x:Key="NormalBorderBrush" EndPoint="0,1" StartPoint="0,0">
+ <GradientStop Color="#CCC" Offset="0.0"/>
+ <GradientStop Color="#444" Offset="1.0"/>
+ </LinearGradientBrush>
+
+ <!-- LightBrush is used for content areas such as Menu, Tab Control background -->
+ <LinearGradientBrush x:Key="LightBrush" EndPoint="0,1" StartPoint="0,0">
+ <GradientStop Color="#FFF" Offset="0.0"/>
+ <GradientStop Color="#EEE" Offset="1.0"/>
+ </LinearGradientBrush>
+
+ <!-- MouseOverBrush is used for MouseOver in Button, Radio Button, CheckBox -->
+ <LinearGradientBrush x:Key="MouseOverBrush" EndPoint="0,1" StartPoint="0,0">
+ <GradientStop Color="#FFF" Offset="0.0"/>
+ <GradientStop Color="#AAA" Offset="1.0"/>
+ </LinearGradientBrush>
+
+ <!-- PressedBrush is used for Pressed in Button, Radio Button, CheckBox -->
+ <LinearGradientBrush x:Key="PressedBrush" EndPoint="0,1" StartPoint="0,0">
+ <GradientStop Color="#BBB" Offset="0.0"/>
+ <GradientStop Color="#EEE" Offset="0.1"/>
+ <GradientStop Color="#EEE" Offset="0.9"/>
+ <GradientStop Color="#FFF" Offset="1.0"/>
+ </LinearGradientBrush>
+ <LinearGradientBrush x:Key="PressedBorderBrush" EndPoint="0,1" StartPoint="0,0">
+ <GradientStop Color="#444" Offset="0.0"/>
+ <GradientStop Color="#888" Offset="1.0"/>
+ </LinearGradientBrush>
+
+ <!-- SelectedBackgroundBrush is used for the Selected item in ListBoxItem, ComboBoxItem-->
+ <SolidColorBrush x:Key="SelectedBackgroundBrush" Color="#DDD"/>
+
+ <!-- Disabled Brushes are used for the Disabled look of each control -->
+ <SolidColorBrush x:Key="DisabledForegroundBrush" Color="#888"/>
+ <SolidColorBrush x:Key="DisabledBackgroundBrush" Color="#EEE"/>
+ <SolidColorBrush x:Key="DisabledBorderBrush" Color="#AAA"/>
+
+ <!-- Used for background of ScrollViewer, TreeView, ListBox, Expander, TextBox, Tab Control -->
+ <SolidColorBrush x:Key="WindowBackgroundBrush" Color="#FFF"/>
+
+ <!-- DefaultedBorderBrush is used to show KeyBoardFocus -->
+ <LinearGradientBrush x:Key="DefaultedBorderBrush" EndPoint="0,1" StartPoint="0,0">
+ <GradientStop Color="#777" Offset="0.0"/>
+ <GradientStop Color="#000" Offset="1.0"/>
+ </LinearGradientBrush>
+
+ <SolidColorBrush x:Key="SolidBorderBrush" Color="#888"/>
+ <SolidColorBrush x:Key="LightBorderBrush" Color="#AAA"/>
+ <SolidColorBrush x:Key="LightColorBrush" Color="#DDD"/>
+
+ <!-- Used for Checkmark, Radio button, TreeViewItem, Expander ToggleButton glyphs -->
+ <SolidColorBrush x:Key="GlyphBrush" Color="#444"/>
+
+
+ <!-- Style and Template pairs are used to define each control Part -->
+ <!-- The Style provides default values on the control; the Template gives the elements for each control -->
+
+ <!-- SimpleButtonFocusVisual is used to show keyboard focus around a SimpleButton control -->
+ <Style x:Key="SimpleButtonFocusVisual">
+ <Setter Property="Control.Template">
+ <Setter.Value>
+ <ControlTemplate>
+ <Border>
+ <Rectangle Margin="2" Stroke="#60000000" StrokeThickness="1" StrokeDashArray="1 2"/>
+ </Border>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <Style TargetType="{x:Type Image}" x:Key="toolbarImageStyle">
+ <Style.Triggers>
+ <DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType={x:Type Button}, AncestorLevel=1}, Path=IsEnabled}" Value="False">
+ <Setter Property="Opacity" Value="0.50"></Setter>
+ </DataTrigger>
+ </Style.Triggers>
+ </Style>
+
+ <Style TargetType="MenuItem" x:Key="popupItem">
+ <Setter Property="CommandTarget"
+ Value="{Binding Path=PlacementTarget, RelativeSource={RelativeSource AncestorType=ContextMenu} }"/>
+ </Style>
+
+ <!-- Simple Button - This control sets brushes on each state. Note that these brushes must be listed above since they are static resources -->
+ <Style x:Key="SimpleButton" TargetType="{x:Type Button}" BasedOn="{x:Null}">
+ <Setter Property="FocusVisualStyle" Value="{DynamicResource SimpleButtonFocusVisual}"/>
+ <Setter Property="Background" Value="{DynamicResource NormalBrush}"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource NormalBorderBrush}"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type Button}">
+
+ <!-- We use Grid as a root because it is easy to add more elements to customize the button -->
+ <Grid x:Name="Grid">
+ <Border x:Name="Border" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}"/>
+
+ <!-- Content Presenter is where the text content etc is placed by the control -->
+ <!-- The bindings are useful so that the control can be parameterized without editing the template -->
+ <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" RecognizesAccessKey="True"/>
+ </Grid>
+
+ <!--Each state sets a brush on the Border in the template -->
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsKeyboardFocused" Value="true">
+ <Setter Property="BorderBrush" Value="{DynamicResource DefaultedBorderBrush}" TargetName="Border"/>
+ </Trigger>
+ <Trigger Property="IsMouseOver" Value="true">
+ <Setter Property="Background" Value="{DynamicResource MouseOverBrush}" TargetName="Border"/>
+ </Trigger>
+ <Trigger Property="IsPressed" Value="true">
+ <Setter Property="Background" Value="{DynamicResource PressedBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource PressedBorderBrush}" TargetName="Border"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="true"/>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Background" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource DisabledBorderBrush}" TargetName="Border"/>
+ <Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <Style x:Key="RadioButtonFocusVisual">
+ <Setter Property="Control.Template">
+ <Setter.Value>
+ <ControlTemplate>
+ <Border>
+ <Rectangle Margin="15,0,0,0" Stroke="#60000000" StrokeThickness="1" StrokeDashArray="1 2"/>
+ </Border>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <Style x:Key="CheckBoxFocusVisual">
+ <Setter Property="Control.Template">
+ <Setter.Value>
+ <ControlTemplate>
+ <Border>
+ <Rectangle Margin="15,0,0,0" Stroke="#60000000" StrokeThickness="1" StrokeDashArray="1 2"/>
+ </Border>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple CheckBox -->
+ <Style x:Key="SimpleCheckBox" TargetType="{x:Type CheckBox}">
+ <Setter Property="SnapsToDevicePixels" Value="true"/>
+ <Setter Property="FocusVisualStyle" Value="{DynamicResource CheckBoxFocusVisual}"/>
+ <Setter Property="Background" Value="{DynamicResource NormalBrush}"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource NormalBorderBrush}"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type CheckBox}">
+
+ <!-- BulletDecorator is used to provide baseline alignment between the checkmark and the Content -->
+ <BulletDecorator Background="Transparent">
+ <BulletDecorator.Bullet>
+ <Grid Width="13" Height="13">
+ <Border x:Name="Border" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"/>
+ <Path x:Name="CheckMark" Stroke="{DynamicResource GlyphBrush}" StrokeThickness="2" SnapsToDevicePixels="False" Data="M 0 0 L 13 13 M 0 13 L 13 0"/>
+ </Grid>
+ </BulletDecorator.Bullet>
+ <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" RecognizesAccessKey="True"/>
+ </BulletDecorator>
+
+ <!-- This uses Visibility to hide and show the CheckMark on IsChecked -->
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsChecked" Value="false">
+ <Setter Property="Visibility" Value="Collapsed" TargetName="CheckMark"/>
+ </Trigger>
+ <Trigger Property="IsMouseOver" Value="true">
+ <Setter Property="Background" Value="{DynamicResource MouseOverBrush}" TargetName="Border"/>
+ </Trigger>
+ <Trigger Property="IsPressed" Value="true">
+ <Setter Property="Background" Value="{DynamicResource PressedBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource PressedBorderBrush}" TargetName="Border"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Background" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource DisabledBorderBrush}" TargetName="Border"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple Radio Button -->
+ <Style x:Key="SimpleRadioButton" TargetType="{x:Type RadioButton}">
+ <Setter Property="SnapsToDevicePixels" Value="true"/>
+ <Setter Property="FocusVisualStyle" Value="{DynamicResource RadioButtonFocusVisual}"/>
+ <Setter Property="Background" Value="{DynamicResource NormalBrush}"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource NormalBorderBrush}"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type RadioButton}">
+
+ <!-- BulletDecorator is used to provide baseline alignment between the checkmark and the Content -->
+ <BulletDecorator Background="Transparent">
+ <BulletDecorator.Bullet>
+ <Grid Width="13" Height="13">
+ <Ellipse x:Name="Ellipse_Border" Fill="{TemplateBinding Background}" Stroke="{TemplateBinding BorderBrush}" StrokeThickness="1"/>
+ <Ellipse Margin="4" x:Name="CheckMark" Fill="{DynamicResource GlyphBrush}"/>
+ </Grid>
+ </BulletDecorator.Bullet>
+ <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" RecognizesAccessKey="True"/>
+ </BulletDecorator>
+
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsChecked" Value="false">
+ <Setter Property="Visibility" Value="Collapsed" TargetName="CheckMark"/>
+ </Trigger>
+ <Trigger Property="IsMouseOver" Value="true">
+ <Setter Property="Fill" Value="{DynamicResource MouseOverBrush}" TargetName="Ellipse_Border"/>
+ </Trigger>
+ <Trigger Property="IsPressed" Value="true">
+ <Setter Property="Fill" Value="{DynamicResource PressedBrush}" TargetName="Ellipse_Border"/>
+ <Setter Property="Stroke" Value="{DynamicResource GlyphBrush}" TargetName="Ellipse_Border"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Fill" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Ellipse_Border"/>
+ <Setter Property="Stroke" Value="#40000000" TargetName="Ellipse_Border"/>
+ <Setter Property="Foreground" Value="#80000000"/>
+ </Trigger>
+
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple Repeat Button - This is used by Simple ScrollBar for the up and down buttons -->
+ <Style x:Key="SimpleRepeatButton" d:IsControlPart="True" TargetType="{x:Type RepeatButton}" BasedOn="{x:Null}">
+ <Setter Property="Background" Value="{DynamicResource NormalBrush}"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource NormalBorderBrush}"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type RepeatButton}">
+ <Grid>
+ <Border x:Name="Border" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"/>
+ <ContentPresenter HorizontalAlignment="Center" x:Name="ContentPresenter" VerticalAlignment="Center" Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" ContentTemplateSelector="{TemplateBinding ContentTemplateSelector}"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsKeyboardFocused" Value="true">
+ <Setter Property="BorderBrush" Value="{DynamicResource DefaultedBorderBrush}" TargetName="Border"/>
+ </Trigger>
+ <Trigger Property="IsMouseOver" Value="true">
+ <Setter Property="Background" Value="{DynamicResource MouseOverBrush}" TargetName="Border"/>
+ </Trigger>
+ <Trigger Property="IsPressed" Value="true">
+ <Setter Property="Background" Value="{DynamicResource PressedBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource PressedBorderBrush}" TargetName="Border"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Background" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource DisabledBorderBrush}" TargetName="Border"/>
+ <Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple Thumb - The Thumb is the draggable part of the Scrollbar -->
+ <Style x:Key="SimpleThumbStyle" d:IsControlPart="True" TargetType="{x:Type Thumb}" BasedOn="{x:Null}">
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type Thumb}">
+ <Grid Margin="0,0,0,0" x:Name="Grid">
+ <Rectangle HorizontalAlignment="Stretch" x:Name="Rectangle" VerticalAlignment="Stretch" Width="Auto" Height="Auto" RadiusX="2" RadiusY="2" Fill="{DynamicResource NormalBrush}" Stroke="{DynamicResource NormalBorderBrush}"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsFocused" Value="True"/>
+ <Trigger Property="IsMouseOver" Value="True"/>
+ <Trigger Property="IsEnabled" Value="False"/>
+ <Trigger Property="IsDragging" Value="True"/>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple ScrollRepeatButton Style - This RepeatButton is used above and below the Thumb in the Scrollbar. They are set to transparent si that they do not show over the scrollbar -->
+ <Style x:Key="SimpleScrollRepeatButtonStyle" d:IsControlPart="True" TargetType="{x:Type RepeatButton}">
+ <Setter Property="Background" Value="Transparent"/>
+ <Setter Property="BorderBrush" Value="Transparent"/>
+ <Setter Property="IsTabStop" Value="false"/>
+ <Setter Property="Focusable" Value="false"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type RepeatButton}">
+ <Grid>
+ <Rectangle Fill="{TemplateBinding Background}" Stroke="{TemplateBinding BorderBrush}" StrokeThickness="{TemplateBinding BorderThickness}"/>
+ </Grid>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple ScrollBar This makes use of SimpleThumb, SimpleRepeatButton and SimpleScrollRepeatButton -->
+
+ <Style x:Key="SimpleScrollBar" TargetType="{x:Type ScrollBar}">
+ <Setter Property="Stylus.IsFlicksEnabled" Value="false"/>
+ <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type ScrollBar}">
+ <Grid x:Name="GridRoot" Width="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}" Background="{TemplateBinding Background}">
+ <Grid.RowDefinitions>
+ <RowDefinition MaxHeight="18"/>
+ <RowDefinition Height="0.00001*"/>
+ <RowDefinition MaxHeight="18"/>
+ </Grid.RowDefinitions>
+
+ <RepeatButton x:Name="DecreaseRepeat" Style="{DynamicResource SimpleRepeatButton}" Command="ScrollBar.LineUpCommand">
+ <Grid>
+ <Path x:Name="DecreaseArrow" Stroke="{TemplateBinding Foreground}" StrokeThickness="1" Data="M 0 4 L 8 4 L 4 0 Z"/>
+ </Grid>
+ </RepeatButton>
+
+ <!-- Track is a special layout container which sizes the thumb and the repeat button which do jump scrolling either side of it -->
+ <Track Grid.Row="1" x:Name="PART_Track" Orientation="Vertical" IsDirectionReversed="true">
+ <Track.Thumb>
+ <Thumb Style="{DynamicResource SimpleThumbStyle}"/>
+ </Track.Thumb>
+ <Track.IncreaseRepeatButton>
+ <RepeatButton x:Name="PageUp" Style="{DynamicResource SimpleScrollRepeatButtonStyle}" Command="ScrollBar.PageDownCommand"/>
+ </Track.IncreaseRepeatButton>
+ <Track.DecreaseRepeatButton>
+ <RepeatButton x:Name="PageDown" Style="{DynamicResource SimpleScrollRepeatButtonStyle}" Command="ScrollBar.PageUpCommand"/>
+ </Track.DecreaseRepeatButton>
+ </Track>
+
+ <RepeatButton Grid.Row="2" x:Name="IncreaseRepeat" Style="{DynamicResource SimpleRepeatButton}" Command="ScrollBar.LineDownCommand">
+ <Grid>
+ <Path x:Name="IncreaseArrow" Stroke="{TemplateBinding Foreground}" StrokeThickness="1" Data="M 0 0 L 4 4 L 8 0 Z"/>
+ </Grid>
+ </RepeatButton>
+ </Grid>
+
+ <!-- This uses a single template for ScrollBar and rotate it to be Horizontal
+ It also changes the commands so that the it does Left and Right instead of Up and Down Commands -->
+ <ControlTemplate.Triggers>
+ <Trigger Property="Orientation" Value="Horizontal">
+
+ <!-- Rotate the ScrollBar from Vertical to Horizontal -->
+ <Setter Property="LayoutTransform" TargetName="GridRoot">
+ <Setter.Value>
+ <RotateTransform Angle="-90"/>
+ </Setter.Value>
+ </Setter>
+
+ <!-- Track is bound to Orientation internally, so we need to rotate it back to Vertical -->
+ <Setter TargetName="PART_Track" Property="Orientation" Value="Vertical"/>
+
+ <!-- Change the commands to do Horizontal commands -->
+ <Setter Property="Command" Value="ScrollBar.LineLeftCommand" TargetName="DecreaseRepeat"/>
+ <Setter Property="Command" Value="ScrollBar.LineRightCommand" TargetName="IncreaseRepeat"/>
+ <Setter Property="Command" Value="ScrollBar.PageLeftCommand" TargetName="PageDown"/>
+ <Setter Property="Command" Value="ScrollBar.PageRightCommand" TargetName="PageUp"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple ScrollViewer
+ ScrollViewer is a Grid control which has a ContentPresenter and a Horizontal and Vertical ScrollBar
+ It is used by ListBox, MenuItem, ComboBox, and TreeView -->
+ <Style x:Key="SimpleScrollViewer" TargetType="{x:Type ScrollViewer}" BasedOn="{x:Null}">
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type ScrollViewer}">
+ <Grid Background="{TemplateBinding Background}">
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="*"/>
+ <ColumnDefinition Width="Auto"/>
+ </Grid.ColumnDefinitions>
+ <Grid.RowDefinitions>
+ <RowDefinition Height="*"/>
+ <RowDefinition Height="Auto"/>
+ </Grid.RowDefinitions>
+ <ScrollContentPresenter Grid.Column="0" Grid.Row="0" Margin="{TemplateBinding Padding}" Content="{TemplateBinding Content}" ContentTemplate="{TemplateBinding ContentTemplate}" CanContentScroll="{TemplateBinding CanContentScroll}"/>
+
+ <!-- The visibility of the ScrollBars is controlled by the implementation fo the control -->
+ <ScrollBar Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}" Grid.Column="0" Grid.Row="1" x:Name="PART_HorizontalScrollBar" Style="{DynamicResource SimpleScrollBar}" Orientation="Horizontal" Value="{Binding Path=HorizontalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" ViewportSize="{TemplateBinding ViewportWidth}" Minimum="0" Maximum="{TemplateBinding ScrollableWidth}" />
+ <ScrollBar Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}" Grid.Column="1" Grid.Row="0" x:Name="PART_VerticalScrollBar" Style="{DynamicResource SimpleScrollBar}" Orientation="Vertical" Value="{Binding Path=VerticalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" ViewportSize="{TemplateBinding ViewportHeight}" Minimum="0" Maximum="{TemplateBinding ScrollableHeight}" />
+ </Grid>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple ListBox - This uses SimpleScrollViewer to allow items to be scrolled and SimpleListBoxItem to define the look of each item -->
+ <Style x:Key="SimpleListBox" TargetType="{x:Type ListBox}">
+ <Setter Property="SnapsToDevicePixels" Value="true"/>
+ <Setter Property="Background" Value="{DynamicResource WindowBackgroundBrush}"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource SolidBorderBrush}"/>
+ <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
+ <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
+ <Setter Property="ScrollViewer.CanContentScroll" Value="True"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type ListBox}">
+ <Grid>
+ <Border x:Name="Border" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"/>
+ <ScrollViewer Margin="1" Style="{DynamicResource SimpleScrollViewer}" Focusable="false" Background="{TemplateBinding Background}">
+
+ <!-- The StackPanel is used to display the children by setting IsItemsHost to be Trus -->
+ <StackPanel Margin="2" IsItemsHost="true"/>
+
+ </ScrollViewer>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Background" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource DisabledBorderBrush}" TargetName="Border"/>
+ </Trigger>
+ <Trigger Property="IsGrouping" Value="true">
+ <Setter Property="ScrollViewer.CanContentScroll" Value="false"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple ListBoxItem - This is used for each Item in a ListBox. The item's content is placed in the ContentPresenter -->
+
+ <Style x:Key="SimpleListBoxItem" d:IsControlPart="True" TargetType="{x:Type ListBoxItem}">
+ <Setter Property="SnapsToDevicePixels" Value="true"/>
+ <Setter Property="OverridesDefaultStyle" Value="true"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type ListBoxItem}">
+ <Grid SnapsToDevicePixels="true">
+ <Border x:Name="Border" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"/>
+ <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+
+ <!-- Change IsSelected SelectedBackgroundBrush to set the selection color for the items -->
+ <Trigger Property="IsSelected" Value="true">
+ <Setter Property="Background" Value="{DynamicResource SelectedBackgroundBrush}" TargetName="Border"/>
+ </Trigger>
+
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple Expander ToggleButton - This Button is used by the Expander control. When it is toggled it switches visibility on the Up_Arrow and Down_Arrow -->
+ <ControlTemplate x:Key="ExpanderToggleButton" TargetType="{x:Type ToggleButton}">
+ <Grid>
+ <Rectangle Margin="0,0,0,0" x:Name="Rectangle" Fill="Transparent" Stroke="{DynamicResource NormalBorderBrush}"/>
+ <Path HorizontalAlignment="Center" x:Name="Up_Arrow" VerticalAlignment="Center" Fill="{DynamicResource GlyphBrush}" Data="M 0 0 L 4 4 L 8 0 Z"/>
+ <Path Visibility="Collapsed" HorizontalAlignment="Center" x:Name="Down_Arrow" VerticalAlignment="Center" Fill="{DynamicResource GlyphBrush}" Data="M 0 4 L 4 0 L 8 4 Z"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsMouseOver" Value="true">
+ <Setter Property="Fill" Value="{DynamicResource MouseOverBrush}" TargetName="Rectangle"/>
+ </Trigger>
+ <Trigger Property="IsPressed" Value="true">
+ <Setter Property="Fill" Value="{DynamicResource PressedBrush}" TargetName="Rectangle"/>
+ </Trigger>
+ <Trigger Property="IsChecked" Value="true">
+ <Setter Property="Visibility" Value="Visible" TargetName="Down_Arrow"/>
+ <Setter Property="Visibility" Value="Collapsed" TargetName="Up_Arrow"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="False">
+ <Setter Property="Fill" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Rectangle"/>
+ <Setter Property="Stroke" Value="{DynamicResource DisabledBorderBrush}" TargetName="Rectangle"/>
+ <Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}"/>
+ <Setter Property="Fill" Value="{DynamicResource DisabledForegroundBrush}" TargetName="Up_Arrow"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+
+ <!-- Simple Expander
+ This uses the Simpler ExpanderToggleButton. It sets Visibility on the ContentPresenter to expand
+ Limitations : The Simple Expander only expands down -->
+ <Style x:Key="SimpleExpander" TargetType="{x:Type Expander}">
+ <Setter Property="Background" Value="{DynamicResource LightBrush}"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource NormalBorderBrush}"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type Expander}">
+ <Grid>
+ <Grid.RowDefinitions>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition Height="*" x:Name="ContentRow"/>
+ </Grid.RowDefinitions>
+ <Border Grid.Row="0" x:Name="Border" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="2,2,0,0">
+ <Grid>
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="20"/>
+ <ColumnDefinition Width="*"/>
+ </Grid.ColumnDefinitions>
+ <ToggleButton Template="{DynamicResource ExpanderToggleButton}" Background="{DynamicResource NormalBrush}" IsChecked="{Binding Path=IsExpanded, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" OverridesDefaultStyle="True"/>
+ <ContentPresenter Grid.Column="1" Margin="4" RecognizesAccessKey="True" ContentSource="Header"/>
+ </Grid>
+ </Border>
+ <Border Visibility="Collapsed" Grid.Row="1" x:Name="ExpandSite" Background="{DynamicResource WindowBackgroundBrush}" BorderBrush="{DynamicResource SolidBorderBrush}" BorderThickness="1,0,1,1" CornerRadius="0,0,2,2">
+ <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" Focusable="false"/>
+ </Border>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsExpanded" Value="True">
+ <Setter Property="Visibility" Value="Visible" TargetName="ExpandSite"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="False">
+ <Setter Property="Background" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource DisabledBorderBrush}" TargetName="Border"/>
+ <Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple ComboBox Toggle Button - This is used in ComboBox to expand and collapse the ComboBox Popup-->
+ <ControlTemplate x:Key="ComboBoxToggleButton" TargetType="{x:Type ToggleButton}">
+ <Grid>
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition/>
+ <ColumnDefinition Width="20"/>
+ </Grid.ColumnDefinitions>
+ <Rectangle Grid.ColumnSpan="2" HorizontalAlignment="Stretch" x:Name="Rectangle" VerticalAlignment="Stretch" Width="Auto" Height="Auto" RadiusX="5" RadiusY="5" Fill="{DynamicResource NormalBrush}" Stroke="{DynamicResource NormalBorderBrush}"/>
+ <Rectangle Grid.Column="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Width="Auto" Height="Auto" RadiusX="5" RadiusY="5" Fill="{DynamicResource WindowBackgroundBrush}" Stroke="{DynamicResource NormalBorderBrush}"/>
+ <Path Grid.Column="1" HorizontalAlignment="Center" x:Name="Arrow" VerticalAlignment="Center" Fill="{DynamicResource GlyphBrush}" Data="M 0 0 L 4 4 L 8 0 Z"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsMouseOver" Value="true">
+ <Setter Property="Fill" Value="{DynamicResource MouseOverBrush}" TargetName="Rectangle"/>
+ </Trigger>
+ <Trigger Property="IsChecked" Value="true">
+ <Setter Property="Fill" Value="{DynamicResource PressedBrush}" TargetName="Rectangle"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="False">
+ <Setter Property="Fill" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Rectangle"/>
+ <Setter Property="Stroke" Value="{DynamicResource DisabledBorderBrush}" TargetName="Rectangle"/>
+ <Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}"/>
+ <Setter Property="Fill" Value="{DynamicResource DisabledForegroundBrush}" TargetName="Arrow"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+
+ <!-- This is the area which contains the selected item in the ComboBox -->
+
+ <ControlTemplate x:Key="ComboBoxTextBox" TargetType="{x:Type TextBox}">
+ <!-- This must be named as PART_ContentHost -->
+ <Border x:Name="PART_ContentHost" Focusable="False" Background="{TemplateBinding Background}"/>
+ </ControlTemplate>
+
+ <!-- Simple ComboBox
+ This uses the ComboBoxToggleButton to expand and collapse a Popup control
+ SimpleScrollViewer to allow items to be scrolled and SimpleComboBoxItem to define the look of each item
+ The Popup shows a list of items in a StackPanel-->
+
+ <Style x:Key="SimpleComboBox" TargetType="{x:Type ComboBox}">
+ <Setter Property="SnapsToDevicePixels" Value="true"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type ComboBox}">
+ <Grid>
+ <!-- The ToggleButton is databound to the ComboBox itself to toggle IsDropDownOpen -->
+ <ToggleButton Grid.Column="2" Template="{DynamicResource ComboBoxToggleButton}" x:Name="ToggleButton" Focusable="false" IsChecked="{Binding Path=IsDropDownOpen, Mode=TwoWay, RelativeSource={RelativeSource TemplatedParent}}" ClickMode="Press"/>
+ <ContentPresenter HorizontalAlignment="Left" Margin="3,3,23,3" x:Name="ContentSite" VerticalAlignment="Center" Content="{TemplateBinding SelectionBoxItem}" ContentTemplate="{TemplateBinding SelectionBoxItemTemplate}" ContentTemplateSelector="{TemplateBinding ItemTemplateSelector}" IsHitTestVisible="False"/>
+
+ <!-- The TextBox must be named PART_EditableTextBox or ComboBox will not recognize it -->
+ <TextBox Visibility="Hidden" Template="{DynamicResource ComboBoxTextBox}" HorizontalAlignment="Left" Margin="3,3,23,3" x:Name="PART_EditableTextBox" Style="{x:Null}" VerticalAlignment="Center" Focusable="True" Background="Transparent" IsReadOnly="{TemplateBinding IsReadOnly}"/>
+
+ <!-- The Popup shows the list of items in the ComboBox. IsOpen is databound to IsDropDownOpen which is toggled via the ComboBoxToggleButton -->
+ <Popup IsOpen="{TemplateBinding IsDropDownOpen}" Placement="Bottom" x:Name="Popup" Focusable="False" AllowsTransparency="True" PopupAnimation="Slide">
+ <Grid MaxHeight="{TemplateBinding MaxDropDownHeight}" MinWidth="{TemplateBinding ActualWidth}" x:Name="DropDown" SnapsToDevicePixels="True">
+ <Border x:Name="DropDownBorder" Background="{DynamicResource WindowBackgroundBrush}" BorderBrush="{DynamicResource SolidBorderBrush}" BorderThickness="1"/>
+ <ScrollViewer Margin="4,6,4,6" Style="{DynamicResource SimpleScrollViewer}" SnapsToDevicePixels="True" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" CanContentScroll="True">
+
+ <!-- The StackPanel is used to display the children by setting IsItemsHost to be True -->
+ <StackPanel IsItemsHost="True" KeyboardNavigation.DirectionalNavigation="Contained"/>
+
+ </ScrollViewer>
+ </Grid>
+ </Popup>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <!-- This forces the DropDown to have a minimum size if it is empty -->
+ <Trigger Property="HasItems" Value="false">
+ <Setter Property="MinHeight" Value="95" TargetName="DropDownBorder"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}"/>
+ </Trigger>
+ <Trigger Property="IsGrouping" Value="true">
+ <Setter Property="ScrollViewer.CanContentScroll" Value="false"/>
+ </Trigger>
+ <Trigger Property="AllowsTransparency" SourceName="Popup" Value="true">
+ <Setter Property="CornerRadius" Value="4" TargetName="DropDownBorder"/>
+ <Setter Property="Margin" Value="0,2,0,0" TargetName="DropDownBorder"/>
+ </Trigger>
+ <Trigger Property="IsEditable" Value="true">
+ <Setter Property="IsTabStop" Value="false"/>
+ <Setter Property="Visibility" Value="Visible" TargetName="PART_EditableTextBox"/>
+ <Setter Property="Visibility" Value="Hidden" TargetName="ContentSite"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple ComboBoxItem - This is used for each item inside of the ComboBox. You can change the selected color of each item below-->
+ <Style x:Key="SimpleComboBoxItem" d:IsControlPart="True" TargetType="{x:Type ComboBoxItem}">
+ <Setter Property="SnapsToDevicePixels" Value="true"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type ComboBoxItem}">
+ <Grid SnapsToDevicePixels="true">
+ <Border x:Name="Border" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"/>
+ <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+
+ <!-- Change IsHighlighted SelectedBackgroundBrush to set the selection color for the items -->
+ <Trigger Property="IsHighlighted" Value="true">
+ <Setter Property="Background" Value="{DynamicResource SelectedBackgroundBrush}" TargetName="Border"/>
+ </Trigger>
+
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple SimpleProgressBar
+ The template uses two Border controls to show the Track and Progress
+ Limitations : It only supports a horizontal orientated ProgressBar -->
+ <Style x:Key="SimpleProgressBar" TargetType="{x:Type ProgressBar}">
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type ProgressBar}">
+ <Grid>
+
+ <!-- This Border is the track. It must be named PART_Track -->
+ <Border x:Name="PART_Track" Background="{DynamicResource PressedBrush}" BorderBrush="{DynamicResource SolidBorderBrush}" BorderThickness="1" CornerRadius="2"/>
+
+ <!-- This Border shows progress. It must be named PART_Indicator for the control to function -->
+ <Border HorizontalAlignment="Left" x:Name="PART_Indicator" Background="{DynamicResource MouseOverBrush}" BorderBrush="{DynamicResource NormalBorderBrush}" BorderThickness="1" CornerRadius="2"/>
+
+ </Grid>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple TextBox -->
+ <Style x:Key="SimpleTextBox" TargetType="{x:Type TextBox}">
+ <Setter Property="KeyboardNavigation.TabNavigation" Value="None"/>
+ <Setter Property="FocusVisualStyle" Value="{x:Null}"/>
+ <Setter Property="AllowDrop" Value="true"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type TextBox}">
+ <Grid>
+ <Border x:Name="Border" Background="{DynamicResource WindowBackgroundBrush}" BorderBrush="{DynamicResource SolidBorderBrush}" BorderThickness="1" Padding="2" CornerRadius="2">
+
+ <!-- The implementation places the Content into the ScrollViewer. It must be named PART_ContentHost for the control to function -->
+ <ScrollViewer Margin="0" x:Name="PART_ContentHost" Style="{DynamicResource SimpleScrollViewer}" Background="{TemplateBinding Background}"/>
+
+ </Border>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsEnabled" Value="False">
+ <Setter Property="Background" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Border"/>
+ <Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple Label - This template is just a ContentPresenter that shows the content of the Label -->
+ <Style x:Key="SimpleLabel" TargetType="{x:Type Label}">
+ <Setter Property="HorizontalContentAlignment" Value="Left"/>
+ <Setter Property="VerticalContentAlignment" Value="Top"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type Label}">
+ <Grid>
+ <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}" RecognizesAccessKey="True"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsEnabled" Value="false"/>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple Menu - This template uses a StackPanel to layout MenuItems -->
+ <Style x:Key="SimpleMenu" TargetType="{x:Type Menu}">
+ <Setter Property="Background" Value="{DynamicResource LightBrush}"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource NormalBorderBrush}"/>
+ <Setter Property="SnapsToDevicePixels" Value="True"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type Menu}">
+ <Grid>
+ <Border Margin="1" x:Name="Border" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}"/>
+ <StackPanel Background="{TemplateBinding Background}" IsItemsHost="True" ClipToBounds="True" Orientation="Horizontal"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsEnabled" Value="False">
+ <Setter Property="Background" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource DisabledBorderBrush}" TargetName="Border"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- This BitmapEffect is used by the Simple MenuItem -->
+ <DropShadowBitmapEffect x:Key="PopupDropShadow" ShadowDepth="1.5" Softness="0.15"/>
+
+ <!-- Simple MenuItem - The template uses triggers to provide four different arrangements of menu item which are set via the Role property -->
+ <Style x:Key="SimpleMenuItem" TargetType="{x:Type MenuItem}">
+ <Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
+ <Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
+ <Setter Property="Background" Value="Transparent"/>
+ <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.MenuTextBrushKey}}"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type MenuItem}">
+ <Border x:Name="Border" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}">
+ <Grid>
+
+ <!-- The Grid is used to hold together columns for an Icon, Content, Glyph checkmark and Arrow to show the next level
+ Size sharing is used in Grid so that the Icon, Content, Arrow for each MenuItem align together -->
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition MinWidth="17" Width="Auto" SharedSizeGroup="MenuItemIconColumnGroup"/>
+ <ColumnDefinition Width="*"/>
+ <ColumnDefinition Width="Auto" SharedSizeGroup="MenuItemIGTColumnGroup"/>
+ <ColumnDefinition Width="14"/>
+ </Grid.ColumnDefinitions>
+
+ <!-- ContentPresenter to show an Icon if needed -->
+ <ContentPresenter Margin="4,0,6,0" x:Name="Icon" VerticalAlignment="Center" ContentSource="Icon"/>
+
+ <!-- Glyph is a checkmark if needed for a checkable menu -->
+ <Grid Visibility="Hidden" Margin="4,0,6,0" x:Name="GlyphPanel" VerticalAlignment="Center">
+ <Path x:Name="GlyphPanelpath" VerticalAlignment="Center" Fill="{TemplateBinding Foreground}" Data="M0,2 L0,4.8 L2.5,7.4 L7.1,2.8 L7.1,0 L2.5,4.6 z" FlowDirection="LeftToRight"/>
+ </Grid>
+
+ <!-- Content for the menu text etc -->
+ <ContentPresenter Grid.Column="1" Margin="{TemplateBinding Padding}" x:Name="HeaderHost" RecognizesAccessKey="True" ContentSource="Header"/>
+
+ <!-- Arrow drawn path which points to the next level of the menu -->
+ <Grid Grid.Column="3" Margin="4,0,6,0" x:Name="ArrowPanel" VerticalAlignment="Center">
+ <Path x:Name="ArrowPanelPath" VerticalAlignment="Center" Fill="{TemplateBinding Foreground}" Data="M0,0 L0,8 L4,4 z"/>
+ </Grid>
+
+ <!-- The Popup is the body of the menu which expands down or across depending on the level of the item -->
+ <Popup IsOpen="{Binding Path=IsSubmenuOpen, RelativeSource={RelativeSource TemplatedParent}}" Placement="Right" x:Name="SubMenuPopup" Focusable="false" AllowsTransparency="true" PopupAnimation="{DynamicResource {x:Static SystemParameters.MenuPopupAnimationKey}}" VerticalOffset="-3">
+ <Grid x:Name="SubMenu">
+ <Border x:Name="SubMenuBorder" Background="{DynamicResource WindowBackgroundBrush}" BorderBrush="{DynamicResource SolidBorderBrush}" BorderThickness="1"/>
+
+ <!-- StackPanel holds children of the menu. This is set bu IsItemsHost=True -->
+ <StackPanel IsItemsHost="True" KeyboardNavigation.DirectionalNavigation="Cycle"/>
+ </Grid>
+ </Popup>
+
+ </Grid>
+ </Border>
+
+ <!-- These triggers re-configure the four arrangements of MenuItem to show different levels of menu via Role -->
+ <ControlTemplate.Triggers>
+
+ <!-- Role = TopLevelHeader : this is the root menu item in a menu; the Popup expands down -->
+ <Trigger Property="Role" Value="TopLevelHeader">
+ <Setter Property="Margin" Value="0,1,0,1"/>
+ <Setter Property="Padding" Value="6,3,6,3"/>
+ <Setter Property="Grid.IsSharedSizeScope" Value="true"/>
+ <Setter Property="Placement" Value="Bottom" TargetName="SubMenuPopup"/>
+ <Setter Property="Visibility" Value="Collapsed" TargetName="ArrowPanel"/>
+ </Trigger>
+
+ <!-- Role = TopLevelItem : this is a child menu item from the top level without any child items-->
+ <Trigger Property="Role" Value="TopLevelItem">
+ <Setter Property="Margin" Value="0,1,0,1"/>
+ <Setter Property="Padding" Value="6,3,6,3"/>
+ <Setter Property="Visibility" Value="Collapsed" TargetName="ArrowPanel"/>
+ </Trigger>
+
+ <!-- Role = SubMenuHeader : this is a child menu item which does not have children -->
+ <Trigger Property="Role" Value="SubmenuHeader">
+ <Setter Property="DockPanel.Dock" Value="Top"/>
+ <Setter Property="Padding" Value="0,2,0,2"/>
+ <Setter Property="Grid.IsSharedSizeScope" Value="true"/>
+ </Trigger>
+
+ <!-- Role = SubMenuItem : this is a child menu item which has children-->
+ <Trigger Property="Role" Value="SubmenuItem">
+ <Setter Property="DockPanel.Dock" Value="Top"/>
+ <Setter Property="Padding" Value="0,2,0,2"/>
+ <Setter Property="Visibility" Value="Collapsed" TargetName="ArrowPanel"/>
+ </Trigger>
+ <Trigger Property="IsSuspendingPopupAnimation" Value="true">
+ <Setter Property="PopupAnimation" Value="None" TargetName="SubMenuPopup"/>
+ </Trigger>
+
+ <!-- If no Icon is present the we collapse the Icon Content -->
+ <Trigger Property="Icon" Value="{x:Null}">
+ <Setter Property="Visibility" Value="Collapsed" TargetName="Icon"/>
+ </Trigger>
+
+ <!-- The GlyphPanel contains the CheckMark -->
+ <Trigger Property="IsChecked" Value="true">
+ <Setter Property="Visibility" Value="Visible" TargetName="GlyphPanel"/>
+ <Setter Property="Visibility" Value="Collapsed" TargetName="Icon"/>
+ </Trigger>
+
+ <Trigger Property="AllowsTransparency" SourceName="SubMenuPopup" Value="true">
+ <Setter Property="Margin" Value="0,0,3,3" TargetName="SubMenu"/>
+ <Setter Property="SnapsToDevicePixels" Value="true" TargetName="SubMenu"/>
+ <Setter Property="BitmapEffect" Value="{DynamicResource PopupDropShadow}" TargetName="SubMenuBorder"/>
+ </Trigger>
+
+ <!-- Using the system colors for the Menu Highlight and IsEnabled-->
+ <Trigger Property="IsHighlighted" Value="true">
+ <Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" TargetName="Border"/>
+ <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple Separator - This template is used for a Separator in a menu -->
+ <Style x:Key="SimpleSeparator" TargetType="{x:Type Separator}">
+ <Setter Property="Height" Value="1"/>
+ <Setter Property="Margin" Value="0,2,0,2"/>
+ <Setter Property="Focusable" Value="false"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type Separator}">
+ <Border BorderBrush="{DynamicResource SolidBorderBrush}" BorderThickness="1"/>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!-- Simple TabControl
+ This template uses Simple TabItem for each Tab. The TabItems are placed in the TabPanel
+ Limitations : The Simple TabControl only allow the Tabs to be shown at the top of the Tab control. You can re-position the TabPanel to change this-->
+
+ <Style x:Key="SimpleTabControl" TargetType="{x:Type TabControl}">
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type TabControl}">
+ <Grid KeyboardNavigation.TabNavigation="Local">
+ <Grid.RowDefinitions>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition Height="*"/>
+ </Grid.RowDefinitions>
+
+ <!-- TabPanel is a layout container which allows the TabItems to wrap and re-order when selected
+ The implementation knows to use this control because it is marked IsItemsHost = True -->
+ <TabPanel Grid.Row="0" Margin="0,0,4,-1" x:Name="HeaderPanel" Background="Transparent" IsItemsHost="True" Panel.ZIndex="1" KeyboardNavigation.TabIndex="1"/>
+
+ <Border Grid.Row="1" x:Name="Border" Background="{DynamicResource WindowBackgroundBrush}" BorderBrush="{DynamicResource SolidBorderBrush}" BorderThickness="1" CornerRadius="2" KeyboardNavigation.DirectionalNavigation="Contained" KeyboardNavigation.TabNavigation="Local" KeyboardNavigation.TabIndex="2">
+
+ <!-- The implementation switches the content. This control must be named PART_SelectedContentHost -->
+ <ContentPresenter Margin="4" x:Name="PART_SelectedContentHost" ContentSource="SelectedContent"/>
+
+ </Border>
+ </Grid>
+
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsEnabled" Value="False">
+ <Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource DisabledBorderBrush}" TargetName="Border"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!--Simple TabItem -->
+ <Style x:Key="SimpleTabItem" d:IsControlPart="True" TargetType="{x:Type TabItem}">
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type TabItem}">
+ <Grid>
+ <Border Margin="0,0,-4,0" x:Name="Border" Background="{DynamicResource LightBrush}" BorderBrush="{DynamicResource SolidBorderBrush}" BorderThickness="1,1,1,1" CornerRadius="2,12,0,0">
+ <ContentPresenter HorizontalAlignment="Center" Margin="12,2,12,2" x:Name="ContentSite" VerticalAlignment="Center" RecognizesAccessKey="True" ContentSource="Header"/>
+ </Border>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsSelected" Value="True">
+ <Setter Property="Panel.ZIndex" Value="100"/>
+ <Setter Property="Background" Value="{DynamicResource WindowBackgroundBrush}" TargetName="Border"/>
+ <Setter Property="BorderThickness" Value="1,1,1,0" TargetName="Border"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="False">
+ <Setter Property="Background" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource DisabledBorderBrush}" TargetName="Border"/>
+ <Setter Property="Foreground" Value="{DynamicResource DisabledForegroundBrush}"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!--Simple Simple SliderThumb - The Thumb is the draggable part of a Slider-->
+ <Style x:Key="SimpleSliderThumb" d:IsControlPart="True" TargetType="{x:Type Thumb}">
+ <Setter Property="SnapsToDevicePixels" Value="true"/>
+ <Setter Property="Height" Value="14"/>
+ <Setter Property="Width" Value="14"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type Thumb}">
+ <Grid>
+ <Ellipse x:Name="Ellipse" Fill="{DynamicResource NormalBrush}" Stroke="{DynamicResource NormalBorderBrush}" StrokeThickness="1"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsMouseOver" Value="True">
+ <Setter Property="Fill" Value="{DynamicResource MouseOverBrush}" TargetName="Ellipse"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Fill" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Ellipse"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!--Simple Simple Slider
+ Similiar to ScrollBar this template uses Track to layout the draggable Thumb which has an up and down repeat button
+ It uses Simple SliderThumb and SimpleScrollRepeatButtonStyle for the page up and down repeat buttons -->
+ <Style x:Key="SimpleSlider" TargetType="{x:Type Slider}">
+ <Setter Property="Background" Value="{DynamicResource LightBrush}"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource NormalBorderBrush}"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type Slider}">
+ <Grid x:Name="GridRoot">
+ <Grid.RowDefinitions>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition Height="Auto" MinHeight="{TemplateBinding MinHeight}"/>
+ <RowDefinition Height="Auto"/>
+ </Grid.RowDefinitions>
+
+ <!-- TickBar shows the ticks for Slider -->
+ <TickBar Visibility="Collapsed" x:Name="TopTick" Height="4" SnapsToDevicePixels="True" Placement="Top" Fill="{DynamicResource GlyphBrush}"/>
+ <Border Grid.Row="1" Margin="0" x:Name="Border" Height="4" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="2"/>
+
+ <!-- The Track lays out the repeat buttons and thumb -->
+ <Track Grid.Row="1" x:Name="PART_Track">
+ <Track.Thumb>
+ <Thumb Style="{DynamicResource SimpleSliderThumb}"/>
+ </Track.Thumb>
+ <Track.IncreaseRepeatButton>
+ <RepeatButton Style="{DynamicResource SimpleScrollRepeatButtonStyle}" Command="Slider.IncreaseLarge"/>
+ </Track.IncreaseRepeatButton>
+ <Track.DecreaseRepeatButton>
+ <RepeatButton Style="{DynamicResource SimpleScrollRepeatButtonStyle}" Command="Slider.DecreaseLarge"/>
+ </Track.DecreaseRepeatButton>
+ </Track>
+
+ <TickBar Visibility="Collapsed" Grid.Row="2" x:Name="BottomTick" Height="4" SnapsToDevicePixels="True" Placement="Bottom" Fill="{TemplateBinding Foreground}"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="TickPlacement" Value="TopLeft">
+ <Setter Property="Visibility" Value="Visible" TargetName="TopTick"/>
+ </Trigger>
+ <Trigger Property="TickPlacement" Value="BottomRight">
+ <Setter Property="Visibility" Value="Visible" TargetName="BottomTick"/>
+ </Trigger>
+ <Trigger Property="TickPlacement" Value="Both">
+ <Setter Property="Visibility" Value="Visible" TargetName="TopTick"/>
+ <Setter Property="Visibility" Value="Visible" TargetName="BottomTick"/>
+ </Trigger>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Background" Value="{DynamicResource DisabledBackgroundBrush}" TargetName="Border"/>
+ <Setter Property="BorderBrush" Value="{DynamicResource DisabledBorderBrush}" TargetName="Border"/>
+ </Trigger>
+
+ <!-- Use a rotation to create a Vertical Slider form the default Horizontal -->
+ <Trigger Property="Orientation" Value="Vertical">
+ <Setter Property="LayoutTransform" TargetName="GridRoot">
+ <Setter.Value>
+ <RotateTransform Angle="-90"/>
+ </Setter.Value>
+ </Setter>
+ <!-- Track rotates itself based on orientation so need to force it back -->
+ <Setter TargetName="PART_Track" Property="Orientation" Value="Horizontal"/>
+ </Trigger>
+
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!--Simple Tree View - This lays out TreeViewItems within a ScrollViewer -->
+ <Style x:Key="SimpleTreeView" TargetType="{x:Type TreeView}">
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type TreeView}">
+ <Grid>
+ <Border x:Name="Border" Background="{DynamicResource WindowBackgroundBrush}" BorderBrush="{DynamicResource SolidBorderBrush}" BorderThickness="1" CornerRadius="1">
+ <ScrollViewer Style="{DynamicResource SimpleScrollViewer}" Focusable="False" Background="{TemplateBinding Background}" Padding="4" HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" CanContentScroll="False">
+ <ItemsPresenter/>
+ </ScrollViewer>
+ </Border>
+ </Grid>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!--Simple TreeViewItem ToggleButton - + and - button to expand and collapse a TreeViewItem -->
+ <Style x:Key="SimpleTreeViewItemToggleButton" d:IsControlPart="True" TargetType="{x:Type ToggleButton}">
+ <Setter Property="Focusable" Value="False"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type ToggleButton}">
+ <Grid Width="15" Height="13" Background="Transparent">
+ <Path Visibility="Collapsed" HorizontalAlignment="Left" Margin="1,1,1,1" x:Name="IsExpandedPath" VerticalAlignment="Center" Fill="{DynamicResource GlyphBrush}" Data="M 0 4 L 8 4 L 4 8 Z"/>
+ <Path HorizontalAlignment="Left" Margin="1,1,1,1" x:Name="ExpandPath" VerticalAlignment="Center" Fill="{DynamicResource GlyphBrush}" Data="M 4 0 L 8 4 L 4 8 Z"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsChecked" Value="True">
+ <Setter Property="Visibility" Value="Visible" TargetName="IsExpandedPath"/>
+ <Setter Property="Visibility" Value="Collapsed" TargetName="ExpandPath"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+
+ <!--Simple TreeViewItem - The TreeViewItem template has a header which shows the Item and a Body which is an ItemsHost control which expands to show child items-->
+ <Style x:Key="SimpleTreeViewItem" d:IsControlPart="True" TargetType="{x:Type TreeViewItem}">
+ <Setter Property="Background" Value="Transparent"/>
+ <Setter Property="HorizontalContentAlignment" Value="{Binding Path=HorizontalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
+ <Setter Property="VerticalContentAlignment" Value="{Binding Path=VerticalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
+ <Setter Property="Padding" Value="1,0,0,0"/>
+ <Setter Property="Template">
+ <Setter.Value>
+ <ControlTemplate TargetType="{x:Type TreeViewItem}">
+ <Grid>
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition MinWidth="19" Width="Auto"/>
+ <ColumnDefinition Width="Auto"/>
+ <ColumnDefinition Width="*"/>
+ </Grid.ColumnDefinitions>
+ <Grid.RowDefinitions>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition/>
+ </Grid.RowDefinitions>
+ <ToggleButton x:Name="Expander" Style="{DynamicResource SimpleTreeViewItemToggleButton}" IsChecked="{Binding Path=IsExpanded, RelativeSource={RelativeSource TemplatedParent}}" ClickMode="Press"/>
+ <Border Grid.Column="1" x:Name="Selection_Border" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Padding="{TemplateBinding Padding}">
+ <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" x:Name="PART_Header" ContentSource="Header"/>
+ </Border>
+ <ItemsPresenter Grid.Column="1" Grid.ColumnSpan="2" Grid.Row="1" x:Name="ItemsHost"/>
+ </Grid>
+ <ControlTemplate.Triggers>
+ <Trigger Property="IsExpanded" Value="false">
+ <Setter Property="Visibility" Value="Collapsed" TargetName="ItemsHost"/>
+ </Trigger>
+ <Trigger Property="HasItems" Value="false">
+ <Setter Property="Visibility" Value="Hidden" TargetName="Expander"/>
+ </Trigger>
+ <Trigger Property="IsSelected" Value="true">
+ <Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}" TargetName="Selection_Border"/>
+ <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}"/>
+ </Trigger>
+ <MultiTrigger>
+ <MultiTrigger.Conditions>
+ <Condition Property="IsSelected" Value="true"/>
+ <Condition Property="IsSelectionActive" Value="false"/>
+ </MultiTrigger.Conditions>
+ <Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.ControlBrushKey}}" TargetName="Selection_Border"/>
+ <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
+ </MultiTrigger>
+ <Trigger Property="IsEnabled" Value="false">
+ <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
+ </Trigger>
+ </ControlTemplate.Triggers>
+ </ControlTemplate>
+ </Setter.Value>
+ </Setter>
+ </Style>
+</ResourceDictionary>
--- /dev/null
+using System;
+using System.Drawing;
+using System.Collections;
+using System.ComponentModel;
+using System.Windows.Forms;
+
+namespace IE_WPF
+{
+ /// <summary>
+ /// Summary description for TransparencyDialog.
+ /// </summary>
+ public class TransparencyDialog : System.Windows.Forms.Form
+ {
+ private System.Windows.Forms.NumericUpDown MyTransparency;
+ /// <summary>
+ /// Required designer variable.
+ /// </summary>
+ private System.ComponentModel.Container components = null;
+ private OCCTProxy myView;
+
+ public TransparencyDialog()
+ {
+ //
+ // Required for Windows Form Designer support
+ //
+ InitializeComponent();
+
+ //
+ // TODO: Add any constructor code after InitializeComponent call
+ //
+ myView = null;
+ }
+
+ /// <summary>
+ /// Clean up any resources being used.
+ /// </summary>
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing)
+ {
+ if (components != null)
+ {
+ components.Dispose();
+ }
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+ /// <summary>
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ /// </summary>
+ private void InitializeComponent()
+ {
+ System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(TransparencyDialog));
+ this.MyTransparency = new System.Windows.Forms.NumericUpDown();
+ ((System.ComponentModel.ISupportInitialize)(this.MyTransparency)).BeginInit();
+ this.SuspendLayout();
+ //
+ // MyTransparency
+ //
+ this.MyTransparency.Location = new System.Drawing.Point(16, 16);
+ this.MyTransparency.Maximum = new System.Decimal(new int[] {
+ 10,
+ 0,
+ 0,
+ 0});
+ this.MyTransparency.Name = "MyTransparency";
+ this.MyTransparency.Size = new System.Drawing.Size(96, 20);
+ this.MyTransparency.TabIndex = 0;
+ this.MyTransparency.ValueChanged += new System.EventHandler(this.MyTransparency_ValueChanged);
+ //
+ // TransparencyDialog
+ //
+ this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+ this.ClientSize = new System.Drawing.Size(128, 53);
+ this.Controls.Add(this.MyTransparency);
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "TransparencyDialog";
+ this.Text = "TransparencyDialog";
+ ((System.ComponentModel.ISupportInitialize)(this.MyTransparency)).EndInit();
+ this.ResumeLayout(false);
+
+ }
+ #endregion
+
+ private void MyTransparency_ValueChanged(object sender, System.EventArgs e)
+ {
+ if (this.myView == null)
+ return;
+ int transp = (int)this.MyTransparency.Value;
+ this.myView.SetTransparency(transp);
+ }
+
+ public OCCTProxy View
+ {
+ set
+ {
+ this.myView = value;
+ }
+ }
+
+ }
+}
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 1.3
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">1.3</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1">this is my long string</data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ [base64 mime encoded serialized .NET Framework object]
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ [base64 mime encoded string representing a byte array form of the .NET Framework object]
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used forserialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>1.3</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <data name="MyTransparency.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="MyTransparency.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="MyTransparency.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>(Default)</value>
+ </data>
+ <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>8, 8</value>
+ </data>
+ <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>True</value>
+ </data>
+ <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>80</value>
+ </data>
+ <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>True</value>
+ </data>
+ <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="$this.Name">
+ <value>TransparencyDialog</value>
+ </data>
+ <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>
+ AAABAAEAMDAAAAAAAACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAgAoAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAMDcwADwyqYABAQEAAgICAAMDAwAERERABYW
+ FgAcHBwAIiIiACkpKQBVVVUATU1NAEJCQgA5OTkAgHz/AFBQ/wCTANYA/+zMAMbW7wDW5+cAkKmtAAAA
+ MwAAAGYAAACZAAAAzAAAMwAAADMzAAAzZgAAM5kAADPMAAAz/wAAZgAAAGYzAABmZgAAZpkAAGbMAABm
+ /wAAmQAAAJkzAACZZgAAmZkAAJnMAACZ/wAAzAAAAMwzAADMZgAAzJkAAMzMAADM/wAA/2YAAP+ZAAD/
+ zAAzAAAAMwAzADMAZgAzAJkAMwDMADMA/wAzMwAAMzMzADMzZgAzM5kAMzPMADMz/wAzZgAAM2YzADNm
+ ZgAzZpkAM2bMADNm/wAzmQAAM5kzADOZZgAzmZkAM5nMADOZ/wAzzAAAM8wzADPMZgAzzJkAM8zMADPM
+ /wAz/zMAM/9mADP/mQAz/8wAM///AGYAAABmADMAZgBmAGYAmQBmAMwAZgD/AGYzAABmMzMAZjNmAGYz
+ mQBmM8wAZjP/AGZmAABmZjMAZmZmAGZmmQBmZswAZpkAAGaZMwBmmWYAZpmZAGaZzABmmf8AZswAAGbM
+ MwBmzJkAZszMAGbM/wBm/wAAZv8zAGb/mQBm/8wAzAD/AP8AzACZmQAAmTOZAJkAmQCZAMwAmQAAAJkz
+ MwCZAGYAmTPMAJkA/wCZZgAAmWYzAJkzZgCZZpkAmWbMAJkz/wCZmTMAmZlmAJmZmQCZmcwAmZn/AJnM
+ AACZzDMAZsxmAJnMmQCZzMwAmcz/AJn/AACZ/zMAmcxmAJn/mQCZ/8wAmf//AMwAAACZADMAzABmAMwA
+ mQDMAMwAmTMAAMwzMwDMM2YAzDOZAMwzzADMM/8AzGYAAMxmMwCZZmYAzGaZAMxmzACZZv8AzJkAAMyZ
+ MwDMmWYAzJmZAMyZzADMmf8AzMwAAMzMMwDMzGYAzMyZAMzMzADMzP8AzP8AAMz/MwCZ/2YAzP+ZAMz/
+ zADM//8AzAAzAP8AZgD/AJkAzDMAAP8zMwD/M2YA/zOZAP8zzAD/M/8A/2YAAP9mMwDMZmYA/2aZAP9m
+ zADMZv8A/5kAAP+ZMwD/mWYA/5mZAP+ZzAD/mf8A/8wAAP/MMwD/zGYA/8yZAP/MzAD/zP8A//8zAMz/
+ ZgD//5kA///MAGZm/wBm/2YAZv//AP9mZgD/Zv8A//9mACEApQBfX18Ad3d3AIaGhgCWlpYAy8vLALKy
+ sgDX19cA3d3dAOPj4wDq6uoA8fHxAPj4+ADw+/8ApKCgAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
+ AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMT
+ ExMTExMTEyIiQiI8HTyCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwDODg4Nzc4MQMdAAAA
+ AADDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOw4ODgyOCQAAAAdAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODIyMSIAHewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAA7DI3MSIdCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAADEyMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs4JAALAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwxJAAhAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4IgC8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAJAxJB0LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ ALwLCx0dIh0dCwATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACx0dAB0dIiIiIiId
+ CxMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvAsdAB0dIiQkAyQkIiIiHSIAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAIgMxMVhZmZqZAyQiHR0AAAAAkAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAvAsdISIDMThZWVmgvaCZWVIkIh0AAB0dIh0hCwALCwALtgAAAAAAAAAAAAAAAOwAAB0iMTEx
+ ODhYWZrDw8Ofn1hSJCIAHQAdACIAHSIkAwsdOAAAAADeExMTCwsLIiIkMTEyODg3MllZmprDw8PDwllS
+ MSQdHQAAAB0AIiQkAAAAvDi8AAAxAzExMTExMTI4Nzg4ODc4ODhZXpnDw8PDml1YNwMkIh0AAB0hIiQA
+ AAAAACIAAAA4ODc4Nzg4ODg4ODg4ODg4ODhZWV6avb2gmllZODcxJCIAAAAdIgMLAAAAACIAAACGE0+G
+ T4bs7Oy8vLy8vAAxODg4ODg4NzIyMSQdHQAAvADsCwAiJDExAAAAwjjsAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAALMSQAAAAAAAAAAAAAAAAAEyI4MQsiOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALMSQAAAAA
+ AAAAAAAAAAAAAAC8CwsAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8AAsAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP///////wAA////////
+ AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA//8AAH//AAD//wAAf/8AAP//4AP//wAA///4B///AAD///gP//8AAP///B///wAA///8H///
+ AAD///wf//8AAP///h///wAA///8H///AAD//+AD//8AAP//wAD//wAA//4AAD//AAD//AAAB/8AAP/w
+ AAAAAwAA/8AAAAABAADAAAAAADgAAMAAAAAAPAAAwAAAAAA8AADAAAAAIDgAAP///j/+AQAA///+P/+D
+ AAD///4///8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA
+</value>
+ </data>
+</root>
\ No newline at end of file
--- /dev/null
+using System;
+using System.Drawing;
+using System.Collections;
+using System.ComponentModel;
+using System.Windows.Forms;
+
+namespace IE_WinForms
+{
+ /// <summary>
+ /// Summary description for AboutDialog.
+ /// </summary>
+ public class AboutDialog : System.Windows.Forms.Form
+ {
+ private System.Windows.Forms.PictureBox pictureBox1;
+ private System.Windows.Forms.Button button1;
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.Label label3;
+ private System.Windows.Forms.Label label4;
+ private System.Windows.Forms.Label myVersion;
+ /// <summary>
+ /// Required designer variable.
+ /// </summary>
+ private System.ComponentModel.Container components = null;
+
+ public AboutDialog()
+ {
+ //
+ // Required for Windows Form Designer support
+ //
+ InitializeComponent();
+ //
+ // Create OCCT proxy object and get OCCT version
+ //
+ OCCTProxy t = new OCCTProxy();
+ t.InitOCCTProxy();
+ float version = t.GetOCCVersion();
+ this.myVersion.Text = this.myVersion.Text + version;
+ }
+
+ /// <summary>
+ /// Clean up any resources being used.
+ /// </summary>
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing)
+ {
+ if (components != null)
+ {
+ components.Dispose();
+ }
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+ /// <summary>
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ /// </summary>
+ private void InitializeComponent()
+ {
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AboutDialog));
+ this.pictureBox1 = new System.Windows.Forms.PictureBox();
+ this.button1 = new System.Windows.Forms.Button();
+ this.label1 = new System.Windows.Forms.Label();
+ this.myVersion = new System.Windows.Forms.Label();
+ this.label3 = new System.Windows.Forms.Label();
+ this.label4 = new System.Windows.Forms.Label();
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
+ this.SuspendLayout();
+ //
+ // pictureBox1
+ //
+ this.pictureBox1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+ this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));
+ this.pictureBox1.Location = new System.Drawing.Point(59, 64);
+ this.pictureBox1.Name = "pictureBox1";
+ this.pictureBox1.Size = new System.Drawing.Size(196, 102);
+ this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
+ this.pictureBox1.TabIndex = 0;
+ this.pictureBox1.TabStop = false;
+ //
+ // button1
+ //
+ this.button1.Location = new System.Drawing.Point(96, 248);
+ this.button1.Name = "button1";
+ this.button1.Size = new System.Drawing.Size(128, 24);
+ this.button1.TabIndex = 1;
+ this.button1.Text = "OK";
+ this.button1.Click += new System.EventHandler(this.button1_Click);
+ //
+ // label1
+ //
+ this.label1.Location = new System.Drawing.Point(16, 9);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(288, 24);
+ this.label1.TabIndex = 2;
+ this.label1.Text = "Import/Export Sample,";
+ this.label1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ //
+ // myVersion
+ //
+ this.myVersion.Location = new System.Drawing.Point(16, 32);
+ this.myVersion.Name = "myVersion";
+ this.myVersion.Size = new System.Drawing.Size(288, 16);
+ this.myVersion.TabIndex = 3;
+ this.myVersion.Text = "Open CASCADE Technology ";
+ this.myVersion.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ //
+ // label3
+ //
+ this.label3.Location = new System.Drawing.Point(24, 168);
+ this.label3.Name = "label3";
+ this.label3.Size = new System.Drawing.Size(280, 23);
+ this.label3.TabIndex = 4;
+ this.label3.Text = "Copyright (C) 2004-2013, Open CASCADE S.A.S";
+ this.label3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ //
+ // label4
+ //
+ this.label4.Location = new System.Drawing.Point(8, 200);
+ this.label4.Name = "label4";
+ this.label4.Size = new System.Drawing.Size(296, 24);
+ this.label4.TabIndex = 5;
+ this.label4.Text = "http://www.opencascade.com";
+ this.label4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
+ //
+ // AboutDialog
+ //
+ this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+ this.ClientSize = new System.Drawing.Size(312, 285);
+ this.ControlBox = false;
+ this.Controls.Add(this.label4);
+ this.Controls.Add(this.label3);
+ this.Controls.Add(this.myVersion);
+ this.Controls.Add(this.label1);
+ this.Controls.Add(this.button1);
+ this.Controls.Add(this.pictureBox1);
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "AboutDialog";
+ this.Text = "About Import/Export Sample";
+ ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+ #endregion
+
+ private void button1_Click(object sender, System.EventArgs e)
+ {
+ this.Close();
+ }
+ }
+}
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 2.0
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">2.0</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>[base64 mime encoded serialized .NET Framework object]</value>
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+ <comment>This is a comment</comment>
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used for serialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="metadata">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" />
+ </xsd:sequence>
+ <xsd:attribute name="name" use="required" type="xsd:string" />
+ <xsd:attribute name="type" type="xsd:string" />
+ <xsd:attribute name="mimetype" type="xsd:string" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="assembly">
+ <xsd:complexType>
+ <xsd:attribute name="alias" type="xsd:string" />
+ <xsd:attribute name="name" type="xsd:string" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ <xsd:attribute ref="xml:space" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>2.0</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+ <data name="pictureBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>
+ Qk1W5AAAAAAAADYAAAAoAAAAwgAAAGQAAAABABgAAAAAAAAAAAAgLgAAIC4AAAAAAAAAAAAA////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////AAD/////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////8AAP//////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////wAA////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////AAD/////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////8AAP//////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////wAA////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ AAD/////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////8AAP//////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////wAA////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////AAD/////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////////8AAP//
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////wAA////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////AAD/////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////8AAP//////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////wAA////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////AAD/////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////8AAP//////////////////////////////////////////////////
+ /////////////////9Px9szm7P/8/PT19fr7+/////////7///7/////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////wAA////////////////////////////////////////////////////////////////////qerz
+ NZam19ve5ebn5ufp+Pn5/////////////v//////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////AAD/////////////
+ ///////////////////////////////////////////////////////k/v9FpbGAoKnh3d/R1dfp6ev+
+ /f7////////9////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////8AAP//////////////////////////////////
+ //////////////////////////////////z//37U3zx8is7M0c7O0Nvc3vf3+P7///7/////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////wAA////////////////////////////////////////////////////////
+ ///////////+////v/P7KIqYjaar0M7Rzc/U6err////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ AAD///////////////////////////////////////////////////////////////////////7j//9L
+ tcNMeoTJy83FyMva2t35+fn////+////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////////7/////
+ /v////7///////////////////////////////////////////////////7////+/v//////////////
+ /////////////////////v/+//7//v////////////////////////////////7/////////////////
+ //7////////////////+//7+///////+///////////////////+//79///+/////v//////////////
+ /////////////////////v/////////////////////////////////////////////////////+//7+
+ //7///7////////////////////////////////+///+///+///+/v7+/v7/////////////////////
+ /////////////////////v/9/v/+/////////////v7//v7////////////////+//7+/v7/////////
+ //////////////////////////////////////////////////////////8AAP//////////////////
+ ///////////////////////////////////////////////////+/vn+/5bm8Cd4h52pssjHysnNz+zs
+ 7f7///7/////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////9ve36uvsa+ytenr7P///////////////+vr7bO1t7CytbCz
+ t6+ytbCztrCztrCzt7Cztq2ws7y/w/j6+/////7//v////39/c3O0pmcoISHjIyPla+yturs7f////7+
+ /v7+/////87R06uusLW3uvT19f///////////////87R1Kyvsba5u/Dy8////9zg4qyvsLW4ue7u8P//
+ //////7//////8nMza2usLG0ue7w8v////3+//////////T19r7CxZSXnIOGjIyPlK6xtebn6f//////
+ /v///////////8THyq2wtK+zt7G0t6+zt7CytrCztrCzt6yws8/R0v////3+/////////9/h4qmssIqN
+ koWHjZaan8THyfn5+f////////////7+/v7+/v////////Hy8r2/wZOXmoOIjIyQlamtsd3e4P//////
+ //7////+///+/v///////////8zQ0KqusLW3u/X09v//////////////////////////////////////
+ /////////////////////////////////////wAA////////////////////////////////////////
+ //////////////////////////////////7/1P3/PaOzU3uEwsXIv8TI29zf+/r6////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////o6erKjAzMjc7x8nL////////////////x8rOOj9DMzg8MzY6LjI3LzM4LjM3LjM3LzQ4
+ KCwwTlFV8PPz////////7O3tfoSHPUFFLzQ3LTE1LjM2NDg7WFphvcDD////////////f4OHKC0xQ0ZM
+ 4OHj////////////////gISIKS4xQ0dM293f////p6quLDA0QERI0NLV///////+////3uDiRkxQMDQ4
+ NzxC1tnb///////+////z9DSZ2lvOD5BLzM4LjI2LjM2Mzk6U1dcr7G1/////////////v7+Z2twLzQ3
+ NDk9MDQ4LzQ3LzQ4LzM3MDU4JiwvfoKG/////////Pz9n6KlSk9TMjY6LjM2LTI1LjM3OT5BcHd73t/g
+ ///////////////+////v8LEXGNmNjxALzM3LjE2LTQ2Mzk8SU1RgoaK2Nrc///////+/////v7+////
+ ////f4OFJy0xQERJ4uPk///////+////////////////////////////////////////////////////
+ ////////////////AAD/////////////////////////////////////////////////////////////
+ ///////+//////7v//951uMoa3mnsbS9wcTMztHt7+/+////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////+pq64zODw7
+ P0PKzc7////////+/v7////KzM9CRko6P0JLT1NbX2NYXGFXXF9ZXWFZXWFSVltydXrz9fX////w8fJr
+ bnMxNjo2PD5PVVhpbnJbYGU6PkMzODxBREnJy83///////+Gio4wNTlKTlPg4+X////+/v7///////+E
+ iI0xNjlLUFXe3+D///+srbIzODtHTE/U1dj////////8/P16foE0OTw7P0NARUrY2tv////////MztBI
+ TFAyNzo3O0BTV1pscHReY2c9QUc0ODw2Oz6ipqf////////+//9ucXc2Oj1CR0lXXF9aXWBYXWFYXGFY
+ XWBQVVqYnJ/////7/PyQk5Y0OD00OT1AREhhZWdrbnNPVVc2Oz4zNztVWV3g4uP///////////+0uLk+
+ QkcxNjk8P0JaX2Jpb3JbYGQ+QkY0OTwyNzpNUVbS1Nb///////////////////+EiIowNThITlDj5eX/
+ ///+/v7///////////////////////////////////////////////////////////////////8AAP//
+ //////////////////////////////////////////////////////////////////3//v/+//7//7j0
+ /iuOnmqIj8XEyMLFyODi4/39/P//////////////////////////////////////////////////////
+ /////////////////////////////////////////////////6mqrzM3PDo/RMrMzv////7///7+/v//
+ /8rMz0BFSTY6Ppean/Hy8+3u8O3v8O3v8e3u8O3t7/Dx8v3+/v///5OWmjE0Ozc8P36DiOHi5P////Hx
+ 86Smqj9DRjA1N2Fma/P09P///4SIjDE0OUtPU+Dj5f/////+/v///////4OIjjI2OUtQVd7f4P///6uu
+ sTM5PEhNUNPV2P///////7q9wDg+QTxAQzw/Q0BESdra3P////L09GFlajM4Ojg8P46RleXl6P////T0
+ 97C0uEVLTjQ4PENHTNbY2v///////29yeTE1OlxgZt/i5u/w8uzu8O3u8e7v8ezu7/X19v///8HDxTk9
+ QTU6PVFWWb7Cxvb2+f///+Hi5IGFiTg8PzA1OXl7f/z7/P///+Hh5EhPUjQ6PkZJTq2wtPDw8v////Dx
+ 88LEx2RpbDk8Pjo+Qra6vf////7+/v///////////4SIijI1OUlNUeTl5///////////////////////
+ /////////////////////////////////////////////////////wAA////////////////////////
+ /////////////////////////////////////////v///v/+/v7/////6P3/Zs/bJWtzprK0wsLI0dPX
+ 8vT0/////////v//////////////////////////////////////////////////////////////////
+ ////////////////////////////p6uuMzc7Oz9EysvO//////////7+////yszRQUVLNTk9oKSm////
+ ////////////////////////////6OnrVFdcMjc6WV5k9vb2/////v//////////f4KGKzE1UVZb3N3f
+ ////hYmNMTU6S05S4ePl////////////////hIiNMTY4Sk9U3t/h////q66xNDg8SExQ1NXY////8PLz
+ Wl9kNjs+Oz9CPD9EQEVJ2drb////v8PENjs+Njo/eXyA/f7+////////////////q6yvNjxAMTc7kJOY
+ ////////bnJ2MTU4X2Rn8fL0////////////////////////////dXh+Mzg8PUFGv8HE/////////v//
+ ////+fr6ZGhsMzg8QUdM1tnb////lpmdMjc7OT5BpKir////////////////////tbe6Njs/PEFGvL7B
+ /////v7+/v//////////hIiLMTU6SU1S4+Pn///////+////////////////////////////////////
+ ////////////////////////////////AAD/////////////////////////////////////////////
+ /////////////////////////v79///////5//+t9PsiiZVui5LEw8bCxMff4uP8/f3+///9///+///+
+ ////////////////////////////////////////////////////////////////////////////////
+ //////+nq64zODs6P0PKzM7////////////////LzNFBRko1Oj2ipqj////////////////////////+
+ ///////O0NE6P0MzOTyQk5n////////////+/v7////X2dqtr7Lg4eL7/P3///+EiYwwNTlMUFTo6+z/
+ //////////////+IjJExNjhMT1Td3uH///+qrbI1OTxGS1DU1tn///+WmZw0OD0+Q0VgZGk+QkVARUnZ
+ 29z///+QlJc0ODs7P0PDxcf////////////////////u7u9OU1c0OTxkaW33+Pn///9ucnYwNThdYmfu
+ 7vH//////////////////v/////y8vNRVFkzNztgZWn09fb////+/v7///////////+qrbEzOTszNzyw
+ s7X+//9oa28wNDhSVlrp7O3////////U1tmfo6inqq99gIU5PUE7QUa7vcL///////////////////+H
+ i44wNjlJT1Ln6ev/////////////////////////////////////////////////////////////////
+ //////////8AAP//////////////////////////////////////////////////////////////////
+ ///+//7//////////97+/1jF0zFse7O4ub/AwsvP0+/v8f//////////////////////////////////
+ /////////////////////////////////////////////////////////////////6errjM4Ozo/Q8rM
+ zv///////////////8vM0UFGSjg9QG90d6Snq56jp56ipp6ipqChpp+jp+vs7f///7W5vDQ5PTQ4PKyv
+ sf////////7+/v/////+/v///////////////////4WJjDI4O0RITJGVmaGlqZ+ipp+jpqGlqWNnazU6
+ PUtPVN7f4f///6qtszQ4PEdMUNvd39vc3kNISzE2OXR3fa+0tzY5PUBFSdrb3P///3t+gjE3OklOUtja
+ 3P////////////////////f3+GptcjM4O1JWW/Dx8f///25ydjA1OV1hZ+7u8f//////////////////
+ /////9ze4ERITDE1OX2AhP///////////v///////////83O0Ds/RDM4OpqdoO3v8VVaXjE1OGdscf//
+ /////////5yeoigsMTI3OzM6PDY7PzY9Qbe6vv////////7+/v////n5+mpvcjQ4Oz9ESMfKzP//////
+ /////////////////////////////////////////////////////////////////////wAA////////
+ /////////////////////////////////////////////////////////v///v///////f/////+9v7/
+ ofD6IImZboWRwcLHwcLF3uDi/Pz9////////////////////////////////////////////////////
+ ////////////////////////////////////////////p6uuMzk7Oj9DyszO////////////////y8zR
+ QUZKPEBDNDk8KS0xKS8zKy8yKi8xKS4wKi8z0dPU////sLK2NDg8Mzc7trm7/////////////v7+/v7+
+ /f/+/v///v7+////////hYqONjo+PEBDLTE0Ky8zKi4yKi8yKS4zNjo+OT1BSlBU3t/g////qq2xMzk7
+ SU5S2dvgenyAMTY5QEVJ1tfaur3ANDg8QEVJ2drb////eHt/MDY5TVJW3d/h//////7/////////////
+ +fr7cXZ6Mjc7TlNX7/Dw////bnJ2MTY5XWFo7u7x/////////////////v/+////1tjbQkdLMDU4hYiM
+ ///////////+////////////1NXXQERJMzY6lZmd5ujqUVZaMjQ4b3R5////////////tLe7WV5jYWZq
+ Y2ZrY2ZsYmdrxsrN///////+////////q66xODtAOj9CNDk9aW1w8/T1////////////////////////
+ ////////////////////////////////////////////////AAD/////////////////////////////
+ ///////////////////////////////////////////////+///9//7////f+/9ez9wlaXSgrLK+wMLO
+ z9Hu7vD////////+/v7/////////////////////////////////////////////////////////////
+ //////////////////////+nq64zOTs7P0PKzc/////////////////LzNFCRko6P0NUWV5vcnZrb3Jr
+ b3NqcHRrb3Nrb3Te4eL////CxMY2Oz8zNzunqa3////////+///+//////////////////////////+F
+ iY00OD1AREllam5scHRrb3Nrb3RucnVPU1Y3Oz9LUFTe3+H///+qrrIzODxQVFiPkphBRUkyNjqMj5P/
+ //+xs7Y0ODxARUnZ2tv///+ChYkyNzpFSk7U1tj////+/v7////////////29vdjaGwzODtWW2Dy8/P/
+ //9ucncwNTlcYWbu7vH////////////////9/v7////l5ulHS08xNjl4e3////////////7/////////
+ ///Hycw4PEEyNzqfoqX09fdYXGAwNThnam/////////////9/f38/f38/f3////////+///+//7///3/
+ ///////k5eZNU1Y3PEBESU0/REg1Oj2jpqj/////////////////////////////////////////////
+ //////////////////////////8AAP//////////////////////////////////////////////////
+ //////////////////7+//3///////7//v///vj+/qv1/SeWo19/hcLCxMDCxt3e3/r6+v7/////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /6errjM4Ozo/Q8rNzv///////////////8vM0UFGSjU6Ppyfo/v8/fj5+vj5+/f5+/j5+fn5+f3+/v//
+ /9rb3UJHSzI4OoGEif///////////v///////9vc3tXW2vT19f39/v///4WJjDA2OktPU9/g4/n6+/j5
+ +vj5+vr7+4WIjjE2OUpOVN3f4v///6qssjY7P0BFSUJGSTY7PlNWW+nq7P///6+xtTM5O0BESdja3P//
+ /6GlqTM4Ozg7P7W3uf////////7+/v7+/v///+Pk5UdLUDQ5PG90ePv7/P///25ydzA1OF1hZu7u8f//
+ //////////7///7+/v////n5+VxfZTI3O1ZbX+3u7/////7//////////////5mdoDM4OzY6P7u/wf//
+ /25zdzA2OUxQVOLk5v///////////////////+zs7eTn6Pj4+f79/v3////////+/3+ChjM4Oz5CRbi8
+ wHB1ejA2OkpNUtze3///////////////////////////////////////////////////////////////
+ /////wAA////////////////////////////////////////////////////////////////////////
+ ////////////////////6f3/adbkH216lqerwMHEyszO7Ozt/v///////v7+////////////////////
+ /////////////////////////////////////////v//////////////////rrG1Mzg7Oj9C0tTW////
+ ////////////yszQQUVKMzk9o6ep////////////////////////////////9fb3aGtvMDY4SE1R3N3f
+ ////////////9PX2ZGZrODxBY2hv4+Tm////homMMDU5S09U5ubo////////////////hYmPMjU4S1BU
+ 3t/h////q66yNzxBPUFEOz9COD1AsbS3////////rrG0Mzg7QERJ2dvc////2NrbPkNHNDo+XmNm7e7w
+ /////////////v//io6RNTo+Mzg9pqqs////////bXJ4MTU5XWJm7e7w/////v7+/v//////////////
+ ////kJOWMTU6NztAoaSn////////////////5eboUVZaMTY5TlNY5ujp////q6+xMzc8NzxAiI2Q/f7/
+ ////////////+Pj5bXBzP0RJZ2tw4ePk////////v8HDOT1DMzc6eHt+////xsrNO0FFMjc5eX2A/Pz8
+ /////////////v///v//////////////////////////////////////////////AAD/////////////
+ ///////////+/v7////////////////////////////////////////////////////////+/v7///7+
+ /v+39v83o7NHdH69vsLAwsbY2dz3+Pj////+///////+/v7/////////////////////////////////
+ ///////////////////////W2dy7vsG+wcXAw8iGio82Oz87QESeoKXCxMe+wMO/wcT5+fnNztNBRUs1
+ OkB/g4fCxcm+wMO+wcS+wcS+wMS7vcHS1Nj///////++wMM6P0Q1OTxWWmCwsrbc3eDFyMtzdnw3PUEv
+ NDdtcXb3+Pj///+Hio0xNjpKT1Ph4uT///////////////+Eh40xNTlKT1Te3+L///+rrrE3PD89QkU0
+ Oj1zdXz6+vv///////+vsrQ1ODxARUnY2tv////8/f2Hio8xNjo2Oz1kZ224ur3c3eDIyc6BhIo8QUUy
+ NzpeYGTs7O////////9tcnYwNTddYWbu7vH//////////////v/////+/v7////e4OBOUlY0ODxARUmL
+ j5LMz9La292xsrZaX2E3Oz8zNzydoqL////////y8/NkaG0zNzs6PkJ8gIPCxcna3N/Exsl1eHw5PkEx
+ NThjZWj19/f////w8PFcX2MzNztGSk/V19r///////99gIQ0OTw3PEG4ubz/////////////////////
+ //////////////////////////////////////////8AAP//////////////////////////////////
+ //////7///7///////////////////////////////////////////7//v///ur+/4Dl8Bp0goKZnr/C
+ xMfIzOPl5vv8/P//////////////////////////////////////////////////////////////////
+ /3x/hiowMzI3OjI4OzU5PTg9Pzc9QDU5PDM4OzI2OjM6Pt/g4NDR1TxBRDU6PjY6PjQ4OzI3OzM4OzI4
+ OzI4OikuMnJ1ev///////////5+jpjg9QS8zNzM4PT1BRTk9PzI2OTI2OlBUWNvd3v///////4KFiSsw
+ M0RJTeDh5P/////+/v///////4CEiSswNEVKTtze4P///6irrzI2OjY5PkFGSdXW2f///////v///6yw
+ sS0yNjo/RNfZ2v///////+zu72tvczE2OjE1OzQ5PT5DRTc9QDA1ODA1OFJVWtPU1/////////7//2ds
+ cSovMldbX+3t7/////////7+/v/+/v///////////////7/Bw0NITDE1OTA1ODo+QT1CRjQ5PTA1OTQ5
+ PYaKjfn5+v////3//////93f4FpeYjA0Ny80Nzc8Pz5ERzg8PzE2OTE2OUtQU9DT1v////z8/Y6SlC0y
+ Ni80OJGUlv////3//////9vc3kNITC0xNFFWWubo6f///////v//////////////////////////////
+ /////////////////////wAA/////////////////////////////v///////////////////v79+vz8
+ +/39/v///////////////////////////v///v///v/+xfr/R7vML2l0prG2wcDDy87R6+3u///+////
+ ////////////////////////////////////////////////////////////kZWZS1BVUldbU1hbU1dc
+ U1dbU1dcU1dcU1hcUldaVVpe5OTm1dfaVlpeUVVaU1hcU1dbU1dcU1dbU1dbU1ZbS09UiIyP/////v/+
+ ////////u7/Ca25zSk9TQkZKQ0hNTlNYgoSI3+Hi////////////k5aaSExPX2Rn5eXn////////////
+ ////k5aaR0xQX2Jn4eLl////s7a7TVJWTVFVnaGk/////v//////////ubu8SU5SVFld3N7f///////+
+ ////8fLzmpygWl9iRktQQUZLRUlNVFddiIuQ4ePk////////////////jJCUXWBjfoKH8fLz/////v//
+ //7+/////////////////v7+////09bXd3t/TVJXQkhMQUZJSU1RZWdsr7K1+/v7///////+/v///v7/
+ ////6evsjpKWVVpeRUpPQUZLREhNUFVafICC2Nnb////////2tzeV1tgTVFVZWht7Ozt//////////7+
+ ////mJygTFBUSU5UnKCj//7///////7/////////////////////////////////////////////////
+ AAD////////////////////////+//////7/////+vvy8PPm5+rk4+Tl4ePr5ebs6ens7u7z9/b9/f3/
+ ///////////+///9/v7///70/f+Z8/0olqZLcny2ur/AwsLV2Nr19PT/////////////////////////
+ ///////////////////////////////+///+///z9fXq6+7q7O7r7O7r7O7q7O7r7O/r7O/r7e/q7O7r
+ 7O78/Pz5+vvr7O7q7O7q7O7r7O/r7O/r7O/r7O/r7O7p6uzw8vP///7+/v7+/v/////////+///d3+HK
+ zM/Oz9Pm5+r////////+///+//7////x8/Xq6+vr7e/7/P3///7+/v7+/v7+/v7y8/Xo6evt7vD7/P3/
+ /v729/jp6+3p6+78/f7////////9/v7+/v739/fq6uzr7O37+/v+/v79//7////////////y9PXV1tnJ
+ y8/R0tXt7fD////////////+///+/v7///78/v/9/v38/v7////+/v/+/v7////+/v7////////////+
+ /v7////////////k5ujO0NLKzM7Z2937/P3////////9//7+//7//v7+///+/v7////////w8PLR09fJ
+ zM/P0NPo6ez////////////////y8/Tm6Onq6+309fb////+//7//v7+/v7////8/f7q6+zp6uzq6+z9
+ /f3///7///7///////////////////////////////////////////////8AAP////7///3///7///7/
+ //7//////+j3+6fn8XTW42DK1lu8yFu1wGKttoettq67wNHN0NzY3OHi4+/v7/n7+v/////////+/v7/
+ /////+P5/3fi8Bt4hXCHkbu+v8HExd7g4fz7+/////////////7/////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////7/////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////wAA///////+/f///f7+///////+1fb9duP1MNXqE8/i
+ E9PpKdToK8/jLcPVKKy6NJWhYZeilaewv8HG0dHT3dve6Orr9/n5/v///v//////+/7+vPf/T8fZI2Zz
+ lKKnuL3BxMnN5+jq/v/+/////v//////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////AAD///////7//////v/+//7T+Pxw5fUuxdQytcNjucd/y9mH2OWB4e9r4/Jf3vJL
+ 1OcruMkhlqNFh5CKoKS/wMTMz9DZ3N3s7e/8/Pv////////n+v2b8P0qo7E9a3Wwtbm/vcHJ0NLt7u7/
+ ///+////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////////8AAP//
+ //////3//////vT8/5Hq+S2ou06Xoae4vsjDx9fT1Ovh5e3s79zu88Pt86Ht9Xjm9VXa7i61xySHlFmG
+ kZmmrcfGyNHR1ODi5PX3+P///////9n5/3rn8x6GlVt5gba2vLzBxdfZ2/f39/////7+/v//////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////wAA/////////v/+//7/0Pj/TL7O
+ QnqEvbzAyMbH1dbW7O/w/vz9//////7///7+/Pv94PX5su74iOn7V9jqKau8JHiFbYqSuLu/ysfN2djb
+ 7vDw/f79/P//yPj+Y9jmHHF/co2UvLzBvsTI3+Dj+/v6////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////AAD////+/v7////1/f+N6fUihJORn6TJxcjHzM/o6Or///7/
+ /////////////////////////v3j+Pqw7/l25/lJyNkegpBKd32mq6/Cw8fL0NTk5ub8+vrw+/609P9B
+ wNAlZ3GWn6W8u8DEx8vj6Of9/f7///////7//////////v7//v/////+///////+///////////+////
+ ///+/////v/////////9///////////+///////+///////////////////////////////////////+
+ /v7//////////////////////////////////v7+///////+///+/v7////////////////////+////
+ ///////+////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////8AAP///////v///+D9/2bN2y90gbC4u7+/w9DT1fPz9P//////////////////////////
+ //////////v9/sv0+pTt+lrb7CGbqi1weIybosS/xMjKzOPj5Pn39uL4/ZPu/C2mtDVnc6mtsr28wM/P
+ 0uzt7v3+/v////7+/v3///3+//7+//7+/v7///7///3///7///////7///////////z///3///7///7/
+ //7///////7///7///7///3////+/v/////+/v7+/v7/////////////////////////////////////
+ //////////3///7////+/v////3//v7////+/v7+/v////////7///z+/v////7+/v////7///7/////
+ //////7///7/////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////wAA/////v//
+ ////3v3/X8DPOnJ/tbq+vb/D1NbY+Pj4/////////////////////////////////v7/////////5/v9
+ s+/7duf3LLDBI2p2g5KXvr7Bx8fL3t7f8fHz2Pf7guv5I5WmQ253qrO3vL7D0NPV7fDw/////////f/+
+ /f7+/f///////////////////////v////7+/////v///v///v///v///////v/+/v/+/////v//////
+ /////////////////////v///////////////////////////////////////////////v7//v///f7+
+ /f7+/v///v///v7+/////////////////////////////////////////////v///v////7+////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////AAD//////v////7j//9fw9E3b32ytry8
+ v8PT1dj4+Pj////////////////////////////+///9//7+///+///////4/P7C8/1+7Po1usodanaA
+ kJa7vsHAxsva3d/t8PDO+P5y5PQjh5ROcXuwtby/wMTU1tjy9Pb9//////7////////////6+fj49/f5
+ +Pn8/f3+///////////+/////////////////////v7//f38+/v6+/r3+/v29/j29/f2+Pjz9fX4+Pj9
+ /f3////////////+/v7////////////////////////////+///////////////+////////////////
+ ///////9///5+vv29/f39/f59vjz9fb29/f9/f3/////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////8AAP////7//////+n//2TJ2DRve661uby+wdHT1fX29v//////////
+ //////////////////7///7///7///7///7//////vr9/sz2/Irt+z3B0SBxf3OKkL24v8LGx9nZ2+bs
+ 77r1/13a5x14iWWFi7e5u73CxNTZ2/bz8/z9/Nv0+qzc4bTO1MvP1NXS1NrY2d/i4ebs7Pb29v78/P/9
+ /P/7+v/39/Dx8uTm6NLc38/X2dnV19bW1tXS1dbS1tXV19fY29jZ29rZ2t/g4fHz8/3+/v//////////
+ ///////////////////////9/f35+PPw7+/q7O7u7/X49/7+/v////////38/Pj19Ozp6d/f397Y2tbR
+ 1dLP09DLz8/Pz9HV1d7j5Pb3+P//////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////wAA//////7+////8///fNnnKnF8oa+xvr7Bzs/R8PHx/////////////////////////////v//
+ /v///////v/////////+////////2Pf+nfD9RMfVGm97bIiQvLq9v8LE1djX5+3xrPX/T9DiHXF+bYmP
+ ubq/wcXI3tvezu/1aeDxIMPULKa4Pp+tU5ujhZ+ptLO5zcTH1c/Q3Nja2t7itt/mgdbiYMzaUMbVQbzN
+ Qq67U6Grcp+llaKoqa+ypre9o7e/prO5tba8vbu+wsHD09PV5OPl7e/v+vv9/////f7++vr8+Pf49vX1
+ 7u7xuuHojMTMn7O4uLe8xMTG2Nna4+fn5+fo5t/i4NjbvdTbjMvUf77Jc7vEbLK8eqOskaGor7S4uL3A
+ zNLU9vb3////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////AAD////+///////4
+ //+d7fcifImFmZ/AwcPFyMzn5uf+/v/////////////////////////////////////////////+/v7/
+ ///////+/v/g9/yU7/s8xtYZb35siJC7t727w8ja2dzd7fGo9P9KyNcabnt0jJG9urvFyszK9fqD6PU8
+ 2+o30+Yty90tusoqnKpBjpx7q7hwwMxdx9VV0uI52+4n1ewp1uok2ewq1usz0eMnxNUlrLw3o7FEu8o6
+ ytgxv9A3q7lGnqpan6pvnqWRoKatrrO+vcHKy87U1dfa3N7f4ePl5ufu7OzX7fJy4vMswtMsnalChpN6
+ lJ2xrrfHvcHGx8mz0dmH2edT3Owu1ukuy94szeEvyd0puMgphJBgeoKrrK+2vb/Z2d37+vz/////////
+ ///+/v7/////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////8AAP////7//////vz//8H6/ziaqld6gru+wL3B
+ xd3d3/r7+/////////////////////////////////////////////////39/v7//////v///tr4/ZDv
+ /jvB0h9odn+Ql726wb7Dxdnb29jv9J7x/UjI1iF1gmiEiLq5u7/W3Zjp9mvi9Fnf8kbg8jLd8DDW5zHG
+ 1yjI2yLU5yjX6y7U5jDL3TDJ20DK2UnM21HT5HTi8Hrp+FPf8DXT5TDY6zXb7TTW6SrX6TXR4i/E1Cev
+ vy2WoUeMlX6SmqCjp7O0t7+9wcjKzdDV193e4Nfz+Ibo9jLZ7DTS5iu5yCiVo0GRnm+rs3zN217g70zf
+ 8jnX6yvP4irQ4jDV6jLZ7THi8yK6yh9ibY+aoLu/wtXW2Pb19v////////7+/v7//v//////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////wAA/////////v/+/v//4vz/YMXULGl0rbS4vL/B0dLV8vLy////////////
+ /////////////////////////////////f///f7//f7+/v///////f/+3Pj9k+v6NLrJJGh0hpacv7rA
+ w8bH3d7e1+/zovL/S8zbHHWCZIGIt7W4s73DqM3XlNvoct3rT9vrXN7vb+L0XuDzSd7vPtvtMLrJTZKc
+ dZmfiZuppKqvsbq+v8vQyOTqlun5N9/uMtrrOtnqNcDQRbfGXtjnZuf4UuL0QNPkL7zLJZqtOoKRb4yR
+ n6WqtbG3v77Cw8fJ2u/0kOv3M9XoM9fqPN/xTdjrOMbYLsraO9rxQNToK7nLM6q4Ya+7gbbAkb/HlMbM
+ l9DXhcvWhK+4tb3Bz8/R5ebn+vn5////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ AAD////+///9/v7///74/v+a6vQde4p9lp3CwsTEx8nk5uf9/v7/////////////////////////////
+ ///////////+///////////8///+///////+///b9/6N7/0vq7opZG+Uo6e3vMDJyMvk4eHc8/if7/5F
+ y9sdbnxyhou3tbjCubzFyMrR1tzP2+LQ4eXL6O6l6PN35fRW3vExwNMzdoJxen+hnZ+nqK3CwMfU09Tf
+ 6u2C5vM31OZk4fRQ3u8qrL5Ib3aDkJeIu8aE0t6I5/Vt5/ZJ2+wzvdAkmKc5iJFkjJOVn6Wyq6/N192n
+ 9P48zuE2p7hiu8pw4Otl5/gr3e8dxdYtp7dgn6igsLW9u77OxsnSzNHa1Nfe1tjh2tvd3N3d3uDl5un2
+ 9/f+/v7/////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////8AAP///////v/+/f7//vz/
+ /8/8/0KzwUBwere6vri/wtPV2fX19v////////7//////////////////////////////////v7/////
+ //////////7//////v7//tD4/nbn9ySaqD9rcaats7m6wdHS0+rp6trz95ju/D7F1h94hV6CirKzt7vA
+ v8rN0eXe4fDt7Pn19vT2+dLz+qHq+WXj9Cy1wiBocXuNkq2us7u7v9PX2Nn2+1jN2Vujs7Dj7ZPx/kHK
+ 3B5tdGp4faOfpayutb3I0LHd6JDl9HPm9k/c7jXF2COgrjSGkHGWoK7Ax63w+0PO3Sd0gHV/hJ2mrJPM
+ 1nXS4n/EzbXIzd3Y3efj5Ofq6+/x8vb4+Pj3+Pf19vT19vHx9fT29vv9/f//////////////////////
+ //////////////////////////////////////////////////////////////////////////79/v38
+ /f////////////////////////////////////////////////////////////////////7/////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////wAA/////v/+/f///v//////7/7/hub0InWEf5WXv8DD
+ wMfJ5OXn/v7+/////v///////////////////////////////////////////////////v///P/+///+
+ 9v3/vfL9aePwG4GPVXV9s7a6v7/D1tfY7O3v1/P7me/7TtLiGYeUTHN+p6itv8HEys/P4OPl9fX1///+
+ ////6fn7u/D6eev4Kqu7MGRvlJyjr7O3ytDV3Pz/VL7QPmVoj3ZxttTZgvT+JaCtNVxignFtn5SRyMLE
+ 6Ofq5e3xze3yoez1duz8UeP2OcfWJ7bJQNDfbOLzQNblJHSBXXN5o6Kmvbu92dfc9/Hx//3++vv8+fn4
+ +/v5/Pr6+/j4/v//////////////////////+PX15NXSz7OsyKecyqWczayh2Ly2697d/Pr6////////
+ //7+/f7//v///////v/+/////v/+////////+vb15dTQ0LKpyaOXvpKJu5GGw5yPzKuj487K9/Hv////
+ //////////7++ff3+vj4+/n5/////////v/+/v/9///+/v///f///////v7+/////////v//+PLx9vLx
+ 9/Py+fb0/v38/////////v//+PTz+PPz+PP0+PX1+fX19/Py9/T0/Pv7/v///////////////v7+///+
+ /f7////+/v7+/v////////z9+fLy+fPy+PTy+fTz+PTz+fTz+PPy+PTy+PP0+fP0+PX09vPx+/b2////
+ ////////////////AAD//////////v/+///////8/v7F+f9FscE2bnS0ur69wMTT1df09PT/////////
+ ///////////////////////////////////////////////+/v/+///+//////71/P658/9Q0uEbcX5w
+ h420t7u/xMXY3N359fTl9/uh7/te3e8hnKw0bnqJmZ+/vsDMyczW29/t8PH9+/v////6/PzG8/xq5vgd
+ kp9GanGnrbShm5vG1NR52ucjXmZcOSuJamW48/hV1eYhaHdLQDlpQTSEY1i3oZzz7ev++fq7lY6bn5qH
+ 1d546/pg5vhE3O493PA30+Yic4Bke4C2tbvO0NHw8PD////x6Oa4jHyteWqxfGuyfW2sd2fSta3/////
+ ///////y7OvTtaqyf3CmZ1ajZE6jZU2lZE6hY0ugZU6mbVmzgXPUu7T49PL////+//7+/v79///+//78
+ ///////8+fnWvLSxemykaFGiYk6hYEygYUykZFChY06fYEylZlGvdmXHoJTs4Nz++/zMqJ+ud2aveWqu
+ fG7Vvbb+/fz//v/+//7+///+///+/v/9/v/9///////y7uy9loyweWqyfG+xfGyqeWfJqZ7////49PLF
+ opSwemuwe22vfW6yfW21fW2zfm20gHK5h3vCnJHXv7bp4d7////////9///9/v7+/v7+/v7////p4t63
+ in6xemuzfW2zfm+yfm+xfW+zfnCzfm6yf26yfm+xfm+xfnCwfG6yemzgzsf///////////////8AAP//
+ //7///////7///7+/////+/9/43o8x19i3qQl8TBxcTFyeLj5f39/f//////////////////////////
+ /////////////////////////////v/+//3+/v3//////+/7/6Px/T/C0h5kcIOXnri7vsfHzOPm5vz5
+ +e74+6zw+Wvl9C62xSN/jlqFkaOqr8XExs/R1ODg5O7v8Pn4+e71+Lr2/0/T4SJqeWlsbGg8Nquhn5z1
+ /SF/jlZIRGk4K6+vr5b0/h+Il0ZLTGxANXZJOYRINLyXjv7//7J+bZ1aQJ9rWZeRi5bN1Hbk9DXe8B25
+ yTN3hKOtscnKz+Dj5fz7+////8GZjpxcQ6doUqNnUKRpUp5eSLuShf////jz8tCxqql0YqBgSqNnUKVt
+ V6VtWKhuWKpvWqlsWqdsW6drVqRnUaBfS7J9b+LTz/////3//v/////+/v7///j087qTg6FfSqZnUadu
+ WahtWKdsV6ZuWalvWqhuWadsWKZsV6prVpxfRqRsWvDm5b+Uh59hR6RqVKllUZ9jUOvh3/////7+/v//
+ //3//v7//vz+/v7+/////8emnZ1aRKZqVKZpVKVpVKBgSLaLe////8yroZtbQ6JoUaZnVKZoU6RnUaVm
+ UaNoU6VoUqVkT6JiS59iTKRqWL2UhunX1f////////3///////7+/r+XjJtdRKRpU6RnUqRnU6VnU6Vm
+ UaRnUqZnU6VnUqRnUaRmUqNmUqNmUp9eRtK4rv///////////////wAA/////v//////////////////
+ ////0fv/UcLRLGd0qbC1xMDDzM/S7e/w/////f//////////////////////////////////////////
+ /////f/+/f7+/v///f7//v7////+4Pj+i+78KKi3OmVwo6euubm+ys/R6e3t////9/z+yvH7hOz6S9Pl
+ JJ2tN4CNdJObrLK2x8XI1dHU39ze4uLj4/L2iun5JYiYQUJBYzcqkXRwuvj+OLXFMFVXZTkpimlirfD4
+ LY+fSElFb0I2dk9EiFE8x6qk////1LWuomJKoWlSpmBKnmVQqKmmrPT8kc7Zt8nR4N7j5ujp9/r5////
+ 8OvqqHJgqGlUq25ZqG1Zqm5boWNO3MrD+PTzs4d3nF9HpWVRqW1aqW1ap21ZqGxXpGZQo2VOpmhRp2xY
+ qGxYp21Yqm1aoWROo2dT4M7K//////7+/v///Pr6vpSIm15HqWxaqGxbpWxXp2xYqG1YpmhSpGZQpWhR
+ p2tXqG5Yp3BbpmlTsHpq+PT13MjBo2NPp21Yq25ao2JMyKWb/////////////f7///7+////////+PXz
+ sHlppmlTpm1WqG1ZqW1ao2JN0rSt////vZSFo2NNqG5aqG1Zp21YqGxYqWxZqG9aqW5Yqm5cqG1ap21Y
+ p2pUn2FLpWxW0rWs//7+/v/+/////fv8vY6Do2dSqm9bqW1ZqW1Yqm1Zp2xXpm5YpmxWqW1Zp2xYqG1Y
+ p2xXp2pUpGxW6uDe////////////////AAD////////////////+//7///////3z/v+h8/0nkKFYe4W6
+ wMK/wsXX29z4+Pn+///+/////////////////////////////////////////////v/9//7///////7/
+ //7////+/v7M9f1y4/Qdh5JYd362trq9vcHY2Nv19/j//////v/g9/ye7/ll5PU2xtgknqs8k55jmaKR
+ qbC1ur/DwsTR2+GV8PwmlKM/SUtmQTR3SjzEy8qK7vwdjJhHV1eEg4KJ5vEleYVQPTZwQTR9TTmUZVPx
+ 6+n////s396naVelbVeobFmkaVKmZVPhysL////////+///////////+///IpJqkZE6oblqnbVmnbFmn
+ aVSpc1/49PHl1dOgXkirblmlbFiob1qoa1ajZE6obly0hHi5kYWzg3OlaFWpalapblqoaleqbVqiZk6m
+ dGL16+v+///////exsGcX0iocFqqbVmma1apb1qkZ1GlblqygHC2hnavemmma1agYEqlZlCfXUXSt67/
+ ///y7OyrdGKnaVSobVqlbFekalTXwrv+///////////////////////PsaigZE6nblmobVmobVmoa1ap
+ bVju4uD9///AloukZE6oblmoblmobVmncFumbVegYUudY0yiZk6naFSob1qoblqoblimalSeXkvTtrD/
+ ///////9/P29j4KjZU+nbVmnbFmnbVeqblmhZVGkZlKkZ1OlaFOlaFSmaFSnaFSgYEy/m47+/v7/////
+ //////////8AAP/////////////////////////+/////+b9/3Db6hpwfoybo8TBxcPIy+Xn6f7+/f7/
+ /////////////////////////////////////////////////////////////////v////L9/bz0/1DP
+ 3xxqeXuSmLe3vcXDyODj5Pr8+/////////L7/cHw+orq+WPi8jrM3iq1xiqms0Sqt1fDz3fi8F3e7yN9
+ jU1GQ3BIO3tIN6B6bbnv9Fza7Ce80ULZ6SuuvT9xfZaGhIpsYYdbScuzrf////////v6+riLfaVjTqdu
+ WqZvWqZmVKFmU8OeleDNyujc1+vd2+TU0MKflaJnUqltWadtWKdtV6huWaJjTb2Wh/7///v5+LqQgqJh
+ S6VuWKNlTqZuWcakme7i3/78/f7///v5+d3IxKZwXKdpVKdsWKpqVqVuWZ9gSdOzq/////38+7eHeKVm
+ T6lvW6dsWKZsV6ZmULaIeOfa2Pr5+P36+fr39OTY1Mmmna95Z7OJfPj08/////7//7+WiaRkTqluWqdu
+ WaZqVaZmVMOYjd7Mx+rb2Ond2ObW08inoaZnVKRqVahrWapvWqltWaVmULmIeP7+/v7//8KYjKJkTalt
+ WahtV6drV6lsWKhyYMikms6vp8KajKhwYaFkTahuWKhsWKptWaZpUqNrWOzi3v////79/ryQhKJkT6ds
+ WahtWahqV6ZvW9CzruLKxuLMyOLLyOLMyeHMyODLyOPS0Pz49////////////////////wAA////////
+ ///////////////////+///+/f7/vvj/PLjEMGl0rra6vsHEz9PX8PDz/v/+////////////////////
+ //////////////////////////////////////////7//v7////+6/z9n+37Mq/BMmVwmqeut7m9yM3O
+ 7e3u/////v/////+///+7fn9ue73geb1WuP0QtrrKtTlHNToJM/jJqe2QF1fbkc+f1FBjVtHkVdBvra1
+ qvX/PODwHLfJRZCbrbe91dXa3t/h5+Ph/Pz8/v////7/////0bavn2BMqm5aqWtYpnBapmtVpGVOo2hT
+ p21Xp21ZpGhWpGRPpm1YqG1XpmxYp25YqGxXo2NP28K8////////8+3tsYNynWBKuYd76NzZ////////
+ /////f///v//////zKyioWJMpm1ZqG1Zpm5ZoGNOu5CC////7+Phpm1WpmhUqWxYpmxYpmlVpnBg8Orm
+ /////v///f//////////////9vDx9vT0/////f7+////3crDomNOp21XqW1Xp25Zp3BboWFMoWVRpmxY
+ p25ap2pVoGRPpmxXqG5bqG5aqG1YqW5aoWJN1bew//////7/wJeJo2RLqG1ZqG1Ypm1YnmNN0LGn////
+ ////////8ennwJiKo2VQqG1Zp25apG1XoGBJzKad/////f7/vpGEo2VQp2xZp21YpmlVqHJh8erp////
+ /////////////////////////////v/+////////////////AAD////////////////////////+///9
+ ///////x/f+W8PslkJ1Xe4PCwsTAxMbW29/49vf/////////////////////////////////////////
+ ///////////////////+//79///9/////v7Y+P576/gnjJlOdXuwtbq7vMHY2dz4+fn////+////////
+ //////7t+PvF8fef6PRd3+48zeBXusVncnF5TDuFU0KPXUmaY02eX0vexsL0//+97PS53eHc4eLq6Ort
+ 7+/6/P7////////8/v79/v/////y6OWobVipalembVumcFqnaleobFigYUyiXkmgX0ikZlCma1iob1qo
+ a1iobFmlblmoalOscmHy6+n///////7////08O/k09D8+Pj////+///+/v/+///9//7+///////dxb2f
+ ZEynbVmpbluoblmjZVC5hnf//f7gysWjZ1KmblmobFaqbVmiZk65joH////+///9/v/////+///9/v39
+ /v/////////+///+//7////38O6rcWCmaFSla1arblmnb1uqbVilY02hX0qeYEijY0yqblqobFmpbVmm
+ bVimbVipbVemalbp3dv////+///CmIykZU6pbluobFenbVqlY07axLv////+///////////59vaygXOk
+ ZFKncFqpalqmZlKxfW78+vr9//++kYSmZ1GoblqnbVelalSrcF7x5OP/////////////////////////
+ ///+/v7+//////////////////8AAP////////////////////////7+//7+/////////+D5/3Pg7B12
+ hIKUnMTExcHIyN/i4/z8/P////////7+/v//////////////////////////////////////////////
+ //7///7+//////r+/8L4/lnU4h1reYGVmrS4u8PHyebm5//+//7//v3+/f/+/////////v///v39/e71
+ 9+bw9ejm5ZtpXI5XQ5diTp5lUaRnUqNrV+bb2f///////////////v39/f////7///////7+//z+////
+ /v////3+/r2Pf6RkT6dwWqZvWqZrWKdxXb2Qg8GUiMGWirOGdaVqVadtWKdtWahtWadrWKZjTcCXiv//
+ //7///v//v///////////////////v7+//7+//7//v7//////////8SimKRkTKtsWKdvWahsWaNlT7mM
+ fv3//9S4sqRjTqhsWKdtWKluW6FkTcOZjP////3+//7//v7+//7//v3///////7///7+//3+/////v/+
+ //7+/sehlqFiTKlvWqhsWKZrV6hwXLuQgsGWisCUibmKfKduWqZsV6dsWKdtWaZtV6NnUbmKfPz7+///
+ /////8SZjaJkTqhtWadtWaduWqJjS9nAuf////3//////v7//////9O4sKJhTKptWahtWaZpVKhxX/Pt
+ 6////72PhKVlT6htWKdsWKZoU6pwXvHl4/////7///7///7///////////7////+/v7/////////////
+ /////wAA/////////////////////////v///v/////+/f///f//zvv/T8XUJmp4nqqxwMPEx83P6+rt
+ //7+/////////////////////////////////////////////////////f///f7+/v7//v7/////8v3+
+ nvL+Lqi2Omdypq6zt7m+0dPW9fT1/v////7//v7+/v7+/v///v//////////////+vTzpnJimmVOpGpX
+ pGpXpmpUpG5Z6uDf/////f/+/f7+/////v///v7//v7////+/v7//f7+//7+/v7/////2MG7oGNNqW5Y
+ p21ZoWVOwJmL////////////697bpmtYpmpWqHFcp2xXqW5ZnWJN2sO9/////f7+/v/+/f///f3+/v7+
+ /v///v///v7+/v/+////////////6NrXp29cpWtVp2pXqHBZqm5ZoGFLxJ2N////0bOtomJOp21XqG5Y
+ qG9bo2ROxJqO/////v///f7+/v///v7//f/////+/v/+/v7//v7+//7////+////383IoGRPqmpXqG9Z
+ pWVPt41//v/+////////8ejnqXJgpmlTp21Yp25ZqW1Zn2FL0LSt/////////v//xJqNomRNp21ZqG1Y
+ qW5YomNO2L+4/////v/////+/v7+////5NHLnmVOpmpXqG5ZpmpVpGhW6+Dd////u46DpGVPqW1YqGxY
+ pmlSq3Jf8ufm//////////////////////////7//v//////////////////////AAD/////////////
+ ///////////////////////+///////6/v+w9v84q7o8cHq3ub7CwsbR09jy8vL+///9////////////
+ ///////////+/v7////////////////////////////////////////////X+P5t5PAee4hpgoq3uLu/
+ wsbd4OT7/Pz////+/v7////////////////////////69fWweWqjaFOnbFinbVmma1Wob1vt4uD/////
+ ///+///////////////////////////////////////////w6OirdGCmalSobVmkaFG0g3T7+vr9////
+ ///Zv7eiYkypb1qob1mpbVika1WpcmDv6Ob//////v/9///+//7+///+/v/+///+///////////////4
+ 8/PYw7uocGCoaFOnbluna1iqb1qmbFigYEzYu7L////TtK2hZE+obViobVeobVqiZE3GnpP/////////
+ //7////////////////////////////+/v////7////39fSxe2unaFOmbFmkZlOtdWP07Oj////////f
+ y8OkZFCobFenbVmmbVqobFekalfv4eH////////////BmY2jY06obVmobFmoblijZk/Xu7P/////////
+ ///////////o2NShZVGna1eobFmnbFinalbu4N3///+8kIOkZE6pblqobFimaVOocFzt4uD/////////
+ //////////////////7///////////////////////8AAP//////////////////////////////////
+ //////////////P+/5Lx/CCPoVd5gr3Cw8HEyNna3fb19//////+////////////////////////////
+ //////////////////////////////////////P8/rX0/zu+yyllbpuorLu4vMbMzvDu7v////7/////
+ //////////////////////r19LF7aqVpVKltWaltWqZqVatwXO7i4P//////////////////////////
+ //////////////////////7//////8GYiqFkTqhuWqdsVqdpVuXV0v/////+/ruMfKFjTKluW6dsWKpu
+ WqJjTr6ViP39/v/////////////+//z///3///////////Dn59nEvcqnm7J9baNiTaRmUaluV6ltV6ht
+ WqhuWqJlUKx2ZfXz8f///9G0rKBkT6htWKltWahuWqJjTMeelP///////////v//////////////////
+ //////7///7//////v7//////8ulmqJiTKduXKhtWKJjTt/Kxf///////8KfkqNiTKluWaltWKluWqRl
+ TrmKfP78/f///////////8GZjKNjTqhtWahtWqhuWaRlUNa6tP///////////////////+jW1KJlUalt
+ WKZuWaZsWKhrVu7h3f///7yQg6JjTaltWqhtWKltWKdqVreHfMiilcWckMSck8SflMennO7g3f//////
+ /////////////////////wAA////////////////////////////////////////////////////2/r/
+ euLvHnuJcYyVx8TGxcjK3d/i+vn6////////////////////////////////////////////////////
+ //////////////7+///+6fr/h+z4IoyYVnh/sba6ur7B2drc+fr7////////////////////////////
+ +vb1sXtqo2hSqW1ZqW1apWlUrG9b7uLg////////////////////////////////////////////////
+ /v//////3MjBomNNqW1aqW1ZoWFMz6+n////8ejmqHBbp2tVp2xYqGxYqW1ZpGRQ17+6/////v//////
+ /v///v/+////////6+Lew56Tq3JfomJOoWBMpWhQqG5apm1Yp21YqG1ZqW5cpmdRomZR4M3I////////
+ 0rOtomRPqG1YqGxYqG1aomNMx56U///////////+/////////////////////////v///f7+/v7//v//
+ ////59bRo2RQp2xZqm9ao2FMw5mO////9/PxrnhnpmhTqG1ZqG1Zp25Yo2NL1bev/////////////v//
+ wZmMo2NOqG1ZqW1apm1YpGVQ1rq1////////////////////6NfUo2VRqG1Ypm5ZpWtXp2pW7uHe////
+ vZGDomNMqGxZqG5Zp21ZqG1Zo2ZPomNOoGNNoGFMoWJKn2BGrXps9vPy////////////////////////
+ AAD//////////////////////////////////////////////v///v3//v7T+v9c1OMcc4CQnKPHyMrF
+ yczh4uT7+/v//////////////////////////////////////////////////////////////v/////8
+ //7H9/5Ty90fZ3SHmZ+0t7zFx8zr7Oz+//7////////////////////////69vWxe2ukaVKobViobFmm
+ alWrblvu4uD////////////////////////////////////////////+///9///////18e+sc2Kna1Sn
+ b1umZlG3g3X////bwLqiYk6pbVmoblenbVmmaFOsc2D27e3////+/////////v7////////XurSla1ei
+ YEulalSmbVeobVmocFqlblinbVmnbVimZ1KgYUmmcl7ey8T//////v/////StKyhZE6pbVipbVmoblqi
+ Y0zGn5T///////////7////////////////////////////+///9/v/+//7////59vewgHKkZ1CnbFmm
+ alWweGf8+/rk1c+jZlCrblqpbVmpbVmma1WmbFns4N3////////////+///AmIykY06nbFiobVmmbFej
+ ZE/VurT////////////////////o1tOjZVGobVimblmnbFeobFjt4N3///+9kIOjZE6pblqpblinbVqq
+ bVqoa1WmaVSna1WlaVaoZ1SlZk6iZ1Ly6uj///////////////////////8AAP//////////////////
+ /////////////////////////////////v/+/vz+/735/1LH1yZuepGhqMTEyMjMzeXl5/z8/P//////
+ //////////////////////////////////////////////////////7//////+b7/4vt/COXpURuda6x
+ trS6vtXY2fb4+P////////////////////////r19a95aaVqU6htWKhsWaZpVKptWu3h3///////////
+ //////////////////////////////////7///7//////////8Gek6NjS6ZvWqdsV6RoVPLp58eilp9i
+ TKdtWqhtWahuWaNiS8CWiv///////v7//////////v///9bAt6BfSadqVKhuWqhuWaduWKhuW6dsWKdr
+ U6JhTKVkUa95Z8mmne/o5v////3///3//////9S0raFkT6hsWKhsWKhuWqJkTceflP///////////v//
+ //////////////////////////7+//3+//////7//////8qroqBjTaltWaZtWKNoU+fb2M2toqJjTaht
+ WadsWKhtWaNlT7aJev39/f////////////7+/8GYjKRkT6htWahtWqdsWKNlT9e7s///////////////
+ /////+jX1KJlUaZsV6lvW6ZqV6ZrVu3g3f///72Qg6VlT6ltWaltWqltWKttV6ZoVaZuWKZvXKZuXKds
+ WKdzYdK4sP///////////////////////////wAA////////////////////////////////////////
+ /////v///v////7////+9/3/sPT/QL/MJGx2o6euxcbJy8/Q5+nq/P39///////+/v/+////////////
+ /v7+/////////////////////////f7+/f///////f7/v/j/Ss/eHGx1i5adtrS6w8bJ6Onr///////+
+ ///+/v7+////////+vT0rnlopWpUqG5aqW5ap2lVqm5a7eHe/////v//////////////////////////
+ ////////////////////////////3szHoWNOqGxWqm1Zo2lUuo1/rnpnpWxUqG1aqW5aqW1ZoGFM2sbA
+ /////f7+/v//////////8ujnp25foWhRqGpXqm5YqG1Zq25ZpGVQoGBLrXdnyqKZ4M3H9O/v////////
+ /v///f/+////////0rStoWVQqGtYp21ZqG5ao2NNx5+V/////v///v7+////////////////////////
+ /////v///////////v//////6dnXp2lWqGtWp2xZpWlTt4p7sH1rpWtXp21XqW1Xp21YoGFL0bOr////
+ /v///////////v//wZmNo2ROp21YqG1Yp25apGZQ17yz/////v////7////+////6NfUomVRpmxXp25Z
+ p2tXpmpX7eDd////vZGFpGZQqG5ZqG1YpmpVqHBd2cXC7ODf697d7ODd6uDd8ezs////////////////
+ ////////////////AAD////////////////////////////////////////////+///+//7/////////
+ ///z/P+r9f8/tsQtcHmmsbXKyMrQ0dTp6uz+/v3////9/v7////////////+/v7/////////////////
+ ///////////9/v7+///////s/P+O7fsmm6tBanOqr7K2ub3W2dv7+vv////////////////////59fSu
+ eWimalOoblmnbVelalWobVnt4d//////////////////////////////////////////////////////
+ /v7+///38/Kve2ukZlKnbFmpblqkZVGkaFWqbluobVmqblmmaFOscmDz6+r////+///////////////Q
+ s6uiYEunb1mobVqnbVenb1ijZVCxfGzXv7f28O7////////////+///+/////v/+/v7////////RtKyh
+ ZE6na1ioblioblmjY0zHn5b////////9///+//7/////////////////////////////////////////
+ ///9+/y3hXelZU+pbVmobVilZ1OlalWpbVqobFaobleobFema1fv5OH//////v7////////+///BmY2j
+ ZE6obliobVmnbVikZVDYvLP////////9///+///////n09CkZVGqblqnb1mma1amalfs4Nz+//+9kIam
+ ZVCoblqobVikZ1Kwemr49fb///////////////////////////////////////////////////8AAP//
+ //////////////////////////////////////////7///7///3///7+///+/v///u37/qTx/TWtvDlv
+ eKmxtsfIy8zS1urq6/z9/f3///////////////////////////////////////////7///7+//7/////
+ //z+/sX1/k3S4R5odICUmra1ucXIyuvr7f////////////////////r3+LF8bqVoUqhuWahuWalpVKds
+ V+fc2v////////////////////////////////////////////////7//v7+//7+/v///8efk6JkTqdt
+ WqhtV6ltWahsWKhrWadsWKZtWaJkTcSXiv/+///////+/v////////78+7iMfqJpUahuWqZqV6duWKho
+ VLOCc/Pp6f/////////////+//3+/v7///7+//////7//////v///9S2rqRmT6dsV6ltWKhtWaJkTMSe
+ kf////7///7+/v/+/////////////////////////////////////////////////8+xqqBiS6htWaht
+ WapuWqdsWKhsV6dsVqlsWKNmULiGePz6+/////3//////////////8KajaRjTaluWahuWahtV6VnUdi8
+ s////////v7+/v7+/v///93Fv6BmTahrWKhvWaZpVqttXPPr6f7//72RhqdlUKdtWaZsV6RnUbB7aPjy
+ 8v///////////////////////////////////////////////////wAA////////////////////////
+ /////////////////////v///v///////v/////////////+8Pv+nvT+Nqy6M3B8q7C3yMnJytDR6evt
+ //7+/////////////////////////////////////////////v///////v//////6fr+g+r5H4+bU3V+
+ rbG0tbu93dzf/Pz8/////////////////Pz8tIZ4pWdRqG5ZqW5aqGtWpWdS3s7I////////////////
+ /////////////////////////////////v/////+//7/////5tPNpGZQqXBaqG1Zp25ZqG1Ypm1Zp21Y
+ qW1Zo2VQ2cG6/////v//////////////+/b1s4BwpGZSqnBapmxZqW1YpWVP2sTA//////39/v7/////
+ /v/+/v///f///f////7+/v/////+////2L+6pGVQqG1Xp21YqG5YpWVNvpGC/////////v/+/v7//v//
+ /////////////////////////////////////v//////7N7cpGlUpmtVp25aqGxYqG1Zp2xWqG5Zp2xY
+ oWFM07as/////v///v/+////////////wpqNo2NNp21YqG1YqGxXpGRP2L61/////v/+/v7+/v//////
+ wZyOoGNNpmpWqG5Zp2pUr3dp/Pn5//7/vZCEpGVQqG5Zp2tXpGhRsHtp+PLy////////////////////
+ ////////////////////////////////AAD/////////////////////////////////////////////
+ ///9///+//////7////+///////////t+/6b8vwyrbsycHqqr7XMy8zO0dTn6er7/Pz/////////////
+ ///////////////////////+///+///+///+/v/////3/v+69P88uckvaHGYpaqztrnPz9Tz9PX/////
+ ///////////+///DoJOjZE2obViobFimblmgYUzXt6z////+////////////////////////////////
+ /////////////v/+/v7+///////39fSwe2umalSpbFinblmobFmpb1uobFimaVSrc2D17+7////+/v7+
+ /v7////////69vW0f3CnZFGpb1qoblqnbFehZlHeysX////+/v/9///9////////////////////////
+ ///+/v/////l2NeiZlSpbFinbFiobVmlaVOxemr69/b////+/v////////7/////////////////////
+ ///////////////////////8+/u5iXykZVCmb1qpbViobFiobFipb1qmalWqbVvr393////////+/v//
+ ///////////Cmo2kZE6obVmobFima1alYk3cxbz////+///////////n2NSmbFqmaVana1eobVmiZU29
+ mIz+///+/P69kYOlZU+pblqobVikZ1Kwe2r48/L/////////////////////////////////////////
+ //////////8AAP////////////////////////////////////////////////7///7///7+///+//7/
+ /v7//v///////uv6/5rw/DGwvytxf6SrsM3Mzs/R0uXm5vn5+v////////7//v////7///7/////////
+ ///////+//3///7+//////7//tr8/2zb7BxygHmLlLW1usDFyurr7f////////////7//////9i/tqBg
+ TKhsWahuWahvWqNnUbF9bfXw8P////////////////////j29uLV1Pbx8P/////////////+//7+/v7/
+ /v///////82nnp5jTKltWKdtWKdtWaluWalrWp9pULyShP/////////+/v////////////37+rWGe6Jl
+ T6hwW6psV6ZvWKRkUMGXivn6+f////////////////n4+Ord3vz6+v////////7+//////r3+K55aaRo
+ UqdsWKlsWKhuWaNkUNa7tf///////////////////////+zg3+nf4P////////////////3///////7/
+ /////9G0rZ9hTKdsWKdtWqhtWahsV6hvWqVmUbaGeP/7/P////////7///7//////////8KajaJkTqhu
+ WqhsWadsV6NjT8+zrP////////v4+NvIwah2ZKZnU6hyXKhtVqVsVqFfS+LKxf////v7/LuRhaZlUKdu
+ WadsWqVnUq97avv4+P///////////////////////////////////////////////////wAA////////
+ /////////////////////////////////////////////////////////v///v///v///f7+///+6vr/
+ nvL+RbzMKXeDi5+kzcrMys/P3+Dj9/b4//3+/////////f7+/f39/v7+/////////////v7+//////7+
+ ////6/3/juz6Jo2bWXmBsrS3ub/C4uTl/////////////v//////7+bmqG5do2hUqW1ZpW1YqG5ZpGlT
+ sYZ34MzI7+Tg7+Pi5NbTyKqhtH5woGJNwJiK/f7///////7/////////////////////5tbTpmlWqWtX
+ qW1ap21YqG1ZqGtZoWNM3MbA////////////////////////////yKujnmBJpW9aqGtYqGxYqG1Xo2dS
+ u4uA2Lq14MrD2cG7yqmgtINyomRPzq2l////////////////////yKeboGFKqm1bpGpWp21Zp2tWqW1b
+ y66m7N7c8Obi7ODc1728vJOIrHFdpW5e69/d/////v///v7//v/+/v////7/////8OXlpWxbqWxWqG5X
+ qG1aqG5ZqW1an2JL0bGn/////////v/////+/v///v///f//w5uOo2RPqG1ZqGxZqWxXqG1XqHJfvJGD
+ vJOGs4NwpWhTqGlUp25apmxZqXBcoV9KuY6C/fn6/v///Pz7vZGEomNOqW1Yp21Zp2pWqHFc2MC5693Y
+ 6NrT6NjV6NjV6NnV6NjU7uXg////////////////////////AAD/////////////////////////////
+ ///////////////////////////////////+///+//79/////v////7////1/f+w9v9Jydoieol7kJnH
+ yMrO0M/c3eHi8Pa26e/R4eX79fTw7fDv7/P5+vn+///////////////+/v7////3/f+s8/8zpbJAbHOo
+ sLO6vcHe3+H+/f3////////+/v7+//7////MraaeYUmqbVmobFmobVmqclqkZ1CiZVKnbVqmbFmiZlKh
+ Yk2lalKnaVSiZFHn2dX////+/v7////////////////////8+/uzgnGkZVCpblmpbFmnbFenZVGqc1/y
+ 6uj////////////////////////////r4d+jaVaoZ1KobVmobFinbViobFmhZk+iY02hZFCgY02eYUyl
+ Z1KhY0m4joH+///////+/v7////////u5+Wma1uraVOlb1qla1eobleoa1WhY02ma1enb1ymbFWlY1Ck
+ ZU+ka1WiYUrCnJD+/v/+///+/v/////+///8/v////////66jHyjZE6obVmobVupbFiobFelaFTt39v/
+ /////v/+///+//79/////////v/Em46kZE2obVipbVmpbFinbFila1WhZk+fYk2laFKpa1aoalilbVio
+ blmiX0muemrv6uj////////9+/28kIOiZU+pbFipbVmmbVmqbFijZU+kZVKjZlGjZ1KkZ1KkaFKiZ1Gj
+ alXo2NT///////////////////8AAP//////////////////////////////////////////////////
+ //////////////7///7//////v7///3//////////vb9/bz2/mbV5iCHlWeLlcTBxNLO0s7i5Ynp8jar
+ tn+jrdDQ09/c3t/h5PDx8vz9/v////////7//////////r73/jmvvDdlcKStsry9wd7g4f3+/v//////
+ //7+/v/+//////n29baJfJ9fSKZsV6hrWqZuWaVvWahsWKdqVqdrVqxtWatwXKZuWadtW6NhTLyUh///
+ /////////////////////////////8ytpaFiTKpvWadsWKhuWaNlTb2Xiv7+/v////7/////////////
+ ///////////+/8+yq59eSahsVqhuWqhtWahsWqduWqhuV6tsWqlsWaltWattWaNjTbyPf///////////
+ /////////////9nCvZ5jT6hnUaptWqZsWahuWalvWaZsValrVqpsWKdtWahsV6huWKdrVaNoVOrc2v7/
+ //7//v7+//7//v7//v7+/////9u/uqFiTqltWahuWKhuWaNmULeGd/v4+P////////////7///3//f//
+ //3+/8SYjKRjTqduWadtWaltWqdtWKdtWKlsWqpvWqhvWahwW6ZuWKVnUaJhTLWKfPDl4v////3+////
+ //38/ruOgaVmT6luWqluWKhuV6htWqRuV6pvWqZsWKdtWKltWaltWahvWZ5gScaimP//////////////
+ /////wAA/////////////////////////////////////////////////////////////////////f7/
+ /v///v/+/v///////f/+///+/v7+1Pf/e+TzLKa0PoWPlaarz8rLzd3khuTyLbLCQpSgprW41M3Q4drb
+ 5+jo8/T1/Pv8//7+//7++fz8uPX/NqKwQGt1rrS4xMPG5eXn/////////v///v7//v7+/v7/////8+3s
+ w5eNn2NLpGROqWhTqGtYpWxXpmxXp21XqG5ZqG9aqGpUomVOnWFJxKSZ/v///v/+////////////////
+ ////////7+HfoWNOn2JMo2dTpmtVnWBK2MC8/////v7+/v/+/////////////////v/+////////z7Gm
+ nmZQoGBKp2hSpmtVq2xZqG1ap21YqW1YpWdSomVPmlpCyqmh/////////v7+////////////////2cS7
+ p3BdoGFKoWdRp2pYqGxXp25ZqWxXp2xXpGxXqGxWo2lSn2BJrHZn7eLe/////f/+/f7//v////7+/v7+
+ ////8ennpW5bnWBJpmhQp2pVn1xIz7Oq/////////v///v////////7+/f///v//x6SZmVlBpWVOo2ZQ
+ pGZRo2RPo2hRomNNoWVPo2NNoWFLpGhRtIV21722+/v6/////////f7+/v/+//7/yaadm1pCpmVRpWZS
+ pWdUpWZRpGVQo2ZRpGZRo2ZRo2VPpGZQomVQoGFLrnpq/Pr7////////////////AAD/////////////
+ ///////////////////////////////////////////////////////+/////v/+///////+/v///v//
+ //////////7k+f6e8fxLxtgnjJxplp25uLvLztKn3+tQ0+EwscNborCjuLvX0tLl3t/s5+jz7O3y6+zU
+ 8fh16fYlf4xviI+9wMHPz9Hy8fL////+///+/////v////7+/v7+///////9/f3hyMK8j4CpcF6jZVCj
+ ZU+iZE+hZU+iY02kZVGrdWS+mIzn1dD9/Pv////+///////////////////////////9/v3Vvbe6j4G1
+ f3ClbFqsfm317+7////9//7+///////////////////+///+/v7////////q2dTCnJCud2ejaFKiZU6j
+ ZU+hZlGgZVCkZlSve2rKsKb49vX////////////////////+//7+//7////w5+PHpZmvfWqiaFWiZVCh
+ ZE+hZVCjZVCiZFGpbFi1hnfStK327uz////9///+/////v7+///+//7+/v////7+///dxsG7kISwf26m
+ blqreGft5eL////+/v/+/v7+/////////v/+//7////07OjFnJC2h3u3iXu4iXm4hnm5h3i5iHm5joLE
+ m5HUtq7p2dX59/f////////+/v///v////7+/v/////48/HEo5exf22zgm60gnCzgm+1gW+0gXC0gXC1
+ gW+0gXC0gW+zgG2wfGrGopf9/fz///////////////8AAP//////////////////////////////////
+ //////////////////////////////////////////////////////////////////////////b9/771
+ /mzg8SywwjeapoCkrLWzusTR1ZHf607R4iy4yl+7yoDDy6DJ0qDQ253f6Hzo+CyvwThwe7CzusvMzeHk
+ 5vz+/f////////////////////////////////////////7//+/l5N/KxNrAuda4stK3sNq/uOLMyPLt
+ 7P////////////////////////////////////////7///7///////////z4+Ozh4fTv7v////7+/v//
+ //////////////////////////////////////////////bx8OXSzd3EvdrAudi/udvDvOLPzfj19f//
+ //////////////////////////////7+/v////////////j19uPS0N3Dvda6s9Gzrte6tt3FwOra2f79
+ /P////////////////////////////////////////////////////r49+7i4fLr6f//////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////37+vv4+Pz4+Pz4+Pv39/z39/v29vz49/z39/v39vv29vv39v//
+ //7//////////////////wAA////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////795fr/p/D8X9rqJr/PMJup
+ cY6Wvb2/xtbcoOHqbN7sRNPmMdHkPNfrIdbnKLbFTJagrbi91tTY4OLl9/j4////////////////////
+ /////////////////v///v7//v///////////////////////////////////v///f///v//////////
+ /////////////////v///f7+//7+/v///////////////////v7//////////v//////////////////
+ /////////////////////v/////////////////////////////////////+/v//////////////////
+ /////////////////v7+/////////////////////////////////////////v///v//////////////
+ /////////////////////////////////////////////v/+////////////////////////////////
+ /////////////////////////////v///////////////////////////////////////////v//////
+ /v///v///v///////////////////////////////////////////////v///v//////////////////
+ AAD/////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////v////7////f+f6Q7vw60eEWdoSVq7Di3d/v5uXu8/XZ
+ 8/i87/aa5/Nyz92VxMrZ29zp5ebr7e77+/v////////+/v7////////////////////////////+//7+
+ /v7+/v///v/+///+//7////////+///+/////v/+//7////////////////////////////////////+
+ /////v7////+///9///////+///+///////9/v7+//7/////////////////////////////////////
+ ///+///////+/////v/////////+///////////+///////////////////////////+/v7+/v7/////
+ ///+/v/+/v/+//7////////+///////////+///+///////////////////////////////////////+
+ /v7////+/v///v/9//7+/v/+/f//////////////////////////////////////////////////////
+ ///////+///+///////////////+/v7////////////////////////////////+///+///////////+
+ /v7////////////////////////////////9///9/v7///////////////8AAP//////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ///////////+//7+/////////v////z8/d73+8Lj6ODn6vf09v79/v///f/////////9/P/6+v/7+vv6
+ +vr8/P////////7+/v////////////////////////////////////7///7///7+///+/v7//v3+//z+
+ //7//v7///3///7///////////7+/v3///7+/v////////////////////////7///z+/v7///7+/v7/
+ //////7+/v/+/v7+/v////////////////////////////////////////7///7///7+//////7+/v3/
+ //7//v7+//7///7////////////////////////////////////////////////+///+//7//v////7+
+ /v7+/v7//v///v/////////+//////////////////////////////////////////3//v7///7+//3+
+ /v////////////////////////7+/v////////////////////////////////////7///7/////////
+ ///////////////////////////////+//////7///3///7///7///7/////////////////////////
+ ///////////+//////7//////////////////wAA////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////7//f7+/v/+
+ /v7//v/+///+/////////////v/+/v/////+/v/////+//7//////////////v///f/////+////////
+ /////////////////////////////////////v///v///////////v///v7+/v///v////7/////////
+ /////v///////////////////////////////v///f///v7//v///v7+/////v7+/v///////v/+/v//
+ /////////////////////////////////////////////v7+/////////v///////v7+/////////v//
+ /////////////////////v///v7+/////////////////v7+/v7+/v///v///////v7+////////////
+ /////////////////////////////////////////////f///P/+//7+/v///v//////////////////
+ /////////////////////////////////////////////////////////////v//////////////////
+ /////////v///////////////v///v///////////////////////////////////////v///v//////
+ ////////////////AAD/////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////////////////////8AAP//
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////wAA////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////AAD/////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////8AAP//////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////wAA////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////AAD/////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////8AAP//////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////wAA////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////AAD/////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////8AAP//////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////wAA////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ AAD/////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ //////////////////////////////////////////////////////////8AAP//////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////wAA////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////////////////////////////////////////////////////////////////////
+ ////////////////AAA=
+</value>
+ </data>
+ <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>
+ AAABAAEAMDAAAAAAAACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAgAoAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAMDcwADwyqYABAQEAAgICAAMDAwAERERABYW
+ FgAcHBwAIiIiACkpKQBVVVUATU1NAEJCQgA5OTkAgHz/AFBQ/wCTANYA/+zMAMbW7wDW5+cAkKmtAAAA
+ MwAAAGYAAACZAAAAzAAAMwAAADMzAAAzZgAAM5kAADPMAAAz/wAAZgAAAGYzAABmZgAAZpkAAGbMAABm
+ /wAAmQAAAJkzAACZZgAAmZkAAJnMAACZ/wAAzAAAAMwzAADMZgAAzJkAAMzMAADM/wAA/2YAAP+ZAAD/
+ zAAzAAAAMwAzADMAZgAzAJkAMwDMADMA/wAzMwAAMzMzADMzZgAzM5kAMzPMADMz/wAzZgAAM2YzADNm
+ ZgAzZpkAM2bMADNm/wAzmQAAM5kzADOZZgAzmZkAM5nMADOZ/wAzzAAAM8wzADPMZgAzzJkAM8zMADPM
+ /wAz/zMAM/9mADP/mQAz/8wAM///AGYAAABmADMAZgBmAGYAmQBmAMwAZgD/AGYzAABmMzMAZjNmAGYz
+ mQBmM8wAZjP/AGZmAABmZjMAZmZmAGZmmQBmZswAZpkAAGaZMwBmmWYAZpmZAGaZzABmmf8AZswAAGbM
+ MwBmzJkAZszMAGbM/wBm/wAAZv8zAGb/mQBm/8wAzAD/AP8AzACZmQAAmTOZAJkAmQCZAMwAmQAAAJkz
+ MwCZAGYAmTPMAJkA/wCZZgAAmWYzAJkzZgCZZpkAmWbMAJkz/wCZmTMAmZlmAJmZmQCZmcwAmZn/AJnM
+ AACZzDMAZsxmAJnMmQCZzMwAmcz/AJn/AACZ/zMAmcxmAJn/mQCZ/8wAmf//AMwAAACZADMAzABmAMwA
+ mQDMAMwAmTMAAMwzMwDMM2YAzDOZAMwzzADMM/8AzGYAAMxmMwCZZmYAzGaZAMxmzACZZv8AzJkAAMyZ
+ MwDMmWYAzJmZAMyZzADMmf8AzMwAAMzMMwDMzGYAzMyZAMzMzADMzP8AzP8AAMz/MwCZ/2YAzP+ZAMz/
+ zADM//8AzAAzAP8AZgD/AJkAzDMAAP8zMwD/M2YA/zOZAP8zzAD/M/8A/2YAAP9mMwDMZmYA/2aZAP9m
+ zADMZv8A/5kAAP+ZMwD/mWYA/5mZAP+ZzAD/mf8A/8wAAP/MMwD/zGYA/8yZAP/MzAD/zP8A//8zAMz/
+ ZgD//5kA///MAGZm/wBm/2YAZv//AP9mZgD/Zv8A//9mACEApQBfX18Ad3d3AIaGhgCWlpYAy8vLALKy
+ sgDX19cA3d3dAOPj4wDq6uoA8fHxAPj4+ADw+/8ApKCgAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
+ AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMT
+ ExMTExMTEyIiQiI8HTyCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwDODg4Nzc4MQMdAAAA
+ AADDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOw4ODgyOCQAAAAdAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODIyMSIAHewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAA7DI3MSIdCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAADEyMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs4JAALAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwxJAAhAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4IgC8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAJAxJB0LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ ALwLCx0dIh0dCwATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACx0dAB0dIiIiIiId
+ CxMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvAsdAB0dIiQkAyQkIiIiHSIAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAIgMxMVhZmZqZAyQiHR0AAAAAkAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAvAsdISIDMThZWVmgvaCZWVIkIh0AAB0dIh0hCwALCwALtgAAAAAAAAAAAAAAAOwAAB0iMTEx
+ ODhYWZrDw8Ofn1hSJCIAHQAdACIAHSIkAwsdOAAAAADeExMTCwsLIiIkMTEyODg3MllZmprDw8PDwllS
+ MSQdHQAAAB0AIiQkAAAAvDi8AAAxAzExMTExMTI4Nzg4ODc4ODhZXpnDw8PDml1YNwMkIh0AAB0hIiQA
+ AAAAACIAAAA4ODc4Nzg4ODg4ODg4ODg4ODhZWV6avb2gmllZODcxJCIAAAAdIgMLAAAAACIAAACGE0+G
+ T4bs7Oy8vLy8vAAxODg4ODg4NzIyMSQdHQAAvADsCwAiJDExAAAAwjjsAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAALMSQAAAAAAAAAAAAAAAAAEyI4MQsiOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALMSQAAAAA
+ AAAAAAAAAAAAAAC8CwsAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8AAsAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP///////wAA////////
+ AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA//8AAH//AAD//wAAf/8AAP//4AP//wAA///4B///AAD///gP//8AAP///B///wAA///8H///
+ AAD///wf//8AAP///h///wAA///8H///AAD//+AD//8AAP//wAD//wAA//4AAD//AAD//AAAB/8AAP/w
+ AAAAAwAA/8AAAAABAADAAAAAADgAAMAAAAAAPAAAwAAAAAA8AADAAAAAIDgAAP///j/+AQAA///+P/+D
+ AAD///4///8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA
+</value>
+ </data>
+</root>
\ No newline at end of file
--- /dev/null
+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("")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("")]
+[assembly: AssemblyCopyright("")]
+[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:
+
+[assembly: AssemblyVersion("1.0.*")]
+
+//
+// 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\<configuration>. 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.
+//
+[assembly: AssemblyDelaySign(false)]
+[assembly: AssemblyKeyFile("")]
+[assembly: AssemblyKeyName("")]
--- /dev/null
+using System;
+using System.Drawing;
+using System.Collections;
+using System.ComponentModel;
+using System.Windows.Forms;
+using System.Data;
+
+namespace IE_WinForms
+{
+ /// <summary>
+ /// Summary description for Form1.
+ /// </summary>
+ public class Form1 : System.Windows.Forms.Form
+ {
+ private System.Windows.Forms.MainMenu mainMenu1;
+ private System.Windows.Forms.MenuItem FileNew;
+ private System.Windows.Forms.MenuItem FileClose;
+ private System.Windows.Forms.MenuItem FileExport;
+ private System.Windows.Forms.MenuItem FileImport;
+ private System.Windows.Forms.MenuItem ImportBRep;
+ private System.Windows.Forms.MenuItem ExportImage;
+ private System.Windows.Forms.MenuItem File;
+ private System.Windows.Forms.MenuItem Window;
+ private System.Windows.Forms.ToolBarButton New;
+ private System.Windows.Forms.ImageList imageList1;
+ private System.Windows.Forms.ToolBarButton About;
+ private System.Windows.Forms.StatusBar myStatusBar;
+ private System.Windows.Forms.MenuItem ImportIges;
+ private System.Windows.Forms.MenuItem ImportStep;
+ private System.Windows.Forms.MenuItem ExportBRep;
+ private System.Windows.Forms.MenuItem ExportIges;
+ private System.Windows.Forms.MenuItem ExportStep;
+ private System.Windows.Forms.MenuItem ExportStl;
+ private System.Windows.Forms.MenuItem ExportVrml;
+ private System.ComponentModel.IContainer components;
+ private System.Windows.Forms.MenuItem menuItem1;
+ private System.Windows.Forms.MenuItem menuItem2;
+ private System.Windows.Forms.MenuItem menuItem3;
+ private System.Windows.Forms.MenuItem View;
+ private System.Windows.Forms.MenuItem Help;
+ private System.Windows.Forms.MenuItem HelpAbout;
+ private System.Windows.Forms.MenuItem ViewToolbar;
+ private System.Windows.Forms.MenuItem ViewStatusBar;
+ private System.Windows.Forms.MenuItem menuItem4;
+ private System.Windows.Forms.MenuItem WindowCascade;
+ private System.Windows.Forms.MenuItem WindowTile;
+
+ protected IE_WinForms.ModelFormat myModelFormat;
+ private System.Windows.Forms.ToolBarButton wireframe;
+ private System.Windows.Forms.ToolBarButton shading;
+ private System.Windows.Forms.ToolBarButton toolBarButton1;
+ private System.Windows.Forms.ToolBarButton color;
+ private System.Windows.Forms.ToolBarButton transparency;
+ private System.Windows.Forms.ToolBarButton delete;
+ private System.Windows.Forms.ToolBarButton material;
+ private System.Windows.Forms.ToolBarButton ZoomAll;
+ private System.Windows.Forms.ToolBarButton ZoomWin;
+ private System.Windows.Forms.ToolBarButton ZoomProg;
+ private System.Windows.Forms.ToolBarButton Pan;
+ private System.Windows.Forms.ToolBarButton PanGlo;
+ private System.Windows.Forms.ToolBarButton Front;
+ private System.Windows.Forms.ToolBarButton Back;
+ private System.Windows.Forms.ToolBarButton TOP;
+ private System.Windows.Forms.ToolBarButton BOTTOM;
+ private System.Windows.Forms.ToolBarButton RIGHT;
+ private System.Windows.Forms.ToolBarButton LEFT;
+ private System.Windows.Forms.ToolBarButton Axo;
+ private System.Windows.Forms.ToolBarButton Rot;
+ private System.Windows.Forms.ToolBarButton Reset;
+ private System.Windows.Forms.ToolBarButton HlrOn;
+ private System.Windows.Forms.ToolBarButton HlrOff;
+ private System.Windows.Forms.ToolBar toolBarTool;
+ private System.Windows.Forms.ToolBar toolBarView;
+ protected static int myNbOfChildren;
+
+ public Form1()
+ {
+ //
+ // Required for Windows Form Designer support
+ //
+ InitializeComponent();
+
+ //
+ IE_WinForms.Form1.myNbOfChildren = 0;
+ }
+
+ /// <summary>
+ /// Clean up any resources being used.
+ /// </summary>
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing)
+ {
+ if (components != null)
+ {
+ components.Dispose();
+ }
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+ /// <summary>
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ /// </summary>
+ private void InitializeComponent()
+ {
+ this.components = new System.ComponentModel.Container();
+ System.Configuration.AppSettingsReader configurationAppSettings = new System.Configuration.AppSettingsReader();
+ System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(Form1));
+ this.mainMenu1 = new System.Windows.Forms.MainMenu();
+ this.File = new System.Windows.Forms.MenuItem();
+ this.FileNew = new System.Windows.Forms.MenuItem();
+ this.FileExport = new System.Windows.Forms.MenuItem();
+ this.ImportBRep = new System.Windows.Forms.MenuItem();
+ this.ImportIges = new System.Windows.Forms.MenuItem();
+ this.ImportStep = new System.Windows.Forms.MenuItem();
+ this.FileImport = new System.Windows.Forms.MenuItem();
+ this.ExportBRep = new System.Windows.Forms.MenuItem();
+ this.ExportIges = new System.Windows.Forms.MenuItem();
+ this.ExportStep = new System.Windows.Forms.MenuItem();
+ this.ExportStl = new System.Windows.Forms.MenuItem();
+ this.ExportVrml = new System.Windows.Forms.MenuItem();
+ this.menuItem3 = new System.Windows.Forms.MenuItem();
+ this.ExportImage = new System.Windows.Forms.MenuItem();
+ this.FileClose = new System.Windows.Forms.MenuItem();
+ this.menuItem2 = new System.Windows.Forms.MenuItem();
+ this.menuItem1 = new System.Windows.Forms.MenuItem();
+ this.View = new System.Windows.Forms.MenuItem();
+ this.ViewToolbar = new System.Windows.Forms.MenuItem();
+ this.ViewStatusBar = new System.Windows.Forms.MenuItem();
+ this.Window = new System.Windows.Forms.MenuItem();
+ this.menuItem4 = new System.Windows.Forms.MenuItem();
+ this.WindowCascade = new System.Windows.Forms.MenuItem();
+ this.WindowTile = new System.Windows.Forms.MenuItem();
+ this.Help = new System.Windows.Forms.MenuItem();
+ this.HelpAbout = new System.Windows.Forms.MenuItem();
+ this.toolBarTool = new System.Windows.Forms.ToolBar();
+ this.New = new System.Windows.Forms.ToolBarButton();
+ this.About = new System.Windows.Forms.ToolBarButton();
+ this.toolBarButton1 = new System.Windows.Forms.ToolBarButton();
+ this.wireframe = new System.Windows.Forms.ToolBarButton();
+ this.shading = new System.Windows.Forms.ToolBarButton();
+ this.color = new System.Windows.Forms.ToolBarButton();
+ this.material = new System.Windows.Forms.ToolBarButton();
+ this.transparency = new System.Windows.Forms.ToolBarButton();
+ this.delete = new System.Windows.Forms.ToolBarButton();
+ this.imageList1 = new System.Windows.Forms.ImageList(this.components);
+ this.myStatusBar = new System.Windows.Forms.StatusBar();
+ this.toolBarView = new System.Windows.Forms.ToolBar();
+ this.ZoomAll = new System.Windows.Forms.ToolBarButton();
+ this.ZoomWin = new System.Windows.Forms.ToolBarButton();
+ this.ZoomProg = new System.Windows.Forms.ToolBarButton();
+ this.Pan = new System.Windows.Forms.ToolBarButton();
+ this.PanGlo = new System.Windows.Forms.ToolBarButton();
+ this.Front = new System.Windows.Forms.ToolBarButton();
+ this.Back = new System.Windows.Forms.ToolBarButton();
+ this.TOP = new System.Windows.Forms.ToolBarButton();
+ this.BOTTOM = new System.Windows.Forms.ToolBarButton();
+ this.LEFT = new System.Windows.Forms.ToolBarButton();
+ this.RIGHT = new System.Windows.Forms.ToolBarButton();
+ this.Axo = new System.Windows.Forms.ToolBarButton();
+ this.Rot = new System.Windows.Forms.ToolBarButton();
+ this.Reset = new System.Windows.Forms.ToolBarButton();
+ this.HlrOn = new System.Windows.Forms.ToolBarButton();
+ this.HlrOff = new System.Windows.Forms.ToolBarButton();
+ this.SuspendLayout();
+ //
+ // mainMenu1
+ //
+ this.mainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.File,
+ this.View,
+ this.Window,
+ this.Help});
+ //
+ // File
+ //
+ this.File.Index = 0;
+ this.File.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.FileNew,
+ this.FileExport,
+ this.FileImport,
+ this.FileClose,
+ this.menuItem2,
+ this.menuItem1});
+ this.File.Text = "&File";
+ this.File.Popup += new System.EventHandler(this.File_Popup);
+ //
+ // FileNew
+ //
+ this.FileNew.Index = 0;
+ this.FileNew.Text = "&New";
+ this.FileNew.Click += new System.EventHandler(this.menuItem2_Click);
+ //
+ // FileExport
+ //
+ this.FileExport.Index = 1;
+ this.FileExport.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.ImportBRep,
+ this.ImportIges,
+ this.ImportStep});
+ this.FileExport.Text = "&Import";
+ this.FileExport.Visible = false;
+ //
+ // ImportBRep
+ //
+ this.ImportBRep.Index = 0;
+ this.ImportBRep.Text = "&BRep ...";
+ this.ImportBRep.Click += new System.EventHandler(this.ImportBRep_Click);
+ //
+ // ImportIges
+ //
+ this.ImportIges.Index = 1;
+ this.ImportIges.Text = "&Iges ...";
+ this.ImportIges.Click += new System.EventHandler(this.ImportIges_Click);
+ //
+ // ImportStep
+ //
+ this.ImportStep.Index = 2;
+ this.ImportStep.Text = "&Step ...";
+ this.ImportStep.Click += new System.EventHandler(this.ImportStep_Click);
+ //
+ // FileImport
+ //
+ this.FileImport.Index = 2;
+ this.FileImport.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.ExportBRep,
+ this.ExportIges,
+ this.ExportStep,
+ this.ExportStl,
+ this.ExportVrml,
+ this.menuItem3,
+ this.ExportImage});
+ this.FileImport.Text = "&Export";
+ this.FileImport.Visible = false;
+ this.FileImport.Popup += new System.EventHandler(this.FileImport_Popup);
+ //
+ // ExportBRep
+ //
+ this.ExportBRep.Enabled = false;
+ this.ExportBRep.Index = 0;
+ this.ExportBRep.Text = "&BRep ...";
+ this.ExportBRep.Click += new System.EventHandler(this.ExportBRep_Click);
+ //
+ // ExportIges
+ //
+ this.ExportIges.Enabled = false;
+ this.ExportIges.Index = 1;
+ this.ExportIges.Text = "&Iges ...";
+ this.ExportIges.Click += new System.EventHandler(this.ExportIges_Click);
+ //
+ // ExportStep
+ //
+ this.ExportStep.Enabled = false;
+ this.ExportStep.Index = 2;
+ this.ExportStep.Text = "&Step ...";
+ this.ExportStep.Click += new System.EventHandler(this.ExportStep_Click);
+ //
+ // ExportStl
+ //
+ this.ExportStl.Enabled = false;
+ this.ExportStl.Index = 3;
+ this.ExportStl.Text = "&Stl ...";
+ this.ExportStl.Click += new System.EventHandler(this.ExportStl_Click);
+ //
+ // ExportVrml
+ //
+ this.ExportVrml.Enabled = false;
+ this.ExportVrml.Index = 4;
+ this.ExportVrml.Text = "&Vrml ...";
+ this.ExportVrml.Click += new System.EventHandler(this.ExportVrml_Click);
+ //
+ // menuItem3
+ //
+ this.menuItem3.Index = 5;
+ this.menuItem3.Text = "-";
+ //
+ // ExportImage
+ //
+ this.ExportImage.Index = 6;
+ this.ExportImage.Text = "Image ...";
+ this.ExportImage.Click += new System.EventHandler(this.ExportImage_Click);
+ //
+ // FileClose
+ //
+ this.FileClose.Enabled = false;
+ this.FileClose.Index = 3;
+ this.FileClose.Text = "&Close";
+ this.FileClose.Click += new System.EventHandler(this.menuItem3_Click);
+ //
+ // menuItem2
+ //
+ this.menuItem2.Index = 4;
+ this.menuItem2.Text = "-";
+ //
+ // menuItem1
+ //
+ this.menuItem1.Index = 5;
+ this.menuItem1.Text = "&Quit";
+ this.menuItem1.Click += new System.EventHandler(this.menuItem1_Click);
+ //
+ // View
+ //
+ this.View.Index = 1;
+ this.View.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.ViewToolbar,
+ this.ViewStatusBar});
+ this.View.Text = "&View";
+ //
+ // ViewToolbar
+ //
+ this.ViewToolbar.Checked = true;
+ this.ViewToolbar.Index = 0;
+ this.ViewToolbar.Text = "&Toolbar";
+ this.ViewToolbar.Click += new System.EventHandler(this.ViewToolbar_Click);
+ //
+ // ViewStatusBar
+ //
+ this.ViewStatusBar.Checked = true;
+ this.ViewStatusBar.Index = 1;
+ this.ViewStatusBar.Text = "&Statusbar";
+ this.ViewStatusBar.Click += new System.EventHandler(this.ViewStatusBar_Click);
+ //
+ // Window
+ //
+ this.Window.Index = 2;
+ this.Window.MdiList = true;
+ this.Window.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.menuItem4,
+ this.WindowCascade,
+ this.WindowTile});
+ this.Window.Text = "&Window";
+ this.Window.Visible = false;
+ //
+ // menuItem4
+ //
+ this.menuItem4.Index = 0;
+ this.menuItem4.Text = "&New 3d View";
+ this.menuItem4.Click += new System.EventHandler(this.menuItem4_Click);
+ //
+ // WindowCascade
+ //
+ this.WindowCascade.Index = 1;
+ this.WindowCascade.Text = "&Cascade";
+ this.WindowCascade.Click += new System.EventHandler(this.WindowCascade_Click);
+ //
+ // WindowTile
+ //
+ this.WindowTile.Index = 2;
+ this.WindowTile.Text = "&Tile";
+ this.WindowTile.Click += new System.EventHandler(this.WindowTile_Click);
+ //
+ // Help
+ //
+ this.Help.Index = 3;
+ this.Help.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.HelpAbout});
+ this.Help.Text = "&Help";
+ //
+ // HelpAbout
+ //
+ this.HelpAbout.Index = 0;
+ this.HelpAbout.Shortcut = System.Windows.Forms.Shortcut.F1;
+ this.HelpAbout.Text = "&About";
+ this.HelpAbout.Click += new System.EventHandler(this.HelpAbout_Click);
+ //
+ // toolBarTool
+ //
+ this.toolBarTool.AccessibleRole = System.Windows.Forms.AccessibleRole.ToolBar;
+ this.toolBarTool.Buttons.AddRange(new System.Windows.Forms.ToolBarButton[] {
+ this.New,
+ this.About,
+ this.toolBarButton1,
+ this.wireframe,
+ this.shading,
+ this.color,
+ this.material,
+ this.transparency,
+ this.delete});
+ this.toolBarTool.DropDownArrows = true;
+ this.toolBarTool.ImageList = this.imageList1;
+ this.toolBarTool.Location = new System.Drawing.Point(0, 0);
+ this.toolBarTool.Name = "toolBarTool";
+ this.toolBarTool.ShowToolTips = true;
+ this.toolBarTool.Size = new System.Drawing.Size(560, 28);
+ this.toolBarTool.TabIndex = 1;
+ this.toolBarTool.Enter += new System.EventHandler(this.menuItem3_Click);
+ this.toolBarTool.ButtonClick += new System.Windows.Forms.ToolBarButtonClickEventHandler(this.toolBar1_ButtonClick);
+ this.toolBarTool.MouseHover += new System.EventHandler(this.toolBar1_MouseHover);
+ this.toolBarTool.MouseLeave += new System.EventHandler(this.toolBar1_MouseLeave);
+ //
+ // New
+ //
+ this.New.ImageIndex = 0;
+ this.New.ToolTipText = "New";
+ this.New.Visible = ((bool)(configurationAppSettings.GetValue("New.Visible", typeof(bool))));
+ //
+ // About
+ //
+ this.About.ImageIndex = 1;
+ this.About.ToolTipText = "About(F1)";
+ this.About.Visible = ((bool)(configurationAppSettings.GetValue("About.Visible", typeof(bool))));
+ //
+ // toolBarButton1
+ //
+ this.toolBarButton1.Style = System.Windows.Forms.ToolBarButtonStyle.Separator;
+ //
+ // wireframe
+ //
+ this.wireframe.Enabled = ((bool)(configurationAppSettings.GetValue("wireframe.Enabled", typeof(bool))));
+ this.wireframe.ImageIndex = 2;
+ this.wireframe.Pushed = ((bool)(configurationAppSettings.GetValue("wireframe.Pushed", typeof(bool))));
+ this.wireframe.ToolTipText = "Wireframe";
+ this.wireframe.Visible = ((bool)(configurationAppSettings.GetValue("wireframe.Visible", typeof(bool))));
+ //
+ // shading
+ //
+ this.shading.Enabled = ((bool)(configurationAppSettings.GetValue("shading.Enabled", typeof(bool))));
+ this.shading.ImageIndex = 3;
+ this.shading.Pushed = ((bool)(configurationAppSettings.GetValue("shading.Pushed", typeof(bool))));
+ this.shading.ToolTipText = "Shading";
+ this.shading.Visible = ((bool)(configurationAppSettings.GetValue("shading.Visible", typeof(bool))));
+ //
+ // color
+ //
+ this.color.Enabled = ((bool)(configurationAppSettings.GetValue("color.Enabled", typeof(bool))));
+ this.color.ImageIndex = 4;
+ this.color.ToolTipText = "Color";
+ this.color.Visible = ((bool)(configurationAppSettings.GetValue("color.Visible", typeof(bool))));
+ //
+ // material
+ //
+ this.material.Enabled = ((bool)(configurationAppSettings.GetValue("material.Enabled", typeof(bool))));
+ this.material.ImageIndex = 5;
+ this.material.ToolTipText = "Material";
+ this.material.Visible = ((bool)(configurationAppSettings.GetValue("material.Visible", typeof(bool))));
+ //
+ // transparency
+ //
+ this.transparency.Enabled = ((bool)(configurationAppSettings.GetValue("transparency.Enabled", typeof(bool))));
+ this.transparency.ImageIndex = 6;
+ this.transparency.ToolTipText = "Transparency";
+ this.transparency.Visible = ((bool)(configurationAppSettings.GetValue("transparency.Visible", typeof(bool))));
+ //
+ // delete
+ //
+ this.delete.Enabled = ((bool)(configurationAppSettings.GetValue("delete.Enabled", typeof(bool))));
+ this.delete.ImageIndex = 7;
+ this.delete.ToolTipText = "Delete";
+ this.delete.Visible = ((bool)(configurationAppSettings.GetValue("delete.Visible", typeof(bool))));
+ //
+ // imageList1
+ //
+ this.imageList1.ImageSize = new System.Drawing.Size(16, 16);
+ this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
+ this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
+ //
+ // myStatusBar
+ //
+ this.myStatusBar.AccessibleRole = System.Windows.Forms.AccessibleRole.StatusBar;
+ this.myStatusBar.Location = new System.Drawing.Point(0, 363);
+ this.myStatusBar.Name = "myStatusBar";
+ this.myStatusBar.Size = new System.Drawing.Size(560, 22);
+ this.myStatusBar.TabIndex = 3;
+ //
+ // toolBarView
+ //
+ this.toolBarView.AccessibleRole = System.Windows.Forms.AccessibleRole.ToolBar;
+ this.toolBarView.Buttons.AddRange(new System.Windows.Forms.ToolBarButton[] {
+ this.ZoomAll,
+ this.ZoomWin,
+ this.ZoomProg,
+ this.Pan,
+ this.PanGlo,
+ this.Front,
+ this.Back,
+ this.TOP,
+ this.BOTTOM,
+ this.LEFT,
+ this.RIGHT,
+ this.Axo,
+ this.Rot,
+ this.Reset,
+ this.HlrOn,
+ this.HlrOff});
+ this.toolBarView.DropDownArrows = true;
+ this.toolBarView.ImageList = this.imageList1;
+ this.toolBarView.Location = new System.Drawing.Point(0, 28);
+ this.toolBarView.Name = "toolBarView";
+ this.toolBarView.ShowToolTips = true;
+ this.toolBarView.Size = new System.Drawing.Size(560, 28);
+ this.toolBarView.TabIndex = 5;
+ this.toolBarView.Visible = false;
+ this.toolBarView.Wrappable = false;
+ this.toolBarView.ButtonClick += new System.Windows.Forms.ToolBarButtonClickEventHandler(this.toolBarView_ButtonClick);
+ this.toolBarView.MouseHover += new System.EventHandler(this.toolBarView_MouseHover);
+ this.toolBarView.MouseLeave += new System.EventHandler(this.toolBarView_MouseLeave);
+ //
+ // ZoomAll
+ //
+ this.ZoomAll.ImageIndex = 8;
+ this.ZoomAll.ToolTipText = "FitAll";
+ //
+ // ZoomWin
+ //
+ this.ZoomWin.ImageIndex = 9;
+ this.ZoomWin.ToolTipText = "Zoom Window";
+ //
+ // ZoomProg
+ //
+ this.ZoomProg.ImageIndex = 10;
+ this.ZoomProg.ToolTipText = "Dynamic Zooming";
+ //
+ // Pan
+ //
+ this.Pan.ImageIndex = 11;
+ this.Pan.ToolTipText = "Dynamic Panning";
+ //
+ // PanGlo
+ //
+ this.PanGlo.ImageIndex = 12;
+ this.PanGlo.ToolTipText = "GlobalPanning";
+ //
+ // Front
+ //
+ this.Front.ImageIndex = 13;
+ this.Front.ToolTipText = "Front";
+ //
+ // Back
+ //
+ this.Back.ImageIndex = 14;
+ this.Back.ToolTipText = "Back";
+ //
+ // TOP
+ //
+ this.TOP.ImageIndex = 15;
+ this.TOP.ToolTipText = "Top";
+ //
+ // BOTTOM
+ //
+ this.BOTTOM.ImageIndex = 16;
+ this.BOTTOM.ToolTipText = "Bottom";
+ //
+ // LEFT
+ //
+ this.LEFT.ImageIndex = 17;
+ this.LEFT.ToolTipText = "Left";
+ //
+ // RIGHT
+ //
+ this.RIGHT.ImageIndex = 18;
+ this.RIGHT.ToolTipText = "Right";
+ //
+ // Axo
+ //
+ this.Axo.ImageIndex = 19;
+ this.Axo.ToolTipText = "Axo";
+ //
+ // Rot
+ //
+ this.Rot.ImageIndex = 20;
+ this.Rot.ToolTipText = "Dynamic Rotation";
+ //
+ // Reset
+ //
+ this.Reset.ImageIndex = 21;
+ this.Reset.ToolTipText = "Reset";
+ //
+ // HlrOn
+ //
+ this.HlrOn.ImageIndex = 22;
+ this.HlrOn.Pushed = true;
+ this.HlrOn.ToolTipText = "Hidden On";
+ //
+ // HlrOff
+ //
+ this.HlrOff.ImageIndex = 23;
+ this.HlrOff.ToolTipText = "Hidden Off";
+ //
+ // Form1
+ //
+ this.AccessibleRole = System.Windows.Forms.AccessibleRole.Application;
+ this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+ this.ClientSize = new System.Drawing.Size(560, 385);
+ this.Controls.Add(this.toolBarView);
+ this.Controls.Add(this.myStatusBar);
+ this.Controls.Add(this.toolBarTool);
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.IsMdiContainer = true;
+ this.Menu = this.mainMenu1;
+ this.Name = "Form1";
+ this.Text = "Sample Import / Export";
+ this.Activated += new System.EventHandler(this.Form1_Activated);
+ this.ResumeLayout(false);
+ }
+ #endregion
+
+ /// <summary>
+ /// The main entry point for the application.
+ /// </summary>
+ [STAThread]
+ static void Main()
+ {
+ Application.Run(new Form1());
+ }
+
+ private void menuItem2_Click(object sender, System.EventArgs e)
+ {
+
+ this.Cursor = System.Windows.Forms.Cursors.WaitCursor;
+ this.OnNewFile();
+ }
+
+ private void menuItem3_Click(object sender, System.EventArgs e)
+ {
+ if (this.MdiChildren.Length > 0)
+ this.ActiveMdiChild.Close();
+
+ }
+
+ private void ImportBRep_Click(object sender, System.EventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ this.myModelFormat = ModelFormat.BREP;
+ curForm.ImportModel(this.myModelFormat);
+ }
+
+ private void toolBar1_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ switch (toolBarTool.Buttons.IndexOf(e.Button))
+ {
+ case 0:
+ this.Cursor = System.Windows.Forms.Cursors.WaitCursor;
+ this.OnNewFile();
+ break;
+ case 1:
+ AboutDialog myDlg = new AboutDialog();
+ myDlg.ShowDialog(this);
+ break;
+
+ case 2: //just separator
+ break;
+ case 3:
+ if (curForm == null)
+ return;
+ curForm.SetDisplayMode(0); //wireframe
+ this.wireframe.Enabled = false;
+ this.shading.Enabled = true;
+ this.transparency.Enabled = false;
+ break;
+ case 4:
+ if (curForm == null)
+ return;
+ curForm.SetDisplayMode(1); //shading
+ this.shading.Enabled = false;
+ this.wireframe.Enabled = true;
+ this.transparency.Enabled = true;
+ break;
+ case 5:
+ if (curForm == null)
+ return;
+ curForm.ChangeColor(true);
+ break;
+ case 6:
+ if (curForm == null)
+ return;
+ MaterialDialog m = new MaterialDialog();
+ m.View = curForm.View;
+ m.ShowDialog(curForm);
+ break;
+ case 7:
+ if (curForm == null)
+ return;
+ IE_WinForms.TransparencyDialog t = new TransparencyDialog();
+ t.View = curForm.View;
+ t.ShowDialog(curForm);
+ break;
+ case 8:
+ if (curForm == null)
+ return;
+ curForm.DeleteObjects();
+ break;
+ default:
+ break;
+ }
+ }
+
+ private void toolBar1_MouseHover(object sender, System.EventArgs e)
+ {
+ this.myStatusBar.Text = "Document toolbar";
+ }
+
+ private void toolBar1_MouseLeave(object sender, System.EventArgs e)
+ {
+ this.myStatusBar.Text = "";
+ }
+
+ private void ImportCsfdb_Click(object sender, System.EventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ this.myModelFormat = IE_WinForms.ModelFormat.CSFDB;
+ curForm.ImportModel(this.myModelFormat);
+ }
+
+ private void ImportIges_Click(object sender, System.EventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ this.myModelFormat = IE_WinForms.ModelFormat.IGES;
+ curForm.ImportModel(this.myModelFormat);
+ }
+
+ private void ImportStep_Click(object sender, System.EventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ this.myModelFormat = IE_WinForms.ModelFormat.STEP;
+ curForm.ImportModel(this.myModelFormat);
+ }
+
+ private void ExportBRep_Click(object sender, System.EventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ this.myModelFormat = IE_WinForms.ModelFormat.BREP;
+ curForm.ExportModel(this.myModelFormat);
+ }
+
+ private void ExportCsfdb_Click(object sender, System.EventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ this.myModelFormat = IE_WinForms.ModelFormat.CSFDB;
+ curForm.ExportModel(this.myModelFormat);
+ }
+
+ private void ExportIges_Click(object sender, System.EventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ this.myModelFormat = IE_WinForms.ModelFormat.IGES;
+ curForm.ExportModel(this.myModelFormat);
+ }
+
+ private void ExportStep_Click(object sender, System.EventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ this.myModelFormat = IE_WinForms.ModelFormat.STEP;
+ curForm.ExportModel(this.myModelFormat);
+ }
+
+ private void ExportStl_Click(object sender, System.EventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ this.myModelFormat = IE_WinForms.ModelFormat.STL;
+ curForm.ExportModel(this.myModelFormat);
+ }
+
+ private void ExportVrml_Click(object sender, System.EventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ this.myModelFormat = IE_WinForms.ModelFormat.VRML;
+ curForm.ExportModel(this.myModelFormat);
+ }
+
+ private void ExportImage_Click(object sender, System.EventArgs e)
+ {
+ Form2 curForm = (Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ this.myModelFormat = IE_WinForms.ModelFormat.IMAGE;
+ curForm.ExportModel(this.myModelFormat);
+ }
+
+ private void HelpAbout_Click(object sender, System.EventArgs e)
+ {
+ AboutDialog myDlg = new AboutDialog();
+ myDlg.ShowDialog(this);
+ }
+
+ private void ViewToolbar_Click(object sender, System.EventArgs e)
+ {
+
+ if (this.ViewToolbar.Checked)
+ {
+ if (this.MdiChildren.Length > 0)
+ {
+ this.New.Visible = false;
+ this.About.Visible = false;
+ }
+ else
+ this.toolBarTool.Hide();
+ this.ViewToolbar.Checked = false;
+ }
+ else
+ {
+ if (this.MdiChildren.Length > 0)
+ {
+ this.New.Visible = true;
+ this.About.Visible = true;
+ }
+ else
+ this.toolBarTool.Show();
+ this.ViewToolbar.Checked = true;
+ }
+
+ }
+
+ private void ViewStatusBar_Click(object sender, System.EventArgs e)
+ {
+ if (this.ViewStatusBar.Checked)
+ {
+ this.myStatusBar.Hide();
+ this.ViewStatusBar.Checked = false;
+ }
+ else
+ {
+ this.myStatusBar.Show();
+ this.ViewStatusBar.Checked = true;
+ }
+ }
+
+ public void OnNewFile()
+ {
+ Form2 newForm = new Form2();
+ newForm.MdiParent = this;
+ IE_WinForms.Form1.myNbOfChildren = IE_WinForms.Form1.myNbOfChildren + 1;
+ newForm.SetIndex (IE_WinForms.Form1.myNbOfChildren, 1);
+ newForm.Show();
+ newForm.InitView();
+ newForm.InitV3D();
+ this.FileExport.Visible = true;
+ this.FileImport.Visible = true;
+ this.Window.Visible = true;
+ this.wireframe.Visible = true;
+ this.shading.Visible = true;
+ this.color.Visible = true;
+ this.material.Visible = true;
+ this.transparency.Visible = true;
+ this.delete.Visible = true;
+ this.Cursor = System.Windows.Forms.Cursors.Default;
+ this.toolBarView.Visible = true;
+ }
+
+ private void FileImport_Popup(object sender, System.EventArgs e)
+ {
+ IE_WinForms.Form2 curForm = (IE_WinForms.Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ if (curForm.View.IsObjectSelected())
+ {
+ this.ExportBRep.Enabled = true;
+ this.ExportIges.Enabled = true;
+ this.ExportStep.Enabled = true;
+ this.ExportVrml.Enabled = true;
+ this.ExportStl.Enabled = true;
+ }
+
+ }
+
+ private void menuItem1_Click(object sender, System.EventArgs e)
+ {
+ this.Close();
+ }
+
+ private void File_Popup(object sender, System.EventArgs e)
+ {
+ if (this.MdiChildren.Length > 0)
+ this.FileClose.Enabled = true;
+ else
+ {
+ this.FileClose.Enabled = false;
+ this.FileExport.Visible = false;
+ this.FileImport.Visible = false;
+ }
+ }
+
+ private void menuItem4_Click(object sender, System.EventArgs e)
+ {
+ IE_WinForms.Form2 curForm = (IE_WinForms.Form2)this.ActiveMdiChild;
+ IE_WinForms.Form2 newView = new Form2();
+ newView.MdiParent = this;
+ newView.Show();
+ newView.InitView();
+ newView.SetContext(curForm.View);
+ newView.View.CreateNewView(newView.Handle);
+ newView.SetNextIndex(curForm);
+ }
+
+ private void WindowCascade_Click(object sender, System.EventArgs e)
+ {
+ this.LayoutMdi(System.Windows.Forms.MdiLayout.Cascade);
+ }
+
+ private void WindowTile_Click(object sender, System.EventArgs e)
+ {
+ this.LayoutMdi(System.Windows.Forms.MdiLayout.TileVertical);
+ }
+
+ public void SelectionChanged()
+ {
+ if (this.MdiChildren.Length == 0)
+ return;
+ IE_WinForms.Form2 curForm = (IE_WinForms.Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ switch (curForm.View.DisplayMode())
+ {
+ case -1:
+ this.shading.Enabled = false;
+ this.wireframe.Enabled = false;
+ break;
+ case 0:
+ this.wireframe.Enabled = false;
+ this.shading.Enabled = true;
+ this.transparency.Enabled = false;
+ break;
+ case 1:
+ this.wireframe.Enabled = true;
+ this.shading.Enabled = false;
+ this.transparency.Enabled = true;
+ break;
+ case 10:
+ this.wireframe.Enabled = true;
+ this.shading.Enabled = true;
+ this.transparency.Enabled = true;
+ break;
+ default:
+ break;
+ }
+ bool IsSelected = curForm.View.IsObjectSelected();
+ if (IsSelected)
+ {
+ this.color.Enabled = true;
+ this.material.Enabled = true;
+ this.delete.Enabled = true;
+ }
+ else
+ {
+ this.color.Enabled = false;
+ this.material.Enabled = false;
+ this.transparency.Enabled = false;
+ this.delete.Enabled = false;
+ }
+ if (curForm.DegenerateMode)
+ {
+ this.HlrOff.Pushed = false;
+ this.HlrOn.Pushed = true;
+ }
+ else
+ {
+ this.HlrOff.Pushed = true;
+ this.HlrOn.Pushed = false;
+ }
+ if (curForm.Mode == IE_WinForms.CurrentAction3d.CurAction3d_WindowZooming)
+ this.ZoomWin.Pushed = false;
+
+ }
+
+ public StatusBar StatusBar
+ {
+ get
+ {
+ return this.myStatusBar;
+ }
+ }
+
+ public void OnFileClose()
+ {
+ if (this.MdiChildren.Length <= 1)
+ {
+ this.FileClose.Enabled = false;
+ this.Window.Visible = false;
+ this.wireframe.Visible = false;
+ this.shading.Visible = false;
+ this.color.Visible = false;
+ this.material.Visible = false;
+ this.transparency.Visible = false;
+ this.delete.Visible = false;
+ this.toolBarView.Visible = false;
+ }
+ }
+
+ private void toolBarView_ButtonClick(object sender, System.Windows.Forms.ToolBarButtonClickEventArgs e)
+ {
+ IE_WinForms.Form2 curForm = (IE_WinForms.Form2)this.ActiveMdiChild;
+ if (curForm == null)
+ return;
+ switch (toolBarView.Buttons.IndexOf(e.Button))
+ {
+ case 0:
+ curForm.View.ZoomAllView();
+ break;
+ case 1:
+ curForm.Mode = CurrentAction3d.CurAction3d_WindowZooming;
+ this.ZoomWin.Pushed = true;
+ break;
+ case 2:
+ curForm.Mode = CurrentAction3d.CurAction3d_DynamicZooming;
+ break;
+ case 3:
+ curForm.Mode = CurrentAction3d.CurAction3d_DynamicPanning;
+ break;
+ case 4:
+ curForm.Zoom = curForm.View.Scale();
+ curForm.Mode = CurrentAction3d.CurAction3d_GlobalPanning;
+ break;
+ case 5:
+ curForm.View.FrontView();
+ break;
+ case 6:
+ curForm.View.TopView();
+ break;
+ case 7:
+ curForm.View.LeftView();
+ break;
+ case 8:
+ curForm.View.BackView();
+ break;
+ case 9:
+ curForm.View.RightView();
+ break;
+ case 10:
+ curForm.View.BottomView();
+ break;
+ case 11:
+ curForm.View.AxoView();
+ break;
+ case 12:
+ curForm.Mode = CurrentAction3d.CurAction3d_DynamicRotation;
+ break;
+ case 13:
+ curForm.View.Reset();
+ break;
+ case 14:
+ curForm.View.SetDegenerateModeOn();
+ curForm.DegenerateMode = true;
+ this.HlrOff.Pushed = false;
+ this.HlrOn.Pushed = true;
+ break;
+ case 15:
+ curForm.View.SetDegenerateModeOff();
+ curForm.DegenerateMode = false;
+ this.HlrOn.Pushed = false;
+ this.HlrOff.Pushed = true;
+ break;
+ default:
+ break;
+ }
+ }
+
+ private void Form1_Activated(object sender, System.EventArgs e)
+ {
+ if (this.toolBarView.Visible)
+ this.SelectionChanged();
+ }
+
+ private void toolBarView_MouseHover(object sender, System.EventArgs e)
+ {
+ this.myStatusBar.Text = "View toolbar";
+ }
+
+ private void toolBarView_MouseLeave(object sender, System.EventArgs e)
+ {
+ this.myStatusBar.Text = "";
+ }
+
+ }
+
+}
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 1.3
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">1.3</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1">this is my long string</data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ [base64 mime encoded serialized .NET Framework object]
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ [base64 mime encoded string representing a byte array form of the .NET Framework object]
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used forserialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>1.3</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <data name="mainMenu1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="mainMenu1.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>17, 17</value>
+ </data>
+ <data name="mainMenu1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="File.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="File.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="FileNew.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="FileNew.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="FileExport.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="FileExport.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ImportBRep.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ImportBRep.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ImportIges.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ImportIges.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ImportStep.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ImportStep.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="FileImport.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="FileImport.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportBRep.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportBRep.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportIges.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportIges.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportStep.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportStep.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportStl.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportStl.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportVrml.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportVrml.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="menuItem3.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="menuItem3.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportImage.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ExportImage.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="FileClose.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="FileClose.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="menuItem2.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="menuItem2.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="menuItem1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="menuItem1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="View.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="View.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ViewToolbar.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ViewToolbar.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ViewStatusBar.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ViewStatusBar.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Window.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Window.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="menuItem4.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="menuItem4.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="WindowCascade.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="WindowCascade.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="WindowTile.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="WindowTile.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Help.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Help.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="HelpAbout.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="HelpAbout.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="toolBarTool.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="toolBarTool.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="toolBarTool.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="New.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="New.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="About.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="About.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="wireframe.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="wireframe.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="shading.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="shading.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="color.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="color.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="material.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="material.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="transparency.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="transparency.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="delete.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="delete.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="imageList1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="imageList1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="imageList1.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>141, 18</value>
+ </data>
+ <data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFpTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0xLjAuNTAw
+ MC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZT
+ eXN0ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMA
+ AAB6GAAAAk1TRnQBSQFMAgEBGAEAAR0BAAEEAQABEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQC
+ AAEoAwABQAMAAYADAAEBAQABCAYAASAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB
+ 3AHAAQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IB
+ AAM5AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8B
+ MwMAAWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYC
+ AAFmAZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMC
+ AAHMAWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQAB
+ ZgEAATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8B
+ AAEzAWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQAB
+ MwGZAWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQAB
+ MwLMAQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQAB
+ MwEAAWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMB
+ mQEAAWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQAB
+ ZgGZAWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYB
+ zAH/AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMB
+ mQEAAZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgAB
+ mQFmATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwB
+ AAKZAf8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB
+ /wEzAQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQAB
+ mQEAAcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYC
+ AAHMAWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYB
+ AAHMApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8C
+ AAHMAf8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQAB
+ mQEAAcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMB
+ AAHMAmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB
+ /wGZAcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC
+ /wEzAQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC
+ /wFmAQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gB
+ AAHwAfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD//8A/wD/AP8A/wD/
+ AP8A/wAPAAH7PgAD+wHsPQAB+wIAAewIAAP7NAAC7AYAAvsBAAL7DQAB7CMABOwGAAL7AQAC+w4AAewb
+ AAL7AwAC7AIAAewBAAHsBQAC+wEAAvsPAAXsAQAC7BUAA/sB7AQAAuwFAAL7AQAC+w8AAeweAAHsAvsD
+ AAPsBQAD+xAAAeweAAHsAwAB+wEAAewBAAHsGAAB7B4AAewEAAHsAgAB7BgAAewfAAHsAwAB7AMAA/sw
+ AAP7AgAC7AEAAewBAALsAwAB+xUAAewdAAPsAgAC7BsAAewcAAHsAQAD7DwAAuw/AAHsQgAB+ywAA/sQ
+ AAH7CwABAQnsAwAJ7AEBCwAC+w4AAfsBAAH7AQAB+wkAAgEHAALsAgAB7AH+BwACAQgABPsKAAoBCAAB
+ AQEAAQEGAAHsAQAB7AEAAewBAAH+BgABAQEAAQEFAAL7DgAB7AEBAwAD+wEAAgEHAAEBAgABAQX+AewC
+ /gLsAgAG/gEAAv4BAQQAAfsPAAHsAQABAQMAAfsCAAHsAQABAQUAAfsBAQIAAQEFAAHsAgAC7AIAAf4F
+ AAEBAgABAQQAAfsCAAH+DAAB7AIACgEFAAEBAfsBAAEBBQAB7AIAAuwCAAH+BQABAQIAAfsDAAP7AQAB
+ +wH+CwAB7AIAAf4FAAHsAgAB7AIAA/sBAQL7AQEFAAHsAgAC7AIAAf4FAAEBAQAB+wEBBAAB+wIAAvsF
+ /gEAAv4DAAHsAgAB/gUAAewCAAHsBQABAQH7AQABAQUAAewCAALsAgAB/gUAAQEG+wYAAf4KAAHsAgAB
+ /gUAAewCAAHsBAAB+wEBAgABAQUAAewCAALsAgAB/gUAAQEBAAH7AQEJAAH+CgAB7AIAAf4FAAHsAgAB
+ 7AUAAQEC7AEBBuwCAArsAQECAAH7CQAB/goAAewCAAH+BQAB7AIAAewGAAEBAQABAQYAAewBAAHsAQAB
+ 7AEAAf4GAAEBAQABAQkAAf4KAArsAgAB7AcAAgEHAALsAgAB7AH+BwACARUAAewBAAH+BgAB7AEAAewI
+ AAEBCewDAAnsAQEJAAH+DAAB7AH+BwAC7CgAAf4NAArsOQAB+xkACuwGAArsCwAD+wgAAfsJAQYAAewB
+ /gcAAuwFAAHsAf4HAALsCQAB+wEAAfsBAAH7BwABAQH7BwABAQHsBQAB7AEAAf4GAAHsAQAB7AQAAewB
+ AAH+BgAB7AEAAewKAAH7CQABAQEAAfsGAAEBAQAB7AQAAewCAAoBAwAB7AIABv4B7AL+AewHAALsAfsB
+ AAPsBQABAQIAAfsBAAH7A/4BAQL+AewDAAHsAgABAQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB7AQAAfsB
+ AAHsAgAB+wMAAewB+wQAAQEDAAL7AwABAQIAAewDAAHsAgABAQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB
+ 7AMAAfsCAAHsBgAB7AEAAfsDAAEBAgAD+wMAAQECAAHsAwAB7AIAAQEFAAHsAgABAQMAAewCAAH+BQAB
+ 7AIAAewCAAb7BAAF+wIAAQECAAH+BQABAQIAAewDAAHsAgABAQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB
+ 7AMAAfsCAAHsBgAB7AEAAfsDAAEBAgAB/gUAAQECAAHsAwAB7AIAAQEBAAT7AewCAAEBAwAB7AIAAf4F
+ AAHsAgAB7AQAAfsBAAHsAgAB+wMAAewB+wQAAQECAAH+BQABAQIAAewDAAPsAQEB7AL7A+wCAAEBAwAK
+ AQIAAewGAAPsAfsBAAPsBQAKAQIAAewEAAHsAQABAQEAAfsBAAH7AgAB7AEAAQEEAAEBAQAB/gYAAQEB
+ AAHsCQAB+woAAewBAAH+BgAB7AEAAewFAAHsAQEBAAH7AgAB+wIAAewBAQUAAQEB/gIAAfsEAAEBAewH
+ AAH7AQAB+wEAAfsJAAHsAf4HAALsBgAKAQYAAgED+wUBCAAD+wsACuwNAAH7CQAB+wEAAfsBAAH7DQAB
+ +yQAAfsKAAH7NQAB+wkAAfsIAAP7CgAD+w4AAfshAAL7DAAC+wIAAewDAAfsA/sB7BYAAfsIAAH7AewB
+ AwoAAfsBAAH7DgAB+xcAA/sJAAEDCQAB+xEAAewWAAH7AQAB+wEAAfskAAHsDwAB+wgAAfsPAAXsBQAB
+ 7AYABOwCAAHsBwAF7AIAA/sHAAH7DQAB7AYAAewEAAHsBAAB7AUAAewBAAHsBQAB7AYAAewCAAH7AwAB
+ +wkAAfsIAAHsBwAB7AMAAewEAAHsBgAC7AUAAewHAAHsBAAB+wsAAfsGAALsBwAC7AIAAewDAALsBgAC
+ 7AQAAuwHAAEDAewCAAX7BQAF+wUAAewJAAHsAgAB7AMAAewIAAHsBAAB7AQAA/sCAAHsAwAB+wsAAfsG
+ AAHsCQAB7AIAAewDAAHsCAAB7AQAAewCAAL7BQAB7AQAAfsEAAH7BAAB+wcAAuwHAALsAgAB7AMAAuwG
+ AALsBQAB7AcAAuwJAAH7CwAB+wEAAewHAAHsAwAB7AQAAewGAALsBQAB7AcAAewKAAH7CAAB+wEAAfsD
+ AAHsBQAB7AH7AQAB+wEAAfsFAAHsBAAB7AEAAewBAAP7AgAB7AUAAewJAAH7AQAB+wEAAfsGAAL7BQAF
+ 7AIABfsE7AEABuwIAAXsCwAD+wcAA/sKAAP7AQAB+yUAAfsfAAb4CAAG+A0AAgcC7AUADQoIAAH4BvsB
+ +AYAAfgGoAH4CAACCwLvAQcD7AYAAx4BAANrAQACNwFtCAABrgFYBvsBWAGuBAABrgGZBqABmQGuBQAC
+ CwKSAU8CBwHvAuwGAAMBAQADBgEAAvsB7AgAAVgBcwb7AXMBWAQAAewBHAagARwB7AUAAW0B7QEHAU8B
+ AgJPAQcC7AFtAQsEAAMBAQADBgEAAvsB7AcAAT8B+wFYBnMBRgH7BAAB7AGZBhwBmQHsBQAB7AEHAU8B
+ 7QECAe0BAgEHA+wFAAMLAQADDQEAAikBQwcAAfkBLAH7BkYB+QH7BAAB7AGgBpkBoAHsBAABbwHvAQcB
+ AgEHAXIBBwFyAQcD7AUAAwIBAAMEAQADBgMABGIC+QEsATIG+QH7BAAB7AigAewEAAHsAQcBcgECAXIB
+ BwJyAQcD7AUAA/oBAAP8AQAD/gMAB/kB+wb5AfsEAAHsCKAB7AQAAewBBwFyAQIBcgEHAgIBBwPsARQB
+ AQMAA/oBAAP8AQAD/gMABGIC+QEsATIG+QH7BAAB7AigAewEAAHsAgcDcgE1AXIBeQGSA+wEAAMtAQAD
+ hQEAA4EHAAH5ASwB+wZGAfkB+wQAAewBoAaZAaAB7AMAAUYBkgMHAk8BWAEHAVgBBwGSAuwEAAMeAQAD
+ KQEAA2EHAAE/AfsBWAZzAUYB+wQAAewBmQYcAZkB7AMAAewCBwLvAeoC7AQHAewB7QQAA/kBAAP7AQAD
+ /QgAAVgBcwb7AXMBWAQAAewBHAagARwB7AMAAewCBwLsAQAB7AHtAgcCmQHsAe8BCwMAA/kBAAP7AQAD
+ /QgAAa4BWAb7AVgBrgQAAa4BmQagAZkBrgMAAewB7wEHAuwBAAHsAgcBmQJYAm4EAAMgAQADNwEAA6UJ
+ AAH4BvsB+AYAAfgGoAH4BAACbgIHAewBDgMHAfsCbhsABvgIAAb4BwAC7AEHBew6AATsLQAG+woABuwp
+ AAFYBqcBWAgAAewG+wHsGwAC+woAAVgBhgYAAYYBWAYAAa4BWAb7AVgBrgcACf8KAAL7CgAB+wFYBgAB
+ WAH7BgAB7Aj7AewHAAn/FgAB+wGuBlEBrgH7BgAB7Aj7AewHAAn/CgAB+wsAAfsBAAauAQAB+wYAAewI
+ +wHsBwAJ/woAAfsLAAH7CAAB+wYAAewI+wHsBwAJ/woAAfsLAAH7CAAB+wYAAewI+wHsBwAJ/woAAvsK
+ AAH7CAAB+wYAAewI+wHsBwAJ/wsAAvsJAAH7AQAGrgEAAfsGAAHsAfsGWAH7AewHAAn/BwAB+wQAAvsI
+ AAH7Aa4GUQGuAfsGAAHsAVgGcwFYAewHAAb/CgAB+wUAAfsIAAH7AVgGAAFYAfsGAAHsAXMG+wFzAewH
+ AAb/AQAB/wgAAvsDAAL7CAABWAGGBgABhgFYBgABrgFYBvsBWAGuBwAG/wsABfsKAAFYBqcBWAgAAewG
+ +wHsKQAG+woABuxFAAFCAU0BPgcAAT4DAAEoAwABQAMAAYADAAEBAQABAQYAAQQWAAP//wACAAH9B/8B
+ +AF/Bv8B/QG/AccB/wHAAR8BwAEfAf8BnwGTAf8CzwHfAc8B/gEfAZMB/wLXAd8B1wE5AY8BkwH/AdgB
+ AwHfAdsBwwHPAZMB/wLbAd8B2wHxAscB+wLbAd8B2wH3AVcB/wHBAtsB3wHbAfcBtwH/AZsC2wHfAdsB
+ +wGoAf8BrwHAARsBwAEbARkBTgH/AbUC6wHvAesBwgE/Af8BuQLzAfcB8wHBAv8BEQH4AQMB+AEDAecC
+ /wG/BP8B9wf/Af4F/wHxAf8B/gH/AeABBwEAAT8B+QH/AfoBvwHnAfMBPwGfAeEB/wGAAR8B6wH1AV8B
+ rwGfAf8BnAFPAewBAAFgAQcBoAEPAa4B1wHNAfYBbwG3AacB5wGwAQMB5QH2AW8BtwEDAesBtwHbAQEB
+ 9gFvAacBoAEBAbcB2wHlAfYBbwGAAu0BtwHbAc0B9gFvAacC7QG3AdsB4AEGAQABNwLtAbcB2wH1AfoB
+ rwHXAu0BgAEbAfkB/AHPAecB4AENAdcB6wH8AQAB4AEHAvUB5wHzBP8C+QHwAQME/wH8AQEB/gP/AYAB
+ HwGAAR8B/AF/AYABHwGfAc8BnwHPAfoBvwGfAc8BrwHXAa8B1wH+Af8BrwHXAbABAwGwAQMB8AGPAbQB
+ AwG3AdsBtwHbAdYB5wG5AdsBtwHbAbcB2wG3AesBsQHbAbcB2wG3AdsBAwHBAbcB2wG3AdsBtwHbAbcB
+ 6wG3AdsBtAEbAbcB2wHWAecBtwHbAYABGwGAARsB8AGPAYABGwHVAWsB1wHrAf4B/wHXAesB5QGzAeYB
+ 8wH6Ab8B5wHzAfABAwHwAQMB/AF/AfABAwH/Ae8B+gG/Af4E/wH3Af4G/wH7Af4B/wEfAfgB/wH9BP8B
+ PwH8AdwBAAF/Af8B/gH/AR8B+gHPAf0BPwH/AfwBfwHPAfcB5wH9AZ8B/wH6Ab8B5wH/AfMB/QHPAf0B
+ /gH/AfIBDwG5AQ0B5AEYAf4B/wH5AfcBvAH1AfMB7QHfAfcC+wG9AfkC9wG/AfsB8wH5AbkB+QHnAfMB
+ BwHBAfcB/QG7Af0B7wEbAb8B+wH3Af0BuwH9AewB+wHeAfcB8wH5AbkB+QH3AfMB/gH/AesB+wG9AfkC
+ 9wH+Af8BXQHyAb4B9QEbAe8B+gG/AT4BDAIBAfwBHwH8AX8BHwH4Ab8D/wH+A/8B/gEHAfgBHwH8AQcB
+ gAEDAfwBAwHwAQ8B8AEHAYABAwH4AQEB4AEHAcABBwGAAQMB+AEBAeABBwHAAQMBgAEDAfABAQHgAQcB
+ wAEDAYABAwHwAQEB4AEHAYABAwGAAQMBAAEBAeABBwGAAQMBgAEDAQABAQHgAQcBgAEBAYABAwEAAQEB
+ 4AEHAYABAQGAAQMB8AEBAeABBwEAAQEBgAEDAfABAQHgAQcBAAEBAYABAwH4AQEB4AEHAQABAQGAAQMB
+ +AEBAeABBwEAAQMBgAEDAfwBAwHwAQ8BAAEPAYABAwH+AQcB+AEfAcABPwb/AfAF/wH4AR8B+AEfAv8B
+ /gE/AfABDwHwAQ8B4AEDAfwBHwLnAeABBwHgAQMB/AEfAucB4AEHAeABAwH+AX8B4AEHAeABBwHgAQMB
+ /AE/AegBFwHgAQcB4AEDAfwBPwHvAfcB4AEHAeABAwH8AT8B7wH3AeABBwHgAQMB/AEfAe8B9wHgAQcB
+ 4AEDAfIBDwHoARcB4AEHAeABAwHhAQcB4AEHAeABBwHgAQMB4QGHAucB4AEHAeABBwHgAQcC5wHgAQcB
+ 4AEPAfABDwHwAQ8B8AEPAeABHwH4AR8B+AEfAfgBHwj/Cw==
+</value>
+ </data>
+ <data name="myStatusBar.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="myStatusBar.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="myStatusBar.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="toolBarView.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="toolBarView.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="toolBarView.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ZoomAll.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ZoomAll.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ZoomWin.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ZoomWin.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ZoomProg.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ZoomProg.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Pan.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Pan.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="PanGlo.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="PanGlo.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Front.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Front.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Back.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Back.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="TOP.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="TOP.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BOTTOM.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BOTTOM.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="LEFT.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="LEFT.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="RIGHT.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="RIGHT.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Axo.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Axo.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Rot.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Rot.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Reset.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="Reset.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="HlrOn.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="HlrOn.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="HlrOff.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="HlrOff.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="toolBarButton1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="toolBarButton1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>(Default)</value>
+ </data>
+ <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>8, 8</value>
+ </data>
+ <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>True</value>
+ </data>
+ <data name="$this.Name">
+ <value>Form1</value>
+ </data>
+ <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>80</value>
+ </data>
+ <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>True</value>
+ </data>
+ <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>
+ AAABAAEAMDAAAAAAAACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAgAoAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAMDcwADwyqYABAQEAAgICAAMDAwAERERABYW
+ FgAcHBwAIiIiACkpKQBVVVUATU1NAEJCQgA5OTkAgHz/AFBQ/wCTANYA/+zMAMbW7wDW5+cAkKmtAAAA
+ MwAAAGYAAACZAAAAzAAAMwAAADMzAAAzZgAAM5kAADPMAAAz/wAAZgAAAGYzAABmZgAAZpkAAGbMAABm
+ /wAAmQAAAJkzAACZZgAAmZkAAJnMAACZ/wAAzAAAAMwzAADMZgAAzJkAAMzMAADM/wAA/2YAAP+ZAAD/
+ zAAzAAAAMwAzADMAZgAzAJkAMwDMADMA/wAzMwAAMzMzADMzZgAzM5kAMzPMADMz/wAzZgAAM2YzADNm
+ ZgAzZpkAM2bMADNm/wAzmQAAM5kzADOZZgAzmZkAM5nMADOZ/wAzzAAAM8wzADPMZgAzzJkAM8zMADPM
+ /wAz/zMAM/9mADP/mQAz/8wAM///AGYAAABmADMAZgBmAGYAmQBmAMwAZgD/AGYzAABmMzMAZjNmAGYz
+ mQBmM8wAZjP/AGZmAABmZjMAZmZmAGZmmQBmZswAZpkAAGaZMwBmmWYAZpmZAGaZzABmmf8AZswAAGbM
+ MwBmzJkAZszMAGbM/wBm/wAAZv8zAGb/mQBm/8wAzAD/AP8AzACZmQAAmTOZAJkAmQCZAMwAmQAAAJkz
+ MwCZAGYAmTPMAJkA/wCZZgAAmWYzAJkzZgCZZpkAmWbMAJkz/wCZmTMAmZlmAJmZmQCZmcwAmZn/AJnM
+ AACZzDMAZsxmAJnMmQCZzMwAmcz/AJn/AACZ/zMAmcxmAJn/mQCZ/8wAmf//AMwAAACZADMAzABmAMwA
+ mQDMAMwAmTMAAMwzMwDMM2YAzDOZAMwzzADMM/8AzGYAAMxmMwCZZmYAzGaZAMxmzACZZv8AzJkAAMyZ
+ MwDMmWYAzJmZAMyZzADMmf8AzMwAAMzMMwDMzGYAzMyZAMzMzADMzP8AzP8AAMz/MwCZ/2YAzP+ZAMz/
+ zADM//8AzAAzAP8AZgD/AJkAzDMAAP8zMwD/M2YA/zOZAP8zzAD/M/8A/2YAAP9mMwDMZmYA/2aZAP9m
+ zADMZv8A/5kAAP+ZMwD/mWYA/5mZAP+ZzAD/mf8A/8wAAP/MMwD/zGYA/8yZAP/MzAD/zP8A//8zAMz/
+ ZgD//5kA///MAGZm/wBm/2YAZv//AP9mZgD/Zv8A//9mACEApQBfX18Ad3d3AIaGhgCWlpYAy8vLALKy
+ sgDX19cA3d3dAOPj4wDq6uoA8fHxAPj4+ADw+/8ApKCgAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
+ AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMT
+ ExMTExMTEyIiQiI8HTyCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwDODg4Nzc4MQMdAAAA
+ AADDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOw4ODgyOCQAAAAdAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODIyMSIAHewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAA7DI3MSIdCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAADEyMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs4JAALAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwxJAAhAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4IgC8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAJAxJB0LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ ALwLCx0dIh0dCwATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACx0dAB0dIiIiIiId
+ CxMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvAsdAB0dIiQkAyQkIiIiHSIAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAIgMxMVhZmZqZAyQiHR0AAAAAkAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAvAsdISIDMThZWVmgvaCZWVIkIh0AAB0dIh0hCwALCwALtgAAAAAAAAAAAAAAAOwAAB0iMTEx
+ ODhYWZrDw8Ofn1hSJCIAHQAdACIAHSIkAwsdOAAAAADeExMTCwsLIiIkMTEyODg3MllZmprDw8PDwllS
+ MSQdHQAAAB0AIiQkAAAAvDi8AAAxAzExMTExMTI4Nzg4ODc4ODhZXpnDw8PDml1YNwMkIh0AAB0hIiQA
+ AAAAACIAAAA4ODc4Nzg4ODg4ODg4ODg4ODhZWV6avb2gmllZODcxJCIAAAAdIgMLAAAAACIAAACGE0+G
+ T4bs7Oy8vLy8vAAxODg4ODg4NzIyMSQdHQAAvADsCwAiJDExAAAAwjjsAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAALMSQAAAAAAAAAAAAAAAAAEyI4MQsiOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALMSQAAAAA
+ AAAAAAAAAAAAAAC8CwsAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8AAsAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP///////wAA////////
+ AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA//8AAH//AAD//wAAf/8AAP//4AP//wAA///4B///AAD///gP//8AAP///B///wAA///8H///
+ AAD///wf//8AAP///h///wAA///8H///AAD//+AD//8AAP//wAD//wAA//4AAD//AAD//AAAB/8AAP/w
+ AAAAAwAA/8AAAAABAADAAAAAADgAAMAAAAAAPAAAwAAAAAA8AADAAAAAIDgAAP///j/+AQAA///+P/+D
+ AAD///4///8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA
+</value>
+ </data>
+</root>
\ No newline at end of file
--- /dev/null
+using System;
+using System.Drawing;
+using System.Collections;
+using System.ComponentModel;
+using System.Windows.Forms;
+
+
+namespace IE_WinForms
+{
+ public enum CurrentAction3d
+ {
+ CurAction3d_Nothing,
+ CurAction3d_DynamicZooming,
+ CurAction3d_WindowZooming,
+ CurAction3d_DynamicPanning,
+ CurAction3d_GlobalPanning,
+ CurAction3d_DynamicRotation
+ }
+ public enum CurrentPressedKey
+ {
+ CurPressedKey_Nothing,
+ CurPressedKey_Ctrl,
+ CurPressedKey_Shift
+ }
+ public enum ModelFormat
+ {
+ BREP,
+ CSFDB,
+ STEP,
+ IGES,
+ VRML,
+ STL,
+ IMAGE
+ }
+ /// <summary>
+ /// Summary description for Form2.
+ /// </summary>
+ public class Form2 : System.Windows.Forms.Form
+ {
+ private System.ComponentModel.IContainer components;
+
+ public Form2()
+ {
+ //
+ // Required for Windows Form Designer support
+ //
+ InitializeComponent();
+
+ //
+ // Create OCCT proxy object
+ //
+ myOCCTProxy = new OCCTProxy();
+ myCurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ myCurrentPressedKey = CurrentPressedKey.CurPressedKey_Nothing;
+ myDegenerateModeIsOn = true;
+ IsRectVisible = false;
+ }
+
+ /// <summary>
+ /// Clean up any resources being used.
+ /// </summary>
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing)
+ {
+ if (components != null)
+ {
+ components.Dispose();
+ }
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+ /// <summary>
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ /// </summary>
+ private void InitializeComponent()
+ {
+ this.components = new System.ComponentModel.Container();
+ System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(Form2));
+ this.imageList1 = new System.Windows.Forms.ImageList(this.components);
+ this.myPopup = new System.Windows.Forms.ContextMenu();
+ this.menuItem1 = new System.Windows.Forms.MenuItem();
+ this.myPopupObject = new System.Windows.Forms.ContextMenu();
+ this.ContextWireframe = new System.Windows.Forms.MenuItem();
+ this.ContextShading = new System.Windows.Forms.MenuItem();
+ this.ContextColor = new System.Windows.Forms.MenuItem();
+ this.ContextMaterial = new System.Windows.Forms.MenuItem();
+ this.ContMatBrass = new System.Windows.Forms.MenuItem();
+ this.ContMenBronze = new System.Windows.Forms.MenuItem();
+ this.ContMenCopper = new System.Windows.Forms.MenuItem();
+ this.ContMenGold = new System.Windows.Forms.MenuItem();
+ this.ContMenPewt = new System.Windows.Forms.MenuItem();
+ this.ContMenPlaster = new System.Windows.Forms.MenuItem();
+ this.ContMenPlastic = new System.Windows.Forms.MenuItem();
+ this.ContMenSilver = new System.Windows.Forms.MenuItem();
+ this.ContMenTranc = new System.Windows.Forms.MenuItem();
+ this.ContMenDelete = new System.Windows.Forms.MenuItem();
+ //
+ // imageList1
+ //
+ this.imageList1.ImageSize = new System.Drawing.Size(16, 16);
+ this.imageList1.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageList1.ImageStream")));
+ this.imageList1.TransparentColor = System.Drawing.Color.Transparent;
+ //
+ // myPopup
+ //
+ this.myPopup.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.menuItem1});
+ //
+ // menuItem1
+ //
+ this.menuItem1.Index = 0;
+ this.menuItem1.Text = "Change &Background";
+ this.menuItem1.Click += new System.EventHandler(this.menuItem1_Click);
+ //
+ // myPopupObject
+ //
+ this.myPopupObject.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.ContextWireframe,
+ this.ContextShading,
+ this.ContextColor,
+ this.ContextMaterial,
+ this.ContMenTranc,
+ this.ContMenDelete});
+ this.myPopupObject.Popup += new System.EventHandler(this.myPopupObject_Popup);
+ //
+ // ContextWireframe
+ //
+ this.ContextWireframe.Index = 0;
+ this.ContextWireframe.Text = "Wireframe";
+ this.ContextWireframe.Click += new System.EventHandler(this.ContextWireframe_Click);
+ //
+ // ContextShading
+ //
+ this.ContextShading.Index = 1;
+ this.ContextShading.Text = "Shading";
+ this.ContextShading.Click += new System.EventHandler(this.ContextShading_Click);
+ //
+ // ContextColor
+ //
+ this.ContextColor.Index = 2;
+ this.ContextColor.Text = "Color";
+ this.ContextColor.Click += new System.EventHandler(this.ContextColor_Click);
+ //
+ // ContextMaterial
+ //
+ this.ContextMaterial.Index = 3;
+ this.ContextMaterial.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {
+ this.ContMatBrass,
+ this.ContMenBronze,
+ this.ContMenCopper,
+ this.ContMenGold,
+ this.ContMenPewt,
+ this.ContMenPlaster,
+ this.ContMenPlastic,
+ this.ContMenSilver});
+ this.ContextMaterial.Text = "Material";
+ //
+ // ContMatBrass
+ //
+ this.ContMatBrass.Index = 0;
+ this.ContMatBrass.Text = "&Brass";
+ this.ContMatBrass.Click += new System.EventHandler(this.ContMatBrass_Click);
+ //
+ // ContMenBronze
+ //
+ this.ContMenBronze.Index = 1;
+ this.ContMenBronze.Text = "&Bronze";
+ this.ContMenBronze.Click += new System.EventHandler(this.ContMenBronze_Click);
+ //
+ // ContMenCopper
+ //
+ this.ContMenCopper.Index = 2;
+ this.ContMenCopper.Text = "&Copper";
+ this.ContMenCopper.Click += new System.EventHandler(this.ContMenCopper_Click);
+ //
+ // ContMenGold
+ //
+ this.ContMenGold.Index = 3;
+ this.ContMenGold.Text = "&Gold";
+ this.ContMenGold.Click += new System.EventHandler(this.ContMenGold_Click);
+ //
+ // ContMenPewt
+ //
+ this.ContMenPewt.Index = 4;
+ this.ContMenPewt.Text = "&Pewter";
+ this.ContMenPewt.Click += new System.EventHandler(this.ContMenPewt_Click);
+ //
+ // ContMenPlaster
+ //
+ this.ContMenPlaster.Index = 5;
+ this.ContMenPlaster.Text = "&Plaster";
+ this.ContMenPlaster.Click += new System.EventHandler(this.ContMenPlaster_Click);
+ //
+ // ContMenPlastic
+ //
+ this.ContMenPlastic.Index = 6;
+ this.ContMenPlastic.Text = "&Plastic";
+ this.ContMenPlastic.Click += new System.EventHandler(this.ContMenPlastic_Click);
+ //
+ // ContMenSilver
+ //
+ this.ContMenSilver.Index = 7;
+ this.ContMenSilver.Text = "&Silver";
+ this.ContMenSilver.Click += new System.EventHandler(this.ContMenSilver_Click);
+ //
+ // ContMenTranc
+ //
+ this.ContMenTranc.Index = 4;
+ this.ContMenTranc.Text = "&Trancparency";
+ this.ContMenTranc.Click += new System.EventHandler(this.ContMenTranc_Click);
+ //
+ // ContMenDelete
+ //
+ this.ContMenDelete.Index = 5;
+ this.ContMenDelete.Text = "&Delete";
+ this.ContMenDelete.Click += new System.EventHandler(this.ContMenDelete_Click);
+ //
+ // Form2
+ //
+ this.AccessibleRole = System.Windows.Forms.AccessibleRole.Window;
+ this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+ this.ClientSize = new System.Drawing.Size(320, 261);
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.ImeMode = System.Windows.Forms.ImeMode.NoControl;
+ this.Name = "Form2";
+ this.Text = "Document";
+ this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
+ this.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Form2_KeyDown);
+ this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.Form2_MouseDown);
+ this.SizeChanged += new System.EventHandler(this.Form2_SizeChanged);
+ this.MouseUp += new System.Windows.Forms.MouseEventHandler(this.Form2_MouseUp);
+ this.KeyUp += new System.Windows.Forms.KeyEventHandler(this.Form2_KeyUp);
+ this.Closed += new System.EventHandler(this.Form2_Closed);
+ this.Paint += new System.Windows.Forms.PaintEventHandler(this.Form2_Paint);
+ this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.Form2_MouseMove);
+ }
+ #endregion
+
+ private System.Windows.Forms.ImageList imageList1;
+ private System.Windows.Forms.ContextMenu myPopup;
+ private System.Windows.Forms.ContextMenu myPopupObject;
+ private System.Windows.Forms.MenuItem ContextWireframe;
+ private System.Windows.Forms.MenuItem ContextShading;
+ private System.Windows.Forms.MenuItem ContextColor;
+ private System.Windows.Forms.MenuItem ContextMaterial;
+ private System.Windows.Forms.MenuItem ContMatBrass;
+ private System.Windows.Forms.MenuItem ContMenBronze;
+ private System.Windows.Forms.MenuItem ContMenCopper;
+ private System.Windows.Forms.MenuItem ContMenGold;
+ private System.Windows.Forms.MenuItem ContMenPewt;
+ private System.Windows.Forms.MenuItem ContMenPlaster;
+ private System.Windows.Forms.MenuItem ContMenPlastic;
+ private System.Windows.Forms.MenuItem ContMenSilver;
+ private System.Windows.Forms.MenuItem ContMenTranc;
+ private System.Windows.Forms.MenuItem ContMenDelete;
+ private System.Windows.Forms.MenuItem menuItem1;
+
+ private OCCTProxy myOCCTProxy;
+ private int myDocumentIndex, myViewIndex;
+
+ public void InitV3D()
+ {
+ if (!myOCCTProxy.InitViewer(this.Handle))
+ MessageBox.Show("Fatal Error during the graphic initialisation", "Error!",
+ MessageBoxButtons.OK, MessageBoxIcon.Error);
+ }
+
+ public bool ImportBRep(System.String filename)
+ {
+ return myOCCTProxy.ImportBrep(filename);
+ }
+
+ private void Form2_SizeChanged(object sender, System.EventArgs e)
+ {
+ myOCCTProxy.UpdateView();
+ }
+
+ private void Form2_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
+ {
+ myOCCTProxy.RedrawView();
+ myOCCTProxy.UpdateView();
+ }
+
+ protected CurrentAction3d myCurrentMode;
+ protected CurrentPressedKey myCurrentPressedKey;
+ protected float myCurZoom;// ~ Quantity_Factor
+ protected bool myDegenerateModeIsOn;
+ protected int myXmin;
+ protected int myYmin;
+ protected int myXmax;
+ protected int myYmax;
+ protected int theButtonDownX;
+ protected int theButtonDownY;
+ // for erasing of rectangle
+ protected int theRectDownX;
+ protected int theRectDownY;
+ protected bool IsRectVisible;
+
+ private void Form2_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
+ {
+ switch (e.Button)
+ {
+ case MouseButtons.Left:
+ myXmin = e.X; myYmin = e.Y;
+ myXmax = e.X; myYmax = e.Y;
+ if (myCurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl)
+ // start the dinamic zooming....
+ myCurrentMode = CurrentAction3d.CurAction3d_DynamicZooming;
+ else
+ {
+ switch (myCurrentMode)
+ {
+ case CurrentAction3d.CurAction3d_Nothing:
+ if (myCurrentPressedKey == CurrentPressedKey.CurPressedKey_Shift)
+ MultiDragEvent(myXmax, myYmax, -1);
+ else
+ DragEvent(myXmax, myYmax, -1);
+ break;
+ case CurrentAction3d.CurAction3d_DynamicRotation:
+ if (!myDegenerateModeIsOn)
+ myOCCTProxy.SetDegenerateModeOn();
+ //start the rotation
+ myOCCTProxy.StartRotation(e.X, e.Y);
+ break;
+ case IE_WinForms.CurrentAction3d.CurAction3d_WindowZooming:
+ this.Cursor = System.Windows.Forms.Cursors.Hand;
+ break;
+ default:
+ break;
+ }
+ }
+ break;
+ case MouseButtons.Right:
+ //MessageBox.Show("right mouse button is down");
+ if (myCurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl)
+ {
+ if (!myDegenerateModeIsOn)
+ myOCCTProxy.SetDegenerateModeOn();
+ myOCCTProxy.StartRotation(e.X, e.Y);
+ }
+ else
+ Popup(e.X, e.Y);
+ break;
+ default:
+ break;
+ }
+ }
+
+ private void Form2_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
+ {
+ if (e.Shift)
+ myCurrentPressedKey = CurrentPressedKey.CurPressedKey_Shift;
+ else if (e.Control)
+ myCurrentPressedKey = CurrentPressedKey.CurPressedKey_Ctrl;
+ }
+
+ private void Form2_KeyUp(object sender, System.Windows.Forms.KeyEventArgs e)
+ {
+ myCurrentPressedKey = CurrentPressedKey.CurPressedKey_Nothing;
+ }
+
+ protected void MultiDragEvent(int x, int y, int theState)
+ {
+ if (theState == -1)
+ {
+ theButtonDownX = x;
+ theButtonDownY = y;
+ }
+ else if (theState == 1)
+ myOCCTProxy.ShiftSelect(Math.Min(theButtonDownX, x), Math.Min(theButtonDownY, y),
+ Math.Max(theButtonDownX, x), Math.Max(theButtonDownY, y));
+ }
+
+ protected void DragEvent(int x, int y, int theState)
+ {
+ if (theState == -1) //mouse is down
+ {
+ theButtonDownX = x;
+ theButtonDownY = y;
+ }
+ else if (theState == 1) //mouse is up
+ {
+ myOCCTProxy.Select(Math.Min(theButtonDownX, x), Math.Min(theButtonDownY, y),
+ Math.Max(theButtonDownX, x), Math.Max(theButtonDownY, y));
+ }
+ }
+
+ protected void Popup(int x, int y)
+ {
+ System.Drawing.Point p = new Point(x, y);
+ if (this.myOCCTProxy.IsObjectSelected())
+ this.myPopupObject.Show(this, p);
+ else
+ this.myPopup.Show(this, p);
+ }
+
+ private void Form2_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
+ {
+ switch (e.Button)
+ {
+ case MouseButtons.Left:
+ if (myCurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl)
+ return;
+ switch (myCurrentMode)
+ {
+ case CurrentAction3d.CurAction3d_Nothing:
+ if (e.X == myXmin && e.Y == myYmin)
+ {
+ myXmax = e.X; myYmax = e.Y;
+ if (myCurrentPressedKey == CurrentPressedKey.CurPressedKey_Shift)
+ MultiInputEvent(myXmax, myYmax);
+ else
+ InputEvent(myXmax, myYmax);
+ }
+ else
+ {
+ myXmax = e.X; myYmax = e.Y;
+ DrawRectangle(false);
+ if (myCurrentPressedKey == CurrentPressedKey.CurPressedKey_Shift)
+ MultiDragEvent(myXmax, myYmax, 1);
+ else
+ DragEvent(myXmax, myYmax, 1);
+ }
+ break;
+ case CurrentAction3d.CurAction3d_DynamicZooming:
+ myCurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ break;
+ case CurrentAction3d.CurAction3d_WindowZooming:
+ myXmax = e.X; myYmax = e.Y;
+ DrawRectangle(false);
+ int ValZWMin = 1;
+ if (Math.Abs(myXmax - myXmin) > ValZWMin && Math.Abs(myXmax - myYmax) > ValZWMin)
+ myOCCTProxy.WindowFitAll(myXmin, myYmin, myXmax, myYmax);
+ this.Cursor = System.Windows.Forms.Cursors.Default;
+ IE_WinForms.Form1 f = (IE_WinForms.Form1)this.ParentForm;
+ f.SelectionChanged();
+ myCurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ break;
+ case CurrentAction3d.CurAction3d_DynamicPanning:
+ myCurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ break;
+ case CurrentAction3d.CurAction3d_GlobalPanning:
+ myOCCTProxy.Place(e.X, e.Y, myCurZoom);
+ myCurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ break;
+ case CurrentAction3d.CurAction3d_DynamicRotation:
+ myCurrentMode = CurrentAction3d.CurAction3d_Nothing;
+ if (!myDegenerateModeIsOn)
+ {
+ myOCCTProxy.SetDegenerateModeOff();
+ myDegenerateModeIsOn = false;
+ }
+ else
+ {
+ myOCCTProxy.SetDegenerateModeOn();
+ myDegenerateModeIsOn = true;
+ }
+ break;
+ default:
+ break;
+
+ }
+ break;
+ case MouseButtons.Right:
+ if (!myDegenerateModeIsOn)
+ {
+ myOCCTProxy.SetDegenerateModeOff();
+ myDegenerateModeIsOn = false;
+ }
+ else
+ {
+ myOCCTProxy.SetDegenerateModeOn();
+ myDegenerateModeIsOn = true;
+ }
+ break;
+ default:
+ break;
+ }
+
+ IE_WinForms.Form1 parent = (IE_WinForms.Form1)this.ParentForm;
+ parent.SelectionChanged();
+ }
+
+ protected void MultiInputEvent(int x, int y)
+ {
+ myOCCTProxy.ShiftSelect();
+ }
+
+ protected void InputEvent(int x, int y)
+ {
+ myOCCTProxy.Select();
+ }
+
+ private void DrawRectangle(bool draw)
+ {
+ Graphics gr = Graphics.FromHwnd(this.Handle);
+ System.Drawing.Pen p = null;
+ if (this.IsRectVisible || (!draw))//erase the rect
+ {
+ int r = myOCCTProxy.GetBGColR();
+ int g = myOCCTProxy.GetBGColG();
+ int b = myOCCTProxy.GetBGColB();
+ p = new Pen(System.Drawing.Color.FromArgb(r, g, b));
+ this.IsRectVisible = false;
+ this.myOCCTProxy.UpdateView();
+ }
+ else if (draw)
+ {
+ p = new Pen(System.Drawing.Color.White);
+ this.IsRectVisible = true;
+ }
+ if (p == null)
+ return;
+ int x = Math.Min(this.myXmin, this.myXmax);
+ int y = Math.Min(this.myYmin, this.myYmax);
+ gr.DrawRectangle(p, x, y, Math.Abs(myXmax - myXmin), Math.Abs(myYmax - myYmin));
+ this.theRectDownX = Math.Max(this.myXmin, this.myXmax);
+ this.theRectDownY = Math.Max(this.myYmin, this.myYmax);
+ }
+
+ private void Form2_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
+ {
+ if (e.Button == MouseButtons.Left) //left button is pressed
+ {
+ if (myCurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl)
+ {
+ myOCCTProxy.Zoom(myXmax, myYmax, e.X, e.Y);
+ myXmax = e.X; myYmax = e.Y;
+ }
+ else
+ {
+ switch (myCurrentMode)
+ {
+ case CurrentAction3d.CurAction3d_Nothing:
+ DrawRectangle(false);
+ myXmax = e.X; myYmax = e.Y;
+ DrawRectangle(true);
+ break;
+ case CurrentAction3d.CurAction3d_DynamicZooming:
+ myOCCTProxy.Zoom(myXmax, myYmax, e.X, e.Y);
+ myXmax = e.X; myYmax = e.Y;
+ break;
+ case CurrentAction3d.CurAction3d_WindowZooming:
+ DrawRectangle(false);
+ myXmax = e.X; myYmax = e.Y;
+ DrawRectangle(true);//add brush here
+ break;
+ case CurrentAction3d.CurAction3d_DynamicPanning:
+ myOCCTProxy.Pan(e.X - myXmax, myYmax - e.Y);
+ myXmax = e.X; myYmax = e.Y;
+ break;
+ case CurrentAction3d.CurAction3d_GlobalPanning:
+ break;
+ case CurrentAction3d.CurAction3d_DynamicRotation:
+ myOCCTProxy.Rotation(e.X, e.Y);
+ myOCCTProxy.RedrawView();
+ break;
+ default:
+ break;
+ }
+ }
+ } // e.Button == MouseButtons.Left
+ else if (e.Button == MouseButtons.Middle)
+ {
+ if (myCurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl)
+ {
+ myOCCTProxy.Pan(e.X - myXmax, myYmax - e.Y);
+ myXmax = e.X; myYmax = e.Y;
+ }
+ }//e.Button=MouseButtons.Middle
+ else if (e.Button == MouseButtons.Right) //right button is pressed
+ {
+ if (myCurrentPressedKey == CurrentPressedKey.CurPressedKey_Ctrl)
+ myOCCTProxy.Rotation(e.X, e.Y);
+ }
+ else // no buttons are pressed
+ {
+ myXmax = e.X; myYmax = e.Y;
+ if (myCurrentPressedKey == CurrentPressedKey.CurPressedKey_Shift)
+ MultiMoveEvent(e.X, e.Y);
+ else
+ MoveEvent(e.X, e.Y);
+ }
+
+
+ }
+
+ protected void MultiMoveEvent(int x, int y)
+ {
+ myOCCTProxy.MoveTo(x, y);
+ }
+
+ protected void MoveEvent(int x, int y)
+ {
+ myOCCTProxy.MoveTo(x, y);
+ }
+
+ public void SetDisplayMode(int aMode)
+ {
+ myOCCTProxy.SetDisplayMode(aMode);
+ }
+
+ public void ChangeColor(bool IsObjectColor)
+ {
+ int r, g, b;
+ if (IsObjectColor)
+ {
+ r = myOCCTProxy.GetObjColR();
+ g = myOCCTProxy.GetObjColG();
+ b = myOCCTProxy.GetObjColB();
+ }
+ else
+ {
+ r = myOCCTProxy.GetBGColR();
+ g = myOCCTProxy.GetBGColG();
+ b = myOCCTProxy.GetBGColB();
+ }
+ System.Windows.Forms.ColorDialog ColDlg = new ColorDialog();
+ ColDlg.Color = System.Drawing.Color.FromArgb(r, g, b);
+ if (ColDlg.ShowDialog() == DialogResult.OK)
+ {
+ Color c = ColDlg.Color;
+ r = c.R;
+ g = c.G;
+ b = c.B;
+ if (IsObjectColor)
+ myOCCTProxy.SetColor(r, g, b);
+ else
+ myOCCTProxy.SetBackgroundColor(r, g, b);
+ }
+ this.myOCCTProxy.UpdateCurrentViewer();
+
+ }
+
+ public void DeleteObjects()
+ {
+ myOCCTProxy.EraseObjects();
+ }
+ public void ImportModel(IE_WinForms.ModelFormat format)
+ {
+ int theformat = 10;
+ System.Windows.Forms.OpenFileDialog openDialog = new OpenFileDialog();
+
+ string DataDir = ((Environment.GetEnvironmentVariable("CASROOT")) + "\\..\\data");
+
+ string filter = "";
+
+ switch (format)
+ {
+ case ModelFormat.BREP:
+ openDialog.InitialDirectory = (DataDir + "\\occ");
+ theformat = 0;
+ filter = "BREP Files (*.brep *.rle)|*.brep; *.rle";
+ break;
+ case ModelFormat.CSFDB:
+ theformat = 1;
+ filter = "CSFDB Files (*.csfdb)|*.csfdb";
+ break;
+ case IE_WinForms.ModelFormat.STEP:
+ openDialog.InitialDirectory = (DataDir + "\\step");
+ theformat = 2;
+ filter = "STEP Files (*.stp *.step)|*.stp; *.step";
+ break;
+ case IE_WinForms.ModelFormat.IGES:
+ openDialog.InitialDirectory = (DataDir + "\\iges");
+ theformat = 3;
+ filter = "IGES Files (*.igs *.iges)|*.igs; *.iges";
+ break;
+ default:
+ break;
+ }
+ openDialog.Filter = filter + "|All files (*.*)|*.*";
+ if (openDialog.ShowDialog() == DialogResult.OK)
+ {
+ string filename = openDialog.FileName;
+ if (filename == "")
+ return;
+ this.Cursor = System.Windows.Forms.Cursors.WaitCursor;
+ if (!myOCCTProxy.TranslateModel(filename, theformat, true))
+ MessageBox.Show("Cann't read this file", "Error!",
+ MessageBoxButtons.OK, MessageBoxIcon.Warning);
+ this.Cursor = System.Windows.Forms.Cursors.Default;
+ }
+ this.myOCCTProxy.ZoomAllView();
+ }
+
+ public void ExportModel(ModelFormat format)
+ {
+ int theformat = 10;
+ System.Windows.Forms.SaveFileDialog saveDialog = new SaveFileDialog();
+ string DataDir = ((Environment.GetEnvironmentVariable("CASROOT")) + "\\..\\data");
+ string filter = "";
+ switch (format)
+ {
+ case IE_WinForms.ModelFormat.BREP:
+ saveDialog.InitialDirectory = (DataDir + "\\occ");
+ theformat = 0;
+ filter = "BREP Files (*.brep *.rle)|*.brep; *.rle";
+ break;
+ case IE_WinForms.ModelFormat.CSFDB:
+ theformat = 1;
+ filter = "CSFDB Files (*.csfdb)|*.csfdb";
+ break;
+ case IE_WinForms.ModelFormat.STEP:
+ saveDialog.InitialDirectory = (DataDir + "\\step");
+ theformat = 2;
+ filter = "STEP Files (*.stp *.step)|*.step; *.stp";
+ break;
+ case IE_WinForms.ModelFormat.IGES:
+ saveDialog.InitialDirectory = (DataDir + "\\iges");
+ theformat = 3;
+ filter = "IGES Files (*.igs *.iges)| *.iges; *.igs";
+ break;
+ case IE_WinForms.ModelFormat.VRML:
+ saveDialog.InitialDirectory = (DataDir + "\\vrml");
+ theformat = 4;
+ filter = "VRML Files (*.vrml)|*.vrml";
+ break;
+ case IE_WinForms.ModelFormat.STL:
+ saveDialog.InitialDirectory = (DataDir + "\\stl");
+ theformat = 5;
+ filter = "STL Files (*.stl)|*.stl";
+ break;
+ case IE_WinForms.ModelFormat.IMAGE:
+ saveDialog.InitialDirectory = (DataDir + "\\images");
+ theformat = 6;
+ filter = "Images Files (*.bmp *.gif)| *.bmp; *.gif";
+ break;
+ default:
+ break;
+ }
+ saveDialog.Filter = filter;
+ if (saveDialog.ShowDialog() == DialogResult.OK)
+ {
+ string filename = saveDialog.FileName;
+ if (filename == "")
+ return;
+ this.Cursor = System.Windows.Forms.Cursors.WaitCursor;
+ if (!myOCCTProxy.TranslateModel(filename, theformat, false))
+ MessageBox.Show("Cann't write this file", "Error!",
+ MessageBoxButtons.OK, MessageBoxIcon.Warning);
+ this.Cursor = System.Windows.Forms.Cursors.Default;
+ }
+ }
+
+ private void ContextColor_Click(object sender, System.EventArgs e)
+ {
+ this.ChangeColor(true);
+ }
+
+ private void menuItem1_Click(object sender, System.EventArgs e)
+ {
+ this.myOCCTProxy.UpdateCurrentViewer();
+ this.ChangeColor(false);
+ }
+
+ private void ContextWireframe_Click(object sender, System.EventArgs e)
+ {
+ this.SetDisplayMode(0);
+ this.myOCCTProxy.UpdateCurrentViewer();
+ IE_WinForms.Form1 parent = (IE_WinForms.Form1)this.ParentForm;
+ parent.SelectionChanged();
+ }
+
+ private void ContextShading_Click(object sender, System.EventArgs e)
+ {
+ this.SetDisplayMode(1);
+ this.myOCCTProxy.UpdateCurrentViewer();
+ IE_WinForms.Form1 parent = (IE_WinForms.Form1)this.ParentForm;
+ parent.SelectionChanged();
+ }
+
+ private void ContMenTranc_Click(object sender, System.EventArgs e)
+ {
+ IE_WinForms.TransparencyDialog dlg = new TransparencyDialog();
+ dlg.View = this.myOCCTProxy;
+ dlg.ShowDialog(this);
+ }
+
+ private void ContMenDelete_Click(object sender, System.EventArgs e)
+ {
+ this.DeleteObjects();
+ }
+
+ private void ContMatBrass_Click(object sender, System.EventArgs e)
+ {
+ this.myOCCTProxy.UpdateCurrentViewer();
+ this.myOCCTProxy.SetMaterial(0);
+ }
+
+ private void ContMenBronze_Click(object sender, System.EventArgs e)
+ {
+ this.myOCCTProxy.UpdateCurrentViewer();
+ this.myOCCTProxy.SetMaterial(1);
+ }
+
+ private void ContMenCopper_Click(object sender, System.EventArgs e)
+ {
+ this.myOCCTProxy.UpdateCurrentViewer();
+ this.myOCCTProxy.SetMaterial(2);
+ }
+
+ private void ContMenGold_Click(object sender, System.EventArgs e)
+ {
+ this.myOCCTProxy.UpdateCurrentViewer();
+ this.myOCCTProxy.SetMaterial(3);
+ }
+
+ private void ContMenPewt_Click(object sender, System.EventArgs e)
+ {
+ this.myOCCTProxy.UpdateCurrentViewer();
+ this.myOCCTProxy.SetMaterial(4);
+ }
+
+ private void ContMenPlaster_Click(object sender, System.EventArgs e)
+ {
+ this.myOCCTProxy.UpdateCurrentViewer();
+ this.myOCCTProxy.SetMaterial(5);
+ }
+
+ private void ContMenPlastic_Click(object sender, System.EventArgs e)
+ {
+ this.myOCCTProxy.UpdateCurrentViewer();
+ this.myOCCTProxy.SetMaterial(6);
+ }
+
+ private void ContMenSilver_Click(object sender, System.EventArgs e)
+ {
+ this.myOCCTProxy.UpdateCurrentViewer();
+ this.myOCCTProxy.SetMaterial(7);
+ }
+
+ private void toolBar1_MouseHover(object sender, System.EventArgs e)
+ {
+ IE_WinForms.Form1 parent = (IE_WinForms.Form1)this.ParentForm;
+ parent.StatusBar.Text = "View toolbar";
+
+ }
+
+ private void toolBar1_MouseLeave(object sender, System.EventArgs e)
+ {
+ IE_WinForms.Form1 parent = (IE_WinForms.Form1)this.ParentForm;
+ parent.StatusBar.Text = "";
+ }
+
+ private void myPopupObject_Popup(object sender, System.EventArgs e)
+ {
+ int mode = this.myOCCTProxy.DisplayMode();
+ switch (mode)
+ {
+ case -1:
+ break;
+ case 0:
+ this.ContextWireframe.Enabled = false;
+ this.ContextShading.Enabled = true;
+ this.ContMenTranc.Enabled = false;
+ break;
+ case 1:
+ this.ContextShading.Enabled = false;
+ this.ContextWireframe.Enabled = true;
+ this.ContMenTranc.Enabled = true;
+ break;
+ case 10:
+ this.ContextShading.Enabled = true; ;
+ this.ContextWireframe.Enabled = true;
+ this.ContMenTranc.Enabled = true;
+ break;
+ default:
+ break;
+
+ }
+ }
+
+ public OCCTProxy View
+ {
+ get
+ {
+ return this.myOCCTProxy;
+ }
+ set
+ {
+ this.myOCCTProxy = value;
+ }
+ }
+
+ public void InitView()
+ {
+ this.myOCCTProxy.InitOCCTProxy();
+ }
+
+ public void SetIndex(int documentIndex, int viewIndex)
+ {
+ this.myDocumentIndex = documentIndex;
+ this.myViewIndex = viewIndex;
+ this.Text = System.String.Format("Document {0}:{1}", documentIndex, viewIndex);
+ }
+
+ public void SetNextIndex(Form2 other)
+ {
+ SetIndex(other.myDocumentIndex, other.myViewIndex + 1);
+ }
+
+ public void SetContext(OCCTProxy View)
+ {
+ this.myOCCTProxy.SetAISContext(View);
+ }
+
+ private void Form2_Closed(object sender, System.EventArgs e)
+ {
+ IE_WinForms.Form1 parent = (IE_WinForms.Form1)this.ParentForm;
+ parent.OnFileClose();
+ }
+
+ public CurrentAction3d Mode
+ {
+ get
+ {
+ return this.myCurrentMode;
+ }
+ set
+ {
+ this.myCurrentMode = value;
+ }
+ }
+
+ public float Zoom
+ {
+ set
+ {
+ this.myCurZoom = value;
+ }
+ }
+
+ public bool DegenerateMode
+ {
+ get
+ {
+ return this.myDegenerateModeIsOn;
+ }
+ set
+ {
+ this.myDegenerateModeIsOn = value;
+ }
+ }
+
+ }
+
+}
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 1.3
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">1.3</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1">this is my long string</data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ [base64 mime encoded serialized .NET Framework object]
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ [base64 mime encoded string representing a byte array form of the .NET Framework object]
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used forserialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>1.3</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <data name="imageList1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="imageList1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="imageList1.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>17, 17</value>
+ </data>
+ <data name="imageList1.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
+ <value>
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFpTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0xLjAuNTAw
+ MC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZT
+ eXN0ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMA
+ AADoEgAAAk1TRnQBSQFMAgEBEAEAARMBAAEEAQABEAEAARABAAT/AQkBEAj/AUIBTQE2AQQGAAE2AQQC
+ AAEoAwABQAMAAVADAAEBAQABCAYAARQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB
+ 3AHAAQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IB
+ AAM5AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8B
+ MwMAAWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYC
+ AAFmAZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMC
+ AAHMAWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQAB
+ ZgEAATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8B
+ AAEzAWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQAB
+ MwGZAWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQAB
+ MwLMAQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQAB
+ MwEAAWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMB
+ mQEAAWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQAB
+ ZgGZAWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYB
+ zAH/AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMB
+ mQEAAZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgAB
+ mQFmATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwB
+ AAKZAf8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB
+ /wEzAQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQAB
+ mQEAAcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYC
+ AAHMAWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYB
+ AAHMApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8C
+ AAHMAf8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQAB
+ mQEAAcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMB
+ AAHMAmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB
+ /wGZAcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC
+ /wEzAQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC
+ /wFmAQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gB
+ AAHwAfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD//8A/wD/AP8ACwAB
+ +z4AA/sB7D0AAfsCAAHsCAAD+zQAAuwGAAL7AQAC+w0AAewjAATsBgAC+wEAAvsOAAHsGwAC+wMAAuwC
+ AAHsAQAB7AUAAvsBAAL7DwAF7AEAAuwVAAP7AewEAALsBQAC+wEAAvsPAAHsHgAB7AL7AwAD7AUAA/sQ
+ AAHsHgAB7AMAAfsBAAHsAQAB7BgAAeweAAHsBAAB7AIAAewYAAHsHwAB7AMAAewDAAP7MAAD+wIAAuwB
+ AAHsAQAC7AMAAfsVAAHsHQAD7AIAAuwbAAHsHAAB7AEAA+w8AALsPwAB7EIAAfs/AAH7CwABAQnsAwAJ
+ 7AEBCgAC7AGGDgAB+wEAAfsBAAH7CQACAQcAAuwCAAHsAf4HAAIBCQABhgH7AewCAAEKAQQGAAoBCAAB
+ AQEAAQEGAAHsAQAB7AEAAewBAAH+BgABAQEAAQEGAAHsA/sB7AEKAQABhQEAAYUFAAHsAQEDAAP7AQAC
+ AQcAAQECAAEBBf4B7AL+AuwCAAb+AQAC/gEBBAABhgFYAa4BhQEEAQoBhQEAAYUCXwGFBAAB7AEAAQED
+ AAH7AgAB7AEAAQEFAAH7AQECAAEBBQAB7AIAAuwCAAH+BQABAQIAAQEEAAGGAewBrgEAAYoDAAGFAV8B
+ AAEGAQQDAAHsAgAKAQUAAQEB+wEAAQEFAAHsAgAC7AIAAf4FAAEBAgAB+wQAAYYB7AIAAX0BrAIAAYUB
+ awHZAccBCgMAAewCAAH+BQAB7AIAAewCAAP7AQEC+wEBBQAB7AIAAuwCAAH+BQABAQEAAfsBAQQAAvsB
+ hgEAAfsBngHHAQABuAFfAgABCgMAAewCAAH+BQAB7AIAAewFAAEBAfsBAAEBBQAB7AIAAuwCAAH+BQAB
+ AQb7AQABhgGuBAABsgG4AQoBXwGhAQABCgMAAewCAAH+BQAB7AIAAewEAAH7AQECAAEBBQAB7AIAAuwC
+ AAH+BQABAQEAAfsBAQgAAaECXwEGAQABhQFfAQABCgMAAewCAAH+BQAB7AIAAewFAAEBAuwBAQbsAgAK
+ 7AEBAgAB+wgAAQoBhQGhAf4CAAGFAgoDAAHsAgAB/gUAAewCAAHsBgABAQEAAQEGAAHsAQAB7AEAAewB
+ AAH+BgABAQEAAQEIAAEKAgAB/gQAAQoDAArsAgAB7AcAAgEHAALsAgAB7AH+BwACAQgAAYUBXwGhAf4B
+ hQFfAQoGAAHsAQAB/gYAAewBAAHsCAABAQnsAwAJ7AEBCQABhQFfAQYBXwGFCAAB7AH+BwAC7CkAAoUL
+ AArsOQAB+xkACuwGAArsCwAD+wgAAfsJAQYAAewB/gcAAuwFAAHsAf4HAALsCQAB+wEAAfsBAAH7BwAB
+ AQH7BwABAQHsBQAB7AEAAf4GAAHsAQAB7AQAAewBAAH+BgAB7AEAAewKAAH7CQABAQEAAfsGAAEBAQAB
+ 7AQAAewCAAoBAwAB7AIABv4B7AL+AewHAALsAfsBAAPsBQABAQIAAfsBAAH7A/4BAQL+AewDAAHsAgAB
+ AQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB7AQAAfsBAAHsAgAB+wMAAewB+wQAAQEDAAL7AwABAQIAAewD
+ AAHsAgABAQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB7AMAAfsCAAHsBgAB7AEAAfsDAAEBAgAD+wMAAQEC
+ AAHsAwAB7AIAAQEFAAHsAgABAQMAAewCAAH+BQAB7AIAAewCAAb7BAAF+wIAAQECAAH+BQABAQIAAewD
+ AAHsAgABAQUAAewCAAEBAwAB7AIAAf4FAAHsAgAB7AMAAfsCAAHsBgAB7AEAAfsDAAEBAgAB/gUAAQEC
+ AAHsAwAB7AIAAQEBAAT7AewCAAEBAwAB7AIAAf4FAAHsAgAB7AQAAfsBAAHsAgAB+wMAAewB+wQAAQEC
+ AAH+BQABAQIAAewDAAPsAQEB7AL7A+wCAAEBAwAKAQIAAewGAAPsAfsBAAPsBQAKAQIAAewEAAHsAQAB
+ AQEAAfsBAAH7AgAB7AEAAQEEAAEBAQAB/gYAAQEBAAHsCQAB+woAAewBAAH+BgAB7AEAAewFAAHsAQEB
+ AAH7AgAB+wIAAewBAQUAAQEB/gIAAfsEAAEBAewHAAH7AQAB+wEAAfsJAAHsAf4HAALsBgAKAQYAAgED
+ +wUBCAAD+wsACuwNAAH7CQAB+wEAAfsBAAH7DQAB+yQAAfsKAAH7NQAB+wkAAfsIAAP7CgAD+w4AAfsh
+ AAL7DAAC+wIAAewDAAfsA/sB7BYAAfsIAAH7AewBAwoAAfsBAAH7DgAB+xcAA/sJAAEDCQAB+xEAAewW
+ AAH7AQAB+wEAAfskAAHsDwAB+wgAAfsPAAXsBQAB7AYABOwCAAHsBwAF7AIAA/sHAAH7DQAB7AYAAewE
+ AAHsBAAB7AUAAewBAAHsBQAB7AYAAewCAAH7AwAB+wkAAfsIAAHsBwAB7AMAAewEAAHsBgAC7AUAAewH
+ AAHsBAAB+wsAAfsGAALsBwAC7AIAAewDAALsBgAC7AQAAuwHAAEDAewCAAX7BQAF+wUAAewJAAHsAgAB
+ 7AMAAewIAAHsBAAB7AQAA/sCAAHsAwAB+wsAAfsGAAHsCQAB7AIAAewDAAHsCAAB7AQAAewCAAL7BQAB
+ 7AQAAfsEAAH7BAAB+wcAAuwHAALsAgAB7AMAAuwGAALsBQAB7AcAAuwJAAH7CwAB+wEAAewHAAHsAwAB
+ 7AQAAewGAALsBQAB7AcAAewKAAH7CAAB+wEAAfsDAAHsBQAB7AH7AQAB+wEAAfsFAAHsBAAB7AEAAewB
+ AAP7AgAB7AUAAewJAAH7AQAB+wEAAfsGAAL7BQAF7AIABfsE7AEABuwIAAXsCwAD+wcAA/sKAAP7AQAB
+ +yUAAfsIAAFCAU0BPgcAAT4DAAEoAwABQAMAAVADAAEBAQABAQUAAYABAhYAA/+BAAH9B/8B+AF/Bv8B
+ /QG/AccB/wHAAR8BwAEfAf8BnwGTAf8CzwHfAc8B/gEfAZMB/wLXAd8B1wE5AY8BkwH/AdgBAwHfAdsB
+ wwHPAZMB/wLbAd8B2wHxAscB+wLbAd8B2wH3AVcB/wHBAtsB3wHbAfcBtwH/AZsC2wHfAdsB+wGoAf8B
+ rwHAARsBwAEbARkBTgH/AbUC6wHvAesBwgE/Af8BuQLzAfcB8wHBAv8BEQH4AQMB+AEDAecC/wG/BP8B
+ 9wf/Af4H/wH+Af8B4AEHAQABPwHxAf8B+gG/AecB8wE/AZ8B8QGfAYABHwHrAfUBXwGvAcABDwGcAU8B
+ 7AEAAWABBwGAAYcBrgHXAc0B9gFvAbcBgwGTAbABAwHlAfYBbwG3AZEBgwG3AdsBAQH2AW8BpwGAAZsB
+ twHbAeUB9gFvAYABlgELAbcB2wHNAfYBbwGnAfABSwG3AdsB4AEGAQABNwHwAWMBtwHbAfUB+gGvAdcB
+ +wFzAYABGwH5AfwBzwHnAfgBDwHXAesB/AEAAeABBwH8AR8B5wHzBP8B/gF/AfABAwb/Af4D/wGAAR8B
+ gAEfAfwBfwGAAR8BnwHPAZ8BzwH6Ab8BnwHPAa8B1wGvAdcB/gH/Aa8B1wGwAQMBsAEDAfABjwG0AQMB
+ twHbAbcB2wHWAecBuQHbAbcB2wG3AdsBtwHrAbEB2wG3AdsBtwHbAQMBwQG3AdsBtwHbAbcB2wG3AesB
+ twHbAbQBGwG3AdsB1gHnAbcB2wGAARsBgAEbAfABjwGAARsB1QFrAdcB6wH+Af8B1wHrAeUBswHmAfMB
+ +gG/AecB8wHwAQMB8AEDAfwBfwHwAQMB/wHvAfoBvwH+BP8B9wH+Bv8B+wH+Af8BHwH4Af8B/QT/AT8B
+ /AHcAQABfwH/Af4B/wEfAfoBzwH9AT8B/wH8AX8BzwH3AecB/QGfAf8B+gG/AecB/wHzAf0BzwH9Af4B
+ /wHyAQ8BuQENAeQBGAH+Af8B+QH3AbwB9QHzAe0B3wH3AvsBvQH5AvcBvwH7AfMB+QG5AfkB5wHzAQcB
+ wQH3Af0BuwH9Ae8BGwG/AfsB9wH9AbsB/QHsAfsB3gH3AfMB+QG5AfkB9wHzAf4B/wHrAfsBvQH5AvcB
+ /gH/AV0B8gG+AfUBGwHvAfoBvwE+AQwCAQH8AR8B/AF/AR8B+AG/A/8B/gH/FgAL
+</value>
+ </data>
+ <data name="myPopup.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="myPopup.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>122, 17</value>
+ </data>
+ <data name="myPopup.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="menuItem1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="menuItem1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="myPopupObject.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="myPopupObject.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>220, 17</value>
+ </data>
+ <data name="myPopupObject.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContextWireframe.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContextWireframe.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContextShading.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContextShading.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContextColor.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContextColor.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContextMaterial.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContextMaterial.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMatBrass.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMatBrass.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenBronze.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenBronze.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenCopper.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenCopper.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenGold.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenGold.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenPewt.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenPewt.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenPlaster.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenPlaster.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenPlastic.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenPlastic.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenSilver.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenSilver.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenTranc.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenTranc.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenDelete.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="ContMenDelete.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>(Default)</value>
+ </data>
+ <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.Name">
+ <value>Form2</value>
+ </data>
+ <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>8, 8</value>
+ </data>
+ <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>True</value>
+ </data>
+ <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>80</value>
+ </data>
+ <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>True</value>
+ </data>
+ <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>
+ AAABAAIAICAQAAAAAADoAgAAJgAAABAQEAAAAAAAKAEAAA4DAAAoAAAAIAAAAEAAAAABAAQAAAAAAIAC
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/
+ AAAA//8A/wAAAP8A/wD//wAA////AAiIiIAAiIgAAAAAAAAAAAAAAACIgAAIiAAAAAAAAAAAD///AA//
+ 8AiIAAAAAAAAAA////////8ACIgAAAAAAAAP//////////AIgAAAAAAAD///////////AIgAAAAAAA//
+ //////////AIAAAAAAAP////////////CIAAAAAAD///+IiIiIiIiACIiIiAAA/////////////wAAAA
+ iAAP////////////////8AiAD/////////////////8AgA//////////////////8IAP////////////
+ //////CID//////////////////wCA////iIiIiIiIiIiIiIiAgP//////////////////8ID///////
+ ////////////CA///////////////////wgP//////////////////8ID///////////////////CA//
+ /////////////////wgP///4iIiIiIiIiIiIiIgID///////////////////CA////mZ//mf+Zn/mZ//
+ /wgP///5/5+f+fn///n///8ID///+f+fn/n5///5////CA////n/n5/5+f//+f///wgP///5mf/5n/mZ
+ /5n///8ID///////////////////CA///////////////////wgAAAAAAAAAAAAAAAAAAAAAgcP//wAA
+ //8AAD//AAAP/wAAB/8AAAP/AAAD/wAAAf8AAAAHAAAAAwAAAAEAAAABAAAAAQAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAEoAAAAEAAAACAAAAABAAQAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAA
+ AACAAIAAgIAAAMDAwACAgIAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AAd3B3AAAAAAAAdwAHcA
+ AAAP8A//AHAAAA//////AAZgD/d3d3cHd2AP/////wAHcA////////AAD/d3d3d3dwcP////////Bw//
+ //////8HD5n/+f/5nwcPn5+fn5//Bw+fn5+fn/8HD5n/+f/5nwcP////////BwAAAAAAAAAAif8AAAA/
+ AAAAHwAAABkAAAABAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAA==
+</value>
+ </data>
+</root>
\ No newline at end of file
--- /dev/null
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
+ <PropertyGroup>
+ <ProjectType>Local</ProjectType>
+ <ProductVersion>9.0.30729</ProductVersion>
+ <SchemaVersion>2.0</SchemaVersion>
+ <ProjectGuid>{B9914BB3-B886-4B41-B48D-350EBEBEFD1F}</ProjectGuid>
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+ <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+ <ApplicationIcon>App.ico</ApplicationIcon>
+ <AssemblyKeyContainerName>
+ </AssemblyKeyContainerName>
+ <AssemblyName>IE_WinForms</AssemblyName>
+ <AssemblyOriginatorKeyFile>
+ </AssemblyOriginatorKeyFile>
+ <DefaultClientScript>JScript</DefaultClientScript>
+ <DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
+ <DefaultTargetSchema>IE50</DefaultTargetSchema>
+ <DelaySign>false</DelaySign>
+ <OutputType>WinExe</OutputType>
+ <RootNamespace>IE_WinForms</RootNamespace>
+ <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
+ <StartupObject>
+ </StartupObject>
+ <FileUpgradeFlags>
+ </FileUpgradeFlags>
+ <UpgradeBackupLocation>
+ </UpgradeBackupLocation>
+ <OldToolsVersion>2.0</OldToolsVersion>
+ <ApplicationRevision>0</ApplicationRevision>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+ <OutputPath>bin\Debug\</OutputPath>
+ <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+ <BaseAddress>285212672</BaseAddress>
+ <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+ <ConfigurationOverrideFile>
+ </ConfigurationOverrideFile>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <DocumentationFile>
+ </DocumentationFile>
+ <DebugSymbols>true</DebugSymbols>
+ <FileAlignment>4096</FileAlignment>
+ <NoStdLib>false</NoStdLib>
+ <NoWarn>
+ </NoWarn>
+ <Optimize>false</Optimize>
+ <RegisterForComInterop>false</RegisterForComInterop>
+ <RemoveIntegerChecks>false</RemoveIntegerChecks>
+ <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+ <WarningLevel>4</WarningLevel>
+ <DebugType>full</DebugType>
+ <ErrorReport>prompt</ErrorReport>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+ <OutputPath>bin\Release\</OutputPath>
+ <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
+ <BaseAddress>285212672</BaseAddress>
+ <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
+ <ConfigurationOverrideFile>
+ </ConfigurationOverrideFile>
+ <DefineConstants>TRACE</DefineConstants>
+ <DocumentationFile>
+ </DocumentationFile>
+ <DebugSymbols>false</DebugSymbols>
+ <FileAlignment>4096</FileAlignment>
+ <NoStdLib>false</NoStdLib>
+ <NoWarn>
+ </NoWarn>
+ <Optimize>true</Optimize>
+ <RegisterForComInterop>false</RegisterForComInterop>
+ <RemoveIntegerChecks>false</RemoveIntegerChecks>
+ <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
+ <WarningLevel>4</WarningLevel>
+ <DebugType>none</DebugType>
+ <ErrorReport>prompt</ErrorReport>
+ <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
+ <PlatformTarget>x86</PlatformTarget>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
+ <DebugSymbols>true</DebugSymbols>
+ <OutputPath>..\win32\bind\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <BaseAddress>285212672</BaseAddress>
+ <DebugType>full</DebugType>
+ <PlatformTarget>x86</PlatformTarget>
+ <ErrorReport>prompt</ErrorReport>
+ <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
+ <OutputPath>..\win32\bin\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <BaseAddress>285212672</BaseAddress>
+ <Optimize>true</Optimize>
+ <DebugType>
+ </DebugType>
+ <PlatformTarget>x86</PlatformTarget>
+ <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
+ <ErrorReport>prompt</ErrorReport>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' ">
+ <DebugSymbols>true</DebugSymbols>
+ <OutputPath>..\win64\bind\</OutputPath>
+ <DefineConstants>DEBUG;TRACE</DefineConstants>
+ <BaseAddress>285212672</BaseAddress>
+ <FileAlignment>4096</FileAlignment>
+ <DebugType>full</DebugType>
+ <PlatformTarget>x64</PlatformTarget>
+ <ErrorReport>prompt</ErrorReport>
+ </PropertyGroup>
+ <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' ">
+ <OutputPath>..\win64\bin\</OutputPath>
+ <DefineConstants>TRACE</DefineConstants>
+ <BaseAddress>285212672</BaseAddress>
+ <Optimize>true</Optimize>
+ <FileAlignment>4096</FileAlignment>
+ <PlatformTarget>x64</PlatformTarget>
+ <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
+ <ErrorReport>prompt</ErrorReport>
+ </PropertyGroup>
+ <ItemGroup>
+ <Reference Include="System">
+ <Name>System</Name>
+ </Reference>
+ <Reference Include="System.Configuration" />
+ <Reference Include="System.Data">
+ <Name>System.Data</Name>
+ </Reference>
+ <Reference Include="System.Drawing">
+ <Name>System.Drawing</Name>
+ </Reference>
+ <Reference Include="System.Windows.Forms">
+ <Name>System.Windows.Forms</Name>
+ </Reference>
+ <Reference Include="System.Xml">
+ <Name>System.XML</Name>
+ </Reference>
+ </ItemGroup>
+ <ItemGroup>
+ <Compile Include="AboutDialog.cs">
+ <SubType>Form</SubType>
+ </Compile>
+ <Compile Include="AssemblyInfo.cs">
+ <SubType>Code</SubType>
+ </Compile>
+ <Compile Include="Form1.cs">
+ <SubType>Form</SubType>
+ </Compile>
+ <Compile Include="Form2.cs">
+ <SubType>Form</SubType>
+ </Compile>
+ <Compile Include="MaterialDialog.cs">
+ <SubType>Form</SubType>
+ </Compile>
+ <Compile Include="TransparencyDialog.cs">
+ <SubType>Form</SubType>
+ </Compile>
+ <EmbeddedResource Include="AboutDialog.resx">
+ <DependentUpon>AboutDialog.cs</DependentUpon>
+ <SubType>Designer</SubType>
+ </EmbeddedResource>
+ <EmbeddedResource Include="Form1.resx">
+ <DependentUpon>Form1.cs</DependentUpon>
+ <SubType>Designer</SubType>
+ </EmbeddedResource>
+ <EmbeddedResource Include="Form2.resx">
+ <DependentUpon>Form2.cs</DependentUpon>
+ <SubType>Designer</SubType>
+ </EmbeddedResource>
+ <EmbeddedResource Include="MaterialDialog.resx">
+ <DependentUpon>MaterialDialog.cs</DependentUpon>
+ <SubType>Designer</SubType>
+ </EmbeddedResource>
+ <EmbeddedResource Include="TransparencyDialog.resx">
+ <DependentUpon>TransparencyDialog.cs</DependentUpon>
+ <SubType>Designer</SubType>
+ </EmbeddedResource>
+ <None Include="app.config" />
+ <Content Include="App.ico" />
+ </ItemGroup>
+ <ItemGroup>
+ <ProjectReference Include="..\OCCTProxy\OCCTProxy.vcproj">
+ <Project>{969912D9-78E7-4AB8-B4FF-6B52B4F03991}</Project>
+ <Name>OCCTProxy</Name>
+ </ProjectReference>
+ </ItemGroup>
+ <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+ <PropertyGroup>
+ <PreBuildEvent>
+ </PreBuildEvent>
+ <PostBuildEvent>
+ </PostBuildEvent>
+ </PropertyGroup>
+</Project>
\ No newline at end of file
--- /dev/null
+using System;
+using System.Drawing;
+using System.Collections;
+using System.ComponentModel;
+using System.Windows.Forms;
+
+namespace IE_WinForms
+{
+ /// <summary>
+ /// Summary description for MaterialDialog.
+ /// </summary>
+ public class MaterialDialog : System.Windows.Forms.Form
+ {
+ /// <summary>
+ /// Required designer variable.
+ /// </summary>
+ private System.ComponentModel.Container components = null;
+
+ public MaterialDialog()
+ {
+ //
+ // Required for Windows Form Designer support
+ //
+ InitializeComponent();
+
+ //
+ // TODO: Add any constructor code after InitializeComponent call
+ //
+ this.myView = null;
+ }
+
+ /// <summary>
+ /// Clean up any resources being used.
+ /// </summary>
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing)
+ {
+ if (components != null)
+ {
+ components.Dispose();
+ }
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+ /// <summary>
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ /// </summary>
+ private void InitializeComponent()
+ {
+ System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(MaterialDialog));
+ this.BTN_PLASTER = new System.Windows.Forms.Button();
+ this.BTN_BRASS = new System.Windows.Forms.Button();
+ this.BTN_BRONZE = new System.Windows.Forms.Button();
+ this.BTN_COPPER = new System.Windows.Forms.Button();
+ this.BTN_GOLD = new System.Windows.Forms.Button();
+ this.BTN_PEWTER = new System.Windows.Forms.Button();
+ this.BTN_PLASTIC = new System.Windows.Forms.Button();
+ this.BTN_SILVER = new System.Windows.Forms.Button();
+ this.SuspendLayout();
+ //
+ // BTN_PLASTER
+ //
+ this.BTN_PLASTER.Location = new System.Drawing.Point(16, 8);
+ this.BTN_PLASTER.Name = "BTN_PLASTER";
+ this.BTN_PLASTER.Size = new System.Drawing.Size(80, 24);
+ this.BTN_PLASTER.TabIndex = 0;
+ this.BTN_PLASTER.Text = "Plaster";
+ this.BTN_PLASTER.Click += new System.EventHandler(this.button1_Click);
+ //
+ // BTN_BRASS
+ //
+ this.BTN_BRASS.Location = new System.Drawing.Point(16, 40);
+ this.BTN_BRASS.Name = "BTN_BRASS";
+ this.BTN_BRASS.Size = new System.Drawing.Size(80, 24);
+ this.BTN_BRASS.TabIndex = 1;
+ this.BTN_BRASS.Text = "Brass";
+ this.BTN_BRASS.Click += new System.EventHandler(this.BTN_BRASS_Click);
+ //
+ // BTN_BRONZE
+ //
+ this.BTN_BRONZE.Location = new System.Drawing.Point(16, 72);
+ this.BTN_BRONZE.Name = "BTN_BRONZE";
+ this.BTN_BRONZE.Size = new System.Drawing.Size(80, 24);
+ this.BTN_BRONZE.TabIndex = 2;
+ this.BTN_BRONZE.Text = "Bronze";
+ this.BTN_BRONZE.Click += new System.EventHandler(this.BTN_BRONZE_Click);
+ //
+ // BTN_COPPER
+ //
+ this.BTN_COPPER.Location = new System.Drawing.Point(16, 104);
+ this.BTN_COPPER.Name = "BTN_COPPER";
+ this.BTN_COPPER.Size = new System.Drawing.Size(80, 24);
+ this.BTN_COPPER.TabIndex = 3;
+ this.BTN_COPPER.Text = "Copper";
+ this.BTN_COPPER.Click += new System.EventHandler(this.BTN_COPPER_Click);
+ //
+ // BTN_GOLD
+ //
+ this.BTN_GOLD.Location = new System.Drawing.Point(16, 136);
+ this.BTN_GOLD.Name = "BTN_GOLD";
+ this.BTN_GOLD.Size = new System.Drawing.Size(80, 24);
+ this.BTN_GOLD.TabIndex = 4;
+ this.BTN_GOLD.Text = "Gold";
+ this.BTN_GOLD.Click += new System.EventHandler(this.BTN_GOLD_Click);
+ //
+ // BTN_PEWTER
+ //
+ this.BTN_PEWTER.Location = new System.Drawing.Point(16, 168);
+ this.BTN_PEWTER.Name = "BTN_PEWTER";
+ this.BTN_PEWTER.Size = new System.Drawing.Size(80, 24);
+ this.BTN_PEWTER.TabIndex = 5;
+ this.BTN_PEWTER.Text = "Pewter";
+ this.BTN_PEWTER.Click += new System.EventHandler(this.BTN_PEWTER_Click);
+ //
+ // BTN_PLASTIC
+ //
+ this.BTN_PLASTIC.Location = new System.Drawing.Point(16, 200);
+ this.BTN_PLASTIC.Name = "BTN_PLASTIC";
+ this.BTN_PLASTIC.Size = new System.Drawing.Size(80, 24);
+ this.BTN_PLASTIC.TabIndex = 6;
+ this.BTN_PLASTIC.Text = "Plastic";
+ this.BTN_PLASTIC.Click += new System.EventHandler(this.BTN_PLASTIC_Click);
+ //
+ // BTN_SILVER
+ //
+ this.BTN_SILVER.Location = new System.Drawing.Point(16, 232);
+ this.BTN_SILVER.Name = "BTN_SILVER";
+ this.BTN_SILVER.Size = new System.Drawing.Size(80, 24);
+ this.BTN_SILVER.TabIndex = 7;
+ this.BTN_SILVER.Text = "Silver";
+ this.BTN_SILVER.Click += new System.EventHandler(this.BTN_SILVER_Click);
+ //
+ // MaterialDialog
+ //
+ this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+ this.ClientSize = new System.Drawing.Size(112, 273);
+ this.Controls.Add(this.BTN_SILVER);
+ this.Controls.Add(this.BTN_PLASTIC);
+ this.Controls.Add(this.BTN_PEWTER);
+ this.Controls.Add(this.BTN_GOLD);
+ this.Controls.Add(this.BTN_COPPER);
+ this.Controls.Add(this.BTN_BRONZE);
+ this.Controls.Add(this.BTN_BRASS);
+ this.Controls.Add(this.BTN_PLASTER);
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "MaterialDialog";
+ this.Text = "MaterialDialog";
+ this.ResumeLayout(false);
+
+ }
+ #endregion
+
+ private System.Windows.Forms.Button BTN_PLASTER;
+ private System.Windows.Forms.Button BTN_BRASS;
+ private System.Windows.Forms.Button BTN_BRONZE;
+ private System.Windows.Forms.Button BTN_COPPER;
+ private System.Windows.Forms.Button BTN_GOLD;
+ private System.Windows.Forms.Button BTN_PEWTER;
+ private System.Windows.Forms.Button BTN_PLASTIC;
+ private System.Windows.Forms.Button BTN_SILVER;
+
+ private int myMaterial;
+ private OCCTProxy myView;
+
+ private void button1_Click(object sender, System.EventArgs e)
+ {
+ this.myMaterial = 5;
+ ChangeMaterial();
+ }
+
+ private void BTN_BRASS_Click(object sender, System.EventArgs e)
+ {
+ this.myMaterial = 0;
+ ChangeMaterial();
+ }
+
+ private void BTN_BRONZE_Click(object sender, System.EventArgs e)
+ {
+ this.myMaterial = 1;
+ ChangeMaterial();
+ }
+
+ private void BTN_COPPER_Click(object sender, System.EventArgs e)
+ {
+ this.myMaterial = 2;
+ ChangeMaterial();
+ }
+
+ private void BTN_GOLD_Click(object sender, System.EventArgs e)
+ {
+ this.myMaterial = 3;
+ ChangeMaterial();
+ }
+
+ private void BTN_PEWTER_Click(object sender, System.EventArgs e)
+ {
+ this.myMaterial = 4;
+ ChangeMaterial();
+ }
+
+ private void BTN_PLASTIC_Click(object sender, System.EventArgs e)
+ {
+ this.myMaterial = 6;
+ ChangeMaterial();
+ }
+
+ private void BTN_SILVER_Click(object sender, System.EventArgs e)
+ {
+ this.myMaterial = 7;
+ ChangeMaterial();
+ }
+
+ public int Material
+ {
+ get
+ {
+ return this.myMaterial;
+ }
+ set
+ {
+ this.myMaterial = value;
+ }
+ }
+
+ public void ChangeMaterial()
+ {
+ if (myView == null)
+ return;
+ myView.SetMaterial(this.myMaterial);
+
+ }
+
+ public OCCTProxy View
+ {
+ set
+ {
+ this.myView = value;
+ }
+ }
+
+ }
+}
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 1.3
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">1.3</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1">this is my long string</data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ [base64 mime encoded serialized .NET Framework object]
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ [base64 mime encoded string representing a byte array form of the .NET Framework object]
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used forserialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>1.3</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <data name="BTN_PLASTER.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="BTN_PLASTER.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_PLASTER.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_BRASS.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="BTN_BRASS.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_BRASS.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_BRONZE.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="BTN_BRONZE.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_BRONZE.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_COPPER.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="BTN_COPPER.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_COPPER.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_GOLD.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="BTN_GOLD.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_GOLD.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_PEWTER.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="BTN_PEWTER.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_PEWTER.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_PLASTIC.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="BTN_PLASTIC.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_PLASTIC.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_SILVER.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="BTN_SILVER.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="BTN_SILVER.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>(Default)</value>
+ </data>
+ <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>8, 8</value>
+ </data>
+ <data name="$this.Name">
+ <value>MaterialDialog</value>
+ </data>
+ <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>True</value>
+ </data>
+ <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>80</value>
+ </data>
+ <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>True</value>
+ </data>
+ <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>
+ AAABAAEAMDAAAAAAAACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAgAoAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAMDcwADwyqYABAQEAAgICAAMDAwAERERABYW
+ FgAcHBwAIiIiACkpKQBVVVUATU1NAEJCQgA5OTkAgHz/AFBQ/wCTANYA/+zMAMbW7wDW5+cAkKmtAAAA
+ MwAAAGYAAACZAAAAzAAAMwAAADMzAAAzZgAAM5kAADPMAAAz/wAAZgAAAGYzAABmZgAAZpkAAGbMAABm
+ /wAAmQAAAJkzAACZZgAAmZkAAJnMAACZ/wAAzAAAAMwzAADMZgAAzJkAAMzMAADM/wAA/2YAAP+ZAAD/
+ zAAzAAAAMwAzADMAZgAzAJkAMwDMADMA/wAzMwAAMzMzADMzZgAzM5kAMzPMADMz/wAzZgAAM2YzADNm
+ ZgAzZpkAM2bMADNm/wAzmQAAM5kzADOZZgAzmZkAM5nMADOZ/wAzzAAAM8wzADPMZgAzzJkAM8zMADPM
+ /wAz/zMAM/9mADP/mQAz/8wAM///AGYAAABmADMAZgBmAGYAmQBmAMwAZgD/AGYzAABmMzMAZjNmAGYz
+ mQBmM8wAZjP/AGZmAABmZjMAZmZmAGZmmQBmZswAZpkAAGaZMwBmmWYAZpmZAGaZzABmmf8AZswAAGbM
+ MwBmzJkAZszMAGbM/wBm/wAAZv8zAGb/mQBm/8wAzAD/AP8AzACZmQAAmTOZAJkAmQCZAMwAmQAAAJkz
+ MwCZAGYAmTPMAJkA/wCZZgAAmWYzAJkzZgCZZpkAmWbMAJkz/wCZmTMAmZlmAJmZmQCZmcwAmZn/AJnM
+ AACZzDMAZsxmAJnMmQCZzMwAmcz/AJn/AACZ/zMAmcxmAJn/mQCZ/8wAmf//AMwAAACZADMAzABmAMwA
+ mQDMAMwAmTMAAMwzMwDMM2YAzDOZAMwzzADMM/8AzGYAAMxmMwCZZmYAzGaZAMxmzACZZv8AzJkAAMyZ
+ MwDMmWYAzJmZAMyZzADMmf8AzMwAAMzMMwDMzGYAzMyZAMzMzADMzP8AzP8AAMz/MwCZ/2YAzP+ZAMz/
+ zADM//8AzAAzAP8AZgD/AJkAzDMAAP8zMwD/M2YA/zOZAP8zzAD/M/8A/2YAAP9mMwDMZmYA/2aZAP9m
+ zADMZv8A/5kAAP+ZMwD/mWYA/5mZAP+ZzAD/mf8A/8wAAP/MMwD/zGYA/8yZAP/MzAD/zP8A//8zAMz/
+ ZgD//5kA///MAGZm/wBm/2YAZv//AP9mZgD/Zv8A//9mACEApQBfX18Ad3d3AIaGhgCWlpYAy8vLALKy
+ sgDX19cA3d3dAOPj4wDq6uoA8fHxAPj4+ADw+/8ApKCgAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
+ AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMT
+ ExMTExMTEyIiQiI8HTyCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwDODg4Nzc4MQMdAAAA
+ AADDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOw4ODgyOCQAAAAdAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODIyMSIAHewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAA7DI3MSIdCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAADEyMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs4JAALAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwxJAAhAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4IgC8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAJAxJB0LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ ALwLCx0dIh0dCwATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACx0dAB0dIiIiIiId
+ CxMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvAsdAB0dIiQkAyQkIiIiHSIAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAIgMxMVhZmZqZAyQiHR0AAAAAkAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAvAsdISIDMThZWVmgvaCZWVIkIh0AAB0dIh0hCwALCwALtgAAAAAAAAAAAAAAAOwAAB0iMTEx
+ ODhYWZrDw8Ofn1hSJCIAHQAdACIAHSIkAwsdOAAAAADeExMTCwsLIiIkMTEyODg3MllZmprDw8PDwllS
+ MSQdHQAAAB0AIiQkAAAAvDi8AAAxAzExMTExMTI4Nzg4ODc4ODhZXpnDw8PDml1YNwMkIh0AAB0hIiQA
+ AAAAACIAAAA4ODc4Nzg4ODg4ODg4ODg4ODhZWV6avb2gmllZODcxJCIAAAAdIgMLAAAAACIAAACGE0+G
+ T4bs7Oy8vLy8vAAxODg4ODg4NzIyMSQdHQAAvADsCwAiJDExAAAAwjjsAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAALMSQAAAAAAAAAAAAAAAAAEyI4MQsiOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALMSQAAAAA
+ AAAAAAAAAAAAAAC8CwsAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8AAsAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP///////wAA////////
+ AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA//8AAH//AAD//wAAf/8AAP//4AP//wAA///4B///AAD///gP//8AAP///B///wAA///8H///
+ AAD///wf//8AAP///h///wAA///8H///AAD//+AD//8AAP//wAD//wAA//4AAD//AAD//AAAB/8AAP/w
+ AAAAAwAA/8AAAAABAADAAAAAADgAAMAAAAAAPAAAwAAAAAA8AADAAAAAIDgAAP///j/+AQAA///+P/+D
+ AAD///4///8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA
+</value>
+ </data>
+</root>
\ No newline at end of file
--- /dev/null
+using System;
+using System.Drawing;
+using System.Collections;
+using System.ComponentModel;
+using System.Windows.Forms;
+
+namespace IE_WinForms
+{
+ /// <summary>
+ /// Summary description for TransparencyDialog.
+ /// </summary>
+ public class TransparencyDialog : System.Windows.Forms.Form
+ {
+ private System.Windows.Forms.NumericUpDown MyTransparency;
+ /// <summary>
+ /// Required designer variable.
+ /// </summary>
+ private System.ComponentModel.Container components = null;
+ private OCCTProxy myView;
+
+ public TransparencyDialog()
+ {
+ //
+ // Required for Windows Form Designer support
+ //
+ InitializeComponent();
+
+ //
+ // TODO: Add any constructor code after InitializeComponent call
+ //
+ myView = null;
+ }
+
+ /// <summary>
+ /// Clean up any resources being used.
+ /// </summary>
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing)
+ {
+ if (components != null)
+ {
+ components.Dispose();
+ }
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form Designer generated code
+ /// <summary>
+ /// Required method for Designer support - do not modify
+ /// the contents of this method with the code editor.
+ /// </summary>
+ private void InitializeComponent()
+ {
+ System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(TransparencyDialog));
+ this.MyTransparency = new System.Windows.Forms.NumericUpDown();
+ ((System.ComponentModel.ISupportInitialize)(this.MyTransparency)).BeginInit();
+ this.SuspendLayout();
+ //
+ // MyTransparency
+ //
+ this.MyTransparency.Location = new System.Drawing.Point(16, 16);
+ this.MyTransparency.Maximum = new System.Decimal(new int[] {
+ 10,
+ 0,
+ 0,
+ 0});
+ this.MyTransparency.Name = "MyTransparency";
+ this.MyTransparency.Size = new System.Drawing.Size(96, 20);
+ this.MyTransparency.TabIndex = 0;
+ this.MyTransparency.ValueChanged += new System.EventHandler(this.MyTransparency_ValueChanged);
+ //
+ // TransparencyDialog
+ //
+ this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
+ this.ClientSize = new System.Drawing.Size(128, 53);
+ this.Controls.Add(this.MyTransparency);
+ this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
+ this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
+ this.MaximizeBox = false;
+ this.MinimizeBox = false;
+ this.Name = "TransparencyDialog";
+ this.Text = "TransparencyDialog";
+ ((System.ComponentModel.ISupportInitialize)(this.MyTransparency)).EndInit();
+ this.ResumeLayout(false);
+
+ }
+ #endregion
+
+ private void MyTransparency_ValueChanged(object sender, System.EventArgs e)
+ {
+ if (this.myView == null)
+ return;
+ int transp = (int)this.MyTransparency.Value;
+ this.myView.SetTransparency(transp);
+ }
+
+ public OCCTProxy View
+ {
+ set
+ {
+ this.myView = value;
+ }
+ }
+
+ }
+}
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+ <!--
+ Microsoft ResX Schema
+
+ Version 1.3
+
+ The primary goals of this format is to allow a simple XML format
+ that is mostly human readable. The generation and parsing of the
+ various data types are done through the TypeConverter classes
+ associated with the data types.
+
+ Example:
+
+ ... ado.net/XML headers & schema ...
+ <resheader name="resmimetype">text/microsoft-resx</resheader>
+ <resheader name="version">1.3</resheader>
+ <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+ <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+ <data name="Name1">this is my long string</data>
+ <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+ <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+ [base64 mime encoded serialized .NET Framework object]
+ </data>
+ <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ [base64 mime encoded string representing a byte array form of the .NET Framework object]
+ </data>
+
+ There are any number of "resheader" rows that contain simple
+ name/value pairs.
+
+ Each data row contains a name, and value. The row also contains a
+ type or mimetype. Type corresponds to a .NET class that support
+ text/value conversion through the TypeConverter architecture.
+ Classes that don't support this are serialized and stored with the
+ mimetype set.
+
+ The mimetype is used forserialized objects, and tells the
+ ResXResourceReader how to depersist the object. This is currently not
+ extensible. For a given mimetype the value must be set accordingly:
+
+ Note - application/x-microsoft.net.object.binary.base64 is the format
+ that the ResXResourceWriter will generate, however the reader can
+ read any of the formats listed below.
+
+ mimetype: application/x-microsoft.net.object.binary.base64
+ value : The object must be serialized with
+ : System.Serialization.Formatters.Binary.BinaryFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.soap.base64
+ value : The object must be serialized with
+ : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+ : and then encoded with base64 encoding.
+
+ mimetype: application/x-microsoft.net.object.bytearray.base64
+ value : The object must be serialized into a byte array
+ : using a System.ComponentModel.TypeConverter
+ : and then encoded with base64 encoding.
+ -->
+ <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+ <xsd:element name="root" msdata:IsDataSet="true">
+ <xsd:complexType>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element name="data">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
+ <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+ <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="resheader">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd:string" use="required" />
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:schema>
+ <resheader name="resmimetype">
+ <value>text/microsoft-resx</value>
+ </resheader>
+ <resheader name="version">
+ <value>1.3</value>
+ </resheader>
+ <resheader name="reader">
+ <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <resheader name="writer">
+ <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+ </resheader>
+ <data name="MyTransparency.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="MyTransparency.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="MyTransparency.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>(Default)</value>
+ </data>
+ <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>False</value>
+ </data>
+ <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+ <value>8, 8</value>
+ </data>
+ <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>True</value>
+ </data>
+ <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>80</value>
+ </data>
+ <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>True</value>
+ </data>
+ <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+ <value>Private</value>
+ </data>
+ <data name="$this.Name">
+ <value>TransparencyDialog</value>
+ </data>
+ <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" mimetype="application/x-microsoft.net.object.bytearray.base64">
+ <value>
+ AAABAAEAMDAAAAAAAACoDgAAFgAAACgAAAAwAAAAYAAAAAEACAAAAAAAgAoAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAACAAACAAAAAgIAAgAAAAIAAgACAgAAAwMDAAMDcwADwyqYABAQEAAgICAAMDAwAERERABYW
+ FgAcHBwAIiIiACkpKQBVVVUATU1NAEJCQgA5OTkAgHz/AFBQ/wCTANYA/+zMAMbW7wDW5+cAkKmtAAAA
+ MwAAAGYAAACZAAAAzAAAMwAAADMzAAAzZgAAM5kAADPMAAAz/wAAZgAAAGYzAABmZgAAZpkAAGbMAABm
+ /wAAmQAAAJkzAACZZgAAmZkAAJnMAACZ/wAAzAAAAMwzAADMZgAAzJkAAMzMAADM/wAA/2YAAP+ZAAD/
+ zAAzAAAAMwAzADMAZgAzAJkAMwDMADMA/wAzMwAAMzMzADMzZgAzM5kAMzPMADMz/wAzZgAAM2YzADNm
+ ZgAzZpkAM2bMADNm/wAzmQAAM5kzADOZZgAzmZkAM5nMADOZ/wAzzAAAM8wzADPMZgAzzJkAM8zMADPM
+ /wAz/zMAM/9mADP/mQAz/8wAM///AGYAAABmADMAZgBmAGYAmQBmAMwAZgD/AGYzAABmMzMAZjNmAGYz
+ mQBmM8wAZjP/AGZmAABmZjMAZmZmAGZmmQBmZswAZpkAAGaZMwBmmWYAZpmZAGaZzABmmf8AZswAAGbM
+ MwBmzJkAZszMAGbM/wBm/wAAZv8zAGb/mQBm/8wAzAD/AP8AzACZmQAAmTOZAJkAmQCZAMwAmQAAAJkz
+ MwCZAGYAmTPMAJkA/wCZZgAAmWYzAJkzZgCZZpkAmWbMAJkz/wCZmTMAmZlmAJmZmQCZmcwAmZn/AJnM
+ AACZzDMAZsxmAJnMmQCZzMwAmcz/AJn/AACZ/zMAmcxmAJn/mQCZ/8wAmf//AMwAAACZADMAzABmAMwA
+ mQDMAMwAmTMAAMwzMwDMM2YAzDOZAMwzzADMM/8AzGYAAMxmMwCZZmYAzGaZAMxmzACZZv8AzJkAAMyZ
+ MwDMmWYAzJmZAMyZzADMmf8AzMwAAMzMMwDMzGYAzMyZAMzMzADMzP8AzP8AAMz/MwCZ/2YAzP+ZAMz/
+ zADM//8AzAAzAP8AZgD/AJkAzDMAAP8zMwD/M2YA/zOZAP8zzAD/M/8A/2YAAP9mMwDMZmYA/2aZAP9m
+ zADMZv8A/5kAAP+ZMwD/mWYA/5mZAP+ZzAD/mf8A/8wAAP/MMwD/zGYA/8yZAP/MzAD/zP8A//8zAMz/
+ ZgD//5kA///MAGZm/wBm/2YAZv//AP9mZgD/Zv8A//9mACEApQBfX18Ad3d3AIaGhgCWlpYAy8vLALKy
+ sgDX19cA3d3dAOPj4wDq6uoA8fHxAPj4+ADw+/8ApKCgAICAgAAAAP8AAP8AAAD//wD/AAAA/wD/AP//
+ AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABMT
+ ExMTExMTEyIiQiI8HTyCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwDODg4Nzc4MQMdAAAA
+ AADDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOw4ODgyOCQAAAAdAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAODIyMSIAHewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAA7DI3MSIdCwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAADEyMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAs4JAALAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALwxJAAhAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4IgC8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAJAxJB0LAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ ALwLCx0dIh0dCwATAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACx0dAB0dIiIiIiId
+ CxMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAvAsdAB0dIiQkAyQkIiIiHSIAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAIgMxMVhZmZqZAyQiHR0AAAAAkAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAvAsdISIDMThZWVmgvaCZWVIkIh0AAB0dIh0hCwALCwALtgAAAAAAAAAAAAAAAOwAAB0iMTEx
+ ODhYWZrDw8Ofn1hSJCIAHQAdACIAHSIkAwsdOAAAAADeExMTCwsLIiIkMTEyODg3MllZmprDw8PDwllS
+ MSQdHQAAAB0AIiQkAAAAvDi8AAAxAzExMTExMTI4Nzg4ODc4ODhZXpnDw8PDml1YNwMkIh0AAB0hIiQA
+ AAAAACIAAAA4ODc4Nzg4ODg4ODg4ODg4ODhZWV6avb2gmllZODcxJCIAAAAdIgMLAAAAACIAAACGE0+G
+ T4bs7Oy8vLy8vAAxODg4ODg4NzIyMSQdHQAAvADsCwAiJDExAAAAwjjsAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAALMSQAAAAAAAAAAAAAAAAAEyI4MQsiOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALMSQAAAAA
+ AAAAAAAAAAAAAAC8CwsAEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8AAsAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////AAD///////8AAP///////wAA////////
+ AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA//8AAH//AAD//wAAf/8AAP//4AP//wAA///4B///AAD///gP//8AAP///B///wAA///8H///
+ AAD///wf//8AAP///h///wAA///8H///AAD//+AD//8AAP//wAD//wAA//4AAD//AAD//AAAB/8AAP/w
+ AAAAAwAA/8AAAAABAADAAAAAADgAAMAAAAAAPAAAwAAAAAA8AADAAAAAIDgAAP///j/+AQAA///+P/+D
+ AAD///4///8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP//
+ /////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA
+</value>
+ </data>
+</root>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+ <appSettings>
+ <!-- User application and configured property settings go here.-->
+ <!-- Example: <add key="settingName" value="settingValue"/> -->
+ <add key="New.Visible" value="True" />
+ <add key="About.Visible" value="True" />
+ <add key="delete.Enabled" value="False" />
+ <add key="delete.Visible" value="False" />
+ <add key="transparency.Enabled" value="False" />
+ <add key="transparency.Visible" value="False" />
+ <add key="marerial.Enabled" value="False" />
+ <add key="marerial.Visible" value="True" />
+ <add key="color.Enabled" value="False" />
+ <add key="color.Visible" value="False" />
+ <add key="shading.Enabled" value="False" />
+ <add key="shading.Pushed" value="False" />
+ <add key="shading.Visible" value="False" />
+ <add key="wireframe.Enabled" value="False" />
+ <add key="wireframe.Pushed" value="False" />
+ <add key="wireframe.Visible" value="False" />
+ <add key="material.Enabled" value="False" />
+ <add key="material.Visible" value="False" />
+ <add key="ClientSettingsProvider.ServiceUri" value="" />
+ </appSettings>
+ <system.web>
+ <membership defaultProvider="ClientAuthenticationMembershipProvider">
+ <providers>
+ <add name="ClientAuthenticationMembershipProvider" type="System.Web.ClientServices.Providers.ClientFormsAuthenticationMembershipProvider, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" />
+ </providers>
+ </membership>
+ <roleManager defaultProvider="ClientRoleProvider" enabled="true">
+ <providers>
+ <add name="ClientRoleProvider" type="System.Web.ClientServices.Providers.ClientRoleProvider, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" serviceUri="" cacheTimeout="86400" />
+ </providers>
+ </roleManager>
+ </system.web>
+</configuration>
\ No newline at end of file
call "%~dp0..\..\env.bat" %1 %2 %3
if ["%CASDEB%"] == [""] (
- call "%~dp0..\..\msvc.bat" %VCVER% win%ARCH% "" "%~dp0IE\IE.sln"
+ call "%~dp0..\..\msvc.bat" %VCVER% win%ARCH% Release "%~dp0\CSharp.sln"
) else (
- call "%~dp0..\..\msvc.bat" %VCVER% win%ARCH% %CASDEB% "%~dp0IE\IE.sln"
+ call "%~dp0..\..\msvc.bat" %VCVER% win%ARCH% Debug "%~dp0\CSharp.sln"
)
\ No newline at end of file
+++ /dev/null
-call "%~dp0..\..\env.bat" %1 %2 %3
-
-set "BinDir=Debug"
-
-if ["%CASDEB%"] == [""] (
- set "BinDir=Release"
-)
-
-"%~dp0IE\bin\%BinDir%\IE.exe"
\ No newline at end of file
--- /dev/null
+@echo off
+
+if "%1" == "-h" (
+ echo Launch WinForms sample as follows:
+ echo %~n0 ^[vc9^] ^[win32^|win64^] ^[Debug^|Release^]
+ echo By default configuration set in ..\..\custom.bat is used
+ echo Run %~n0 -h to get this help
+ exit /B
+)
+
+call "%~dp0..\..\env.bat" %1 %2 %3
+
+set "EXEC=%~dp0\win%ARCH%\bin%CASDEB%\IE_WinForms.exe"
+
+if not exist "%EXEC%" goto err_exe
+
+"%EXEC%"
+
+goto eof
+
+:err_exe
+echo Executable %EXEC% not found.
+echo Check that OCCT and sample are built with the selected configuration:
+echo compiler=%VCVER% platform=win%ARCH% %3
+exit /B
+
+:eof
\ No newline at end of file
--- /dev/null
+@echo off
+
+if "%1" == "-h" (
+ echo Launch WPF sample as follows:
+ echo %~n0 ^[vc9^] ^[win32^|win64^] ^[Debug^|Release^]
+ echo By default configuration set in ..\..\custom.bat is used
+ echo Run %~n0 -h to get this help
+ exit /B
+)
+
+call "%~dp0..\..\env.bat" %1 %2 %3
+
+set "EXEC=%~dp0\win%ARCH%\bin%CASDEB%\IE_WPF.exe"
+
+if not exist "%EXEC%" goto err_exe
+
+"%EXEC%"
+
+goto eof
+
+:err_exe
+echo Executable %EXEC% not found.
+echo Check that OCCT and sample are built with the selected configuration:
+echo compiler=%VCVER% platform=win%ARCH% %3
+exit /B
+
+:eof
\ No newline at end of file
+++ /dev/null
-#include ".\shell.h"
-
+++ /dev/null
-#pragma once
-#using <mscorlib.dll>
-#include "OCCViewer.h"
-#include "StdAfx.h"
-
-public ref class shell
-{
-
-private:
- OCCViewer* myOCCViewer;
-public:
-
- bool InitViewer(System::IntPtr wnd)
- {
- if (myOCCViewer != NULL)
- return myOCCViewer->InitViewer(wnd.ToPointer());
- else
- return false;
- }
-
- bool ImportBrep(System::String^ filename)
- {
- if (myOCCViewer == NULL)
- return false;
- int length = filename->Length;
- char * fname = new char[length+1];
- for(int i = 0; i<length; i++)
- fname[i] = (char)filename->ToCharArray()[i];
-
- fname[length] = '\0';
- bool res = myOCCViewer->ImportBRep(fname);
- delete [] fname;
- return res;
- }
-
- void RedrawView(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->RedrawView();
- }
-
- void UpdateView(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->UpdateView();
- }
-
- void SetDegenerateModeOn(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->SetDegenerateModeOn();
- }
-
- void SetDegenerateModeOff(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->SetDegenerateModeOff();
- }
-
- void WindowFitAll(int Xmin, int Ymin, int Xmax, int Ymax)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->WindowFitAll(Xmin, Ymin, Xmax, Ymax);
- }
-
- void Place(int x, int y, float zoomFactor)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->Place(x, y, zoomFactor);
- }
-
- void Zoom(int x1, int y1, int x2, int y2)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->Zoom(x1, y1, x2, y2);
- }
-
- void Pan(int x, int y)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->Pan(x, y);
- }
-
- void Rotation(int x, int y)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->Rotation(x, y);
- }
-
- void StartRotation(int x, int y)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->StartRotation(x, y);
- }
-
- void Select(int x1, int y1, int x2, int y2)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->Select(x1, y1, x2, y2);
- }
-
- void Select(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->Select();
- }
-
- void MoveTo(int x, int y)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->MoveTo(x, y);
- }
-
- void ShiftSelect(int x1, int y1, int x2, int y2)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->ShiftSelect(x1, y1, x2, y2);
- }
-
- void ShiftSelect(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->ShiftSelect();
- }
-
- int GetBGColR(void)
- {
- int r, b, g;
- if (myOCCViewer != NULL)
- myOCCViewer->BackgroundColor(r,g,b);
- return r;
- }
-
- int GetBGColG(void)
- {
- int r, b, g;
- if (myOCCViewer != NULL)
- myOCCViewer->BackgroundColor(r,g,b);
- return g;
- }
-
- int GetBGColB(void)
- {
- int r, b, g;
- if (myOCCViewer != NULL)
- myOCCViewer->BackgroundColor(r,g,b);
- return b;
- }
-
- void UpdateCurrentViewer(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->UpdateCurrentViewer();
- }
-
- void FrontView(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->FrontView();
- }
-
- void TopView(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->TopView();
- }
-
- void LeftView(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->LeftView();
- }
-
- void BackView(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->BackView();
- }
-
- void RightView(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->RightView();
- }
-
- void BottomView(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->BottomView();
- }
-
- void AxoView(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->AxoView();
- }
-
- float Scale(void)
- {
- if (myOCCViewer != NULL)
- return myOCCViewer->Scale();
- else
- return -1;
- }
-
- void ZoomAllView(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->ZoomAllView();
- }
-
- void Reset(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->ResetView();
- }
-
- void SetDisplayMode(int aMode)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->SetDisplayMode(aMode);
- }
-
- void SetColor(int r, int g, int b)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->SetColor(r, g, b);
- }
-
- int GetObjColR(void)
- {
- int r, g, b;
- if (myOCCViewer != NULL)
- myOCCViewer->ObjectColor(r, g, b);
- return r;
- }
-
- int GetObjColG(void)
- {
- int r, g, b;
- if (myOCCViewer != NULL)
- myOCCViewer->ObjectColor(r, g, b);
- return g;
- }
-
- int GetObjColB(void)
- {
- int r, g, b;
- if (myOCCViewer != NULL)
- myOCCViewer->ObjectColor(r, g, b);
- return b;
- }
-
- void SetBackgroundColor(int r, int g, int b)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->SetBackgroundColor(r, g, b);
- }
-
- void EraseObjects(void)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->EraseObjects();
- }
-
- float GetOCCVersion(void)
- {
- if (myOCCViewer == NULL)
- return 0.0;
- else
- return myOCCViewer->GetVersion();
- }
-
- void SetMaterial(int theMaterial)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->SetMaterial(theMaterial);
- }
-
- void SetTransparency(int TheTrans)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->SetTransparency(TheTrans);
- }
-
- bool TranslateModel(System::String^ filename, int format, bool IsImport)
- {
- if (myOCCViewer == NULL)
- return false;
- int length = filename->Length;
- char * fname = new char[length+1];
- for(int i = 0; i<length; i++)
- fname[i] = (char)filename->ToCharArray()[i];
-
- fname[length] = '\0';
- bool res;
- if (IsImport)
- {
- switch(format)
- {
- case 0:
- res=myOCCViewer->ImportBRep(fname);
- break;
- case 1:
- res=myOCCViewer->ImportCsfdb(fname);
- break;
- case 2:
- res=myOCCViewer->ImportStep(fname);
- break;
- case 3:
- res=myOCCViewer->ImportIges(fname);
- break;
- default:
- res=false;
- }
- } else
- {
- switch(format)
- {
- case 0:
- res=myOCCViewer->ExportBRep(fname);
- break;
- case 2:
- res=myOCCViewer->ExpotStep(fname);
- break;
- case 3:
- res=myOCCViewer->ExportIges(fname);
- break;
- case 4:
- res=myOCCViewer->ExportVrml(fname);
- break;
- case 5:
- res=myOCCViewer->ExportStl(fname);
- break;
- case 6:
- res=myOCCViewer->Dump(fname);
- default:
- res=false;
- }
- }
- delete [] fname;
- return res;
- }
-
- bool IsObjectSelected(void)
- {
- if (myOCCViewer != NULL)
- return myOCCViewer->IsObjectSelected();
- else
- return false;
- }
-
- int DisplayMode(void)
- {
- if (myOCCViewer != NULL)
- return myOCCViewer->DisplayMode();
- else return -1;
- }
-
- void CreateNewView(System::IntPtr wnd)
- {
- if (myOCCViewer != NULL)
- myOCCViewer->CreateNewView(wnd.ToPointer());
- }
-
- bool SetAISContext(shell^ v)
- {
- if (myOCCViewer != NULL)
- return this->myOCCViewer->SetAISContext(v->GetOCCViewer());
- else
- return false;
- }
-
- OCCViewer* GetOCCViewer(void)
- {
- return myOCCViewer;
- }
-
- void InitOCCViewer(void)
- {
- myOCCViewer = new OCCViewer();
- }
-
- int CharToInt(System::String^ symbol)
- {
- if (myOCCViewer == NULL)
- return -1;
- char s = (char)symbol->ToCharArray()[0];
- return myOCCViewer->CharToInt(s);
- }
-};
+++ /dev/null
-<?xml version="1.0" encoding="windows-1251"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9.00"
- Name="shell"
- ProjectGUID="{969912D9-78E7-4AB8-B4FF-6B52B4F03991}"
- Keyword="Win32Proj"
- TargetFrameworkVersion="131072"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="Debug"
- IntermediateDirectory="Debug"
- ConfigurationType="2"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- ManagedExtensions="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="..\OCC\;$(CSF_OPT_INC)"
- PreprocessorDefinitions="WNT"
- MinimalRebuild="false"
- BasicRuntimeChecks="0"
- RuntimeLibrary="3"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="OCC.lib TKV3d.lib TKHLR.lib TKService.lib PTKernel.lib TKShapeSchema.lib TKBool.lib TKMath.lib TKBO.lib TKernel.lib TKPrim.lib TKTopAlgo.lib TKBRep.lib TKGeomAlgo.lib TKPShape.lib TKXSBase.lib TKIGES.lib TKSTEP.lib TKSTEP209.lib TKSTEPAttr.lib TKSTEPBase.lib TKShHealing.lib TKSTL.lib TKVRML.lib"
- OutputFile="$(OutDir)/shell.dll"
- LinkIncremental="2"
- AdditionalLibraryDirectories="..\OCC\$(OutDir);$(CSF_OPT_LIB32D)"
- GenerateDebugInformation="true"
- AssemblyDebug="1"
- ProgramDatabaseFile="$(OutDir)/shell.pdb"
- SubSystem="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- ImportLibrary="$(OutDir)/shell.lib"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="Release"
- IntermediateDirectory="Release"
- ConfigurationType="2"
- InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
- CharacterSet="2"
- ManagedExtensions="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- AdditionalIncludeDirectories="..\OCC\;$(CSF_OPT_INC)"
- PreprocessorDefinitions="WNT"
- RuntimeLibrary="2"
- UsePrecompiledHeader="0"
- WarningLevel="3"
- Detect64BitPortabilityProblems="true"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- AdditionalDependencies="OCC.lib TKV3d.lib TKHLR.lib TKService.lib PTKernel.lib TKShapeSchema.lib TKBool.lib TKMath.lib TKBO.lib TKernel.lib TKPrim.lib TKTopAlgo.lib TKBRep.lib TKGeomAlgo.lib TKPShape.lib TKXSBase.lib TKIGES.lib TKSTEP.lib TKSTEP209.lib TKSTEPAttr.lib TKSTEPBase.lib TKShHealing.lib TKSTL.lib TKVRML.lib"
- OutputFile="$(OutDir)/shell.dll"
- LinkIncremental="1"
- AdditionalLibraryDirectories="..\OCC\$(OutDir);$(CSF_OPT_LIB32)"
- GenerateDebugInformation="true"
- SubSystem="2"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- RandomizedBaseAddress="1"
- DataExecutionPrevention="0"
- ImportLibrary="$(OutDir)/shell.lib"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
- >
- <File
- RelativePath=".\shell.cpp"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
- >
- <File
- RelativePath=".\shell.h"
- >
- </File>
- </Filter>
- <Filter
- Name="Resource Files"
- Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
- UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
- >
- </Filter>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>