[prev in list] [next in list] [prev in thread] [next in thread]
List: mapguide-commits
Subject: [mapguide-commits] r3296 - in trunk/Tools/Maestro: Maestro
From: svn_mapguide () osgeo ! org
Date: 2008-08-28 21:08:24
Message-ID: 20080828210824.49836E0079B () lists ! osgeo ! org
[Download RAW message or body]
Author: ksgeograf
Date: 2008-08-28 17:08:24 -0400 (Thu, 28 Aug 2008)
New Revision: 3296
Added:
trunk/Tools/Maestro/Maestro/BoundsPicker.Designer.cs
trunk/Tools/Maestro/Maestro/BoundsPicker.cs
trunk/Tools/Maestro/Maestro/BoundsPicker.resx
trunk/Tools/Maestro/Maestro/Images/InheritedGroup.ico
trunk/Tools/Maestro/Maestro/Images/InheritedUser.ico
Modified:
trunk/Tools/Maestro/Maestro/OSGeo.MapGuide.Maestro.csproj
trunk/Tools/Maestro/Maestro/ResourceProperties.Designer.cs
trunk/Tools/Maestro/Maestro/ResourceProperties.cs
trunk/Tools/Maestro/Maestro/ResourceProperties.resx
trunk/Tools/Maestro/MaestroAPI/LocalNativeConnection.cs
trunk/Tools/Maestro/MaestroAPI/Utility.cs
Log:
Basically done with WMS and security settings, but there is still a problem with the \
ResourceHeader serialization.
Added: trunk/Tools/Maestro/Maestro/BoundsPicker.Designer.cs
===================================================================
--- trunk/Tools/Maestro/Maestro/BoundsPicker.Designer.cs (rev \
0)
+++ trunk/Tools/Maestro/Maestro/BoundsPicker.Designer.cs 2008-08-28 21:08:24 UTC (rev \
3296) @@ -0,0 +1,202 @@
+namespace OSGeo.MapGuide.Maestro
+{
+ partial class BoundsPicker
+ {
+ /// <summary>
+ /// Required designer variable.
+ /// </summary>
+ private System.ComponentModel.IContainer components = null;
+
+ /// <summary>
+ /// Clean up any resources being used.
+ /// </summary>
+ /// <param name="disposing">true if managed resources should be disposed; \
otherwise, false.</param> + protected override void Dispose(bool disposing)
+ {
+ if (disposing && (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.label1 = new System.Windows.Forms.Label();
+ this.label2 = new System.Windows.Forms.Label();
+ this.label3 = new System.Windows.Forms.Label();
+ this.label4 = new System.Windows.Forms.Label();
+ this.MinX = new System.Windows.Forms.TextBox();
+ this.MaxX = new System.Windows.Forms.TextBox();
+ this.MinY = new System.Windows.Forms.TextBox();
+ this.MaxY = new System.Windows.Forms.TextBox();
+ this.SRSLabel = new System.Windows.Forms.Label();
+ this.SRSCombo = new System.Windows.Forms.ComboBox();
+ this.panel1 = new System.Windows.Forms.Panel();
+ this.CancelBtn = new System.Windows.Forms.Button();
+ this.OKBtn = new System.Windows.Forms.Button();
+ this.panel1.SuspendLayout();
+ this.SuspendLayout();
+ //
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(8, 8);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(34, 13);
+ this.label1.TabIndex = 0;
+ this.label1.Text = "Min X";
+ //
+ // label2
+ //
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(8, 32);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(37, 13);
+ this.label2.TabIndex = 1;
+ this.label2.Text = "Max X";
+ //
+ // label3
+ //
+ this.label3.AutoSize = true;
+ this.label3.Location = new System.Drawing.Point(8, 56);
+ this.label3.Name = "label3";
+ this.label3.Size = new System.Drawing.Size(34, 13);
+ this.label3.TabIndex = 2;
+ this.label3.Text = "Min Y";
+ //
+ // label4
+ //
+ this.label4.AutoSize = true;
+ this.label4.Location = new System.Drawing.Point(8, 80);
+ this.label4.Name = "label4";
+ this.label4.Size = new System.Drawing.Size(37, 13);
+ this.label4.TabIndex = 3;
+ this.label4.Text = "Max Y";
+ //
+ // MinX
+ //
+ this.MinX.Location = new System.Drawing.Point(64, 8);
+ this.MinX.Name = "MinX";
+ this.MinX.Size = new System.Drawing.Size(160, 20);
+ this.MinX.TabIndex = 4;
+ //
+ // MaxX
+ //
+ this.MaxX.Location = new System.Drawing.Point(64, 32);
+ this.MaxX.Name = "MaxX";
+ this.MaxX.Size = new System.Drawing.Size(160, 20);
+ this.MaxX.TabIndex = 5;
+ //
+ // MinY
+ //
+ this.MinY.Location = new System.Drawing.Point(64, 56);
+ this.MinY.Name = "MinY";
+ this.MinY.Size = new System.Drawing.Size(160, 20);
+ this.MinY.TabIndex = 6;
+ //
+ // MaxY
+ //
+ this.MaxY.Location = new System.Drawing.Point(64, 80);
+ this.MaxY.Name = "MaxY";
+ this.MaxY.Size = new System.Drawing.Size(160, 20);
+ this.MaxY.TabIndex = 7;
+ //
+ // SRSLabel
+ //
+ this.SRSLabel.AutoSize = true;
+ this.SRSLabel.Location = new System.Drawing.Point(8, 112);
+ this.SRSLabel.Name = "SRSLabel";
+ this.SRSLabel.Size = new System.Drawing.Size(29, 13);
+ this.SRSLabel.TabIndex = 8;
+ this.SRSLabel.Text = "SRS";
+ //
+ // SRSCombo
+ //
+ this.SRSCombo.FormattingEnabled = true;
+ this.SRSCombo.Location = new System.Drawing.Point(64, 112);
+ this.SRSCombo.Name = "SRSCombo";
+ this.SRSCombo.Size = new System.Drawing.Size(160, 21);
+ this.SRSCombo.TabIndex = 9;
+ //
+ // panel1
+ //
+ this.panel1.Controls.Add(this.CancelBtn);
+ this.panel1.Controls.Add(this.OKBtn);
+ this.panel1.Dock = System.Windows.Forms.DockStyle.Bottom;
+ this.panel1.Location = new System.Drawing.Point(0, 142);
+ this.panel1.Name = "panel1";
+ this.panel1.Size = new System.Drawing.Size(235, 40);
+ this.panel1.TabIndex = 10;
+ //
+ // CancelBtn
+ //
+ this.CancelBtn.Anchor = System.Windows.Forms.AnchorStyles.Bottom;
+ this.CancelBtn.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+ this.CancelBtn.Location = new System.Drawing.Point(121, 8);
+ this.CancelBtn.Name = "CancelBtn";
+ this.CancelBtn.Size = new System.Drawing.Size(75, 23);
+ this.CancelBtn.TabIndex = 1;
+ this.CancelBtn.Text = "Cancel";
+ this.CancelBtn.UseVisualStyleBackColor = true;
+ //
+ // OKBtn
+ //
+ this.OKBtn.Anchor = System.Windows.Forms.AnchorStyles.Bottom;
+ this.OKBtn.Location = new System.Drawing.Point(33, 8);
+ this.OKBtn.Name = "OKBtn";
+ this.OKBtn.Size = new System.Drawing.Size(75, 23);
+ this.OKBtn.TabIndex = 0;
+ this.OKBtn.Text = "OK";
+ this.OKBtn.UseVisualStyleBackColor = true;
+ this.OKBtn.Click += new System.EventHandler(this.OKBtn_Click);
+ //
+ // BoundsPicker
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.CancelButton = this.CancelBtn;
+ this.ClientSize = new System.Drawing.Size(235, 182);
+ this.Controls.Add(this.panel1);
+ this.Controls.Add(this.SRSCombo);
+ this.Controls.Add(this.SRSLabel);
+ this.Controls.Add(this.MaxY);
+ this.Controls.Add(this.MinY);
+ this.Controls.Add(this.MaxX);
+ this.Controls.Add(this.MinX);
+ this.Controls.Add(this.label4);
+ this.Controls.Add(this.label3);
+ this.Controls.Add(this.label2);
+ this.Controls.Add(this.label1);
+ this.FormBorderStyle = \
System.Windows.Forms.FormBorderStyle.FixedToolWindow; + this.Name = \
"BoundsPicker"; + this.Text = "Enter the data bounds";
+ this.panel1.ResumeLayout(false);
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.Label label2;
+ private System.Windows.Forms.Label label3;
+ private System.Windows.Forms.Label label4;
+ private System.Windows.Forms.TextBox MinX;
+ private System.Windows.Forms.TextBox MaxX;
+ private System.Windows.Forms.TextBox MinY;
+ private System.Windows.Forms.TextBox MaxY;
+ private System.Windows.Forms.Label SRSLabel;
+ private System.Windows.Forms.ComboBox SRSCombo;
+ private System.Windows.Forms.Panel panel1;
+ private System.Windows.Forms.Button CancelBtn;
+ private System.Windows.Forms.Button OKBtn;
+ }
+}
\ No newline at end of file
Added: trunk/Tools/Maestro/Maestro/BoundsPicker.cs
===================================================================
--- trunk/Tools/Maestro/Maestro/BoundsPicker.cs (rev 0)
+++ trunk/Tools/Maestro/Maestro/BoundsPicker.cs 2008-08-28 21:08:24 UTC (rev 3296)
@@ -0,0 +1,159 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Text;
+using System.Windows.Forms;
+
+namespace OSGeo.MapGuide.Maestro
+{
+ public partial class BoundsPicker : Form
+ {
+ private string m_bounds;
+
+ public string SRSBounds
+ {
+ get { return m_bounds; }
+ }
+
+ public BoundsPicker(string bounds, string[] coordsys)
+ : this()
+ {
+ m_bounds = bounds;
+
+ if (coordsys == null)
+ {
+ SRSLabel.Visible =
+ SRSCombo.Visible =
+ false;
+ this.Height -= 30;
+ }
+ else
+ SRSCombo.Items.AddRange(coordsys);
+
+ if (!string.IsNullOrEmpty(bounds))
+ {
+ try
+ {
+ System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
+ if (bounds.Trim().StartsWith("<"))
+ bounds = System.Web.HttpUtility.HtmlDecode(bounds);
+ bounds = "<root>" + bounds + "</root>";
+ doc.LoadXml(bounds);
+ System.Xml.XmlNode root = doc["root"];
+ if (root["Bounds"] != null)
+ {
+ if (root["Bounds"].Attributes["SRS"] != null)
+ SRSCombo.Text = root["Bounds"].Attributes["SRS"].Value;
+
+ if (root["Bounds"].Attributes["west"] != null)
+ MinX.Text = root["Bounds"].Attributes["west"].Value;
+ if (root["Bounds"].Attributes["east"] != null)
+ MaxX.Text = root["Bounds"].Attributes["east"].Value;
+
+ if (root["Bounds"].Attributes["south"] != null)
+ MinY.Text = root["Bounds"].Attributes["south"].Value;
+ if (root["Bounds"].Attributes["north"] != null)
+ MaxY.Text = root["Bounds"].Attributes["north"].Value;
+ }
+ else
+ throw new Exception("Missing bounds tag");
+ }
+ catch(Exception ex)
+ {
+ MessageBox.Show(this, string.Format("Failed to decode the \
current bounds,\nyou may enter new bounds, and these will replace the current.\nError \
message: {0}", ex.Message), Application.ProductName, MessageBoxButtons.OK, \
MessageBoxIcon.Error); + }
+ }
+ }
+
+ private BoundsPicker()
+ {
+ InitializeComponent();
+ }
+
+ private void OKBtn_Click(object sender, EventArgs e)
+ {
+ string srs;
+ if (SRSCombo.Text.Trim().Length == 0 || SRSCombo.Visible == false)
+ srs = null;
+ else
+ srs = SRSCombo.Text;
+
+ if (MinX.Text.Trim().Length == 0 || MaxX.Text.Trim().Length == 0 || \
MinY.Text.Trim().Length == 0 || MaxY.Text.Trim().Length == 0 || (srs == null && \
SRSCombo.Visible)) + {
+ MessageBox.Show(this, "You have not entered all the required \
information.", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); \
+ return; + }
+
+ double temp;
+ System.Globalization.CultureInfo localCI = \
System.Globalization.CultureInfo.CurrentUICulture; + \
System.Globalization.CultureInfo usCI = \
System.Globalization.CultureInfo.InvariantCulture; +
+ bool isUs = double.TryParse(MinX.Text, \
System.Globalization.NumberStyles.Float, usCI, out temp) && + \
double.TryParse(MaxX.Text, System.Globalization.NumberStyles.Float, usCI, out temp) \
&& + double.TryParse(MinY.Text, \
System.Globalization.NumberStyles.Float, usCI, out temp) && + \
double.TryParse(MaxY.Text, System.Globalization.NumberStyles.Float, usCI, out temp); \
+ + bool isLocal = double.TryParse(MinX.Text, \
System.Globalization.NumberStyles.Float, localCI, out temp) && + \
double.TryParse(MaxX.Text, System.Globalization.NumberStyles.Float, localCI, out \
temp) && + double.TryParse(MinY.Text, \
System.Globalization.NumberStyles.Float, localCI, out temp) && + \
double.TryParse(MaxY.Text, System.Globalization.NumberStyles.Float, localCI, out \
temp); +
+ if (!isUs && isLocal)
+ {
+ switch (MessageBox.Show(this, "The values you have entered appears \
to be in local regional format, but are required in US regional format\nDo you want \
to convert the values?", Application.ProductName, MessageBoxButtons.YesNoCancel, \
MessageBoxIcon.Question)) + {
+ case DialogResult.Yes:
+ if (double.TryParse(MinX.Text, \
System.Globalization.NumberStyles.Float, localCI, out temp)) + \
MinX.Text = temp.ToString(usCI); + else
+ {
+ MessageBox.Show(this, "Failed to convert the Min X \
value", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); + \
return; + }
+ if (double.TryParse(MaxX.Text, \
System.Globalization.NumberStyles.Float, localCI, out temp)) + \
MaxX.Text = temp.ToString(usCI); + else
+ {
+ MessageBox.Show(this, "Failed to convert the Max X \
value", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); + \
return; + }
+ if (double.TryParse(MinY.Text, \
System.Globalization.NumberStyles.Float, localCI, out temp)) + \
MinY.Text = temp.ToString(usCI); + else
+ {
+ MessageBox.Show(this, "Failed to convert the Min Y \
value", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); + \
return; + }
+ if (double.TryParse(MaxX.Text, \
System.Globalization.NumberStyles.Float, localCI, out temp)) + \
MaxX.Text = temp.ToString(usCI); + else
+ {
+ MessageBox.Show(this, "Failed to convert the Max X \
value", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Error); + \
return; + }
+ break;
+ case DialogResult.Cancel:
+ return;
+ }
+ }
+
+ if (!isUs && !isLocal)
+ {
+ if (MessageBox.Show(this, "The coordinates you have entered appears \
to be invalid, do you want to use them anyway?", Application.ProductName, \
MessageBoxButtons.YesNoCancel, MessageBoxIcon.Error) != DialogResult.Yes) + \
return; + }
+
+ m_bounds = "<Bounds west=\"" + MinX.Text + "\" east=\"" + MaxX.Text + \
"\" south=\"" + MinY.Text + "\" north=\"" + MaxY.Text + "\" "; + if (srs \
!= null) + {
+ m_bounds += " SRS=\"" + srs + "\"";
+ }
+ m_bounds += " />";
+
+ this.DialogResult = DialogResult.OK;
+ this.Close();
+ }
+ }
+}
\ No newline at end of file
Added: trunk/Tools/Maestro/Maestro/BoundsPicker.resx
===================================================================
--- trunk/Tools/Maestro/Maestro/BoundsPicker.resx (rev 0)
+++ trunk/Tools/Maestro/Maestro/BoundsPicker.resx 2008-08-28 21:08:24 UTC (rev 3296)
@@ -0,0 +1,120 @@
+<?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> +</root>
\ No newline at end of file
Added: trunk/Tools/Maestro/Maestro/Images/InheritedGroup.ico
===================================================================
(Binary files differ)
Property changes on: trunk/Tools/Maestro/Maestro/Images/InheritedGroup.ico
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/Tools/Maestro/Maestro/Images/InheritedUser.ico
===================================================================
(Binary files differ)
Property changes on: trunk/Tools/Maestro/Maestro/Images/InheritedUser.ico
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Modified: trunk/Tools/Maestro/Maestro/OSGeo.MapGuide.Maestro.csproj
===================================================================
--- trunk/Tools/Maestro/Maestro/OSGeo.MapGuide.Maestro.csproj 2008-08-28 17:56:09 UTC \
(rev 3295)
+++ trunk/Tools/Maestro/Maestro/OSGeo.MapGuide.Maestro.csproj 2008-08-28 21:08:24 UTC \
(rev 3296) @@ -102,6 +102,7 @@
<Reference Include="System.Drawing">
<Name>System.Drawing</Name>
</Reference>
+ <Reference Include="System.Web" />
<Reference Include="System.Windows.Forms">
<Name>System.Windows.Forms</Name>
</Reference>
@@ -148,6 +149,12 @@
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
+ <Compile Include="BoundsPicker.cs">
+ <SubType>Form</SubType>
+ </Compile>
+ <Compile Include="BoundsPicker.Designer.cs">
+ <DependentUpon>BoundsPicker.cs</DependentUpon>
+ </Compile>
<Compile Include="BrowseResource.cs">
<SubType>Form</SubType>
</Compile>
@@ -244,6 +251,10 @@
<SubType>Designer</SubType>
<DependentUpon>ApplicationSettings.cs</DependentUpon>
</EmbeddedResource>
+ <EmbeddedResource Include="BoundsPicker.resx">
+ <SubType>Designer</SubType>
+ <DependentUpon>BoundsPicker.cs</DependentUpon>
+ </EmbeddedResource>
<EmbeddedResource Include="BrowseResource.resx">
<DependentUpon>BrowseResource.cs</DependentUpon>
<SubType>Designer</SubType>
Modified: trunk/Tools/Maestro/Maestro/ResourceProperties.Designer.cs
===================================================================
--- trunk/Tools/Maestro/Maestro/ResourceProperties.Designer.cs 2008-08-28 17:56:09 \
UTC (rev 3295)
+++ trunk/Tools/Maestro/Maestro/ResourceProperties.Designer.cs 2008-08-28 21:08:24 \
UTC (rev 3296) @@ -37,11 +37,18 @@
this.SecurityTab = new System.Windows.Forms.TabPage();
this.UseInherited = new System.Windows.Forms.CheckBox();
this.UsersAndGroups = new System.Windows.Forms.ListView();
+ this.columnHeader1 = new System.Windows.Forms.ColumnHeader();
+ this.columnHeader2 = new System.Windows.Forms.ColumnHeader();
+ this.columnHeader3 = new System.Windows.Forms.ColumnHeader();
+ this.securityContextMenu = new \
System.Windows.Forms.ContextMenuStrip(this.components); + \
this.readWriteAccessToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); \
+ this.readOnlyAccessToolStripMenuItem = new \
System.Windows.Forms.ToolStripMenuItem(); + \
this.denyAccessToolStripMenuItem = new \
System.Windows.Forms.ToolStripMenuItem();
this.UserAndGroupImages = new \
System.Windows.Forms.ImageList(this.components); this.WMSTab = new \
System.Windows.Forms.TabPage();
this.WMSClearHeaderButton = new System.Windows.Forms.Button();
this.groupBox2 = new System.Windows.Forms.GroupBox();
- this.button1 = new System.Windows.Forms.Button();
+ this.EditWMSBounds = new System.Windows.Forms.Button();
this.WMSBounds = new System.Windows.Forms.TextBox();
this.label4 = new System.Windows.Forms.Label();
this.WMSOpaque = new System.Windows.Forms.CheckBox();
@@ -57,8 +64,16 @@
this.label2 = new System.Windows.Forms.Label();
this.label3 = new System.Windows.Forms.Label();
this.WFSTab = new System.Windows.Forms.TabPage();
- this.CustomTab = new System.Windows.Forms.TabPage();
- this.toolTip = new System.Windows.Forms.ToolTip(this.components);
+ this.WFSClearHeaderButton = new System.Windows.Forms.Button();
+ this.groupBox4 = new System.Windows.Forms.GroupBox();
+ this.WFSOtherSRS = new System.Windows.Forms.ComboBox();
+ this.WFSPrimarySRS = new System.Windows.Forms.ComboBox();
+ this.label12 = new System.Windows.Forms.Label();
+ this.label11 = new System.Windows.Forms.Label();
+ this.EditWFSBounds = new System.Windows.Forms.Button();
+ this.WFSBounds = new System.Windows.Forms.TextBox();
+ this.label10 = new System.Windows.Forms.Label();
+ this.WFSAvalible = new System.Windows.Forms.CheckBox();
this.groupBox3 = new System.Windows.Forms.GroupBox();
this.WFSMetadata = new System.Windows.Forms.TextBox();
this.WFSAbstract = new System.Windows.Forms.TextBox();
@@ -68,30 +83,24 @@
this.label7 = new System.Windows.Forms.Label();
this.label8 = new System.Windows.Forms.Label();
this.label9 = new System.Windows.Forms.Label();
- this.groupBox4 = new System.Windows.Forms.GroupBox();
- this.button2 = new System.Windows.Forms.Button();
- this.WFSBounds = new System.Windows.Forms.TextBox();
- this.label10 = new System.Windows.Forms.Label();
- this.WFSAvalible = new System.Windows.Forms.CheckBox();
- this.WFSPrimarySRS = new System.Windows.Forms.TextBox();
- this.label11 = new System.Windows.Forms.Label();
- this.WFSOtherSRS = new System.Windows.Forms.TextBox();
- this.label12 = new System.Windows.Forms.Label();
- this.WFSClearHeaderButton = new System.Windows.Forms.Button();
+ this.CustomTab = new System.Windows.Forms.TabPage();
+ this.ClearHeaderButton = new System.Windows.Forms.Button();
this.dataGridView1 = new System.Windows.Forms.DataGridView();
- this.ClearHeaderButton = new System.Windows.Forms.Button();
this.ItemKey = new System.Windows.Forms.DataGridViewTextBoxColumn();
this.ItemValue = new System.Windows.Forms.DataGridViewTextBoxColumn();
+ this.toolTip = new System.Windows.Forms.ToolTip(this.components);
+ this.inheritedAccessRightsToolStripMenuItem = new \
System.Windows.Forms.ToolStripMenuItem(); this.panel1.SuspendLayout();
this.tabControl1.SuspendLayout();
this.SecurityTab.SuspendLayout();
+ this.securityContextMenu.SuspendLayout();
this.WMSTab.SuspendLayout();
this.groupBox2.SuspendLayout();
this.groupBox1.SuspendLayout();
this.WFSTab.SuspendLayout();
+ this.groupBox4.SuspendLayout();
+ this.groupBox3.SuspendLayout();
this.CustomTab.SuspendLayout();
- this.groupBox3.SuspendLayout();
- this.groupBox4.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
this.SuspendLayout();
//
@@ -108,6 +117,7 @@
// CancelBtn
//
this.CancelBtn.Anchor = System.Windows.Forms.AnchorStyles.Bottom;
+ this.CancelBtn.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.CancelBtn.Location = new System.Drawing.Point(183, 8);
this.CancelBtn.Name = "CancelBtn";
this.CancelBtn.Size = new System.Drawing.Size(75, 23);
@@ -124,6 +134,7 @@
this.OKBtn.TabIndex = 0;
this.OKBtn.Text = "OK";
this.OKBtn.UseVisualStyleBackColor = true;
+ this.OKBtn.Click += new System.EventHandler(this.OKBtn_Click);
//
// tabControl1
//
@@ -167,15 +178,69 @@
this.UsersAndGroups.Anchor = \
((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | \
System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
+ this.UsersAndGroups.Columns.AddRange(new \
System.Windows.Forms.ColumnHeader[] { + this.columnHeader1,
+ this.columnHeader2,
+ this.columnHeader3});
+ this.UsersAndGroups.ContextMenuStrip = this.securityContextMenu;
this.UsersAndGroups.Enabled = false;
+ this.UsersAndGroups.FullRowSelect = true;
this.UsersAndGroups.Location = new System.Drawing.Point(16, 40);
this.UsersAndGroups.Name = "UsersAndGroups";
- this.UsersAndGroups.Size = new System.Drawing.Size(320, 240);
+ this.UsersAndGroups.Size = new System.Drawing.Size(320, 312);
this.UsersAndGroups.SmallImageList = this.UserAndGroupImages;
this.UsersAndGroups.TabIndex = 0;
+ this.toolTip.SetToolTip(this.UsersAndGroups, "Right click to change \
access rights"); this.UsersAndGroups.UseCompatibleStateImageBehavior = false;
- this.UsersAndGroups.View = System.Windows.Forms.View.List;
+ this.UsersAndGroups.View = System.Windows.Forms.View.Details;
//
+ // columnHeader1
+ //
+ this.columnHeader1.Text = "Name";
+ this.columnHeader1.Width = 88;
+ //
+ // columnHeader2
+ //
+ this.columnHeader2.Text = "Description";
+ this.columnHeader2.Width = 104;
+ //
+ // columnHeader3
+ //
+ this.columnHeader3.Text = "Access";
+ this.columnHeader3.Width = 93;
+ //
+ // securityContextMenu
+ //
+ this.securityContextMenu.Items.AddRange(new \
System.Windows.Forms.ToolStripItem[] { + \
this.readWriteAccessToolStripMenuItem, + \
this.readOnlyAccessToolStripMenuItem, + this.denyAccessToolStripMenuItem,
+ this.inheritedAccessRightsToolStripMenuItem});
+ this.securityContextMenu.Name = "securityContextMenu";
+ this.securityContextMenu.Size = new System.Drawing.Size(195, 92);
+ this.securityContextMenu.Opening += new \
System.ComponentModel.CancelEventHandler(this.securityContextMenu_Opening); + \
// + // readWriteAccessToolStripMenuItem
+ //
+ this.readWriteAccessToolStripMenuItem.Name = \
"readWriteAccessToolStripMenuItem"; + \
this.readWriteAccessToolStripMenuItem.Size = new System.Drawing.Size(194, 22); + \
this.readWriteAccessToolStripMenuItem.Text = "Read write access"; + \
this.readWriteAccessToolStripMenuItem.Click += new \
System.EventHandler(this.readWriteAccessToolStripMenuItem_Click); + //
+ // readOnlyAccessToolStripMenuItem
+ //
+ this.readOnlyAccessToolStripMenuItem.Name = \
"readOnlyAccessToolStripMenuItem"; + \
this.readOnlyAccessToolStripMenuItem.Size = new System.Drawing.Size(194, 22); + \
this.readOnlyAccessToolStripMenuItem.Text = "Read only access"; + \
this.readOnlyAccessToolStripMenuItem.Click += new \
System.EventHandler(this.readOnlyAccessToolStripMenuItem_Click); + //
+ // denyAccessToolStripMenuItem
+ //
+ this.denyAccessToolStripMenuItem.Name = "denyAccessToolStripMenuItem";
+ this.denyAccessToolStripMenuItem.Size = new System.Drawing.Size(194, \
22); + this.denyAccessToolStripMenuItem.Text = "Deny access";
+ this.denyAccessToolStripMenuItem.Click += new \
System.EventHandler(this.denyAccessToolStripMenuItem_Click); + //
// UserAndGroupImages
//
this.UserAndGroupImages.ImageStream = \
((System.Windows.Forms.ImageListStreamer)(resources.GetObject("UserAndGroupImages.ImageStream")));
@@ -186,6 +251,8 @@
this.UserAndGroupImages.Images.SetKeyName(3, "WriteGroup.ico");
this.UserAndGroupImages.Images.SetKeyName(4, "ReadOnlyGroup.ico");
this.UserAndGroupImages.Images.SetKeyName(5, "DenyGroup.ico");
+ this.UserAndGroupImages.Images.SetKeyName(6, "InheritedUser.ico");
+ this.UserAndGroupImages.Images.SetKeyName(7, "InheritedGroup.ico");
//
// WMSTab
//
@@ -215,7 +282,7 @@
//
this.groupBox2.Anchor = \
((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | \
System.Windows.Forms.AnchorStyles.Left) | \
System.Windows.Forms.AnchorStyles.Right)));
- this.groupBox2.Controls.Add(this.button1);
+ this.groupBox2.Controls.Add(this.EditWMSBounds);
this.groupBox2.Controls.Add(this.WMSBounds);
this.groupBox2.Controls.Add(this.label4);
this.groupBox2.Controls.Add(this.WMSOpaque);
@@ -228,14 +295,15 @@
this.groupBox2.TabStop = false;
this.groupBox2.Text = "Functionality";
//
- // button1
+ // EditWMSBounds
//
- this.button1.Location = new System.Drawing.Point(304, 96);
- this.button1.Name = "button1";
- this.button1.Size = new System.Drawing.Size(24, 20);
- this.button1.TabIndex = 8;
- this.button1.Text = "...";
- this.button1.UseVisualStyleBackColor = true;
+ this.EditWMSBounds.Location = new System.Drawing.Point(304, 96);
+ this.EditWMSBounds.Name = "EditWMSBounds";
+ this.EditWMSBounds.Size = new System.Drawing.Size(24, 20);
+ this.EditWMSBounds.TabIndex = 8;
+ this.EditWMSBounds.Text = "...";
+ this.EditWMSBounds.UseVisualStyleBackColor = true;
+ this.EditWMSBounds.Click += new \
System.EventHandler(this.EditWMSBounds_Click); //
// WMSBounds
//
@@ -402,17 +470,119 @@
this.WFSTab.Text = "WFS";
this.WFSTab.UseVisualStyleBackColor = true;
//
- // CustomTab
+ // WFSClearHeaderButton
//
- this.CustomTab.Controls.Add(this.ClearHeaderButton);
- this.CustomTab.Controls.Add(this.dataGridView1);
- this.CustomTab.Location = new System.Drawing.Point(4, 22);
- this.CustomTab.Name = "CustomTab";
- this.CustomTab.Size = new System.Drawing.Size(350, 363);
- this.CustomTab.TabIndex = 3;
- this.CustomTab.Text = "Custom Metadata";
- this.CustomTab.UseVisualStyleBackColor = true;
+ this.WFSClearHeaderButton.Anchor = \
((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | \
System.Windows.Forms.AnchorStyles.Right))); + \
this.WFSClearHeaderButton.Location = new System.Drawing.Point(224, 328); + \
this.WFSClearHeaderButton.Name = "WFSClearHeaderButton"; + \
this.WFSClearHeaderButton.Size = new System.Drawing.Size(119, 23); + \
this.WFSClearHeaderButton.TabIndex = 11; + this.WFSClearHeaderButton.Text \
= "Clear all WFS data"; + \
this.WFSClearHeaderButton.UseVisualStyleBackColor = true; + \
this.WFSClearHeaderButton.Click += new \
System.EventHandler(this.WFSClearHeaderButton_Click); //
+ // groupBox4
+ //
+ this.groupBox4.Anchor = \
((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | \
System.Windows.Forms.AnchorStyles.Left) + | \
System.Windows.Forms.AnchorStyles.Right))); + \
this.groupBox4.Controls.Add(this.WFSOtherSRS); + \
this.groupBox4.Controls.Add(this.WFSPrimarySRS); + \
this.groupBox4.Controls.Add(this.label12); + \
this.groupBox4.Controls.Add(this.label11); + \
this.groupBox4.Controls.Add(this.EditWFSBounds); + \
this.groupBox4.Controls.Add(this.WFSBounds); + \
this.groupBox4.Controls.Add(this.label10); + \
this.groupBox4.Controls.Add(this.WFSAvalible); + this.groupBox4.Location = \
new System.Drawing.Point(7, 176); + this.groupBox4.Name = "groupBox4";
+ this.groupBox4.Size = new System.Drawing.Size(336, 144);
+ this.groupBox4.TabIndex = 10;
+ this.groupBox4.TabStop = false;
+ this.groupBox4.Text = "Functionality";
+ //
+ // WFSOtherSRS
+ //
+ this.WFSOtherSRS.FormattingEnabled = true;
+ this.WFSOtherSRS.Location = new System.Drawing.Point(88, 72);
+ this.WFSOtherSRS.Name = "WFSOtherSRS";
+ this.WFSOtherSRS.Size = new System.Drawing.Size(240, 21);
+ this.WFSOtherSRS.TabIndex = 14;
+ this.toolTip.SetToolTip(this.WFSOtherSRS, "This field contains a \
secondary spatial reference system, usually in the format E" + + \
"PSG:xxxx"); + this.WFSOtherSRS.TextChanged += new \
System.EventHandler(this.WFSOtherSRS_TextChanged); + //
+ // WFSPrimarySRS
+ //
+ this.WFSPrimarySRS.FormattingEnabled = true;
+ this.WFSPrimarySRS.Location = new System.Drawing.Point(88, 48);
+ this.WFSPrimarySRS.Name = "WFSPrimarySRS";
+ this.WFSPrimarySRS.Size = new System.Drawing.Size(240, 21);
+ this.WFSPrimarySRS.TabIndex = 13;
+ this.toolTip.SetToolTip(this.WFSPrimarySRS, "This field contains the \
primary spatial reference system, usually in the format E" + + \
"PSG:xxxx"); + this.WFSPrimarySRS.TextChanged += new \
System.EventHandler(this.WFSPrimarySRS_TextChanged); + //
+ // label12
+ //
+ this.label12.AutoSize = true;
+ this.label12.Location = new System.Drawing.Point(8, 72);
+ this.label12.Name = "label12";
+ this.label12.Size = new System.Drawing.Size(58, 13);
+ this.label12.TabIndex = 11;
+ this.label12.Text = "Other SRS";
+ //
+ // label11
+ //
+ this.label11.AutoSize = true;
+ this.label11.Location = new System.Drawing.Point(8, 48);
+ this.label11.Name = "label11";
+ this.label11.Size = new System.Drawing.Size(66, 13);
+ this.label11.TabIndex = 9;
+ this.label11.Text = "Primary SRS";
+ //
+ // EditWFSBounds
+ //
+ this.EditWFSBounds.Location = new System.Drawing.Point(304, 96);
+ this.EditWFSBounds.Name = "EditWFSBounds";
+ this.EditWFSBounds.Size = new System.Drawing.Size(24, 20);
+ this.EditWFSBounds.TabIndex = 8;
+ this.EditWFSBounds.Text = "...";
+ this.EditWFSBounds.UseVisualStyleBackColor = true;
+ this.EditWFSBounds.Click += new \
System.EventHandler(this.EditWFSBounds_Click); + //
+ // WFSBounds
+ //
+ this.WFSBounds.Location = new System.Drawing.Point(88, 96);
+ this.WFSBounds.Multiline = true;
+ this.WFSBounds.Name = "WFSBounds";
+ this.WFSBounds.ScrollBars = System.Windows.Forms.ScrollBars.Both;
+ this.WFSBounds.Size = new System.Drawing.Size(216, 40);
+ this.WFSBounds.TabIndex = 7;
+ this.toolTip.SetToolTip(this.WFSBounds, "This value is the Xml element \
bounds, which is inserted directly into the xml out" + + "put. Use \
the edit button if you are uncomfortable editing the value manually"); + \
this.WFSBounds.TextChanged += new System.EventHandler(this.WFSBounds_TextChanged); + \
// + // label10
+ //
+ this.label10.AutoSize = true;
+ this.label10.Location = new System.Drawing.Point(8, 96);
+ this.label10.Name = "label10";
+ this.label10.Size = new System.Drawing.Size(43, 13);
+ this.label10.TabIndex = 5;
+ this.label10.Text = "Bounds";
+ //
+ // WFSAvalible
+ //
+ this.WFSAvalible.AutoSize = true;
+ this.WFSAvalible.Location = new System.Drawing.Point(8, 24);
+ this.WFSAvalible.Name = "WFSAvalible";
+ this.WFSAvalible.Size = new System.Drawing.Size(63, 17);
+ this.WFSAvalible.TabIndex = 4;
+ this.WFSAvalible.Text = "Avalible";
+ this.toolTip.SetToolTip(this.WFSAvalible, "This checkbox controls the \
avalibility of the layer"); + this.WFSAvalible.UseVisualStyleBackColor = \
true; + this.WFSAvalible.CheckedChanged += new \
System.EventHandler(this.checkBox3_CheckedChanged); + //
// groupBox3
//
this.groupBox3.Anchor = \
((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | \
System.Windows.Forms.AnchorStyles.Left) @@ -508,114 +678,28 @@
this.label9.TabIndex = 2;
this.label9.Text = "Keywords";
//
- // groupBox4
+ // CustomTab
//
- this.groupBox4.Anchor = \
((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | \
System.Windows.Forms.AnchorStyles.Left)
- | System.Windows.Forms.AnchorStyles.Right)));
- this.groupBox4.Controls.Add(this.WFSOtherSRS);
- this.groupBox4.Controls.Add(this.label12);
- this.groupBox4.Controls.Add(this.WFSPrimarySRS);
- this.groupBox4.Controls.Add(this.label11);
- this.groupBox4.Controls.Add(this.button2);
- this.groupBox4.Controls.Add(this.WFSBounds);
- this.groupBox4.Controls.Add(this.label10);
- this.groupBox4.Controls.Add(this.WFSAvalible);
- this.groupBox4.Location = new System.Drawing.Point(7, 176);
- this.groupBox4.Name = "groupBox4";
- this.groupBox4.Size = new System.Drawing.Size(336, 144);
- this.groupBox4.TabIndex = 10;
- this.groupBox4.TabStop = false;
- this.groupBox4.Text = "Functionality";
+ this.CustomTab.Controls.Add(this.ClearHeaderButton);
+ this.CustomTab.Controls.Add(this.dataGridView1);
+ this.CustomTab.Location = new System.Drawing.Point(4, 22);
+ this.CustomTab.Name = "CustomTab";
+ this.CustomTab.Size = new System.Drawing.Size(350, 363);
+ this.CustomTab.TabIndex = 3;
+ this.CustomTab.Text = "Custom Metadata";
+ this.CustomTab.UseVisualStyleBackColor = true;
//
- // button2
+ // ClearHeaderButton
//
- this.button2.Location = new System.Drawing.Point(304, 96);
- this.button2.Name = "button2";
- this.button2.Size = new System.Drawing.Size(24, 20);
- this.button2.TabIndex = 8;
- this.button2.Text = "...";
- this.button2.UseVisualStyleBackColor = true;
+ this.ClearHeaderButton.Anchor = \
((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | \
System.Windows.Forms.AnchorStyles.Right))); + \
this.ClearHeaderButton.Location = new System.Drawing.Point(224, 328); + \
this.ClearHeaderButton.Name = "ClearHeaderButton"; + \
this.ClearHeaderButton.Size = new System.Drawing.Size(119, 23); + \
this.ClearHeaderButton.TabIndex = 11; + this.ClearHeaderButton.Text = \
"Clear all metadata"; + this.ClearHeaderButton.UseVisualStyleBackColor = \
true; + this.ClearHeaderButton.Click += new \
System.EventHandler(this.ClearHeaderButton_Click_1); //
- // WFSBounds
- //
- this.WFSBounds.Location = new System.Drawing.Point(88, 96);
- this.WFSBounds.Multiline = true;
- this.WFSBounds.Name = "WFSBounds";
- this.WFSBounds.ScrollBars = System.Windows.Forms.ScrollBars.Both;
- this.WFSBounds.Size = new System.Drawing.Size(216, 40);
- this.WFSBounds.TabIndex = 7;
- this.toolTip.SetToolTip(this.WFSBounds, "This value is the Xml element \
bounds, which is inserted directly into the xml out" +
- "put. Use the edit button if you are uncomfortable editing the \
value manually");
- this.WFSBounds.TextChanged += new \
System.EventHandler(this.WFSBounds_TextChanged);
- //
- // label10
- //
- this.label10.AutoSize = true;
- this.label10.Location = new System.Drawing.Point(8, 96);
- this.label10.Name = "label10";
- this.label10.Size = new System.Drawing.Size(43, 13);
- this.label10.TabIndex = 5;
- this.label10.Text = "Bounds";
- //
- // WFSAvalible
- //
- this.WFSAvalible.AutoSize = true;
- this.WFSAvalible.Location = new System.Drawing.Point(8, 24);
- this.WFSAvalible.Name = "WFSAvalible";
- this.WFSAvalible.Size = new System.Drawing.Size(63, 17);
- this.WFSAvalible.TabIndex = 4;
- this.WFSAvalible.Text = "Avalible";
- this.toolTip.SetToolTip(this.WFSAvalible, "This checkbox controls the \
avalibility of the layer");
- this.WFSAvalible.UseVisualStyleBackColor = true;
- this.WFSAvalible.CheckedChanged += new \
System.EventHandler(this.checkBox3_CheckedChanged);
- //
- // WFSPrimarySRS
- //
- this.WFSPrimarySRS.Location = new System.Drawing.Point(88, 48);
- this.WFSPrimarySRS.Name = "WFSPrimarySRS";
- this.WFSPrimarySRS.Size = new System.Drawing.Size(240, 20);
- this.WFSPrimarySRS.TabIndex = 10;
- this.toolTip.SetToolTip(this.WFSPrimarySRS, "This field contains the \
layer title");
- this.WFSPrimarySRS.TextChanged += new \
System.EventHandler(this.WFSPrimarySRS_TextChanged);
- //
- // label11
- //
- this.label11.AutoSize = true;
- this.label11.Location = new System.Drawing.Point(8, 48);
- this.label11.Name = "label11";
- this.label11.Size = new System.Drawing.Size(66, 13);
- this.label11.TabIndex = 9;
- this.label11.Text = "Primary SRS";
- //
- // WFSOtherSRS
- //
- this.WFSOtherSRS.Location = new System.Drawing.Point(88, 72);
- this.WFSOtherSRS.Name = "WFSOtherSRS";
- this.WFSOtherSRS.Size = new System.Drawing.Size(240, 20);
- this.WFSOtherSRS.TabIndex = 12;
- this.toolTip.SetToolTip(this.WFSOtherSRS, "This field contains the layer \
title");
- this.WFSOtherSRS.TextChanged += new \
System.EventHandler(this.WFSOtherSRS_TextChanged);
- //
- // label12
- //
- this.label12.AutoSize = true;
- this.label12.Location = new System.Drawing.Point(8, 72);
- this.label12.Name = "label12";
- this.label12.Size = new System.Drawing.Size(58, 13);
- this.label12.TabIndex = 11;
- this.label12.Text = "Other SRS";
- //
- // WFSClearHeaderButton
- //
- this.WFSClearHeaderButton.Anchor = \
((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | \
System.Windows.Forms.AnchorStyles.Right)));
- this.WFSClearHeaderButton.Location = new System.Drawing.Point(224, 328);
- this.WFSClearHeaderButton.Name = "WFSClearHeaderButton";
- this.WFSClearHeaderButton.Size = new System.Drawing.Size(119, 23);
- this.WFSClearHeaderButton.TabIndex = 11;
- this.WFSClearHeaderButton.Text = "Clear all WFS data";
- this.WFSClearHeaderButton.UseVisualStyleBackColor = true;
- this.WFSClearHeaderButton.Click += new \
System.EventHandler(this.WFSClearHeaderButton_Click);
- //
// dataGridView1
//
this.dataGridView1.Anchor = \
((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | \
System.Windows.Forms.AnchorStyles.Bottom) @@ -629,18 +713,8 @@
this.dataGridView1.Name = "dataGridView1";
this.dataGridView1.Size = new System.Drawing.Size(336, 312);
this.dataGridView1.TabIndex = 0;
+ this.dataGridView1.Leave += new \
System.EventHandler(this.dataGridView1_Leave); //
- // ClearHeaderButton
- //
- this.ClearHeaderButton.Anchor = \
((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | \
System.Windows.Forms.AnchorStyles.Right)));
- this.ClearHeaderButton.Location = new System.Drawing.Point(224, 328);
- this.ClearHeaderButton.Name = "ClearHeaderButton";
- this.ClearHeaderButton.Size = new System.Drawing.Size(119, 23);
- this.ClearHeaderButton.TabIndex = 11;
- this.ClearHeaderButton.Text = "Clear all metadata";
- this.ClearHeaderButton.UseVisualStyleBackColor = true;
- this.ClearHeaderButton.Click += new \
System.EventHandler(this.ClearHeaderButton_Click_1);
- //
// ItemKey
//
this.ItemKey.HeaderText = "Key";
@@ -651,10 +725,18 @@
this.ItemValue.HeaderText = "Value";
this.ItemValue.Name = "ItemValue";
//
+ // inheritedAccessRightsToolStripMenuItem
+ //
+ this.inheritedAccessRightsToolStripMenuItem.Name = \
"inheritedAccessRightsToolStripMenuItem"; + \
this.inheritedAccessRightsToolStripMenuItem.Size = new System.Drawing.Size(194, 22); \
+ this.inheritedAccessRightsToolStripMenuItem.Text = "Inherited access \
rights"; + this.inheritedAccessRightsToolStripMenuItem.Click += new \
System.EventHandler(this.inheritedAccessRightsToolStripMenuItem_Click); + \
// // ResourceProperties
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.CancelButton = this.CancelBtn;
this.ClientSize = new System.Drawing.Size(358, 429);
this.Controls.Add(this.tabControl1);
this.Controls.Add(this.panel1);
@@ -665,17 +747,18 @@
this.tabControl1.ResumeLayout(false);
this.SecurityTab.ResumeLayout(false);
this.SecurityTab.PerformLayout();
+ this.securityContextMenu.ResumeLayout(false);
this.WMSTab.ResumeLayout(false);
this.groupBox2.ResumeLayout(false);
this.groupBox2.PerformLayout();
this.groupBox1.ResumeLayout(false);
this.groupBox1.PerformLayout();
this.WFSTab.ResumeLayout(false);
- this.CustomTab.ResumeLayout(false);
+ this.groupBox4.ResumeLayout(false);
+ this.groupBox4.PerformLayout();
this.groupBox3.ResumeLayout(false);
this.groupBox3.PerformLayout();
- this.groupBox4.ResumeLayout(false);
- this.groupBox4.PerformLayout();
+ this.CustomTab.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
this.ResumeLayout(false);
@@ -706,14 +789,14 @@
private System.Windows.Forms.GroupBox groupBox2;
private System.Windows.Forms.TextBox WMSBounds;
private System.Windows.Forms.TextBox WMSTitle;
- private System.Windows.Forms.Button button1;
+ private System.Windows.Forms.Button EditWMSBounds;
private System.Windows.Forms.TextBox WMSMetadata;
private System.Windows.Forms.TextBox WMSAbstract;
private System.Windows.Forms.TextBox WMSKeyWords;
private System.Windows.Forms.ToolTip toolTip;
private System.Windows.Forms.Button WMSClearHeaderButton;
private System.Windows.Forms.GroupBox groupBox4;
- private System.Windows.Forms.Button button2;
+ private System.Windows.Forms.Button EditWFSBounds;
private System.Windows.Forms.TextBox WFSBounds;
private System.Windows.Forms.Label label10;
private System.Windows.Forms.CheckBox WFSAvalible;
@@ -726,14 +809,22 @@
private System.Windows.Forms.Label label7;
private System.Windows.Forms.Label label8;
private System.Windows.Forms.Label label9;
- private System.Windows.Forms.TextBox WFSOtherSRS;
private System.Windows.Forms.Label label12;
- private System.Windows.Forms.TextBox WFSPrimarySRS;
private System.Windows.Forms.Label label11;
private System.Windows.Forms.Button WFSClearHeaderButton;
private System.Windows.Forms.Button ClearHeaderButton;
private System.Windows.Forms.DataGridView dataGridView1;
private System.Windows.Forms.DataGridViewTextBoxColumn ItemKey;
private System.Windows.Forms.DataGridViewTextBoxColumn ItemValue;
+ private System.Windows.Forms.ComboBox WFSOtherSRS;
+ private System.Windows.Forms.ComboBox WFSPrimarySRS;
+ private System.Windows.Forms.ColumnHeader columnHeader1;
+ private System.Windows.Forms.ColumnHeader columnHeader2;
+ private System.Windows.Forms.ColumnHeader columnHeader3;
+ private System.Windows.Forms.ContextMenuStrip securityContextMenu;
+ private System.Windows.Forms.ToolStripMenuItem \
readWriteAccessToolStripMenuItem; + private \
System.Windows.Forms.ToolStripMenuItem readOnlyAccessToolStripMenuItem; + \
private System.Windows.Forms.ToolStripMenuItem denyAccessToolStripMenuItem; + \
private System.Windows.Forms.ToolStripMenuItem \
inheritedAccessRightsToolStripMenuItem; }
}
\ No newline at end of file
Modified: trunk/Tools/Maestro/Maestro/ResourceProperties.cs
===================================================================
--- trunk/Tools/Maestro/Maestro/ResourceProperties.cs 2008-08-28 17:56:09 UTC (rev \
3295)
+++ trunk/Tools/Maestro/Maestro/ResourceProperties.cs 2008-08-28 21:08:24 UTC (rev \
3296) @@ -17,13 +17,30 @@
private ResourceDocumentHeaderType m_resourceHeader;
private ResourceFolderHeaderType m_folderHeader;
+ private bool m_isUpdating = false;
+ private string[] m_srslist = null;
+
private const int RWUSER = 0;
private const int ROUSER = 1;
- private const int NOUSER = 3;
- private const int RWGROUP = 4;
- private const int ROGROUP = 5;
- private const int NOGROUP = 6;
+ private const int NOUSER = 2;
+ private const int RWGROUP = 3;
+ private const int ROGROUP = 4;
+ private const int NOGROUP = 5;
+ private const int IHUSER = 6;
+ private const int IHGROUP = 7;
+ private string[] StatusNames =
+ {
+ "Read/write",
+ "Read only",
+ "No access",
+ "Read/write",
+ "Read only",
+ "No access",
+ "Inherited",
+ "Inherited"
+ };
+
public ResourceProperties(ServerConnectionI connection, string resourceId)
: this()
{
@@ -38,13 +55,13 @@
private void ResourceProperties_Load(object sender, EventArgs e)
{
- Dictionary<string, ListViewItem> ul = new \
Dictionary<string,ListViewItem>();
- Dictionary<string, ListViewItem> gl = new \
Dictionary<string,ListViewItem>(); + Dictionary<string, ListViewItem> ul = \
new Dictionary<string, ListViewItem>(); + Dictionary<string, ListViewItem> \
gl = new Dictionary<string, ListViewItem>();
UsersAndGroups.Items.Clear();
foreach (UserListUser u in m_connection.EnumerateUsers().Items)
{
- ListViewItem lvi = new ListViewItem(u.FullName, RWUSER);
+ ListViewItem lvi = new ListViewItem(new string[] { u.FullName, \
u.Description, StatusNames[IHUSER] }, IHUSER); lvi.Tag = u;
UsersAndGroups.Items.Add(lvi);
ul.Add(lvi.Text, lvi);
@@ -52,7 +69,7 @@
foreach (GroupListGroup g in m_connection.EnumerateGroups().Group)
{
- ListViewItem lvi = new ListViewItem(g.Name, RWGROUP);
+ ListViewItem lvi = new ListViewItem(new string[] { g.Name, \
g.Description, StatusNames[IHGROUP] }, IHGROUP); lvi.Tag = g;
UsersAndGroups.Items.Add(lvi);
gl.Add(lvi.Text, lvi);
@@ -100,41 +117,95 @@
else
UpdateWFSDisplay();
}
+
+ if (tabControl1.TabCount == 1)
+ {
+ foreach (Control c in new \
System.Collections.ArrayList(tabControl1.TabPages[0].Controls)) + {
+ tabControl1.Controls.Remove(c);
+ this.Controls.Add(c);
+ }
+
+ this.Controls.Remove(tabControl1);
+ }
+
+ this.Text = m_resourceId;
+
}
private void UpdateWFSDisplay()
{
- if (m_resourceHeader.Metadata != null && \
m_resourceHeader.Metadata.Simple != null && m_resourceHeader.Metadata.Simple.Property \
!= null) + try
{
- WFSTitle.Text = m_resourceHeader.Metadata.Simple.Property["_Title"];
- WFSKeywords.Text = \
m_resourceHeader.Metadata.Simple.Property["_Keywords"];
- WFSAbstract.Text = \
m_resourceHeader.Metadata.Simple.Property["_Abstract"];
- WFSMetadata.Text = \
m_resourceHeader.Metadata.Simple.Property["_ExtendedMetadata"]; + \
m_isUpdating = true; + if (m_resourceHeader.Metadata != null && \
m_resourceHeader.Metadata.Simple != null && m_resourceHeader.Metadata.Simple.Property \
!= null) + {
+ WFSTitle.Text = \
m_resourceHeader.Metadata.Simple.Property["_Title"]; + \
WFSKeywords.Text = m_resourceHeader.Metadata.Simple.Property["_Keywords"]; + \
WFSAbstract.Text = m_resourceHeader.Metadata.Simple.Property["_Abstract"]; + \
WFSMetadata.Text = m_resourceHeader.Metadata.Simple.Property["_ExtendedMetadata"];
- WFSPrimarySRS.Text = \
m_resourceHeader.Metadata.Simple.Property["_PrimarySRS"];
- WFSOtherSRS.Text = \
m_resourceHeader.Metadata.Simple.Property["_OtherSRS"];
- WFSAvalible.Checked = \
m_resourceHeader.Metadata.Simple.Property["_IsPublished"] == "1";
- WFSBounds.Text = \
m_resourceHeader.Metadata.Simple.Property["_Bounds"]; + \
WFSPrimarySRS.Text = m_resourceHeader.Metadata.Simple.Property["_PrimarySRS"]; + \
WFSOtherSRS.Text = m_resourceHeader.Metadata.Simple.Property["_OtherSRS"]; + \
WFSAvalible.Checked = m_resourceHeader.Metadata.Simple.Property["_IsPublished"] == \
"1"; + WFSBounds.Text = \
m_resourceHeader.Metadata.Simple.Property["_Bounds"]; + }
+ else
+ {
+ WFSTitle.Text =
+ WFSKeywords.Text =
+ WFSAbstract.Text =
+ WFSMetadata.Text = "";
+
+ WFSPrimarySRS.Text =
+ WFSOtherSRS.Text =
+ WFSBounds.Text = "";
+ WFSAvalible.Checked = false;
+ }
}
-
+ finally
+ {
+ m_isUpdating = false;
+ }
+
UpdateCustomDisplay();
}
private void UpdateWMSDisplay()
{
- if (m_resourceHeader.Metadata != null && \
m_resourceHeader.Metadata.Simple != null && m_resourceHeader.Metadata.Simple.Property \
!= null) + try
{
- WMSTitle.Text = m_resourceHeader.Metadata.Simple.Property["_Title"];
- WMSKeyWords.Text = \
m_resourceHeader.Metadata.Simple.Property["_Keywords"];
- WMSAbstract.Text = \
m_resourceHeader.Metadata.Simple.Property["_Abstract"];
- WMSMetadata.Text = \
m_resourceHeader.Metadata.Simple.Property["_ExtendedMetadata"]; + \
m_isUpdating = true; + if (m_resourceHeader.Metadata != null && \
m_resourceHeader.Metadata.Simple != null && m_resourceHeader.Metadata.Simple.Property \
!= null) + {
+ WMSTitle.Text = \
m_resourceHeader.Metadata.Simple.Property["_Title"]; + \
WMSKeyWords.Text = m_resourceHeader.Metadata.Simple.Property["_Keywords"]; + \
WMSAbstract.Text = m_resourceHeader.Metadata.Simple.Property["_Abstract"]; + \
WMSMetadata.Text = m_resourceHeader.Metadata.Simple.Property["_ExtendedMetadata"];
- WMSQueryable.Checked = \
m_resourceHeader.Metadata.Simple.Property["_Queryable"] == "1";
- WMSOpaque.Checked = \
m_resourceHeader.Metadata.Simple.Property["_Opaque"] == "1";
- WMSAvalible.Checked = \
m_resourceHeader.Metadata.Simple.Property["_IsPublished"] == "1";
- WMSBounds.Text = \
m_resourceHeader.Metadata.Simple.Property["_Bounds"]; + \
WMSQueryable.Checked = m_resourceHeader.Metadata.Simple.Property["_Queryable"] == \
"1"; + WMSOpaque.Checked = \
m_resourceHeader.Metadata.Simple.Property["_Opaque"] == "1"; + \
WMSAvalible.Checked = m_resourceHeader.Metadata.Simple.Property["_IsPublished"] == \
"1"; + WMSBounds.Text = \
m_resourceHeader.Metadata.Simple.Property["_Bounds"]; + }
+ else
+ {
+ WMSTitle.Text =
+ WMSKeyWords.Text =
+ WMSAbstract.Text =
+ WMSMetadata.Text = "";
+
+ WMSQueryable.Checked =
+ WMSOpaque.Checked =
+ WMSAvalible.Checked = false;
+
+ WMSBounds.Text = "";
+ }
}
-
+ finally
+ {
+ m_isUpdating = false;
+ }
UpdateCustomDisplay();
}
@@ -167,6 +238,8 @@
lvi.ImageIndex = NOUSER;
break;
}
+
+ lvi.SubItems[2].Text = StatusNames[lvi.ImageIndex];
}
private void UpdateListItem(ResourceSecurityTypeGroupsGroup g, ListViewItem \
lvi) @@ -183,6 +256,7 @@
lvi.ImageIndex = NOUSER;
break;
}
+ lvi.SubItems[2].Text = StatusNames[lvi.ImageIndex];
}
private void ClearHeaderButton_Click(object sender, EventArgs e)
@@ -193,6 +267,8 @@
private void WMSTitle_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_Title"] = WMSTitle.Text;
}
@@ -216,7 +292,7 @@
m_resourceHeader.Metadata.Simple.Property["_Keywords"] = "";
if (m_resourceHeader.Metadata.Simple.Property["_Abstract"] == \
null)
m_resourceHeader.Metadata.Simple.Property["_Abstract"] = "";
- if \
(m_resourceHeader.Metadata.Simple.Property["_ExtendedMetadata"] == null) + \
if (m_resourceHeader.Metadata.Simple.Property["_ExtendedMetadata"] == \
null)
\
m_resourceHeader.Metadata.Simple.Property["_ExtendedMetadata"] = "";
if (m_resourceHeader.Metadata.Simple.Property["_Queryable"] == \
null) @@ -233,42 +309,56 @@
private void WMSKeyWords_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_Keywords"] = \
WMSKeyWords.Text; }
private void WMSAbstract_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_Abstract"] = \
WMSAbstract.Text; }
private void WMSMetadata_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_ExtendedMetadata"] = \
WMSMetadata.Text; }
private void WMSAvalible_CheckedChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_IsPublished"] = \
WMSAvalible.Checked ? "1" : "0"; }
private void WMSBounds_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_Bounds"] = WMSBounds.Text;
}
private void WMSQueryable_CheckedChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_Queryable"] = \
WMSQueryable.Checked ? "1" : "0"; }
private void WMSOpaque_CheckedChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_Opaque"] = WMSOpaque.Checked \
? "1" : "0"; }
@@ -276,39 +366,90 @@
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
{
if (tabControl1.SelectedTab == CustomTab)
+ UpdateCustomDisplay();
+ else if (tabControl1.SelectedTab == WMSTab)
UpdateWMSDisplay();
- else if (tabControl1.SelectedTab == WMSTab)
+ else if (tabControl1.SelectedTab == WFSTab)
+ {
+ FillCoordSysLists();
UpdateWFSDisplay();
- else if (tabControl1.SelectedTab == WFSTab)
- UpdateCustomDisplay();
+ }
}
+ private void FillCoordSysLists()
+ {
+ if (WFSPrimarySRS.Items.Count == 0)
+ {
+ try
+ {
+ List<string> items = new List<string>();
+ foreach (OSGeo.MapGuide.MaestroAPI.CoordinateSystem.CoordSys c \
in m_connection.CoordinateSystem.Coordsys) + if \
(c.Code.StartsWith("EPSG:")) + items.Add(c.Code);
+
+ m_srslist = items.ToArray();
+ try
+ {
+ WFSPrimarySRS.BeginUpdate();
+ WFSPrimarySRS.Items.AddRange(m_srslist);
+ }
+ finally
+ {
+ WFSPrimarySRS.EndUpdate();
+ }
+
+ try
+ {
+ WFSOtherSRS.BeginUpdate();
+ WFSOtherSRS.Items.AddRange(m_srslist);
+ }
+ finally
+ {
+ WFSOtherSRS.EndUpdate();
+ }
+ }
+ catch
+ {
+ }
+ }
+ }
+
private void WFSTitle_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_Title"] = WFSTitle.Text;
}
private void WFSKeywords_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_Keywords"] = \
WFSKeywords.Text; }
private void WFSAbstract_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_Abstract"] = \
WFSAbstract.Text; }
private void WFSMetadata_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_ExtendedMetadata"] = \
WFSMetadata.Text; }
private void checkBox3_CheckedChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_IsPublished"] = \
WFSAvalible.Checked ? "1" : "0";
@@ -316,24 +457,32 @@
private void WFSPrimarySRS_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_PrimarySRS"] = \
WFSPrimarySRS.Text; }
private void WFSOtherSRS_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_OtherSRS"] = \
WFSOtherSRS.Text; }
private void WFSBounds_TextChanged(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
EnsureMetaData();
m_resourceHeader.Metadata.Simple.Property["_Bounds"] = WFSBounds.Text;
}
private void WFSClearHeaderButton_Click(object sender, EventArgs e)
{
+ if (m_isUpdating)
+ return;
m_resourceHeader.Metadata = null;
UpdateWFSDisplay();
}
@@ -343,5 +492,189 @@
m_resourceHeader.Metadata = null;
UpdateCustomDisplay();
}
+
+ private void dataGridView1_Leave(object sender, EventArgs e)
+ {
+ EnsureMetaData();
+ m_resourceHeader.Metadata.Simple.Property.Clear();
+
+ foreach (DataGridViewRow dr in dataGridView1.Rows)
+ {
+ string k = dr.Cells[0].Value == null || dr.Cells[0].Value == \
DBNull.Value ? "" : dr.Cells[0].Value.ToString(); + string v = \
dr.Cells[1].Value == null || dr.Cells[1].Value == DBNull.Value ? "" : \
dr.Cells[1].Value.ToString(); +
+ if (!string.IsNullOrEmpty(k))
+ m_resourceHeader.Metadata.Simple.Property[k] = v;
+ }
+ }
+
+ private void OKBtn_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ //Update security info
+ if (m_resourceId.IsFolder)
+ {
+ m_folderHeader.Security.Inherited = UseInherited.Checked;
+ if (m_folderHeader.Security.Inherited)
+ {
+ m_folderHeader.Security.Groups = null;
+ m_folderHeader.Security.Users = null;
+ }
+ else
+ {
+ m_folderHeader.Security.Groups = new \
ResourceSecurityTypeGroups(); + m_folderHeader.Security.Users \
= new ResourceSecurityTypeUsers(); + \
m_folderHeader.Security.Groups.Group = new \
ResourceSecurityTypeGroupsGroupCollection(); + \
m_folderHeader.Security.Users.User = new ResourceSecurityTypeUsersUserCollection(); + \
ReadSecurityData(m_folderHeader.Security.Groups.Group, \
m_folderHeader.Security.Users.User); + }
+ }
+ else
+ {
+ m_resourceHeader.Security.Inherited = UseInherited.Checked;
+ if (m_resourceHeader.Security.Inherited)
+ {
+ m_resourceHeader.Security.Groups = null;
+ m_resourceHeader.Security.Users = null;
+ }
+ else
+ {
+ m_resourceHeader.Security.Groups = new \
ResourceSecurityTypeGroups(); + \
m_resourceHeader.Security.Users = new ResourceSecurityTypeUsers(); + \
m_resourceHeader.Security.Groups.Group = new \
ResourceSecurityTypeGroupsGroupCollection(); + \
m_resourceHeader.Security.Users.User = new ResourceSecurityTypeUsersUserCollection(); \
+ ReadSecurityData(m_resourceHeader.Security.Groups.Group, \
m_resourceHeader.Security.Users.User); + }
+ }
+
+ //Save header
+ if (m_resourceId.IsFolder)
+ m_connection.SetFolderHeader(m_resourceId, m_folderHeader);
+ else
+ m_connection.SetResourceHeader(m_resourceId, m_resourceHeader);
+ }
+ catch (Exception ex)
+ {
+ MessageBox.Show(this, string.Format("Failed to save the resource \
properties: {0}", ex.Message), Application.ProductName, MessageBoxButtons.OK, \
MessageBoxIcon.Error); + return;
+ }
+
+ this.DialogResult = DialogResult.OK;
+ this.Close();
+ }
+
+ private void ReadSecurityData(ResourceSecurityTypeGroupsGroupCollection \
groups, ResourceSecurityTypeUsersUserCollection users) + {
+ foreach (ListViewItem lvi in UsersAndGroups.Items)
+ if (lvi.Tag as UserListUser != null)
+ {
+ ResourceSecurityTypeUsersUser u = new \
ResourceSecurityTypeUsersUser(); + u.Name = (lvi.Tag as \
UserListUser).Name; + if (lvi.ImageIndex == RWUSER)
+ u.Permissions = PermissionsType.rw;
+ else if (lvi.ImageIndex == ROUSER)
+ u.Permissions = PermissionsType.r;
+ else if (lvi.ImageIndex == NOUSER)
+ u.Permissions = PermissionsType.n;
+ else
+ continue;
+ users.Add(u);
+ }
+ else if (lvi.Tag as GroupListGroup != null && lvi.ImageIndex != \
IHGROUP) + {
+ ResourceSecurityTypeGroupsGroup g = new \
ResourceSecurityTypeGroupsGroup(); + g.Name = (lvi.Tag as \
GroupListGroup).Name; + if (lvi.ImageIndex == RWGROUP)
+ g.Permissions = PermissionsType.rw;
+ else if (lvi.ImageIndex == ROGROUP)
+ g.Permissions = PermissionsType.r;
+ else if (lvi.ImageIndex == NOGROUP)
+ g.Permissions = PermissionsType.n;
+ else
+ continue;
+ groups.Add(g);
+ }
+ }
+
+ private void securityContextMenu_Opening(object sender, CancelEventArgs e)
+ {
+ readWriteAccessToolStripMenuItem.Enabled =
+ readOnlyAccessToolStripMenuItem.Enabled =
+ denyAccessToolStripMenuItem.Enabled =
+ inheritedAccessRightsToolStripMenuItem.Enabled =
+ UsersAndGroups.SelectedItems.Count > 0;
+ }
+
+ private void readWriteAccessToolStripMenuItem_Click(object sender, EventArgs \
e) + {
+ foreach (ListViewItem lvi in UsersAndGroups.SelectedItems)
+ {
+ if (lvi.Tag as UserListUser != null)
+ lvi.ImageIndex = RWUSER;
+ else
+ lvi.ImageIndex = RWGROUP;
+
+ lvi.SubItems[2].Text = StatusNames[lvi.ImageIndex];
+ }
+ }
+
+ private void readOnlyAccessToolStripMenuItem_Click(object sender, EventArgs \
e) + {
+ foreach (ListViewItem lvi in UsersAndGroups.SelectedItems)
+ {
+ if (lvi.Tag as UserListUser != null)
+ lvi.ImageIndex = ROUSER;
+ else
+ lvi.ImageIndex = ROGROUP;
+
+ lvi.SubItems[2].Text = StatusNames[lvi.ImageIndex];
+ }
+
+ }
+
+ private void denyAccessToolStripMenuItem_Click(object sender, EventArgs e)
+ {
+ foreach (ListViewItem lvi in UsersAndGroups.SelectedItems)
+ {
+ if (lvi.Tag as UserListUser != null)
+ lvi.ImageIndex = NOUSER;
+ else
+ lvi.ImageIndex = NOGROUP;
+
+ lvi.SubItems[2].Text = StatusNames[lvi.ImageIndex];
+ }
+
+ }
+
+ private void inheritedAccessRightsToolStripMenuItem_Click(object sender, \
EventArgs e) + {
+ foreach (ListViewItem lvi in UsersAndGroups.SelectedItems)
+ {
+ if (lvi.Tag as UserListUser != null)
+ lvi.ImageIndex = IHUSER;
+ else
+ lvi.ImageIndex = IHGROUP;
+
+ lvi.SubItems[2].Text = StatusNames[lvi.ImageIndex];
+ }
+
+ }
+
+ private void EditWMSBounds_Click(object sender, EventArgs e)
+ {
+ BoundsPicker bp = new BoundsPicker(WMSBounds.Text, m_srslist);
+ if (bp.ShowDialog(this) == DialogResult.OK)
+ WMSBounds.Text = bp.SRSBounds;
+ }
+
+ private void EditWFSBounds_Click(object sender, EventArgs e)
+ {
+ BoundsPicker bp = new BoundsPicker(WFSBounds.Text, m_srslist);
+ if (bp.ShowDialog(this) == DialogResult.OK)
+ WFSBounds.Text = bp.SRSBounds;
+
+ }
}
+
}
\ No newline at end of file
Modified: trunk/Tools/Maestro/Maestro/ResourceProperties.resx
===================================================================
--- trunk/Tools/Maestro/Maestro/ResourceProperties.resx 2008-08-28 17:56:09 UTC (rev \
3295)
+++ trunk/Tools/Maestro/Maestro/ResourceProperties.resx 2008-08-28 21:08:24 UTC (rev \
3296) @@ -117,12 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, \
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> \
</resheader>
- <metadata name="ItemKey.UserAddedColumn" type="System.Boolean, mscorlib, \
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
+ <metadata name="securityContextMenu.TrayLocation" type="System.Drawing.Point, \
System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + \
<value>262, 17</value> </metadata>
- <metadata name="ItemValue.UserAddedColumn" type="System.Boolean, mscorlib, \
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
- <value>True</value>
- </metadata>
<metadata name="UserAndGroupImages.TrayLocation" type="System.Drawing.Point, \
System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> \
<value>17, 17</value> </metadata>
@@ -130,162 +127,205 @@
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
- ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAABC
- IAAAAk1TRnQBSQFMAgEBBgEAAQkBAAEEAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
- AwABIAMAAQEBAAEgBgABIDIAAVQBBwELAasBRAGjAcsB+ewAAQcCAQIHAgEBCAEFAgEBBQFTASUBOAHV
- ATwBxgHwAf4BRAGtAc8B+QEFAgEBBQECAwEgAAEHAgECBwIBAQgBBQIBAQUBAwIBAgMCAQEDAR4CAQEp
- ARABBAF9AfsBEAEEAcsB+wEQAQQBmAH7AT8CAQFpkAABDQIBAQ8BawGsAWYB/gF7AcUBdgH+AXsBxQF2
- Af4BfQHFAXcB/gF9AcMBdwH+AS0BrQHQAf4BkgHMAeoB/wGrAaUBpgH/AakBqgGjAf8BsQGwAasB/wHA
- AroB/gEGAgEBBgwAAQ0CAQEPAWsBrAFmAf4BewHFAXYB/gF7AcUBdgH+AX0BxQF3Af4BfQHDAXcB/gF5
- AbgBdAH+AgQB5wH/AQYBCAG0Af8BKAFMATIB/gEPAREBagH+AQgBBAHcAf4BQQIBAXCMAAFDAgEBdgFE
- AbkBQQH+ATgBtAEyAf4BOAG0ATIB/gE4AbQBMgH+AWkBqQFkAf4BfQHAAXgB/gGlAaIBoAH/AcUB3AGr
- Af8BygHbAZkB/wHcAdsBnQH/AWwBGgEVAcEBzwLJAf4MAAFDAgEBdgFEAbkBQQH+ATgBtAEyAf4BOAG0
- ATIB/gE4AbQBMgH+AWkBqQFkAf4BFwEZAWIB/gEEAQYB4AH/AQYBCwFzAf8BIQFYASAB/gF9AcIBdwH+
- ATQBBgE3AeoBDAEEAawB/IwAAUkCAgGDAUEBtwE9Af4BOAG0ATIB/gE4AbQBMgH+AWIBwAFdAf4BqwHA
- AaEB/gFBAYMBOwH+AacCogH/AckB2wGZAf8ByQHXAYsB/wHbAdYBhgH/AXcBJAEXAcoBrgGRAY4B9gwA
- AUkCAgGDAUEBtwE9Af4BOAG0ATIB/gE4AbQBMgH+AWIBwAFdAf4BqwHAAaEB/gEEAQYBkwH/AQUBCAGU
- Af8BOAG0ATIB/gEFAQgBowH/AWMBhgFeAf4BTQICAZMBCAEEAdwB/oAAAQ0CAQEQAcYBhwFoAf4B2gGk
- AXMB/gFxAX8BQAH+AUMBtAFAAf4BNgGvATEB/gE2Aa8BMQH+AWsBqAFlAf4B9QHqAekB/gHlAeEB2gH+
- AbECrAH/AckB1gGLAf8ByQHQAXgB/wHhAdcBhAH/AaYBYwFRAeUBsgGZAZYB+QENAgEBEAHGAYcBaAH+
- AdoBpAFzAf4BcQF/AUAB/gFDAbQBQAH+ATYBrwExAf4BNgGvATEB/gFrAagBZQH+AfUB6gHpAf4BNQEv
- AWkB/gIEAecB/wE2AakBMQH+ATYBqwExAf4BBgEIAccB/wEmAQUBVAHyAQwBBAGVAfyAAAFCAgEBcgHa
- AZABPgH+AdoBjwE8Af4BoAF7ATAB/gF1Ab4BcAH+ATQBqAEvAf4BNQGoATAB/gFDAX8BPQH+AaEBpgG2
- Af4BsgGvAbcB/gGlAagBoQH/Ab4BzQGeAf8B0QHQAXcB/wHtAeABpwH/AYQBNwEvAdYBnwKBAfUBQgIB
- AXIB2gGQAT4B/gHaAY8BPAH+AaABewEwAf4BdQG+AXAB/gE0AagBLwH+ATUBqAEwAf4BQwF/AT0B/gGh
- AaYBtgH+Aa4BrAGzAf4CBAHZAf8BBAEGAdwB/wEPARkBVwH+AQgBCgGnAf8BCAEEAdwB/gEsAgEBQoAA
- AUUCAQF5AdkBjgE9Af4B2QGOATwB/gHMAYUBOAH+AUYBdQEtAf4BgAG5AXoB/gFOAZEBcgH+AWIBmAHZ
- Af4BpgHKAfEB/gGqAcsB8AH+ASoBfAHMAf4BsQGvAasB/gHRAc4BzQH/AbwBtQG0Af4BkAJfAewEAAFF
- AgEBeQHZAY4BPQH+AdkBjgE8Af4BzAGFATgB/gFGAXUBLQH+AYABuQF6Af4BTgGRAXIB/gFiAZgB2QH+
- AaYBygHxAf4BqgHLAfAB/gErAXoByAH+ARgBGgFbAf4BBQEGAaYB/wEaAQcBWQH4AR8CAQEqhAABNgIB
- AVYB1AGIAUEB/gHTAYQBOgH+AdkBnAFhAf4B2wHKAccB/gGyAakBqAH+AW4BoQHdAf4BhQG9AfIB/gGE
- Ab0B8gH+AYMBvQHyAf4BhQG9AfIB/gEjAWEBsQH5EAABNgIBAVYB1AGIAUEB/gHTAYQBOgH+AdkBnAFh
- Af4B2wHKAccB/gGyAakBqAH+AW4BoQHdAf4BhQG9AfIB/gGEAb0B8gH+AYMBvQHyAf4BhQG9AfIB/gEj
- AWEBsQH5lAABxQGNAXMB/gHLAX8BPAH+AYUBfAF+Af4BQQGAAdEB/gEtAXMBuwH+AYsBvgHyAf4BgAG6
- AfIB/gGAAboB8gH+AYABuQHyAf4BgAG5AfIB/gGeAcMB7QH+AQQCAQEEEAABxQGNAXMB/gHLAX8BPAH+
- AYUBfAF+Af4BQQGAAdEB/gEtAXMBuwH+AYsBvgHyAf4BgAG6AfIB/gGAAboB8gH+AYABuQHyAf4BgAG5
- AfIB/gGeAcMB7QH+AQQCAQEEkAABAwIBAQIBXwINAb8BnwHEAe0B/gGFAb0B8QH+ATABfwHNAf4BfwG3
- AfIB/gF8AbUB8gH+AXsBtQHyAf4BegG0AfIB/gF5AbQB8gH+AZUBwQHxAf4BGwIBASQQAAEDAgEBAgFf
- Ag0BvwGfAcQB7QH+AYUBvQHxAf4BMAF/Ac0B/gF/AbcB8gH+AXwBtQHyAf4BewG1AfIB/gF6AbQB8gH+
- AXkBtAHyAf4BlQHBAfEB/gEbAgEBJJQAAUMBNQFhAecBgAG6AfIB/gGAAboB8gH+AUcBhgHMAf4BgAG6
- AfIB/gFzAbAB8gH+AXIBsAHyAf4BcQGvAfIB/gFwAa8B8gH+AZIBvwHvAf4BAgMBFAABQwE1AWEB5wGA
- AboB8gH+AYABugHyAf4BRwGGAcwB/gGAAboB8gH+AXMBsAHyAf4BcgGwAfIB/gFxAa8B8gH+AXABrwHy
- Af4BkgG/Ae8B/gECAwGUAAFLAZEB4wH+AXwBtQHyAf4BewG1AfIB/gFrAZ0B1AH+AWIBpAHwAf4BawGs
- AfIB/gFqAawB8gH+AWoBqwHyAf4BbgGuAfIB/gE6AVcBngHxGAABSwGRAeMB/gF8AbUB8gH+AXsBtQHy
- Af4BawGdAdQB/gFiAaQB8AH+AWsBrAHyAf4BagGsAfIB/gFqAasB8gH+AW4BrgHyAf4BOgFXAZ4B8ZgA
- AVcBFwEmAckBcQGvAfIB/gFwAa8B8gH+AW4BrQHwAf4BUgGJAccB/gFOAZoB8QH+AZEBvwHxAf4BjwG+
- AfEB/gEyAWwBvQH2HAABVwEXASYByQFxAa8B8gH+AXABrwHyAf4BbgGtAfAB/gFSAYkBxwH+AU4BmgHx
- Af4BkQG/AfEB/gGPAb4B8QH+ATIBbAG9AfacAAEDAgEBAwF7AbIB8QH+AWgBqgHyAf4BZwGqAfIB/gGI
- AbwB8AH+ATUCAQFUAQYCAQEGAQIDASAAAQMCAQEDAXsBsgHxAf4BaAGqAfIB/gFnAaoB8gH+AYgBvAHw
- Af4BNQIBAVQBBgIBAQYBAgMBpAABAwIBAQIBUwEHAQoBqAFYARIBIAHEARoCAQEjMAABAwIBAQIBUwEH
- AQoBqAFYARIBIAHEARoCAQEjxAABIgIBATA8AAFUAQcBCwGrAUQBowHLAfl4AAEiAgEBMCQAARgCAQEf
- AT8CAQFqAUECAQFvAT0CAQFmATsCAQFgATgCAQFaAT8CAQFpAW0BzQHbAf4BVAEhATAB0QE0AgEBUgED
- AgEBAhQAARgCAQEfAT8CAQFqAUECAQFvAT0CAQFmATsCAQFgATgCAQFaASsBdwGlAfgBPAHGAfAB/gFF
- AbEB1QH6ATQCAQFSAQMCAQECFAABGAIBAR8BPwIBAWoBQQIBAW8BPQIBAWYBOwIBAWABOAIBAVoBOwIB
- AWABPAIBAWMBPgIBAWcBEAEEAXsB+wEQAQQBywH7ARABBAGYAfsBPwIBAWkYAAEHAgECBwIBAQgBBQIB
- AQUBCgIBAQsBbQHNAdsB/gFUASEBMAHRAQUCAQEFAQIDARAAATsCAQFgAYIBxAF/Af4BYAG/AVoB/gFe
- Ab4BWAH+AWIBwAFcAf4BZQHAAWAB/gFoAcEBYwH+AWUBwAFgAf4BIwGwAfMB/wEcAaEB5wH/ATEBoQHk
- Af8BXwGhAVoB/gEFAgEBBQwAATsCAQFgAYIBxAF/Af4BYAG/AVoB/gFeAb4BWAH+AWIBwAFcAf4BZQHA
- AWAB/gFoAcEBYwH+AWUBwAFgAf4BKQGsAc0B/gGSAcwB6gH/AasBpQGmAf8BrAGqAaYB/wGbAXkBeAHz
- AcACugH+AQYCAQEGBAABOwIBAWABggHEAX8B/gFgAb8BWgH+AV4BvgFYAf4BYgHAAVwB/gFlAcABYAH+
- AWgBwQFjAf4BZQHAAWAB/gFhAbUBWwH+AgQB5wH/AQUBCAGzAf8BOgFNAUEB/gEtAQgBQAHvAQgBBAHc
- Af4BQQIBAXAMAAENAgEBDwFrAawBZgH+AXsBxQF2Af4BewHFAXYB/gF9AcUBdwH+AX0BwwF3Af4BJAGw
- AfMB/wEcAaEB5wH/ATUBmAHZAf4BfQHBAXcB/gEqAX8BJQH+DAABTAEaAQMB0gE/AbYBOQH+ATgBtAEy
- Af4BOAG0ATIB/gE4AbQBMgH+AWgBwQFiAf4BRAGNAUEB/gFEAbkBQQH+ATgBtAEyAf4BJwHAAe8B/wEc
- AaEB5wH/ATIBmAHWAf4BPAIBAWQMAAFMARoBAwHSAT8BtgE5Af4BOAG0ATIB/gE4AbQBMgH+ATgBtAEy
- Af4BaAHBAWIB/gFEAY0BQQH+AUQBuQFBAf4BOAG0ATIB/gGlAaIBoAH/AcUB3AGrAf8B1QHeAaUB/wGE
- AToBKgHYAWwBGQEUAcABzwLJAf4EAAFMARoBAwHSAT8BtgE5Af4BOAG0ATIB/gE4AbQBMgH+ATgBtAEy
- Af4BaAHBAWIB/gFEAY0BQQH+AUQBuQFBAf4BDgEXAVgB/gEEAQYB4AH/AQoBCwFvAf4BQwFkAUEB/gE8
- AgEBZAE7AQYBMgHoAQwBBAGsAfwMAAFDAgEBdgFEAbkBQQH+ATgBtAEyAf4BOAG0ATIB/gE4AbQBMgH+
- AWkBqQFkAf4BfQHAAXgB/gEnAcAB7wH/ARwBoQHnAf8BIQGSAcQB/gF9AcIBdwH+AQMCAQECCAABRAEu
- AQoB4gE8AbUBNgH+ATgBtAEyAf4BOAG0ATIB/gE4AbQBMgH+ATgBgQEyAf4B9AHqAegB/gFvAasBaQH+
- ATgBtAEyAf4BOAG0ATIB/gEnAcAB8AH/ARwBoQHnAf8BagE0ATsB3AwAAUQBLgEKAeIBPAG1ATYB/gE4
- AbQBMgH+ATgBtAEyAf4BOAG0ATIB/gE4AYEBMgH+AfQB6gHoAf4BbwGrAWkB/gE4AbQBMgH+AacCogH/
- AckB2wGZAf8B0wHaAZQB/wGJAT8BKQHcAXQBIQEVAckBrgGRAY4B9gQAAUQBLgEKAeIBPAG1ATYB/gE4
- AbQBMgH+ATgBtAEyAf4BOAG0ATIB/gE4AYEBMgH+AfQB6gHoAf4BbwGrAWkB/gEEAQcBkwH/AQUBCAGU
- Af8BOAG0ATIB/gEFAQgBowH/AUkCAgGGAUsCAgGLAQgBBAHcAf4MAAFJAgIBgwFBAbcBPQH+ATgBtAEy
- Af4BOAG0ATIB/gFiAcABXQH+AasBwAGhAf4BQQGDATsB/gE7AbUBNgH+AScBwAHwAf8BHAGhAecB/wGA
- AaYBugH+AQcCAQEICAABTgEkAQgB2QE8AbIBNwH+ATcBsQEyAf4BNwGxATIB/gFYAbwBVAH+AYABqQF5
- Af4B9QLqAf4BNgF/AS4B/gE9AbMBOAH+ATcBsQEyAf4BNwGxATIB/gGWAcgB2AH/Aa4CqAH+AWsBJQEz
- AdoIAAFOASQBCAHZATwBsgE3Af4BNwGxATIB/gE3AbEBMgH+AVgBvAFUAf4BgAGpAXkB/gH1AuoB/gE2
- AX8BLgH+AT0BswE4Af4BsQKsAf8ByQHWAYsB/wLUAYEB/wGVAVABMwHiAaYBYwFRAeUBsgGZAZYB+QQA
- AU4BJAEIAdkBPAGyATcB/gE3AbEBMgH+ATcBsQEyAf4BWAG8AVQB/gGAAakBeQH+AfUC6gH+ATYBfwEu
- Af4BFwEnAUwB/gIEAecB/wE2AasBMQH+AVoBuQFVAf4BDAEFAbsB/QEmAQUBVAHyAQwBBAGVAfwBDQIB
- ARABxgGHAWgB/gHaAaQBcwH+AXEBfwFAAf4BQwG0AUAB/gE2Aa8BMQH+ATYBrwExAf4BawGoAWUB/gH1
- AeoB6QH+AeUB4QHaAf4BewHBAXcB/gE2Aa8BMQH+AZYByAHXAf8BsgKwAf8BawElATMB2ggAAVIBBQED
- AaABRwGzAUIB/gE1AasBMAH+ATUBqwEwAf4BgAG6AX0B/gHhAdcB1gH+AdgCzQH+AbgBwAGuAf4BfwHC
- AXsB/gE1AasBMAH+ATUBqwEwAf4BfQHCAXkB/gGMAYYBvAH+AUIBQAG8Af4BUQECAQUBnwQAAVIBBQED
- AaABRwGzAUIB/gE1AasBMAH+ATUBqwEwAf4BgAG6AX0B/gHhAdcB1gH+AdgCzQH+AbgBwAGuAf4BfwHC
- AXsB/gGiAacBmgH+Ab4BzgGfAf8B4QHWAYMB/wGlAWMBSgHmAYQBNwEvAdYBnwKBAfUEAAFSAQUBAwGg
- AUcBswFCAf4BNQGrATAB/gE1AasBMAH+AYABugF9Af4B4QHXAdYB/gHYAs0B/gG4AcABrgH+AYABwAF7
- Af4BBAEFAdkB/wEEAQYB3AH/ARgBHQFgAf4BGwEFAYAB9wEIAQQB3AH+ASwCAQJCAgEBcgHaAZABPgH+
- AdoBjwE8Af4BoAF7ATAB/gF1Ab4BcAH+ATQBqAEvAf4BNQGoATAB/gFDAX8BPQH+AaEBpgG2Af4BsgGv
- AbcB/gFZAZEBUgH+ATQBqAEvAf4BNAGoAS8B/gGRAY4BxwH/AUIBQAG8Af4BUQECAQUBnwQAAQgCAQEJ
- AXkBrgFyAf4BOAGmATQB/gEyAaEBLgH+ASsBbgFZAf4BDwFsAckB/gE9AYAB0QH+AQ4BagHGAf4BVAGD
- AWEB/gEzAaMBLgH+AUMBqwFBAf4BTgGRAUUB/gQAAVcBEwE9AdsBAgMBBAABCAIBAQkBeQGuAXIB/gE4
- AaYBNAH+ATIBoQEuAf4BKwFuAVkB/gEPAWwByQH+AT0BgAHRAf4BDgFqAcYB/gFUAYMBYQH+ATMBowEu
- Af4BqwGxAaQB/gHRAc4BzQH/AbwBtQG0Af4BkAJfAewIAAEIAgEBCQF5Aa4BcgH+ATgBpgE0Af4BMgGh
- AS4B/gErAW4BWQH+AQ8BbAHJAf4BPQGAAdEB/gEOAWoBxgH+AVQBgwFhAf4BMgGfAS4B/gESARsBVAH+
- AQQBBgGlAf8BGwEGAVgB9wEfAgEBKgQAAUUCAQF5AdkBjgE9Af4B2QGOATwB/gHMAYUBOAH+AUYBdQEt
- Af4BgAG5AXoB/gFOAZEBcgH+AWIBmAHZAf4BpgHKAfEB/gGqAcsB8AH+ASoBfAHMAf4BXAGmAVkB/gF3
- Aa4BcQH+ATwCAQFkAVcBEwE9AdsBAgMBCAABEwIBARgBSQFXASEB8AE5AX8BkwH+AaUBxQHrAf4BiAG+
- AfIB/gGHAb4B8gH+AYkBvwHyAf4BfgGrAd8B/gFKAYMBZwH+AVgBIQEPAdMBAgMBFAABEwIBARgBSQFX
- ASEB8AE5AX8BkwH+AaUBxQHrAf4BiAG+AfIB/gGHAb4B8gH+AYkBvwHyAf4BfgGrAd8B/gFKAYMBZwH+
- AVgBIQEPAdMBAgMBFAABEwIBARgBSQFXASEB8AE5AX8BkwH+AaUBxQHrAf4BiAG+AfIB/gGHAb4B8gH+
- AYkBvwHyAf4BfgGrAd8B/gFKAYMBZwH+AVgBIQEPAdMBAgMBDAABNgIBAVYB1AGIAUEB/gHTAYQBOgH+
- AdkBnAFhAf4B2wHKAccB/gGyAakBqAH+AW4BoQHdAf4BhQG9AfIB/gGEAb0B8gH+AYMBvQHyAf4BhQG9
- AfIB/gEjAWEBsQH5HAABBAIBAQQBbQGpAeoB/wGDAbwB8gH+AYcBxgL/AYIBvAHyAf4BgQG8AfIB/gGB
- AbwB8gH+ASYBfAHRAf4gAAEEAgEBBAFtAakB6gH/AYMBvAHyAf4BhwHGAv8BggG8AfIB/gGBAbwB8gH+
- AYEBvAHyAf4BJgF8AdEB/iAAAQQCAQEEAW0BqQHqAf8BgwG8AfIB/gGHAcYC/wGCAbwB8gH+AYEBvAHy
- Af4BgQG8AfIB/gEmAXwB0QH+GAABxQGNAXMB/gHLAX8BPAH+AYUBfAF+Af4BQQGAAdEB/gEtAXMBuwH+
- AYsBvgHyAf4BgAG6AfIB/gGAAboB8gH+AYABuQHyAf4BgAG5AfIB/gGeAcMB7QH+AQQCAQEEGAABNwIB
- AVkBngHGAfIB/gGAAboB8gH+AYABuQHyAf4BgAG5AfIB/gGAAbgB8gH+AYABuAHyAf4BmQHAAewB/gEF
- AgEBBRwAATcCAQFZAZ4BxgHyAf4BgAG6AfIB/gGAAbkB8gH+AYABuQHyAf4BgAG4AfIB/gGAAbgB8gH+
- AZkBwAHsAf4BBQIBAQUcAAE3AgEBWQGeAcYB8gH+AYABugHyAf4BgAG5AfIB/gGAAbkB8gH+AYABuAHy
- Af4BgAG4AfIB/gGZAcAB7AH+AQUCAQEFFAABAwIBAQIBXwINAb8BnwHEAe0B/gGFAb0B8QH+ATABfwHN
- Af4BfwG3AfIB/gF8AbUB8gH+AXsBtQHyAf4BegG0AfIB/gF5AbQB8gH+AZUBwQHxAf4BGwIBASQYAAFI
- AQIBAwGBAY4ByAH+Af8BfAG1AfIB/gF7Ab0C/wF6AbUB8gH+AXoBtAHyAf4BeQG0AfIB/gGnAckB8QH+
- ARYCAQEcHAABSAECAQMBgQGOAcgB/gH/AXwBtQHyAf4BewG9Av8BegG1AfIB/gF6AbQB8gH+AXkBtAHy
- Af4BpwHJAfEB/gEWAgEBHBwAAUgBAgEDAYEBjgHIAf4B/wF8AbUB8gH+AXsBvQL/AXoBtQHyAf4BegG0
- AfIB/gF5AbQB8gH+AacByQHxAf4BFgIBARwYAAFDATUBYQHnAYABugHyAf4BgAG6AfIB/gFHAYYBzAH+
- AYABugHyAf4BcwGwAfIB/gFyAbAB8gH+AXEBrwHyAf4BcAGvAfIB/gGSAb8B7wH+AQIDARgAASgCAQE5
- AZ8BxQHxAf4BcwGxAfIB/gFzAbAB8gH+AXIBsAHyAf4BcQGwAfIB/gFxAa8B8gH+AYUBuQHuAf4gAAEo
- AgEBOQGfAcUB8QH+AXMBsQHyAf4BcwGwAfIB/gFyAbAB8gH+AXEBsAHyAf4BcQGvAfIB/gGFAbkB7gH+
- IAABKAIBATkBnwHFAfEB/gFzAbEB8gH+AXMBsAHyAf4BcgGwAfIB/gFxAbAB8gH+AXEBrwHyAf4BhQG5
- Ae4B/hwAAUsBkQHjAf4BfAG1AfIB/gF7AbUB8gH+AWsBnQHUAf4BYgGkAfAB/gFrAawB8gH+AWoBrAHy
- Af4BagGrAfIB/gFuAa4B8gH+AToBVwGeAfEgAAE/AZoB+wH/AW0BrQHyAf4BbAG1Av8BawGsAfIB/gFr
- AawB8gH+AXQBsQHyAf4BKwFmAbsB9iQAAT8BmgH7Af8BbQGtAfIB/gFsAbUC/wFrAawB8gH+AWsBrAHy
- Af4BdAGxAfIB/gErAWYBuwH2JAABPwGaAfsB/wFtAa0B8gH+AWwBtQL/AWsBrAHyAf4BawGsAfIB/gF0
- AbEB8gH+ASsBZgG7AfYcAAFXARcBJgHJAXEBrwHyAf4BcAGvAfIB/gFuAa0B8AH+AVIBiQHHAf4BTgGa
- AfEB/gGRAb8B8QH+AY8BvgHxAf4BMgFsAb0B9iQAARoCAQEjAV0BogHyAf4BfgG1AfIB/gFrAawB8gH+
- AYUBuwHyAf4BNwGNAfIB/gECAwEkAAEaAgEBIwFdAaIB8gH+AX4BtQHyAf4BawGsAfIB/gGFAbsB8gH+
- ATcBjQHyAf4BAgMBJAABGgIBASMBXQGiAfIB/gF+AbUB8gH+AWsBrAHyAf4BhQG7AfIB/gE3AY0B8gH+
- AQIDARwAAQMCAQEDAXsBsgHxAf4BaAGqAfIB/gFnAaoB8gH+AYgBvAHwAf4BNQIBAVQBBgIBAQYBAgMB
- MAABTQEDAQQBkwFUAR0BMAHPAUMBAQECAXY0AAFNAQMBBAGTAVQBHQEwAc8BQwEBAQIBdjQAAU0BAwEE
- AZMBVAEdATABzwFDAQEBAgF2KAABAwIBAQIBUwEHAQoBqAFYARIBIAHEARoCAQEjJAABQgFNAT4HAAE+
- AwABKAMAAUADAAEgAwABAQEAAQEGAAEBFgAD/wEAAf8BPwL/BAAB+AEHAfgBAQQAAeABAAHgBQAB4AEA
- AeAFAAHgAQAB4BYAAQEBAAEBBQABDwEAAQ8EAAGAAQcBgAEHBAABgAEHAYABBwQAAcABBwHAAQcEAAHA
- AQ8BwAEPBAABwAEfAcABHwQAAcABPwHAAT8EAAHhAf8B4QH/BAAB/wF/Af8BPwP/AX8BwAEHAcABBwHA
- AQEB+AEHAYABAwGAAQABgAEAAeABAwGAAQMBgAEAAYABAAHgAQEBgAEDAYABAAGAAQAB4AEBAYABAQGA
- AQABgAIAAQEBgAEAAYABAAGAAwABgAEEAYABAQGAAQECAAHAAQcBwAEHAcABBwEAAQ8B4AEfAeABHwHg
- AR8BgAEHAeABDwHgAQ8B4AEPAYABBwHgAQ8B4AEPAeABDwHAAQcB4AEfAeABHwHgAR8BwAEPAfABHwHw
- AR8B8AEfAcABHwHwAR8B8AEfAfABHwHAAT8B/AF/AfwBfwH8AX8B4QH/Cw==
+ ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAACm
+ KwAAAk1TRnQBSQFMAgEBCAEAAQkBAAEEAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA
+ AwABMAMAAQEBAAEgBgABMP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AQgABVQIDAasBRgGT
+ AbcB+WAAAQQBbAEDAf4BWQGlAVgB/wFmAa8BZQH/AWIBrAFiAf8BXQGoAV0B/wFZAaUBWQH/AVcBowFW
+ Af8BWgGmAVoB/wFcAacBWwH/AV4BqQFeAf8BOAF9ATgB/wEBATYBAQH/ATABDQEBAVcUAAE1ARkBAQF5
+ ASsBhQErAf8BRQGXAUQB/wFCAZUBQQH/AT0BkQE9Af8BNwGNATcB/wE2AYwBNgH/ATsBjwE6Af8BOQGL
+ ATkB/wEBAS8BAQH/ARQBdwEUAf8BKwEJAQEBRhQAAQcCAQIHAgEBCAEFAgEBBQFbARQBHAHVAUABwAHq
+ Af4BRgGdAbsB+QEFAgEBBQECAwEgAAEHAgECBwIBAQgBBQIBAQUBAwIBAgMCAQEDAR4CAQEpARgBBgF1
+ AfsBGAEGAb8B+wEYAQYBkAH7AT8CAQFpCAABNAETAQEBaQF/AdUBfgH/ATIBvQEwAf8BMgG9ATAB/wEy
+ Ab0BMAH/ATIBvQEwAf8BOAG+ATYB/wFVAcgBVAH/ATIBvQEwAf8BMgG9ATAB/wEyAb0BMAH/AU0BdAEj
+ Af8BkwEBARIB/wERAXYBEQH/FAABSQGaAUkB/wEyAb0BMAH/ATIBvQEwAf8BMgG9ATAB/wEyAb0BMAH/
+ AUgBxAFGAf8BQwHCAUEB/wEyAb0BMAH/ATABtwEuAf8BlAEBARMB/wEyAb0BMAH/ASsBhgErAf8MAAEN
+ AgEBDwFtAagBZgH+AX0BwAF2Af4BfQHAAXYB/gF/AcABdwH+AX8BvgF3Af4BMQGpAcoB/gGSAcwB6gH/
+ AasBpQGmAf8BqQGqAaMB/wGxAbABqwH/Ab4CtgH+AQYCAQEGDAABDQIBAQ8BbQGoAWYB/gF9AcABdgH+
+ AX0BwAF2Af4BfwHAAXcB/gF/Ab4BdwH+AXsBtAF0Af4CBgHnAf8BCAEKAbQB/wEsAUwBNAH+AhMBagH+
+ AQwBBgHWAf4BQQIBAXAEAAE1ASwBAwGeAV0BygFcAf8BMgG9ATAB/wEyAb0BMAH/ATIBvQEwAf8BMgG9
+ ATAB/wFHAZgBRgH/AScBgQElAf8BcQHRAW8B/wEyAb0BMAH/ATIBvQEwAf8BMQG8AS8B/wEmAZABJAH/
+ AUUBlwFEAf8UAAFqAbMBaQH/ATIBvQEwAf8BMgG9ATAB/wEyAb0BMAH/ATkBvwE3Af8BFQF3ARMB/wEU
+ AXgBEwH/ATYBvgE0Af8BMgG9ATAB/wEdAW8BHAH/ATIBvQEwAf8BWAGlAVcB/wwAAUMCAQF2AUYBtQFB
+ Af4BPAGwATQB/gE8AbABNAH+ATwBsAE0Af4BawGlAWQB/gF/AbwBeAH+AaUBogGgAf8BxQHcAasB/wHK
+ AdsBmQH/AdwB2wGdAf8BYQIJAcEBywLDAf4MAAFDAgEBdgFGAbUBQQH+ATwBsAE0Af4BPAGwATQB/gE8
+ AbABNAH+AWsBpQFkAf4CGwFiAf4BBgEIAeAB/wEIAQ0BdQH/ASUBWAEiAf4BfwG+AXcB/gFCAQYBJwHq
+ ARIBBgGjAfwEAAE5ATABCAGiAVsByQFaAf8BMQG8ATAB/wExAbwBMAH/ATEBvAEwAf8BagHOAWkB/wFh
+ AaABXQL/AvcB/wFPAZ4BTgH/ATEBvAEwAf8BMQG8ATAB/wElAY0BJAH/AY0BAQESAf8BIQFFARsB/wgA
+ ARcCAQEcAU4BBgEBAW0BSgEIAQECbwG2AW4B/wExAbsBMAH/ATEBuwEwAf8BMQG7ATAB/wGGAdABhQH/
+ AecB6gHgAf8B1AHhAc4B/wGEAdMBgwH/ATEBuwEwAf8BlAEBARMB/wEmATIBEAH/AV8BqQFeAf8MAAFJ
+ AgIBgwFDAbMBPwH+ATwBsAE0Af4BPAGwATQB/gFkAbwBXQH+AakBvAGdAf4BQwF/AT0B/gGnAqIB/wHJ
+ AdsBmQH/AckB1wGLAf8B2wHWAYYB/wFoAQ8BCQHKAaMBfgF7AfYMAAFJAgIBgwFDAbMBPwH+ATwBsAE0
+ Af4BPAGwATQB/gFkAbwBXQH+AakBvAGdAf4BBgEIAZMB/wEHAQoBlAH/ATwBsAE0Af4BBwEKAaMB/wFl
+ AYIBXgH+AU0CAgGTAQwBBgHWAf4EAAE+ASoBCgGTAWIByQFhAf8BMAG4AS8B/wEwAbgBLwH/ATABuAEv
+ Af8BdgG5AXUB/wH8AfUB9AH/Af4C9gH/ATgBiwE0Af8BSQHBAUgB/wEwAbgBLwH/ATABuAEvAf8BOwGj
+ ASsB/wGUAQEBEwH/ASsCAQFEARQCAQEYAegBuAGCAf8B5AGfAUgB/wHMAY4BQAH/AWkBrwFnAf8BLwG2
+ AS4B/wEvAbYBLgH/AS8BtgEuAf8BQQGTAT4B/wH8AfUB9AH/AfwB9QH0Af8BTQGbAUsB/wEvAbYBLgH/
+ ATEBsgEuAf8BkQEFARMB/wEaAS4BDQH/AQ0CAQEQAcIBgwFoAf4B1gGgAXMB/gFzAX8BQQH+AUUBsAFB
+ Af4BOgGrATMB/gE6AasBMwH+AW0BpAFlAf4B8QHkAeMB/gHhAdsB1AH+AbECrAH/AckB1gGLAf8ByQHQ
+ AXoB/wHhAdcBhAH/AY8BQgE1AeUBrAGLAYgB+QENAgEBEAHCAYMBaAH+AdYBoAFzAf4BcwF/AUEB/gFF
+ AbABQQH+AToBqwEzAf4BOgGrATMB/gFtAaQBZQH+AfEB5AHjAf4BOQExAWkB/gIGAecB/wE6AaUBMwH+
+ AToBpwEzAf4BCAEKAccB/wEzAQcBRQHyARIBBgGNAfwEAAEyAQ4BBAFQAYgB0wGHAf8BLgGzAS0B/wEu
+ AbMBLQH/ATIBtAExAf8BKgGBASYB/wHfAtgB/wHZAtIB/wHAAc0BuQH/AY4B0AGNAf8BaQEBAQ0B/wE9
+ AZgBKQH/AS8BswEvAf8BlAEBARMB/wExAgEBVQFKAQcBAgFkAeUBoAFKAf8B4wGYAToB/wHVAY8BNgH/
+ ATQBigEvAf8BMQGxATEB/wEtAbABLAH/AUMBtgFCAf8BWgGKAVUB/wF6AZoBwAH/AX0BmwHAAf8BMgEC
+ AQcB/wFjAVQBHwH/AS0BsAEsAf8BggEeARcB/wEoASQBDAH1AUICAQFyAdYBjAFAAf4B1gGLAT4B/gGe
+ AXsBMgH+AXcBugFwAf4BOAGkATEB/gE5AaQBMgH+AUUBfwE/Af4BnwGiAbIB/gGwAasBswH+AaUBqAGh
+ Af8BvgHNAZ4B/wHRAdABeQH/Ae0B4AGnAf8BcwEdARkB1gGXAm4B9QFCAgEBcgHWAYwBQAH+AdYBiwE+
+ Af4BngF7ATIB/gF3AboBcAH+ATgBpAExAf4BOQGkATIB/gFFAX8BPwH+AZ8BogGyAf4BrAGoAa8B/gIG
+ AdkB/wEGAQgB3AH/ARMBGwFXAf4BCgEMAacB/wEMAQYB1gH+ASwCAQFCCAABRgGVAUEB/wFFAbYBRAH/
+ ASwBrAEsAf8BZgG0AWYB/wEbAW4BmAH/AQYBbAHVAf8BIAF8AdkB/wEIAWsB0gH/AT4BfgFPAf8BHAEg
+ AQsB/wGDAQEBEAH/AZQBAQETAf8BPQEBAQcB7wQAAU0BCgEFAWcB4wGeAUgB/wHhAZYBOQH/AeABlQE5
+ Af8BrgGNAWEB/wFOAZoBSQH/AYEByQGBAf8BPwGKAZ8B/wF1Aa4B6gH/AakB1gH+Af8BqgHXAf4B/wFR
+ AVMBWgH/AXQBAQEPAf8BlAEBARMB/wFZAQEBCwH/AQcCAQEHAUUCAQF5AdUBigE/Af4B1QGKAT4B/gHI
+ AYEBOgH+AUgBdQEvAf4BgAG1AXoB/gFQAY0BcgH+AWQBlAHTAf4BpAHEAesB/gGoAcUB6gH+AS4BfAHG
+ Af4BrwGrAacB/gHRAc4BzQH/AboBsQGwAf4BhQJHAewEAAFFAgEBeQHVAYoBPwH+AdUBigE+Af4ByAGB
+ AToB/gFIAXUBLwH+AYABtQF6Af4BUAGNAXIB/gFkAZQB0wH+AaQBxAHrAf4BqAHFAeoB/gEvAXoBwgH+
+ AhwBWwH+AQcBCAGmAf8BIgEJAVEB+AEfAgEBKgwAAQkCAQEKATYBgAEpAfYBaAGnAWUB/wEDAWoB0gH/
+ AbgB3QH9Af8BjQHKAv8BjAHJAv8BlgHOAf4B/wFlAaUB5wH/AVcBlQGMAf8BQgGSATwB/wFDASUBDQGE
+ CAABOQEHAQQBSQHgAZ0BUgH/AdwBjQE3Af8B3AGNATcB/wGvAWIBQgH/AdcC0QH/AY0BmAGeAf8BmwHI
+ AfMB/wGKAcgC/wGJAcgC/wGJAcgC/wGIAccC/wGKAbwB7wH/ASYCBgE2CAABNgIBAVYB0AGEAUEB/gHP
+ AYABPAH+AdUBmAFhAf4B1wHEAcEB/gGwAaUBpAH+AXABnQHXAf4BgwG5AewB/gGCAbkB7AH+AYEBuQHs
+ Af4BgwG5AewB/gEpAVoBoQH5EAABNgIBAVYB0AGEAUEB/gHPAYABPAH+AdUBmAFhAf4B1wHEAcEB/gGw
+ AaUBpAH+AXABnQHXAf4BgwG5AewB/gGCAbkB7AH+AYEBuQHsAf4BgwG5AewB/gEpAVoBoQH5IAABMQEf
+ AT8BqAG2AdwB/QH/AYgBxwL/AYgBxwL/AYgBxwL/AYcBxwL/AYkBxwH+Af8BLAGDAd4B/wEFAgEBBRAA
+ AdQBoAF/Af8B1AGCATUB/wHRAYcBQwH/AWMBbAGHAf8BFAFtAcsB/wEJAW4B1wH/AYcBxgH+Af8BgwHE
+ Av8BgwHDAv8BggHDAv8BgQHDAv8BhwHFAf4B/wEeAUoBkQHZDAABwQGJAXMB/gHHAX8BPgH+AYMBfAF+
+ Af4BQwF/AcsB/gExAXMBtwH+AYkBugHsAf4BgAG2AewB/gGAAbYB7AH+AYABtQHsAf4BgAG1AewB/gGc
+ Ab4B5wH+AQQCAQEEEAABwQGJAXMB/gHHAX8BPgH+AYMBfAF+Af4BQwF/AcsB/gExAXMBtwH+AYkBugHs
+ Af4BgAG2AewB/gGAAbYB7AH+AYABtQHsAf4BgAG1AewB/gGcAb4B5wH+AQQCAQEEHAABHQF+AeEB/wGD
+ AcQC/wGDAcMC/wGCAcMC/wGBAcMC/wGBAcIC/wGBAcIC/wGzAdoB/QH/ATMBCgEUAWIQAAEgAgQBJgGx
+ AWcBRgH/AR8BcQHIAf8BpQHVAf4B/wGDAb0B8AH/ATIBjAHqAf8BfQHAAv8BfQG/Av8BfAG/Av8BewG/
+ Av8BegG+Av8BegG+Av8BHQGBAegB/wwAAQMCAQECAV0CBQG/AZ0BvwHnAf4BgwG5AesB/gE0AX8BxwH+
+ AYABswHsAf4BfgGxAewB/gF9AbEB7AH+AXwBsAHsAf4BewGwAewB/gGTAb0B6wH+ARsCAQEkEAABAwIB
+ AQIBXQIFAb8BnQG/AecB/gGDAbkB6wH+ATQBfwHHAf4BgAGzAewB/gF+AbEB7AH+AX0BsQHsAf4BfAGw
+ AewB/gF7AbAB7AH+AZMBvQHrAf4BGwIBASQcAAFqAawB8QH/AX0BwAL/AX0BvwL/AXwBvwL/AXsBvwL/
+ AXsBvgL/AXoBvgL/AY4ByQH+Af8BMQE7AXIBtBQAARkBAgEDASIBqwHWAfwB/wGGAcYC/wF/AbkB8AH/
+ ASUBiAHxAf8BdQG7Av8BdAG7Av8BcwG6Av8BcwG6Av8BcgG6Av8BcQG5Av8BFAGAAfAB/xAAAU8BJAFC
+ AecBgAG2AewB/gGAAbYB7AH+AUkBggHGAf4BgAG2AewB/gF1AawB7AH+AXQBrAHsAf4BcwGrAewB/gFy
+ AasB7AH+AZABuwHpAf4BAgMBFAABTwEkAUIB5wGAAbYB7AH+AYABtgHsAf4BSQGCAcYB/gGAAbYB7AH+
+ AXUBrAHsAf4BdAGsAewB/gFzAasB7AH+AXIBqwHsAf4BkAG7AekB/gECAwEcAAFgAakB9AH/AXYBvAL/
+ AXUBuwL/AXQBuwL/AXQBuwL/AXMBugL/AXIBugL/AY0BxwH+Af8BNgEzAWEBoxQAATYBJgFMAZkBgQHC
+ Af4B/wF+AcAC/wF7AbwB+QH/ASkBhgHmAf8BgQHBAf4B/wFsAbcC/wFsAbYC/wFrAbYC/wFqAbYC/wGG
+ AcQB/gH/AToBLwFZAZgQAAFNAY0B3QH+AX4BsQHsAf4BfQGxAewB/gFtAZkBzgH+AWQBoAHqAf4BbQGo
+ AewB/gFsAagB7AH+AWwBpwHsAf4BcAGqAewB/gFFAUYBfAHxGAABTQGNAd0B/gF+AbEB7AH+AX0BsQHs
+ Af4BbQGZAc4B/gFkAaAB6gH+AW0BqAHsAf4BbAGoAewB/gFsAacB7AH+AXABqgHsAf4BRQFGAXwB8SAA
+ ARQBgwH2Af8BcwG6Af4B/wFuAbcC/wFtAbcC/wFtAbcC/wFsAbYC/wFsAbYC/wGkAdEB/AH/ASEBBQEJ
+ AS8UAAE4ASgBTQGVAXgBvQH+Af8BdQG7Av8BdAG6Af4B/wFiAZ4B2QH/AT0BmwH+Af8BbgG3Af4B/wFl
+ AbMC/wFlAbMC/wFwAbgB/gH/ATEBlQH+Af8UAAFdAQkBEQHJAXMBqwHsAf4BcgGrAewB/gFwAakB6gH+
+ AVQBhQHBAf4BUAGWAesB/gGPAbsB6wH+AY0BugHrAf4BOAFdAaMB9hwAAV0BCQERAckBcwGrAewB/gFy
+ AasB7AH+AXABqQHqAf4BVAGFAcEB/gFQAZYB6wH+AY8BuwHrAf4BjQG6AesB/gE4AV0BowH2JAABLQEM
+ ARYBSQGaAcwB/QH/AWgBtAL/AWcBtAL/AWcBtAL/AWYBswL/AXsBvQH+Af8BGAGFAfoB/hgAAREBAgED
+ ARUBnAHOAf0B/wFsAbYC/wFrAbYC/wFpAbQB/AH/AVYBlgHUAf8BFgGGAfwB/wFvAbUB/gH/AW0BtAH+
+ Af8BIQF3AdwB7hgAAQMCAQEDAX0BrgHrAf4BagGmAewB/gFpAaYB7AH+AYYBuAHqAf4BNQIBAVQBBgIB
+ AQYBAgMBIAABAwIBAQMBfQGuAesB/gFqAaYB7AH+AWkBpgHsAf4BhgG4AeoB/gE1AgEBVAEGAgEBBgEC
+ AwEsAAI6AW0BpwF/Ab0B/QH/AYIBwQH+Af8BdwG7Af4B/wGlAdIB/QH/AR4BjAH+Af8BAwIBAQMcAAEy
+ AVQBnQHJAY8BxwH+Af8BZAGyAv8BaAG0Af4B/wF1AbgB/QH/AQ4CAgERKAABAwIBAQIBVAEDAQQBqAFc
+ AQcBDAHEARoCAQEjMAABAwIBAQIBVAEDAQQBqAFcAQcBDAHEARoCAQEjPAABDAEBAQIBDgE6ATkBawGl
+ ATEBUwGbAccBNgEVAScBYigAASsBCgESAUIBMQFUAZwByAE6ATYBYwGfAQIDAUAAASICAQEwPAABVQID
+ AasBRgGTAbcB+XgAASICAQEwJAABGAIBAR8BPwIBAWoBQQIBAW8BPQIBAWYBOwIBAWABOAIBAVoBPwIB
+ AWkBbwHHAdUB/gFaAQ8BFgHRATQCAQFSAQMCAQECFAABGAIBAR8BPwIBAWoBQQIBAW8BPQIBAWYBOwIB
+ AWABOAIBAVoBNAFsAZMB+AFAAcAB6gH+AUkBpQHFAfoBNAIBAVIBAwIBAQIUAAEYAgEBHwE/AgEBagFB
+ AgEBbwE9AgEBZgE7AgEBYAE4AgEBWgE7AgEBYAE8AgEBYwE+AgEBZwEYAQYBcwH7ARgBBgG/AfsBGAEG
+ AZAB+wE/AgEBaRgAAQcCAQIHAgEBCAEFAgEBBQEKAgEBCwFvAccB1QH+AVoBDwEWAdEBBQIBAQUBAgMB
+ EAABOwIBAWABgAG/AX8B/gFiAbsBWgH+AWABugFYAf4BZAG8AVwB/gFnAbwBYAH+AWoBvQFjAf4BZwG8
+ AWAB/gElAbAB8wH/AR4BoQHnAf8BMwGhAeQB/wFhAZ0BWgH+AQUCAQEFDAABOwIBAWABgAG/AX8B/gFi
+ AbsBWgH+AWABugFYAf4BZAG8AVwB/gFnAbwBYAH+AWoBvQFjAf4BZwG8AWAB/gEtAagBxwH+AZIBzAHq
+ Af8BqwGlAaYB/wGsAaoBpgH/AZMBZAFjAfMBvgK2Af4BBgIBAQYEAAE7AgEBYAGAAb8BfwH+AWIBuwFa
+ Af4BYAG6AVgB/gFkAbwBXAH+AWcBvAFgAf4BagG9AWMB/gFnAbwBYAH+AWMBsQFbAf4CBgHnAf8BBwEK
+ AbMB/wE+AU0BQQH+AToBCAEyAe8BDAEGAdYB/gFBAgEBcAwAAQ0CAQEPAW0BqAFmAf4BfQHAAXYB/gF9
+ AcABdgH+AX8BwAF3Af4BfwG+AXcB/gEmAbAB8wH/AR4BoQHnAf8BOQGUAdMB/gF/Ab0BdwH+AS4BfwEn
+ Af4MAAFXAQ0BAwHSAUIBsgE7Af4BPAGwATQB/gE8AbABNAH+ATwBsAE0Af4BagG9AWIB/gFGAYkBQQH+
+ AUYBtQFBAf4BPAGwATQB/gEpAcAB7wH/AR4BoQHnAf8BNgGUAdAB/gE8AgEBZAwAAVcBDQEDAdIBQgGy
+ ATsB/gE8AbABNAH+ATwBsAE0Af4BPAGwATQB/gFqAb0BYgH+AUYBiQFBAf4BRgG1AUEB/gE8AbABNAH+
+ AaUBogGgAf8BxQHcAasB/wHVAd4BpQH/AXMBHwEWAdgBYAEJAQcBwAHLAsMB/gQAAVcBDQEDAdIBQgGy
+ ATsB/gE8AbABNAH+ATwBsAE0Af4BPAGwATQB/gFqAb0BYgH+AUYBiQFBAf4BRgG1AUEB/gESARkBWAH+
+ AQYBCAHgAf8BDgENAW8B/gFFAWQBQQH+ATwCAQFkAUoBBgEjAegBEgEGAaMB/AwAAUMCAQF2AUYBtQFB
+ Af4BPAGwATQB/gE8AbABNAH+ATwBsAE0Af4BawGlAWQB/gF/AbwBeAH+ASkBwAHvAf8BHgGhAecB/wEl
+ AY4BvwH+AX8BvgF3Af4BAwIBAQIIAAFQAR4BCAHiAUABsQE4Af4BPAGwATQB/gE8AbABNAH+ATwBsAE0
+ Af4BPAF/ATQB/gHwAeQB4gH+AXEBpwFpAf4BPAGwATQB/gE8AbABNAH+ASkBwAHwAf8BHgGhAecB/wFn
+ AR8BIwHcDAABUAEeAQgB4gFAAbEBOAH+ATwBsAE0Af4BPAGwATQB/gE8AbABNAH+ATwBfwE0Af4B8AHk
+ AeIB/gFxAacBaQH+ATwBsAE0Af4BpwKiAf8ByQHbAZkB/wHTAdoBlAH/AXgBJAEYAdwBZgEOAQkByQGj
+ AX4BewH2BAABUAEeAQgB4gFAAbEBOAH+ATwBsAE0Af4BPAGwATQB/gE8AbABNAH+ATwBfwE0Af4B8AHk
+ AeIB/gFxAacBaQH+AQYBCQGTAf8BBwEKAZQB/wE8AbABNAH+AQcBCgGjAf8BSQICAYYBSwICAYsBDAEG
+ AdYB/gwAAUkCAgGDAUMBswE/Af4BPAGwATQB/gE8AbABNAH+AWQBvAFdAf4BqQG8AZ0B/gFDAX8BPQH+
+ AT8BsQE4Af4BKQHAAfAB/wEeAaEB5wH/AYABogG2Af4BBwIBAQgIAAFXARQBBgHZAUABrgE5Af4BOwGt
+ ATQB/gE7Aa0BNAH+AVoBuAFUAf4BgAGlAXkB/gHxAuQB/gE6AX8BMAH+AUEBrwE6Af4BOwGtATQB/gE7
+ Aa0BNAH+AZYByAHYAf8BrAKkAf4BaAEVARwB2ggAAVcBFAEGAdkBQAGuATkB/gE7Aa0BNAH+ATsBrQE0
+ Af4BWgG4AVQB/gGAAaUBeQH+AfEC5AH+AToBfwEwAf4BQQGvAToB/gGxAqwB/wHJAdYBiwH/AtQBgQH/
+ AYEBMwEgAeIBjwFCATUB5QGsAYsBiAH5BAABVwEUAQYB2QFAAa4BOQH+ATsBrQE0Af4BOwGtATQB/gFa
+ AbgBVAH+AYABpQF5Af4B8QLkAf4BOgF/ATAB/gEbASkBTAH+AgYB5wH/AToBpwEzAf4BXAG1AVUB/gES
+ AQcBtwH9ATMBBwFFAfIBEgEGAY0B/AENAgEBEAHCAYMBaAH+AdYBoAFzAf4BcwF/AUEB/gFFAbABQQH+
+ AToBqwEzAf4BOgGrATMB/gFtAaQBZQH+AfEB5AHjAf4B4QHbAdQB/gF9Ab0BdwH+AToBqwEzAf4BlgHI
+ AdcB/wGyArAB/wFoARUBHAHaCAABUgICAaABSQGvAUIB/gE5AacBMgH+ATkBpwEyAf4BgAG2AX0B/gHd
+ AdEB0AH+AdQCxwH+AbYBvAGqAf4BgAG+AXsB/gE5AacBMgH+ATkBpwEyAf4BfwG+AXkB/gGKAYIBuAH+
+ AUQBQQG4Af4BUgICAZ8EAAFSAgIBoAFJAa8BQgH+ATkBpwEyAf4BOQGnATIB/gGAAbYBfQH+Ad0B0QHQ
+ Af4B1ALHAf4BtgG8AaoB/gGAAb4BewH+AaABowGWAf4BvgHOAZ8B/wHhAdYBgwH/AZEBQQEyAeYBcwEd
+ ARkB1gGXAm4B9QQAAVICAgGgAUkBrwFCAf4BOQGnATIB/gE5AacBMgH+AYABtgF9Af4B3QHRAdAB/gHU
+ AscB/gG2AbwBqgH+AYABvAF7Af4BBgEHAdkB/wEGAQgB3AH/ARwBHwFgAf4BJgEHAXEB9wEMAQYB1gH+
+ ASwCAQJCAgEBcgHWAYwBQAH+AdYBiwE+Af4BngF7ATIB/gF3AboBcAH+ATgBpAExAf4BOQGkATIB/gFF
+ AX8BPwH+AZ8BogGyAf4BsAGrAbMB/gFbAY0BUgH+ATgBpAExAf4BOAGkATEB/gGRAY4BxwH/AUQBQQG4
+ Af4BUgICAZ8EAAEIAgEBCQF7AaoBcgH+ATwBogE2Af4BNgGdATAB/gEvAW4BWQH+ARMBbAHDAf4BQQF/
+ AcsB/gESAWoBwAH+AVYBfwFhAf4BNwGfATAB/gFFAacBQQH+AVABjQFFAf4EAAFdAQoBIgHbAQIDAQQA
+ AQgCAQEJAXsBqgFyAf4BPAGiATYB/gE2AZ0BMAH+AS8BbgFZAf4BEwFsAcMB/gFBAX8BywH+ARIBagHA
+ Af4BVgF/AWEB/gE3AZ8BMAH+AakBrQGgAf4B0QHOAc0B/wG6AbEBsAH+AYUCRwHsCAABCAIBAQkBewGq
+ AXIB/gE8AaIBNgH+ATYBnQEwAf4BLwFuAVkB/gETAWwBwwH+AUEBfwHLAf4BEgFqAcAB/gFWAX8BYQH+
+ ATYBmwEwAf4BFgEdAVQB/gEGAQgBpQH/ASYBCAFMAfcBHwIBASoEAAFFAgEBeQHVAYoBPwH+AdUBigE+
+ Af4ByAGBAToB/gFIAXUBLwH+AYABtQF6Af4BUAGNAXIB/gFkAZQB0wH+AaQBxAHrAf4BqAHFAeoB/gEu
+ AXwBxgH+AV4BogFZAf4BeQGqAXEB/gE8AgEBZAFdAQoBIgHbAQIDAQgAARMCAQEYAVABRQEZAfABPQF/
+ AY8B/gGjAcAB5QH+AYYBugHsAf4BhQG6AewB/gGHAbsB7AH+AYABpwHZAf4BTAF/AWcB/gFcAQ8BCAHT
+ AQIDARQAARMCAQEYAVABRQEZAfABPQF/AY8B/gGjAcAB5QH+AYYBugHsAf4BhQG6AewB/gGHAbsB7AH+
+ AYABpwHZAf4BTAF/AWcB/gFcAQ8BCAHTAQIDARQAARMCAQEYAVABRQEZAfABPQF/AY8B/gGjAcAB5QH+
+ AYYBugHsAf4BhQG6AewB/gGHAbsB7AH+AYABpwHZAf4BTAF/AWcB/gFcAQ8BCAHTAQIDAQwAATYCAQFW
+ AdABhAFBAf4BzwGAATwB/gHVAZgBYQH+AdcBxAHBAf4BsAGlAaQB/gFwAZ0B1wH+AYMBuQHsAf4BggG5
+ AewB/gGBAbkB7AH+AYMBuQHsAf4BKQFaAaEB+RwAAQQCAQEEAW8BqQHqAf8BgQG4AewB/gGHAcYC/wGA
+ AbgB7AH+AYABuAHsAf4BgAG4AewB/gEqAXwBywH+IAABBAIBAQQBbwGpAeoB/wGBAbgB7AH+AYcBxgL/
+ AYABuAHsAf4BgAG4AewB/gGAAbgB7AH+ASoBfAHLAf4gAAEEAgEBBAFvAakB6gH/AYEBuAHsAf4BhwHG
+ Av8BgAG4AewB/gGAAbgB7AH+AYABuAHsAf4BKgF8AcsB/hgAAcEBiQFzAf4BxwF/AT4B/gGDAXwBfgH+
+ AUMBfwHLAf4BMQFzAbcB/gGJAboB7AH+AYABtgHsAf4BgAG2AewB/gGAAbUB7AH+AYABtQHsAf4BnAG+
+ AecB/gEEAgEBBBgAATcCAQFZAZwBwAHsAf4BgAG2AewB/gGAAbUB7AH+AYABtQHsAf4BgAG0AewB/gGA
+ AbQB7AH+AZcBvAHmAf4BBQIBAQUcAAE3AgEBWQGcAcAB7AH+AYABtgHsAf4BgAG1AewB/gGAAbUB7AH+
+ AYABtAHsAf4BgAG0AewB/gGXAbwB5gH+AQUCAQEFHAABNwIBAVkBnAHAAewB/gGAAbYB7AH+AYABtQHs
+ Af4BgAG1AewB/gGAAbQB7AH+AYABtAHsAf4BlwG8AeYB/gEFAgEBBRQAAQMCAQECAV0CBQG/AZ0BvwHn
+ Af4BgwG5AesB/gE0AX8BxwH+AYABswHsAf4BfgGxAewB/gF9AbEB7AH+AXwBsAHsAf4BewGwAewB/gGT
+ Ab0B6wH+ARsCAQEkGAABSAICAYEBjgHIAf4B/wF+AbEB7AH+AX0BvQL/AXwBsQHsAf4BfAGwAewB/gF7
+ AbAB7AH+AaUBwwHrAf4BFgIBARwcAAFIAgIBgQGOAcgB/gH/AX4BsQHsAf4BfQG9Av8BfAGxAewB/gF8
+ AbAB7AH+AXsBsAHsAf4BpQHDAesB/gEWAgEBHBwAAUgCAgGBAY4ByAH+Af8BfgGxAewB/gF9Ab0C/wF8
+ AbEB7AH+AXwBsAHsAf4BewGwAewB/gGlAcMB6wH+ARYCAQEcGAABTwEkAUIB5wGAAbYB7AH+AYABtgHs
+ Af4BSQGCAcYB/gGAAbYB7AH+AXUBrAHsAf4BdAGsAewB/gFzAasB7AH+AXIBqwHsAf4BkAG7AekB/gEC
+ AwEYAAEoAgEBOQGdAcAB6wH+AXUBrQHsAf4BdQGsAewB/gF0AawB7AH+AXMBrAHsAf4BcwGrAewB/gGD
+ AbUB6AH+IAABKAIBATkBnQHAAesB/gF1Aa0B7AH+AXUBrAHsAf4BdAGsAewB/gFzAawB7AH+AXMBqwHs
+ Af4BgwG1AegB/iAAASgCAQE5AZ0BwAHrAf4BdQGtAewB/gF1AawB7AH+AXQBrAHsAf4BcwGsAewB/gFz
+ AasB7AH+AYMBtQHoAf4cAAFNAY0B3QH+AX4BsQHsAf4BfQGxAewB/gFtAZkBzgH+AWQBoAHqAf4BbQGo
+ AewB/gFsAagB7AH+AWwBpwHsAf4BcAGqAewB/gFFAUYBfAHxIAABQQGaAfsB/wFvAakB7AH+AW4BtQL/
+ AW0BqAHsAf4BbQGoAewB/gF2Aa0B7AH+ATIBWAGhAfYkAAFBAZoB+wH/AW8BqQHsAf4BbgG1Av8BbQGo
+ AewB/gFtAagB7AH+AXYBrQHsAf4BMgFYAaEB9iQAAUEBmgH7Af8BbwGpAewB/gFuAbUC/wFtAagB7AH+
+ AW0BqAHsAf4BdgGtAewB/gEyAVgBoQH2HAABXQEJAREByQFzAasB7AH+AXIBqwHsAf4BcAGpAeoB/gFU
+ AYUBwQH+AVABlgHrAf4BjwG7AesB/gGNAboB6wH+ATgBXQGjAfYkAAEaAgEBIwFfAZ4B7AH+AYABsQHs
+ Af4BbQGoAewB/gGDAbcB7AH+ATsBiQHsAf4BAgMBJAABGgIBASMBXwGeAewB/gGAAbEB7AH+AW0BqAHs
+ Af4BgwG3AewB/gE7AYkB7AH+AQIDASQAARoCAQEjAV8BngHsAf4BgAGxAewB/gFtAagB7AH+AYMBtwHs
+ Af4BOwGJAewB/gECAwEcAAEDAgEBAwF9Aa4B6wH+AWoBpgHsAf4BaQGmAewB/gGGAbgB6gH+ATUCAQFU
+ AQYCAQEGAQIDATAAAU0CAgGTAVsBDQEXAc8BQwIBAXY0AAFNAgIBkwFbAQ0BFwHPAUMCAQF2NAABTQIC
+ AZMBWwENARcBzwFDAgEBdigAAQMCAQECAVQBAwEEAagBXAEHAQwBxAEaAgEBIyQAAUIBTQE+BwABPgMA
+ ASgDAAFAAwABMAMAAQEBAAEBBQABgAEBFgAD/4EAAf8BPwL/AcABAQHwAQAB+AEHAfgBAQGAAQEB8AEA
+ AeABAAHgAQABgAEBAfABAAHgAQAB4AEAAYABAQGAAQAB4AEAAeABAAGABwABgAcAAcABAQMAAQEBAAEB
+ AcABAwEAAQMBAAEPAQABDwHwAQcBgAEDAYABBwGAAQcB8AEHAYABAwGAAQcBgAEHAfABBwHAAQMBwAEH
+ AcABBwHwAQcBwAEDAcABDwHAAQ8B8AEHAcABBwHAAR8BwAEfAfABDwHAAQ8BwAE/AcABPwH4AQ8B4AF/
+ AeEB/wHhAf8B/AE/AfAC/wF/Af8BPwP/AX8BwAEHAcABBwHAAQEB+AEHAYABAwGAAQABgAEAAeABAwGA
+ AQMBgAEAAYABAAHgAQEBgAEDAYABAAGAAQAB4AEBAYABAQGAAQABgAIAAQEBgAEAAYABAAGAAwABgAEE
+ AYABAQGAAQECAAHAAQcBwAEHAcABBwEAAQ8B4AEfAeABHwHgAR8BgAEHAeABDwHgAQ8B4AEPAYABBwHg
+ AQ8B4AEPAeABDwHAAQcB4AEfAeABHwHgAR8BwAEPAfABHwHwAR8B8AEfAcABHwHwAR8B8AEfAfABHwHA
+ AT8B/AF/AfwBfwH8AX8B4QH/Cw==
</value>
</data>
<metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, \
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>177, \
17</value> </metadata>
- <metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, \
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>177, 17</value>
+ <metadata name="ItemKey.UserAddedColumn" type="System.Boolean, mscorlib, \
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> + \
<value>True</value> </metadata>
- <metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, \
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>177, 17</value>
+ <metadata name="ItemValue.UserAddedColumn" type="System.Boolean, mscorlib, \
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> + \
<value>True</value> </metadata>
- <metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, \
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>177, 17</value>
- </metadata>
- <metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, \
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
- <value>177, 17</value>
- </metadata>
<metadata name="ItemKey.UserAddedColumn" type="System.Boolean, mscorlib, \
Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> \
<value>True</value> </metadata>
Modified: trunk/Tools/Maestro/MaestroAPI/LocalNativeConnection.cs
===================================================================
--- trunk/Tools/Maestro/MaestroAPI/LocalNativeConnection.cs 2008-08-28 17:56:09 UTC \
(rev 3295)
+++ trunk/Tools/Maestro/MaestroAPI/LocalNativeConnection.cs 2008-08-28 21:08:24 UTC \
(rev 3296) @@ -187,7 +187,7 @@
else
{
byte[] buf = Utility.StreamAsArray(stream);
- MgByteReader r = new MgByteReader(buf, buf.Length, "text/xml");
+ MgByteReader r = buf.Length == 0 ? null : new MgByteReader(buf, buf.Length, \
"text/xml"); res.SetResource(new MgResourceIdentifier(resourceid), r, null);
}
}
Modified: trunk/Tools/Maestro/MaestroAPI/Utility.cs
===================================================================
--- trunk/Tools/Maestro/MaestroAPI/Utility.cs 2008-08-28 17:56:09 UTC (rev 3295)
+++ trunk/Tools/Maestro/MaestroAPI/Utility.cs 2008-08-28 21:08:24 UTC (rev 3296)
@@ -525,7 +525,7 @@
root2.InnerXml = root1["FeatureSet"].InnerXml;
}
- return doc2.OuterXml;
+ return doc2.OuterXml == "<FeatureSet />" ? "" : doc2.OuterXml;
}
_______________________________________________
mapguide-commits mailing list
mapguide-commits@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/mapguide-commits
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic